通知チャンネル

通知チャンネルの一覧

GET /api/v0/channels

APIキーに必要な権限

  • Read

応答

成功時

{
  "channels": [<channel>, <channel>, ...]
}

<channel> は以下のキーを持つオブジェクト

KEY TYPE DESCRIPTION
id string 通知チャンネルのID
name string 通知チャンネルの名称
type string 通知チャンネルの種類 ("email", "slack", "line", "chatwork", "typetalk", "twilio", "pagerduty", "opsgenie", "microsoft-teams, "webhook", "amazon-event-bridge" のいずれかです)
suspendedAt number / null 通知チャンネルがサスペンドされた日時 (epoch秒)
サスペンドされていない場合はnull

type"email", "slack" または "webhook" の場合は上記に加えて、以下のように詳細な情報を返します

typeemail の場合
KEY TYPE DESCRIPTION
emails array[string] 通知先に指定されているEmailアドレス
userIds array[string] 通知先に指定されているユーザーID
events array[string] 通知するイベント("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", "monitor" のいずれか)
typeslack の場合
KEY TYPE DESCRIPTION
url string SlackのIncoming WebhookのURL
mentions hash[string] キーは状態(ok, warning, criticalのいずれか)、値はアラート通知の際に添えるテキストです
enabledGraphImage boolean 関連するグラフをSlackに投稿するか否か
events array[string] 通知するイベント("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", "monitor" のいずれか)
typewebhook の場合
KEY TYPE DESCRIPTION
url string HTTPリクエストを受け取るURL
enabledGraphImage boolean 関連するグラフのURLを通知内容に含めるか否か
events array[string] 通知するイベント("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", "monitor" のいずれか)

通知チャンネルの登録

※現在はメール通知とSlack, Webhook の3つに対応しています

POST /api/v0/channels

APIキーに必要な情報

  • Read
  • Write

メール通知

入力(メール通知)

KEY TYPE DESCRIPTION
type string 固定文字列"email"
name string チャンネルの名前
emails array[string] 通知先に指定するEmailアドレス
userIds array[string] 通知先に指定するユーザーID
events array[string] 通知するイベント("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", "monitor" のいずれか)

応答(メール通知)

成功時
{
  "id": <channelId>,
  "type": "email",
  "name": "My Channel",
  "emails": ["myaddress@example.com"],
  "userIds": ["userId"],
  "events": ["alert"]
}
失敗時
STATUS CODE DESCRIPTION
400 emails内のアドレスが不正な場合
400 userIds内にオーガニゼーションに所属していないユーザーが含まれている場合
400 eventsに上記以外のイベントが含まれる場合
403 APIキーに書き込み権限がないとき / 許可されたIPアドレス範囲外からのアクセスの場合

Slack

入力(Slack)

以下のキーをもつオブジェクト

KEY TYPE DESCRIPTION
type string 固定文字列"slack"
name string チャンネルの名前
url string SlackのIncoming WebhookのURL
mentions hash[string] キーは状態(ok, warning, criticalのいずれか)、値はアラート通知の際に添えるテキストです
enabledGraphImage boolean 関連するグラフをSlackに投稿するか否か
events array[string] 通知するイベント("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", "monitor" のいずれか)

応答(Slack)

成功時
{
  "id": <channelId>,
  "type": "slack",
  "name": "My Channel",
  "url": "https://hooks.slack.com/services/TAAAA/BBBB/XXXXX",
  "mentions": {
    "ok": "ok message",
    "warning": "warning message"
  },
  "enabledGraphImage": true,
  "events": ["alert"]
}
失敗時
STATUS CODE DESCRIPTION
400 urlが不正な場合
400 eventsに上記以外のイベントが含まれる場合
403 APIキーに書き込み権限がないとき / 許可されたIPアドレス範囲外からのアクセスの場合

Webhook

入力(Webhook)

以下のキーをもつオブジェクト

KEY TYPE DESCRIPTION
type string 固定文字列"webhook"
name string チャンネルの名前
url string HTTPリクエストを受け取るURL
enabledGraphImage boolean 関連するグラフのURLを通知内容に含めるか否か
events array[string] 通知するイベント("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", "monitor" のいずれか)

応答(Webhook)

成功時
{
  "id": <channelId>,
  "type": "webhook",
  "name": "My Channel",
  "url": "https://example.com/webhook",
  "enabledGraphImage": true,
  "events": ["alert"]
}
失敗時
STATUS CODE DESCRIPTION
400 urlが不正な場合
400 eventsに上記以外のイベントが含まれる場合
403 APIキーに書き込み権限がないとき / 許可されたIPアドレス範囲外からのアクセスの場合

通知チャンネルの削除

チャンネルを削除します

DELETE /api/v0/channels/<channelId>

APIキーに必要な情報

  • Read
  • Write

応答

削除される直前のチャンネルの状態が返されます

成功時

フォーマットはチャンネル一覧APIの<channel>と同じ形式です。

失敗時

STATUS CODE DESCRIPTION
404 <channelId>に対応するチャンネルが見つからないとき
403 APIキーに書き込み権限がないとき / 許可されたIPアドレス範囲外からのアクセスの場合