Skip to content

Create an incident on the status page in the path.

POST
/status_page/{status_page_id}/incident
curl --request POST \
--url https://api.siteqwality.com/status_page/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/incident \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "status_page_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "title": "example", "severity": "minor", "message": "example", "affected_http_job_ids": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ], "service_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "monitors": [ { "monitor_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "monitor_type": "http", "impact": "degraded" } ] }'

The same as POST /incident with this page as status_page_id. A body status_page_id that names another page is a 400.

status_page_id
required
string format: uuid

Status page identifier

Media type application/json
object
status_page_id
string | null format: uuid
title
required
string
severity
One of:

Defaults to the service’s default severity; required without a service_id.

string
Allowed values: minor major critical
message
required
string
affected_http_job_ids

Deprecated: use monitors.

array | null
service_id
string | null format: uuid
monitors

Monitors of any kind; repeats and overlap with affected_http_job_ids are fine.

array | null

A monitor to list on an incident.

object
monitor_id
required
string format: uuid
monitor_type
required
string
Allowed values: http cron browser tls dns dns_record page_speed alert_rule
impact
One of:
string
Allowed values: degraded partial_outage major_outage

Incident created

Media type application/json
object
id
required
string format: uuid
status_page_id

Deprecated: the first page it was created on. status_page_ids lists every page.

string | null format: uuid
status_page_ids
required

Every status page the incident is published on.

Array<string>
title
required
string
public_title

The title status pages show; null shows title.

string | null
severity
required
string
Allowed values: minor major critical
status
required
string
Allowed values: investigating identified monitoring resolved
responder_status
required
string
Allowed values: triggered acknowledged resolved
service_id
string | null format: uuid
created_at
required
string format: date-time
resolved_at
string | null format: date-time
acknowledged_at
string | null format: date-time
first_paged_at

First recorded successful page; absent when no page_sent event exists. Detail endpoints only.

string | null format: date-time
mitigated_at

First transition to public monitoring status. Detail endpoints only.

string | null format: date-time
unassigned_after_exhaustion

True while nobody acknowledged it and its escalation policy ran out, so nobody owns it. Detail endpoints only.

boolean
acknowledged_by
string | null format: uuid
resolved_by

Who resolved it; null for automatic and API-key resolves.

string | null format: uuid
auto_created
required

True when the incident was opened automatically by a monitor state change; false for incidents created manually.

boolean
updates
required
Array<object>
object
id
required
string format: uuid
status
required

The public status when it was posted.

string
Allowed values: investigating identified monitoring resolved
message
required
string
created_at
required
string format: date-time
visibility
required

public updates show on status pages; internal ones only here.

string
Allowed values: public internal
author_user_id

Who posted it; null for the system, API keys and older updates.

string | null format: uuid
affected_http_job_ids
required

Deprecated: the http entries of monitors, for one release.

Array<string>
merged_into_id

The incident this one was merged into; it is then resolved.

string | null format: uuid
resolution_reason

merged for a merged incident, else null.

string | null
monitors
required

Every monitor of the incident. Empty on list endpoints.

Array<object>
object
monitor_id
required
string format: uuid
monitor_type
required
string
Allowed values: http cron browser tls dns dns_record page_speed alert_rule
name

Null when the monitor was deleted.

string | null
impact
One of:

What status pages show for it; null derives it from the incident’s severity.

string
Allowed values: degraded partial_outage major_outage
source
required

auto when a failure joined it, manual when someone added it.

string
Allowed values: auto manual
joined_at
required
string format: date-time
recovered_at
string | null format: date-time
participants
required

Who works it, the lead first. Empty on list endpoints.

Array<object>
object
user_id
required
string format: uuid
role
required
string
Allowed values: lead responder comms
added_by

Who added them; the acknowledger for an automatic lead.

string | null format: uuid
added_at
required
string format: date-time
paged_at

When they were paged on being added; null when they were not.

string | null format: date-time
merged_from
required

The incidents merged into this one, each with its own updates. Empty on list endpoints.

Array<object>

An incident merged into this one; its updates stay on it.

object
id
required
string format: uuid
title
required
string
created_at
required
string format: date-time
updates
required
Array<object>
object
id
required
string format: uuid
status
required

The public status when it was posted.

string
Allowed values: investigating identified monitoring resolved
message
required
string
created_at
required
string format: date-time
visibility
required

public updates show on status pages; internal ones only here.

string
Allowed values: public internal
author_user_id

Who posted it; null for the system, API keys and older updates.

string | null format: uuid
Example
{
"severity": "minor",
"status": "investigating",
"responder_status": "triggered",
"updates": [
{
"status": "investigating",
"visibility": "public"
}
],
"monitors": [
{
"monitor_type": "http",
"impact": "degraded",
"source": "auto"
}
],
"participants": [
{
"role": "lead"
}
],
"merged_from": [
{
"updates": [
{
"status": "investigating",
"visibility": "public"
}
]
}
]
}

Invalid request body

Missing or invalid authentication

Status page, service or monitor not found

Internal server error