Create incident

POST /incidents

Create a new incident.

Auth: Bearer token (write scope)

Body parameters

titlestringrequiredbody

Incident title.

severitystringbodydefault: minor

Severity: critical, major, minor.

statusstringbodydefault: investigating

Initial status.

messagestringbody

Initial status update message (shown to subscribers).

monitor_idsstring[]body

IDs of affected monitors.

Request

bash
curl -X POST https://happyuptime.com/api/v1/incidents \ -H "Authorization: Bearer hu_your_api_key" \ -H "Content-Type: application/json" \ -d '{ "title": "Database connectivity issues", "severity": "major", "status": "investigating", "message": "We are investigating slow database queries." }'

Response

json
{ "data": { "id": "inc_848", "project_id": "proj_xyz", "title": "Payment processing delays", "status": "investigating", "severity": "major", "started_at": "2026-03-07T16:00:00Z", "resolved_at": null, "created_at": "2026-03-07T16:00:00Z", "updated_at": "2026-03-07T16:00:00Z" }}

Happy Uptime also creates incidents automatically when monitors go down. Severity is derived from how many regions are affected: all regions = critical, some regions = major, one region = minor.