Webhook adapters
Grafana
Send Grafana alerts to WarnFire with a webhook contact point — firing alerts open incidents, resolved alerts close them.
If your team alerts with Grafana (Grafana-managed alerting), this page connects it to WarnFire so a firing alert opens an incident and pages your on-call responder — and a resolution closes it automatically.
Alerts, not logs. WarnFire consumes Grafana alerts — an alert rule changing state. It does not read your dashboards, logs, or metrics. Set up the alert rules that matter, and WarnFire pages on those.
Grafana groups related alerts and sends them together, so a group of alerts becomes one incident. If you’d rather have one incident per alert, tighten the grouping on the notification policy in Grafana.
Before you begin
- A WarnFire service and integration key for these alerts. If you do not have one, create the service and its first key .
- Permission to add a Contact point in Grafana Alerting.
Add the WarnFire contact point in Grafana
In Grafana, go to Alerting → Contact points and select Add contact point.
Fill it in:
- Name:
WarnFire. - Integration:
Webhook. - URL:
https://api.warnfire.com/v1/integrations/webhooks/grafana
- Name:
Expand Optional Webhook settings → HTTP Headers (or the Authorization Header fields) and add your integration key as a bearer token:
- Header:
Authorization - Value:
Bearer wf_live_your_integration_key_here
The key travels in a header — never put it in the URL, where logs and proxies could capture it.
- Header:
Save the contact point.
Grafana’s Test button calls the public webhook exactly like a production notification. It can create an ordinary incident, page responders, consume SMS or voice allowance or prepaid credits, and invoke configured auto-recharge. It does not use WarnFire’s isolated test correlation keys. Use WarnFire’s side-effect-free preview and confirmed Send test workflow first; if you then use Grafana Test, notify the responder and treat it as a production-path test.
Point a notification policy at WarnFire
In Alerting → Notification policies, set the WarnFire contact point on the policies whose alerts should page. Grafana sends WarnFire a message when the alert fires and again when it resolves, so incidents open and close on their own.
How your alerts become incidents
WarnFire turns each Grafana alert group into one incident, using Grafana’s own group key to keep a group’s messages together:
- When the group is firing, the incident opens and paging starts.
- When the group is resolved, the same incident is closed.
- If the group sends more information, the incident gets an update, not a duplicate. An identical retry is recognized and ignored, so it can’t double-page anyone.
What shows up on the incident
WarnFire maps your Grafana data to the incident automatically:
| On the incident | Comes from |
|---|---|
| Title | The alert summary annotation, then Grafana’s rendered title, then the alert name |
| Severity | The severity label on the notification: critical → critical, error → error, warning → warning, info → info. Anything else pages at error. |
| Description | The description annotation, then Grafana’s message body |
| Environment · Component · Region | Your env, job/component, and region labels |
| Link | Grafana, Dashboard, Panel, and the alert source — jumps straight back |
| Labels · Details | The common labels, plus a per-alert firing/resolved summary |
To get the most out of this, add summary and description annotations to your alert rules, set a severity label, and label with env, job, and region.
A note if you also send from Alertmanager. Grafana gives one severity for the whole notification rather than one per alert, so that is what WarnFire uses, and it changes only when Grafana sends a different one. It is not recalculated from the individual alerts in the group the way Alertmanager severity is. The two behave differently on purpose, because the two tools send different things.
Verify it worked
- Follow Test before you connect , choose grafana, and confirm the preview maps the expected action, title, severity, correlation key, and metadata. Preview does not select or verify a service.
- Choose the intended service for Send test, send the confirmed test, and verify that one test incident opens for that service and pages its on-call responder.
- Fire and resolve a disposable Grafana alert. Confirm that one WarnFire incident opens and that the same incident closes.
Send test, Grafana Test, and a disposable alert can all page real responders. Selected SMS and voice deliveries consume allowance or prepaid credits and can invoke configured auto-recharge. Notify the responder before testing.
If Grafana gets an error back
| Error | What it means |
|---|---|
| 401 | The integration key is missing, wrong, expired, or revoked. Check the Authorization header on the contact point. |
| 400 | The payload wasn’t valid — most commonly a status other than firing/resolved, or a missing group key. |
| 429 | The trigger-rate limit or maximum active-incident limit was reached. Check Limits and protections , resolve stale incidents, and then retry. |
Next steps
Use Preview a mapping again before changing the Grafana contact point or notification policy in production.