Developer API
The public API is available under /api/v1. It is unauthenticated, read-only, and intended for apps and websites that can cache aggressively.
Attribution
Any public display of API data must visibly credit SpaceCraftDB with a followed link. Use:
Data from <a href="https://spacecraftdb.com">SpaceCraftDB</a>Links may use rel="noopener" when opening a new tab. Do not use nofollow, ugc, sponsored, or noreferrer.
Envelope
{
"data": {},
"meta": {
"apiVersion": "1",
"dataVersion": "38e663e79c4b97ed",
"generatedAt": "2026-06-15T00:00:00Z",
"attribution": {
"required": true,
"label": "Data from SpaceCraftDB",
"url": "https://spacecraftdb.com"
}
},
"links": {
"self": "/api/v1/version.json"
}
}Most endpoints use the standard envelope. Trade Nexus market endpoints return raw Trade Nexus payloads so the website and overlay can share the same read contract.
Cache Policy
public, max-age=31536000, s-maxage=31536000, immutablepublic, max-age=300, s-maxage=3600, stale-while-revalidate=86400public, max-age=3600, s-maxage=86400, stale-while-revalidate=604800public, max-age=60, s-maxage=300Trade Nexus Data Rules
Trade Nexus routes expose community-captured sell asks only. Observed buckets are returned as captured with no zero-fill or interpolation; lastSeen is not a sale, totalUnits is listed supply, and these APIs do not infer fills, demand, turnover, or VWAP. Freshness comes from payload capturedAt, not response age.
Endpoint Reference
Select an endpoint family to inspect paths, parameters, cache policy, and the response shape.
GETVersion/api/v1/version.json
/api/v1/version.jsonResponse Shape
{
"data": {
"apiVersion": "1",
"dataVersion": "38e663e79c4b97ed",
"generatedAt": "2026-06-15T00:00:00Z",
"attribution": { "...": "..." },
"counts": { "items": 0, "resources": 0, "missions": 0 },
"routes": { "...": "..." }
},
"meta": { "...": "standard envelope metadata" },
"links": { "self": "/api/v1/version.json" }
}GETManifest/api/v1/latest/manifest.json
/api/v1/latest/manifest.jsonResponse Shape
{
"data": {
"apiVersion": "1",
"dataVersion": "38e663e79c4b97ed",
"generatedAt": "2026-06-15T00:00:00Z",
"counts": { "items": 0, "resources": 0, "permits": 0 },
"payloads": {
"items": {
"path": "/api/v1/data/38e663e79c4b97ed/items.json",
"latest": "/api/v1/latest/items.json",
"sha256": "..."
}
},
"attribution": { "...": "..." }
},
"meta": { "...": "standard envelope metadata" },
"links": { "self": "/api/v1/latest/manifest.json" }
}GETStats/api/v1/stats.json
/api/v1/stats.jsonResponse Shape
{
"data": {
"items": 0,
"resources": 0,
"permits": 0,
"missions": 0
},
"meta": { "...": "standard envelope metadata" },
"links": { "self": "/api/v1/stats.json" }
}GETOpenAPI/api/v1/openapi.json
/api/v1/openapi.jsonResponse Shape
{
"openapi": "3.1.0",
"info": { "title": "SpaceCraftDB API", "version": "1" },
"paths": { "/api/v1/version.json": { "get": { "...": "..." } } }
}GETSlim Indexes/api/v1/latest/items/index.json
/api/v1/latest/items/index.json/api/v1/latest/resources/index.json/api/v1/latest/missions/index.jsonResponse Shape
{
"data": [
{
"id": "item-id",
"slug": "aluminum-ingot",
"name": "Aluminum Ingot",
"href": "https://spacecraftdb.com/items/aluminum-ingot",
"icon": { "file": "atlas.png", "x": 0, "y": 0, "size": 64 },
"category": "Material",
"price": 0,
"storage": 1,
"hasModel": false
}
],
"meta": { "count": 0, "...": "standard envelope metadata" },
"links": { "self": "/api/v1/latest/items/index.json" }
}GETLatest Snapshots/api/v1/latest/items.json
/api/v1/latest/items.json/api/v1/latest/resources.json/api/v1/latest/permits.json/api/v1/latest/missions.json/api/v1/latest/tech.json/api/v1/latest/crafting/graph.json/api/v1/latest/galaxy/quadrants.jsonResponse Shape
{
"data": [
{
"id": "item-id",
"slug": "aluminum-ingot",
"name": "Aluminum Ingot",
"desc": "...",
"attributes": [],
"sources": {
"craftedBy": [],
"usedIn": [],
"minedFrom": [],
"unlockedBy": []
}
}
],
"meta": {
"payload": { "key": "items", "sourceSha256": "...", "sourceBytes": 0 },
"...": "standard envelope metadata"
},
"links": {
"self": "/api/v1/latest/items.json",
"immutable": "/api/v1/data/38e663e79c4b97ed/items.json"
}
}GETImmutable Snapshots/api/v1/data/{version}/items.json
/api/v1/data/{version}/items.json/api/v1/data/{version}/resources.json/api/v1/data/{version}/permits.json/api/v1/data/{version}/missions.json/api/v1/data/{version}/tech.json/api/v1/data/{version}/crafting/graph.json/api/v1/data/{version}/galaxy/quadrants.jsonResponse Shape
{
"data": [ "...same payload shape as the matching latest snapshot..." ],
"meta": {
"dataVersion": "38e663e79c4b97ed",
"payload": { "key": "items", "sourceSha256": "...", "sourceBytes": 0 }
},
"links": {
"self": "/api/v1/data/38e663e79c4b97ed/items.json",
"latest": "/api/v1/latest/items.json"
}
}GETItem Detail/api/v1/items/{slug}.json
/api/v1/items/{slug}.jsonResponse Shape
{
"data": {
"id": "item-id",
"slug": "aluminum-ingot",
"name": "Aluminum Ingot",
"href": "https://spacecraftdb.com/items/aluminum-ingot",
"desc": "...",
"badges": [],
"attributes": [],
"effects": [],
"skills": [],
"tags": [],
"tiers": [],
"sources": {
"craftedBy": [],
"usedIn": [],
"minedFrom": [],
"unlockedBy": []
}
},
"meta": { "...": "standard envelope metadata" },
"links": {
"self": "/api/v1/items/aluminum-ingot.json",
"html": "https://spacecraftdb.com/items/aluminum-ingot"
}
}GETResource Detail/api/v1/resources/{slug}.json
/api/v1/resources/{slug}.jsonResponse Shape
{
"data": {
"id": "resource-id",
"slug": "alu-deposit",
"name": "Alu Deposit",
"href": "https://spacecraftdb.com/resources/alu-deposit",
"icon": { "file": "atlas.png", "x": 0, "y": 0, "size": 64 },
"tier": 0,
"type": "deposit",
"desc": "...",
"drops": []
},
"meta": { "...": "standard envelope metadata" },
"links": {
"self": "/api/v1/resources/alu-deposit.json",
"html": "https://spacecraftdb.com/resources/alu-deposit"
}
}GETPermit Detail/api/v1/permits/{slug}.json
/api/v1/permits/{slug}.jsonResponse Shape
{
"data": {
"id": "permit-id",
"slug": "electromagnetism",
"name": "Electromagnetism",
"href": "https://spacecraftdb.com/permits/electromagnetism",
"cost": 0,
"currency": "research",
"requires": [],
"unlocks": [],
"attributeUnlocks": []
},
"meta": { "...": "standard envelope metadata" },
"links": {
"self": "/api/v1/permits/electromagnetism.json",
"html": "https://spacecraftdb.com/permits/electromagnetism"
}
}GETMission Detail/api/v1/missions/{slug}.json
/api/v1/missions/{slug}.jsonResponse Shape
{
"data": {
"id": "mission-id",
"slug": "first-steps",
"title": "First Steps",
"href": "https://spacecraftdb.com/missions/first-steps",
"order": 0,
"kind": "...",
"category": "...",
"goal": "...",
"requires": [],
"rewards": [],
"steps": [{ "text": "..." }],
"intercom": [{ "text": "..." }]
},
"meta": { "...": "standard envelope metadata" },
"links": {
"self": "/api/v1/missions/first-steps.json",
"html": "https://spacecraftdb.com/missions/first-steps"
}
}GETTech/api/v1/tech.json
/api/v1/tech.json/api/v1/tech/nodes/{idOrSlug}.jsonResponse Shape
{
"data": {
"id": "tech-node-id",
"slug": "electromagnetism",
"name": "Electromagnetism",
"section": "perks",
"track": "optional-track-slug",
"requires": [],
"unlocks": []
},
"meta": { "...": "standard envelope metadata" },
"links": {
"self": "/api/v1/tech/nodes/electromagnetism.json",
"html": "https://spacecraftdb.com/tech-tree#electromagnetism"
}
}GETGalaxy Map/api/v1/latest/galaxy/{quadrant}/map.json
/api/v1/latest/galaxy/{quadrant}/map.jsonResponse Shape
{
"data": {
"w": 0,
"h": 0,
"sys": [
{ "id": "system-id", "slug": "system-slug", "n": "System Name", "x": 0, "y": 0, "pos": { "x": 0, "y": 0, "z": 0 } }
],
"edges": [[0, 1]],
"sectors": [
{ "id": "sector-id", "name": "Sector Name", "hull": [[0, 0]], "cx": 0, "cy": 0, "explorationLevel": 2 }
]
},
"meta": { "...": "standard envelope metadata" },
"links": { "self": "/api/v1/latest/galaxy/vexasux/map.json" }
}GETGalaxy Facets/api/v1/latest/galaxy/{quadrant}/facets.json
/api/v1/latest/galaxy/{quadrant}/facets.jsonResponse Shape
{
"data": {
"resources": [{ "slug": "alu-deposit", "name": "Alu Deposit", "tier": 0 }],
"services": [{ "id": "market", "name": "Market", "kind": "service" }],
"systems": {
"system-id": { "r": [0], "s": [0], "names": ["System Name"] }
}
},
"meta": { "...": "standard envelope metadata" },
"links": { "self": "/api/v1/latest/galaxy/vexasux/facets.json" }
}GETGalaxy System/api/v1/latest/galaxy/{quadrant}/systems/{system}.json
/api/v1/latest/galaxy/{quadrant}/systems/{system}.jsonResponse Shape
{
"data": {
"id": "system-id",
"slug": "example-system",
"name": "Example System",
"star": "...",
"sectorId": "sector-id",
"sectorName": "Sector Name",
"explorationLevel": 2,
"planets": [
{ "idx": 0, "name": "Planet Name", "resources": [] }
],
"connections": [
{ "id": "neighbor-id", "slug": "neighbor-system", "name": "Neighbor System" }
],
"stations": []
},
"meta": { "...": "standard envelope metadata" },
"links": {
"self": "/api/v1/latest/galaxy/vexasux/systems/example-system.json",
"html": "https://spacecraftdb.com/galaxy/vexasux/example-system"
}
}GETGalaxy Planet/api/v1/latest/galaxy/{quadrant}/systems/{system}/planets/{idx}.json
/api/v1/latest/galaxy/{quadrant}/systems/{system}/planets/{idx}.jsonResponse Shape
{
"data": {
"idx": 0,
"name": "Planet Name",
"lx": 0,
"ly": 0,
"resources": [
{ "id": "resource-id", "slug": "alu-deposit", "name": "Alu Deposit", "tier": 0 }
]
},
"meta": { "...": "standard envelope metadata" },
"links": {
"self": "/api/v1/latest/galaxy/vexasux/systems/example-system/planets/0.json",
"html": "https://spacecraftdb.com/galaxy/vexasux/example-system/0"
}
}GETTrade Nexus Station Book/api/v1/markets/{quadrant}/stations/{station}/book.json
/api/v1/markets/{quadrant}/stations/{station}/book.jsonResponse Shape
{
"server": {
"slug": "na-indanex",
"regionCode": "na",
"region": "North America",
"realmId": "indanex",
"name": "Indanex"
},
"station": {
"systemId": "Sys_TerminusStation",
"systemName": "Helicon",
"system": "Sawma",
"slug": "helicon"
},
"capturedAt": 1760000000000,
"items": [
{
"itemGuid": "0123456789abcdef",
"bestAskCents": 12500,
"emaPriceCents": 12800,
"avgAskCents": 13100,
"totalUnits": 240,
"orderCount": 3,
"sellerCount": 2,
"capturedAt": 1760000000000,
"hourBucket": 488888,
"prevBestAskCents": 12900,
"spark": [13200, 12900, 12500],
"sparkBuckets": [488886, 488887, 488888],
"newestOfferAgeMs": 120000
}
]
}GETTrade Nexus Item Detail/api/v1/markets/{quadrant}/items/{guid64}.json?station={station}
/api/v1/markets/{quadrant}/items/{guid64}.json?station={station}Response Shape
{
"itemGuid": "0123456789abcdef",
"server": { "slug": "na-indanex", "realmId": "indanex", "name": "Indanex" },
"station": { "systemId": "Sys_TerminusStation", "systemName": "Helicon", "slug": "helicon" },
"series": [
{
"hourBucket": 488888,
"capturedAt": 1760000000000,
"bestAskCents": 12500,
"emaPriceCents": 12800,
"avgAskCents": 13100,
"totalUnits": 240,
"orderCount": 3,
"sellerCount": 2
}
],
"expiryHorizonGameT": 123456,
"offers": [
{
"uid": 123,
"qty": 80,
"priceCents": 12500,
"expiryGameT": 123456,
"expiryWallMs": 1760003600000,
"playerUid": "player-id",
"playerName": "Seller",
"corpName": "Corp",
"firstSeenBucket": 488887,
"lastSeenBucket": 488888,
"firstSeenAt": 1759996400000,
"lastSeenAt": 1760000000000
}
],
"stations": [{ "systemId": "Sys_TerminusStation", "systemName": "Helicon", "bestAskCents": 12500, "capturedAt": 1760000000000 }],
"servers": [{ "slug": "eu-example", "realmId": "example", "bestAskCents": 14000, "capturedAt": 1760000000000 }]
}GETTooltip Data/api/v1/items/{slug}/tooltip.json
/api/v1/items/{slug}/tooltip.json/api/v1/items/tooltips.json?slugs=slug-a,slug-bResponse Shape
{
"data": {
"schema": "scdb.item-tooltip.v1",
"id": "item-id",
"slug": "aluminum-ingot",
"name": "Aluminum Ingot",
"url": "https://spacecraftdb.com/items/aluminum-ingot",
"description": "...",
"icon": { "file": "atlas.png", "x": 0, "y": 0, "size": 64 },
"price": 0,
"storage": 1,
"lootTier": 0,
"attributes": [],
"craftedFrom": [],
"counts": { "craftedBy": 0, "usedIn": 0, "minedFrom": 0, "unlockedBy": 0 }
},
"meta": { "...": "standard envelope metadata" },
"links": {
"self": "/api/v1/items/aluminum-ingot/tooltip.json",
"html": "https://spacecraftdb.com/items/aluminum-ingot"
}
}Errors
{
"error": {
"code": "not_found",
"message": "Item not found",
"details": { "slug": "missing-item" }
},
"meta": { "...": "..." },
"links": { "self": "/api/v1/items/missing-item.json" }
}