---
title: "Get runs for a provided Benchmark."
method: GET
path: "/v1/benchmarks/{id}/runs"
tags: ["Benchmark"]
---

# Get runs for a provided Benchmark.

`GET /v1/benchmarks/{id}/runs`

Get runs for a previously created Benchmark.

## Path parameters

- `id` string, required

## Query parameters

- `limit` integer
- `starting_after` string
- `include_total_count` boolean

## Response `200`

OK

- BenchmarkRunListView
  - `runs` BenchmarkRunView[], required — List of BenchmarkRuns matching filter.
    - `id` string, required — The ID of the BenchmarkRun.
    - `benchmark_id` string, nullable — The ID of the Benchmark definition. Present if run was created from a benchmark definition.
    - `name` string, nullable — The name of the BenchmarkRun.
    - `start_time_ms` integer, required — The time the benchmark run execution started (Unix timestamp milliseconds).
    - `duration_ms` integer, nullable — The duration for the BenchmarkRun to complete.
    - `state` 'running' | 'canceled' | 'completed' | 'failed', required
    - `score` number, float, nullable — The final score across the BenchmarkRun, present once completed. Calculated as sum of scenario scores / number of scenario runs.
    - `metadata` object, required — User defined metadata to attach to the benchmark run for organization.
    - `purpose` string, nullable — Purpose of the run.
    - `environment_variables` object, nullable — Environment variables used to run the benchmark.
    - `secrets_provided` object, nullable — User secrets used to run the benchmark. Example: {"DB_PASS": "DATABASE_PASSWORD"} would set the environment variable 'DB_PASS' on all scenario devboxes to the value of the secret 'DATABASE_PASSWORD'.
  - `has_more` boolean, required
  - `total_count` integer, nullable

## Changes

- **2026-03-24** `32e4b2dfb757` — 1 warning, 1 info
  - removed the optional property `remaining_count` from the response with the `200` status
  - added the new optional `query` request parameter `include_total_count`
- **2026-03-19** `0568973e19e8` — 1 warning
  - added the new `failed` enum value to the `runs/items/state` response property for the response status `200`
- **2026-02-19** `8704a652545c` — 4 breaking
  - the response property `remaining_count` became nullable for the status `200`
  - the response property `total_count` became nullable for the status `200`
  - the response property `remaining_count` became optional for the status `200`
  - the response property `total_count` became optional for the status `200`
- **2026-01-19** `8ebd9dbfacb1` — 2 breaking
  - the response property `runs/items/benchmark_id` became nullable for the status `200`
  - the response property `runs/items/benchmark_id` became optional for the status `200`

[Change history](https://skmtc.dev/runloopai/apis/runloop-api/changes/v1/benchmarks/:id/runs/get.md)

---

[API](https://skmtc.dev/runloopai/apis/runloop-api.md) · [All operations](https://skmtc.dev/runloopai/apis/runloop-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/runloopai/runloop-api/revisions/e9dc776053e4/schema)
