---
title: "List alert rules"
method: GET
path: "/v1/alert-rules"
tags: ["Alert rules"]
---

# List alert rules

`GET /v1/alert-rules`

## Request

- Base URL: `https://api.upcheck.so`
- URL: `https://api.upcheck.so/v1/alert-rules`
- Auth: HTTP bearer

## Response `200`

The rules, newest first.

- AlertRule[]
  - `id` string, required: Opaque identifier.
  - `organizationId` string, required: Opaque identifier.
  - `name` string, required
  - `enabled` boolean, required
  - `subject` 'http' | 'certificate' | 'dns' | 'registration' | 'keyword' | 'content' | 'port', nullable, required: Which check a monitor, rule or history row is about.
  - `triggerType` 'days' | 'weeks' | 'on_expiration' | 'http_down' | 'http_slow' | 'port_down' | 'dns_changed' | 'keyword_failed' | 'content_changed' | 'content_failed' | 'recovered', required
  - `triggerValue` number, required
  - `triggers` object[], nullable, required
    - `type` 'days' | 'weeks' | 'on_expiration' | 'http_down' | 'http_slow' | 'port_down' | 'dns_changed' | 'keyword_failed' | 'content_changed' | 'content_failed' | 'recovered', required
    - `value` integer, required: Days or weeks before expiry for `days`/`weeks`; ignored for event triggers.
  - `domainIds` string[], nullable, required
  - `frequency` 'once' | 'daily' | 'every_12h' | 'every_6h' | 'hourly', required: How often a rule may re-deliver the same alert while the condition holds.
  - `channels` string[], required
  - `integrationIds` string[], nullable, required
  - `emailListIds` string[], nullable, required
  - `emailRecipients` string[], nullable, required
  - `createdByEmail` string, nullable, required
  - `createdAt` number, required

## Other responses

- `401`: The API key is missing, invalid, or revoked.
- `429`: The key's rate limit was exceeded. Honour `Retry-After`.

---

[API](https://skmtc.dev/upcheck/apis/upcheck-api.md) · [All operations](https://skmtc.dev/upcheck/apis/upcheck-api/llms.txt) · [OpenAPI document](https://skmtc.dev/upcheck/apis/upcheck-api/revisions/56f55512eb8a?raw)
