The Deployment area publishes 109 REST endpoints. Paths are relative to https://api.lessly.com; see Authentication for the required header.
POST/deployment/alerts
Create a threshold alert rule for a service or managed service
MCP tool: deployment_alert_create
Parameters
| Name | In | Type | Required | Description |
|---|
targetKind | body | stringone of: service, managed-service | • | — |
targetId | body | string (uuid) | • | — |
metric | body | stringone of: cpu, memory, net_in, net_out, disk | • | — |
comparator | body | stringone of: gt, lt | • | — |
threshold | body | number | • | — |
enabled | body | boolean | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
state | stringone of: ok, firing | • | — |
metric | stringone of: cpu, memory, net_in, net_out, disk | • | — |
enabled | boolean | • | — |
targetId | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
threshold | number | • | — |
updatedAt | string | • | — |
comparator | stringone of: gt, lt | • | — |
targetKind | stringone of: service, managed-service | • | — |
environmentId | string | • | — |
lastEvaluatedAt | string | null | • | — |
lastStateChangeAt | string | null | • | — |
DELETE/deployment/alerts/:id
Delete an alert rule
MCP tool: deployment_alert_delete
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
deleted | boolean | • | — |
PATCH/deployment/alerts/:id
Update an alert rule (threshold, comparator, enabled)
MCP tool: deployment_alert_update
Parameters
| Name | In | Type | Required | Description |
|---|
comparator | body | stringone of: gt, lt | — | — |
threshold | body | number | — | — |
enabled | body | boolean | — | — |
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
state | stringone of: ok, firing | • | — |
metric | stringone of: cpu, memory, net_in, net_out, disk | • | — |
enabled | boolean | • | — |
targetId | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
threshold | number | • | — |
updatedAt | string | • | — |
comparator | stringone of: gt, lt | • | — |
targetKind | stringone of: service, managed-service | • | — |
environmentId | string | • | — |
lastEvaluatedAt | string | null | • | — |
lastStateChangeAt | string | null | • | — |
POST/deployment/analytics/query
Ask a natural-language question about THIS product's deployment data (deployments, deploy events, environments, services, domains, managed services) and get a computed answer. Returns the generated SQL, the result rows, and a natural-language answer. Read-only; scoped to the current product.
MCP tool: deployment_analytics_query
Parameters
| Name | In | Type | Required | Description |
|---|
q | body | string | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
sql | string | • | — |
rows | object[] | • | — |
answer | string | • | — |
truncated | boolean | • | — |
explanation | string | • | — |
GET/deployment/builds/:id
Get a single build by deployment id
MCP tool: deployment_build_get
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
status | stringone of: Initializing, Building, Deploying, Active, Replaced, Crashed, Completed, Failed, Removed | • | — |
builtAt | string | null | • | — |
imageRef | string | null | • | — |
commitSha | string | null | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | • | — |
startedAt | string | null | • | — |
finishedAt | string | null | • | — |
cloudBuildId | string | null | • | — |
lastErrorMessage | string | null | • | — |
POST/deployment/cloud-sql/databases
Create a logical database (with its own role) on the managed Postgres instance.
MCP tool: deployment_cloud_sql_database_create
Parameters
| Name | In | Type | Required | Description |
|---|
instanceId | body | string (uuid) | • | — |
label | body | string | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
dbName | string | • | — |
status | string | • | — |
roleName | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
instanceId | string | • | — |
lastErrorMessage | string | null | • | — |
DELETE/deployment/cloud-sql/databases/:databaseId
Delete a logical managed Postgres database (detaches from all services first).
MCP tool: deployment_cloud_sql_database_delete
Parameters
| Name | In | Type | Required | Description |
|---|
databaseId | path | string (uuid) | • | — |
GET/deployment/cloud-sql/databases/:databaseId
Get a logical managed Postgres database by id.
MCP tool: deployment_cloud_sql_database_get
Parameters
| Name | In | Type | Required | Description |
|---|
databaseId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
dbName | string | • | — |
status | string | • | — |
roleName | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
instanceId | string | • | — |
lastErrorMessage | string | null | • | — |
POST/deployment/cloud-sql/databases/attach
Attach a managed Postgres database to a service in an environment; injects DATABASE_URL (and PG* vars) as a secret.
MCP tool: deployment_cloud_sql_database_attach
Parameters
| Name | In | Type | Required | Description |
|---|
databaseId | body | string (uuid) | • | — |
serviceId | body | string (uuid) | • | — |
environmentId | body | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
status | string | • | — |
serviceId | string | • | — |
databaseId | string | • | — |
environmentId | string | • | — |
POST/deployment/cloud-sql/databases/detach
Detach a managed Postgres database from a service; removes the injected connection secrets. Does not delete the database.
MCP tool: deployment_cloud_sql_database_detach
Parameters
| Name | In | Type | Required | Description |
|---|
attachmentId | body | string (uuid) | • | — |
GET/deployment/cloud-sql/instances
List the product's managed Postgres (Cloud SQL) instance(s).
MCP tool: deployment_cloud_sql_instance_list
Parameters
No parameters.
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
tier | string | • | — |
label | string | • | — |
region | string | • | — |
status | string | • | — |
createdAt | string | • | — |
pgVersion | string | • | — |
privateIp | string | null | • | — |
productId | string | • | — |
updatedAt | string | • | — |
pitrEnabled | boolean | null | • | — |
backupsEnabled | boolean | null | • | — |
connectionName | string | null | • | — |
lastErrorMessage | string | null | • | — |
backupConfigObservedAt | string | null | • | — |
POST/deployment/cloud-sql/instances
Provision the product's managed Postgres instance on Google Cloud SQL — fully managed by Google Cloud, with automated backups and point-in-time recovery, a dedicated instance, and easy resize.
MCP tool: deployment_cloud_sql_instance_create
Parameters
| Name | In | Type | Required | Description |
|---|
label | body | string | • | — |
tier | body | stringone of: db-custom-1-3840, db-custom-2-7680, db-custom-4-15360 | — | — |
pgVersion | body | stringone of: 16, 17, 18 | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
tier | string | • | — |
label | string | • | — |
region | string | • | — |
status | string | • | — |
createdAt | string | • | — |
pgVersion | string | • | — |
privateIp | string | null | • | — |
productId | string | • | — |
updatedAt | string | • | — |
pitrEnabled | boolean | null | • | — |
backupsEnabled | boolean | null | • | — |
connectionName | string | null | • | — |
lastErrorMessage | string | null | • | — |
backupConfigObservedAt | string | null | • | — |
DELETE/deployment/cloud-sql/instances/:instanceId
Delete the managed Postgres (Cloud SQL) instance (must have no databases).
MCP tool: deployment_cloud_sql_instance_delete
Parameters
| Name | In | Type | Required | Description |
|---|
instanceId | path | string (uuid) | • | — |
GET/deployment/cloud-sql/instances/:instanceId
Get the product's managed Postgres (Cloud SQL) instance and its status.
MCP tool: deployment_cloud_sql_instance_get
Parameters
| Name | In | Type | Required | Description |
|---|
instanceId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
tier | string | • | — |
label | string | • | — |
region | string | • | — |
status | string | • | — |
createdAt | string | • | — |
pgVersion | string | • | — |
privateIp | string | null | • | — |
productId | string | • | — |
updatedAt | string | • | — |
pitrEnabled | boolean | null | • | — |
backupsEnabled | boolean | null | • | — |
connectionName | string | null | • | — |
lastErrorMessage | string | null | • | — |
backupConfigObservedAt | string | null | • | — |
GET/deployment/cloud-sql/instances/:instanceId/backups
List backup runs for the managed Postgres (Cloud SQL) instance.
MCP tool: deployment_cloud_sql_instance_backup_list
Parameters
| Name | In | Type | Required | Description |
|---|
instanceId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string | • | — |
type | string | • | — |
error | string | null | • | — |
status | string | • | — |
endTime | string | null | • | — |
startTime | string | null | • | — |
description | string | null | • | — |
POST/deployment/cloud-sql/instances/:instanceId/backups
Take an on-demand backup of the managed Postgres (Cloud SQL) instance.
MCP tool: deployment_cloud_sql_instance_backup
Parameters
| Name | In | Type | Required | Description |
|---|
instanceId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
tier | string | • | — |
label | string | • | — |
region | string | • | — |
status | string | • | — |
createdAt | string | • | — |
pgVersion | string | • | — |
privateIp | string | null | • | — |
productId | string | • | — |
updatedAt | string | • | — |
pitrEnabled | boolean | null | • | — |
backupsEnabled | boolean | null | • | — |
connectionName | string | null | • | — |
lastErrorMessage | string | null | • | — |
backupConfigObservedAt | string | null | • | — |
GET/deployment/cloud-sql/instances/:instanceId/databases
List the logical managed Postgres databases on an instance.
MCP tool: deployment_cloud_sql_database_list
Parameters
| Name | In | Type | Required | Description |
|---|
instanceId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string | • | — |
dbName | string | • | — |
status | string | • | — |
roleName | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
instanceId | string | • | — |
lastErrorMessage | string | null | • | — |
GET/deployment/cloud-sql/instances/:instanceId/logs
Snapshot the last N Postgres log lines for a managed Postgres (Cloud SQL) instance.
MCP tool: deployment_cloud_sql_logs
Parameters
| Name | In | Type | Required | Description |
|---|
instanceId | path | string (uuid) | • | — |
tail | query | integer | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
lines | string[] | • | — |
PATCH/deployment/cloud-sql/instances/:instanceId/resize
Resize the managed Postgres (Cloud SQL) instance to a different tier (CPU/RAM).
MCP tool: deployment_cloud_sql_instance_resize
Parameters
| Name | In | Type | Required | Description |
|---|
instanceId | path | string (uuid) | • | — |
tier | body | stringone of: db-custom-1-3840, db-custom-2-7680, db-custom-4-15360 | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
tier | string | • | — |
label | string | • | — |
region | string | • | — |
status | string | • | — |
createdAt | string | • | — |
pgVersion | string | • | — |
privateIp | string | null | • | — |
productId | string | • | — |
updatedAt | string | • | — |
pitrEnabled | boolean | null | • | — |
backupsEnabled | boolean | null | • | — |
connectionName | string | null | • | — |
lastErrorMessage | string | null | • | — |
backupConfigObservedAt | string | null | • | — |
POST/deployment/cloud-sql/instances/:instanceId/restore
Restore the managed Postgres (Cloud SQL) instance IN-PLACE from a backup run (destructive — overwrites current data).
MCP tool: deployment_cloud_sql_instance_restore
Parameters
| Name | In | Type | Required | Description |
|---|
backupRunId | body | string | • | — |
instanceId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
tier | string | • | — |
label | string | • | — |
region | string | • | — |
status | string | • | — |
createdAt | string | • | — |
pgVersion | string | • | — |
privateIp | string | null | • | — |
productId | string | • | — |
updatedAt | string | • | — |
pitrEnabled | boolean | null | • | — |
backupsEnabled | boolean | null | • | — |
connectionName | string | null | • | — |
lastErrorMessage | string | null | • | — |
backupConfigObservedAt | string | null | • | — |
POST/deployment/cloud-sql/instances/backfill-log-flags
Apply this product's managed Postgres (Cloud SQL) log flags to existing instance(s), idempotently (safe to re-run; zero downtime). Optionally target one instanceId.
MCP tool: deployment_cloud_sql_backfill_log_flags
Parameters
| Name | In | Type | Required | Description |
|---|
instanceId | body | string (uuid) | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
failed | object[] | • | — |
patched | number | • | — |
scanned | number | • | — |
skippedNoDrift | number | • | — |
restartRequired | object[] | • | — |
skippedNotReady | number | • | — |
skippedRestartRequired | number | • | — |
GET/deployment/deployments/:id
Get a single deployment by id
MCP tool: deployment_deployment_get
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
status | stringone of: Initializing, Building, Deploying, Active, Replaced, Crashed, Completed, Failed, Removed, Sleeping, Stopped, WakeFailed | • | — |
builtAt | string | null | • | — |
imageRef | string | null | • | — |
commitSha | string | null | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | • | — |
startedAt | string | null | • | — |
updatedAt | string | • | — |
deployedAt | string | null | • | — |
finishedAt | string | null | • | — |
cloudBuildId | string | null | • | — |
configSnapshot | object | • | — |
lastErrorMessage | string | null | • | — |
rolledBackFromDeploymentId | string (uuid) | null | • | — |
GET/deployment/domains/:domainId/routes
List path-routes for a domain
MCP tool: deployment_domain_routes_list
Parameters
| Name | In | Type | Required | Description |
|---|
domainId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
domainId | string (uuid) | • | — |
priority | integer | • | — |
createdAt | string | • | — |
isDefault | boolean | • | — |
serviceId | string (uuid) | • | — |
updatedAt | string | • | — |
pathPrefix | string | • | — |
POST/deployment/domains/:domainId/routes
Add a path-route to a custom domain
MCP tool: deployment_domain_routes_add
Parameters
| Name | In | Type | Required | Description |
|---|
domainId | path | string (uuid) | • | — |
pathPrefix | body | string | • | — |
serviceId | body | string (uuid) | • | — |
isDefault | body | boolean | — | — |
priority | body | integer | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
domainId | string (uuid) | • | — |
priority | integer | • | — |
createdAt | string | • | — |
isDefault | boolean | • | — |
serviceId | string (uuid) | • | — |
updatedAt | string | • | — |
pathPrefix | string | • | — |
DELETE/deployment/domains/:domainId/routes/:routeId
Remove a path-route (default route cannot be removed)
MCP tool: deployment_domain_routes_remove
Parameters
| Name | In | Type | Required | Description |
|---|
domainId | path | string (uuid) | • | — |
routeId | path | string (uuid) | • | — |
PATCH/deployment/domains/:domainId/routes/:routeId
Update a path-route
MCP tool: deployment_domain_routes_update
Parameters
| Name | In | Type | Required | Description |
|---|
domainId | path | string (uuid) | • | — |
routeId | path | string (uuid) | • | — |
pathPrefix | body | string | — | — |
serviceId | body | string (uuid) | — | — |
priority | body | integer | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
domainId | string (uuid) | • | — |
priority | integer | • | — |
createdAt | string | • | — |
isDefault | boolean | • | — |
serviceId | string (uuid) | • | — |
updatedAt | string | • | — |
pathPrefix | string | • | — |
DELETE/deployment/domains/:id
Remove a custom domain (auto-domains are removed via service.delete)
MCP tool: deployment_domain_remove
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
GET/deployment/domains/:id
Get a domain by id (includes DNS instructions for custom domains awaiting verification)
MCP tool: deployment_domain_get
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
kind | stringone of: auto, custom | • | — |
hostname | string | • | — |
createdAt | string | • | — |
tlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
updatedAt | string | • | — |
lastProbeAt | string | null | • | — |
redirectWww | boolean | • | — |
wwwTlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
environmentId | string (uuid) | • | — |
routingStatus | stringone of: provisioning, propagating, active, failed | • | — |
lastProbeError | string | null | • | — |
dnsInstructions | object | null | • | — |
routingRecordType | stringone of: A, CNAME | • | — |
verificationToken | string | null | • | — |
verificationStatus | stringone of: pending_dns, verified, dns_failed | • | — |
lastVerificationError | object | null | • | — |
lastVerificationCheckAt | string | null | • | — |
tlsCertificateExpiresAt | string | null | • | — |
PATCH/deployment/domains/:id/redirect-www
Toggle the www→apex 301 redirect for an apex custom domain
MCP tool: deployment_domain_redirect_www
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
enabled | body | boolean | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
kind | stringone of: auto, custom | • | — |
hostname | string | • | — |
createdAt | string | • | — |
tlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
updatedAt | string | • | — |
lastProbeAt | string | null | • | — |
redirectWww | boolean | • | — |
wwwTlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
environmentId | string (uuid) | • | — |
routingStatus | stringone of: provisioning, propagating, active, failed | • | — |
lastProbeError | string | null | • | — |
dnsInstructions | object | null | • | — |
routingRecordType | stringone of: A, CNAME | • | — |
verificationToken | string | null | • | — |
verificationStatus | stringone of: pending_dns, verified, dns_failed | • | — |
lastVerificationError | object | null | • | — |
lastVerificationCheckAt | string | null | • | — |
tlsCertificateExpiresAt | string | null | • | — |
POST/deployment/domains/:id/verify
Force an out-of-band DNS verification check for a custom domain
MCP tool: deployment_domain_verify
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
kind | stringone of: auto, custom | • | — |
hostname | string | • | — |
createdAt | string | • | — |
tlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
updatedAt | string | • | — |
lastProbeAt | string | null | • | — |
redirectWww | boolean | • | — |
wwwTlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
environmentId | string (uuid) | • | — |
routingStatus | stringone of: provisioning, propagating, active, failed | • | — |
lastProbeError | string | null | • | — |
dnsInstructions | object | null | • | — |
routingRecordType | stringone of: A, CNAME | • | — |
verificationToken | string | null | • | — |
verificationStatus | stringone of: pending_dns, verified, dns_failed | • | — |
lastVerificationError | object | null | • | — |
lastVerificationCheckAt | string | null | • | — |
tlsCertificateExpiresAt | string | null | • | — |
GET/deployment/environments
List environments for the current product. Optionally filter by type (persistent or pr-preview).
MCP tool: deployment_environment_list
Parameters
| Name | In | Type | Required | Description |
|---|
type | query | stringone of: persistent, pr-preview | — | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
type | stringone of: persistent, pr-preview | • | — |
status | stringone of: provisioning, ready, provisioning_failed, deprovisioning, deprovisioning_failed | • | — |
prBranch | string | null | • | — |
prNumber | integer | null | • | — |
createdAt | string | • | — |
expiresAt | string | null | • | — |
updatedAt | string | • | — |
isProduction | boolean | • | — |
lastErrorMessage | string | null | • | — |
baseEnvironmentId | string (uuid) | null | • | — |
POST/deployment/environments
Create a new environment
MCP tool: deployment_environment_create
Parameters
| Name | In | Type | Required | Description |
|---|
name | body | string | • | — |
slug | body | string | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
type | stringone of: persistent, pr-preview | • | — |
status | stringone of: provisioning, ready, provisioning_failed, deprovisioning, deprovisioning_failed | • | — |
prBranch | string | null | • | — |
prNumber | integer | null | • | — |
createdAt | string | • | — |
expiresAt | string | null | • | — |
updatedAt | string | • | — |
isProduction | boolean | • | — |
lastErrorMessage | string | null | • | — |
baseEnvironmentId | string (uuid) | null | • | — |
GET/deployment/environments/:environmentId/alert-events
List recent alert firing/resolved events in an environment
MCP tool: deployment_alert_events_list
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
limit | query | integer | — | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string | • | — |
type | stringone of: firing, resolved | • | — |
value | number | • | — |
metric | stringone of: cpu, memory, net_in, net_out, disk | • | — |
ruleId | string | • | — |
targetId | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
threshold | number | • | — |
targetKind | stringone of: service, managed-service | • | — |
GET/deployment/environments/:environmentId/alerts
List alert rules in an environment
MCP tool: deployment_alert_list
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string | • | — |
state | stringone of: ok, firing | • | — |
metric | stringone of: cpu, memory, net_in, net_out, disk | • | — |
enabled | boolean | • | — |
targetId | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
threshold | number | • | — |
updatedAt | string | • | — |
comparator | stringone of: gt, lt | • | — |
targetKind | stringone of: service, managed-service | • | — |
environmentId | string | • | — |
lastEvaluatedAt | string | null | • | — |
lastStateChangeAt | string | null | • | — |
GET/deployment/environments/:environmentId/canvas
Get canvas state (nodes + services) for an environment
MCP tool: deployment_canvas_get
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
edges | object[] | • | — |
nodes | object[] | • | — |
services | object[] | • | — |
environmentId | string (uuid) | • | — |
PUT/deployment/environments/:environmentId/canvas/nodes/:nodeId
Update position/size of a canvas node
MCP tool: deployment_canvas_move_node
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
nodeId | path | string (uuid) | • | — |
x | body | number | — | — |
y | body | number | — | — |
width | body | number | — | — |
height | body | number | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
x | number | • | — |
y | number | • | — |
id | string (uuid) | • | — |
width | number | null | • | — |
height | number | null | • | — |
nodeId | string (uuid) | • | — |
nodeKind | stringone of: service, volume, managed-service, cloud-sql | • | — |
createdAt | string | • | — |
updatedAt | string | • | — |
GET/deployment/environments/:environmentId/domains
List domains for an environment (auto + custom)
MCP tool: deployment_domain_list
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
kind | stringone of: auto, custom | • | — |
hostname | string | • | — |
createdAt | string | • | — |
tlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
updatedAt | string | • | — |
lastProbeAt | string | null | • | — |
redirectWww | boolean | • | — |
wwwTlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
environmentId | string (uuid) | • | — |
routingStatus | stringone of: provisioning, propagating, active, failed | • | — |
lastProbeError | string | null | • | — |
dnsInstructions | object | null | • | — |
routingRecordType | stringone of: A, CNAME | • | — |
verificationToken | string | null | • | — |
verificationStatus | stringone of: pending_dns, verified, dns_failed | • | — |
lastVerificationError | object | null | • | — |
lastVerificationCheckAt | string | null | • | — |
tlsCertificateExpiresAt | string | null | • | — |
POST/deployment/environments/:environmentId/domains
Register a custom domain for an environment; returns CNAME+TXT DNS instructions
MCP tool: deployment_domain_add
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
hostname | body | string | • | — |
defaultServiceId | body | string (uuid) | • | — |
pathPrefix | body | string | — | — |
redirectWww | body | boolean | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
kind | stringone of: auto, custom | • | — |
routes | object[] | • | — |
hostname | string | • | — |
createdAt | string | • | — |
tlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
updatedAt | string | • | — |
lastProbeAt | string | null | • | — |
redirectWww | boolean | • | — |
wwwTlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
environmentId | string (uuid) | • | — |
routingStatus | stringone of: provisioning, propagating, active, failed | • | — |
lastProbeError | string | null | • | — |
dnsInstructions | object | null | • | — |
routingRecordType | stringone of: A, CNAME | • | — |
verificationToken | string | null | • | — |
verificationStatus | stringone of: pending_dns, verified, dns_failed | • | — |
lastVerificationError | object | null | • | — |
lastVerificationCheckAt | string | null | • | — |
tlsCertificateExpiresAt | string | null | • | — |
GET/deployment/environments/:environmentId/events
List deploy events for an environment, newest first
MCP tool: deployment_events_list_by_environment
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
type | query | stringone of: deployment.queued, deployment.build.started, deployment.build.succeeded, deployment.build.failed, deployment.deploying, deployment.variable.ignored, deployment.healthcheck.passed, deployment.healthcheck.failed, deployment.healthy, deployment.failed, deployment.replaced, deployment.sourcemaps.uploaded, deployment.sourcemaps.upload-failed, deployment.requeue-failed, deployment.release.started, deployment.release.log, deployment.release.succeeded, deployment.release.failed, replica.restarted, service.scaled, service.restarted, service.restart-failed, domain.verified, domain.tls.issued, domain.tls.failed, domain.www-tls.issued, domain.www-tls.failed, domain.routing.active, domain.routing.failed, domain.removed, domain.governance.mirror-failed, service.slept, service.woke, service.wake_failed, service.sleep-enabled, service.sleep-disabled, service.sleep-enable-failed, cloud-sql.instance.stopped, cloud-sql.instance.started, cloud-sql.instance.stop-failed, cloud-sql.instance.start-failed, suspension.workload-stopped, suspension.workload-restored, managed-service.restarted, managed-service.port-leak-healed | — | — |
since | query | string (date-time) | — | — |
until | query | string (date-time) | — | — |
limit | query | integer | — | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string | • | — |
type | stringone of: deployment.queued, deployment.build.started, deployment.build.succeeded, deployment.build.failed, deployment.deploying, deployment.variable.ignored, deployment.healthcheck.passed, deployment.healthcheck.failed, deployment.healthy, deployment.failed, deployment.replaced, deployment.sourcemaps.uploaded, deployment.sourcemaps.upload-failed, deployment.requeue-failed, deployment.release.started, deployment.release.log, deployment.release.succeeded, deployment.release.failed, replica.restarted, service.scaled, service.restarted, service.restart-failed, domain.verified, domain.tls.issued, domain.tls.failed, domain.www-tls.issued, domain.www-tls.failed, domain.routing.active, domain.routing.failed, domain.removed, domain.governance.mirror-failed, service.slept, service.woke, service.wake_failed, service.sleep-enabled, service.sleep-disabled, service.sleep-enable-failed, cloud-sql.instance.stopped, cloud-sql.instance.started, cloud-sql.instance.stop-failed, cloud-sql.instance.start-failed, suspension.workload-stopped, suspension.workload-restored, managed-service.restarted, managed-service.port-leak-healed | • | — |
payload | object | • | — |
domainId | string | null | • | — |
createdAt | string | • | — |
productId | string | • | — |
serviceId | string | null | • | — |
deploymentId | string | null | • | — |
environmentId | string | null | • | — |
GET/deployment/environments/:environmentId/managed-services
List managed services in an environment
MCP tool: deployment_managed_service_list
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
POST/deployment/environments/:environmentId/managed-services
Provision a managed service (e.g. Postgres, Redis) inside an environment
MCP tool: deployment_managed_service_provision
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
name | body | string | • | — |
slug | body | string | — | — |
engine | body | stringone of: postgres, redis, mysql, mongodb | • | — |
version | body | string | — | — |
storageGiB | body | integer | — | — |
databaseName | body | string | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
GET/deployment/environments/:environmentId/services
List services within an environment
MCP tool: deployment_service_list
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
mode | string | — | — |
name | string | • | — |
slug | string | • | — |
probes | object | • | — |
source | object | • | — |
command | string | null | — | — |
lastRun | object | null | — | — |
tracing | string | — | — |
replicas | integer | • | — |
schedule | string | null | — | — |
createdAt | string | • | — |
dependsOn | string[] | • | — |
nextRunAt | string | null | — | — |
resources | object | — | — |
updatedAt | string | • | — |
autoDeploy | boolean | — | — |
sleepState | stringone of: awake, sleeping, waking, stopped, wake_failed | • | — |
idleMinutes | integer | • | — |
scaleToZero | boolean | • | — |
containerPort | integer | • | — |
environmentId | string (uuid) | • | — |
jobTimeoutSec | integer | — | — |
jobConcurrency | string | — | — |
buildMachineType | string | null | — | — |
scheduleSuspended | boolean | — | — |
suspendedByBilling | boolean | — | — |
lastReplicasRunning | integer | • | — |
scaleToZeroEligibility | object | — | — |
POST/deployment/environments/:environmentId/services
Create a service inside an environment. mode:'persistent' (the default) is a container kept running; mode:'scheduled' is a job that runs a command and exits. A scheduled service takes schedule (a five-field UTC cron expression — minute hour day-of-month month day-of-week — or null for a job that only ever runs on demand), command (the shell command one run executes), jobTimeoutSec, and jobConcurrency ('forbid' | 'allow' | 'replace'), and accepts no containerPort, replicas or scaleToZero. mode is immutable after create.
MCP tool: deployment_service_create
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
name | body | string | • | — |
slug | body | string | — | — |
source | body | object | • | — |
containerPort | body | integer | — | — |
replicas | body | integer | — | — |
probes | body | object | — | — |
resources | body | object | — | — |
tracing | body | stringone of: off, node, python | — | OTel SDK to inject into this service's pods: 'off' (none), 'node' or 'python'. Read when a deploy builds the workload — takes effect on the next deploy, running pods are untouched. |
canvas | body | object | — | — |
mode | body | stringone of: persistent, scheduled | — | 'persistent' (a long-running Deployment behind a Service — the default) or 'scheduled' (a k8s CronJob: no port, no replicas, no route). Immutable after create. |
schedule | body | string | null | — | Five-field UTC cron expression (minute hour day-of-month month day-of-week), or null for a scheduled service with no schedule yet. |
command | body | string | null | — | Shell command a scheduled run executes (`/bin/sh -c <command>`). Scheduled services only; omit it to run the image entrypoint. `null` clears a command that was set and returns the run to the image entrypoint. |
jobTimeoutSec | body | integer | — | Wall-clock budget for one run, in seconds (60..86400). Becomes the Job activeDeadlineSeconds — an overrunning run is killed, not left going. |
jobConcurrency | body | stringone of: forbid, allow, replace | — | What happens when a run is still going at the next tick: 'forbid' (skip the tick), 'allow' (run in parallel) or 'replace' (kill the running one). |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
mode | string | — | — |
name | string | • | — |
slug | string | • | — |
probes | object | • | — |
source | object | • | — |
command | string | null | — | — |
lastRun | object | null | — | — |
tracing | string | — | — |
replicas | integer | • | — |
schedule | string | null | — | — |
createdAt | string | • | — |
dependsOn | string[] | • | — |
nextRunAt | string | null | — | — |
resources | object | — | — |
updatedAt | string | • | — |
autoDeploy | boolean | — | — |
sleepState | stringone of: awake, sleeping, waking, stopped, wake_failed | • | — |
idleMinutes | integer | • | — |
scaleToZero | boolean | • | — |
containerPort | integer | • | — |
environmentId | string (uuid) | • | — |
jobTimeoutSec | integer | — | — |
jobConcurrency | string | — | — |
buildMachineType | string | null | — | — |
scheduleSuspended | boolean | — | — |
suspendedByBilling | boolean | — | — |
lastReplicasRunning | integer | • | — |
scaleToZeroEligibility | object | — | — |
GET/deployment/environments/:environmentId/variables
List environment-scope (shared) variables
MCP tool: deployment_variable_list_env
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
key | string | • | — |
scope | stringone of: service, environment, product | • | — |
value | string | null | • | — |
isSecret | boolean | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | null | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | null | • | — |
DELETE/deployment/environments/:environmentId/variables/:key
Delete an environment-scope variable by key
MCP tool: deployment_variable_unset_env
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
key | path | string | • | — |
PUT/deployment/environments/:environmentId/variables/:key
Create or update an environment-scope shared variable
MCP tool: deployment_variable_set_env
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
key | path | string | • | — |
value | body | string | • | — |
isSecret | body | boolean | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
key | string | • | — |
scope | stringone of: service, environment, product | • | — |
value | string | null | • | — |
isSecret | boolean | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | null | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | null | • | — |
GET/deployment/environments/:environmentId/volumes
List volumes in environment
MCP tool: deployment_volume_list
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
sizeGb | integer | • | — |
status | stringone of: provisioning, ready, detached, failed | • | — |
createdAt | string | • | — |
mountPath | string | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | • | — |
lastErrorMessage | string | null | • | — |
attachedServiceId | string (uuid) | null | • | — |
POST/deployment/environments/:environmentId/volumes
Create a volume
MCP tool: deployment_volume_create
Parameters
| Name | In | Type | Required | Description |
|---|
environmentId | path | string (uuid) | • | — |
name | body | string | • | — |
slug | body | string | — | — |
sizeGb | body | integer | • | — |
mountPath | body | string | • | — |
attachedServiceId | body | string (uuid) | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
sizeGb | integer | • | — |
status | stringone of: provisioning, ready, detached, failed | • | — |
createdAt | string | • | — |
mountPath | string | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | • | — |
lastErrorMessage | string | null | • | — |
attachedServiceId | string (uuid) | null | • | — |
DELETE/deployment/environments/:id
Delete an environment (production cannot be deleted)
MCP tool: deployment_environment_delete
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
GET/deployment/environments/:id
Get a single environment by id
MCP tool: deployment_environment_get
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
type | stringone of: persistent, pr-preview | • | — |
status | stringone of: provisioning, ready, provisioning_failed, deprovisioning, deprovisioning_failed | • | — |
prBranch | string | null | • | — |
prNumber | integer | null | • | — |
createdAt | string | • | — |
expiresAt | string | null | • | — |
updatedAt | string | • | — |
isProduction | boolean | • | — |
lastErrorMessage | string | null | • | — |
baseEnvironmentId | string (uuid) | null | • | — |
PATCH/deployment/environments/:id
Update an environment (name is the only updatable field)
MCP tool: deployment_environment_update
Parameters
| Name | In | Type | Required | Description |
|---|
name | body | string | — | — |
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
type | stringone of: persistent, pr-preview | • | — |
status | stringone of: provisioning, ready, provisioning_failed, deprovisioning, deprovisioning_failed | • | — |
prBranch | string | null | • | — |
prNumber | integer | null | • | — |
createdAt | string | • | — |
expiresAt | string | null | • | — |
updatedAt | string | • | — |
isProduction | boolean | • | — |
lastErrorMessage | string | null | • | — |
baseEnvironmentId | string (uuid) | null | • | — |
POST/deployment/environments/:id/reconcile
Re-emit the provision or deprovision workflow for an environment, with optional force-finalizer-strip on deprovision
MCP tool: deployment_environment_reconcile
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
force | body | boolean | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
type | stringone of: persistent, pr-preview | • | — |
status | stringone of: provisioning, ready, provisioning_failed, deprovisioning, deprovisioning_failed | • | — |
prBranch | string | null | • | — |
prNumber | integer | null | • | — |
createdAt | string | • | — |
expiresAt | string | null | • | — |
updatedAt | string | • | — |
isProduction | boolean | • | — |
lastErrorMessage | string | null | • | — |
baseEnvironmentId | string (uuid) | null | • | — |
POST/deployment/environments/fork
Fork an environment: deep-clone services, variables (not secrets), domains, and volumes from a base environment
MCP tool: deployment_environment_fork
Parameters
| Name | In | Type | Required | Description |
|---|
baseEnvironmentId | body | string (uuid) | • | — |
name | body | string | • | — |
slug | body | string | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
type | stringone of: persistent, pr-preview | • | — |
status | stringone of: provisioning, ready, provisioning_failed, deprovisioning, deprovisioning_failed | • | — |
prBranch | string | null | • | — |
prNumber | integer | null | • | — |
createdAt | string | • | — |
expiresAt | string | null | • | — |
updatedAt | string | • | — |
isProduction | boolean | • | — |
lastErrorMessage | string | null | • | — |
baseEnvironmentId | string (uuid) | null | • | — |
GET/deployment/governance/domains
List Governance-approved base domains the product may add subdomains of
MCP tool: deployment_domain_allowed_list
Parameters
No parameters.
Response
Returns object.
| Field | Type | Always | Description |
|---|
domains | object[] | • | — |
GET/deployment/managed-service-types
List available managed service engines and versions
MCP tool: deployment_managed_service_types
Parameters
No parameters.
Response
Returns object.
| Field | Type | Always | Description |
|---|
engines | object[] | • | — |
DELETE/deployment/managed-services/:id
Delete a managed service (soft-delete, triggers deprovisioning)
MCP tool: deployment_managed_service_delete
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
GET/deployment/managed-services/:id
Get a managed service by id
MCP tool: deployment_managed_service_get
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
POST/deployment/managed-services/:id/backup
Create a backup snapshot of a managed service
MCP tool: deployment_managed_service_backup
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
GET/deployment/managed-services/:id/backups
List backup snapshots for a managed service
MCP tool: deployment_managed_service_backup_list
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
name | string | • | — |
pvcName | string | • | — |
createdAt | string | • | — |
readyToUse | boolean | • | — |
restoreSize | string | null | • | — |
GET/deployment/managed-services/:id/connect-info
Get connection info and variable reference syntax for a managed service
MCP tool: deployment_managed_service_connect_info
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
slug | string | • | — |
vars | object[] | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
GET/deployment/managed-services/:id/logs
Get pod logs for a managed service
MCP tool: deployment_managed_service_logs
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
tail | query | integer | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
lines | string[] | • | — |
POST/deployment/managed-services/:id/reconcile
Retry provisioning of a managed service that failed
MCP tool: deployment_managed_service_reconcile
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
POST/deployment/managed-services/:id/resize
Increase storage size of a managed service (cannot shrink)
MCP tool: deployment_managed_service_resize
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
storageGiB | body | integer | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
POST/deployment/managed-services/:id/restore
Restore a managed service from a backup snapshot
MCP tool: deployment_managed_service_restore
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
snapshotName | body | string | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
POST/deployment/managed-services/:id/start
Start a stopped managed service
MCP tool: deployment_managed_service_start
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
POST/deployment/managed-services/:id/stop
Stop a running managed service
MCP tool: deployment_managed_service_stop
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
name | string | • | — |
slug | string | • | — |
engine | stringone of: postgres, redis, mysql, mongodb | • | — |
status | string | • | — |
version | string | • | — |
createdAt | string | • | — |
productId | string | • | — |
updatedAt | string | • | — |
storageGiB | number | • | — |
backupPolicy | object | • | — |
databaseName | string | null | • | — |
lastBackupAt | string | null | • | — |
environmentId | string | • | — |
lastErrorMessage | string | null | • | — |
GET/deployment/metrics
Get metric time series for a service or managed service over a fixed window (15m/1h/6h/24h/7d). Services return resource metrics (cpu, memory, net_in, net_out) plus HTTP metrics (rps, p50, p95, p99, error_rate); managed services return cpu, memory, net_in, net_out, disk.
MCP tool: deployment_metrics_get
Parameters
| Name | In | Type | Required | Description |
|---|
targetKind | query | stringone of: service, managed-service | • | — |
targetId | query | string (uuid) | • | — |
window | query | stringone of: 15m, 1h, 6h, 24h, 7d | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
series | object[] | • | — |
window | stringone of: 15m, 1h, 6h, 24h, 7d | • | — |
capacity | object | • | — |
targetId | string | • | — |
targetKind | stringone of: service, managed-service | • | — |
stepSeconds | number | • | — |
GET/deployment/preview-environments
List all preview environments
MCP tool: deployment_preview_environment_list
Parameters
No parameters.
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
type | stringone of: persistent, pr-preview | • | — |
status | stringone of: provisioning, ready, provisioning_failed, deprovisioning, deprovisioning_failed | • | — |
prBranch | string | null | • | — |
prNumber | integer | null | • | — |
createdAt | string | • | — |
expiresAt | string | null | • | — |
updatedAt | string | • | — |
isProduction | boolean | • | — |
lastErrorMessage | string | null | • | — |
baseEnvironmentId | string (uuid) | null | • | — |
POST/deployment/preview-environments
Create a preview environment from an open PR
MCP tool: deployment_preview_environment_create
Parameters
| Name | In | Type | Required | Description |
|---|
baseEnvironmentId | body | string (uuid) | • | — |
prNumber | body | integer | • | — |
prBranch | body | string | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
type | stringone of: persistent, pr-preview | • | — |
status | stringone of: provisioning, ready, provisioning_failed, deprovisioning, deprovisioning_failed | • | — |
prBranch | string | null | • | — |
prNumber | integer | null | • | — |
createdAt | string | • | — |
expiresAt | string | null | • | — |
updatedAt | string | • | — |
isProduction | boolean | • | — |
lastErrorMessage | string | null | • | — |
baseEnvironmentId | string (uuid) | null | • | — |
DELETE/deployment/preview-environments/:id
Delete a preview environment immediately
MCP tool: deployment_preview_environment_delete
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
GET/deployment/preview-policies/:baseEnvironmentId
Get preview policy for a base environment (returns defaults if none configured)
MCP tool: deployment_preview_policy_get
Parameters
| Name | In | Type | Required | Description |
|---|
baseEnvironmentId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
enabled | boolean | • | — |
ttlHours | number | • | — |
createdAt | string | • | — |
updatedAt | string | • | — |
maxPreviews | number | • | — |
baseEnvironmentId | string (uuid) | • | — |
PUT/deployment/preview-policies/:baseEnvironmentId
Configure preview policy for a base environment (enabled, maxPreviews, ttlHours)
MCP tool: deployment_preview_policy_set
Parameters
| Name | In | Type | Required | Description |
|---|
baseEnvironmentId | path | string (uuid) | • | — |
enabled | body | boolean | — | — |
maxPreviews | body | integer | — | — |
ttlHours | body | integer | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
enabled | boolean | • | — |
ttlHours | number | • | — |
createdAt | string | • | — |
updatedAt | string | • | — |
maxPreviews | number | • | — |
baseEnvironmentId | string (uuid) | • | — |
GET/deployment/product/suspension
Get the product's billing-suspension state (stage, reason, grace deadline) and whether enforcement is active
MCP tool: deployment_suspension_get
Parameters
No parameters.
Response
Returns object.
| Field | Type | Always | Description |
|---|
stage | string | nullone of: warned, production_grace, stopped, cleared | • | — |
reason | string | null | • | — |
changedAt | string | null | • | — |
graceDeadline | string | null | • | — |
enforcementEnabled | boolean | • | — |
GET/deployment/product/variables
List product-scope (global) variables
MCP tool: deployment_variable_list_product
Parameters
No parameters.
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
key | string | • | — |
scope | stringone of: service, environment, product | • | — |
value | string | null | • | — |
isSecret | boolean | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | null | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | null | • | — |
DELETE/deployment/product/variables/:key
Delete a product-scope variable by key
MCP tool: deployment_variable_unset_product
Parameters
| Name | In | Type | Required | Description |
|---|
key | path | string | • | — |
PUT/deployment/product/variables/:key
Create or update a product-scope global variable
MCP tool: deployment_variable_set_product
Parameters
| Name | In | Type | Required | Description |
|---|
key | path | string | • | — |
value | body | string | • | — |
isSecret | body | boolean | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
key | string | • | — |
scope | stringone of: service, environment, product | • | — |
value | string | null | • | — |
isSecret | boolean | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | null | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | null | • | — |
DELETE/deployment/services/:id
Delete a service
MCP tool: deployment_service_delete
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
GET/deployment/services/:id
Get a single service by id. A scheduled service (mode:'scheduled') also reports nextRunAt and lastRun — when it fires next and how its most recent run ended.
MCP tool: deployment_service_get
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
mode | string | — | — |
name | string | • | — |
slug | string | • | — |
probes | object | • | — |
source | object | • | — |
command | string | null | — | — |
lastRun | object | null | — | — |
tracing | string | — | — |
replicas | integer | • | — |
schedule | string | null | — | — |
createdAt | string | • | — |
dependsOn | string[] | • | — |
nextRunAt | string | null | — | — |
resources | object | — | — |
updatedAt | string | • | — |
autoDeploy | boolean | — | — |
sleepState | stringone of: awake, sleeping, waking, stopped, wake_failed | • | — |
idleMinutes | integer | • | — |
scaleToZero | boolean | • | — |
containerPort | integer | • | — |
environmentId | string (uuid) | • | — |
jobTimeoutSec | integer | — | — |
jobConcurrency | string | — | — |
buildMachineType | string | null | — | — |
scheduleSuspended | boolean | — | — |
suspendedByBilling | boolean | — | — |
lastReplicasRunning | integer | • | — |
scaleToZeroEligibility | object | — | — |
PATCH/deployment/services/:id
Update service fields. mode is immutable. On a scheduled service (mode:'scheduled') you may change schedule (five-field UTC cron, or null to leave it on demand only), command, jobTimeoutSec, jobConcurrency ('forbid' | 'allow' | 'replace'), and scheduleSuspended, which pauses or resumes the schedule without losing it.
MCP tool: deployment_service_update
Parameters
| Name | In | Type | Required | Description |
|---|
name | body | string | — | — |
source | body | object | — | — |
containerPort | body | integer | — | — |
replicas | body | integer | — | — |
probes | body | object | — | — |
resources | body | object | — | — |
scaleToZero | body | boolean | — | — |
idleMinutes | body | integer | — | — |
buildMachineType | body | string | nullone of: E2_MEDIUM, E2_HIGHCPU_8 | — | — |
tracing | body | stringone of: off, node, python | — | OTel SDK to inject into this service's pods: 'off' (none), 'node' or 'python'. Read when a deploy builds the workload — takes effect on the next deploy, running pods are untouched. |
autoDeploy | body | boolean | — | Whether a push to this service's repo+branch queues a deploy. Default true. Turning it off suppresses push-triggered deploys only — manual and API-triggered deploys still work. Applies to git and static sources alike; the UI toggle is currently git-only, so a static service is switched through this field. |
schedule | body | string | null | — | Five-field UTC cron expression (minute hour day-of-month month day-of-week), or null for a scheduled service with no schedule yet. |
scheduleSuspended | body | boolean | — | Pause or resume a scheduled service without losing its schedule. |
command | body | string | null | — | Shell command a scheduled run executes (`/bin/sh -c <command>`). Scheduled services only; omit it to run the image entrypoint. `null` clears a command that was set and returns the run to the image entrypoint. |
jobTimeoutSec | body | integer | — | Wall-clock budget for one run, in seconds (60..86400). Becomes the Job activeDeadlineSeconds — an overrunning run is killed, not left going. |
jobConcurrency | body | stringone of: forbid, allow, replace | — | What happens when a run is still going at the next tick: 'forbid' (skip the tick), 'allow' (run in parallel) or 'replace' (kill the running one). |
mode | body | string | — | — |
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
mode | string | — | — |
name | string | • | — |
slug | string | • | — |
probes | object | • | — |
source | object | • | — |
command | string | null | — | — |
lastRun | object | null | — | — |
tracing | string | — | — |
replicas | integer | • | — |
schedule | string | null | — | — |
createdAt | string | • | — |
dependsOn | string[] | • | — |
nextRunAt | string | null | — | — |
resources | object | — | — |
updatedAt | string | • | — |
autoDeploy | boolean | — | — |
sleepState | stringone of: awake, sleeping, waking, stopped, wake_failed | • | — |
idleMinutes | integer | • | — |
scaleToZero | boolean | • | — |
containerPort | integer | • | — |
environmentId | string (uuid) | • | — |
jobTimeoutSec | integer | — | — |
jobConcurrency | string | — | — |
buildMachineType | string | null | — | — |
scheduleSuspended | boolean | — | — |
suspendedByBilling | boolean | — | — |
lastReplicasRunning | integer | • | — |
scaleToZeroEligibility | object | — | — |
POST/deployment/services/:id/restart
Trigger a rolling restart of a service without changing the deployed image
MCP tool: deployment_service_restart
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
POST/deployment/services/:id/scale
Scale a service to N replicas without redeploy (min 0 = stop)
MCP tool: deployment_service_scale
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
replicas | body | integer | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
mode | string | — | — |
name | string | • | — |
slug | string | • | — |
probes | object | • | — |
source | object | • | — |
command | string | null | — | — |
lastRun | object | null | — | — |
tracing | string | — | — |
replicas | integer | • | — |
schedule | string | null | — | — |
createdAt | string | • | — |
dependsOn | string[] | • | — |
nextRunAt | string | null | — | — |
resources | object | — | — |
updatedAt | string | • | — |
autoDeploy | boolean | — | — |
sleepState | stringone of: awake, sleeping, waking, stopped, wake_failed | • | — |
idleMinutes | integer | • | — |
scaleToZero | boolean | • | — |
containerPort | integer | • | — |
environmentId | string (uuid) | • | — |
jobTimeoutSec | integer | — | — |
jobConcurrency | string | — | — |
buildMachineType | string | null | — | — |
scheduleSuspended | boolean | — | — |
suspendedByBilling | boolean | — | — |
lastReplicasRunning | integer | • | — |
scaleToZeroEligibility | object | — | — |
POST/deployment/services/:id/wake
Wake a sleeping (scale-to-zero) service
MCP tool: deployment_service_wake
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
GET/deployment/services/:serviceId/builds
List builds for a service, newest first
MCP tool: deployment_build_list
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
status | stringone of: Initializing, Building, Deploying, Active, Replaced, Crashed, Completed, Failed, Removed | • | — |
builtAt | string | null | • | — |
imageRef | string | null | • | — |
commitSha | string | null | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | • | — |
startedAt | string | null | • | — |
finishedAt | string | null | • | — |
cloudBuildId | string | null | • | — |
lastErrorMessage | string | null | • | — |
POST/deployment/services/:serviceId/cancel
Cancel a non-terminal deployment, releasing the in-progress lock so the service can deploy again
MCP tool: deployment_deployment_cancel
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
deploymentId | body | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
status | stringone of: Initializing, Building, Deploying, Active, Replaced, Crashed, Completed, Failed, Removed, Sleeping, Stopped, WakeFailed | • | — |
builtAt | string | null | • | — |
imageRef | string | null | • | — |
commitSha | string | null | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | • | — |
startedAt | string | null | • | — |
updatedAt | string | • | — |
deployedAt | string | null | • | — |
finishedAt | string | null | • | — |
cloudBuildId | string | null | • | — |
configSnapshot | object | • | — |
lastErrorMessage | string | null | • | — |
rolledBackFromDeploymentId | string (uuid) | null | • | — |
GET/deployment/services/:serviceId/deployments
List deployments for a service (newest first)
MCP tool: deployment_deployment_list
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
status | stringone of: Initializing, Building, Deploying, Active, Replaced, Crashed, Completed, Failed, Removed, Sleeping, Stopped, WakeFailed | • | — |
builtAt | string | null | • | — |
imageRef | string | null | • | — |
commitSha | string | null | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | • | — |
startedAt | string | null | • | — |
updatedAt | string | • | — |
deployedAt | string | null | • | — |
finishedAt | string | null | • | — |
cloudBuildId | string | null | • | — |
configSnapshot | object | • | — |
lastErrorMessage | string | null | • | — |
rolledBackFromDeploymentId | string (uuid) | null | • | — |
GET/deployment/services/:serviceId/deployments/:deploymentId/build-logs
Snapshot build logs for a deployment (Cloud Logging proxy)
MCP tool: deployment_build_logs
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
deploymentId | path | string (uuid) | • | — |
tail | query | integer | — | — |
since | query | string (date-time) | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
lines | object[] | • | — |
cursor | string | null | • | — |
complete | boolean | • | — |
GET/deployment/services/:serviceId/domains
List domains routed to a service (backward-compat)
MCP tool: deployment_domain_list_by_service
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
kind | stringone of: auto, custom | • | — |
hostname | string | • | — |
createdAt | string | • | — |
tlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
updatedAt | string | • | — |
lastProbeAt | string | null | • | — |
redirectWww | boolean | • | — |
wwwTlsStatus | stringone of: none, pending, issuing, active, failed | • | — |
environmentId | string (uuid) | • | — |
routingStatus | stringone of: provisioning, propagating, active, failed | • | — |
lastProbeError | string | null | • | — |
dnsInstructions | object | null | • | — |
routingRecordType | stringone of: A, CNAME | • | — |
verificationToken | string | null | • | — |
verificationStatus | stringone of: pending_dns, verified, dns_failed | • | — |
lastVerificationError | object | null | • | — |
lastVerificationCheckAt | string | null | • | — |
tlsCertificateExpiresAt | string | null | • | — |
GET/deployment/services/:serviceId/events
List deploy events for a service, newest first
MCP tool: deployment_events_list_by_service
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
type | query | stringone of: deployment.queued, deployment.build.started, deployment.build.succeeded, deployment.build.failed, deployment.deploying, deployment.variable.ignored, deployment.healthcheck.passed, deployment.healthcheck.failed, deployment.healthy, deployment.failed, deployment.replaced, deployment.sourcemaps.uploaded, deployment.sourcemaps.upload-failed, deployment.requeue-failed, deployment.release.started, deployment.release.log, deployment.release.succeeded, deployment.release.failed, replica.restarted, service.scaled, service.restarted, service.restart-failed, domain.verified, domain.tls.issued, domain.tls.failed, domain.www-tls.issued, domain.www-tls.failed, domain.routing.active, domain.routing.failed, domain.removed, domain.governance.mirror-failed, service.slept, service.woke, service.wake_failed, service.sleep-enabled, service.sleep-disabled, service.sleep-enable-failed, cloud-sql.instance.stopped, cloud-sql.instance.started, cloud-sql.instance.stop-failed, cloud-sql.instance.start-failed, suspension.workload-stopped, suspension.workload-restored, managed-service.restarted, managed-service.port-leak-healed | — | — |
since | query | string (date-time) | — | — |
until | query | string (date-time) | — | — |
limit | query | integer | — | — |
deploymentId | query | string (uuid) | — | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string | • | — |
type | stringone of: deployment.queued, deployment.build.started, deployment.build.succeeded, deployment.build.failed, deployment.deploying, deployment.variable.ignored, deployment.healthcheck.passed, deployment.healthcheck.failed, deployment.healthy, deployment.failed, deployment.replaced, deployment.sourcemaps.uploaded, deployment.sourcemaps.upload-failed, deployment.requeue-failed, deployment.release.started, deployment.release.log, deployment.release.succeeded, deployment.release.failed, replica.restarted, service.scaled, service.restarted, service.restart-failed, domain.verified, domain.tls.issued, domain.tls.failed, domain.www-tls.issued, domain.www-tls.failed, domain.routing.active, domain.routing.failed, domain.removed, domain.governance.mirror-failed, service.slept, service.woke, service.wake_failed, service.sleep-enabled, service.sleep-disabled, service.sleep-enable-failed, cloud-sql.instance.stopped, cloud-sql.instance.started, cloud-sql.instance.stop-failed, cloud-sql.instance.start-failed, suspension.workload-stopped, suspension.workload-restored, managed-service.restarted, managed-service.port-leak-healed | • | — |
payload | object | • | — |
domainId | string | null | • | — |
createdAt | string | • | — |
productId | string | • | — |
serviceId | string | null | • | — |
deploymentId | string | null | • | — |
environmentId | string | null | • | — |
POST/deployment/services/:serviceId/exec
Run a command against a service. mode:"exec" (default) execs non-interactively into the first running pod (debugging); mode:"job" runs a one-off Job of the service's current image with its env (migrations). Returns stdout/stderr + exit code as text. command is run via /bin/sh -c.
MCP tool: deployment_service_exec
Parameters
| Name | In | Type | Required | Description |
|---|
command | body | string | • | — |
mode | body | stringone of: exec, job | — | — |
timeoutSec | body | integer | — | — |
serviceId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
mode | stringone of: exec, job | • | — |
output | string | • | — |
stderr | string | • | — |
stdout | string | • | — |
target | object | • | — |
exitCode | integer | • | — |
timedOut | boolean | • | — |
truncated | boolean | • | — |
GET/deployment/services/:serviceId/logs
Snapshot the last N runtime log lines for a service
MCP tool: deployment_service_logs
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
tail | query | integer | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
lines | string[] | • | — |
sleepState | stringone of: awake, sleeping, waking, stopped, wake_failed | — | — |
POST/deployment/services/:serviceId/redeploy
Roll out a new deployment for a service from its current source and variables (runs asynchronously; poll the deployment for status)
MCP tool: deployment_service_redeploy
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
status | stringone of: Initializing, Building, Deploying, Active, Replaced, Crashed, Completed, Failed, Removed, Sleeping, Stopped, WakeFailed | • | — |
builtAt | string | null | • | — |
imageRef | string | null | • | — |
commitSha | string | null | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | • | — |
startedAt | string | null | • | — |
updatedAt | string | • | — |
deployedAt | string | null | • | — |
finishedAt | string | null | • | — |
cloudBuildId | string | null | • | — |
configSnapshot | object | • | — |
lastErrorMessage | string | null | • | — |
rolledBackFromDeploymentId | string (uuid) | null | • | — |
POST/deployment/services/:serviceId/rollback
Roll back a service to a previous deployment by re-deploying its imageRef
MCP tool: deployment_service_rollback
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
deploymentId | body | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
status | stringone of: Initializing, Building, Deploying, Active, Replaced, Crashed, Completed, Failed, Removed, Sleeping, Stopped, WakeFailed | • | — |
builtAt | string | null | • | — |
imageRef | string | null | • | — |
commitSha | string | null | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | • | — |
startedAt | string | null | • | — |
updatedAt | string | • | — |
deployedAt | string | null | • | — |
finishedAt | string | null | • | — |
cloudBuildId | string | null | • | — |
configSnapshot | object | • | — |
lastErrorMessage | string | null | • | — |
rolledBackFromDeploymentId | string (uuid) | null | • | — |
GET/deployment/services/:serviceId/runs
List the runs of a scheduled service (job), newest first. Returns a page of runs plus nextCursor; pass that back as cursor for the next page. A run with status "Skipped" is a tick that never fired — concurrency held it back — and has no logs or exit code.
MCP tool: deployment_job_runs_list
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
limit | query | integer | — | — |
cursor | query | string | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
items | object[] | • | — |
nextCursor | string | null | • | — |
POST/deployment/services/:serviceId/runs
Run a scheduled service (job) now, regardless of its schedule or concurrency; returns the run
MCP tool: deployment_job_run
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
status | stringone of: Running, Succeeded, Failed, TimedOut, Skipped | • | — |
trigger | stringone of: schedule, manual | • | — |
exitCode | integer | null | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | • | — |
startedAt | string | null | • | — |
finishedAt | string | null | • | — |
k8sJobName | string | • | — |
imageDigest | string | null | • | — |
triggeredBy | string | null | • | — |
deploymentId | string (uuid) | null | • | — |
environmentId | string (uuid) | • | — |
failureReason | string | null | • | — |
GET/deployment/services/:serviceId/runs/:runId/logs
Read the output of one job run: the stored tail (up to 256 KiB) once the run has finished, or a live tail while it is still running. `live` says which one you got — a caller that polls should stop once it turns false.
MCP tool: deployment_job_run_logs
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
runId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
live | boolean | • | — |
logs | string | • | — |
status | stringone of: Running, Succeeded, Failed, TimedOut, Skipped | • | — |
GET/deployment/services/:serviceId/ssh-command
Get the ssh command string to connect to a service
MCP tool: deployment_ssh_command
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
host | string | • | — |
command | string | • | — |
username | string | • | — |
GET/deployment/services/:serviceId/variables
List variables for a service (secret values are returned as null)
MCP tool: deployment_variable_list
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
key | string | • | — |
scope | stringone of: service, environment, product | • | — |
value | string | null | • | — |
isSecret | boolean | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | null | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | null | • | — |
DELETE/deployment/services/:serviceId/variables/:key
Delete a variable from a service by key
MCP tool: deployment_variable_unset
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
key | path | string | • | — |
PUT/deployment/services/:serviceId/variables/:key
Create or update a variable on a service. Pass `isSecret: true` to encrypt the value via KMS — this transition is irreversible (a row that is already secret cannot be downgraded to plain).
MCP tool: deployment_variable_set
Parameters
| Name | In | Type | Required | Description |
|---|
serviceId | path | string (uuid) | • | — |
key | path | string | • | — |
value | body | string | • | — |
isSecret | body | boolean | — | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
key | string | • | — |
scope | stringone of: service, environment, product | • | — |
value | string | null | • | — |
isSecret | boolean | • | — |
createdAt | string | • | — |
serviceId | string (uuid) | null | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | null | • | — |
GET/deployment/ssh-keys
List SSH public keys registered in the current workspace
MCP tool: deployment_ssh_key_list
Parameters
No parameters.
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
id | string | • | — |
algo | string | • | — |
name | string | • | — |
scope | stringone of: workspace, personal | • | — |
createdAt | string | • | — |
productId | string | • | — |
lastUsedAt | string | null | • | — |
ownerIdentityId | string | • | — |
fingerprintSha256 | string | • | — |
POST/deployment/ssh-keys
Register an SSH public key for the current workspace
MCP tool: deployment_ssh_key_register
Parameters
| Name | In | Type | Required | Description |
|---|
name | body | string | • | Human label for the key, e.g. "my-laptop" |
publicKey | body | string | • | OpenSSH public key line (ssh-ed25519 / ssh-rsa ...) |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string | • | — |
algo | string | • | — |
name | string | • | — |
scope | stringone of: workspace, personal | • | — |
createdAt | string | • | — |
productId | string | • | — |
lastUsedAt | string | null | • | — |
ownerIdentityId | string | • | — |
fingerprintSha256 | string | • | — |
DELETE/deployment/ssh-keys/:id
Delete a registered SSH public key
MCP tool: deployment_ssh_key_delete
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
deleted | boolean | • | — |
GET/deployment/vcs/branches
List branches for a repository on a GitHub connection
MCP tool: deployment_vcs_branch_list
Parameters
| Name | In | Type | Required | Description |
|---|
connectorId | query | string (uuid) | • | — |
repoFullName | query | string | • | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
name | string | • | — |
commitSha | string | • | — |
GET/deployment/vcs/connections
List the GitHub connections available to the current product
MCP tool: deployment_vcs_connection_list
Parameters
No parameters.
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
status | string | • | — |
connectorId | string | • | — |
accountLogin | string | • | — |
installationId | string | • | — |
GET/deployment/vcs/repos
List repositories accessible to a GitHub connection (optionally filtered by search)
MCP tool: deployment_vcs_repo_list
Parameters
| Name | In | Type | Required | Description |
|---|
connectorId | query | string (uuid) | • | — |
page | query | integer | — | — |
search | query | string | — | — |
Response
Returns object[].
| Item field | Type | Always | Description |
|---|
private | boolean | • | — |
fullName | string | • | — |
defaultBranch | string | • | — |
DELETE/deployment/volumes/:id
Permanently delete a detached volume
MCP tool: deployment_volume_delete
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
GET/deployment/volumes/:id
Get a volume
MCP tool: deployment_volume_get
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
sizeGb | integer | • | — |
status | stringone of: provisioning, ready, detached, failed | • | — |
createdAt | string | • | — |
mountPath | string | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | • | — |
lastErrorMessage | string | null | • | — |
attachedServiceId | string (uuid) | null | • | — |
POST/deployment/volumes/:id/detach
Detach a volume from its service (data preserved)
MCP tool: deployment_volume_detach
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
sizeGb | integer | • | — |
status | stringone of: provisioning, ready, detached, failed | • | — |
createdAt | string | • | — |
mountPath | string | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | • | — |
lastErrorMessage | string | null | • | — |
attachedServiceId | string (uuid) | null | • | — |
POST/deployment/volumes/:id/resize
Increase a volume size
MCP tool: deployment_volume_resize
Parameters
| Name | In | Type | Required | Description |
|---|
id | path | string (uuid) | • | — |
sizeGb | body | integer | • | — |
Response
Returns object.
| Field | Type | Always | Description |
|---|
id | string (uuid) | • | — |
name | string | • | — |
slug | string | • | — |
sizeGb | integer | • | — |
status | stringone of: provisioning, ready, detached, failed | • | — |
createdAt | string | • | — |
mountPath | string | • | — |
updatedAt | string | • | — |
environmentId | string (uuid) | • | — |
lastErrorMessage | string | null | • | — |
attachedServiceId | string (uuid) | null | • | — |
Was this page helpful?Thanks for your feedback!