Sandbox pool capacity.
const url = 'https://shiftagent.example.com/capacity';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://shiftagent.example.com/capacity \ --header 'Authorization: Bearer <token>'Live sandbox-pool state — lets adapters pre-check before choosing an on_capacity strategy or creating warm conversations, and observe saturation over time. Values are a point-in-time snapshot; they can change before the next request lands.
Authorizations
Section titled “Authorizations ”Responses
Section titled “ Responses ”Current pool state.
Point-in-time sandbox pool state.
object
Total sandbox slots in the deployment.
Pool sandboxes free right now.
Sandboxes currently held warm by conversations (idle timers running).
True when no sandbox is available — new runs will 429 (reject) or queue (hold).
Deployment-configured maximum time a hold request may queue before terminating capacity-exhausted.
RFC 3339 / ISO 8601 timestamp, UTC.
Examples
Pool with headroom
{ "object": "capacity", "pool_size": 8, "warm_available": 3, "warm_active": 2, "at_capacity": false, "max_hold_seconds": 120, "checked_at": "2026-07-02T10:00:00Z"}Missing or invalid credentials — no bearer token, an unknown/revoked sk_int_ key, or an expired platform JWT.
RFC 9457 problem+json error envelope. type is a URI under https://shiftagent.example.com/problems/{slug} (deployment host substituted); see the API-level problem registry for every slug.
object
Problem type URI (registry slug).
Short, human-readable summary of the problem type.
HTTP status code.
Human-readable explanation specific to this occurrence.
URI reference identifying this occurrence.
Correlation ID for support and log lookup.
On name-conflict, external-id-conflict, and resource-in-use: the ID of the existing/depended-on resource — fetch it and continue (replay recovery).
On validation-error, field-level details.
object
JSON pointer to the offending field.
What failed.
Examples
Missing or invalid bearer token
{ "type": "https://shiftagent.example.com/problems/insufficient-scope", "title": "Unauthorized", "status": 401, "detail": "Provide a valid sk_int_ service key or platform JWT.", "request_id": "req_01hzx8auth001"}