aliases |
canonical |
description |
keywords |
labels |
menuTitle |
title |
weight |
../../../fundamentals/contact-points/notifiers/webhook-notifier/ |
../../../fundamentals/contact-points/webhook-notifier/ |
../../../manage-notifications/manage-contact-points/webhook-notifier/ |
alerting/manage-notifications/manage-contact-points/webhook-notifier/ |
../../../alerting-rules/manage-contact-points/integrations/webhook-notifier/ |
|
https://grafana.com/docs/grafana/latest/alerting/configure-notifications/manage-contact-points/integrations/webhook-notifier/ |
Configure the webhook notifier integration for Alerting |
grafana |
alerting |
guide |
contact point |
templating |
|
|
Webhook notifier |
Configure the webhook notifier for Alerting |
200 |
Configure the webhook notifier for Alerting
The webhook notification is a simple way to send information about a state change over HTTP to a custom endpoint. Using this notification you could integrate Grafana into a system of your choosing.
Webhook JSON payload
{
"receiver": "My Super Webhook",
"status": "firing",
"orgId": 1,
"alerts": [
{
"status": "firing",
"labels": {
"alertname": "High memory usage",
"team": "blue",
"zone": "us-1"
},
"annotations": {
"description": "The system has high memory usage",
"runbook_url": "https://myrunbook.com/runbook/1234",
"summary": "This alert was triggered for zone us-1"
},
"startsAt": "2021-10-12T09:51:03.157076+02:00",
"endsAt": "0001-01-01T00:00:00Z",
"generatorURL": "https://play.grafana.org/alerting/1afz29v7z/edit",
"fingerprint": "c6eadffa33fcdf37",
"silenceURL": "https://play.grafana.org/alerting/silence/new?alertmanager=grafana&matchers=alertname%3DT2%2Cteam%3Dblue%2Czone%3Dus-1",
"dashboardURL": "",
"panelURL": "",
"values": {
"B": 44.23943737541908,
"C": 1
}
},
{
"status": "firing",
"labels": {
"alertname": "High CPU usage",
"team": "blue",
"zone": "eu-1"
},
"annotations": {
"description": "The system has high CPU usage",
"runbook_url": "https://myrunbook.com/runbook/1234",
"summary": "This alert was triggered for zone eu-1"
},
"startsAt": "2021-10-12T09:56:03.157076+02:00",
"endsAt": "0001-01-01T00:00:00Z",
"generatorURL": "https://play.grafana.org/alerting/d1rdpdv7k/edit",
"fingerprint": "bc97ff14869b13e3",
"silenceURL": "https://play.grafana.org/alerting/silence/new?alertmanager=grafana&matchers=alertname%3DT1%2Cteam%3Dblue%2Czone%3Deu-1",
"dashboardURL": "",
"panelURL": "",
"values": {
"B": 44.23943737541908,
"C": 1
}
}
],
"groupLabels": {},
"commonLabels": {
"team": "blue"
},
"commonAnnotations": {},
"externalURL": "https://play.grafana.org/",
"version": "1",
"groupKey": "{}:{}",
"truncatedAlerts": 0,
"title": "[FIRING:2] (blue)",
"state": "alerting",
"message": "**Firing**\n\nLabels:\n - alertname = T2\n - team = blue\n - zone = us-1\nAnnotations:\n - description = This is the alert rule checking the second system\n - runbook_url = https://myrunbook.com\n - summary = This is my summary\nSource: https://play.grafana.org/alerting/1afz29v7z/edit\nSilence: https://play.grafana.org/alerting/silence/new?alertmanager=grafana&matchers=alertname%3DT2%2Cteam%3Dblue%2Czone%3Dus-1\n\nLabels:\n - alertname = T1\n - team = blue\n - zone = eu-1\nAnnotations:\nSource: https://play.grafana.org/alerting/d1rdpdv7k/edit\nSilence: https://play.grafana.org/alerting/silence/new?alertmanager=grafana&matchers=alertname%3DT1%2Cteam%3Dblue%2Czone%3Deu-1\n"
}
Webhook fields
Body
Key |
Type |
Description |
receiver |
string |
Name of the webhook |
status |
string |
Current status of the alert, firing or resolved |
orgId |
number |
ID of the organization related to the payload |
alerts |
array of alerts |
Alerts that are triggering |
groupLabels |
object |
Labels that are used for grouping, map of string keys to string values |
commonLabels |
object |
Labels that all alarms have in common, map of string keys to string values |
commonAnnotations |
object |
Annotations that all alarms have in common, map of string keys to string values |
externalURL |
string |
External URL to the Grafana instance sending this webhook |
version |
string |
Version of the payload |
groupKey |
string |
Key that is used for grouping |
truncatedAlerts |
number |
Number of alerts that were truncated |
title |
string |
Will be deprecated soon |
state |
string |
Will be deprecated soon |
message |
string |
Will be deprecated soon |
Alert
Key |
Type |
Description |
status |
string |
Current status of the alert, firing or resolved |
labels |
object |
Labels that are part of this alert, map of string keys to string values |
annotations |
object |
Annotations that are part of this alert, map of string keys to string values |
startsAt |
string |
Start time of the alert |
endsAt |
string |
End time of the alert, default value when not resolved is 0001-01-01T00:00:00Z |
values |
object |
Values that triggered the current status |
generatorURL |
string |
URL of the alert rule in the Grafana UI |
fingerprint |
string |
The labels fingerprint, alarms with the same labels will have the same fingerprint |
silenceURL |
string |
URL to silence the alert rule in the Grafana UI |
dashboardURL |
string |
Will be deprecated soon |
panelURL |
string |
Will be deprecated soon |
imageURL |
string |
URL of a screenshot of a panel assigned to the rule that created this notification |
{{< admonition type="note" >}}
Alert rules are not coupled to dashboards anymore therefore the fields related to dashboards dashboardId
and panelId
have been removed.
{{< /admonition >}}
Procedure
To create your webhook integration in Grafana Alerting, complete the following steps:
- Navigate to Alerts & IRM -> Alerting -> Contact points.
- Click + Add contact point.
- Enter a contact point name.
- From the Integration list, select Webhook.
- In the URL field, copy in your Webhook URL.
- Click Test to check that your integration works.
- Click Save contact point.
Next steps
To add the contact point and integration you created to your default notification policy, complete the following steps.
- Navigate to Alerts & IRM -> Alerting -> Notification policies.
- In the Default policy, click the ellipsis icon (…) and then Edit.
- Change the default policy to the contact point you created.
- Click Update default policy.
{{< admonition type="note" >}}
If you have more than one contact point, add a new notification policy rather than edit the default one, so you can route specific alerts to your webhook.
{{< /admonition >}}