> For the complete documentation index, see [llms.txt](https://docs.itoc360.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.itoc360.com/integrations/inbound-integrations/cloud-monitoring/azure-metric-alerts-integration.md).

# Azure Metric Alerts Integration

## Azure Metric Alerts — Webhook Integration

Azure Monitor lets you fire alerts when any resource metric crosses a threshold — CPU usage, storage capacity, request latency, whatever you're tracking. Those alerts can hit a webhook endpoint directly via Action Groups, which is how we get them into the on-call platform.

This guide walks through setting up a Storage Account metric alert as an example. The same steps apply to any other Azure resource type.

### 1. Create a Storage Account (if you don't have one)

You need at least one Azure resource to attach a metric alert to. A Storage Account works well for testing — it's free to create and always has measurable metrics.

Go to **Azure Portal** → search **Storage accounts** → **+ Create**. Fill in the basics (subscription, resource group, name, region) and click through to **Review + create**.

<figure><img src="/files/1vKXQ6Xpb42K00e3kNuS" alt=""><figcaption></figcaption></figure>

Hit **Create**. Once the deployment finishes you'll see this:

<figure><img src="/files/JkjF7ycf4agbv6QeBe2X" alt=""><figcaption></figcaption></figure>

Click **Go to resource** to open the storage account.

### 2. Create the alert rule

From the storage account overview, go to **Monitor → Alerts** in the left panel, then **+ Create → Alert rule**. On the **Scope** tab, click **Select scope** — a panel slides in on the right. Find your storage account in the list, check it, and hit **Apply**.

<figure><img src="/files/B0jbgLGonw9vAcVZoaqX" alt=""><figcaption></figcaption></figure>

### 3. Set the condition

Switch to the **Condition** tab. Click **Select a signal** — a search panel opens. Type `used` and select **Used capacity** from the results.

<figure><img src="/files/RTiYIYCiAFeQhccpidUw" alt=""><figcaption></figcaption></figure>

On the condition configuration screen, set the threshold to whatever makes sense for your alert. For a quick test, **Greater than 0 bytes** works fine since any data in the account will trigger it.

<figure><img src="/files/OU16FwbRiidQt22u6D7w" alt=""><figcaption></figcaption></figure>

Click **Next: Actions**.

### 4. Create the action group

On the **Actions** tab, select **Use action groups**, then **+ Create action group**. Give it a name — something like `OnCall-Webhook-Group` — and set a short display name.

<figure><img src="/files/JSuo4uywpmXm95UYPH8z" alt=""><figcaption></figcaption></figure>

Click through to the **Actions** tab within the action group form. Set **Action type** to **Webhook**, give it a name like `TriggerWebhook`, and paste your on-call platform webhook URL into the **URI** field. Make sure **Enable the common alert schema** is set to **Yes** — this standardizes the payload format across all Azure alert types.

Hit **OK**, then **Review + create** → **Create**.

<figure><img src="/files/CgCWrRCvtchJuPmWzA61" alt=""><figcaption></figcaption></figure>

Back in the alert rule form, you'll see a panel to select from existing action groups. Pick **OnCall-Webhook-Group** and click **Select**.

<figure><img src="/files/cUhAeVTUPuAGZW24UR9L" alt=""><figcaption></figcaption></figure>

### 5. Name the alert rule

On the **Details** tab, give the alert rule a descriptive name. Set the severity level to match what this alert means for your environment.

<figure><img src="/files/Y3JkSw9N1yq5HHd7o8nw" alt=""><figcaption></figcaption></figure>

Click **Review + create** → **Create**.

### 6. Verify the action group

To confirm the webhook URL is correctly set, go to **Monitor → Alerts → Action groups** and open **OnCall-Webhook-Group**. The Actions section should show the webhook entry with your [https://api.itoc360.app/functions/v1/events?token=\<x-itoc-360>](https://api.itoc360.app/functions/v1/events?token=<x-itoc-360>) URL.

<figure><img src="/files/Cgew9JMS6vGisgT9yORv" alt=""><figcaption></figcaption></figure>

That's it. When the metric condition is met, Azure will POST the alert payload to your webhook URL and the on-call platform will create an alert automatically.

### Field mappings

Azure Metric alerts use the Common Alert Schema. The platform reads the following fields:

| Azure Field                        | Platform Field                                                           |
| ---------------------------------- | ------------------------------------------------------------------------ |
| `data.essentials.alertId`          | Fingerprint — ties together fired and resolved events for the same alert |
| `data.essentials.monitorCondition` | `Fired` → ALERT, `Resolved` → RESOLVE                                    |
| `data.essentials.severity`         | Priority                                                                 |
| `data.essentials.alertRule`        | Alert title                                                              |

Severity to priority mapping:

| Azure Severity | Platform Priority |
| -------------- | ----------------- |
| Sev0           | CRITICAL          |
| Sev1           | HIGH              |
| Sev2           | MEDIUM            |
| Sev3           | LOW               |
| Sev4           | LOW               |

**Will alerts resolve automatically?** Yes — when the metric condition clears, Azure fires another webhook with `monitorCondition: Resolved` and the platform closes the alert.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.itoc360.com/integrations/inbound-integrations/cloud-monitoring/azure-metric-alerts-integration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
