Uptimeify Docs
Incident managementAlert sources

Datadog

Send Datadog Monitor alerts to Uptimeify Incident Management via a Datadog webhook integration, pre-mapped to title, alert type, and transition state.

Uptimeify's Datadog preset maps Datadog's Monitor webhook notification payload directly: alert title, alert type, transition state, and hostname are pre-mapped.

1. Create the alert source in Uptimeify

Go to Incident Management → Alert Sources → New, pick the Datadog preset, name it, and create it. On the success screen, copy the ingest URL (https://<your-domain>/api/im/ingest/<token>). It is shown once and never displayed again in cleartext. If you lose it, rotate the token from the source's Settings tab.

2. Add a Webhooks integration in Datadog

  1. In Datadog, go to Integrations → Webhooks and click New.
  2. Give the webhook a name (for example uptimeify) and set the URL to the ingest URL you copied in step 1.
  3. Set the Payload to Datadog's default monitor-notification payload, unchanged, since Uptimeify's preset expects the standard fields (alert_id, alert_title, alert_type, alert_transition, hostname, …). If you have customized the payload template on this webhook before, reset it to Datadog's default, or edit your Uptimeify source's Payload Mapping tab to match your custom fields instead.
  4. Save the webhook.

3. Notify the webhook from your monitors

Datadog only calls a webhook integration when a monitor's notification message references it explicitly:

  1. Open (or create) a Datadog Monitor.
  2. In the Notify your team section of the monitor's message, add @webhook-uptimeify (replace uptimeify with whatever name you gave the webhook in step 2).
  3. Save the monitor. Datadog now calls the webhook on every state transition (Triggered, Warn, Recovered, …) the monitor's notification rules cover.

Repeat steps 2 and 3 for every monitor you want to appear in Uptimeify, or add @webhook-uptimeify to a notification default your monitors already share.

Default field mapping

Datadog fieldNormalized field
alert_titleTitle
alert_typeSeverity (via the map below)
alert_transitionStatus: Recovered resolves the alert, anything else keeps it open
hostnameHost
alert_idDedup key: groups notifications for the same monitor event

Severity map

Datadog alert_typeUptimeify severity
errorsev1
warningsev3
successsev4
infosev4

Sample payload

This is the shape of payload Uptimeify's Datadog preset expects:

{
  "id": "4707056510925961466",
  "alert_id": "1234567",
  "alert_title": "[Triggered] High CPU usage on host web-01",
  "alert_type": "error",
  "alert_transition": "Triggered",
  "alert_status": "Alert",
  "alert_metric": "system.cpu.user",
  "date": "1752739200000",
  "event_type": "metric_alert_monitor",
  "hostname": "web-01.prod.example.com",
  "org": { "id": "123456", "name": "Example Org" },
  "priority": "normal",
  "tags": "env:prod,service:web",
  "title": "[Triggered] High CPU usage on host web-01",
  "url": "https://app.datadoghq.com/event/event?id=4707056510925961466"
}

You can send this exact payload against your source's mapping from the Payload Mapping tab in the dashboard to verify the setup before wiring up a real monitor.

On this page