> **Building with AI coding agents?** If you're using an AI coding agent, install the official Scalekit plugin. It gives your agent full awareness of the Scalekit API — reducing hallucinations and enabling faster, more accurate code generation.
>
> - **Claude Code**: `/plugin marketplace add scalekit-inc/claude-code-authstack` then `/plugin install <auth-type>@scalekit-auth-stack`
> - **GitHub Copilot CLI**: `copilot plugin marketplace add scalekit-inc/github-copilot-authstack` then `copilot plugin install <auth-type>@scalekit-auth-stack`
> - **Codex**: run the bash installer, restart, then open Plugin Directory and enable `<auth-type>`
> - **Skills CLI** (Windsurf, Cline, 40+ agents): `npx skills add scalekit-inc/skills --list` then `--skill <skill-name>`
>
> `<auth-type>` / `<skill-name>`: `agentkit`, `full-stack-auth`, `mcp-auth`, `modular-sso`, `modular-scim` — [Full setup guide](https://docs.scalekit.com/dev-kit/build-with-ai/)

---

# Vercel

**Authentication:** OAuth 2.0
**Categories:** Developer Tools
## What you can do

Connect this agent connector to let your agent:

- **Create env var, edge config, project** — Creates a new environment variable for a Vercel project with the specified key, value, and target environments
- **Add domain, project domain** — Adds a domain to the authenticated user or team's Vercel account
- **Delete team, deployment, alias** — Permanently deletes a Vercel team and all its associated resources
- **List domains, team members, deployments** — Returns all domains registered or added to the authenticated user or team's Vercel account
- **Get team, user, alias** — Returns details of a specific Vercel team by its ID or slug
- **Update edge config items, env var, project** — Creates, updates, or deletes items in an Edge Config store using a list of patch operations

## Authentication

This connector uses **OAuth 2.0**. Scalekit acts as the OAuth client: it redirects your user to Vercel, obtains an access token, and automatically refreshes it before it expires. Your agent code never handles tokens directly — you only pass a `connectionName` and a user `identifier`.

You supply your Vercel **Connected App** credentials (Client ID + Secret) once per environment in the Scalekit dashboard.

Before calling this connector from your code, create the Vercel connection in **AgentKit** > **Connections** and copy the exact **Connection name** from that connection into your code. The value in code must match the dashboard exactly.

## Set up the connector

Register your Scalekit environment with the Vercel connector so Scalekit handles the OAuth flow and token lifecycle for your users. Follow every step below from start to finish — by the end you will have a working connection.

1. ### Create a Vercel OAuth integration

   You need a Vercel OAuth integration to get the Client ID and Client Secret that Scalekit will use to authorize your users.

   **Go to the Vercel Integrations Console:**

   - Open [vercel.com/dashboard/integrations/console](https://vercel.com/dashboard/integrations/console) in your browser and sign in.
   - Click **Create Integration** (top right of the page).
   - Fill in the form:

     | Field | What to enter |
     | --- | --- |
     | **Integration Name** | A recognizable name, e.g. `My Vercel AI Agent` |
     | **URL Slug** | Auto-generated from the name — you can leave it as-is |
     | **Website URL** | Your app's public URL. For testing you can use `https://localhost` |
     | **Short Description** | Brief description of your integration |

   - Leave the **Redirects** section empty for now. You will add the Scalekit callback URL in the next step.
   - Click **Create →**.

   After the integration is created, Vercel takes you to the integration's settings page. Keep this tab open.

   > Image: Create a new OAuth integration in the Vercel Integrations Console

   > tip
>
> The Vercel integration is available for development immediately after creation — no marketplace publish step is required.

2. ### Copy the redirect URI from Scalekit

   Scalekit gives you a callback URL that Vercel will redirect users back to after they authorize your app. You need to register this URL in your Vercel integration.

   **In the Scalekit dashboard:**

   - Go to [app.scalekit.com](https://app.scalekit.com) and sign in.
   - In the left sidebar, click **AgentKit** > **Connections** > **Create Connection**.
   - Search for **Vercel** and click **Create**.
   - A connection details panel opens. Find the **Redirect URI** field — it looks like:
     ```
     https://.scalekit.cloud/sso/v1/oauth/conn_/callback
     ```
   - Click the copy icon next to the Redirect URI to copy it to your clipboard.

   > Image: Copy the redirect URI from the Scalekit dashboard

3. ### Add the redirect URI and copy credentials from Vercel

   Switch back to the Vercel integration tab you left open.

   **Register the redirect URI:**

   - In the left sidebar of your integration settings, click **Credentials**.
   - Scroll down to the **Redirect URIs** section.
   - Paste the redirect URI you copied from Scalekit into the input field.
   - Click **Add URI** — the URI appears highlighted in the list.
   - Click **Save Changes**.

   **Copy your credentials:**

   - Scroll up to the **OAuth Credentials** section.
   - **Client ID** — shown in plain text. Click **Copy ID** to copy it.
   - **Client Secret** — click **Reveal** to show the secret, then copy it.

   Paste both values somewhere safe (a password manager or secrets vault). You will enter them into Scalekit in the next step.

   > Image: Vercel integration Credentials tab showing Client ID, Client Secret, and Redirect URIs

   > caution
>
> The Client Secret is shown only when you click Reveal. If you lose it, you must generate a new one in the Vercel integration settings — this invalidates the old secret and all existing connections will stop working until you update them in Scalekit.

4. ### Configure permissions in Vercel

   Permissions (scopes) control which Vercel API resources your integration can access on behalf of the user.

   - In the Vercel integration settings sidebar, click **Permissions**.
   - Enable the scopes your integration needs:

     | Scope | Access granted |
     | --- | --- |
     | `openid` | Required to issue an ID token for user identification |
     | `email` | User's email address |
     | `profile` | User's name, username, and profile picture |
     | `offline_access` | Refresh token for long-lived access without re-authorization |

   - Click **Save Changes**.

   > tip
>
> Only enable scopes your integration actually uses. Users see a list of requested permissions on the authorization screen — fewer scopes increases trust and approval rates.

5. ### Add credentials in Scalekit

   Switch back to the Scalekit dashboard tab.

   - Go to **AgentKit** > **Connections** and click the Vercel connection you created in Step 2.
   - Fill in the credentials form:

     | Field | Value |
     | --- | --- |
     | **Client ID** | Paste the Client ID from Step 3 |
     | **Client Secret** | Paste the Client Secret from Step 3 |
     | **Scopes** | Enter the scopes you enabled in Step 4, e.g. `openid profile email offline_access` |

   - Click **Save**.

   > Image: Add credentials in Scalekit dashboard

   Your Vercel connection is now configured. Scalekit will use these credentials to run the OAuth flow whenever a user connects their Vercel account.

   > tip
>
> The scopes entered here must match exactly what you enabled in Vercel. A mismatch causes an `invalid_scope` error when users try to authorize. If you add more scopes later, update both your Vercel integration and this Scalekit connection.

## Code examples

Connect a user's Vercel account and make API calls on their behalf — Scalekit handles OAuth and token management automatically.

You can interact with Vercel in two ways — via direct proxy API calls or via Scalekit optimized tool calls. Scroll down to see the list of available Scalekit tools.

## Proxy API calls

  ### Node.js

```typescript

const connectionName = 'vercel'; // get your connection name from connection configurations
const identifier = 'user_123';  // your unique user identifier

// Get your credentials from app.scalekit.com → Developers → Settings → API Credentials
const scalekit = new ScalekitClient(
  process.env.SCALEKIT_ENV_URL,
  process.env.SCALEKIT_CLIENT_ID,
  process.env.SCALEKIT_CLIENT_SECRET
);
const actions = scalekit.actions;

// Authenticate the user
const { link } = await actions.getAuthorizationLink({
  connectionName,
  identifier,
});
console.log('Authorize Vercel:', link);
process.stdout.write('Press Enter after authorizing...');
await new Promise(r => process.stdin.once('data', r));

// Make a request via Scalekit proxy
const result = await actions.request({
  connectionName,
  identifier,
  path: '/v2/user',
  method: 'GET',
});
console.log(result);
```

  ### Python

```python

from dotenv import load_dotenv
load_dotenv()

connection_name = "vercel"  # get your connection name from connection configurations
identifier = "user_123"    # your unique user identifier

# Get your credentials from app.scalekit.com → Developers → Settings → API Credentials
scalekit_client = scalekit.client.ScalekitClient(
    client_id=os.getenv("SCALEKIT_CLIENT_ID"),
    client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),
    env_url=os.getenv("SCALEKIT_ENV_URL"),
)
actions = scalekit_client.actions

# Authenticate the user
link_response = actions.get_authorization_link(
    connection_name=connection_name,
    identifier=identifier
)
# present this link to your user for authorization, or click it yourself for testing
print("Authorize Vercel:", link_response.link)
input("Press Enter after authorizing...")

# Make a request via Scalekit proxy
result = actions.request(
    connection_name=connection_name,
    identifier=identifier,
    path="/v2/user",
    method="GET"
)
print(result)
```

## Scalekit tools

## Tool list

Use the exact tool names from the **Tool list** below when you call `execute_tool`. If you're not sure which name to use, list the tools available for the current user first.

## Tool list

### `vercel_alias_create`

Assigns an alias (custom domain) to a Vercel deployment.

Parameters:

- `alias` (`string`, required): The alias hostname to assign.
- `deployment_id` (`string`, required): The deployment ID to assign the alias to.
- `team_id` (`string`, optional): Team ID if the deployment belongs to a team.

### `vercel_alias_delete`

Removes an alias from a Vercel deployment.

Parameters:

- `alias_or_id` (`string`, required): The alias hostname or ID to delete.
- `team_id` (`string`, optional): Team ID if the alias belongs to a team.

### `vercel_alias_get`

Returns information about a specific alias by its ID or hostname.

Parameters:

- `alias_or_id` (`string`, required): The alias hostname or ID.
- `team_id` (`string`, optional): Team ID if the alias belongs to a team.

### `vercel_aliases_list`

Returns all aliases for the authenticated user or team, with optional domain and deployment filtering.

Parameters:

- `domain` (`string`, optional): Filter aliases by domain.
- `limit` (`integer`, optional): Maximum number of aliases to return.
- `since` (`integer`, optional): Timestamp in ms for pagination.
- `team_id` (`string`, optional): Team ID to list aliases for.

### `vercel_check_create`

Creates a new check on a Vercel deployment. Used by integrations to report status of external checks like test suites or audits.

Parameters:

- `blocking` (`boolean`, required): If true, this check must pass before deployment is considered ready.
- `deployment_id` (`string`, required): The deployment ID to create a check for.
- `name` (`string`, required): Display name for the check.
- `detailsUrl` (`string`, optional): URL where users can view check details.
- `team_id` (`string`, optional): Team ID if the deployment belongs to a team.

### `vercel_check_update`

Updates the status and conclusion of a deployment check. Used to report check results back to Vercel.

Parameters:

- `check_id` (`string`, required): The check ID to update.
- `deployment_id` (`string`, required): The deployment ID the check belongs to.
- `conclusion` (`string`, optional): Check conclusion: succeeded, failed, skipped, canceled.
- `detailsUrl` (`string`, optional): URL where users can view check details.
- `status` (`string`, optional): Check status: running, completed.
- `team_id` (`string`, optional): Team ID if the deployment belongs to a team.

### `vercel_checks_list`

Returns all checks attached to a Vercel deployment (e.g. from third-party integrations).

Parameters:

- `deployment_id` (`string`, required): The deployment ID to list checks for.
- `team_id` (`string`, optional): Team ID if the deployment belongs to a team.

### `vercel_deployment_aliases_list`

Returns all aliases assigned to a specific Vercel deployment.

Parameters:

- `deployment_id` (`string`, required): The deployment ID to get aliases for.
- `team_id` (`string`, optional): Team ID if the deployment belongs to a team.

### `vercel_deployment_cancel`

Cancels a Vercel deployment that is currently building or queued.

Parameters:

- `deployment_id` (`string`, required): The deployment ID to cancel.
- `team_id` (`string`, optional): Team ID if the deployment belongs to a team.

### `vercel_deployment_create`

Creates a new Vercel deployment for a project, optionally from a Git ref or with inline files.

Parameters:

- `name` (`string`, required): The project name to deploy.
- `git_source` (`string`, optional): JSON object with Git source info, e.g. {"type":"github","ref":"main","repoId":"123"}.
- `target` (`string`, optional): Deployment target: production or preview. Default is preview.
- `team_id` (`string`, optional): Team ID if deploying to a team project.

### `vercel_deployment_delete`

Deletes a Vercel deployment by its ID.

Parameters:

- `deployment_id` (`string`, required): The deployment ID to delete.
- `team_id` (`string`, optional): Team ID if the deployment belongs to a team.

### `vercel_deployment_events_list`

Returns build log events for a Vercel deployment. Useful for debugging build errors.

Parameters:

- `deployment_id` (`string`, required): The deployment ID to get events for.
- `limit` (`integer`, optional): Maximum number of log events to return.
- `since` (`integer`, optional): Timestamp in ms to fetch events after.
- `team_id` (`string`, optional): Team ID if the deployment belongs to a team.

### `vercel_deployment_get`

Returns details of a specific Vercel deployment by its ID or URL, including build status, target, and metadata.

Parameters:

- `id_or_url` (`string`, required): The deployment ID (dpl_xxx) or deployment URL.
- `team_id` (`string`, optional): Team ID if the deployment belongs to a team.

### `vercel_deployments_list`

Returns a list of deployments for the authenticated user or a specific project/team, with filtering and pagination.

Parameters:

- `from` (`integer`, optional): Timestamp in ms for pagination cursor.
- `limit` (`integer`, optional): Maximum number of deployments to return.
- `project_id` (`string`, optional): Filter deployments by project ID or name.
- `state` (`string`, optional): Filter by deployment state: BUILDING, ERROR, INITIALIZING, QUEUED, READY, CANCELED.
- `target` (`string`, optional): Filter by target environment: production or preview.
- `team_id` (`string`, optional): Filter deployments by team ID.

### `vercel_dns_record_create`

Creates a new DNS record for a domain managed by Vercel. Supports A, AAAA, CNAME, TXT, MX, SRV, and CAA records.

Parameters:

- `domain` (`string`, required): The domain to create the DNS record for.
- `name` (`string`, required): Subdomain name, or empty string for root domain.
- `type` (`string`, required): Record type: A, AAAA, CNAME, TXT, MX, SRV, CAA.
- `value` (`string`, required): The record value (IP address, hostname, text, etc.).
- `mx_priority` (`integer`, optional): Priority for MX records.
- `team_id` (`string`, optional): Team ID if the domain belongs to a team.
- `ttl` (`integer`, optional): Time-to-live in seconds. Default is 60.

### `vercel_dns_record_delete`

Deletes a DNS record from a domain managed by Vercel.

Parameters:

- `domain` (`string`, required): The domain the DNS record belongs to.
- `record_id` (`string`, required): The ID of the DNS record to delete.
- `team_id` (`string`, optional): Team ID if the domain belongs to a team.

### `vercel_dns_records_list`

Returns all DNS records for a domain managed by Vercel.

Parameters:

- `domain` (`string`, required): The domain to list DNS records for.
- `limit` (`integer`, optional): Maximum number of records to return.
- `since` (`integer`, optional): Timestamp in ms for pagination.
- `team_id` (`string`, optional): Team ID if the domain belongs to a team.

### `vercel_domain_add`

Adds a domain to the authenticated user or team's Vercel account.

Parameters:

- `name` (`string`, required): The domain name to add.
- `team_id` (`string`, optional): Team ID to add the domain to.

### `vercel_domain_delete`

Removes a domain from the authenticated user or team's Vercel account.

Parameters:

- `domain` (`string`, required): The domain name to delete.
- `team_id` (`string`, optional): Team ID if the domain belongs to a team.

### `vercel_domain_get`

Returns information about a specific domain including verification status, nameservers, and registrar.

Parameters:

- `domain` (`string`, required): The domain name to look up.
- `team_id` (`string`, optional): Team ID if the domain belongs to a team.

### `vercel_domains_list`

Returns all domains registered or added to the authenticated user or team's Vercel account.

Parameters:

- `limit` (`integer`, optional): Maximum number of domains to return.
- `since` (`integer`, optional): Timestamp in ms for pagination.
- `team_id` (`string`, optional): Team ID to list domains for.

### `vercel_edge_config_create`

Creates a new Edge Config store for storing read-only configuration data close to users at the edge.

Parameters:

- `slug` (`string`, required): A unique slug for the Edge Config store.
- `team_id` (`string`, optional): Team ID to create the Edge Config under.

### `vercel_edge_config_delete`

Permanently deletes an Edge Config store and all its items.

Parameters:

- `edge_config_id` (`string`, required): The Edge Config store ID to delete.
- `team_id` (`string`, optional): Team ID if the Edge Config belongs to a team.

### `vercel_edge_config_get`

Returns details of a specific Edge Config store by its ID.

Parameters:

- `edge_config_id` (`string`, required): The Edge Config store ID.
- `team_id` (`string`, optional): Team ID if the Edge Config belongs to a team.

### `vercel_edge_config_item_get`

Returns the value of a specific item from an Edge Config store by key.

Parameters:

- `edge_config_id` (`string`, required): The Edge Config store ID.
- `item_key` (`string`, required): The key of the item to retrieve.
- `team_id` (`string`, optional): Team ID if the Edge Config belongs to a team.

### `vercel_edge_config_items_list`

Returns all key-value items stored in an Edge Config store.

Parameters:

- `edge_config_id` (`string`, required): The Edge Config store ID.
- `team_id` (`string`, optional): Team ID if the Edge Config belongs to a team.

### `vercel_edge_config_items_update`

Creates, updates, or deletes items in an Edge Config store using a list of patch operations.

Parameters:

- `edge_config_id` (`string`, required): The Edge Config store ID.
- `items` (`string`, required): JSON array of patch operations. Each item has 'operation' (create/update/upsert/delete), 'key', and optionally 'value'.
- `team_id` (`string`, optional): Team ID if the Edge Config belongs to a team.

### `vercel_edge_config_token_create`

Creates a new read token for an Edge Config store to be used in application code.

Parameters:

- `edge_config_id` (`string`, required): The Edge Config store ID.
- `label` (`string`, required): A descriptive label for the token.
- `team_id` (`string`, optional): Team ID if the Edge Config belongs to a team.

### `vercel_edge_config_tokens_delete`

Deletes one or more read tokens from an Edge Config store.

Parameters:

- `edge_config_id` (`string`, required): The Edge Config store ID.
- `tokens` (`string`, required): JSON array of token IDs to delete.
- `team_id` (`string`, optional): Team ID if the Edge Config belongs to a team.

### `vercel_edge_config_tokens_list`

Returns all read tokens for an Edge Config store.

Parameters:

- `edge_config_id` (`string`, required): The Edge Config store ID.
- `team_id` (`string`, optional): Team ID if the Edge Config belongs to a team.

### `vercel_edge_configs_list`

Returns all Edge Config stores for the authenticated user or team.

Parameters:

- `team_id` (`string`, optional): Team ID to list Edge Configs for.

### `vercel_env_var_create`

Creates a new environment variable for a Vercel project with the specified key, value, and target environments.

Parameters:

- `id_or_name` (`string`, required): The project ID or name.
- `key` (`string`, required): The environment variable key.
- `value` (`string`, required): The environment variable value.
- `target` (`string`, optional): JSON array of targets: production, preview, development. Defaults to all.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.
- `type` (`string`, optional): Variable type: plain or secret. Default is plain.

### `vercel_env_var_delete`

Deletes an environment variable from a Vercel project.

Parameters:

- `env_id` (`string`, required): The environment variable ID to delete.
- `id_or_name` (`string`, required): The project ID or name.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.

### `vercel_env_var_update`

Updates an existing environment variable for a Vercel project.

Parameters:

- `env_id` (`string`, required): The environment variable ID to update.
- `id_or_name` (`string`, required): The project ID or name.
- `target` (`string`, optional): JSON array of new targets: production, preview, development.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.
- `value` (`string`, optional): New value for the environment variable.

### `vercel_env_vars_list`

Returns all environment variables for a Vercel project, including their targets (production, preview, development) and encryption status.

Parameters:

- `id_or_name` (`string`, required): The project ID or name.
- `decrypt` (`boolean`, optional): If true, returns decrypted values for sensitive variables.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.

### `vercel_project_create`

Creates a new Vercel project with a given name, framework, and optional Git repository.

Parameters:

- `name` (`string`, required): The name of the project.
- `framework` (`string`, optional): Framework preset, e.g. nextjs, vite, gatsby, nuxtjs, create-react-app.
- `git_repository` (`string`, optional): JSON object with 'type' (github/gitlab/bitbucket) and 'repo' (owner/name) fields.
- `root_directory` (`string`, optional): Root directory of the project within the repository.
- `team_id` (`string`, optional): Team ID to create the project under.

### `vercel_project_delete`

Permanently deletes a Vercel project and all its deployments, domains, and environment variables.

Parameters:

- `id_or_name` (`string`, required): The project ID or name to delete.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.

### `vercel_project_domain_add`

Assigns a domain to a Vercel project with an optional redirect target.

Parameters:

- `id_or_name` (`string`, required): The project ID or name.
- `name` (`string`, required): The domain name to assign to the project.
- `git_branch` (`string`, optional): Git branch to associate this domain with for preview deployments.
- `redirect` (`string`, optional): Redirect target domain if this domain should redirect.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.

### `vercel_project_domain_delete`

Removes a domain assignment from a Vercel project.

Parameters:

- `domain` (`string`, required): The domain name to remove from the project.
- `id_or_name` (`string`, required): The project ID or name.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.

### `vercel_project_domains_list`

Returns all domains assigned to a specific Vercel project.

Parameters:

- `id_or_name` (`string`, required): The project ID or name.
- `production` (`boolean`, optional): Filter to production domains only.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.

### `vercel_project_get`

Returns details of a specific Vercel project including its framework, Git repository, environment variables summary, and domains.

Parameters:

- `id_or_name` (`string`, required): The project ID or name.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.

### `vercel_project_update`

Updates a Vercel project's name, framework, build command, output directory, or other settings.

Parameters:

- `id_or_name` (`string`, required): The project ID or name to update.
- `build_command` (`string`, optional): Custom build command override.
- `framework` (`string`, optional): Framework preset to apply.
- `install_command` (`string`, optional): Custom install command override.
- `name` (`string`, optional): New project name.
- `output_directory` (`string`, optional): Custom output directory override.
- `team_id` (`string`, optional): Team ID if the project belongs to a team.

### `vercel_projects_list`

Returns all projects for the authenticated user or team, with optional search and pagination.

Parameters:

- `from` (`integer`, optional): Timestamp in ms for pagination cursor.
- `limit` (`integer`, optional): Maximum number of projects to return.
- `search` (`string`, optional): Filter projects by name search query.
- `team_id` (`string`, optional): Team ID to list projects for. Omit for personal projects.

### `vercel_team_create`

Creates a new Vercel team with the specified slug and optional name.

Parameters:

- `slug` (`string`, required): A unique URL-friendly identifier for the team.
- `name` (`string`, optional): Display name for the team.

### `vercel_team_delete`

Permanently deletes a Vercel team and all its associated resources.

Parameters:

- `team_id` (`string`, required): The team ID or slug to delete.

### `vercel_team_get`

Returns details of a specific Vercel team by its ID or slug.

Parameters:

- `team_id` (`string`, required): The team ID or slug.

### `vercel_team_member_invite`

Invites a user to a Vercel team by email address with a specified role.

Parameters:

- `email` (`string`, required): Email address of the user to invite.
- `team_id` (`string`, required): The team ID or slug.
- `role` (`string`, optional): Role to assign: OWNER, MEMBER, VIEWER, DEVELOPER, BILLING.

### `vercel_team_member_remove`

Removes a member from a Vercel team by their user ID.

Parameters:

- `team_id` (`string`, required): The team ID or slug.
- `user_id` (`string`, required): The user ID of the member to remove.

### `vercel_team_members_list`

Returns all members of a Vercel team including their roles and join dates.

Parameters:

- `team_id` (`string`, required): The team ID or slug.
- `limit` (`integer`, optional): Maximum number of members to return.
- `role` (`string`, optional): Filter by role: OWNER, MEMBER, VIEWER, DEVELOPER, BILLING.
- `since` (`integer`, optional): Timestamp in ms to fetch members joined after this time.

### `vercel_team_update`

Updates a Vercel team's name, slug, description, or other settings.

Parameters:

- `team_id` (`string`, required): The team ID or slug to update.
- `description` (`string`, optional): New description for the team.
- `name` (`string`, optional): New display name for the team.
- `slug` (`string`, optional): New URL-friendly slug for the team.

### `vercel_teams_list`

Returns all teams the authenticated user belongs to, with pagination support.

Parameters:

- `limit` (`integer`, optional): Maximum number of teams to return.
- `since` (`integer`, optional): Timestamp in milliseconds to fetch teams created after this time.
- `until` (`integer`, optional): Timestamp in milliseconds to fetch teams created before this time.

### `vercel_user_get`

Returns the authenticated user's profile including name, email, username, and account details.

### `vercel_webhook_create`

Creates a new webhook that sends event notifications to the specified URL for Vercel deployment and project events.

Parameters:

- `events` (`string`, required): JSON array of event types to subscribe to, e.g. ["deployment.created","deployment.succeeded"].
- `url` (`string`, required): The HTTPS endpoint URL to receive webhook payloads.
- `project_ids` (`string`, optional): JSON array of project IDs to scope this webhook to. Omit for all projects.
- `team_id` (`string`, optional): Team ID to create the webhook for.

### `vercel_webhook_delete`

Permanently deletes a Vercel webhook.

Parameters:

- `webhook_id` (`string`, required): The webhook ID to delete.
- `team_id` (`string`, optional): Team ID if the webhook belongs to a team.

### `vercel_webhook_get`

Returns details of a specific Vercel webhook by its ID.

Parameters:

- `webhook_id` (`string`, required): The webhook ID.
- `team_id` (`string`, optional): Team ID if the webhook belongs to a team.

### `vercel_webhooks_list`

Returns all webhooks configured for the authenticated user or team.

Parameters:

- `team_id` (`string`, optional): Team ID to list webhooks for.


---

## More Scalekit documentation

| Resource | What it contains | When to use it |
|----------|-----------------|----------------|
| [/llms.txt](/llms.txt) | Structured index with routing hints per product area | Start here — find which documentation set covers your topic before loading full content |
| [/llms-full.txt](/llms-full.txt) | Complete documentation for all Scalekit products in one file | Use when you need exhaustive context across multiple products or when the topic spans several areas |
| [sitemap-0.xml](https://docs.scalekit.com/sitemap-0.xml) | Full URL list of every documentation page | Use to discover specific page URLs you can fetch for targeted, page-level answers |
