Alerts

Every alert we raised, whether or not it reached you. The record of record: if a webhook was down, the alert is still here.

List alerts

GET/v1/alertsany key

Newest first, up to 200 at a time; page with before. Each alert carries the sentence the dashboard shows, the structured data a webhook would have carried, and what happened on each channel. unseen counts the alerts raised since the account last opened its alerts page, for a badge.

Query parameters

limitintegerdefault 50
At most 200. 0 asks for the unseen count alone.
beforestring
Alerts raised before this time. The paging cursor: the last row's at.

Response

alertsobject[]
Fields below.
unseeninteger
Raised since the alerts page was last opened.
seen_atstring | null
When that was.

An alert

type is one of the types on the webhooks page and severity is fixed per type. key is what the alert is about (a caller, a pattern, a number, a call) and is what the cooldown is keyed on: one alert per type per key per fifteen minutes. data is the same object a webhook delivers.

delivered has one entry per channel: true it landed, false it was tried and failed, null it was not tried: the channel is off, its floor is above this severity, or the plan does not include it.

Where alerts go

Channels, destinations and severity floors are set in the dashboard under Settings → Alerts, by anyone on the account. The webhook URL alone can also be set through PATCH /v1/account. The rest is described in email, text and voice.

Texts and phone calls go only to numbers the account has proved it holds, with a code, and only on Guard. That is not configurable and is the reason a stolen key cannot start paging a stranger.