Skip to main content
POST
/
v1
/
applications
/
{applicationShortId}
/
builds
/
upload-url
Get build upload URL
curl --request POST \
  --url https://api.qa.tech/v1/applications/{applicationShortId}/builds/upload-url \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "fileName": "<string>",
  "projectShortId": "<string>"
}
'
{
  "uploadUrl": "<string>",
  "buildToken": "<string>",
  "nextStep": "<string>"
}

Path Parameters

applicationShortId
string
required
Pattern: ^app(-.+_.+|_.+)$

Body

application/json

Request body for getting a presigned upload URL

fileName
string
required

Original file name (e.g. 'my-app.apk'). Preserved in storage for display and file type detection.

projectShortId
string

Target a specific project by its prefixed short ID (proj-slug_shortId or proj_shortId), as returned by the projects API. Required for organization-scoped API keys; project-scoped keys may only pass their own project's short ID.

Pattern: ^proj(-.+_.+|_.+)$

Response

200 - application/json

The request has succeeded.

Presigned upload URL response. Upload the file to uploadUrl, then call create_application_build with buildToken.

uploadUrl
string
required

Presigned URL to upload the raw build file to via HTTP PUT (request body = raw file bytes, Content-Type = the file's MIME type such as application/octet-stream). No auth header is required.

buildToken
string
required

Opaque token identifying this upload. Pass it unchanged to create_application_build once the PUT upload succeeds.

nextStep
string
required

Human-readable hint describing the next step in the upload chain.