Skip to main content
POST
Deploy an App

Authorizations

Authorization
string
header
required

Mixpeek API key, sent as Authorization: Bearer mxp_sk_.... Create one in Studio under Settings → API Keys, or with an admin key via POST /v1/organizations/users/{user_email}/api-keys. A missing, malformed, unknown, revoked, inactive or expired key returns 401; a key without the permission, scope or plan an operation needs returns 403.

Path Parameters

app_id
string
required

Body

application/json

Keys this body does not declare are ignored, and the response's warnings name them, until 2026-11-02; from 2026-11-02 they are refused with 422 extra_forbidden naming the accepted keys.

Deploy a pre-built bundle (CLI path) or trigger a Git-based build.

environment
enum<string>
default:production

Target environment for this deploy

Available options:
staging,
production
message
string
default:Deploy via bundle upload

Deploy message describing what changed (like a git commit message)

source
enum<string>
default:cli_upload

Deploy source. 'cli_upload' = zip already uploaded to S3. 'git' = Phase 3b.

Available options:
cli_upload,
git
bundle_s3_key
string | null

S3 key of the uploaded source zip (required for source='cli_upload')

source_files
Source Files · object | null

Map of relative path → file content for source-level version diffs

git_commit_sha
string | null

Git commit SHA associated with this deploy

git_commit_message
string | null

Git commit message associated with this deploy

git_author
string | null

Git commit author (name )

Response

Successful Response

app_id
string
required
deploy_id
string
required
status
enum<string>
required
Available options:
queued,
building,
complete,
failed
environment
string
required
message
string | null