{"openapi":"3.1.0","info":{"title":"Space Data API","description":"Pay-per-request space data for AI agents, powered by x402.","version":"1.0.0"},"paths":{"/":{"get":{"summary":"Root","description":"Free discovery endpoint: what this API sells and how to pay.","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Root  Get"}}}}}}},"/health":{"get":{"summary":"Health","description":"Free health check for uptime monitors and deployment platforms.","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Health Health Get"}}}}}}},"/archive/catalog":{"get":{"summary":"Archive Catalog","description":"Free discovery: list the historical works available as paid packages.","operationId":"archive_catalog_archive_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Archive Catalog Archive Catalog Get"}}}}}}},"/dev/packages":{"get":{"summary":"Dev Packages","description":"Free discovery: which packages have breaking-change data.","operationId":"dev_packages_dev_packages_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Dev Packages Dev Packages Get"}}}}}}},"/stats":{"get":{"summary":"Stats","description":"Free aggregate sales stats (proof of life for prospective buyers).","operationId":"stats_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Stats Stats Get"}}}}}}},"/stats/monthly":{"get":{"summary":"Stats Monthly","description":"Free: revenue grouped by calendar month, with payer breakdown.","operationId":"stats_monthly_stats_monthly_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Stats Monthly Stats Monthly Get"}}}}}}},"/stats/detail":{"get":{"summary":"Stats Detail","description":"[$0.01] Sales ledger rows, most recent first.\n\nOptional filters (added by request of our first paying user of this\nendpoint): ?address= filters to payments MADE BY that payer address\n(case-insensitive); ?chain= filters by network (accepts 'base' or\nCAIP-2 like 'eip155:8453').","operationId":"stats_detail_stats_detail_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":200,"title":"Limit"}},{"name":"address","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Address"}},{"name":"chain","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Chain"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Stats Detail Stats Detail Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/archive/plates/catalog":{"get":{"summary":"Plates Catalog","description":"Free discovery: list curated plate ids and titles.","operationId":"plates_catalog_archive_plates_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Plates Catalog Archive Plates Catalog Get"}}}}}}},"/dev/breaking-changes":{"get":{"summary":"Breaking Changes","description":"[$0.03] Breaking changes for a package upgrade, optionally one version.","operationId":"breaking_changes_dev_breaking_changes_get","parameters":[{"name":"package","in":"query","required":false,"schema":{"type":"string","default":"react","title":"Package"}},{"name":"version","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Breaking Changes Dev Breaking Changes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/archive/plate":{"get":{"summary":"Archive Plate","description":"[$0.05] One curated plate with caption and image URLs.","operationId":"archive_plate_archive_plate_get","parameters":[{"name":"id","in":"query","required":false,"schema":{"type":"string","default":"ramelli-machine-1588-leaf0450","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Archive Plate Archive Plate Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/archive/plates":{"get":{"summary":"Archive Plates","description":"[$0.10] Full curated plate set for one work.","operationId":"archive_plates_archive_plates_get","parameters":[{"name":"work","in":"query","required":false,"schema":{"type":"string","default":"ramelli-machine-1588","title":"Work"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Archive Plates Archive Plates Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/archive/work":{"get":{"summary":"Archive Work","description":"[$0.02] Full structured package for one work.","operationId":"archive_work_archive_work_get","parameters":[{"name":"id","in":"query","required":false,"schema":{"type":"string","default":"ramelli-machine-1588","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Archive Work Archive Work Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/archive/page":{"get":{"summary":"Archive Page","description":"[$0.01] IIIF image URLs for one page (leaf) of a work.","operationId":"archive_page_archive_page_get","parameters":[{"name":"work","in":"query","required":false,"schema":{"type":"string","default":"ramelli-machine-1588","title":"Work"}},{"name":"leaf","in":"query","required":false,"schema":{"type":"integer","default":42,"title":"Leaf"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Archive Page Archive Page Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/launches":{"get":{"summary":"Launches","description":"[$0.01] Next 5 upcoming SpaceX launches.","operationId":"launches_launches_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Launches Launches Get"}}}}}}},"/starship":{"get":{"summary":"Starship","description":"[$0.02] Upcoming and recent Starship launches.","operationId":"starship_starship_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Starship Starship Get"}}}}}}},"/launches/today":{"get":{"summary":"Launches Today","description":"[$0.01] SpaceX launches in the next 24 hours.","operationId":"launches_today_launches_today_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Launches Today Launches Today Get"}}}}}}},"/starship/next":{"get":{"summary":"Starship Next","description":"[$0.01] The single next Starship flight with a countdown.","operationId":"starship_next_starship_next_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Starship Next Starship Next Get"}}}}}}},"/events":{"get":{"summary":"Events","description":"[$0.01] Upcoming space events: dockings, spacewalks, landings.","operationId":"events_events_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Events Events Get"}}}}}}},"/starlink":{"get":{"summary":"Starlink","description":"[$0.01] Next 5 upcoming Starlink deployment missions.","operationId":"starlink_starlink_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Starlink Starlink Get"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}