View all connectors

Vercel Deployments

By enabling the Vercel Deployments connector, you can import production deployment events from Vercel and track Deploy frequency. In combination with your source control connectors, this enables reports about the relationship between deployments and opened or merged pull requests. See the API documentation below and the schema explorer for the data DX imports. DX does not read or access your source code.

Use this connector when Vercel is the system of record for your production releases. For custom workflows, monorepos, or deployment systems outside Vercel, use deployments.create instead.

Vercel Deployments creates catalog services from the git repository each Vercel project deploys. If several Vercel projects deploy the same repository, or repositories with the same name exist across git organizations, review your catalog after the first import to confirm services were created as expected.

Prerequisites

To connect Vercel to DX, you need:

  • a Vercel account token scoped to the account and teams whose deployments you want DX to import
  • membership in at least one Vercel team; the connector syncs teams, so a token with no readable teams cannot be verified
  • Vercel projects linked to a git repository, since DX attributes deployments to services using the linked repository

What DX imports

  • Teams: every team the token can read. Teams that stop being returned by the API are marked inaccessible rather than deleted.
  • Projects: every project in those teams, including the linked git repository, git provider, production branch, and detected framework.
  • Deployments: deployments that target the Vercel production environment. Preview deployments are not imported.

DX promotes a Vercel deployment into a unified deployments record when all of the following are true:

  • the deployment targeted the production environment
  • the deployment reached Vercel’s READY state
  • the deployment has a commit SHA, which means CLI deploys without git metadata are imported but not promoted
  • the project it belongs to is linked to a git repository

Deployments that are still building when an import runs are re-checked on later imports until they reach a terminal state. If a deployment no longer exists in Vercel, DX marks its state as abandoned.

Setup instructions

Follow the steps below to connect Vercel to DX.

Step 1

In Vercel, create an account token:

  • Browse to https://vercel.com/account/tokens.
  • Under Create Token, enter a Token Name. We recommend DX - Deployments so it is easy to identify later.
  • Set Scope to cover the account and every Vercel team whose deployments you want DX to import. DX only imports deployments for teams the token can read, so any team left out of the scope produces no deployment data.
  • Choose an Expiration. DX connections stop importing when the token expires, so prefer the longest expiration your policies allow and plan to rotate the token before that date.
  • Click Create and copy the token. Vercel only shows it once.

Step 2

  • Navigate to the connections page in DX and select + Connection in the top right.
  • Select Vercel and paste your API token.

Step 3

Optionally, add more credentials to the connection to spread imports across multiple Vercel tokens and reduce rate limiting. Every credential on the connection must be able to read the same number of Vercel teams; DX rejects a credential whose team access does not match the existing credentials.

API reference

The table below lists the specific API endpoints that are used by DX.

Endpoint Documentation
/v2/teams List all teams
/v10/projects Retrieve a list of projects
/v7/deployments List deployments
/v13/deployments/{idOrUrl} Get a deployment by ID or URL

Errors

The table below lists potential error codes when adding a connection in DX.

Error Description
invalid_credentials Your API token is not valid or has expired. Create a new token on Vercel’s Account Tokens page.
invalid_permissions Your API token cannot list its teams, read projects, or read deployments. Confirm the token’s scope includes the teams you want DX to import.
no_resources Your API token has access to no readable teams, or the teams it can read contain no projects.

Curl commands

When connection verification fails

DX verifies a Vercel connection in three steps: listing teams, reading projects for the first team, and reading recent production deployments for that team. If your connection is failing, run the commands below with YOUR_API_TOKEN replaced to see which step Vercel rejects.

Step 1: List teams

curl -H 'Authorization: Bearer YOUR_API_TOKEN' 'https://api.vercel.com/v2/teams?limit=1'

An empty teams array means the token belongs to no readable teams, which DX reports as no_resources. A 403 means the token’s scope does not allow it to list teams.

Step 2: List projects for a team

Use a team ID returned in Step 1:

curl -H 'Authorization: Bearer YOUR_API_TOKEN' 'https://api.vercel.com/v10/projects?teamId=YOUR_TEAM_ID&limit=1'

Step 3: List production deployments for a team

curl -H 'Authorization: Bearer YOUR_API_TOKEN' 'https://api.vercel.com/v7/deployments?teamId=YOUR_TEAM_ID&target=production&limit=1'

A 403 or 404 here means the token can read the team’s projects but not its deployments.

Data Cloud API

Once the initial connection is created successfully, Vercel credentials can be managed via the Data Cloud API.

Credential fields

Field Type Description
secrets.api_token String A Vercel account token scoped to the teams whose deployments DX should import.
{
  "id": 456,
  "secrets": {
    "api_token": "your_vercel_api_token"
  }
}