← wakehook.com
Integration guide
Grafana's unified alerting is built on the same alert-group model as Alertmanager — so is this mapping. Add WakeHook as a webhook contact point and a firing alert rings a phone until someone acknowledges it, straight through Silent and Do Not Disturb.
In your WakeHook dashboard, open Sources → Add source, name it Grafana, and pick the Grafana preset. Copy the Webhook URL — shown once, in full.
In Grafana, go to Alerting → Contact points → Add contact point. Set Integration to Webhook and paste your URL into URL.
Under Notification policies, route the alert rules you want WakeHook to page for to this contact point (or set it as the default).
Use Grafana's own Test button on the contact point, or trigger a real rule, to confirm a TRIGGERED incident lands in your dashboard.
Grafana POSTs the same "group of alerts" shape Alertmanager does, plus a few Grafana-only conveniences this mapping prefers when they're present:
| WakeHook field | Comes from | Notes |
|---|---|---|
| title | title | Falls back to commonLabels.alertname |
| body | message | Grafana's own alert message |
| severity | commonLabels.severity | Same Prometheus-style mapping as Alertmanager — page/emergency → critical, warning → high, else the safe default (high) |
| status | status | firing / resolved |
| dedup_key | groupKey | Grafana's own group identity |
| link | first alert's dashboardURL | Falls back to externalURL — jumps straight to the panel that fired |
| tags | commonLabels | All of them, passed through |
{
"status": "firing",
"title": "[FIRING:1] High memory usage",
"message": "Memory above 90% on prod-db-1",
"groupKey": "{}/{alertname=\"HighMemory\"}",
"commonLabels": { "alertname": "HighMemory", "severity": "critical" },
"alerts": [ { "dashboardURL": "https://grafana.example.com/d/abc123" } ]
}
Ready to wire it up?Free while WakeHook is in beta — one source, one device.
Join the waitlistOther integrations