Background
A live API audit against UEX Corp (https://uexcorp.space/api/2.0) on 2026-06-01 revealed several broken sync steps and field drift. Full audit documented in docs/schema/inventory-catalog-design.md.
Broken endpoints (404 — steps fail silently or crash)
| Step file |
Current path |
Correct path / fix |
pois-sync.step.ts |
/pois |
/poi |
orbits-sync.step.ts |
/orbit_distances |
Endpoint removed — no live equivalent found; remove or stub this fetch |
vehicles-sync.step.ts |
/vehicle_loaners |
Endpoint removed — loaners now embedded in /vehicles response as loaners[] array |
Fields present in our interfaces but absent from live API
| Endpoint |
Field |
Action |
/planets |
id_orbit, is_lagrange |
Remove from UexPlanet interface and SQL insert |
/jump_points |
name, size, is_available_live |
Remove from UexJumpPoint interface and SQL insert |
/categories |
attributes[] |
Remove from UexCategory interface; station_category_attribute never populates |
/commodities |
slug |
Remove from UexCommodity interface and SQL insert |
/companies |
id_faction |
Remove from UexCompany interface and SQL insert |
New fields in live API we are not capturing
| Endpoint |
New field |
Action |
/poi |
subtype |
Add to UexPoi interface and station_poi table if useful |
/terminals |
screenshot_full, screenshot_author, mcs |
Evaluate — add to station_terminal or ignore |
/vehicles |
url_photos (array), ids_vehicles_loaners |
url_photos → attributes JSONB on catalog entry; ids_vehicles_loaners → use embedded loaners[] instead |
Definition of Done
Related
Background
A live API audit against UEX Corp (
https://uexcorp.space/api/2.0) on 2026-06-01 revealed several broken sync steps and field drift. Full audit documented indocs/schema/inventory-catalog-design.md.Broken endpoints (404 — steps fail silently or crash)
pois-sync.step.ts/pois/poiorbits-sync.step.ts/orbit_distancesvehicles-sync.step.ts/vehicle_loaners/vehiclesresponse asloaners[]arrayFields present in our interfaces but absent from live API
/planetsid_orbit,is_lagrangeUexPlanetinterface and SQL insert/jump_pointsname,size,is_available_liveUexJumpPointinterface and SQL insert/categoriesattributes[]UexCategoryinterface;station_category_attributenever populates/commoditiesslugUexCommodityinterface and SQL insert/companiesid_factionUexCompanyinterface and SQL insertNew fields in live API we are not capturing
/poisubtypeUexPoiinterface andstation_poitable if useful/terminalsscreenshot_full,screenshot_author,mcsstation_terminalor ignore/vehiclesurl_photos(array),ids_vehicles_loanersurl_photos→attributesJSONB on catalog entry;ids_vehicles_loaners→ use embeddedloaners[]insteadDefinition of Done
pois-sync.step.ts— path corrected to/poiorbits-sync.step.ts—/orbit_distancesfetch removed or replacedvehicles-sync.step.ts—/vehicle_loanersfetch replaced with embeddedloaners[]from/vehiclesresponsestation_poi—subtypecolumn added if keepingpnpm testpassesRelated
docs/schema/inventory-catalog-design.md— full audit findings