deployments

Create deployment

Create a deployment for an app in a project.

Omit the source to use the app's configured default. A Git app builds its default branch. An OCI app deploys its default image.

Optionally provide one source override:

  • oci: deploy a prebuilt OCI image without a build. Mutable tags are resolved to immutable digests before rollout.
  • git: build and deploy from the app's connected GitHub repository, a branch, a specific commit, or a fork commit. Requires the app to have a repository connected.
  • deployment: re-run an existing deployment by its id. Git deployments rebuild from the recorded commit; OCI deployments reuse the recorded resolved image.

Returns immediately with a deploymentId. The build and rollout run asynchronously. Poll deployments.getDeployment to watch status until it is ready.

Authentication: requires a root key with permission to create deployments.

post/v3/deployments.createDeployment

Request body

projectstring required

Identifies a resource by either its unique ID or its slug. Accepts a prefixed ID (such as 'proj_' or 'app_') or a slug.

appstring required

Identifies a resource by either its unique ID or its slug. Accepts a prefixed ID (such as 'proj_' or 'app_') or a slug.

environmentstring required

Identifies a resource by either its unique ID or its slug. Accepts a prefixed ID (such as 'proj_' or 'app_') or a slug.

Example request

{
  "project": "proj_1234abcd",
  "app": "proj_1234abcd",
  "environment": "proj_1234abcd",
  "git": {
    "branch": "main",
    "commitSha": "9f2c1a7",
    "repository": "contributor/acme-api"
  },
  "oci": {
    "image": "ghcr.io/acme/api:v1.2.3"
  },
  "deployment": {
    "deploymentId": "proj_1234abcd"
  }
}

Response

Deployment created successfully

Example response

{
  "meta": {
    "requestId": "req_123"
  },
  "data": {
    "deploymentId": "d_abc123xyz"
  }
}

Changes

Changed in 1 of the 106 revisions of this API.1