Get Notification channel list
GET
/api/v0/channels
Required permissions for the API key
Response
Success
{
"channels": [<channel>, <channel>, ...]
}
<channel> is an object with the following keys
| KEY |
TYPE |
DESCRIPTION |
id |
string |
the notification channel ID |
name |
string |
the name of the notification channel |
type |
string |
the type of notification channel ("email", "slack", "line", "chatwork", "typetalk", "twilio", "pagerduty", "opsgenie", "jira-service-management", "microsoft-teams, "webhook", "amazon-event-bridge") |
suspendedAt |
number / null |
the notification channel suspended timestamp (in epoch seconds)
null when not suspended |
In addition to that above, the following detailed information returns if the type is "email", "slack", or "webhook",
When the type is email
| KEY |
TYPE |
DESCRIPTION |
emails |
array[string] |
email addresses specified to receive notifications |
userIds |
array[string] |
user IDs specified to receive notifications |
events |
array[string] |
notification events ("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", or "monitor") |
When the type is slack
| KEY |
TYPE |
DESCRIPTION |
url |
string |
Incoming Webhook URL for Slack |
mentions |
hash[string] |
the key is the condition (ok, warning, or critical), the value is the text accompanying the alert notification |
enabledGraphImage |
boolean |
whether or not the corresponding graph is posted to Slack |
events |
array[string] |
notification events ("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", or "monitor") |
When the type is webhook
| KEY |
TYPE |
DESCRIPTION |
url |
string |
URL that will receive HTTP request |
enabledGraphImage |
boolean |
whether or not the URL of the corresponding graph is included in the notification content |
events |
array[string] |
notification events ("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", or "monitor") |
Register Notification Channels
※Currently supported for email, Slack, and Webhook.
POST
/api/v0/channels
Required permissions for the API key
email notifications
| KEY |
TYPE |
DESCRIPTION |
type |
string |
fixed character string "email" |
name |
string |
the name of the channel |
emails |
array[string] |
email addresses specified to receive notifications |
userIds |
array[string] |
user IDs specified to receive notifications |
events |
array[string] |
notification events ("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", or "monitor") |
Response(email notifications)
Success
{
"id": <channelId>,
"type": "email",
"name": "My Channel",
"emails": ["myaddress@example.com"],
"userIds": ["userId"],
"events": ["alert"]
}
Error
| STATUS CODE |
DESCRIPTION |
| 400 |
when the address in emails is invalid |
| 400 |
when a user that does not belong to the organization is included in userIds |
| 400 |
when events contains an event other than those listed above |
| 403 |
when the API key doesn't have the required permissions / when accessing from outside the permitted IP address range |
Slack
The object contains the following keys
| KEY |
TYPE |
DESCRIPTION |
type |
string |
fixed character string "slack" |
name |
string |
the name of the channel |
url |
string |
Incoming Webhook URL for Slack |
mentions |
hash[string] |
the key is the condition (ok, warning, or critical), the value is the text accompanying the alert notification |
enabledGraphImage |
boolean |
whether or not the corresponding graph is posted to Slack |
events |
array[string] |
notification events ("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", or "monitor") |
Response(Slack)
Success
{
"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"]
}
Error
| STATUS CODE |
DESCRIPTION |
| 400 |
when the url is invalid |
| 400 |
when events contains an event other than those listed above |
| 403 |
when the API key doesn't have the required permissions / when accessing from outside the permitted IP address range |
Webhook
| KEY |
TYPE |
DESCRIPTION |
type |
string |
fixed character string "webhook" |
name |
string |
the name of the channel |
url |
string |
URL that will receive HTTP request |
enabledGraphImage |
boolean |
whether or not the URL of the corresponding graph is included in the notification content |
events |
array[string] |
notification events ("alert", "alertGroup", "hostStatus", "hostRegister", "hostRetire", or "monitor") |
Response(Webhook)
Success
{
"id": <channelId>,
"type": "webhook",
"name": "My Channel",
"url": "http://example.com/webhook",
"enabledGraphImage": true,
"events": ["alert"]
}
Error
| STATUS CODE |
DESCRIPTION |
| 400 |
when the url is invalid |
| 400 |
when events contains an event other than those listed above |
| 403 |
when the API key doesn't have the required permissions / when accessing from outside the permitted IP address range |
Delete Notification Channels
Delete the channel
DELETE
/api/v0/channels/<channelId>
Required permissions for the API key
Response
The status of the channel before deletion is returned
Success
The format is the same as the channel list API <channel>
Error
| STATUS CODE |
DESCRIPTION |
| 404 |
when the supported channel can not be found in <channelId> |
| 403 |
when the API key doesn't have the required permissions / when accessing from outside the permitted IP address range |