StatusBeam is configured by a single YAML file, status.config.yml. At
deploy time you upload it to the Worker’s KV config key; that is the only thing
you configure.
Example
name: Acme Status
sites:
- name: Website
url: https://example.com
check: http # http | tcp | ssl | statuspage | incidentio | sentry | aigateway
expectedStatusCodes: [200]
maxResponseTime: 2000 # ms; slower responses are marked "degraded"
- name: API
url: https://api.example.com/health
check: http
# Read status straight from an Atlassian Statuspage. `url` is the page's base
# URL; StatusBeam appends /api/v2/summary.json automatically.
- name: Claude
url: https://status.claude.com
check: statuspage
# Add `component` to track one service on the page instead of the whole page.
- name: Claude API
url: https://status.claude.com
check: statuspage
component: Claude API (api.anthropic.com)
# incident.io status pages serve the same Statuspage-compatible summary.json,
# so `incidentio` reads them identically — use whichever names your vendor.
- name: OpenAI
url: https://status.openai.com
check: incidentio
notifications:
slack:
webhookUrl: https://hooks.slack.com/services/T00000000/B00000000/XXXX
webhooks:
- url: https://example.com/status-hook
theme:
logoUrl: /logo.svg
darkMode: true
locale: en # en | zh | ja | ko — fallback UI languageFields
sites[]
| Field | Type | Notes |
|---|---|---|
name |
string | Display name for the service. |
url |
string | Endpoint to check (or status-page base URL for statuspage/incidentio). Optional for aigateway, which derives it from the gateway and model. |
check |
enum | http | tcp | ssl | statuspage | incidentio | sentry | aigateway. |
expectedStatusCodes |
number[] | Codes treated as healthy (HTTP checks). |
maxResponseTime |
number | Milliseconds; slower responses are marked degraded. |
component |
string | For statuspage/incidentio: track one component by name (case-insensitive) or id. |
sentry |
object | For check: sentry: enables the Issues-API poll backstop (org, optional project/query/host). Omit for a webhook-only site. |
aigateway |
object | Required for check: aigateway: provider (vercel | openrouter), model (creator/model), optional endpoint, degradedUptime, downUptime. |
notifications
slack.webhookUrl— incoming webhook for a Slack channel.webhooks[].url— arbitrary HTTP endpoints that receive status-change events.
theme
logoUrl— logo shown on the page.darkMode— enable the dark theme.locale— fallback UI language (en|zh|ja|ko), used only when a visitor’s browser language isn’t one of the supported locales.