---
title: "Create a New Alert"
method: POST
path: "/v2/uptime/checks/{check_id}/alerts"
tags: ["DigitalOcean-public.v2-new_Uptime"]
---

# Create a New Alert

`POST /v2/uptime/checks/{check_id}/alerts`

To create an Uptime alert, send a POST request to `/v2/uptime/checks/$CHECK_ID/alerts` specifying the attributes
in the table below in the JSON body.

## Path parameters

- `check_id` string, uuid, required

## Request body

- Alert
  - `id` string, uuid — A unique ID that can be used to identify and reference the alert.
  - `name` string — A human-friendly display name.
  - `type` 'latency' | 'down' | 'down_global' | 'ssl_expiry' — The type of alert.
  - `threshold` integer — The threshold at which the alert will enter a trigger state. The specific threshold is dependent on the alert type.
  - `comparison` 'greater_than' | 'less_than' — The comparison operator used against the alert's threshold.
  - `notifications` Notification — The notification settings for a trigger alert.
    - `email` string[], required — An email to notify on an alert trigger. The Email has to be one that is verified on that DigitalOcean account.
    - `slack` object[], required — Slack integration details.
      - `channel` string, string, required — Slack channel to notify of an alert trigger.
      - `url` string, string, required — Slack Webhook URL.
  - `period` '2m' | '3m' | '5m' | '10m' | '15m' | '30m' | '1h' — Period of time the threshold must be exceeded to trigger the alert.

## Response `201`

The response will be a JSON object with a key called `alert`. The value of this will be an object that contains the standard attributes associated with an uptime alert.

- object
  - `alert` Alert
    - `id` string, uuid — A unique ID that can be used to identify and reference the alert.
    - `name` string — A human-friendly display name.
    - `type` 'latency' | 'down' | 'down_global' | 'ssl_expiry' — The type of alert.
    - `threshold` integer — The threshold at which the alert will enter a trigger state. The specific threshold is dependent on the alert type.
    - `comparison` 'greater_than' | 'less_than' — The comparison operator used against the alert's threshold.
    - `notifications` Notification — The notification settings for a trigger alert.
      - `email` string[], required — An email to notify on an alert trigger. The Email has to be one that is verified on that DigitalOcean account.
      - `slack` object[], required — Slack integration details.
        - `channel` string, string, required — Slack channel to notify of an alert trigger.
        - `url` string, string, required — Slack Webhook URL.
    - `period` '2m' | '3m' | '5m' | '10m' | '15m' | '30m' | '1h' — Period of time the threshold must be exceeded to trigger the alert.

## Other responses

- `401` — Authentication failed due to invalid credentials.
- `404` — The resource was not found.
- `429` — The API rate limit has been exceeded.
- `500` — There was a server error.
- `default` — There was an unexpected error.

## Changes

- **2025-10-16** `cb3bf9b21459` — 2 info
  - api tag `DigitalOcean-public.v2-new_Uptime` added
  - api tag `Uptime` removed
- **2025-07-18** `f8e8c290636c` — 1 info
  - endpoint added
- **2025-07-17** `5fc9af728e82` — 1 breaking
  - api path removed without deprecation
- **2025-07-17** `f8e8c290636c` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/digitalocean/apis/digitalocean-api/changes/v2/uptime/checks/:check_id/alerts/post.md)

---

[API](https://skmtc.dev/digitalocean/apis/digitalocean-api.md) · [All operations](https://skmtc.dev/digitalocean/apis/digitalocean-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/digitalocean/digitalocean-api/revisions/cb3bf9b21459/schema)
