Skip to main content
GET
List a test's runs

Authorizations

Authorization
string
header
required

An API key, sent as Authorization: Bearer <key>. An organization admin creates one in the Trunk app under Settings → Developer → API Keys and chooses the merge-queue permissions it holds; a key with none can read merge queues but change nothing. Those permissions scope merge queue only: every key can use the Flaky Tests and Dynamic CI endpoints, including their writes, whatever permissions it holds.

Path Parameters

testId
string
required

The test's globally unique id.

Minimum string length: 1
Example:

"bfeebcf4-0000-8000-8000-000000000001"

Query Parameters

limit
integer
default:25

Page size, between 1 and 100.

Required range: 1 <= x <= 100
Example:

25

cursor
string

Opaque cursor from a previous response's nextCursor. A cursor is bound to the operation and filter it was minted for.

Example:

"AQEKZm9vYmFy"

includeTotal
boolean
default:false

Set true to include total in the response. Costs an extra COUNT query, so it is off by default.

Example:

false

conclusion
enum<string>

Only runs that finished this way.

Available options:
success,
failure,
skipped
Example:

"failure"

branches
string

Comma-separated branch globs, e.g. main,release-*. * matches any run of characters, ? exactly one. Cannot be combined with pullRequestOnly.

Minimum string length: 1
Example:

"main,release-*"

pullRequestOnly
boolean

Only runs on pull-request branches. Cannot be combined with branches.

Example:

true

quarantineState
enum<string>

Only runs recorded while the test was in this quarantine state.

Available options:
quarantined,
notQuarantined
Example:

"quarantined"

startedAfter
string<date-time>

Only runs that started at or after this time.

Example:

"2026-06-01T00:00:00.000Z"

startedBefore
string<date-time>

Only runs that started strictly before this time.

Example:

"2026-06-30T00:00:00.000Z"

Response

A page of test runs

data
object[]
required
Maximum array length: 100
nextCursor
string | null
required

Opaque cursor for the next page, or null on the last page. Pass it back verbatim as cursor; do not construct or inspect one.

Example:

"AQEKZm9vYmFy"

hasMore
boolean
required

True when another page is available.

Example:

true

total
integer

Total rows matching the filter. Present only when the request set includeTotal=true.

Example:

1247