Referință API pentru incidente

Obține toate incidentele paginii

Endpoint:

GET /v1/:page_id/incidents?page=:page&per_page=:per_page
  • Numărul implicit al paginii este 1.
  • Valoarea implicită pentru per_page este 50, iar maximul este 100 de elemente pe pagină.

Exemplu de răspuns:

[
{
"id": "ckf01m59ueaqb0a32wrljz1yd",
"name": "Rocket is going down",
"started": "2020-09-12T19:05:17.398Z",
"status": "RESOLVED",
"resolved": "2020-09-12T19:09:04.498Z",
"updates": [
{
"id": "ckf01m5ioeaqi0a32jtv8ovp8",
"message": "We are currently investigating this incident.",
"messageHtml": "<p>We are currently investigating this incident.</p>",
"status": "INVESTIGATING",
"notify": true,
"started": "2020-09-12T19:05:17.398Z",
"ended": null,
"duration": 228,
"createdAt": "2020-09-12T19:08:50.160Z"
},
{
"id": "ckf01mnk9eaui0a32mmhgq68g",
"message": "This incident has been resolved.",
"messageHtml": "<p>This incident has been resolved.</p>",
"status": "RESOLVED",
"notify": true,
"started": "2020-09-12T19:09:04.498Z",
"ended": null,
"duration": null,
"createdAt": "2020-09-12T19:09:13.545Z"
}
],
"components": [
{
"id": "ckf01fvnxywz50a35nh1qzssm",
"name": "Website",
"status": "PARTIALOUTAGE",
"showUptime": true,
"site": {
"id": "ckf01fonve9i40a32oas5b0uw",
"name": "Nasa",
"subdomain": "nasa",
"color": null,
"logoUrl": null,
"publicEmail": null
},
"customImpactPercentage": 40
}
],
"user": {
"id": "ckf01g7m4eaqb0a32fl7jl1xx",
"name": "Buzz Aldrin",
"email": "buzz@nasa.com"
}
}
]

Poți adăuga parametrii de query status și !status ca să limitezi rezultatele la incidentele care au sau, respectiv, nu au una dintre stările dintr-o listă separată prin virgule.

user este membrul spațiului de lucru care a creat incidentul. Este null când incidentul a fost creat automat (de un monitor, de o integrare cu un terț sau prin e-mail).

Obține un incident

Endpoint:

GET /v1/:page_id/incidents/:incident_id

Exemplu de răspuns:

{
"id": "ckf01m59ueaqb0a32wrljz1yd",
"name": "Rocket is going down",
"status": "RESOLVED",
"started": "2020-09-12T19:05:17.398Z",
"resolved": "2020-09-12T19:09:04.498Z",
"updates": [
{
"id": "ckf01m5ioeaqi0a32jtv8ovp8",
"message": "We are currently investigating this incident.",
"messageHtml": "<p>We are currently investigating this incident.</p>",
"status": "INVESTIGATING",
"notify": true,
"started": "2020-09-12T19:05:17.398Z",
"ended": null,
"duration": 228,
"createdAt": "2020-09-12T19:08:50.160Z"
},
{
"id": "ckf01mnk9eaui0a32mmhgq68g",
"message": "This incident has been resolved.",
"messageHtml": "<p>This incident has been resolved.</p>",
"status": "RESOLVED",
"notify": true,
"started": "2020-09-12T19:09:04.498Z",
"ended": null,
"duration": null,
"createdAt": "2020-09-12T19:09:13.545Z"
}
],
"components": [
{
"id": "ckf01fvnxywz50a35nh1qzssm",
"name": "Website",
"status": "MAJOROUTAGE",
"showUptime": true,
"site": {
"id": "ckf01fonve9i40a32oas5b0uw",
"name": "Nasa",
"subdomain": "nasa",
"color": null,
"logoUrl": null,
"publicEmail": null
}
}
],
"user": {
"id": "ckf01g7m4eaqb0a32fl7jl1xx",
"name": "Buzz Aldrin",
"email": "buzz@nasa.com"
}
}

Adaugă un incident

Endpoint:

POST /v1/:page_id/incidents

Exemplu de cerere:

{
"name": "Test incident",
"message": "We're currently investigating an issue with the Website",
"components": ["ckf01fvnxywz50a35nh1qzssm"],
"started": "2020-09-12 05:38:47.998",
"status": "INVESTIGATING",
"notify": true,
"statuses": [
{
"id": "ckf01fvnxywz50a35nh1qzssm",
"status": "PARTIALOUTAGE",
"customImpactPercentage": 40
}
],
"translations": {
"name": {
"fr": "Incident de test"
},
"message": {
"fr": "Nous enquêtons actuellement sur un problème avec le site Web"
}
}
}

Incidentele sunt publicate implicit pe pagina ta de stare. Dacă vrei să creezi un incident nepublicat, va trebui să incluzi shouldPublish cu valoarea false.

Exemplu de răspuns:

{
"id": "ckf02l5m8z36j0a35qr9q1tq1",
"name": "Test incident",
"status": "INVESTIGATING",
"started": "2020-09-12T03:38:47.998Z",
"resolved": null,
"updates": [],
"components": [
{
"id": "ckf01fvnxywz50a35nh1qzssm",
"name": "Website",
"status": "OPERATIONAL",
"showUptime": true,
"site": {
"id": "ckf01fonve9i40a32oas5b0uw",
"name": "Nasa",
"subdomain": "nasa",
"color": null,
"logoUrl": null,
"publicEmail": null
}
}
],
"translations": {
"name": {
"fr": "Incident de test"
},
"message": {
"fr": "Nous enquêtons actuellement sur un problème avec le site Web"
}
}
}

Adaugă un incident cu un șablon

Endpoint:

POST /v1/:page_id/incidents/:template

Exemplu de răspuns:

{
"id": "cl8hrdsdsasu441sv26yq",
"name": "Investigating Template",
"nameTranslationId": null,
"notify": false,
"status": "INVESTIGATING",
"started": "2022-09-25T19:53:20.778Z",
"resolved": null,
"duration": null,
"createdAt": "2022-09-25T19:53:20.800Z",
"updatedAt": "2022-09-25T19:53:20.800Z",
"automated": false,
"impact": "MAJOROUTAGE",
"appId": null,
"siteId": "cl8hadasdasd6wkxdco",
"importedFrom": null
}

Actualizează un incident

Endpoint:

PUT /v1/:page_id/incidents/:incident_id

Exemplu de cerere:

{
"name": "Test incident 2",
"components": ["ckf01fvnxywz50a35nh1qzssm"],
"started": "2020-09-12 05:38:47.998",
"status": "INVESTIGATING",
"notify": true,
"statuses": [
{
"id": "ckf01fvnxywz50a35nh1qzssm",
"status": "OPERATIONAL"
}
],
"translations": {
"name": {
"fr": "Incident de test"
},
"message": {
"fr": "Nous enquêtons actuellement sur un problème avec le site Web"
}
}
}

Exemplu de răspuns:

{
"id": "ckf02l5m8z36j0a35qr9q1tq1",
"name": "Test incident 2",
"status": "INVESTIGATING",
"started": "2020-09-12T03:38:47.998Z",
"resolved": null,
"updates": [],
"components": [
{
"id": "ckf01fvnxywz50a35nh1qzssm",
"name": "Website",
"status": "OPERATIONAL",
"showUptime": true,
"site": {
"id": "ckf01fonve9i40a32oas5b0uw",
"name": "Nasa",
"subdomain": "nasa",
"color": null,
"logoUrl": null,
"publicEmail": null
}
}
],
"translations": {
"name": {
"fr": "Incident de test"
},
"message": {
"fr": "Nous enquêtons actuellement sur un problème avec le site Web"
}
}
}

Șterge un incident

Endpoint:

DELETE /v1/:page_id/incidents/:incident_id

Exemplu de răspuns:

{
"id": "ckf02l5m8z36j0a35qr9q1tq1"
}

Obține persoanele care răspund la un incident

Cine a fost alertat de gardă pentru un incident, dacă l-a confirmat deja cineva și cine îl conduce.

Endpoint:

GET /v1/:page_id/incidents/:incident_id/responders

Exemplu de răspuns:

{
"incidentId": "ckf02l5m8z36j0a35qr9q1tq1",
"paged": true,
"acknowledged": true,
"lead": {
"teamMemberId": "clh8nmaan72592bfokqjqd95s1",
"name": "Sam Rivera",
"email": "sam@example.com"
},
"pages": [
{
"teamMemberId": "clh8nmaan72592bfokqjqd95s1",
"name": "Sam Rivera",
"email": "sam@example.com",
"pagedAt": "2026-11-01T12:01:00.000Z"
}
],
"responders": [
{
"teamMemberId": "clh8nmaan72592bfokqjqd95s1",
"name": "Sam Rivera",
"email": "sam@example.com",
"status": "ACKNOWLEDGED",
"acknowledgedAt": "2026-11-01T12:05:00.000Z",
"declinedAt": null
}
]
}

Confirmă un incident

Confirmă un incident ca utilizatorul cheii API. Prima confirmare anulează orice escaladare care încă așteaptă să alerteze alte persoane și face din acea persoană responsabilul incidentului, dacă nu există deja unul. Pe pagina de stare nu se schimbă nimic. O confirmare repetată este sigură: alreadyAcknowledged este atunci true.

Endpoint:

POST /v1/:page_id/incidents/:incident_id/acknowledge

Exemplu de răspuns:

{
"incidentId": "ckf02l5m8z36j0a35qr9q1tq1",
"alreadyAcknowledged": false,
"paged": true,
"acknowledged": true,
"lead": {
"teamMemberId": "clh8nmaan72592bfokqjqd95s1",
"name": "Sam Rivera",
"email": "sam@example.com"
},
"pages": [
{
"teamMemberId": "clh8nmaan72592bfokqjqd95s1",
"name": "Sam Rivera",
"email": "sam@example.com",
"pagedAt": "2026-11-01T12:01:00.000Z"
}
],
"responders": [
{
"teamMemberId": "clh8nmaan72592bfokqjqd95s1",
"name": "Sam Rivera",
"email": "sam@example.com",
"status": "ACKNOWLEDGED",
"acknowledgedAt": "2026-11-01T12:05:00.000Z",
"declinedAt": null
}
]
}