---
title: "List deployable improvement candidates for monitoring"
method: GET
path: "/monitoring/improvement-candidates"
tags: ["monitoring"]
---

# List deployable improvement candidates for monitoring

`GET /monitoring/improvement-candidates`

List workspace-scoped monitoring improvement candidates.

Args:
    limit: Requested maximum number of candidates.
    auth: Authentication result.
    service: Improvement-candidates service.

Returns:
    ImprovementCandidatesResponse with zero or more candidates.

## Query parameters

- `limit` integer — Maximum candidates to return, capped at 50.

## Response `200`

Successful Response

- ImprovementCandidatesResponse — Response for listing monitoring improvement candidates. Attributes: candidates: Improvement candidates after workspace-level filtering.
  - `candidates` ImprovementCandidate[], required
    - `project_id` string, required
    - `project_name` string, required
    - `training_job_id` string, required
    - `adapter_name` string, required
    - `base_model` string, required
    - `score` number, required
    - `score_name` string, required
    - `eval_metrics` object, required
    - `eval_sample_count` integer, nullable
    - `evaluated_at` string, date-time, nullable
    - `training_completed_at` string, date-time, nullable
    - `source` 'agent_selected' | 'evaluation_fallback', required
    - `agent_run_id` string, nullable
    - `agent_remarks` string, nullable
    - `evidence_grade` 'native' | 'recomputed' | 'unestablished' — How far a persisted score may be compared with another score.
    - `evidence_note` string
    - `persisted_recipe_seed_repeat` 'unsupported' | 'no_persisted_match' | 'persisted_match_evaluated' | 'seed_not_recorded' — Whether an effective-recipe match under another seed was evaluated. The public name remains stable, but equality now uses the dispatch-time effective recipe digest rather than reconstructed ORM columns (ENG-6562). Score agreement is not implied.

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-24** `1cffaad2a921` — 1 warning, 2 info
  - removed the optional property `detail` from the response with the `422` status
  - added the optional property `candidates/items/persisted_recipe_seed_repeat` to the response with the `200` status
  - added the required property `error` to the response with the `422` status
- **2026-08-19** `b92f75fd3b61` — 2 info
  - added the optional property `candidates/items/evidence_grade` to the response with the `200` status
  - added the optional property `candidates/items/evidence_note` to the response with the `200` status

[Change history](https://skmtc.dev/pioneer/apis/brain-api/changes/monitoring/improvement-candidates/get.md)

---

[API](https://skmtc.dev/pioneer/apis/brain-api.md) · [All operations](https://skmtc.dev/pioneer/apis/brain-api/llms.txt) · [OpenAPI document](https://skmtc.dev/pioneer/apis/brain-api/revisions/1cffaad2a921?raw)
