通知チャンネルの一覧
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"
の場合は上記に加えて、以下のように詳細な情報を返します
type
が email
の場合
KEY | TYPE | DESCRIPTION |
---|---|---|
emails |
array[string] | 通知先に指定されているEmailアドレス |
userIds |
array[string] | 通知先に指定されているユーザーID |
events |
array[string] | 通知するイベント("alert" , "alertGroup" , "hostStatus" , "hostRegister" , "hostRetire" , "monitor" のいずれか) |
type
が slack
の場合
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" のいずれか) |
type
が webhook
の場合
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アドレス範囲外からのアクセスの場合 |