Embed a status badge
Drop a live "All systems operational" pill into your README, marketing site, or footer.
Every unprotected public status page exposes a tiny embeddable badge that reflects current service health when the badge is loaded. Paste a single iframe — that's it.
Snippet
<iframe
src="https://obzerv.xyz/status/your-slug/badge?theme=dark"
width="250"
height="36"
frameborder="0"
scrolling="no"
style="color-scheme: normal"
></iframe>Replace your-slug with your status page slug. Use ?theme=light for light mode or omit the param to default to light.
States
| Trigger | Pill text | Dot color |
|---|---|---|
All active monitors up | All systems operational | green |
Some degraded, none down | Partial degradation | yellow |
Every monitor degraded | Degraded performance | yellow |
Some down, not all | Partial outage | orange |
Every monitor down | Major outage | red |
| Unknown, pending, or stale observations | Some service statuses are unknown | gray |
| Every monitor paused | All monitors paused | gray |
| No monitors attached | No monitors | gray |
The same status model drives the hero on the public status page (/status/your-slug) and the per-group pills. It follows Atlassian Statuspage's worst-component-wins algorithm — a single down monitor out of many produces a partial outage (orange), not a major outage (red).
Refresh and access
The badge reflects the latest permitted response when loaded. Reload the iframe to refresh it. The full status page refreshes every 30 seconds and on focus. Private, password-protected, and IP-restricted pages do not expose badges.
Auto-link
The badge is wrapped in an <a target="_blank"> link to the full status page — clicking it opens /status/your-slug in a new tab.
Markdown / GitHub README
The badge route returns HTML, so use an ordinary status-page link in Markdown:
[Service status](https://obzerv.xyz/status/your-slug)See also
- Status pages — create the public page the badge links to.
GET /stats— for building custom badges/dashboards.