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

# List evaluations

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

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
  - `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` — Validation Error
- `500` — Internal Server Error

---

[API](https://skmtc.net/mixpeek/apis/mixpeek-api.md) · [All operations](https://skmtc.net/mixpeek/apis/mixpeek-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mixpeek/mixpeek-api/versions/04b379bdbb7c/schema)
