---
title: "Incident Management"
description: "Public REST API for Uptimeify Incident Management (IM): ingest alerts from your own monitoring systems and manage incidents programmatically."
---

Incident Management (IM) is a separate domain from Monitoring: a two-level alert/incident model with teams, on-call schedules, and escalation policies. This section covers the public REST endpoints for ingesting alerts and managing incidents.

## Authentication

Every endpoint below requires an **organization-wide** API token:

```bash
BASE_URL="https://uptimeify.io"
TOKEN="wsm_<your-organization-wide-api-token>"
```

Create one via [Create Organization Token](/api/api-tokens/create-organization-token) and leave `customerId` unset. A token created **with** a `customerId` (a customer-scoped token) is always rejected with `403 Forbidden` (`imAccessDenied`); Incident Management has no customer-facing surface, by design.

Incident Management must also be **activated** for your organization, or every endpoint below returns `403 Forbidden` (`imNotEnabled`).

## Endpoints

- [Events Ingest](./events-ingest): `POST /api/im/events`
- [List Incidents](./list-incidents): `GET /api/im/incidents`
- [Get Incident](./get-incident): `GET /api/im/incidents/:id`
- [Create Incident](./create-incident): `POST /api/im/incidents`
- [Acknowledge / Update Incident Status](./acknowledge-incident): `POST /api/im/incidents/:id/status`
- [Resolve Incident](./resolve-incident): `POST /api/im/incidents/:id/resolve`
- [Teams](./teams): `GET /api/im/teams`
- [Schedules](./schedules): `GET/POST /api/im/schedules`
- [Schedule Overrides](./schedule-overrides): `GET/POST /api/im/schedules/:id/overrides`
- [Who Is On Call](./on-call): `GET /api/im/on-call`

## Alert source setup guides

Prefer to send alerts from an existing monitoring tool instead of calling the API directly? See the [alert source setup guides](./alert-sources) for step-by-step instructions for [Zabbix](./alert-sources/zabbix), [Datadog](./alert-sources/datadog), [Grafana Alerting](./alert-sources/grafana-alerting), [Prometheus Alertmanager](./alert-sources/prometheus-alertmanager), [Sentry](./alert-sources/sentry), and any [custom webhook](./alert-sources/custom-webhook). Each uses its own per-source ingest URL (`POST /api/im/ingest/:token`), separate from the Events Ingest endpoint above.

## Error codes

See [Error codes and known API pitfalls](/api/error-codes-and-known-pitfalls) for the full list of `data.code` values these endpoints can return.
