{"components":{"schemas":{"Attribution":{"properties":{"disallowedRel":{"items":{"type":"string"},"type":"array"},"label":{"type":"string"},"required":{"type":"boolean"},"url":{"format":"uri","type":"string"}},"required":["required","label","url"],"type":"object"},"Envelope":{"properties":{"data":true,"links":{"type":"object"},"meta":{"properties":{"apiVersion":{"type":"string"},"attribution":{"$ref":"#/components/schemas/Attribution"},"dataVersion":{"type":"string"},"generatedAt":{"type":"string"}},"required":["apiVersion","dataVersion","generatedAt","attribution"],"type":"object"}},"required":["data","meta","links"],"type":"object"}}},"info":{"description":"Read-only, cache-first public data API for SpaceCraftDB. Public uses must credit SpaceCraftDB with a followed link.","title":"SpaceCraftDB Public API","version":"1.0.0"},"openapi":"3.1.0","paths":{"/api/v1/data/38e663e79c4b97ed/crafting/graph.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Immutable crafting graph snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/data/38e663e79c4b97ed/galaxy/quadrants.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Immutable galaxy quadrant snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/data/38e663e79c4b97ed/items.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Immutable item snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/data/38e663e79c4b97ed/missions.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Immutable mission snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/data/38e663e79c4b97ed/permits.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Immutable permit snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/data/38e663e79c4b97ed/resources.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Immutable resource snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/data/38e663e79c4b97ed/tech.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Immutable tech tree snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/items/tooltips.json":{"get":{"description":"Use ?slugs=slug-a,slug-b. Maximum 40 slugs.","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Batch item tooltip projection"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/items/{slug}.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Item detail"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/items/{slug}/tooltip.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Item tooltip projection"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/crafting/graph.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Latest crafting graph snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/galaxy/quadrants.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Latest galaxy quadrants"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/galaxy/{quadrant}/facets.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Galaxy map facets"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/galaxy/{quadrant}/map.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Galaxy map geometry"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/galaxy/{quadrant}/systems/{system}.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Galaxy system detail"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/galaxy/{quadrant}/systems/{system}/planets/{idx}.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Galaxy planet detail"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/items.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Latest item snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/items/index.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Slim item index"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/manifest.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Current API manifest"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/missions.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Latest mission snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/missions/index.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Slim mission index"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/permits.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Latest permit snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/resources.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Latest resource snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/resources/index.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Slim resource index"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/latest/tech.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Latest tech tree snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/missions/{slug}.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Mission detail without raw script source"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/overlay/items.json":{"get":{"description":"Includes CastleDB GUIDs, blueprint craft GUID variants, and icon atlas URLs for local memory-overlay item resolution. Not intended as the public item database.","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Overlay item lookup"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/permits/{slug}.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Permit detail"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/resources/{slug}.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Resource detail"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/stats.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Current data counts"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/tech.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Latest tech tree snapshot"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/tech/nodes/{idOrSlug}.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Tech node detail"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}},"/api/v1/version.json":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}},"description":"Wrapped SpaceCraftDB API response."},"304":{"description":"Not modified."},"404":{"description":"Not found."}},"summary":"Current API and data version"},"options":{"responses":{"204":{"description":"CORS headers only."}},"summary":"CORS preflight"}}},"servers":[{"url":"https://spacecraftdb.com"}]}