Status Badge & Embed
Add a live status badge to your own site, docs, or README — and read your status as JSON.
Put your current status where your users already are — your marketing site, docs, dashboard, or GitHub README — with a small status badge that links back to your status page and refreshes automatically.
Get the embed code
In your dashboard, open the status page and scroll to the Status badge card. Your page's code is already filled in with the right address — no editing placeholders:
- Pick a theme — auto (follows each visitor's light/dark preference), dark, or light.
- Check the live preview, then hit Copy and paste the code into your site's HTML.
The badge is a single image wrapped in a link (this is what you'll copy, with your own page's address):
<a href="https://yourname.watchfor.io" target="_blank" rel="noopener">
<img src="https://watchfor.io/stats/yourname/badge.svg?theme=auto"
alt="yourname status" height="28" />
</a>It shows the same overall status as your page — All systems operational, Some systems degraded, Major outage, or Scheduled maintenance — and updates on its own (cached for about a minute).
Badges are available on public status pages only. A private or password-protected page won't expose a badge (it would leak your status to anyone with the link).
Status as JSON
For custom widgets, dashboards, or integrations, every public status page also serves its current status as JSON:
https://watchfor.io/stats/yourname/status.json{
"page": {
"name": "Your Company",
"url": "https://yourname.watchfor.io",
"status": "operational",
"label": "All systems operational",
"color": "#22c55e"
},
"components": [
{ "name": "API", "status": "operational" },
{ "name": "Dashboard", "status": "degraded" }
],
"activeIncidents": [
{
"name": "Elevated API error rate",
"started": "2026-08-03T09:02:00.000Z",
"status": "investigating",
"impact": "minor",
"url": "https://yourname.watchfor.io/incidents/abc123"
}
],
"activeMaintenances": [],
"updated": "2026-08-03T09:12:00.000Z"
}page.statusis one ofoperational,degraded,major_outage, ormaintenance— with a humanlabelandcolorto match.componentslists each section's current status;activeIncidentsandactiveMaintenancescarry anything currently open (empty arrays otherwise).
The endpoint is CORS-enabled, so you can fetch it straight from the browser to build your own badge, banner, or dashboard widget.