List workflow runs
GET/workflow-runs
Returns a paginated history of all workflow executions ordered by most recent. Each run record captures the workflow that fired, the trigger payload, execution status, and timestamps. Use this to audit automation activity and diagnose failed runs.
Request
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
page | integer | No | Page number (20 runs per page). Default: |
workflow_id | integer | No | Filter runs to a specific workflow. |
Responses
200 Paginated workflow run history
Content type application/json, object.
| Field | Type | Required | Description |
|---|---|---|---|
data | array of object · WorkflowRunV1 | No | |
data[].id | integer | No | Auto-incremented primary key. |
data[].workflow_id | integer | No | ID of the workflow that was executed. Example: |
data[].status | string | No | Final execution status of the run. One of: |
data[].trigger_payload | object, nullable | No | The event payload that triggered this run. |
data[].error_message | string, nullable | No | Error details if the run failed. |
data[].started_at | string (date-time) | No | When execution began. |
data[].completed_at | string (date-time), nullable | No | When execution finished (null if still running). |
data[].created_at | string (date-time) | No | Record creation timestamp. |
Example
{
"data": [
{
"id": 1024,
"workflow_id": 8,
"status": "completed",
"trigger_payload": {
"lead": {
"id": 45,
"email": "customer@example.test"
}
},
"started_at": "2026-04-07T12:05:00Z",
"completed_at": "2026-04-07T12:05:02Z",
"error_message": null
}
]
}
401 Unauthenticated
Example request
curl -X GET "https://{tenant}.faciotech.net/api/v1/workflow-runs" \
-H "Accept: application/json"