Skip to main content

rawops.dev

RawMon Docs

Webhook Setup Guide

Step-by-step guide to configuring webhooks from Prometheus, Grafana, Zabbix, Datadog, PagerDuty, New Relic, and generic sources for RawMon push notifications.

Last updated: 2026-03-08

Overview

RawMon receives webhooks from 7 external monitoring tools via its Cloudflare Worker push relay. Each tool has a dedicated parser that extracts alert status, title, and message from the incoming payload.

Your webhook URL is:

https://rawmon-push-relay.rawops.workers.dev/?source=SOURCE&deviceId=YOUR_DEVICE_ID

Find your device ID in Settings > Push Notifications.

Prometheus / Alertmanager

Source parameter: prometheus

  1. In your Alertmanager config (alertmanager.yml), add a webhook receiver:
receivers:
  - name: rawmon
    webhook_configs:
      - url: "https://rawmon-push-relay.rawops.workers.dev/?source=prometheus&deviceId=YOUR_ID"
  1. Route alerts to the rawmon receiver. The parser reads status (firing/resolved), alerts[].labels.alertname, and alerts[].annotations.description.

Grafana

Source parameter: grafana

  1. Go to Alerting > Contact Points > New Contact Point.
  2. Choose Webhook type.
  3. Set the URL to your RawMon webhook URL with source=grafana.
  4. Grafana sends state (alerting/ok), title, and message fields.

Zabbix

Source parameter: zabbix

  1. Go to Administration > Media Types > Create.
  2. Choose Webhook type and set the URL.
  3. Map Zabbix macros to the JSON payload: {HOST.NAME}, {TRIGGER.STATUS}, {TRIGGER.NAME}.
  4. The parser reads status (PROBLEM/RESOLVED), host, and trigger.

Datadog

Source parameter: datadog

  1. Go to Integrations > Webhooks in your Datadog dashboard.
  2. Add a new webhook with your RawMon URL (source=datadog).
  3. Use the default JSON payload. The parser reads event_type, title, and body from Datadog's payload format.

PagerDuty

Source parameter: pagerduty

  1. Go to Services > Your Service > Integrations > Add Integration.
  2. Choose Generic Webhooks (v3).
  3. Set the URL to your RawMon webhook URL with source=pagerduty.
  4. The parser reads event.event_type (incident.triggered/incident.resolved) and incident details.

New Relic

Source parameter: newrelic

  1. Go to Alerts & AI > Notification Channels > Create Channel.
  2. Choose Webhook and enter your RawMon URL with source=newrelic.
  3. The parser reads current_state (open/closed), condition_name, and details.

Generic Webhook

Source parameter: generic

For tools not listed above, use the generic parser with custom field mapping:

?source=generic&deviceId=YOUR_ID&titlePath=alert.name&messagePath=alert.detail&statusPath=alert.state

Custom field mappings (query parameters):

  • titlePath — Dot-notation path to the alert title in the JSON payload
  • messagePath — Path to the alert description/message
  • statusPath — Path to the status field

The status field value is evaluated as UP if it matches: ok, resolved, up, recovery, healthy. Everything else is treated as DOWN.