---
title: "List connectors"
method: GET
path: "/v2/connect/connectors"
tags: ["connect"]
---

# List connectors

`GET /v2/connect/connectors`

List connectors that belong to a team.

## Query parameters

- `limit` integer — Maximum number of connectors to return. Defaults to 20.
- `cursor` string — Cursor from `pagination.next` on the previous response.
- `projectId` string — Return only connectors connected to this project.
- `search` string — Search connector names, UIDs, and services.
- `type` string — Comma-separated connector types: `slack`, `discord`, `github`, `linear`, `linq`, `salesforce`, `sendblue`, `snowflake`, `snowflake-wif`, `microsoft-entra`, `api-key`, `photon`, `oauth`, or `custom`.
- `service` string — Comma-separated provider or service identifiers.
- `sort` 'name' | 'createdAt' | 'updatedAt' — Sort by name in ascending order, or by creation or update time in descending order.
- `teamId` string
- `slug` string

## Response `200`

A page of connectors.

- ConnectConnectorList — Page of connectors.
  - `connectors` ConnectConnector[], required — Connectors in this page.
    - `id` string, required — Stable `scl_` connector ID. Use this value directly in `{connector}`.
    - `uid` string, required — Team-scoped UID. URL-encode this value before using it in `{connector}`.
    - `defaultInstallationId` string — Installation used when a token request does not specify an installation.
    - `createdAt` number, required — Creation time in epoch milliseconds.
    - `updatedAt` number, required — Last update time in epoch milliseconds.
    - `reinstallAt` number — Time when this connector started requiring reinstallation because an installation-affecting app-token grant changed.
    - `createdBy` union — Principal that created the connector.
      - object — Principal that originally created the connector — either a Vercel user (interactive dashboard / CLI flow) or a Vercel deployment (OIDC-authenticated project, used by runtime auto-provisioning). See {@link ConnexPrincipal}. Optional: pre-existing rows from before this shape was introduced may carry no attribution at all.
        - `type` 'user', required — Principal kind.
        - `id` string, required — Vercel user ID.
      - object — Principal that originally created the connector — either a Vercel user (interactive dashboard / CLI flow) or a Vercel deployment (OIDC-authenticated project, used by runtime auto-provisioning). See {@link ConnexPrincipal}. Optional: pre-existing rows from before this shape was introduced may carry no attribution at all.
        - `type` 'project', required — Principal kind.
        - `id` string, required — Vercel project ID.
        - `environment` union, required — Deployment environment of the project principal.
          - string
          - 'development' | 'preview' | 'production'
    - `updatedBy` union — Principal that most recently updated the connector.
      - object — Principal that most recently mutated the connector. Same shape as {@link createdBy} but tracks the most recent updater, not the original creator. At create time the two fields point at the same principal; they diverge on the first subsequent update.
        - `type` 'user', required — Principal kind.
        - `id` string, required — Vercel user ID.
      - object — Principal that most recently mutated the connector. Same shape as {@link createdBy} but tracks the most recent updater, not the original creator. At create time the two fields point at the same principal; they diverge on the first subsequent update.
        - `type` 'project', required — Principal kind.
        - `id` string, required — Vercel project ID.
        - `environment` union, required — Deployment environment of the project principal.
          - string
          - 'development' | 'preview' | 'production'
    - `creationMode` 'managed' | 'manual' — How the connector row was originally created. New create paths stamp this explicitly; older rows may omit it.
    - `managed` object — Managed connector metadata exposed without leaking the manager connector or installation identifiers.
      - `sync` false | true — Whether Vercel synchronizes provider-side configuration.
    - `type` 'api-key' | 'custom' | 'discord' | 'github' | 'linear' | 'linq' | 'microsoft-entra' | 'microsoft-teams' | 'oauth' | 'photon' | 'salesforce' | 'sendblue' | 'slack' | 'snowflake' | 'snowflake-wif', required — Connector implementation type.
    - `service` string, required — Best-effort identifier of the third-party service this connector represents, independent of `type`. Examples: `'slack'`, `'mcp.linear.app'`, and `'auth.example.com'`. Always present in API responses.
    - `connectionMethod` string — The connection method this connector was created from, when the create request named one.
    - `target` string — Which of the service's products/surfaces this connector points at.
    - `name` string, required — Connector name within the owning team.
    - `displayName` string, required — Human-readable connector name.
    - `clientUrl` string, nullable — Provider-side URL for viewing or managing the resource represented by the connector. The destination can be an app, account, phone line, or service instance, depending on the connector type.
    - `redirectUri` string — Redirect URI registered with the third-party service for this connector, if any. Used by `startAuthorization`/`startInstallation` to replay the exact URI back to the provider's token endpoint. Absent on connectors created before this field was introduced; those callers fall back to the `https://connect.vercel.com/callback` default.
    - `typeName` string, required — Human-readable name of the connector type.
    - `typeIcon` string — Icon identifier supplied by the connector type.
    - `website` string — Public website for the connected service.
    - `devsite` string — Developer website for the connected service.
    - `docsite` string — Developer documentation for the connected service.
    - `icon` string — Connector branding icon. SHA-1 hash that resolves to the uploaded icon through the Vercel avatar service. Consumers render this with `https://vercel.com/api/www/avatar/{icon}`.
    - `backgroundColor` string — Hex background color (e.g., `#000000`) for branding.
    - `accentColor` string — Hex accent color (e.g., `#000000`) for branding.
    - `supportedSubjectTypes` string[], required — Token subject types supported by the connector.
    - `appTokens` object — App-token capabilities and known grants for the connector.
      - `crossInstallation` false | true, required — Whether one app token can be used across installations.
      - `supportsRefinement` false | true, required — Whether callers can narrow app-token grants per request.
      - `requiresReinstallation` false | true — True when changing app token grants requires reinstalling the app, so tokens cannot be partitioned independently by requester environment.
      - `scopes` string[] — Known allowed app-level scopes. For Slack this is the bot scope set configured on the app; for OAuth it is the connector's enabled `clientCredentials.scopes` configuration.
      - `supportedAuthorizationDetails` string[] — Supported OAuth authorization-detail type names.
      - `permissionsUrl` string — Link to the page on the service where this connector's app-level permissions are declared and granted, when the service has one and it differs from `clientUrl`.
    - `userTokens` object — User-token capabilities and known grants for the connector.
      - `crossInstallation` false | true, required — Whether one user token can be used across installations.
      - `supportsRefinement` false | true, required — Whether callers can narrow user-token grants per request.
      - `scopes` string[] — Known allowed user-level scopes. For Slack this is the user scope set configured on the app; for OAuth it is the connector's enabled `userAuthorization.scopes` configuration.
      - `supportedAuthorizationDetails` string[] — Supported OAuth authorization-detail type names.
      - `manualCredentialInput` false | true — User authorization is completed by the Connect consent screen submitting a credential instead of an OAuth redirect.
    - `supportsInstallation` false | true, required — Whether the connector supports an installation flow.
    - `supportsRevocation` false | true, required — Whether Connect can revoke tokens for this connector.
    - `supportsTriggers` false | true, required — Whether this connector type supports trigger webhooks. Derived from the type definition; indicates that `triggers` and `triggerDestinations` may be meaningful for this connector.
    - `supportsIcon` unknown, required
    - `triggers` ConnectTriggerConfiguration — Incoming trigger configuration. Only present when enabled.
      - `enabled` false | true, required — Whether incoming triggers are enabled for the connector.
    - `events` string[] — Known events this connector subscribes to (e.g. Slack bot events, GitHub webhook events). Names are type-specific and validated by the managed-create flow when forwarded to the third-party service.
    - `triggerDestinations` ConnectTriggerDestination[] — Destinations that incoming triggers should be forwarded to. Limited to 3 entries. Set the initial destination with `triggerDestination` during creation. Replace the complete set with `PATCH /v1/connect/connectors/{connector}/trigger-destinations`.
      - `projectId` string, required — Vercel project that receives matching trigger requests.
      - `customEnvironmentId` string — Stable custom-environment ID to route this destination to. Mutually exclusive with `branch`; omitted destinations keep the legacy production behavior.
      - `branch` string — Git branch used to select a preview deployment.
      - `path` string — Route path that receives the forwarded trigger request.
  - `pagination` ConnectPagination, required — Cursor for the next page.
    - `next` string, nullable, required — Opaque value to pass as `cursor` on the next request.

## Other responses

- `400` — One of the provided values in the request query is invalid.
- `401` — The request is not authorized.
- `403` — You do not have permission to access this resource.
- `410` — The requested resource is no longer available.
- `422` — The request cannot be completed in the current state.

## Changes

- **2026-09-02** `284e10c18f4d` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/vercel/apis/api/changes/v2/connect/connectors/get.md)

---

[API](https://skmtc.dev/vercel/apis/api.md) · [All operations](https://skmtc.dev/vercel/apis/api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/vercel/api/revisions/7c947faac0ef/schema)
