All services / API
Status API
Live verdicts, regional checks, report counts and outage history as JSON. CORS is open, so you can call it straight from a browser.
Limits
- No key: 30 requests per minute per network. Free.
- API key: 600 requests per minute. $19/mo.
- Over the limit you get
429withRetry-After: 60. Responses are cached for up to 30 seconds.
Endpoints
GET /api/v1/status/<slug>
Current verdict for one service: level, confidence, regions, official status, report counts and the last check time.
curl https://damnisitdown.com/api/v1/status/github
{
"service": { "slug": "github", "name": "GitHub", "url": "https://damnisitdown.com/status/github" },
"verdict": { "level": "operational", "title": "GitHub is up", "summary": "…" },
"confidence": 0.92,
"regions": [ { "region": "enam", "label": "US East", "ok": true, "latency_ms": 81, "checked_at": "2026-10-31T14:02:11.000Z" } ],
"official": { "indicator": "none", "description": "All Systems Operational" },
"reports": { "last_15m": 0, "last_60m": 1, "baseline_per_hour": 0.4 },
"last_checked": "2026-10-31T14:03:00.000Z"
}GET /api/v1/services
Every tracked catalog service with its slug and current level.
curl https://damnisitdown.com/api/v1/services
GET /api/v1/outages?service=<slug>&limit=50
Recent outages, newest first: start, peak, recovery, duration, regions and related provider. Both parameters are optional; limit is at most 200.
curl "https://damnisitdown.com/api/v1/outages?service=github&limit=10"
Using a key
curl -H "Authorization: Bearer diid_…" https://damnisitdown.com/api/v1/status/github
const res = await fetch('https://damnisitdown.com/api/v1/status/github', {
headers: { Authorization: 'Bearer diid_…' },
})
const { verdict } = await res.json()Keep keys on your server. A key in browser code can be copied. Level values: operational, degraded, possible_outage, outage, major_outage, unknown.
Get an API key · $19/mo
Already a customer? Get a link to your API account.