---
title: "Resolve Escalation Route"
method: POST
path: "/api/v1/escalations/{escalation_id}/resolve"
tags: ["escalations"]
---

# Resolve Escalation Route

`POST /api/v1/escalations/{escalation_id}/resolve`

Mark an escalation handled. Resolving twice keeps the first resolution. Human only.

## Path parameters

- `escalation_id` string, uuid, required

## Headers

- `Authorization` string, nullable
- `X-Request-ID` string, nullable

## Request body

- EscalationResolve
  - `note` string, nullable

## Response `200`

Successful Response

- EscalationRead
  - `id` string, uuid, required
  - `agent_id` string, uuid, required
  - `org_id` string, uuid, required
  - `score` number, required
  - `reason` string, required
  - `created_at` string, date-time, required
  - `session_id` string, nullable, required
  - `turn` integer, nullable, required
  - `trace_id` string, nullable, required
  - `check_id` string, nullable, required
  - `source` string, required
  - `status` string, required
  - `resolved_by` string, uuid, nullable, required
  - `resolved_at` string, date-time, nullable, required
  - `note` string, nullable, required

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-27** `b20a3bdd6219` — 1 breaking, 1 info
  - removed the required property `proxy_id` from the response with the `200` status
  - added the required property `agent_id` to the response with the `200` status
- **2026-09-22** `66575c8854c1` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/xenovia/apis/controlplane/changes/api/v1/escalations/:escalation_id/resolve/post.md)

---

[API](https://skmtc.dev/xenovia/apis/controlplane.md) · [All operations](https://skmtc.dev/xenovia/apis/controlplane/llms.txt) · [OpenAPI document](https://skmtc.dev/xenovia/apis/controlplane/revisions/b20a3bdd6219?raw)
