Alert channels
Alert channels are the destinations Flagon posts to when something needs attention. A channel is configured once at the organization level, then referenced by any number of checks. Configure the destination in one place; point many monitors at it.
Alert channels are distinct from personal notification channels. A personal channel pages a human through on-call. An alert channel posts to a place: a Slack channel, a webhook, or a shared mailbox.
Channel types
- Slack (incoming webhook): paste a Slack incoming webhook URL. Flagon posts a formatted message to that channel. No app install or OAuth required.
- Webhook: Flagon sends a JSON payload to a URL you control (POST by default), so you can route alerts anywhere.
- Email: one or more addresses that receive the alert.
Adding a channel
Go to Settings, then Alert channels (owner or admin) and choose Add channel. For Slack and webhook you provide a URL; for email you provide addresses. Use Test to send a sample message and confirm delivery end to end.
Security
Slack and webhook URLs are bearer secrets: anyone holding one can post to your channel. Flagon encrypts them at rest and never returns them to a client. A channel shows only whether it is configured, along with its recent delivery health.
Reliability
Alerts are delivered asynchronously with retries and exponential backoff, so a slow or broken destination never blocks the check that fired. A channel that keeps failing is marked failing in the UI rather than retried forever, and its last error is shown so you can fix it.
Using a channel from a check
On a check's failure action, select the channels to notify. In the API, reference the channel by its key:
"action": {
"mode": "notify",
"channelKeys": ["ops-slack", "oncall-email"]
}Over the API
# Create a Slack channel (URL stored encrypted)
curl -X POST https://api.flagon.io/v1/orgs/{org}/alert-channels \
-H "Authorization: Bearer $FLAGON_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"key": "ops-slack",
"name": "#ops",
"type": "slack_webhook",
"url": "https://hooks.slack.com/services/…",
"channelLabel": "#ops"
}'
# Send a test message
curl -X POST https://api.flagon.io/v1/orgs/{org}/alert-channels/ops-slack/test \
-H "Authorization: Bearer $FLAGON_TOKEN"See the full schema in the API reference.