v1

latestOpenAPI 3.1.0MIT2026-07-243952451019.0 KB
Workflows::Run

List Runs

List automation runs for a workflow. Supports filtering by contact_id and status. Only standard automation runs are returned (survey runs excluded).

get/workflows/{workflow_id}/runs

Path parameters

workflow_idstring required

Integer id or obfuscated public_id of the workflow.

Query parameters

afterstring

ID of item after which the collection should be returned. More examples and info about pagination in our guides.

sort_order'asc' | 'desc'

Sort order of a list response. Use 'desc' to reverse the default 'asc' (ascending) sort order. Examples in our guides.

sort_property'id' | 'updated_at'

Sort property of a list response. The default is id and thus the created_at order. If you sort by other properties, we additionally sort by id implicitly as a secondary sort property, so that you can rely on the sort order to be deterministic even if the main sort property ends up with the same values.

status'active' | 'paused' | 'completed' | 'canceled'

Filter by derived run status.

Filter runs by contact_id (integer id or obfuscated public_id of the contact) and/or status (active, paused, completed, or canceled). An invalid status value returns 422.

{
  "status": "completed"
}

Response

OK

idinteger

Run ID

public_idstring nullable

Obfuscated run ID

workflow_idinteger

Integer ID of the parent workflow

contact_idinteger nullable

Raw integer ID of the enrolled contact

current_step_idinteger nullable

Raw integer ID of the step the run is currently at. Null when not at a step.

event_idinteger nullable

Raw integer ID of the triggering event that started this run, if any.

typestring nullable

STI type column. Always null for standard automation runs (the only subtype the list endpoint returns).

status'active' | 'paused' | 'completed' | 'canceled'

Derived execution status.

skip_communicationboolean

When true, communication steps (send email, etc.) are skipped for this run.

completed_atstring date-time nullable

Timestamp when the run completed. Null if still in progress.

paused_atstring date-time nullable

Timestamp when the run was last paused. Null if never paused.

created_atstring date-time
updated_atstring date-time

Example response

[
  {
    "id": 501,
    "public_id": "RnXxYz",
    "workflow_id": 101,
    "contact_id": 9001,
    "current_step_id": null,
    "event_id": null,
    "type": null,
    "status": "completed",
    "skip_communication": false,
    "completed_at": "2025-06-02T10:30:00.000Z",
    "paused_at": null,
    "created_at": "2025-06-01T09:00:00.000Z",
    "updated_at": "2025-06-02T10:30:00.000Z"
  }
]