Skip to navigation

Get Run Steps

List per-node execution steps for a workflow run.

Returns one entry per node execution attempt, ordered by execution sequence. By default, the response is lightweight: result is null, has_result reports whether a stored result exists, and active_ports is projected from the result without loading the full JSON payload.

Set include_result=true to restore the full result payload. Audio results are then hydrated with short-lived playback_url values (valid for 15 minutes). node_type and node_id filters combine with AND semantics.

node_display_name is resolved from the run’s definition snapshot, so it reflects the name the node had when the run executed. Repeated executions of the same node share that name and are distinguished by iteration.

For a higher-level view with aggregated metrics (pass rates, audio duration by language), use GET /runs/{run_id}/overview. For paginated, grouped script+audio rows suitable for a data table, use GET /runs/{run_id}/data.

Authentication

AuthorizationBearer
Clerk JWT token
OR
AuthorizationBearer

Onepin live API key (op_live_...). Test and public keys are reserved in Phase 1.

Path parameters

workflow_idstringRequiredformat: "uuid"
run_idstringRequiredformat: "uuid"

Headers

X-Workspace-Idstring or nullOptional

Query parameters

include_resultbooleanOptionalDefaults to false
Include the full step result payload and hydrate audio playback URLs.
node_typeenum or nullOptional
Filter steps by node type.
node_idstring or nullOptional
Filter steps by node ID.

Response

Successful Response
datalist of objects
metaobject

Errors

422
Unprocessable Entity Error