POST
/
notifiers
curl --request POST \
  --url https://api.axiom.co/v2/notifiers \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "disabledUntil": "2024-03-20T15:00:00Z",
  "name": "Production Slack Alerts",
  "properties": {
    "customWebhook": {
      "body": "{\"alert\": \"{{.AlertName}}\", \"severity\": \"{{.Severity}}\", \"message\": \"{{.Message}}\"}",
      "headers": {
        "Content-Type": "application/json",
        "X-API-Version": "1.0"
      },
      "secretHeaders": {
        "Authorization": "Bearer {{token}}"
      },
      "url": "https://api.custom-service.com/alerts"
    },
    "discord": {
      "discordChannel": "123456789012345678",
      "discordToken": "Bot 123456789012345678"
    },
    "discordWebhook": {
      "discordWebhookUrl": "https://discord.com/api/webhooks/123456789012345678/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    },
    "email": {
      "emails": [
        "oncall@example.com",
        "alerts@example.com"
      ]
    },
    "microsoftTeams": {
      "microsoftTeamsUrl": "https://outlook.office.com/webhook/123456789/IncomingWebhook/..."
    },
    "opsgenie": {
      "apiKey": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "isEU": true
    },
    "pagerduty": {
      "routingKey": "1234567890abcdef1234567890abcdef",
      "token": "u+1234567890abcdef1234567890abcdef"
    },
    "slack": {
      "slackUrl": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"
    },
    "webhook": {
      "url": "https://api.example.com/webhooks/alerts"
    }
  }
}'
{
  "createdAt": "2024-01-15T10:30:00Z",
  "createdBy": "alice@example.com",
  "disabledUntil": "2024-03-20T15:00:00Z",
  "name": "Production Slack Alerts",
  "properties": {
    "customWebhook": {
      "body": "{\"alert\": \"{{.AlertName}}\", \"severity\": \"{{.Severity}}\", \"message\": \"{{.Message}}\"}",
      "headers": {
        "Content-Type": "application/json",
        "X-API-Version": "1.0"
      },
      "secretHeaders": {
        "Authorization": "Bearer {{token}}"
      },
      "url": "https://api.custom-service.com/alerts"
    },
    "discord": {
      "discordChannel": "123456789012345678",
      "discordToken": "Bot 123456789012345678"
    },
    "discordWebhook": {
      "discordWebhookUrl": "https://discord.com/api/webhooks/123456789012345678/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    },
    "email": {
      "emails": [
        "oncall@example.com",
        "alerts@example.com"
      ]
    },
    "microsoftTeams": {
      "microsoftTeamsUrl": "https://outlook.office.com/webhook/123456789/IncomingWebhook/..."
    },
    "opsgenie": {
      "apiKey": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "isEU": true
    },
    "pagerduty": {
      "routingKey": "1234567890abcdef1234567890abcdef",
      "token": "u+1234567890abcdef1234567890abcdef"
    },
    "slack": {
      "slackUrl": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"
    },
    "webhook": {
      "url": "https://api.example.com/webhooks/alerts"
    }
  },
  "id": "notify_slack_prod"
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Body

application/json
Notifier configuration details

Configuration for a notification channel. Notifiers can be configured for various services like:

  • Slack
  • Email
  • PagerDuty
  • OpsGenie
  • Discord
  • Microsoft Teams
  • Custom Webhooks
name
string
required

Human-readable name for the notifier

Example:

"Production Slack Alerts"

properties
object
required

Configuration options for different notification channels. Only one channel should be configured per notifier.

disabledUntil
string

ISO timestamp until which the notifier is disabled (null if enabled)

Example:

"2024-03-20T15:00:00Z"

Response

200 - application/json
Notifier

Notifier configuration with its unique identifier

name
string
required

Human-readable name for the notifier

Example:

"Production Slack Alerts"

properties
object
required

Configuration options for different notification channels. Only one channel should be configured per notifier.

createdAt
string

Timestamp when the notifier was created

Example:

"2024-01-15T10:30:00Z"

createdBy
string

Email or ID of the user who created the notifier

Example:

"alice@example.com"

disabledUntil
string

ISO timestamp until which the notifier is disabled (null if enabled)

Example:

"2024-03-20T15:00:00Z"

id
string

Unique identifier for the notifier

Example:

"notify_slack_prod"