Badges, embed & JSON
Every public status page exposes three free, no-auth outputs on its own host (<your-page>.uptimeglobe.com or your custom domain): a live SVG badge, an embeddable widget, and a CORS-enabled JSON feed. They only ever expose what the status page itself shows, refresh within ~60 seconds, and work on every plan. Copy ready-made snippets from your dashboard under Status pages → your page → Embed & API.
Uptime badge (SVG)
Section titled “Uptime badge (SVG)”A shields-style badge for READMEs, wikis, and dashboards:
[](https://<your-page>.uptimeglobe.com/)They look like this — and they are live: the SVG regenerates from your latest check data on every load (~60s edge cache), so a badge in a README flips to red within a minute of an outage and back on recovery:
Query parameters (all optional; invalid values fall back rather than erroring, so an embedded badge never breaks):
- type —
status(default) shows operational/degraded/outage ·uptimeshows a percentage - window —
24h·30d·90d— uptime window (default30d; an unrecognised value falls back to30drather than erroring, so a bad badge URL in a README still renders) - monitor — a monitor id from the status JSON — badge for one monitor instead of the whole page
- label — custom left-side text (up to 32 characters). Defaults to your page’s name (or the monitor’s name for per-monitor badges); long names scroll inside a fixed-width box so the badge never blows out your layout
https://<your-page>.uptimeglobe.com/badge.svg?type=uptime&window=30d&label=api%20uptimeEmbed widget
Section titled “Embed widget”A tiny script that renders a live status pill (or a per-monitor panel) on any website — CMS pages, marketing sites, internal portals. Styles are isolated in a shadow root and it follows the visitor’s light/dark preference. If the status can’t be fetched it renders nothing rather than a misleading error state.
<div data-uptimeglobe-status></div><script async src="https://<your-page>.uptimeglobe.com/embed.js"></script>It renders like this (the full status text sits in the hover tooltip; the card links to your status page):
API99.98%Website · down 12m98.51%
Options via attributes on the div:
- data-variant —
pill(default) ·panel— panel lists every monitor with its uptime - data-monitor — a monitor id — the pill shows that monitor’s status instead of the page-wide status
Status JSON
Section titled “Status JSON”Machine-readable status for anything custom — no API key, CORS *, cached ~60s at the edge:
curl https://<your-page>.uptimeglobe.com/api/status.json{ "version": 2, "page": { "name": "Acme Status", "url": "https://<your-page>.uptimeglobe.com" }, "overall": "up", // up | degraded | down | unknown | maintenance | paused "overall_text": "All systems operational", "updated_at": "2026-07-20T12:00:00.000Z", "data_unavailable": false, // historical charts unavailable "current_status_unavailable": false, // current status cannot be confirmed "monitors": [ { "id": "0198…", // use as badge.svg?monitor= / data-monitor "name": "API", "status": "up", // up | degraded | down | unknown | maintenance | paused "observed_at": "2026-07-20T11:59:31.000Z", // see note below "uptime": { "30d": 99.987, "90d": 99.995 } // percent; null = no data yet } ], "active_incidents": [ { "id": "0197…", "monitor_id": "0198…", "monitor_name": "API", "started_at": "2026-07-20T11:40:00.000Z", "severity": "major" } ]}observed_at is when the status was last confirmed, not the time of the most recent check. It is always a real check timestamp, but it advances when the status changes or once an hour, whichever comes first — so a healthy monitor’s value can sit still for up to an hour. Read it as “since when has this held”, and use it for things like “down for 2 hours”. Don’t use it to decide whether our monitoring is alive: current_status_unavailable answers that, and a frozen observed_at on a healthy monitor is normal.
maintenance and paused are not outages. maintenance means the monitor is inside a window you declared; paused means you switched monitoring off. Code that treats “anything not up” as a failure will report both as incidents.
Windows follow your plan’s history granularity (the same rule as the status page tabs). For richer, authenticated data — raw checks, latency percentiles, certificate details — use the API & MCP server with a scoped key.