Uptime monitoring
The Uptime app probes URLs you register as monitors from four regions
(North America na, Europe eu, Asia as, Oceania oc) and reports
incident-based uptime. Enable it per site (uptimeEnabled, on by default),
then register monitors via
POST /v1/sites/{id}/uptime/monitors.
Monitors
Section titled “Monitors”A monitor probes one http(s) URL:
cadenceSeconds— one of60,300,900,1800,3600(default: every minute, from each region).timeoutSeconds— 1–30 (default 10); a slower response counts as a failed probe.enabled: falsepauses probing without losing the monitor or its history.
A first probe fires from every region immediately on creation, so status fills within seconds. Monitors count against a pooled allowance (2 included per site) — see Quotas & usage.
Each monitor row carries its current status — up, degraded, down, or
unknown (before the first probes) — and status_since. List them per site
(GET /v1/sites/{id}/uptime/monitors) or
org-wide (GET /v1/uptime/monitors).
Incidents: cross-region consensus
Section titled “Incidents: cross-region consensus”A single region failing to reach your origin is not an outage. A downtime incident is confirmed only when at least 3 of the 4 regions agree the monitor is failing; recovery is confirmed the same way. Failures below quorum (“only Asia can’t reach you”) mark the monitor degraded — visible, but never an incident and never an alert.
Confirmed incidents and recoveries trigger alerts: to the monitor’s own
alertEmails/alertWebhooks, plus the receivers configured in
notification settings. Each incident records its
classified cause — dns, tls, timeout, http_5xx, http_4xx,
redirect, or network.
Reading the data
Section titled “Reading the data”Three read endpoints, from coarse to live:
…/report?days=90— the day-bar report: one segment per day —down(a confirmed incident overlapped the day),degraded(sub-quorum failures past a noise floor, so one stray timeout doesn’t paint a healthy day), orok— with per-region stats, the incident list, andoverallUptimePct.…/metrics?hours=24— hourly per-region buckets (totals, failures, p50/p95 latency) for charts. Closed hours only.…/live— not-yet-flushed samples straight from the regional probers, covering the open hour — so a fresh monitor has metrics before its first rollup.
All uptime percentages count confirmed incident downtime only — degraded time doesn’t reduce them — and windows are clamped to the monitor’s creation, so a young monitor isn’t diluted by empty days.