---
title: "List evaluations"
method: GET
path: "/v1/retrievers/{retriever_id}/evaluations"
tags: ["Retriever Evaluations"]
---

# List evaluations

`GET /v1/retrievers/{retriever_id}/evaluations`

## Request

- Base URL: `https://api.mixpeek.com`
- URL: `https://api.mixpeek.com/v1/retrievers/{retriever_id}/evaluations`
- Auth: HTTP bearer and API key in header `X-Namespace`

List all evaluations for a retriever with optional filters

## Path parameters

- `retriever_id` string, required

## Query parameters

- `status` 'pending' | 'in_progress' | 'completed' | 'failed': Status of an evaluation run.
- `dataset_name` string, nullable: Filter by dataset name
- `page` integer: Page number (1-indexed)
- `page_size` integer: Items per page

## Response `200`

Successful Response

- EvaluationListResponse: Response for listing evaluations.
  - `evaluations` EvaluationRecord[], required: List of evaluations
    - `evaluation_id` string, required: Unique evaluation identifier
    - `retriever_id` string, required: ID of retriever being evaluated
    - `dataset_id` string, required: ID of dataset used for evaluation
    - `dataset_name` string, required: Name of dataset
    - `config` EvaluationConfig, required: Configuration for an evaluation run.
      - `k_values` integer[], nullable: K values for Precision@K, Recall@K, NDCG@K, etc.
      - `metrics` string[], nullable: List of metrics to calculate. Available: precision, recall, f1, f2, map, ndcg, mrr. f2 is the recall-weighted F-beta (beta=2) — useful when missing a relevant doc costs more than a false positive.
    - `status` 'pending' | 'in_progress' | 'completed' | 'failed', required: Status of an evaluation run.
    - `created_at` string, date-time, required: When evaluation was created
    - `updated_at` string, date-time, required: Last update timestamp
    - `completed_at` string, date-time, nullable: When evaluation completed
    - `namespace_id` string, required: Namespace ID
    - `internal_id` string, required: Internal organization ID
    - `query_count` integer, required: Number of queries evaluated
    - `overall_metrics` object, nullable: Aggregated metrics across all queries
    - `metrics_by_k` object, nullable: Metrics broken down by K value (keys are string K values like '5', '10', '20')
    - `total_queries` integer, nullable: Total queries in the dataset for this run (= evaluated_queries + skipped_queries).
    - `evaluated_queries` integer, nullable: Number of queries that produced metrics. May be < total_queries when some queries were skipped (skip-and-continue on empty/failing input).
    - `skipped_queries` integer, nullable: Number of queries skipped during evaluation (empty query_input or a per-query execution failure) — these did not fail the whole eval.
    - `error_message` string, nullable: Error message if failed
    - `query_results` QueryOutcome[], nullable: Per-query outcomes: which branch each attempted query took and the actual error for skips, so an all-skipped run is actionable from the record without worker-log access.
      - `query_id` string, required: Ground-truth query id from the dataset
      - `status` string, required: 'evaluated' (produced metrics) or 'skipped' (see error)
      - `error` string, nullable: The per-query execution error when status='skipped'; null otherwise.
      - `retrieved_count` integer, nullable: Documents retrieved when status='evaluated'; null for skips.
    - `baseline_evaluation_id` string, nullable: For a trained weight set's evaluation: the evaluation of the live configuration on the same dataset that this run was gated against.
    - `weight_set_id` string, nullable: For a trained weight set's evaluation: the weight set this run scored. When the verdict passed, the stage's learning_config.shipped_weight_set carries the same id.
    - `verdict` GateVerdict: The evaluation gate's verdict on a candidate against the live baseline.
      - `passed` boolean, required: True only when the candidate shipped: no metric regressed and the primary metric scored strictly higher than the baseline.
      - `reason` string, required: Why the candidate shipped or was refused.
      - `primary_metric` string, nullable: Metric the candidate had to beat the baseline on.
      - `compared_metrics` integer: Number of metrics compared between the two evaluations.
      - `regressed_metrics` string[]: Metrics that dropped past their threshold.
      - `skipped_metrics` string[]: Baseline metrics the candidate did not produce.
      - `per_metric` object: Baseline and candidate score for every compared metric.
  - `total` integer, required: Total count
  - `page` integer, required: Current page
  - `page_size` integer, required: Page size

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `422`: Unprocessable Entity
- `429`: Too Many Requests
- `500`: Internal Server Error
- `503`: Service Unavailable

## Changes

- **2026-10-09** `61a175e8eb9a`: 1 warning, 5 info
  - removed the optional property `detail` from the response with the `422` status
  - added the non-success response with the status `429`
  - added the non-success response with the status `503`
  - added the optional property `success` to the response with the `422` status
  - …2 more
- **2026-10-06** `b75474e978ff`: 3 info
  - added the optional property `evaluations/items/baseline_evaluation_id` to the response with the `200` status
  - added the optional property `evaluations/items/verdict` to the response with the `200` status
  - added the optional property `evaluations/items/weight_set_id` to the response with the `200` status
- **2026-08-23** `5307993e44d3`: 1 info
  - added the optional property `evaluations/items/query_results` to the response with the `200` status
- **2026-08-09** `5d4c905106b4`: 1 info
  - the endpoint scheme security `BearerAuth AND NamespaceHeader` was added to the API

[Operation history](https://skmtc.dev/mixpeek/apis/mixpeek-api/changes/v1/retrievers/:retriever_id/evaluations/get.md)

---

[API](https://skmtc.dev/mixpeek/apis/mixpeek-api.md) - [All operations](https://skmtc.dev/mixpeek/apis/mixpeek-api/llms.txt) - [OpenAPI document](https://skmtc.dev/mixpeek/apis/mixpeek-api/revisions/790bc16455f6?raw)
