---
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.brixsignage.com`
- URL: `https://api.brixsignage.com/v1/alert-rules`
- Auth: HTTP bearer

List the alert rules configured for your workspace. Each rule includes its name, trigger, scope configuration, and whether it is enabled. Results are limited to the organization nodes you have access to. Microsoft Teams workflow URLs in `config.teamsUrls` and web addresses in `config.recipients` are credentials, so the response shows them masked: the host and the last four characters, for example `https://prod-12.westus.logic.azure.com/…?sig=••••a1b2`.

## Query parameters

- `limit` integer
- `cursor` string

## Response `200`

Success.

- object
  - `data` AlertRule[], required
    - `id` string, required: Alert rule id.
    - `spaceId` string, required
    - `name` string, required
    - `trigger` string, required: The first trigger code, e.g. `connection-lost`.
    - `config` AlertRuleConfig, required: The rule's trigger, scope and delivery settings. Other keys pass through unchanged.
      - `codes` string[]: Every trigger code the rule watches; the first is also `trigger`.
      - `severity` string
      - `scopeKind` string: `workspace`, `org_unit`, `location`, `screen_group` or `screen`.
      - `scopeId` string
      - `thresholds` object
      - `channels` string[]: `in-app`, `email`, `webhook`, `teams`.
      - `recipients` string[]: Email addresses, `role:` tokens and webhook URLs. Webhook URLs are Masked: a delivery URL is a credential (a Microsoft Teams workflow URL carries it in `sig=`), so every response shows the host and the last four characters only — `https://prod-12.westus.logic.azure.com/…?sig=••••a1b2`. On update, send a masked value back unchanged to keep the saved URL, or a full URL to replace it.
      - `teamsUrls` string[]: Microsoft Teams workflow URLs for the `teams` channel. Masked: a delivery URL is a credential (a Microsoft Teams workflow URL carries it in `sig=`), so every response shows the host and the last four characters only — `https://prod-12.westus.logic.azure.com/…?sig=••••a1b2`. On update, send a masked value back unchanged to keep the saved URL, or a full URL to replace it.
    - `enabled` boolean, required
    - `nodeId` string, nullable, required: Home location; null = workspace root.
    - `createdAt` string, required: ISO-8601 timestamp (UTC).
    - `updatedAt` string, required: ISO-8601 timestamp (UTC).
    - `deletedAt` string, nullable, required: ISO-8601 timestamp (UTC).
  - `nextCursor` string, nullable: Present when `?limit` was passed. Send it back as `?cursor=` for the next page; null on the last page.
  - `total` integer: Total matching rows, when the route computes it.

## Other responses

- `401`: Missing, expired or revoked bearer token.
- `403`: The token lacks the permission this operation needs (see `x-brix-permission`).
- `5XX`: Server error. The body carries a `requestId` to quote to support.

---

[API](https://skmtc.dev/brixsignage/apis/brix-api.md) · [All operations](https://skmtc.dev/brixsignage/apis/brix-api/llms.txt) · [OpenAPI document](https://skmtc.dev/brixsignage/apis/brix-api/revisions/7c2741bcdb16?raw)
