> ## Documentation Index
> Fetch the complete documentation index at: https://docs.obsy.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Datadog alerts

> Route Datadog monitor alerts to Obsy via webhook.

## Get your Obsy webhook URL

1. Go to **OTel Collector** in the sidebar (or **Integrations → Webhooks**).
2. Your per-org Datadog webhook URL is shown in the **Create Monitors** modal under **Alerts will automatically route to Obsy**.

The URL format is:

```
https://api.obsy.ai/api/v1/webhooks/{orgId}/datadog
```

## Register the webhook in Datadog

1. In Datadog, go to **Integrations → Webhooks**.
2. Click **New**.
3. Fill in:
   * **Name**: `obsy`
   * **URL**: paste your Obsy webhook URL
   * **Payload**: leave as default (Datadog's standard monitor payload)
4. Click **Save**.

## Add `@webhook-obsy` to monitors

For each monitor that should notify Obsy, add `@webhook-obsy` to the monitor's **Notify your team** field.

If you use Obsy's **Create OTel Collector Monitors** feature, the `@webhook-obsy` handle is added automatically to all 11 generated monitors.

## Automatic webhook registration

When you click **Create Monitors** in the OTel Collector page, Obsy registers the `obsy` webhook in Datadog automatically using your platform API key. You don't need to do step 1–3 manually for OTel monitors.

## Alert payload mapping

Obsy maps Datadog's webhook payload as follows:

| Datadog field  | Obsy field                                        |
| -------------- | ------------------------------------------------- |
| `title`        | Alert name                                        |
| `body`         | Description                                       |
| `alert_status` | Status (triggered → firing, recovered → resolved) |
| `priority`     | Severity (P1 → critical, P2 → warning)            |
| `tags`         | Labels (parsed as `key:value` pairs)              |
| `alert_id`     | `annotations.datadog_alert_id`                    |
| `url`          | `annotations.datadog_url`                         |

## Slack notification handle

In the **Create Monitors** modal, select a Slack channel from the dropdown. Obsy adds `@slack-{channel-name}` to the monitor's notification handles alongside `@webhook-obsy`. Alerts fire to both Obsy and Slack simultaneously.

## Troubleshooting

<AccordionGroup>
  <Accordion title="Alerts not arriving in Obsy">
    Confirm the webhook URL in Datadog matches your org ID exactly. Check the Datadog webhook integration event stream for delivery errors.
  </Accordion>

  <Accordion title="Status shows 'unknown' after an alert fires">
    Datadog sends `alert_status: triggered` — if you see `unknown`, the payload format may differ. Check **Alerts → {alert} → Raw payload** in Obsy to see what was received.
  </Accordion>
</AccordionGroup>
