Skip to content

Outage tracker

Data access for press and researchers

What we publish, with no account and no API key, and how to cite it: for a reporter quoting a reading and a researcher building on the dataset.

What is public

Everything on the outage tracker is public, and most of it has a machine-readable form alongside the page a person reads. No part of what is described on this page requires an account, an API key, or a signed agreement.

  • One service's current reading. Every tracked service has a page at /outages/<slug> and the same answer as JSON at /api/v1/outages/<slug>: the verdict, which regions were read and when, the last 90 days of probe-detected incidents, and 12 months of monthly uptime. Add ?region= to read one region only.
  • A combined “stack” reading. A named set of services built on /outages/stack has one page and one JSON answer at /api/v1/outages/stacks/<key>, each member carrying the same reading as its own page plus a roll-up.
  • Shared-infrastructure incidents. /outages/internet and its JSON mirror at /api/v1/outages/internet answer whether a named provider (Cloudflare, an AWS region, a CDN) is behind several tracked services going down together, from our own probe correlation, with the measured dependency map and 30 days of declared incidents.
  • Cross-catalog latency. /outages/internet-weather and /api/v1/outages/internet-weather publish per-region response-time percentiles across the whole catalog against a 7-day baseline, refreshed hourly.
  • Feeds. Every service publishes its own measured-event feed at /outages/<slug>/feed.atom and /feed.xml, and there is one feed across the whole tracker at /outages/feed.atom.
  • History. /outages/<slug>/history carries 90 days of per-region availability, a monthly summary table, and the incident log behind the current reading.
  • Corrections. /outages/corrections lists every reading we have retracted, what we originally claimed, why it was wrong, and when, the moment a retraction happens.
  • Embeds. The embeddable status badge and the internet-weather and research chart images are SVGs anyone can drop into a page, each one carrying its own “Source: RealUptime” line inside the image.

Full request and response shapes for every JSON endpoint above are in the OpenAPI document, under the tag Outages.

No key, but a rate limit

None of the JSON endpoints above need an API key, a signup, or a signed agreement: send a plain GET request and read the response. Every one of them also answers with Access-Control-Allow-Origin: *, so a browser-side script on another site can read them directly.

What keeps this open is a per-IP limit rather than a key: 120 requests per minute against any of the JSON endpoints above. Go over it and a request gets a 429 with a Retry-After header naming when to try again, rather than being served stale or silently dropped. Each per-service and per-stack answer is also cache-control'd for two minutes, so polling faster than that returns the same cached reading rather than driving a fresh database read.

There is deliberately no bulk export: no endpoint returns the whole catalog or its full history in one call, and there is no ?all= parameter on the per-service route. Reading the dataset means naming the service (or stack) you want, one request at a time, which is a real limit on how this data can be used, not an oversight. If a research project needs a size or shape of access this does not cover, email us (below) and say what you are trying to do.

How to cite a reading

Every JSON answer already carries the citation line we ask you to use, in its own source object: a canonical url for the specific reading, and an attribution string reading exactly Measured by RealUptime. Source: <url>. The badge and chart images carry the same idea baked into the SVG itself, as a visible “Source: RealUptime” line. Citing a reading is a matter of keeping that attribution attached to the number, not a request to strip it out.

News style, one line: “According to RealUptime, which independently probes the service from multiple global regions, Example Service was down in the US East and Europe regions for 22 minutes starting at 14:03 UTC (realuptime.io/outages/example-service).”

Academic style, a reference-list entry: RealUptime. (2026). Example Service outage reading [Data set]. Retrieved from https://realuptime.io/outages/example-service

This page states the citation practice already shipped in the product; it is not a signed license. A reading is our own measurement, described in full on the methodology page, and every reading names what it can and cannot prove there, so a citation should carry the same honesty: a reachability check answering “down” is not a claim that every feature of a service failed.

Questions from press or researchers

For anything not covered above, larger requests, a question about a specific reading, or anything else, email support@realuptime.io and say what you are working on.