Skip to main content
Use an UptimeRobot webhook integration to send Monitor down, up, and SSL certificate and domain expiry notifications to Flashduty On-call. A Monitor’s down notification and the up notification that follows it map to the same Flashduty alert.
UptimeRobot offers webhook integrations only on the Team plan and higher paid plans (such as Team, Scale, and Enterprise). Free and Solo plans cannot add them.

In Flashduty On-call

You can get the integration push URL in either of the following ways.

Use a dedicated integration

  1. In the Flashduty console, select Channel and open a channel
  2. Select Configuration → Integrations → Private integration, then click Add integration
  3. Select UptimeRobot and click Save
  4. Open the generated integration card and copy the Push URL

Use a shared integration

  1. In the Flashduty console, go to Integration Center → Alert Events
  2. Select UptimeRobot and enter an integration name
  3. Configure the default route and select a channel. You can add more rules under Routing after creation
  4. Click Save and copy the generated Push URL

Configure UptimeRobot

1

Add a Webhook integration in UptimeRobot

Where: UptimeRobot › Integrations › Add Integration › Webhook
2

Configure the POST value in UptimeRobot

Where: UptimeRobot › Integrations › Add Integration › Webhook (same form)
Keep monitor_id and alert_type. Flashduty rejects a request with a missing monitor_id or an alert_type other than 1, 2, or 3, because it cannot determine the event state or match the up notification to the original alert.
3

Choose events to notify about in UptimeRobot

Where: UptimeRobot › Integrations › Add Integration › Webhook (same form)Click Save.
4

Attach Monitors to the integration in UptimeRobot

Where: UptimeRobot › MonitorsEdit each Monitor you want to connect, select the new webhook integration in its notification settings, and save. Only Monitors attached to the integration send notifications to Flashduty.
5

Send a test notification in UptimeRobot and verify

Where: UptimeRobot › MonitorsOpen the details page of a Monitor attached to the integration, click Test Notification, and select the webhook. UptimeRobot triggers both a Down and an Up test notification. This only confirms that the push URL and POST value are correct; the alert content is whatever Flashduty actually receives, and a test notification may create a real alert in Flashduty, so close it manually. Then verify with a real outage: when the Monitor goes down, Flashduty receives an active alert; when it recovers, UptimeRobot sends the Up notification and the matching Flashduty alert closes. Back in Flashduty, the integration shows Latest event time, which means the setup works.

Alert key

Flashduty uses *monitorID* (the monitor_id field) as the Alert Key. UptimeRobot includes the same Monitor ID in both Down and Up notifications, so a Monitor’s outage, repeated reminders, and recovery land on one alert, and different Monitors produce different alerts. Changes to the Monitor name, URL, alert details, HTTP status code, or timestamps do not change the Alert Key. A Monitor that is deleted and recreated gets a new Monitor ID and is no longer linked to its old alerts.

Status and severity

An empty or other alert_type is rejected so that an ambiguous request cannot enter the wrong alert lifecycle. SSL certificate and domain expiry reminders have no matching recovery notification. Each reminder creates a separate Warning alert that does not recover automatically, so close it manually once handled.

Delivery

  • UptimeRobot sends Down and Up notifications once. It does not retry after a timeout, a connection error, or a non-2xx response. If an Up notification is lost, the matching alert stays active until you close it manually
  • Recurring notifications configured on a Monitor resend the Down notification with the same Monitor ID, and Flashduty merges them into the existing alert

Troubleshooting

  • Flashduty reports an invalid parameter: verify that Send as JSON (application/json) is checked, the POST value is valid JSON, and monitor_id and alert_type are unchanged
  • JSON parsing fails: check whether the Monitor name or alert details contain double quotes or backslashes, which can make the rendered POST value invalid JSON
  • The alert does not recover: verify that Up events is checked under Events to notify about, and that the Flashduty push URL was reachable when the Up notification was sent
  • No notifications arrive: verify that the Monitor is attached to the webhook integration and that the UptimeRobot account is on the Team plan or higher
  • Custom headers: UptimeRobot supports up to 10 custom headers per webhook. Flashduty authenticates with the integration_key in the push URL, so no extra header is needed
See UptimeRobot Webhook Integration for the variable definitions.