---
title: How to Create, Edit, and Delete Metric Alerts (public)
description: Create, edit, and delete metric alert rules and notification channels for supported DigitalOcean resources.
product: Insights
url: https://docs.digitalocean.com/products/insights/how-to/manage-metrics-alerts/
last_updated: "2026-10-09"
---

> **For AI agents:** The documentation index is at [https://docs.digitalocean.com/llms.txt](https://docs.digitalocean.com/llms.txt). Markdown versions of pages use the same URL with `index.html.md` in place of the HTML page (for example, append `index.html.md` to the directory path instead of opening the HTML document).

# How to Create, Edit, and Delete Metric Alerts (public)

DigitalOcean Insights provides observability for supported resources through metrics, logs, traces, custom dashboards, and metric alerts.

**Note**:

  This feature is in [public preview](https://docs.digitalocean.com/platform/product-lifecycle/index.html.md#public-preview). To use it, opt in from the [**Feature Preview** page](https://cloud.digitalocean.com/account/feature-preview).

Metric alerts monitor resource metrics and notify you when a metric meets a defined condition. You can create alert rules for supported resources, configure evaluation periods and notification frequency, and send notifications through email, Slack, or webhooks.

**Note**:

  Metrics are currently available for Droplets, Kubernetes, Managed Databases, Load Balancers, App Platform, Functions, AI/ML products, and networking services.

## Enable Insights During Resource Creation

After you opt in to the public preview, you can enable the available Insights telemetry from the resource creation page when you create a supported DigitalOcean resource. For Droplets and GPU Droplets, select **Install the Observability agent** to install the agent during resource creation.

For supported managed resources that do not require the Observability agent, the resource creation page displays the available logs and traces options directly. When creating [Managed Agents](https://docs.digitalocean.com/products/managed-agents/index.html.md) resources, Insights is enabled by default.

## View Alerts Using the Control Panel

Use the **Alerts** tab to monitor active and resolved alerts, manage alert rules, and configure notification channels.

To view your alerts, go to the [DigitalOcean Control Panel](https://cloud.digitalocean.com/), in the left menu, click **DATA & LEARNING**, click **Insights**, and then click the **Alerts** tab.

The **Alerts** tab provides access to alerts, alert rules, and notification channels.

In the **All Alerts** tab, you can view active and resolved alerts. To filter the alerts displayed, in the top-right corner, select one of the following:

- **All** displays both active and resolved alerts.
- **Active** (default) displays alerts whose conditions are currently being met.
- **Resolved** displays alerts whose conditions are no longer being met.

After an alert resolves, you can view it in the **Resolved** tab for up to 30 days.

## View Alerts Using Automation

To view alerts via the API, send a request to the [List Alert Instances](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_list_alertInstances) endpoint:

## How to List Alert Instances Using the DigitalOcean API

[Create a personal access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/index.html.md) and save it for use with the API.

### cURL

Send a GET request to [`https://api.digitalocean.com/v2/insights/alert-instances`](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_list_alertInstances).

Using cURL:

```shell
curl -X GET \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
  "https://api.digitalocean.com/v2/insights/alert-instances?status=active&page=1&per_page=20"
```

To retrieve a specific alert, send its ID to the [Retrieve an Alert Instance](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_get_alertInstance) endpoint:

## How to Retrieve an Alert Instance Using the DigitalOcean API

[Create a personal access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/index.html.md) and save it for use with the API.

### cURL

Send a GET request to [`https://api.digitalocean.com/v2/insights/alert-instances/{id}`](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_get_alertInstance).

Using cURL:

```shell
curl -X GET \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
  "https://api.digitalocean.com/v2/insights/alert-instances/a1b2c3d4-e5f6-7890-abcd-ef1234567890"
```

## Create an Alert Rule Using the Control Panel

The **Alert Rules** tab lists your alert rules and lets you create, enable, disable, edit, or delete them.

To create an alert rule, go to the [Control Panel](https://cloud.digitalocean.com/), in the left menu, click **DATA & LEARNING**, click **Insights**, and then click the **Alerts** tab.

In the left menu, click the **Alert Rules** tab, and then click **Create rule** to open the **Create alert rule** window.

### Select Resource Type

The **Resource type** determines which type of resource the alert monitors.

To select a resource type, click the **Resource type** dropdown menu and choose the resource type you want to monitor. By default, the rule monitors all resources of the selected type. To monitor a specific resource instead, click the **Resources** dropdown menu and select the resource.

### Select Metric

The **Metric** determines which metric the alert monitors.

To select a metric, click the **Metric** field and choose a metric available for the selected resource type. For example, for Droplets, select `do.droplets.cpu.utilization`.

### Select an Evaluation Window

The **Evaluation window** determines how long the alert condition must persist before the alert triggers.

To select an evaluation window, click the **Evaluation window** menu and choose **1 minute**, **5 minutes** (default), **10 minutes**, **15 minutes**, **30 minutes**, or **1 hour**.

Shorter windows detect changes faster but may trigger on temporary fluctuations. Longer windows reduce sensitivity to brief changes but may delay notifications.

### Set a Condition

The **Condition** determines how the metric value is compared against the alert threshold.

To select a condition, click the **Condition** dropdown menu and choose `>=`, `>`, `<=`, `<`, `=`, or `!=`.

Then, in the field next to the **Condition** dropdown menu, enter the threshold value that triggers the alert when the selected condition is met.

### Configure Re-notification

The **Re-notify while unresolved** setting determines how often DigitalOcean sends another notification while the alert remains active.

To set the frequency, click the **Re-notify while unresolved** dropdown menu and choose **Every 30 minutes**, **Every 1 hour**, **Every 4 hours** (default), or **Never**.

### Select Notification Method

In the **Select Notification Method** section, select an existing notification channel.

To configure a new channel, click **+ Create New Notification Channel**.

In the **Name** field, enter a descriptive name for the rule. Include details such as the resource type, metric, environment, or condition so that you can distinguish the rule from similar alerts. For example, “Production GPU temperature”.

In the **Summary** section, review the resource, metric, condition, evaluation window, and notification configuration. Then, click **Create alert rule**.

The rule appears in the **Alert Rules** tab and is enabled by default. In the **Status** column, click the toggle to enable or disable the rule.

**Note**:

  If the alert rule has an active alert when you disable it, the alert’s state changes to **Resolved**.

## Create an Alert Rule Using Automation

To create an alert rule via the API, send a request to the [Create an Alert Rule](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_create_alertRule) endpoint with the metric, condition, evaluation window, and notification channel configuration.

## How to Create a Metric Alert Rule Using the DigitalOcean API

[Create a personal access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/index.html.md) and save it for use with the API.

### cURL

Send a POST request to [`https://api.digitalocean.com/v2/insights/alert-rules`](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_create_alertRule).

Using cURL:

```shell
curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
  -d '{"spec":{"name":"High CPU","query":{"metric":"do.droplets.cpu_utilization","resource_urns":["do:droplet:12345"],"tags":["env:prod"]},"condition":{"window":"EVALUATION_WINDOW_5M"},"thresholds":{"warning":80,"critical":95,"operator":"THRESHOLD_OPERATOR_GREATER_THAN"},"notification_channels":[{"notification_channel_id":"550e8400-e29b-41d4-a716-446655440000","notify_on":["SEVERITY_CRITICAL"]}],"re_alert_duration":"RE_ALERT_DURATION_4H"}}' \
  "https://api.digitalocean.com/v2/insights/alert-rules"
```

## Edit an Alert Rule Using the Control Panel

To edit an alert rule, go to the [Control Panel](https://cloud.digitalocean.com/), in the left menu, click **DATA & LEARNING**, click **Insights**, and then click the **Alerts** tab.

Then, in the left menu, click **Alert Rules**, then find the rule you want to edit, click **…** on the right of it, and then click **Edit** to open the **Edit alert rule** page.

Update the rule’s resource, metric, condition, evaluation window, re-notification frequency, or notification method as needed. These settings use the same configuration options as when you create a rule.

In the **Summary** section, review your changes, and then click **Save alert rule**.

Your changes take effect during the next alert evaluation cycle, which occurs approximately once per minute. If the rule has an active alert, its status updates during the next evaluation cycle based on the revised configuration.

## Edit an Alert Rule Using Automation

To edit an alert rule via the API, send a request to the [Update an Alert Rule](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_update_alertRule) endpoint with the alert rule ID and updated configuration. You can retrieve alert rule IDs using the [List Alert Rules](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_list_alertRules) endpoint.

## How to Edit a Metric Alert Rule Using the DigitalOcean API

[Create a personal access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/index.html.md) and save it for use with the API.

### cURL

Send a PUT request to [`https://api.digitalocean.com/v2/insights/alert-rules/{id}`](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_update_alertRule).

Using cURL:

```shell
curl -X PUT \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
  -d '{"spec":{"name":"High CPU (renamed)","query":{"metric":"do.droplets.cpu_utilization","resource_urns":["do:droplet:12345","do:droplet:67890"]},"condition":{"window":"EVALUATION_WINDOW_15M"},"thresholds":{"critical":90,"operator":"THRESHOLD_OPERATOR_GREATER_THAN_OR_EQUAL"},"notification_channels":[{"notification_channel_id":"550e8400-e29b-41d4-a716-446655440000"}]},"status":"ALERT_RULE_STATUS_PAUSED"}' \
  "https://api.digitalocean.com/v2/insights/alert-rules/a1b2c3d4-e5f6-7890-abcd-ef1234567890"
```

## Delete an Alert Rule Using the Control Panel

To delete an alert rule, go to the [DigitalOcean Control Panel](https://cloud.digitalocean.com/), in the left menu, click **DATA & LEARNING**, click **Insights**, and then click the **Alerts** tab.

Then, in the left menu, click **Alert Rules**, then find the rule you want to delete, click **…** on the right of it, and then click **Delete** to open the **Delete alert rule** window.

Deleting an alert rule permanently removes it and stops the rule from evaluating metrics or triggering new alerts.

In the **Alert rule name** field, enter the rule’s name to confirm the deletion. Then, click **Delete**.

**Note**:

  If the alert rule has an active alert when you delete it, the alert’s state changes to **Resolved**.

## Delete an Alert Rule Using Automation

To delete an alert rule via the API, send a request to the [Delete an Alert Rule](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_delete_alertRule) endpoint with the alert rule ID. You can retrieve alert rule IDs using the [List Alert Rules](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_list_alertRules) endpoint.

## How to Delete a Metric Alert Rule Using the DigitalOcean API

[Create a personal access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/index.html.md) and save it for use with the API.

### cURL

Send a DELETE request to [`https://api.digitalocean.com/v2/insights/alert-rules/{id}`](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_delete_alertRule).

Using cURL:

```shell
curl -X DELETE \
  -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
  "https://api.digitalocean.com/v2/insights/alert-rules/a1b2c3d4-e5f6-7890-abcd-ef1234567890"
```

## Create a Notification Channel Using the Control Panel

Notification channels define where DigitalOcean sends notifications when an alert rule triggers. You can create channels for email, Slack, or webhook destinations and reuse them across multiple alert rules.

To create a notification channel, go to the [DigitalOcean Control Panel](https://cloud.digitalocean.com/), in the left menu, click **DATA & LEARNING**, click **Insights**, and then click the **Alerts** tab.

Then, in the left menu, click **Notification Channels**, in the top-right corner, click **Create notification channel** to open the **Create notification channel** window.

### Choose a Name

In the **Name** field, enter a descriptive name that identifies the destination or its purpose. For example, “Production on-call email”, “Infrastructure alerts Slack”, or “Incident management webhook”.

### Configure Notification Type

The type of notification you use determines how DigitalOcean sends alert notifications.

To select a notification type, click the **Type** dropdown menu, and then choose **Email**, **Slack**, or **Webhook**:

## Email

Select **Email**, and then, in the **Recipients** field, enter the email addresses that should receive alert notifications. You can add multiple email addresses.

**Note**:

  Email addresses are not pre-populated. Recipients do not need to belong to your DigitalOcean team, but their email addresses must be verified before you can add them to the notification channel.

## Slack

Select **Slack**, and then choose how to connect the Slack destination.

To connect using OAuth, in the **Existing Connections** tab, click **Connect Slack** or **+ Add additional Slack connections**, authorize DigitalOcean to access your Slack workspace, and then select the Slack channel that should receive alert notifications.

To connect using a webhook, click the **Custom** tab. In the **Slack Webhook URL** field, enter the Slack incoming webhook URL. In the **Channel** field, enter the Slack channel that should receive notifications.

You can configure either an OAuth connection or a Slack webhook for a notification channel, but not both.

## Webhook

Select **Webhook**, and then, in the **URL** field, enter the HTTPS endpoint that should receive alert payloads. For example, enter the endpoint for an incident-management service or an internal alert-processing application.

Click the **Authentication** dropdown menu, and then select the authentication method required by your endpoint:

- **None** (default) sends the request without authentication. Use this option only when the endpoint does not require credentials or performs authentication through another supported mechanism.
- **Basic auth** sends a username and password with the request. Use this option when the endpoint supports HTTP Basic authentication. Enter the endpoint credentials in the **Username** and **Password** fields.
- **Bearer token** sends a bearer token with the request. Use this option for endpoints that authenticate requests using an API token or access token. Enter the token in the **Bearer token** field or use the default token.

To allow your endpoint to verify that payloads were sent using the configured channel, enable **Sign webhook payload**. In the **Signing secret** field, enter the secret DigitalOcean should use to generate the payload signature. Configure the receiving endpoint to validate the signature before processing the payload.

To include additional request metadata, click **+ Add HTTP header**. In the **Headers** section, enter the HTTP header name in the **Key** field and its value in the **Value** field. You can use custom headers for routing, tenancy information, or vendor-specific metadata.

**Note**:

  Do not add an **Authorization** header manually. Instead, configure credentials using the **Authentication** section to avoid duplicate or conflicting authentication headers.

To remove a header, click the trash icon next to it. To add another header, click **+ Add HTTP header**.

After configuring the channel, click **Create notification channel**.

The channel appears in the **Notification Channels** tab and is immediately available when you create or edit an alert rule.

## Create a Notification Channel Using Automation

To create a notification channel via the API, send a request to the [Create a Notification Channel](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_create_notificationChannel) endpoint with the channel name, type, and destination configuration.

## How to Create a Notification Channel Using the DigitalOcean API

[Create a personal access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/index.html.md) and save it for use with the API.

### cURL

Send a POST request to [`https://api.digitalocean.com/v2/insights/notification-channels`](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_create_notificationChannel).

Using cURL:

```shell
curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
  -d '{"name":"Platform alerts","slack":{"webhook_url":"https://hooks.slack.com/services/T000/B000/XXXXXXXX","channel":"#platform-alerts"}}' \
  "https://api.digitalocean.com/v2/insights/notification-channels"
```

## Edit a Notification Channel Using the Control Panel

To edit a notification channel, go to the [DigitalOcean Control Panel](https://cloud.digitalocean.com/), in the left menu, click **DATA & LEARNING**, click **Insights**, and then click the **Alerts** tab.

Then, in the left menu, click **Notification Channels**, find the channel you want to edit, and then click its name to open the **Edit notification channel** window.

Update the channel settings as needed. The available settings are the same as when you create a notification channel.

After making your changes, click **Save notification channel**.

## Edit a Notification Channel Using Automation

To edit a notification channel via the API, send a request to the [Update a Notification Channel](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_update_notificationChannel) endpoint with the notification channel ID and updated configuration. You can retrieve notification channel IDs using the [List Notification Channels](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_list_notificationChannels) endpoint.

## How to Edit a Notification Channel Using the DigitalOcean API

[Create a personal access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/index.html.md) and save it for use with the API.

### cURL

Send a PUT request to [`https://api.digitalocean.com/v2/insights/notification-channels/{id}`](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_update_notificationChannel).

Using cURL:

```shell
curl -X PUT \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
  -d '{"name":"Platform alerts (updated)","slack":{"channel":"#platform-alerts-prod"}}' \
  "https://api.digitalocean.com/v2/insights/notification-channels/550e8400-e29b-41d4-a716-446655440000"
```

## Delete a Notification Channel Using the Control Panel

To delete a notification channel, go to the [DigitalOcean Control Panel](https://cloud.digitalocean.com/), in the left menu, click **DATA & LEARNING**, click **Insights**, and then click the **Alerts** tab.

Then, in the left menu, click **Notification Channels**, find the channel you want to delete, click **…** on the right of it, and then click **Delete** to open the **Delete notification channel** window.

Deleting a notification channel permanently removes it. Alert rules that use the channel can no longer send notifications to that destination.

**Note**:

  You cannot delete a notification channel that is used by an alert rule. Before deleting the channel, update the associated alert rules to use another notification channel.

In the **Notification channel name** field, enter the channel’s name to confirm the deletion. Then, click **Delete**.

## Delete a Notification Channel Using Automation

To delete a notification channel via the API, send a request to the [Delete a Notification Channel](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_delete_notificationChannel) endpoint with the notification channel ID. You can retrieve notification channel IDs using the [List Notification Channels](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_list_notificationChannels) endpoint.

## How to Delete a Notification Channel Using the DigitalOcean API

[Create a personal access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/index.html.md) and save it for use with the API.

### cURL

Send a DELETE request to [`https://api.digitalocean.com/v2/insights/notification-channels/{id}`](https://docs.digitalocean.com/reference/api/reference/insights/index.html.md#insights_delete_notificationChannel).

Using cURL:

```shell
curl -X DELETE \
  -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
  "https://api.digitalocean.com/v2/insights/notification-channels/550e8400-e29b-41d4-a716-446655440000"
```