{
  "version": "2026.09.09",
  "schema_version": "2",
  "publication_date": "2026-09-09T12:59:07.994Z",
  "coverage_date": "2026-09-09T12:30:42.735+00:00",
  "record_count": 16793,
  "source_versions": [
    {
      "slug": "satnogs",
      "name": "SatNOGS DB",
      "license": "CC BY-SA 4.0",
      "last_fetched_at": null,
      "latest_successful_run": null
    },
    {
      "slug": "celestrak-omm",
      "name": "CelesTrak OMM/JSON",
      "license": "CelesTrak usage policy; no standalone reuse license stated",
      "last_fetched_at": "2026-09-09T10:28:25.145+00:00",
      "latest_successful_run": "2026-09-09T10:28:25.45312+00:00"
    },
    {
      "slug": "celestrak-satcat",
      "name": "CelesTrak SATCAT",
      "license": "CelesTrak usage policy; no standalone reuse license stated",
      "last_fetched_at": "2026-09-09T10:28:34.717+00:00",
      "latest_successful_run": "2026-09-09T10:28:34.997163+00:00"
    },
    {
      "slug": "orbitalwiki-curation",
      "name": "OrbitalWiki manual curation",
      "license": "ODbL-1.0 (OrbitalWiki structure and original contributions)",
      "last_fetched_at": "2026-09-09T10:28:48.148+00:00",
      "latest_successful_run": "2026-09-09T10:28:48.066401+00:00"
    },
    {
      "slug": "gcat-mcdowell",
      "name": "GCAT — Jonathan McDowell's General Catalog",
      "license": "CC BY 4.0",
      "last_fetched_at": "2026-09-09T12:30:42.735+00:00",
      "latest_successful_run": "2026-09-09T12:30:46.061959+00:00"
    },
    {
      "slug": "wikidata",
      "name": "Wikidata",
      "license": "CC0 1.0",
      "last_fetched_at": "2026-09-06T11:54:24.649+00:00",
      "latest_successful_run": "2026-09-06T11:54:24.860271+00:00"
    }
  ],
  "citation": "OrbitalWiki Satellite Catalog, dataset release 2026.09.09 (data as of 2026-09-09). https://www.orbitalwiki.com/datasets - OrbitalWiki compilation licensed ODbL-1.0; upstream provenance includes CelesTrak, GCAT (J. McDowell, CC-BY 4.0), and Wikidata (CC0). Review each upstream source's terms before redistribution.",
  "release_notes": "Automated release from the live catalog. Subsets: active_payloads, operators, launches, reentries, claims, classroom_sample.",
  "files": [
    {
      "subset": "active_payloads",
      "format": "csv",
      "filename": "active_payloads.csv",
      "byte_size": 3389801,
      "row_count": 16538,
      "sha256": "4bf90503acc6b78659a25d2691fec6c16eb154d1ae70f7184dd1f9e0a42e7d99"
    },
    {
      "subset": "active_payloads",
      "format": "json",
      "filename": "active_payloads.json",
      "byte_size": 11113205,
      "row_count": 16538,
      "sha256": "61e982c5b3cf4e5b106be768491f35a9211cff3946163eddca2ccd05cb2b7882"
    },
    {
      "subset": "operators",
      "format": "csv",
      "filename": "operators.csv",
      "byte_size": 36727,
      "row_count": 855,
      "sha256": "95feb5286bc4f3bce33cc953e567448a212b93484c7fae1a7ba8a54136741234"
    },
    {
      "subset": "operators",
      "format": "json",
      "filename": "operators.json",
      "byte_size": 104074,
      "row_count": 855,
      "sha256": "4356b8e989229397a52149f2dafb48fa68df58d71fe95786a9c149a5f6e9e091"
    },
    {
      "subset": "launches",
      "format": "csv",
      "filename": "launches.csv",
      "byte_size": 781597,
      "row_count": 16793,
      "sha256": "22fc1b5296450977fb9b7c46fc2f72be2ab25d731d7a5694d11dba3e06ee7304"
    },
    {
      "subset": "launches",
      "format": "json",
      "filename": "launches.json",
      "byte_size": 3469030,
      "row_count": 16793,
      "sha256": "c621cbc1af0e164b4be355a2ad41e809412173aea598b51ceb24542800d8cd64"
    },
    {
      "subset": "reentries",
      "format": "csv",
      "filename": "reentries.csv",
      "byte_size": 24779,
      "row_count": 250,
      "sha256": "56c0407c9293bde118b2915764611a7bd2486324edc73804c51f271a8838fc7a"
    },
    {
      "subset": "reentries",
      "format": "json",
      "filename": "reentries.json",
      "byte_size": 67718,
      "row_count": 250,
      "sha256": "dd8f40df747734aaa4d1741489eee2737547199e0e9368aa89ec4765a138b938"
    },
    {
      "subset": "claims",
      "format": "csv",
      "filename": "claims.csv",
      "byte_size": 16725089,
      "row_count": 120034,
      "sha256": "a312f98bd04d93c8ce249ee8d24391696a392106d86775d14cd984d9aed1e780"
    },
    {
      "subset": "claims",
      "format": "json",
      "filename": "claims.json",
      "byte_size": 44297904,
      "row_count": 120034,
      "sha256": "d47f7c5510d38e1d606c6f36b39013a639a37c0c68f8a3a701d8aeb6445ae620"
    },
    {
      "subset": "classroom_sample",
      "format": "csv",
      "filename": "classroom_sample.csv",
      "byte_size": 11650,
      "row_count": 50,
      "sha256": "918c345260cb28142b5e4284c93e2268822de85ee58080492c86c8d3bee7629f"
    },
    {
      "subset": "classroom_sample",
      "format": "json",
      "filename": "classroom_sample.json",
      "byte_size": 34742,
      "row_count": 50,
      "sha256": "09297c5cb8eb3c54aed6ce121e2a52f2c68c50d5c10b452fceeb79bd6d9375fa"
    }
  ],
  "unavailable_subsets": [
    {
      "key": "university_satellites",
      "reason": "No affiliation/institution field in the current schema."
    },
    {
      "key": "amateur_radio_satellites",
      "reason": "Transmitter data exists, but this release schema does not yet define a radio subset or observation-history coverage."
    }
  ],
  "formats_note": "CSV and JSON only. Parquet/SQLite require a new dependency and are deferred (see PR).",
  "reentries_note": "Reentries lack a true reentry-date column; ordered by updated_at as a proxy.",
  "stale_sources": [
    {
      "slug": "satnogs",
      "latest_successful_run": null,
      "last_fetched_at": null
    }
  ],
  "changes": {
    "status": "computed",
    "compared_with": "2026.09.08",
    "scope": "active_payloads",
    "records_added": 0,
    "records_removed": 4,
    "records_changed": 11,
    "detail_rows_stored": 15,
    "detail_capped_per_type": null
  },
  "pagination_note": "Subsets are exported via offset pagination against the live catalog. Run releases right after an ingestion cycle (not during) so concurrent writes cannot skip/duplicate rows."
}
