インシデント API リファレンス

ページのインシデントをすべて取得する

エンドポイント:

GET /v1/:page_id/incidents?page=:page&per_page=:per_page
  • page の既定値は 1 です。
  • per_page の既定値は 50 で、1 ページあたり最大 100 件です。

レスポンスの例:

[
{
"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"
}
}
]

status!status のクエリパラメーターを追加すると、カンマ区切りで指定したステータスのいずれかに該当する (または該当しない) インシデントだけに結果を絞り込めます。

user はインシデントを作成したワークスペースのメンバーです。インシデントが自動的に作成された場合 (モニター、外部サービスとの連携、メールによる作成) は null になります。

インシデントを取得する

エンドポイント:

GET /v1/:page_id/incidents/:incident_id

レスポンスの例:

{
"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"
}
}

インシデントを追加する

エンドポイント:

POST /v1/:page_id/incidents

リクエストの例:

{
"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"
}
}
}

インシデントは既定でステータスページに公開されます。 非公開のインシデントを作成したい場合は、shouldPublish を含めて false に設定します。

レスポンスの例:

{
"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"
}
}
}

テンプレートを使ってインシデントを追加する

エンドポイント:

POST /v1/:page_id/incidents/:template

レスポンスの例:

{
"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
}

インシデントを更新する

エンドポイント:

PUT /v1/:page_id/incidents/:incident_id

リクエストの例:

{
"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"
}
}
}

レスポンスの例:

{
"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"
}
}
}

インシデントを削除する

エンドポイント:

DELETE /v1/:page_id/incidents/:incident_id

レスポンスの例:

{
"id": "ckf02l5m8z36j0a35qr9q1tq1"
}