explaingit

r-spacex/spacex-api

10,853JavaScriptAudience · developerComplexity · 2/5Setup · easy

TLDR

A free, open-source web API maintained by the r/SpaceX community that provides structured JSON data about SpaceX launches, rockets, satellites, and launch sites, no sign-up needed.

Mindmap

mindmap
  root((SpaceX API))
    What it covers
      Launches
      Rockets
      Starlink satellites
      Launchpads
    How to use
      HTTP requests
      JSON responses
      No auth needed
    Data types
      Past launches
      Upcoming launches
      Crew capsules
    Tech
      Node.js
      Docker
      REST API
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Build a SpaceX launch tracker dashboard using live and historical launch data from the API.

USE CASE 2

Fetch Starlink satellite data for a mapping or visualization app.

USE CASE 3

Display an upcoming launch countdown on a website with mission name, crew, and webcast link.

USE CASE 4

Export the full dataset snapshot for offline analysis or data journalism.

Tech stack

JavaScriptNode.jsDocker

Getting it running

Difficulty · easy Time to first run · 5min

The public API requires no setup at all. Running your own local instance requires Docker.

In plain English

This is a free, open-source web service that collects and shares data about SpaceX rocket launches, spacecraft, and ground infrastructure. Anyone can query it over the internet to get structured data about past and upcoming launches, rocket specifications, reusable rocket cores, crew capsules, Starlink satellites, and launch and landing sites. The project is run by the r/SpaceX community and is not affiliated with or endorsed by SpaceX. To use it, you make a simple web request to an endpoint like https://api.spacexdata.com/v5/launches/latest and get back a detailed JSON response. That response includes information such as mission name, launch date, success status, crew details, payload descriptions, links to webcasts, Reddit threads, and press kits. No sign-up or account is required to fetch data. The API covers several data categories: launches (past and upcoming), rockets, recoverable booster cores, Crew Dragon capsules, payloads, launchpads, landing pads, Starlink satellites, and SpaceX's Tesla Roadster that was launched into space. Background jobs run on a schedule to keep the data current, and their health status is tracked publicly. The project is built on Node.js and can be run locally via Docker. Official documentation, a list of third-party client libraries in various programming languages, and a gallery of apps built on top of the API are all linked from the repository. Database exports are also available for download if you want a snapshot of the full dataset. This is a community-maintained archive, not an official SpaceX product. If you find incorrect or missing data, the recommended path is to open a GitHub issue.

Copy-paste prompts

Prompt 1
Using the SpaceX API endpoint /v5/launches/latest, write a JavaScript fetch call that returns mission name, launch date, and webcast link, then display them on a webpage.
Prompt 2
Help me build a simple web page that shows all past SpaceX launches in a sortable table using the r-spacex/spacex-api.
Prompt 3
Write a Python script that queries the SpaceX API for all Starlink satellites and counts how many are currently in orbit.
Prompt 4
Using the SpaceX API, create a Node.js script that checks for the next upcoming launch and posts a Discord webhook notification 24 hours before liftoff.
Open on GitHub → Explain another repo

← r-spacex on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.