---
title: Inbound Webhook for Grafana OnCall
menuTitle: Inbound Webhooks
description: Learn how to configure the Webhook integration for Grafana OnCall.
weight: 0
keywords:
  - OnCall
  - Integrations
  - Alerts
  - Webhook
  - Notifications
labels:
  products:
    - cloud
canonical: https://grafana.com/docs/oncall/latest/configure/integrations/references/webhook
aliases:
  - /docs/grafana-cloud/alerting-and-irm/oncall/configure/integrations/references/webhook
  - /docs/grafana-cloud/alerting-and-irm/oncall/integrations/webhook
  - /docs/oncall/latest/integrations/webhook/
  - /add-webhook-integration/
  - ../integrations/ # /docs/oncall/<ONCALL_VERSION>/configure/integrations/references/webhook
refs:
  jinja2-templating:
    - pattern: /docs/oncall/
      destination: /docs/oncall/<ONCALL_VERSION>/configure/jinja2-templating/
    - pattern: /docs/grafana-cloud/
      destination: /docs/grafana-cloud/alerting-and-irm/oncall/configure/jinja2-templating/
---

# Inbound Webhook integrations for Grafana OnCall

Grafana OnCall directly supports many integrations, those that aren’t currently listed in the Integrations menu can be
connected using the webhook integration and configured alert templates.

With the webhook integration, you can connect to any alert source that isn't listed in the **Create Integration** page.

There are two available formats, **Webhook** and **Formatted Webhook**.

- **Webhook** will pull all of the raw JSON payload and display it in the manner that it's received.
- **Formatted Webhook** can be used if the alert payload sent by your monitoring service is formatted in a way that
  OnCall recognizes.

  The following fields are recognized, but none are required:

  - `alert_uid`: a unique alert ID for grouping.
  - `title`: a title.
  - `image_url`: a URL for an image attached to alert.
  - `state`: either `ok` or `alerting`. Helpful for auto-resolving.
  - `link_to_upstream_details`: link back to your monitoring system.
  - `message`: alert details.

To configure a webhook integration:

1. In the **Integrations** tab, click **+ New integration to receive alerts**.
2. Select either **Webhook** or **Formatted Webhook** integration.
3. Follow the configuration steps in the **How to connect** section of the integration settings.
4. Use the unique webhook URL to complete any configuration in your monitoring service to send POST requests. Use any
   http client, e.g. curl to send POST requests with any payload.

For example:

```bash
curl -X POST \
https://a-prod-us-central-0.grafana.net/integrations/v1/formatted_webhook/m12xmIjOcgwH74UF8CN4dk0Dh/ \
-H 'Content-Type: Application/json' \
-d '{
    "alert_uid": "08d6891a-835c-e661-39fa-96b6a9e26552",
    "title": "The whole system is down",
    "image_url": "https://upload.wikimedia.org/wikipedia/commons/e/ee/Grumpy_Cat_by_Gage_Skidmore.jpg",
    "state": "alerting",
    "link_to_upstream_details": "https://en.wikipedia.org/wiki/Downtime",
    "message": "Smth happened. Oh no!"
}'
```

To learn how to use custom alert templates for formatted webhooks, see
[Configure alerts templates](ref:jinja2-templating).
