Executions

Inspect workflow executions across the catalog.

Execution routes expose read-only access to the execution log. Lifecycle operations (run, resume, cancel, status) live under the workflow-scoped paths documented in Workflows.

GET /executions

List executions across the catalog with optional filters.

GET /executions/{execution_id}

Show a single execution.

Lifecycle operations

The remaining execution operations are scoped to a specific workflow:

OperationPath
RunPOST /workflows/{ns}/{name}/run/{mode}
ResumePOST /workflows/{ns}/{name}/resume/{execution_id}/{mode}
CancelGET /workflows/{ns}/{name}/cancel/{execution_id}
StatusGET /workflows/{ns}/{name}/status/{execution_id}
List per workflowGET /workflows/{ns}/{name}/executions

See Workflows for the full signatures.

Execution states

The state field returned by every execution endpoint is one of:

Use ?state= on GET /executions to filter by any of these (case-insensitive).

The detailed flag

Every execution-returning endpoint accepts ?detailed=true. Without it, responses are summaries (execution_id, workflow_name, state, worker_name). With it, the full ExecutionContextDTO is returned, including:

Event logs grow with the size of the workflow; only request detailed=true when you actually need the trace.

Human-in-the-loop approval

When a workflow uses the approval primitive, the server exposes:

POST /executions/{exec_id}/authorize/{task_name}

Approve or reject a pending approval task. The caller’s identity must:

The body shape is the approval decision payload ({"approved": bool, ...}); see the workflow’s approval task implementation for the exact contract. Permission: depends on the workflow’s metadata.required_permissions.