Skip to main content

GET/1.0/tasks/:taskId/runs/:runId

Reads one run of a task. Required scope: workbench:flows:run (scopes reference).

This is how you follow a run you started. A task run isn't a single call that returns an answer — it works through its plan, and it can stop partway to wait for a person or a timer, so poll this until it reaches a status that isn't going to change.

Path parameters

taskIdstringRequired

The task the run belongs to.

runIdstringRequired

The run, from the response when you started it.

Response (200)

statusstring

One of running, waiting_human, waiting_timer, done, failed, or canceled. The first three mean come back later; the last three are final.

planobject

The version of the task's plan this run pinned when it started. A run always finishes against the plan it began with, even if someone edits the task while it's going.

packetobject

What the run has gathered so far — the working state its steps have built up.

eventsarray

What's happened, step by step, in order.

curl https://api.zerowidth.ai/1.0/tasks/cmpd9k2x10001.../runs/run_8fd21a9c... \
  -H "Authorization: Bearer zw_live_abc12345_..."

Errors

Uses the shared error envelope. 404 not_found when the task or run isn't in the key's workspace, plus 401 and 403 scope_missing.

2 min read