POST /eval/update
Update Eval
Update evals using composable infra architecture.
Request Body (UpdateEvalApiRequest)
| Field | Type | Required | Description |
|---|---|---|---|
evals | UpdateEvalItem[] | No | List of evals to update (required on first call when all is false) |
all | boolean | No | When true, apply patch to every eval matching the filter fields below (minus excluded_ids) |
excluded_ids | string[] | No | UUIDs to skip even when matched by all-mode filters |
patch | UpdateEvalPatch | No | Shared change set applied to every matched row when all=true (sparse — only set fields are updated; patch.id ignored) |
search | string | No | Full-text search query |
filter_department_ids | string[] | No | Filter by department UUIDs |
department_search | string | No | Search text for department facet (no-op for row filtering) |
flag_search | string | No | Search text for flag facet (no-op for row filtering) |
idempotency_key | string | No | Operation key for ack — promotes or rejects a dormant update |
soft | boolean | No | Stage the update dormant (active=False) — propose; the ack ({idempotency_key, accept}) promotes/rejects it |
accept | boolean | No | Accept (promote) or reject dormant state. Only meaningful with idempotency_key |
Response (UpdateEvalApiResponse)
| Field | Type | Required | Description |
|---|---|---|---|
results | EvalResultItem[] | Yes | List of operation results |
idempotency_key | string | No | Idempotency key echoed back for client correlation |
evals | ListEvalApiEval[] | No | Hydrated list rows for the updated evals — same shape as /eval/search returns. Used by the client’s ghost rail to materialize the changed row from the audit .completed payload without a router refresh. None for soft-pending updates. |
Last updated on