Skip to main content
StatusWorld

Developer API

v1Free

Public JSON API for real-time service status. No API key required. CORS enabled.

Base URL

https://isitdownstatus.com/api/v1
GET

/api/v1/status/:slug

Returns the current status for a single service. Replace :slug with the service identifier (e.g. discord, netflix).

Example request

curl https://isitdownstatus.com/api/v1/status/discord

Example response

{
  "ok": true,
  "data": {
    "slug": "discord",
    "name": "Discord",
    "category": "social",
    "logo_url": "https://...",
    "status": "operational",
    "report_count_1h": 2,
    "report_count_24h": 18,
    "status_page_url": "https://isitdownstatus.com/en/status/discord",
    "updated_at": "2026-04-26T12:00:00.000Z"
  }
}
FieldTypeDescription
slugstringUnique service identifier
namestringDisplay name
categorystringCategory slug (see categories below)
statusstring"operational" | "degraded" | "outage"
report_count_1hnumberProblem reports in the last hour
report_count_24hnumberProblem reports in the last 24 hours
status_page_urlstringFull URL to the StatusWorld page
updated_atstringISO 8601 timestamp of this response
GET

/api/v1/services

Returns all monitored services with their current status.

Query parameters

ParamValuesDefault
categorytelecom · cloud · gaming · social · finance · streaming · other · email · internetall
statusoperational · degraded · outageall
limit1–500100

Examples

# All services
curl https://isitdownstatus.com/api/v1/services

# Only streaming services
curl "https://isitdownstatus.com/api/v1/services?category=streaming"

# Services currently experiencing issues
curl "https://isitdownstatus.com/api/v1/services?status=outage"

# Top 10 most reported in last hour
curl "https://isitdownstatus.com/api/v1/services?limit=10"

Example response

{
  "ok": true,
  "meta": {
    "total": 7,
    "filters": { "category": "streaming", "status": null, "limit": 100 },
    "updated_at": "2026-04-26T12:00:00.000Z"
  },
  "data": [
    {
      "slug": "netflix",
      "name": "Netflix",
      "category": "streaming",
      "status": "operational",
      "report_count_1h": 0,
      "report_count_24h": 5,
      "status_page_url": "https://isitdownstatus.com/en/status/netflix"
    },
    ...
  ]
}

Status values

operational

Report volume within normal range. No significant issue detected.

degraded

Elevated report volume. Some users may be experiencing issues.

outage

Report volume significantly above baseline. Widespread incident likely.

Rate limits & caching

Responses are cached for 30 seconds at the CDN level. There is no hard rate limit for read endpoints, but please be reasonable — avoid polling more than once per 30 seconds. If you need real-time data at high frequency, consider implementing your own caching layer.

JavaScript example

async function checkStatus(slug) {
  const res = await fetch(
    `https://isitdownstatus.com/api/v1/status/${slug}`
  );
  const { ok, data } = await res.json();
  if (!ok) throw new Error('Service not found');
  return data; // { slug, name, status, report_count_1h, ... }
}

// Example usage
const discord = await checkStatus('discord');
console.log(discord.status); // "operational"

Python example

import requests

def check_status(slug):
    r = requests.get(f"https://isitdownstatus.com/api/v1/status/{slug}")
    r.raise_for_status()
    return r.json()["data"]

discord = check_status("discord")
print(discord["status"])  # "operational"

This API is free and provided as-is. If you build something with it, we'd love to hear about it — get in touch.