{"openapi":"3.1.0","info":{"title":"Cabin read-only aircraft API","version":"1.0.0","description":"Public canonical specs and seat maps. Estimated layouts, passenger evidence and analysis are separate. No authentication, bookings, live flight matching or model calls."},"servers":[{"url":"https://cabin.coach"}],"paths":{"/api/agent/search":{"get":{"operationId":"search_aircraft","summary":"Search airline and aircraft catalog records","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":2,"maxLength":120}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":20,"default":10}}],"responses":{"200":{"description":"Catalog matches. Consult configuration data for estimated preview availability.","content":{"application/json":{"schema":{"type":"object","required":["schemaVersion","query","total","results"],"properties":{"schemaVersion":{"const":"1.0"},"query":{"type":"string"},"total":{"type":"integer"},"results":{"type":"array","items":{"type":"object","required":["id","airline","aircraft"],"properties":{"id":{"type":"string"},"airline":{"type":"string"},"aircraft":{"type":"string"},"guideUrl":{"type":["string","null"]},"configurationDataUrl":{"type":["string","null"]},"mapUrl":{"type":["string","null"]}}}}}}}}},"400":{"description":"Invalid request or unknown aircraft","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}},"/api/agent/aircraft/{slug}":{"get":{"operationId":"get_configurations","summary":"Read canonical configurations, provenance, map links and trust layers","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"All viable configurations. Preserve resolution uncertainty; no flight inference.","content":{"application/json":{"schema":{"type":"object","required":["schemaVersion","verifiedData","estimatedLayouts","passengerEvidence","cabinAnalysis","limitations"],"properties":{"schemaVersion":{"const":"1.0"},"verifiedData":{"type":"object","description":"Canonical configurations, source provenance, resolution, shared fields and existing maps."},"estimatedLayouts":{"type":"array","items":{"type":"object","properties":{"configurationId":{"type":"string"},"status":{"const":"estimated_not_manually_reviewed"},"basis":{"type":"string"},"unavailable":{"type":"array","items":{"type":"string"}}}}},"passengerEvidence":{"type":"object"},"cabinAnalysis":{"type":"object"},"limitations":{"type":"array","items":{"type":"string"}}}}}}},"404":{"description":"Invalid request or unknown aircraft","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}},"/api/aircraft/map":{"get":{"operationId":"get_seat_map","summary":"Read existing seat-map geometry by exact key","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Existing map, verification status, source, cabins, rows, features and unknowns. Never estimated geometry.","content":{"application/json":{"schema":{"type":"object","required":["key","verificationStatus","source","cabins","rows"],"properties":{"key":{"type":"string"},"verificationStatus":{"type":"string"},"source":{"type":"object"},"cabins":{"type":"array","items":{"type":"object"}},"rows":{"type":"array","items":{"type":"object"}}}}}}},"404":{"description":"Map not found; no estimate is substituted."}}}}}}