ALERT_FAILURE), recovery (ALERT_RECOVERY), and SSL certificate expiry (ALERT_EXPIRED_SSL) notifications to Flashduty On-call. Each Odown check maps to one down alert: the alert triggers when the check goes down and recovers when the check is up again. SSL expiry notifications are point-in-time events and never recover.
In Flashduty On-call
You can get the integration push URL in either of the following ways.
Use a dedicated integration
- In the Flashduty console, go to Channels and open a channel
- Select Configuration → Integrations → Private integration, then click Add an integration
- Select Odown and click Save
- Open the new integration card and copy the push URL
Use a shared integration
- In the Flashduty console, go to Integration Center → Alert Events
- Select Odown and enter an integration name
- Configure the default route and select a channel. You can add more rules under Routes after creation
- Click Save and copy the generated push URL
Configure Odown
1
Add a webhook channel
- Sign in to Odown, go to Alert Settings for the account, click Add more channels, and choose Webhooks
- Paste the complete Flashduty push URL as the URL
- Under Sending cases, tick A check recovers, A check fails and, for certificate notices, An SSL certificate is due to expire in (none is ticked by default, and an unticked case is never sent)
- Open the Test Webhook drop-down next to the URL and pick Recovered Test, Failure Test or Expired SSL Test: Flashduty answers with success and creates no alert
- Save the channel
2
Attach the channel to your checks
A webhook channel is global: after you save it, every check in the account is subscribed to it (the channel list shows the subscriber count, for example 1 / 1). Odown sends
ALERT_FAILURE when a check goes down, ALERT_RECOVERY when it recovers, and ALERT_EXPIRED_SSL as the certificate approaches expiry.3
Verify the lifecycle
Let a check actually fail (for example, point it at an unreachable address temporarily) and confirm Flashduty receives an active alert. Then restore the target and confirm the same alert recovers.
Payload
Odown POSTs each event as JSON. Flashduty parses it directly, so no template is needed:
The alert title is the check name, or the monitored URL when the name is empty. SSL expiry alert titles start with
SSL certificate expiring:.
Alert Key
- Down and recovery: Flashduty uses
check.idas the Alert Key.ALERT_FAILUREandALERT_RECOVERYfor the same check carry the samecheck.id, so they land on one alert, while different checks produce different alerts. Renaming a check or a change in status code or run location does not change the Alert Key. - SSL expiry: the Alert Key is
check.idplus:ssl_expiry. It is separate from the check’s down alert, so a recovery does not close the certificate alert, and repeated expiry notices for one check merge into one alert.
check.id is rejected with a parameter error, because a recovery could not be matched to its alert.
Status and severity
Odown notifications carry no severity.
A request with an empty or unknown
event is rejected, so a request whose state is unclear never lands in the wrong alert lifecycle.
Turn on the auto-resolve timeout for one-shot alerts
An SSL expiry notice has no matching close notification, so these alerts do not recover automatically in Flashduty. Turn on the channel’s auto-resolve timeout and set it to 7 days, or close the alert by hand after you renew the certificate.
FAQ
Do repeated down notifications create several alerts?
Do repeated down notifications create several alerts?
No. Notifications for one check carry the same
check.id and merge into one alert.Troubleshooting
- Odown reports a failed delivery: check that the webhook URL is the complete push URL and includes
integration_key - Flashduty returns a parameter error: check that the request is an Odown JSON notification with non-empty
check.idandevent - The alert does not recover: check that the check still uses the same webhook channel when it recovers; the recovery and down notifications must carry the same
check.id