
List Origin Check Runs for a Commit via the API
List the current check runs on a commit across all suites with GET https://api.cursor.com/v1/origin/repos/{ownerSlug}/{repoName}/commits/{sha}/check-runs. Official reference: Origin API → Checks / List Check Runs For Commit (OpenAPI OriginService_ListCheckRunsForCommit).
Origin is in Early Beta and subject to change. Authenticate with an installation access token (oit_…) or a user access token that carries repository:checks:read. Availability: Early Beta per the API overview.
The list collapses to each suite's latest attempt and, within a suite, the latest attempt per run key. Superseded attempts are omitted. Optional checkName and status filters apply to that collapsed set. Pagination uses opaque pageToken values bound to the commit and filters; changing filters with a reused token returns INVALID_ARGUMENT.
Cost: 1 point against the principal budget (ordinary read).
Path parameters
| Param | Required | Meaning |
|---|---|---|
ownerSlug |
yes | Owning entity's unique slug |
repoName |
yes | Repo name, unique to the owner |
sha |
yes | Commit SHA (40- or 64-char hex) |
Query parameters
| Param | Required | Meaning |
|---|---|---|
pageSize |
no | Max runs to return. Defaults to 30 when unset or 0; values above 100 are clamped to 100 |
pageToken |
no | Opaque cursor from a previous nextPageToken. Empty for the first page. When set, pageSize on follow-ups is ignored |
checkName |
no | Exact match on the check run's name |
status |
no | queued, in_progress, completed, or rerequested. Any other value is rejected with INVALID_ARGUMENT |
curl --request GET \
--url 'https://api.cursor.com/v1/origin/repos/OWNER_SLUG/REPO_NAME/commits/9a41f0c3d2b8e7f6a5c4d3e2f1b0a9c8d7e6f5a4/check-runs?pageSize=30&status=completed' \
--header 'Authorization: Bearer YOUR_ORIGIN_TOKEN'
Response
The body includes checkRuns (full CheckRun objects) and nextPageToken when another page exists.
Example shape from the OpenAPI:
{
"checkRuns": [
{
"id": "cr_01k2ja2000e0080000000000g7",
"repository": {
"id": "repo_01k2ja2000e0080000000000q4",
"name": "rocket",
"owner": {
"slug": "acme",
"id": "ns_01k2ja2000e0080000000000p3",
"type": "team"
}
},
"checkSuite": {
"id": "crg_01k2ja2000e0080000000000h8"
},
"sha": "9a41f0c3d2b8e7f6a5c4d3e2f1b0a9c8d7e6f5a4",
"key": "ci-8842-unit-tests",
"name": "unit-tests",
"status": "completed",
"conclusion": "success",
"detailsUrl": "https://ci.acme.dev/runs/8842",
"externalUpdatedAt": "2026-08-02T14:44:30Z",
"startedAt": "2026-08-02T14:40:00Z",
"completedAt": "2026-08-02T14:44:30Z",
"createdAt": "2026-08-01T09:30:00Z",
"updatedAt": "2026-08-02T14:45:00Z",
"externalId": "run-8842",
"actor": {
"user": {
"id": "user_01k2ja2000e0080000000000c3",
"email": "jane@acme.dev"
}
},
"output": {
"title": "Unit tests",
"summary": "128 tests passed.",
"text": "All suites green."
}
}
]
}
Use this list to discover cr_… ids for a SHA, then call Get Check Run or Create Check Run Annotations on a specific run.
Base URL: https://api.cursor.com/v1/origin.