---
title: "Resolve an AI incident"
method: POST
path: "/api/v1/rbi/incidents/{id}/resolve"
tags: ["RBI Compliance"]
---

# Resolve an AI incident

`POST /api/v1/rbi/incidents/{id}/resolve`

## Request

- Base URL: `https://orchestrator.getaxonflow.com`
- URL: `https://orchestrator.getaxonflow.com/api/v1/rbi/incidents/{id}/resolve`
- Auth: none declared. Required headers: `X-Org-ID`
- TypeScript: <https://skmtc.dev/getaxonflow/apis/axonflow-orchestrator-api/docs/api/v1/rbi/incidents/:id/resolve/post.ts> (a function with typed inputs; its response is checked against the schema)

Moves the incident to `resolved`, stamps `resolved_at`, and records the
resolution summary.

`resolution` is required. This operation is the only writer of
`resolution_summary` on an incident record — `PATCH
/api/v1/rbi/incidents/{id}` does not carry the field — so an incident
resolved without one could never acquire it afterwards.

Registered since the module's first release and unserved until #3935:
the handler's sub-route switch had no case for `resolve`, so every
request answered 405.

## Path parameters

- `id` string, required

## Headers

- `X-Org-ID` string, required

## Request body

- object
  - `resolution` string, required: How the incident was resolved. Stored as `resolution_summary`.

## Response `200`

The resolved AI incident

- object

## Other responses

- `400`: Invalid request (coded envelope)
- `401`: Unauthorized - missing or invalid organization scope (coded envelope)
- `404`: Resource not found (coded envelope)

---

[API](https://skmtc.dev/getaxonflow/apis/axonflow-orchestrator-api.md) - [All operations](https://skmtc.dev/getaxonflow/apis/axonflow-orchestrator-api/llms.txt) - [OpenAPI document](https://skmtc.dev/getaxonflow/apis/axonflow-orchestrator-api/revisions/f408ef3ec9dd?raw)
