disease.sh API
Free open disease and health statistics API with no key: global and per-country case data, historical time series and vaccination figures. Tested example.
Endpoint tested and returned HTTP 200 on 19 Aug 2026
What is the disease.sh API?
disease.sh is a free, key-free API providing global disease and public health statistics, including per-country breakdowns, historical time series and vaccination data, aggregated from official sources.
disease.sh aggregates public health data from official sources including Johns Hopkins University and the World Health Organization, and exposes it through a single consistent JSON interface with no key.
It is a good example of an API worth using for its structure rather than its novelty: the country endpoints return consistent, comparable records, which makes cross-country charts straightforward to build. Bear in mind that reporting cadence varies by country, so timestamps are per-record rather than global.
Quick facts
- Base URL
https://disease.sh/v3- Authentication
- No key required.
- Rate limit
- Approximately 100 requests per minute per IP.
- Pricing
- Free and open source.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the disease.sh API
Every request below was executed against the live API on 19 Aug 2026, and the response shown is the real body it returned — not an illustration.
1. Fetch global health statistics
GET https://disease.sh/v3/covid-19/all
curl 'https://disease.sh/v3/covid-19/all'const res = await fetch("https://disease.sh/v3/covid-19/all");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://disease.sh/v3/covid-19/all", timeout=20)
res.raise_for_status()
print(res.json()){
"updated": 1787144493887,
"cases": 704753890,
"todayCases": 0,
"deaths": 7010681,
"todayDeaths": 0,
"recovered": 675619811,
"todayRecovered": 790,
"active": 22123398,
"critical": 34794,
"casesPerOneMillion": 90413,
"deathsPerOneMillion": 899.4,
"tests": 7026505313,
"testsPerOneMillion": 884400.59,
"population": 7944935131,
"oneCasePerPeople": 0,
"oneDeathPerPeople": 0,
"oneTestPerPeople": 0,
"activePerOneMillion": 2784.59,
"recoveredPerOneMillion": 85037.8,
"criticalPerOneMillion": 4.38,
"affectedCountries": 231
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
<scope> | path | Required | all for global totals, countries for per-country data. all |
<country> | path | Optional | Country name, ISO2 or ISO3 code. pakistan |
lastdays | query | Optional | Days of history on historical endpoints. 30 |
sort | query | Optional | Sort country results by a field. cases |
Response fields
cases / deaths / recoveredinteger- Cumulative totals.
todayCases / todayDeathsinteger- Change reported today.
active / criticalinteger- Current active and critical counts.
populationinteger- Country population, useful for per-capita normalisation.
updatedinteger- Unix timestamp in milliseconds of the last update.
What you can build with the disease.sh API
- Build public health dashboards and comparison charts
- Analyse per-capita rates by combining counts with population
- Plot historical time series for a country or region
- Teach data visualisation with a real, structured dataset
Common errors and how to fix them
404
Country name not recognised.
Fix: Use ISO2 or ISO3 codes rather than informal country names, which vary.
Stale `updated` timestamp
Reporting cadence differs by country.
Fix: Display the per-record `updated` value rather than implying all data is equally fresh.
disease.sh API — frequently asked questions
Is disease.sh free to use?
Yes, completely free and open source with no API key, limited to roughly 100 requests per minute per IP.
Where does the data come from?
It aggregates official sources including Johns Hopkins University and the World Health Organization, normalising them into one consistent JSON schema.
Can I get historical data?
Yes, the historical endpoints accept a `lastdays` parameter and return time series suitable for charting trends.
How do I calculate per-capita rates?
Country records include a `population` field, so you can divide case or death counts by population directly without sourcing demographics separately.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
Percentage Calculator
Calculate what X% of a number is, what percent one number is of another, and percentage increase or decrease between two values — instantly and free.
CSV to JSON Converter
Convert CSV to a JSON array of objects online. Header-row detection, comma/semicolon/tab delimiters and pretty-printed output — 100% in your browser.
Alternatives to disease.sh API
If disease.sh does not fit, these news & open data apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.
| API | What it does | Auth | CORS | Last verified |
|---|---|---|---|---|
| Hacker News | Official Hacker News API with no key: top stories, comments, users and live item feeds via Firebase. Extremely stable. Tested curl example and live JSON. | No key | Yes | 19 Aug 2026 |
| Spaceflight News | Free spaceflight news API with no key: articles, blogs and reports from major space outlets, with search, filtering and pagination. Tested curl example. | No key | Yes | 19 Aug 2026 |
| Hacker News Search (Algolia) | Free Algolia-powered Hacker News search API with no key: full-text search across all stories and comments with filtering by points, date and author. Tested. | No key | Yes | 20 Aug 2026 |
| Lobsters | Free Lobsters API with no key: hottest and newest technology stories with tags, scores, comments and submitter data as plain JSON. No signup. Tested. | No key | No | 20 Aug 2026 |
| Noozra | Free news headlines API with no key: articles from 200+ curated sources with headline, source, category, image URL and its pixel dimensions. Tested example included. | No key | Yes | 21 Aug 2026 |
| RSS to JSON | Free RSS to JSON API with no key: convert any RSS or Atom feed into clean JSON, with feed metadata, items, thumbnails and publication dates. Tested example. | No key | Yes | 20 Aug 2026 |
disease.sh is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 19 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.