Reference

API reference

Base URL https://api.satellitedata.dev. Every endpoint is a GET and returns JSON unless the path ends in another format.

Generated from the dataset contracts when this site was built. Add @{version} after any dataset id to pin a version (how). Errors are problem documents.

Endpoints

GET /v1

The API index for this site.

  • site, name, tagline
  • api_version: "v1"
  • links.catalog, links.status

Example: https://api.satellitedata.dev/v1

GET /v1/catalog

Every dataset published on this site.

  • site
  • datasets[]: id, kind, title, description, current (version), published_at, cadence, check_every, sla, discontinued
  • datasets[].source: name, url, license, commercial_ok
  • datasets[].coverage: start, end

Example: https://api.satellitedata.dev/v1/catalog

GET /v1/status

How fresh each dataset is.

  • site, generated_at, overall ("ok" or "degraded")
  • datasets[]: id, status, version, checked_at, source_updated_at, sla, consecutive_failures, last_error
  • status is one of ok, pending, late, stale-upstream, failing, blocked, discontinued

Example: https://api.satellitedata.dev/v1/status

GET /v1/{dataset}

Metadata for one dataset: the version that answered, its coverage, source, validation and downloads.

  • dataset, kind, title, description, cadence
  • version, current_version, pinned, published_at
  • source: id, name, publisher, url, license, commercial_ok, attribution, retrieved_at, source_updated_at
  • coverage: start, end
  • validation: status (pass, warn), warnings[]
  • series[]: id, name; for tables also key[] and partition
  • downloads[]: name, bytes, url
  • links: locations, versions, this_version

Example: https://api.satellitedata.dev/v1/gp-current

Errors: unknown-dataset , unknown-version , data-unavailable , and rate-limited for any endpoint.

GET /v1/{dataset}/versions

The version history.

  • dataset, current, published_at
  • previous[]: earlier version ids, newest first
  • snapshots: month (YYYY-MM) to version id

Example: https://api.satellitedata.dev/v1/gp-current/versions

Errors: unknown-dataset , and rate-limited for any endpoint.

GET /v1/{dataset}/locations

What can be requested: each series with its location ids, or for tables the partitions (under the series id "table").

  • dataset, version, kind
  • series[]: id, name, locations[] (ids)
  • locations[]: id, name

Example: https://api.satellitedata.dev/v1/gp-current/locations

Errors: unknown-dataset , unknown-version , and rate-limited for any endpoint.

GET /v1/{dataset}/{series}/{location}.json

One series at one place, ordered by date. Also .csv.

  • meta: dataset, series, series_name, location, location_name, units, source, license, attribution
  • data[]: one object per row, with the dataset's columns

Errors: unknown-file , unknown-format , and rate-limited for any endpoint.

GET /v1/{dataset}/table/{partition}.json

Rows of a table for one partition value; table/all has every row for tables up to 50,000 rows. Also .csv.

  • meta: dataset, key, partition (when partitioned), rows (count), units, source, license, attribution
  • rows[]: one object per row

Example: https://api.satellitedata.dev/v1/gp-current/table/all.json

Errors: unknown-file , unknown-format , and rate-limited for any endpoint.

GET /v1/{dataset}/download/{dataset}.csv

The whole dataset in one file. Also .parquet. Series downloads add series and location columns.

  • CSV (text/csv) or Parquet (application/vnd.apache.parquet)
  • Supports Range requests (206)

Example: https://api.satellitedata.dev/v1/gp-current/download/gp-current.csv

Errors: unknown-file , and rate-limited for any endpoint.

GET /v1/{dataset}/{path}

A file of a files dataset, at its published path.

  • The file, with a content type from its extension

Errors: unknown-file , and rate-limited for any endpoint.

Datasets

Current orbital elements Table

Id
gp-current
Updates
Hourly
Key
norad_cat_id
Partition
norad_block
Columns
norad_cat_id integer , norad_block integer , object_name text , object_id text , epoch datetime (ISO 8601, UTC) , mean_motion number, rev/day , eccentricity number , inclination number, deg , ra_of_asc_node number, deg , arg_of_pericenter number, deg , mean_anomaly number, deg , bstar number, 1/earth_radii , mean_motion_dot number, rev/day^2 , mean_motion_ddot number, rev/day^3 , ephemeris_type integer , classification_type text , element_set_no integer , rev_at_epoch integer , period_min number, min , semimajor_axis_km number, km , perigee_km number, km , apogee_km number, km , center_name text , ref_frame text , time_system text , mean_element_theory text , originator text , creation_date datetime (ISO 8601, UTC)
What Path
Metadata: version, coverage, downloads, validation /v1/gp-current
Versions and monthly snapshots /v1/gp-current/versions
Partitions /v1/gp-current/locations
Rows for one norad_block (JSON) /v1/gp-current/table/{norad_block}.json
Rows for one norad_block (CSV) /v1/gp-current/table/{norad_block}.csv
All rows in one file (tables up to 50,000 rows) /v1/gp-current/table/all.json
Whole dataset (CSV) /v1/gp-current/download/gp-current.csv
Whole dataset (Parquet) /v1/gp-current/download/gp-current.parquet

Launch log Table

Id
launches
Updates
Daily
Key
launch_tag
Partition
launch_class
Columns
launch_tag text , launch_class text , launch_date date (YYYY-MM-DD) , launch_time datetime (ISO 8601, UTC) , launch_date_text text , launch_date_precision text , launch_jd number, JD , lv_type text , lv_variant text , flight_id text , flight text , mission text , flight_code text , platform text , launch_site text , launch_pad text , ascent_site text , ascent_pad text , apogee_km number, km , apogee_estimated true / false , orbital_payload_t number, t , agency text , agency_name text , launch_code text , outcome text , success_percent integer , category text
What Path
Metadata: version, coverage, downloads, validation /v1/launches
Versions and monthly snapshots /v1/launches/versions
Partitions /v1/launches/locations
Rows for one launch_class (JSON) /v1/launches/table/{launch_class}.json
Rows for one launch_class (CSV) /v1/launches/table/{launch_class}.csv
All rows in one file (tables up to 50,000 rows) /v1/launches/table/all.json
Whole dataset (CSV) /v1/launches/download/launches.csv
Whole dataset (Parquet) /v1/launches/download/launches.parquet

Satellite catalog Table

Id
satellite-catalog
Updates
Daily
Key
jcat
Partition
status_group
Columns
jcat text , norad_cat_id integer , satcat_note text , piece text , launch_tag text , catalog text , name text , original_name text , object_type text , gcat_type text , identity_uncertain true / false , status_group text , status_code text , status text , active true / false , owner text , owner_name text , state text , state_name text , launch_date date (YYYY-MM-DD) , launch_date_text text , decay_date date (YYYY-MM-DD) , decay_date_text text , mass_kg number, kg , mass_estimated true / false , orbit_source text , orbit_epoch date (YYYY-MM-DD) , orbit_epoch_text text , period_min number, min , perigee_km number, km , apogee_km number, km , inclination_deg number, deg , orbit_estimated true / false , orbit_category text , orbit_class text
What Path
Metadata: version, coverage, downloads, validation /v1/satellite-catalog
Versions and monthly snapshots /v1/satellite-catalog/versions
Partitions /v1/satellite-catalog/locations
Rows for one status_group (JSON) /v1/satellite-catalog/table/{status_group}.json
Rows for one status_group (CSV) /v1/satellite-catalog/table/{status_group}.csv
All rows in one file (tables up to 50,000 rows) /v1/satellite-catalog/table/all.json
Whole dataset (CSV) /v1/satellite-catalog/download/satellite-catalog.csv
Whole dataset (Parquet) /v1/satellite-catalog/download/satellite-catalog.parquet