Resume a paused execution

Resumes a paused flow or agent execution by providing tool outputs. Does not count against execution limits. A saved-agent dispatch that ran on the durable lane pauses under its `aex_` execution id; resuming it hands the outputs to the durable session, answers `{ executionId, status: "running" }` (or a streamed `await` with `awaitReason: "detached"`), and ignores `messages`. Follow the run through `GET /v1/executions/{executionId}/events`.

Authentication

AuthorizationBearer
API key or Clerk session token

Request

This endpoint expects an object.
executionIdstringRequired>=1 character
The execution ID to resume
streamResponsefalseRequired
Whether to stream the response via SSE
messageslist of objectsOptional
Optional conversation override for the resumed leg. It REPLACES the stored conversation rather than being appended to it, so send the full conversation you want the model to see, not just the new turn. Omit it to keep the stored conversation unchanged. A `system` message must come first, as in any conversation. Note this is the flow client-tool continuation contract; an agent checkpoint resume (`options.resumeFrom` on `/v1/dispatch`) instead APPENDS its `messages` after the snapshot history — send only new input there.
toolOutputsmap from strings to anyOptionalDefaults to {}

Local tool outputs for the paused execution. Key each output by the per-call toolCallId from the flow_await / agent_await event (preferred, and required to disambiguate parallel calls to the same tool), or by tool name (legacy; collapses same-tool parallel calls onto one slot).

Response

DispatchToolOutputContinuationJsonResponseobject
OR
DispatchDetachedToolOutputJsonResponseobject

Errors

400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
410
Gone Error
500
Internal Server Error