Get Execution Metrics — GET /api/v1/analytics/execution-metrics
Get Execution Metrics
The project’s execution time per UTC day (wall clock and summed), p50/p95 per suite against the previous window, the biggest suite regressions (median of the last 5 runs >= 1.5x the 20 before, same branch) and test regressions (window p50 vs the duration baseline, >= 10 samples), the slowest tests (by p95) and the duration histogram. suite_name (repeatable) narrows every block and switches per_day to the suite grain.
Endpoint: GET /api/v1/analytics/execution-metrics
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 |
|---|---|---|---|---|---|
branch | query | no | string or null | Only runs of this branch (exact, case-sensitive, 1-255 characters). Absent or empty: every branch. | |
top | query | no | integer | 20 | Size of slowest_tests and of each regressions list, 1-100. |
suite_limit | query | no | integer | 50 | Size of the per-suite table, 1-200. |
project_id | query | yes | string | Project to read. Single-valued. Required: without it the request is refused with 422 ‘missing_parameter’ (All Projects is not supported here). | |
release_id | query | no | array of string or null | Repeatable (OR, at most 20): a release UUID or ‘unattributed’ for runs no release claims. | |
suite_name | query | no | array of string or null | Repeatable (OR, at most 50), 1-500 characters; matched case-insensitively on the effective suite. | |
days | query | no | integer | 30 | Window in days, 1-365. |
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 | ExecutionMetricsResponse (application/json) |
422 | Validation Error | HTTPValidationError (application/json) |
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: Execution Metrics
- Tags:
Execution Metrics,Analytics - Operation ID:
get_execution_metrics_api_v1_analytics_execution_metrics_get - Source code:
backend/app/routers/execution_metrics.py, line 114 - Specification: OpenAPI JSON