vercel tokens
The vercel tokens command manages your personal authentication tokens. Tokens authenticate Vercel CLI commands and Vercel REST API requests on your behalf. They are scoped to your user account, and optionally to a single project. Use this command to list existing tokens, create new ones for scripts and CI environments, and revoke tokens you no longer need.
Treat tokens as secrets. The CLI shows the plaintext value of a newly created token only once. Store it in a secret manager or environment variable; never commit it to source control.
vercel tokens [subcommand]Using the vercel tokens command to manage personal authentication tokens.
When called without a subcommand, vercel tokens runs list.
Lists your personal authentication tokens. This is the default subcommand, so vercel tokens and vercel tokens list are equivalent.
vercel tokens
vercel tokens list
vercel tokens ls --format jsonList your tokens. Use --format json for machine-readable output.
| Option | Type | Description |
|---|---|---|
-F, --format <FORMAT> | String | Output format (json) |
--limit <NUMBER> | Number | Maximum number of tokens to return (default 20, range 1-100) |
Creates a new personal authentication token with the given name. The plaintext token is printed to stdout; capture it before it scrolls away.
vercel tokens add "CI deploy"Create a new token named CI deploy. The plaintext value is printed once.
Creating tokens with this command requires a classic personal access
token with account-level scope. OAuth sessions created by vercel login
cannot mint new tokens, and team-only or project-only tokens (some vcp_…
values) will also be rejected. If you don't already have a classic token,
create one from the Account Tokens
page in the dashboard, then set VERCEL_TOKEN (or pass
--token) to that value and re-run the command.
| Argument | Required | Description |
|---|---|---|
name | Yes | Display name for the token (helps you identify it later) |
| Option | Type | Description |
|---|---|---|
-F, --format <FORMAT> | String | Output format (json) |
--project <PROJECT_ID> | String | Optional project ID to scope the token to a single project. The CLI forwards this value directly to the API; project names are not resolved. |
Removes a personal authentication token by ID. Use vercel tokens list first to find the token ID.
vercel tokens rm tok_abc123tok_abc123.| Argument | Required | Description |
|---|---|---|
id | Yes | ID of the token to remove |
| Option | Type | Description |
|---|---|---|
-F, --format <FORMAT> | String | Output format (json) |
vercel tokens add "GitHub Actions deploy"Capture the plaintext value from stdout and set it as VERCEL_TOKEN in your
CI environment.
vercel tokens add "Preview deploy bot" --project prj_abc123The resulting token can only act on prj_abc123. This narrows blast radius
if the token leaks.
vercel tokens ls --format jsonUseful for scripts that need to inspect or reconcile tokens.
vercel tokens rm tok_abc123- Account tokens (Vercel Dashboard)
--tokenglobal option- Using Vercel CLI for custom workflows
The following global options can be passed when using the vercel tokens command:
--cwd--debug--global-config--help--local-config--no-color--non-interactive--scope--team--token--version
For more information on global options and their usage, refer to the options section.
Was this helpful?