Skip to main content
GET
/
v1
/
workflows
/
experiments
/
runs
from retab import Retab

client = Retab()

page = client.workflows.experiments.runs.list(
    experiment_id="exp_abc",
)
for run in page.data:
    print(run.id, run.lifecycle.status, run.score)
{
  "data": [
    {
      "id": "exprun_2",
      "workflow": {
        "workflow_id": "wf_abc123",
        "version_id": "draft_2026_05_18"
      },
      "trigger": { "type": "api" },
      "lifecycle": { "status": "completed" },
      "timing": {
        "created_at": "2026-05-02T11:00:00Z",
        "started_at": "2026-05-02T11:00:01Z",
        "completed_at": "2026-05-02T11:04:18Z",
        "duration_ms": 258221
      },
      "experiment_id": "exp_abc",
      "block_id": "extract-invoice",
      "block_kind": "extract",
      "n_consensus": 5,
      "total_document_count": 12,
      "completed_document_count": 12,
      "error_count": 0,
      "score": 0.87,
      "definition_fingerprint": "0ff93ddc7cefcb42",
      "documents_fingerprint": "ddd95baadce6045f"
    }
  ],
  "list_metadata": {
    "before": null,
    "after": null
  }
}
List experiment runs, newest first. Filter by workflow_id, experiment_id, block_id, lifecycle status, trigger type, date range, or id pagination. For per-document execution data, use List Experiment Run Results; for consensus scores, use Get Experiment Run Metrics. The response uses the canonical Retab list envelope: { "data": [...], "list_metadata": { "before": null, "after": null } }.
from retab import Retab

client = Retab()

page = client.workflows.experiments.runs.list(
    experiment_id="exp_abc",
)
for run in page.data:
    print(run.id, run.lifecycle.status, run.score)
{
  "data": [
    {
      "id": "exprun_2",
      "workflow": {
        "workflow_id": "wf_abc123",
        "version_id": "draft_2026_05_18"
      },
      "trigger": { "type": "api" },
      "lifecycle": { "status": "completed" },
      "timing": {
        "created_at": "2026-05-02T11:00:00Z",
        "started_at": "2026-05-02T11:00:01Z",
        "completed_at": "2026-05-02T11:04:18Z",
        "duration_ms": 258221
      },
      "experiment_id": "exp_abc",
      "block_id": "extract-invoice",
      "block_kind": "extract",
      "n_consensus": 5,
      "total_document_count": 12,
      "completed_document_count": 12,
      "error_count": 0,
      "score": 0.87,
      "definition_fingerprint": "0ff93ddc7cefcb42",
      "documents_fingerprint": "ddd95baadce6045f"
    }
  ],
  "list_metadata": {
    "before": null,
    "after": null
  }
}

Authorizations

Api-Key
string
header
required

Query Parameters

workflow_id
string | null
experiment_id
string | null
block_id
string | null
status
enum<string> | null
Available options:
pending,
queued,
running,
completed,
error,
cancelled
exclude_status
enum<string> | null
Available options:
pending,
queued,
running,
completed,
error,
cancelled
trigger_type
string | null
from_date
string | null
to_date
string | null
sort_by
string
default:created_at
before
string | null
after
string | null
limit
integer
default:20
Required range: 1 <= x <= 100
order
enum<string>
default:desc
Available options:
asc,
desc

Response

Successful Response

A page of WorkflowExperimentRun resources. data holds the items and list_metadata carries the before/after cursors; pass after to fetch the next page.

data
WorkflowExperimentRun · object[]
required
list_metadata
ListMetadata · object
required

Boundary resource IDs for page navigation.