---
title: "Archive an eval prompt set"
method: DELETE
path: "/api/v1/ai/eval/prompt-sets/{promptSetId}"
tags: ["AI Eval"]
---

# Archive an eval prompt set

`DELETE /api/v1/ai/eval/prompt-sets/{promptSetId}`

Archive (soft-delete) a prompt set. As part of the archive, Omni attempts to cancel every in-flight agentic job associated with the set; the returned `cancelled_job_count` reports how many were cancelled. The archive is committed before run cancellations start. Cancellation is best-effort — the database cancel is authoritative, but the Redis stop-signal that halts a running worker can lag. If the archive itself or a whole run-cancellation fails, the endpoint returns 500, but the prompt set is already archived. The call is idempotent — retrying drains any remaining runs.

## Path parameters

- `promptSetId` string, uuid, required — The unique identifier of the eval prompt set.

## Response `200`

Prompt set archived successfully.

- EvalPromptSetsDeleteResponse
  - `cancelled_job_count` integer, required — Number of in-flight agentic jobs associated with this prompt set that were cancelled as part of the archive.
  - `is_archived` true, required — Always `true` on success — archives the prompt set.

## Other responses

- `400` — Invalid `promptSetId` — must be a UUID.
- `401` — Missing or invalid API key.
- `403` — Insufficient permissions.
- `404` — Prompt set not found.
- `500` — Archive committed but a run-cancellation failed; the set is already archived — safe to retry.

---

[API](https://skmtc.net/omniapp/apis/omni-api.md) · [All operations](https://skmtc.net/omniapp/apis/omni-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/omniapp/omni-api/revisions/4701f292c621/schema)
