post /v2/deployments/{id}/aliases
Creates a new alias for the deployment with the given deployment ID. The authenticated user or team must own this deployment. If the desired alias is already assigned to another deployment, then it will be removed from the old deployment and assigned to the new one.
delete /v2/aliases/{aliasId}
Delete an Alias with the specified ID.
get /v4/aliases/{idOrAlias}
Retrieves an Alias for the given host name or alias ID.
get /v2/deployments/{id}/aliases
Retrieves all Aliases for the Deployment with the given ID. The authenticated user or team must own the deployment.
get /v4/aliases
Retrieves a list of aliases for the authenticated User or Team. When domain
is provided, only aliases for that domain will be returned. When projectId
is provided, it will only return the given project aliases.
head /v8/artifacts/{hash}
Check that a cache artifact with the given hash
exists. This request returns response headers only and is equivalent to a GET
request to this endpoint where the response contains no body.
get /v8/artifacts/{hash}
Downloads a cache artifact indentified by its hash
specified on the request path. The artifact is downloaded as an octet-stream. The client should verify the content-length header and response body.
get /v8/artifacts/status
Check the status of Remote Caching for this principal. Returns a JSON-encoded status indicating if Remote Caching is enabled, disabled, or disabled due to usage limits.
post /v8/artifacts
Query information about an array of artifacts.
post /v8/artifacts/events
Records an artifacts cache usage event. The body of this request is an array of cache usage events. The supported event types are HIT
and MISS
. The source is either LOCAL
the cache event was on the users filesystem cache or REMOTE
if the cache event is for a remote cache. When the event is a HIT
the request also accepts a number duration
which is the time taken to generate the artifact in the cache.
put /v8/artifacts/{hash}
Uploads a cache artifact identified by the hash
specified on the path. The cache artifact can then be downloaded with the provided hash
.
post /v3/user/tokens
Creates and returns a new authentication token for the currently authenticated User. The bearerToken
property is only provided once, in the response body, so be sure to save it on the client for use with API requests.
delete /v3/user/tokens/{tokenId}
Invalidate an authentication token, such that it will no longer be valid for future HTTP requests.
get /v5/user/tokens/{tokenId}
Retrieve metadata about an authentication token belonging to the currently authenticated User.
get /v5/user/tokens
Retrieve a list of the current User's authentication tokens.
post /registration
Request a new login for a user to get a token. This will respond with a verification token and send an email to confirm the request. Once confirmed you can use the verification token to get an authentication token.
get /registration/verify
Verify the user accepted the login request and get a authentication token. The user email address and the token received after requesting the login must be added to the URL as a query string with the names email
and token
.
get /v7/certs/{id}
Get cert by id
post /v7/certs
Issue a new cert
delete /v7/certs/{id}
Remove cert
put /v7/certs
Upload a cert
post /v1/deployments/{deploymentId}/checks
Creates a new check. This endpoint must be called with an OAuth2 or it will produce a 400 error.
get /v1/deployments/{deploymentId}/checks/{checkId}
Return a detailed response for a single check.
post /v1/deployments/{deploymentId}/checks/{checkId}/rerequest
Rerequest a selected check that has failed.
get /v1/deployments/{deploymentId}/checks
List all of the checks created for a deployment.
patch /v1/deployments/{deploymentId}/checks/{checkId}
Update an existing check. This endpoint must be called with an OAuth2 or it will produce a 400 error.
patch /v12/deployments/{id}/cancel
This endpoint allows you to cancel a deployment which is currently building, by supplying its id
in the URL.
post /v13/deployments
Create a new deployment with all the required and intended data. If the deployment is not a git deployment, all files must be provided with the request, either referenced or inlined. Additionally, a deployment id can be specified to redeploy a previous deployment.
delete /v13/deployments/{id}
This API allows you to delete a deployment, either by supplying its id
in the URL or the url
of the deployment as a query parameter. You can obtain the ID, for example, by listing all deployments.
get /v6/deployments/{id}/files/{fileId}
Allows to retrieve the content of a file by supplying the file identifier and the deployment unique identifier. The response body will contain the raw content of the file.
get /v13/deployments/{idOrUrl}
Retrieves information for a deployment either by supplying its ID (id
property) or Hostname (url
property). Additional details will be included when the authenticated user or team is an owner of the deployment.
get /v2/deployments/{idOrUrl}/events
Get the build logs of a deployment by deployment ID and build ID. It can work as an infinite stream of logs or as a JSON endpoint depending on the input parameters.
get /v6/deployments/{id}/files
Allows to retrieve the file structure of a deployment by supplying the deployment unique identifier.
get /v6/deployments
List deployments under the authenticated user or team. If a deployment hasn't finished uploading (is incomplete), the url
property will have a value of null
.
post /v2/files
Before you create a deployment you need to upload the required files for that deployment. To do it, you need to first upload each file to this endpoint. Once that's completed, you can create a new deployment with the uploaded files. The file content must be placed inside the body of the request. In the case of a successful response you'll receive a status code 200 with an empty body.
post /v2/domains/{domain}/records
Creates a DNS record for a domain.
delete /v2/domains/{domain}/records/{recordId}
Removes an existing DNS record from a domain name.
get /v4/domains/{domain}/records
Retrieves a list of DNS records created for a domain name. By default it returns 20 records if no limit is provided. The rest can be retrieved using the pagination options.
patch /v1/domains/records/{recordId}
Updates an existing DNS record for a domain name.
get /v4/domains/status
Check if a domain name is available for purchase.
get /v4/domains/price
Check the price to purchase a domain and how long a single purchase period is.
get /v5/domains/{domain}
Get information for a single domain in an account or team.
get /v6/domains/{domain}/config
Get a Domain's configuration.
get /v1/domains/{domain}/registry
Fetch domain transfer availability or transfer status if a transfer is in progress.
get /v5/domains
Retrieves a list of domains registered for the authenticated user or team. By default it returns the last 20 domains if no limit is provided.
post /v4/domains/buy
Allows to purchase the specified domain.
post /v5/domains
This endpoint is used for adding a new apex domain name with Vercel for the authenticating user. Can also be used for initiating a domain transfer request from an external Registrar to Vercel.
delete /v6/domains/{domain}
Delete a previously registered domain name from Vercel. Deleting a domain will automatically remove any associated aliases.
patch /v3/domains/{domain}
Update or move apex domain.
post /v1/edge-config
Creates an Edge Config.
post /v1/edge-config/{edgeConfigId}/token
Adds a token to an existing Edge Config.
delete /v1/edge-config/{edgeConfigId}
Delete an Edge Config by id.
delete /v1/edge-config/{edgeConfigId}/tokens
Deletes one or more tokens of an existing Edge Config.
get /v1/edge-config/{edgeConfigId}/items
Returns all items of an Edge Config.
get /v1/edge-config/{edgeConfigId}/token/{token}
Return meta data about an Edge Config token.
get /v1/edge-config
Returns all Edge Configs.
get /v1/edge-config/{edgeConfigId}/tokens
Returns all tokens of an Edge Config.
get /v1/edge-config/{edgeConfigId}
Returns an Edge Config.
get /v1/edge-config/{edgeConfigId}/item/{edgeConfigItemKey}
Returns a specific Edge Config Item.
patch /v1/edge-config/{edgeConfigId}/items
Update multiple Edge Config Items in batch.
put /v1/edge-config/{edgeConfigId}
Updates an Edge Config.
delete /v1/integrations/configuration/{id}
Allows to remove the configuration with the id
provided in the parameters. The configuration and all of its resources will be removed. This includes Webhooks, LogDrains and Project Env variables.
get /v1/integrations/configurations
Allows to retrieve all configurations for an authenticated integration. When the project
view is used, configurations generated for the authorization flow will be filtered out of the results.
get /v1/integrations/git-namespaces
Lists git namespaces for a supported provider. Supported providers are github
, gitlab
and bitbucket
. If the provider is not provided, it will try to obtain it from the user that authenticated the request.
get /v1/integrations/search-repo
Lists git repositories linked to a namespace id
for a supported provider. A specific namespace id
can be obtained via the git-namespaces
endpoint. Supported providers are github
, gitlab
and bitbucket
. If the provider or namespace is not provided, it will try to obtain it from the user that authenticated the request.
get /v1/integrations/configuration/{id}
Allows to retrieve a the configuration with the provided id in case it exists. The authenticated user or team must be the owner of the config in order to access it.
post /v1/log-drains
Creates a configurable log drain. This endpoint must be called with a team AccessToken (integration OAuth2 clients are not allowed)
post /v2/integrations/log-drains
Creates an Integration log drain. This endpoint must be called with an OAuth2 client (integration), since log drains are tied to integrations. If it is called with a different token type it will produce a 400 error.
delete /v1/log-drains/{id}
Deletes a Configurable Log Drain. This endpoint must be called with a team AccessToken (integration OAuth2 clients are not allowed). Only log drains owned by the authenticated team can be deleted.
delete /v1/integrations/log-drains/{id}
Deletes the Integration log drain with the provided id
. When using an OAuth2 Token, the log drain can be deleted only if the integration owns it.
get /v1/log-drains/{id}
Retrieves a Configurable Log Drain. This endpoint must be called with a team AccessToken (integration OAuth2 clients are not allowed). Only log drains owned by the authenticated team can be accessed.
get /v2/integrations/log-drains
Retrieves a list of all Integration log drains that are defined for the authenticated user or team. When using an OAuth2 token, the list is limited to log drains created by the authenticated integration.
get /v1/log-drains
Retrieves a list of all the Log Drains owned by the account. This endpoint must be called with an account AccessToken (integration OAuth2 clients are not allowed). Only log drains owned by the authenticated account can be accessed.
post /v1/projects/{idOrName}/members
Adds a new member to the project.
get /v1/projects/{idOrName}/members
Lists all members of a project.
delete /v1/projects/{idOrName}/members/{uid}
Remove a member from a specific project
post /v10/projects/{idOrName}/domains
Add a domain to the project by passing its domain name and by specifying the project by either passing the project id
or name
in the URL. If the domain is not yet verified to be used on this project, the request will return verified = false
, and the domain will need to be verified according to the verification
challenge via POST /projects/:idOrName/domains/:domain/verify
. If the domain already exists on the project, the request will fail with a 400
status code.
post /v9/projects
Allows to create a new project with the provided configuration. It only requires the project name
but more configuration can be provided to override the defaults.
post /v10/projects/{idOrName}/env
Create one ore more environment variables for a project by passing its key
, value
, type
and target
and by specifying the project by either passing the project id
or name
in the URL.
delete /v9/projects/{idOrName}
Delete a specific project by passing either the project id
or name
in the URL.
patch /v9/projects/{idOrName}/env/{id}
Edit a specific environment variable for a given project by passing the environment variable identifier and either passing the project id
or name
in the URL.
get /v9/projects/{idOrName}
Get the information for a specific project by passing either the project id
or name
in the URL.
get /v9/projects/{idOrName}/domains/{domain}
Get project domain by project id/name and domain name.
post /v1/projects/{projectId}/pause
Pause a project by passing its project id
in the URL. If the project does not exist given the id then the request will fail with 400 status code. If the project disables auto assigning custom production domains and blocks the active Production Deployment then the request will return with 200 status code.
delete /v9/projects/{idOrName}/domains/{domain}
Remove a domain from a project by passing the domain name and by specifying the project by either passing the project id
or name
in the URL.
delete /v9/projects/{idOrName}/env/{id}
Delete a specific environment variable for a given project by passing the environment variable identifier and either passing the project id
or name
in the URL.
get /v9/projects
Allows to retrieve the list of projects of the authenticated user or team. The list will be paginated and the provided query parameters allow filtering the returned projects.
get /v9/projects/{idOrName}/domains
Retrieve the domains associated with a given project by passing either the project id
or name
in the URL.
get /v1/projects/{idOrName}/env/{id}
Retrieve the environment variable for a given project.
get /v9/projects/{idOrName}/env
Retrieve the environment variables for a given project by passing either the project id
or name
in the URL.
post /v1/projects/{projectId}/unpause
Unpause a project by passing its project id
in the URL. If the project does not exist given the id then the request will fail with 400 status code. If the project enables auto assigning custom production domains and unblocks the active Production Deployment then the request will return with 200 status code.
patch /v9/projects/{idOrName}/domains/{domain}
Update a project domain's configuration, including the name, git branch and redirect of the domain.
patch /v9/projects/{idOrName}
Update the fields of a project using either its name
or id
.
patch /v1/data-cache/projects/{projectId}
Update the data cache feature on a project.
post /v9/projects/{idOrName}/domains/{domain}/verify
Attempts to verify a project domain with verified = false
by checking the correctness of the project domain's verification
challenge.
patch /v2/secrets/{name}
Enables to edit the name of a secret. The name has to be unique to the user or team’s secrets.
post /v2/secrets/{name}
Allows to create a new secret.
delete /v2/secrets/{idOrName}
This deletes the user or team’s secret defined in the URL.
get /v3/secrets/{idOrName}
Retrieves the information for a specific secret by passing either the secret id or name in the URL.
get /v3/secrets
Retrieves the active Vercel secrets for the authenticated user or team. By default it returns 20 secrets. The rest can be retrieved using the pagination options. The body will contain an entry for each secret.
post /v1/teams
Create a new Team under your account. You need to send a POST request with the desired Team slug, and optionally the Team name.
delete /v1/teams/{teamId}
Delete a team under your account. You need to send a DELETE
request with the desired team id
. An optional array of reasons for deletion may also be sent.
delete /v1/teams/{teamId}/invites/{inviteId}
Delete an active Team invite code.
get /v2/teams/{teamId}
Get information for the Team specified by the teamId
parameter.
get /v1/teams/{teamId}/request/{userId}
Check the status of a join request. It'll respond with a 404 if the request has been declined. If no userId
path segment was provided, this endpoint will instead return the status of the authenticated user.
post /v1/teams/{teamId}/members
Invite a user to join the team specified in the URL. The authenticated user needs to be an OWNER
in order to successfully invoke this endpoint. The user can be specified with an email or an ID. If both email and ID are provided, ID will take priority.
post /v1/teams/{teamId}/members/teams/join
Join a team with a provided invite code or team ID.
get /v2/teams
Get a paginated list of all the Teams the authenticated User is a member of.
get /v2/teams/{teamId}/members
Get a paginated list of team members for the provided team.
delete /v1/teams/{teamId}/members/{uid}
Remove a Team Member from the Team, or dismiss a user that requested access, or leave a team.
post /v1/teams/{teamId}/request
Request access to a team as a member. An owner has to approve the request. Only 10 users can request access to a team at the same time.
patch /v2/teams/{teamId}
Update the information of a Team specified by the teamId
parameter. The request body should contain the information that will be updated on the Team.
patch /v1/teams/{teamId}/members/{uid}
Update the membership of a Team Member on the Team specified by teamId
, such as changing the role of the member, or confirming a request to join the Team for an unconfirmed member. The authenticated user must be an OWNER
of the Team.
delete /v1/user
Initiates the deletion process for the currently authenticated User, by sending a deletion confirmation email. The email contains a link that the user needs to visit in order to proceed with the deletion process.
get /v2/user
Retrieves information related to the currently authenticated User.
get /v3/events
Retrieves a list of "events" generated by the User on Vercel. Events are generated when the User performs a particular action, such as logging in, creating a deployment, and joining a Team (just to name a few). When the teamId
parameter is supplied, then the events that are returned will be in relation to the Team that was specified.
post /v1/webhooks
Creates a webhook
delete /v1/webhooks/{id}
Deletes a webhook
get /v1/webhooks
Get a list of webhooks
get /v1/webhooks/{id}
Get a webhook
Was this helpful?