---
title: "Update Incident"
description: "Changes headline, severity, status and the linked status pages and components of an incident."
---

`PATCH /api/incidents/:id`

Changes a manual or monitor incident: headline, summary, severity, status, and since 27 October 2026 the status pages and components it is linked to. Fields you leave out stay unchanged.

Resolving (`status: resolved`) or reopening notifies subscribers of every page the incident appears on, including the linked ones.

## Authentication

Requires role `admin` or `editor` within the incident's customer scope. An incident without a customer needs an organization-wide role or token; for any other organization it answers `404 incidentNotFound`.

- Header: `Authorization: Bearer <token>`

## Path Parameters

- `id` (required): numeric id or `publicId` (UUID).

## Request Body

| Field | Type | Description |
|-------|------|-------------|
| `status` | string | `open`, `acknowledged` or `resolved`. |
| `severity` | string | `minor`, `major`, `critical` or `maintenance`. |
| `title` | string | 1 to 200 characters. |
| `summary` | string or null | Up to 5,000 characters, `null` clears it. |
| `statusPageIds` | array | Replaces the linked pages (id or publicId). Same rules as on [Create Manual Incident](/api/monitoring/create-manual-incident). `[]` removes every link, which an incident without a customer cannot do (`400 incidentTargetRequired`). |
| `componentIds` | array | Replaces the linked components, together with `statusPageIds`. |
| `impact` | string | With `statusPageIds`: the impact of the new links. Alone: sets the impact of every existing link. |

## Example (cURL)

```bash
curl -X PATCH "$BASE_URL/api/incidents/5121" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "impact": "degraded" }'
```

## Response

`200 OK`

```json
{ "ok": true }
```

[Get Incident Details](/api/monitoring/get-incident-details) returns the links as `statusPageLinks`.

## Common Errors

- `400 Bad Request` (`invalidRequestBody`) when the body is empty or a field has the wrong type or value
- `400 Bad Request` (`incidentTargetRequired`, `statusPageIdsRequired`, `statusPageComponentNotOnPage`, `statusPageCustomerMismatch`) as on create
- `401 Unauthorized` when not authenticated
- `403 Forbidden` (`forbidden`) when your role or customer scope does not allow the change
- `403 Forbidden` (`statusPagesModuleDisabled`) when `statusPageIds` is non-empty and the status pages module is not activated for your organization; incidents without status pages are not affected
- `404 Not Found` (`incidentNotFound`, `statusPageNotFound`, `statusPageComponentNotFound`) when the incident, a page or a component does not exist in your organization
