API Reference
The same API the dashboard uses. Paths live under /api with no /v1 prefix. Address resources by project, phase, and app name.
Try the API
Stays in this tabCreate one in Settings → API tokens. It is stored in this tab only and forwarded to api.stackblaze.cloud — not written on our servers.
Vocabulary
Docs say project and environment. The API path still uses the Kubero names.
Organization
Prisma tenant the token is scoped to
activeTenantIdProject
Top-level app group with phases and a region
pipelineEnvironment
production, review, or a custom phase
phaseApp
A workload (web, worker, or cron)
appAdd-on
Managed Postgres, Valkey, MariaDB, Kafka, …
addon kindFunction
Knative function, not an app
functionAuthentication
Create a token in Settings → API tokens. The value is shown once and starts with kbr_pat_. It inherits the creator's organization and RBAC.
# Settings → API tokens
export STACKBLAZE_TOKEN=kbr_pat_…
curl https://api.stackblaze.cloud/api/pipelines \
-H "Authorization: Bearer $STACKBLAZE_TOKEN"Endpoints
Public automation surface for the dashboard, MCP, and stackblaze.yaml. Open Try it on a row to send a live request. Add-on consoles, WAF, Coroot, billing, and platform-admin stay in OpenAPI.
Projects
7Apps
8Deploys
8Logs
3Functions
6Add-ons
3IaC
7Tokens
3Examples
List projects, then restart an app. Builds take a POST; apply routes need iacEnabled.
curl https://api.stackblaze.cloud/api/pipelines \
-H "Authorization: Bearer $STACKBLAZE_TOKEN"{
"items": [
{
"name": "acme-app",
"domain": "acme-app.stackblaze.app",
"regionSlug": "us-east-1",
"reviewapps": true,
"iacEnabled": false
}
]
}curl https://api.stackblaze.cloud/api/apps/acme-app/production/api/restart \
-H "Authorization: Bearer $STACKBLAZE_TOKEN"
# Queue a build instead
curl -X POST https://api.stackblaze.cloud/api/deployments/build/acme-app/production/api \
-H "Authorization: Bearer $STACKBLAZE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"buildstrategy":"nixpacks","repository":"https://github.com/org/repo","reference":"main"}'
# Check IaC before /apply
curl "https://api.stackblaze.cloud/api/iac/status?pipeline=acme-app" \
-H "Authorization: Bearer $STACKBLAZE_TOKEN"Errors
Failed requests return a JSON body with a status code and message.
{
"statusCode": 404,
"message": "Pipeline not found",
"error": "Not Found"
}400Invalid body or reserved name (pipeline named new)
401Missing or invalid token
403Token lacks permission, or the resource is outside the organization
404Not found
409Resource version or state mismatch
413Payload too large — app specs with several add-ons can be large
500Internal server error
503Transient downstream failure — safe to retry
Next steps