Overview

The Open Disease API, accessible via diseases.sh, offers programmatic access to a range of public health data, primarily focusing on infectious diseases. It serves as a resource for developers, researchers, and organizations that require up-to-date statistics for applications, dashboards, or analytical projects. The API provides endpoints for current and historical data on COVID-19, as well as broader global disease statistics and related news.

The API is designed for ease of use, requiring no API keys or authentication for access. This design choice aims to lower the barrier to entry for integrating public health data into various platforms. Developers can retrieve global summaries, country-specific data, and historical trends for COVID-19 cases, deaths, and recoveries. Beyond COVID-19, the API also includes data points for other diseases, although the depth of coverage varies by endpoint.

Typical use cases for the Open Disease API include building public health dashboards, creating informational websites, developing research tools, or integrating real-time disease statistics into educational applications. For instance, a developer might use the API to power a local COVID-19 tracker for a community website or to visualize global infection rates over time in a research presentation. The API's straightforward RESTful architecture makes it compatible with a wide array of programming languages and development environments.

The service stands out due to its commitment to being fully free, removing financial considerations for users. This aligns with the broader goal of making public health data more accessible for analysis and dissemination. While the API focuses on providing raw data, developers are responsible for the interpretation and presentation of this information in their respective applications. For developers building data-intensive applications, understanding the nuances of data sources and potential latency is important, as discussed in best practices for fetching data with the Fetch API.

The API's structure is intuitive, with clearly defined endpoints for different data types. This allows for targeted queries, such as retrieving data for a specific country or obtaining a historical timeline of cases. The absence of authentication simplifies integration workflows, particularly for projects with limited backend infrastructure or those focused on rapid prototyping. The API's documentation provides clear examples and descriptions of each endpoint, aiding developers in quickly understanding how to structure their requests and parse the JSON responses.

Key features

  • COVID-19 Statistics API: Provides current and historical data for COVID-19, including global totals, country-specific cases, deaths, and recoveries.
  • World Disease Statistics API: Offers broader statistics on various infectious diseases beyond COVID-19, though coverage may vary by disease.
  • Disease News API: Delivers recent news articles and updates related to global health and disease outbreaks.
  • No Authentication Required: All API endpoints are publicly accessible without the need for API keys or user authentication.
  • RESTful Endpoints: Utilizes standard HTTP methods (GET) and returns data in JSON format, making it compatible with most web development frameworks.
  • Historical Data: Access to historical timelines for COVID-19 cases, deaths, and recoveries, allowing for trend analysis.
  • Country-Specific Data: Ability to query data for individual countries, including various demographic and statistical breakdowns.

Pricing

As of May 28, 2026, the Open Disease API is entirely free to use. There are no paid tiers, subscription models, or usage limits imposed by the API provider.

Plan Features Price (Monthly)
Free Tier Access to all COVID-19 statistics, world disease statistics, and disease news endpoints. No authentication required. $0

For detailed information, refer to the Open Disease API documentation.

Common integrations

  • Web Dashboards: Integrate real-time disease data into public health dashboards using JavaScript frameworks like React, Vue, or Angular.
  • Mobile Applications: Develop mobile apps (iOS, Android) that display global or local disease statistics to users.
  • Data Visualization Tools: Connect with data visualization libraries (e.g., D3.js, Chart.js) to create custom graphs and charts based on API data.
  • Research and Analytics Platforms: Incorporate disease data into statistical analysis tools or machine learning models for public health research.
  • Educational Resources: Power educational websites or interactive tools that teach about epidemiology and global health trends.

Alternatives

  • World Health Organization (WHO) Data: Provides extensive global health data and statistics, often through downloadable datasets and some API access.
  • Johns Hopkins University CSSE COVID-19 Data: Offers a widely used dataset for COVID-19 statistics, primarily through GitHub repositories rather than a direct API.
  • Our World in Data COVID-19 Data: Compiles and visualizes various global data, including COVID-19, with datasets available for download.
  • CDC Public Health Data: The Centers for Disease Control and Prevention provides various public health datasets and APIs for specific health topics, primarily focused on the United States.
  • The COVID Tracking Project (Archived): An initiative that collected and published COVID-19 data for the United States, now archived but still a reference for historical data.

Getting started

To begin using the Open Disease API, you can make a simple HTTP GET request to any of its endpoints. No authentication is required. The following Python example demonstrates how to fetch global COVID-19 statistics:

import requests
import json

# Define the API endpoint for global COVID-19 statistics
api_url = "https://diseases.sh/v3/covid-19/all"

try:
    # Make the GET request to the API
    response = requests.get(api_url)
    response.raise_for_status() # Raise an HTTPError for bad responses (4xx or 5xx)

    # Parse the JSON response
    data = response.json()

    # Print some of the retrieved data
    print("Global COVID-19 Statistics:")
    print(f"Total Cases: {data.get('cases'):,}")
    print(f"Total Deaths: {data.get('deaths'):,}")
    print(f"Total Recovered: {data.get('recovered'):,}")
    print(f"Active Cases: {data.get('active'):,}")
    print(f"Critical Cases: {data.get('critical'):,}")
    print(f"Today's Cases: {data.get('todayCases'):,}")
    print(f"Today's Deaths: {data.get('todayDeaths'):,}")
    print(f"Today's Recovered: {data.get('todayRecovered'):,}")

except requests.exceptions.RequestException as e:
    print(f"An error occurred: {e}")
except json.JSONDecodeError:
    print("Failed to decode JSON response.")

This Python script uses the requests library to send a GET request to the /v3/covid-19/all endpoint, which returns a summary of global COVID-19 statistics. The response is then parsed as JSON, and key statistics are printed to the console. For more endpoints and examples, consult the Open Disease API documentation.