Create a new deployment
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.
Authorizations
Default authentication mechanism
Query Parameters
Forces a new deployment even if there is a previous similar deployment
0
, 1
Allows to skip framework detection so the API would not fail to ask for confirmation
0
, 1
The Team identifier to perform the request on behalf of.
"team_1a2b3c4d5e6f7g8h9i0j1k2l"
The Team slug to perform the request on behalf of.
"my-team-url-slug"
Body
A string with the project name used in the deployment URL
"my-instant-deployment"
Deploy to a custom environment, which will override the default environment
An deployment id for an existing deployment to redeploy
"dpl_2qn7PZrx89yxY34vEZPD31Y9XVj6"
A list of objects with the files to be deployed
Used in the case you want to inline a file inside the request
Populates initial git metadata for different git providers.
Defines the Git Repository source to be deployed. This property can not be used in combination with files
.
An object containing the deployment's metadata. Multiple key-value pairs can be attached to a deployment
{ "foo": "bar" }
The monorepo manager that is being used for this deployment. When null
is used no monorepo manager is selected
The target project identifier in which the deployment will be created. When defined, this parameter overrides name
"my-deployment-project"
Project settings that will be applied to the deployment. It is required for the first deployment of a project and will be saved for any following deployments
Either not defined, staging
, production
, or a custom environment identifier. If staging
, a staging alias in the format <project>-<team>.vercel.app
will be assigned. If production
, any aliases defined in alias
will be assigned. If omitted, the target will be preview
.
"production"
When true
and deploymentId
is passed in, the sha from the previous deployment's gitSource
is removed forcing the latest commit to be used.
Response
The successfully created deployment
CANCELED
, ERROR
, QUEUED
, BUILDING
, INITIALIZING
, READY
LAMBDAS
2
CANCELED
, ERROR
, QUEUED
, BUILDING
, INITIALIZING
, READY
pro
, enterprise
, hobby
A partial representation of a Build used by the deployment endpoint.
applies to custom domains only, defaults to true
cli
, git
, import
, import/repo
, clone/repo
, api-trigger-git-deploy
, redeploy
, v0-web
production
, staging
Since November 2023 this field defines a set of regions that we will deploy the lambda to passively Lambdas will be deployed to these regions but only invoked if all of the primary regions
are marked as out of service
registered
, running
, completed
succeeded
, failed
, skipped
, canceled
Computed field that is only available for deployments with a microfrontend configuration.
Substate of deployment when readyState is 'READY' Tracks whether or not deployment has seen production traffic: - STAGED: never seen production traffic - ROLLING: in the process of having production traffic gradually transitioned. - PROMOTED: has seen production traffic
STAGED
, ROLLING
, PROMOTED
Since February 2025 the configuration must include snapshot data at the time of deployment creation to capture properties for the /deployments/:id/config endpoint utilized for displaying Deployment Configuration on the frontend This is optional because older deployments may not have this data captured
Since November 2023 this field defines a Secure Compute network that will only be used to deploy passive lambdas to (as in passiveRegions)
Flags defined in the Build Output API, used by this deployment. Primarily used by the Toolbar to know about the used flags.