monitor.down), flapping (monitor.flapping), and recovery (monitor.up) notifications to Flashduty On-call. Each monitor maps to one Flashduty alert: the alert triggers when the monitor goes down, flapping notifications update the same alert, and the alert recovers when the monitor is up again.
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, select Channels and open a channel
- Select Settings → Integration data → Dedicated integrations, then click Add an integration
- Select Monitive, then click Save
- Open the generated integration card and copy the push URL
Use a shared integration
- In the Flashduty console, select Integration center → Alert events
- Select Monitive 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
In Monitive
Monitive webhooks are set per monitor, and each monitor has one webhook slot. Set the webhook on every monitor you want to send to Flashduty.
1
Set the monitor webhook
Use either method to set the full Flashduty push URL as the monitor’s webhook URL:If the monitor already has a webhook, setting it again replaces only the URL; the signing secret stays the same.
- Console: sign in to app.uptimemonitoring.com, open the monitor, enter the push URL in the Webhook section, and save
- API: call
PUT /api/v1/monitors/{monitorID}/webhook
2
Verify the lifecycle
Make the monitor really go down (for example, point it at a URL that returns 5xx) and confirm Flashduty shows an active alert; then restore the target and confirm the alert recovers. Monitive flips state only after it confirms from other regions, which usually takes one to a few minutes.
Every Monitive delivery carries an
X-UptimeMonitoring-Signature (HMAC-SHA256) header. Flashduty does not verify it; the integration_key in the push URL is the credential, so keep the URL private. If a delivery fails (non-2xx or timeout), Monitive retries up to 5 times, after 1 minute, 5 minutes, 30 minutes, and 2 hours.Payload
Monitive POSTs the following fields as
application/json. Flashduty parses them directly; no template is needed:
The alert title is the monitor name; if it is empty, the monitored URL is used, then
Monitive monitor <monitor_id>.
Alert Key
Flashduty uses
monitor_id as the Alert Key. Down, flapping, and recovery notifications of one monitor carry the same monitor_id, so they land on the same alert; different monitors produce different alerts even when their names and URLs match. Renaming the monitor or changing its URL or reason does not change the Alert Key. delivery_id differs for every state change, so it is not part of the Alert Key.
A request without monitor_id is rejected with a parameter error, because its recovery could not be matched to the original alert. A request whose event is none of the three values is acknowledged and ignored without creating an alert.
Status and severity
Monitive notifications carry no severity. A down monitor is an outage signal and maps to Critical; flapping maps to Warning.
FAQ
When does a flapping alert recover?
When does a flapping alert recover?
Monitive’s documentation says a flapping record ends once traffic stabilizes, but does not name the webhook event sent at that point. While a monitor is flapping, Monitive stops sending
monitor.down and monitor.up for its further state changes, so no monitor.up closes the flapping alert during that time. A monitor.flapping that arrives after an earlier monitor.up opens a new Warning alert, because the previous alert is already closed. A later monitor.up closes the alert. If a monitor flaps and no monitor.up follows, the alert stays open, so turn on auto-close after timeout in the channel (for example 24 hours); see auto-close timeout.Do retries create duplicate alerts?
Do retries create duplicate alerts?
No. A retried delivery carries the same
monitor_id and merges into the same alert.Is this available on the free plan?
Is this available on the free plan?
Webhooks are included in the free plan, with one webhook per monitor and up to 50 monitors.
Troubleshooting
- Flashduty receives no alert: query
GET /api/v1/webhook-deliveries?monitor_id=<id>in Monitive and check the delivery status and response code - Flashduty returns a parameter error: confirm the body is Monitive’s JSON and
monitor_idis not empty - The alert does not recover: confirm the
monitor.updelivery succeeded and the monitor’s webhook URL was not changed to another integration