Skip to main content
GET

Headers

Path Parameters

The id resolves from the moment the run starts

A response id is retrievable for the whole life of the run, not only once it finishes. A GET issued while the run is still working returns the envelope with status: "in_progress" and an empty output — for a background run, for a streaming run, and for an ordinary synchronous one.
That makes the id you receive in response.created (the first frame of a stream) usable immediately — to poll, to show the run in an operator view, or to cancel it.
A paused approval also reports status: "in_progress"; what identifies it is an mcp_approval_request item in output. See Governance outcomes.

When a response stops being retrievable

Runs that are not terminal — including one paused awaiting a human approval — are never collected by retention at any age, so a pending approval cannot expire out from under the client that is waiting on it.

Supported Providers

GET /v1/responses/{id} is provider-agnostic — every response Bud stores is retrievable this way, whichever model produced it.
Retrieval is scoped to the API key that created the response: another key asking for the same id gets 404, never another tenant’s content.