> ## Documentation Index
> Fetch the complete documentation index at: https://docs.atako.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Vercel

> Connect Vercel to your Atako agents — 8 read and 6 write actions.

Let your agents follow and operate Vercel projects — browse teams, projects, domains and deployments, read build logs, redeploy from git, cancel or promote a deployment, pause a project and add a domain.

## Connection

* **Authentication**: API key (Vercel access token).

<Note>
  Sign in at vercel.com with your Personal Account selected (not a team) → Settings → Tokens → Create. Enter a descriptive name, choose the scope (your personal account or one team) and an expiration, click Create Token and copy it — it is shown only once. A Vercel token has no per-endpoint permissions: it acts with your role on the chosen scope. For a team, agents pass its teamId (see list\_teams) on each action.

  See [Vercel's documentation](https://vercel.com/kb/guide/how-do-i-use-a-vercel-api-access-token).
</Note>

## Read actions (8)

| Action | Description |
| - | - |
| `get_deployment` | Get a deployment by id (dpl\_…) or hostname (see list\_deployments): state, URL, target, errors. withGitRepoInfo (boolean) adds the git source (commit SHA, branch, repository). |
| `get_deployment_events` | Get the build logs of a deployment as a JSON list of events. Optional: limit (integer, -1 = all available logs), direction ("forward"\|"backward"), since / until (timestamps in milliseconds). |
| `get_project` | Get a project by id (prj\_…) or name (see list\_projects), including its git link and settings. |
| `get_user` | Get the user who owns the access token. Probe action — no arguments required. |
| `list_deployments` | List deployments, newest first. Optional filters: projectId (project id or name), target (environment, e.g. "production" or "preview"), state (comma-separated among BUILDING, ERROR, INITIALIZING, QUEUED, READY, CANCELED, BLOCKED), branch, sha, limit (integer), since / until (timestamps in milliseconds — pass the previous page's last `created` as until to paginate). |
| `list_project_domains` | List the domains of a project. Optional filters: production ("true"\|"false"), target ("production"\|"preview"), gitBranch, verified ("true"\|"false"), limit (integer, max 100), since / until (timestamps in milliseconds), order ("ASC"\|"DESC"). |
| `list_projects` | List projects of the personal account or of a team (teamId). Optional: search (name contains), limit (integer), from (continuation token or timestamp returned by the previous page), repoUrl (filter by git repository URL). |
| `list_teams` | List the teams the token owner belongs to — gives the teamId to pass to the other actions. Pagination: limit (integer); since / until (timestamps in milliseconds, creation date). |

## Write actions (6)

| Action | Description |
| - | - |
| `add_project_domain` | Add a domain to a project; if it is not verified yet the response has verified=false and a verification challenge to publish in DNS. Arguments: idOrName (string, path) — project id or name; name (string, required, body) — the domain, e.g. "[www.example.com](http://www.example.com)"; gitBranch (string, optional) — link the domain to a branch; customEnvironmentId (string, optional); redirect (string, optional) — domain to redirect to; redirectStatusCode (integer, optional) — 301, 302, 307 or 308; teamId/slug (string, optional, query) — team scope. |
| `cancel_deployment` | Cancel a deployment that is still building (QUEUED, INITIALIZING or BUILDING); Vercel answers 400 once it is READY, ERROR or CANCELED. Arguments: id (string, path) — deployment id dpl\_… (see list\_deployments); teamId/slug (string, optional, query) — team scope. |
| `create_deployment` | Create a deployment from git or redeploy an existing one (no file upload). Arguments: name (string, required) — project name used in the deployment URL; project (string, optional) — target project id or name, overrides name; target (string, optional) — "production" or "staging", omit for a preview deployment; customEnvironmentSlugOrId (string, optional) — custom environment instead of target; to REDEPLOY: deploymentId (string, dpl\_… from list\_deployments) plus optional withLatestCommit (boolean — build the latest commit of the same branch instead of the original SHA); to deploy FROM GIT: gitSource (object) — one of \{type:"github", ref, repoId} or \{type:"github", ref, org, repo}, \{type:"gitlab", ref, projectId}, \{type:"bitbucket", ref, repoUuid} or \{type:"bitbucket", ref, owner, slug}, each with an optional sha (the connected repo id is under link.repoId in get\_project); forceNew (boolean, optional) — bypass deduplication with a similar deployment; teamId/slug (string, optional, query) — team scope. |
| `pause_project` | Pause a project: its production deployment stops being served and custom production domains are no longer assigned automatically. Arguments: projectId (string, path) — project id prj\_… (not the name; see list\_projects); teamId/slug (string, optional, query) — team scope. |
| `promote_deployment` | Point production traffic to an existing deployment of the project (instant rollback or promotion — no rebuild). Arguments: projectId (string, path) — project id prj\_… (see list\_projects); deploymentId (string, path) — deployment id dpl\_… (see list\_deployments); teamId/slug (string, optional, query) — team scope. |
| `unpause_project` | Resume a paused project: its production deployment is served again. Arguments: projectId (string, path) — project id prj\_… (see list\_projects); teamId/slug (string, optional, query) — team scope. |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](/integrations/permissions) for the grant model and [Security](/integrations/security) for how credentials are protected.

***

*Last reviewed against the provider API: September 2026.*


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.