---
title: "List Runs"
method: GET
path: "/api/v1/optimization/runs"
tags: ["optimization"]
---

# List Runs

`GET /api/v1/optimization/runs`

List optimization runs, most recent first.

## Query parameters

- `status` string, nullable — Filter by status: running, completed, failed
- `limit` integer — Maximum number of runs to return.
- `offset` integer — Pagination offset into the run list.

## Response `200`

Successful Response

- OptimizationRunResponse[]
  - `id` string, required — Unique run identifier.
  - `status` string, required — Run status: running, completed, or failed.
  - `module_slug` string, nullable — Module slug when server-side dispatch was used.
  - `program_spec` string, required — DSPy program specification that was optimized.
  - `optimizer` string, required — Optimizer backend that was used.
  - `auto` string, nullable — Optimization intensity level.
  - `train_ratio` number — Train/validation split ratio.
  - `dataset_path` string, nullable — Path to the dataset used.
  - `reflection_profile_id` string, nullable — LLM provider profile id used for GEPA reflection/proposal, when selected.
  - `reflection_model_id` string, nullable — Model id used for GEPA reflection/proposal, when selected.
  - `raw_trace_export_path` string, nullable — Full raw trace export path, when present.
  - `distilled_trace_bundle_path` string, nullable — Distilled GEPA trace evidence bundle path, when present.
  - `prompt_snapshot_path` string, nullable — Prompt snapshot or diff artifact path, when present.
  - `train_examples` integer, nullable — Number of training examples used.
  - `validation_examples` integer, nullable — Number of validation examples used.
  - `validation_score` number, nullable — Validation score from the optimized program.
  - `output_path` string, nullable — Filesystem path where the optimized program was saved.
  - `manifest_path` string, nullable — Filesystem path to the optimization manifest.
  - `error` string, nullable — Error message when the run failed.
  - `phase` string, nullable — Current phase of the optimization run.
  - `started_at` string, required — ISO timestamp when the run started.
  - `completed_at` string, nullable — ISO timestamp when the run completed.

## Other responses

- `400` — Invalid status filter.
- `401` — Authentication is required or the provided token is invalid.
- `422` — Validation Error

## Changes

- **2026-06-12** `4a415e33915a` — 5 info
  - added the optional property `items/distilled_trace_bundle_path` to the response with the `200` status
  - added the optional property `items/prompt_snapshot_path` to the response with the `200` status
  - added the optional property `items/raw_trace_export_path` to the response with the `200` status
  - added the optional property `items/reflection_model_id` to the response with the `200` status
  - …1 more
- **2026-05-23** `6178f925cdec` — 1 breaking, 3 info
  - the `detail` response's property type/format changed from `array`/`` to ``/`` for status `422`
  - added `subschema #1, subschema #2` to the `detail` response property `anyOf` list for the response status `422`
  - added the required property `code` to the response with the `422` status
  - added the required property `message` to the response with the `422` status
- **2026-04-23** `984eccdbbb9b` — 1 info
  - added the non-success response with the status `400`
- **2026-04-18** `1f45411d7556` — 1 breaking
  - the `items/id` response's property type/format changed from `integer`/`` to `string`/`` for status `200`
- **2026-04-14** `08de6302fd74` — 1 info
  - endpoint added

[Full history](https://skmtc.dev/qredence/apis/fleet-rlm/changes/api/v1/optimization/runs/get.md)

---

[API](https://skmtc.dev/qredence/apis/fleet-rlm.md) · [All operations](https://skmtc.dev/qredence/apis/fleet-rlm/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/qredence/fleet-rlm/revisions/e25aaded81b9/schema)
