agentsclimarketplace

Apideck connector coverage

Skill apideck-libraries/api-skills/providers/cursor/plugin/skills/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.From its SKILL.md

Install
npx -y skills add apideck-libraries/api-skills --skill apideck-connector-coverage

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

6.8 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it

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)

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

# 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:

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:

StatusMeaning
supportedFully implemented and tested
betaImplemented but may have edge cases
not_supportedNot available for this connector

Common Coverage Patterns

Accounting API

OperationQuickBooksXeroNetSuiteSage IntacctFreshBooks
Invoices CRUDFullFullFullFullFull
Bills CRUDFullFullFullFullPartial
PaymentsFullFullFullFullFull
Journal EntriesFullFullFullFullLimited
Balance SheetFullFullFullFullNo
Tax Rates (read)FullFullFullFullFull

CRM API

OperationSalesforceHubSpotPipedriveZoho CRMClose
Contacts CRUDFullFullFullFullFull
Companies CRUDFullFullFullFullFull
Leads CRUDFullFullFullFullFull
OpportunitiesFullFullFullFullFull
ActivitiesFullFullFullFullPartial
Pipelines (read)FullFullFullFullFull

HRIS API

OperationBambooHRWorkdayPersonioGustoRippling
Employees CRUDFullFullFullFullFull
DepartmentsFullFullFullFullFull
Payrolls (read)FullPartialPartialFullFull
Time-OffFullFullFullFullFull

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:

// 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 TypeDescriptionConnectors
oauth2OAuth 2.0 flow (managed by Vault)Most cloud SaaS (Salesforce, HubSpot, QuickBooks Online, etc.)
apiKeyAPI key authenticationSome self-hosted or simpler services
basicUsername/passwordLegacy systems, on-premise
customConnector-specific authVaries

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 typeUnsupportedOperationError 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

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most test skills give in ~1.5k tokens

Counted across 964 of the 1,571 authors here whose files we hold, read 2026-08-07

  • Close the browser when donein 55 of 964, across 12 files
  • Wait for network idle statein 51 of 964, across 6 files
  • Launch Chromium in headless modein 49 of 964, across 6 files
  • Use descriptive selectors for elementsin 49 of 964, across 6 files
  • Run provided scripts with help flag firstin 49 of 964, across 6 files
  • Add appropriate explicit waitsin 48 of 964, across 5 files
  • Use bundled scripts as black boxesin 46 of 964, across 3 files
  • Do not read script source codein 46 of 964, across 3 files
  • Use sync playwright for scriptsin 46 of 964, across 3 files
  • Inspect dom before executing actionsin 46 of 964, across 3 files
  • Run the full test suitein 37 of 964
  • Write the failing test firstin 29 of 964, across 23 files

Said here and by no other author read

  • check connector coverage before recommending an integration
  • suggest alternatives for unsupported operations
  • query the connector api to verify coverage
  • check coverage first for unsupported operation errors
  • use pass-through for unsupported operations
  • suggest alternative connectors supporting the operation

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 326,851. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.