> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flashduty.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Auvik alert integration

> Send Auvik network monitoring alert triggered and cleared notifications to Flashduty On-call through a Webhook integration.

Use the Webhook integration of Auvik to send alerts on devices, interfaces, networks, and services to Flashduty On-call. Auvik posts one notification when an alert is triggered and one when it is cleared. Flashduty links both with the same Alert Key: the trigger creates an alert and the clear recovers it.

<div className="hide">
  ## In Flashduty On-call

  ***

  You can obtain an integration push URL in either of the following ways.

  ### Use a dedicated integration

  1. In the Flashduty console, select **Channel** and open a channel
  2. Select **Configuration** → **Integrations** → **Private integration**, then click **Add an integration**
  3. Select **Auvik**, then click **Save**
  4. Open the generated integration card and copy the **Push URL**

  ### Use a shared integration

  1. In the Flashduty console, select **Integration Center → Alert Events**
  2. Select **Auvik** and enter an integration name
  3. Configure the default route and select a channel; after creation, add more rules under **Route** if needed
  4. Click **Save** and copy the generated **Push URL**
</div>

## Configure Auvik

***

Webhook integrations can be managed only from the MSP global view in Auvik, and you need the matching administrative permission. The webhook URL must use HTTPS, which the Flashduty push URL does.

<Steps>
  <Step title="Add a Webhook integration">
    1. In the left navigation bar of Auvik, click **Integrations**
    2. Hover over **Add Integration** and select **Webhook**
    3. Enter a name in **Integration name**
    4. Paste the full Flashduty push URL into **Webhook URL**. The URL must include `integration_key`
    5. Select **No Authentication** as the authentication method. Flashduty authenticates the request by the `integration_key` in the URL
    6. Leave the JSONata transformation empty. Flashduty parses the default Auvik notification format
    7. Click **Test Connection**. Auvik posts `{"my-api-test-field": "my-api-test-value"}` to the URL, and Flashduty returns success without creating an alert
    8. Click **Save**
  </Step>

  <Step title="Create a notification channel and associate it with alerts">
    Auvik sends only the alerts that are associated with a notification channel:

    1. Go to **Manage Alerts → Notification Channels** and click **Add Notification Channel**
    2. Enter a name, select **Webhook** as the **Contact Method**, and select the integration you just created
    3. Save it, then associate the notification channel with the alerts you want to send to Flashduty, from the global view or a site view
  </Step>

  <Step title="Verify">
    When an alert is triggered in Auvik, an active alert appears in Flashduty. When the condition recovers and Auvik clears the alert, the Flashduty alert recovers automatically.
  </Step>
</Steps>

<Note>
  Auvik requires standard English characters in organization names. Webhook alerts may not be delivered as expected otherwise. You can change the name under **Admin → Settings → Organization**.
</Note>

## Alert Key

***

Flashduty uses `correlationId` from the notification as the Alert Key. Auvik documents it as the unique API identifier of the alert trigger. The triggered and cleared notifications of one alert carry the same `correlationId` but different `alertId` values, so Flashduty does not use `alertId`. Changes to the alert name, severity, description, or time do not change the Alert Key. A notification that has a status but no `correlationId` is rejected.

## Status and severity

***

Flashduty derives the status from `alertStatusString` (or `alertStatus` when the string is missing) and the severity from `alertSeverity` (or `alertSeverityString` when the number is missing):

| Auvik status | Flashduty status |
| :- | :- |
| `Triggered` (`alertStatus` 0) | Triggered |
| `Cleared` (`alertStatus` 1) | Recovered |

| Auvik severity | `alertSeverity` | Flashduty severity |
| :- | :- | :- |
| Emergency | 1 | Critical |
| Critical | 2 | Critical |
| Warning | 3 | Warning |
| Info | 4 | Info |

A missing or unrecognized severity is treated as Warning.

## Labels

***

| Label | Source |
| :- | :- |
| `check` | Alert name (`alertName`) |
| `resource` | Name of the asset that triggered the alert (`entityName`) |
| `entity_id` / `entity_type` | Asset ID and type (`device`, `interface`, `network`, `service`) |
| `site` / `site_id` | Name and ID of the site the asset belongs to |
| `alert_id` | `alertId` of this notification |
| `correlation_id` | `correlationId`, used as the Alert Key |
| `severity` | Severity string from Auvik |
| `url` | Link to the alert in Auvik |

## Troubleshooting

***

* **Test Connection fails**: Confirm the webhook URL is complete, includes `integration_key`, and uses HTTPS
* **No alerts arrive**: Confirm the notification channel is associated with the alerts and uses this Webhook integration as its contact method
* **The alert does not recover**: Auvik posts a `Cleared` notification only when it clears the alert. If the alert is dismissed or deleted in Auvik, close it manually in Flashduty
* **Flashduty returns an invalid parameter error**: The notification has a status but no `correlationId`, or the status is neither `Triggered` nor `Cleared`. Make sure no JSONata transformation is configured

For field details, see [How do I interpret Auvik webhook notifications?](https://support.auvik.com/hc/en-us/articles/360048647112) and [Integrating Auvik with a webhook](https://support.auvik.com/hc/en-us/articles/216977386).
