Compare Two Runs — GET /api/v1/runs/compare
Compare Two Runs
Compare two test runs and return per-test + aggregate deltas.
Endpoint: GET /api/v1/runs/compare
Authentication: Send a signed-in user’s access token in Authorization: Bearer <access token>, or an API key in X-API-Key: <API key>.
Parameters
Section titled “Parameters”| Name | In | Required | Type | Default | Description |
|---|---|---|---|---|---|
left | query | yes | string (uuid) | ||
right | query | yes | string (uuid) | ||
suite_name | query | no | string or null | Optional suite scope; matched case-insensitively | |
include_ai_report | query | no | boolean | true | Attach cached or generated AI comparison report |
X-API-Key | header | no | string or null | API key, as an alternative to the access token (see Authentication). |
Request body
Section titled “Request body”No request body.
Responses
Section titled “Responses”| Status | Meaning | Body |
|---|---|---|
200 | Successful Response | RunCompareResponse (application/json) |
422 | Validation Error | HTTPValidationError (application/json) |
Errors this endpoint returns, read from its source code:
400, with the message “left and right must be different run ids”404, with messages such as “Left run not found”, “Right run not found”
It can also return 401 if your credential is missing or expired, 403 if your credential does not allow this request, and 404 if the item does not exist or you cannot see it. Your role, your project membership and the key’s scope decide what a credential allows. See Errors and retries.
More details
Section titled “More details”- Group: Run Compare
- Operation ID:
compare_two_runs_api_v1_runs_compare_get - Source code:
backend/app/routers/run_compare.py, line 34 - Specification: OpenAPI JSON