GCAT: General Catalog of Artificial Space Objects

1,076
0
Updated:
Files:2
Size:6.41 MB
Formats:csv
License:odc-pddl

Every artificial object ever launched into space — from Sputnik in 1957 to the present — catalogued by Jonathan McDowell. Includes launch date, country, object type (payload, rocket body, debris, component), orbit class, and current status.

API Access

Access dataset files directly from scripts, code, or AI agents.

Browse dataset files
Dataset Files

Each file has a stable URL (r-link) that you can use directly in scripts, apps, or AI agents. These URLs are permanent and safe to hardcode.

/technology/gcat-artificial-space-objects/
https://datahub.io/technology/gcat-artificial-space-objects/_r/-/AGENTS.md
https://datahub.io/technology/gcat-artificial-space-objects/_r/-/README.md
https://datahub.io/technology/gcat-artificial-space-objects/_r/-/TASK.md
https://datahub.io/technology/gcat-artificial-space-objects/_r/-/data/objects_per_year.csv
https://datahub.io/technology/gcat-artificial-space-objects/_r/-/data/satcat.csv
https://datahub.io/technology/gcat-artificial-space-objects/_r/-/data/satcat_raw.tsv
https://datahub.io/technology/gcat-artificial-space-objects/_r/-/datapackage.json
Key Files

Start with these files — they give you everything you need to understand and access the dataset.

datapackage.jsonmetadata & schema
https://datahub.io/technology/gcat-artificial-space-objects/_r/-/datapackage.json
README.mddocumentation
https://datahub.io/technology/gcat-artificial-space-objects/_r/-/README.md
Typical Usage
  1. 1. Fetch datapackage.json to inspect schema and resources
  2. 2. Download data resources listed in datapackage.json
  3. 3. Read README.md for full context

Data Views

70 Years of Space Launches: Objects by Type per Year

Data Files

Explore with AI

Satellite Catalog (satcat)

Download

Download CSV

About

Standard catalog of all artificial space objects. One row per phase; most objects have a single phase. Covers all objects ever tracked in Earth orbit and beyond.
Last updated
15 March 2026
Total rows
...
Format
CSV
File size
6.41 MB

Objects Launched per Year by Type

Download

Download CSV

About

Pre-aggregated count of objects launched per year, broken down by object type. Used for the bar chart view.
Last updated
15 March 2026
Total rows
...
Format
CSV
File size
1.46 kB

About this dataset

DataPressr — AI Agent Instructions

You are helping wrangle raw data finds into clean, publishable datasets on DataHub.

Concepts

Data hierarchy

  • Catalog — a collection of datasets. Maps to one GitHub repo + one DataHub publication. Example: "World Bank Open Data", "Our World in Data".
  • Dataset — a coherent data concept with defined schema and coverage. One directory, one datapackage.json. Example: "World GDP 1960–2024".
  • Data file — a concrete file artifact (csv, json, parquet…). Listed as a resource in datapackage.json.

Catalog-as-repo rule: if the source is a portal or collection containing many datasets, give it its own repo and DataHub publication — not a subfolder inside another dataset.

Dataset lifecycle

A dataset doesn't need to be complete to be published. Lifecycle stages:

StageDescription
captureJust a URL or note — intent to explore
stubTitle, description, source link. No files yet. Publishable.
archivedRaw files downloaded locally
structuredCleaned, normalised, schema documented
enrichedAnalysis, visualisations, derived data added
monitoredLiving source, versioned and updated over time

Set "status": "<stage>" in datapackage.json to track this.


Dataset structure

Every dataset is a directory:

<name>/
  datapackage.json   # metadata and resource list (required)
  data/              # data files go here
  .datahubignore     # gitignore-style exclusions for dh push
  AGENTS.md          # this file (copy into new datasets)

datapackage.json

Minimal valid example:

{
  "name": "world-gdp",
  "title": "World GDP",
  "description": "GDP by country from World Bank, 1960–2024",
  "status": "structured",
  "resources": [
    {
      "path": "data/gdp.csv",
      "name": "gdp",
      "title": "GDP by Country",
      "mediatype": "text/csv"
    }
  ]
}

Rules:

  • name must be URL-safe: lowercase, hyphens only
  • Every file in data/ that should be published must be in resources
  • status should reflect the lifecycle stage above
  • Use .datahubignore to exclude scratch files, large intermediaries, raw downloads

Adding charts (views)

Add a views array to datapackage.json to render charts on the dataset page:

{
  "views": [
    {
      "name": "gdp-over-time",
      "title": "GDP Over Time",
      "specType": "simple",
      "resources": ["gdp"],
      "spec": {
        "type": "line",
        "group": "year",
        "series": ["gdp_usd"]
      }
    }
  ]
}

Supported chart types: line, bar, lines-and-points. Only CSV and GeoJSON resources can be visualised. group is the x-axis field, series is the list of y-axis fields.


Workflow

Start a new dataset

Create the directory structure:

mkdir -p <name>/data
cd <name>

Create datapackage.json with at minimum name, title, description. Add "status": "stub" if no data files yet.

Copy this AGENTS.md into the new directory so future AI sessions have context.

Push to DataHub

dh push .

Requires env vars:

export DATAHUB_API_URL=https://datahub.io
export DATAHUB_API_TOKEN=<your-token>
export DATAHUB_PUBLICATION=<your-publication-slug>

dh is the DataHub CLI — install from datopian/datahub-next.

Delete a dataset

dh delete <name>

Claude Code skills

If using Claude Code, the following slash commands are available in this repo:

CommandWhat it does
/init <name>Scaffold a new dataset directory
/pushPush current directory to DataHub
/validateCheck datapackage.json for common issues