---
title: "List run history"
method: POST
path: "/runs/history"
tags: ["runs"]
---

# List run history

`POST /runs/history`

Returns paginated historic runs for the caller's user. Use POST /runs for recent (non-archived) runs.

## Request body

- RunHistoryRequest — Query parameters for listing historic runs.
  - `$schema` string, uri — A URL to the JSON Schema for this object.
  - `end_date` string, date-time, required — End of the query time window.
  - `limit` integer, required — Maximum number of runs to return.
  - `offset` integer, required — Pagination offset.
  - `search` string — Filters by run ID or workflow ID substring.
  - `start_date` string, date-time, required — Beginning of the query time window.
  - `status_filter` string[], nullable — Restricts results to runs in the given statuses (case-insensitive).
  - `workflow_id` string — Filters results to a single workflow.

## Response `200`

OK

- RunHistoryResponse — Paginated list of historic runs.
  - `$schema` string, uri — A URL to the JSON Schema for this object.
  - `limit` integer, required — Page size used for this response.
  - `offset` integer, required — Pagination offset used for this response.
  - `runs` RunHistoryItem[], nullable, required — Page of historic run records.
    - `canceled_at` string, date-time — Run cancellation time in UTC.
    - `completed_at` string, date-time — Run completion time in UTC.
    - `created_at` string, date-time — Run creation time in UTC.
    - `error_message` string — Error details if the run failed.
    - `org_id` string — Organization that owns the run.
    - `phone_id` string — Device that executed the run.
    - `run_id` string, required — Run identifier.
    - `run_metadata` string — Serialized arbitrary metadata for the run.
    - `started_at` string, date-time — Run start time in UTC.
    - `status` 'queued' | 'running' | 'completed' | 'failed' | 'cancelled', required — Run's final status.
    - `success` boolean — Whether the run completed successfully.
    - `trigger` 'manual' | 'scheduled' | 'api', required — Trigger identifies how the run was initiated.
    - `user_id` string, uuid, required — User who initiated the run.
    - `video_url` string — URL for the run recording video.
    - `workflow_id` string, uuid, required — Associated workflow identifier.
  - `total` integer, required — Total number of runs matching the query.

## Other responses

- `default` — Error

---

[API](https://skmtc.net/axilioai/apis/axilio-api.md) · [All operations](https://skmtc.net/axilioai/apis/axilio-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/axilioai/axilio-api/revisions/108ab4b41051/schema)
