# Apideck Connector Coverage

> Check Apideck connector API coverage before building integrations. Use when determining which operations a connector supports, comparing connector capabilities, or diagnosing why an API call fails with a specific connector. Teaches agents to query the Connector API for real-time coverage data.

- **Type:** Skill
- **Install:** `agentstack add skill-apideck-libraries-api-skills-apideck-connector-coverage`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [apideck-libraries](https://agentstack.voostack.com/s/apideck-libraries)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [apideck-libraries](https://github.com/apideck-libraries)
- **Source:** https://github.com/apideck-libraries/api-skills/tree/main/providers/claude/plugin/skills/apideck-connector-coverage
- **Website:** https://developers.apideck.com/building-with-llms

## Install

```sh
agentstack add skill-apideck-libraries-api-skills-apideck-connector-coverage
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Apideck Connector Coverage Skill

## Overview

Not all Apideck connectors support all operations. Before building an integration, always check connector coverage to avoid runtime errors. The Connector API provides real-time metadata about which operations each connector supports.

## IMPORTANT RULES

- ALWAYS check connector coverage before recommending an integration approach. Never assume a connector supports an operation.
- If an operation is not supported, suggest alternatives: a different connector, pass-through to the raw API, or a workaround using supported operations.
- USE the Connector API to verify coverage programmatically. Do not rely on hardcoded lists.
- When a user reports a `501 Not Implemented` or `UnsupportedOperationError`, check coverage first.

## Checking Coverage

### Using the SDK (TypeScript)

```typescript
import { Apideck } from "@apideck/unify";

const apideck = new Apideck({
  apiKey: process.env["APIDECK_API_KEY"] ?? "",
  appId: "your-app-id",
  consumerId: "your-consumer-id",
});

// List all connectors for an API
const { data } = await apideck.connector.connectorResources.get({
  id: "crm",
  resourceId: "contacts",
});
// Returns coverage per connector: which operations are supported

// Get specific connector details
const { data: connector } = await apideck.connector.connectors.get({
  id: "salesforce",
});
// Returns: name, status, auth_type, supported_resources, supported_events
```

### Using the REST API

```bash
# List connectors for a unified API
curl 'https://unify.apideck.com/connector/connectors?filter[unified_api]=crm' \
  -H 'Authorization: Bearer {API_KEY}' \
  -H 'x-apideck-app-id: {APP_ID}'

# Get connector details including supported resources
curl 'https://unify.apideck.com/connector/connectors/salesforce' \
  -H 'Authorization: Bearer {API_KEY}' \
  -H 'x-apideck-app-id: {APP_ID}'

# Get API resource coverage (which connectors support what)
curl 'https://unify.apideck.com/connector/apis/crm/resources/contacts' \
  -H 'Authorization: Bearer {API_KEY}' \
  -H 'x-apideck-app-id: {APP_ID}'
```

### Using the Vault API

Check which connections a consumer has and their state:

```typescript
const { data } = await apideck.vault.connections.list({
  api: "crm",
});

for (const conn of data) {
  console.log(`${conn.serviceId}: ${conn.state} (enabled: ${conn.enabled})`);
  // state: available | callable | added | authorized | invalid
}
```

## Coverage States

Each operation on a connector has a coverage status:

| Status | Meaning |
|--------|---------|
| `supported` | Fully implemented and tested |
| `beta` | Implemented but may have edge cases |
| `not_supported` | Not available for this connector |

## Common Coverage Patterns

### Accounting API

| Operation | QuickBooks | Xero | NetSuite | Sage Intacct | FreshBooks |
|-----------|-----------|------|----------|--------------|------------|
| Invoices CRUD | Full | Full | Full | Full | Full |
| Bills CRUD | Full | Full | Full | Full | Partial |
| Payments | Full | Full | Full | Full | Full |
| Journal Entries | Full | Full | Full | Full | Limited |
| Balance Sheet | Full | Full | Full | Full | No |
| Tax Rates (read) | Full | Full | Full | Full | Full |

### CRM API

| Operation | Salesforce | HubSpot | Pipedrive | Zoho CRM | Close |
|-----------|-----------|---------|-----------|----------|-------|
| Contacts CRUD | Full | Full | Full | Full | Full |
| Companies CRUD | Full | Full | Full | Full | Full |
| Leads CRUD | Full | Full | Full | Full | Full |
| Opportunities | Full | Full | Full | Full | Full |
| Activities | Full | Full | Full | Full | Partial |
| Pipelines (read) | Full | Full | Full | Full | Full |

### HRIS API

| Operation | BambooHR | Workday | Personio | Gusto | Rippling |
|-----------|---------|---------|----------|-------|----------|
| Employees CRUD | Full | Full | Full | Full | Full |
| Departments | Full | Full | Full | Full | Full |
| Payrolls (read) | Full | Partial | Partial | Full | Full |
| Time-Off | Full | Full | Full | Full | Full |

> These tables are approximate. Always verify with the Connector API for real-time accuracy.

## Handling Unsupported Operations

When an operation isn't supported for a connector:

### 1. Use Pass-Through (Proxy API)

Make direct calls to the downstream API through Apideck's proxy:

```typescript
// Direct pass-through to the downstream API
const response = await fetch("https://unify.apideck.com/proxy", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${apiKey}`,
    "x-apideck-app-id": appId,
    "x-apideck-consumer-id": consumerId,
    "x-apideck-service-id": "salesforce",
    "x-apideck-downstream-url": "https://api.salesforce.com/services/data/v59.0/sobjects/CustomObject__c",
    "x-apideck-downstream-method": "GET",
    "Content-Type": "application/json",
  },
});
```

### 2. Check for Alternative Resources

Some connectors map the same data to different unified resources. For example, a "deal" in Pipedrive maps to "opportunities" in the unified CRM API.

### 3. Suggest a Different Connector

If the user's chosen connector doesn't support an operation, suggest alternatives that do. Use the Connector API to find connectors that support the specific operation.

### 4. Feature Request

If a critical operation is missing, users can request it at https://github.com/apideck-libraries or through the Apideck dashboard.

## Connector Authentication Types

| Auth Type | Description | Connectors |
|-----------|-------------|------------|
| `oauth2` | OAuth 2.0 flow (managed by Vault) | Most cloud SaaS (Salesforce, HubSpot, QuickBooks Online, etc.) |
| `apiKey` | API key authentication | Some self-hosted or simpler services |
| `basic` | Username/password | Legacy systems, on-premise |
| `custom` | Connector-specific auth | Varies |

Vault handles all OAuth flows. Users authorize via the Vault modal — you never need to implement OAuth yourself.

## Debugging Coverage Issues

When an API call fails:

1. **Check the error type** — `UnsupportedOperationError` or `501` means the operation isn't implemented
2. **Verify connection state** — Use `vault.connections.list()` to check the connection is `authorized`
3. **Check connector coverage** — Use the Connector API to verify the operation is supported
4. **Check field support** — Some connectors support an operation but not all fields. Missing fields return `null`
5. **Use raw mode** — Add `raw=true` to see the downstream response for debugging

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [apideck-libraries](https://github.com/apideck-libraries)
- **Source:** [apideck-libraries/api-skills](https://github.com/apideck-libraries/api-skills)
- **License:** Apache-2.0
- **Homepage:** https://developers.apideck.com/building-with-llms

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** yes
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-apideck-libraries-api-skills-apideck-connector-coverage
- Seller: https://agentstack.voostack.com/s/apideck-libraries
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
