Skip to content
API documentation

Stream Task Status (SSE)

GET/api/v1/tasks/{taskId}/stream

Authentication · x-api-key

Subscribe to real-time task status updates using Server-Sent Events (SSE). Receives updates without repeated status queries. Emits `connected` (initial snapshot), `update` (state change), `complete` (terminal), `reconnect` (deployment drain or bounded connection rotation), `error`, and `:ping` heartbeats every 25s.

Request

taskIdpath · Required
string

Responses

200 OK

SSE stream. Events: connected, update, complete, reconnect, and error; comment heartbeats are sent every 25 seconds.

text/event-stream

    See the complete schema in the API explorer.

    403 Forbidden

    Forbidden: the API key lacks the required scope or its IP policy rejects this request.

    application/json

    • Response 403 · errorRequired

      object
      3 fields
      • Response 403 · error.codeRequired

        string

        Application-specific error code (see error catalog)

      • Response 403 · error.messageRequired

        string

        Human readable error message

      • Response 403 · error.detailsOptional

        object

        Additional error details (optional)

    • Response 403 · successRequired

      false

      Always false for error responses

    429 Too Many Requests

    Request allowance or task admission capacity exceeded. Follow Retry-After when present; otherwise wait for active tasks and use bounded backoff. Limits do not guarantee throughput. For SSE, this is the HTTP connection response, not an event.

    application/json

    • Response 429 · errorRequired

      object
      3 fields
      • Response 429 · error.codeRequired

        string

        RATE_LIMITED for request and task admission rejections.

      • Response 429 · error.messageRequired

        string
      • Response 429 · error.detailsOptional

        object

        Optional and scope-dependent. Request limits supply scope/policy/type/limit/current/retryAfterSec. Task admission supplies inFlight/limit/tier, plus scope=apiKey for a key cap. IP rejection can omit details. In-flight rejection does not promise Retry-After.

        8 fields
    • Response 429 · successRequired

      false

      Default: false.

    Interactive API Explorer → · OpenAPI JSON