{"openapi":"3.0.0","info":{"title":"FlyByWire Simulations API","description":"The FlyByWire Simulations API description","version":"1.0","contact":{}},"tags":[],"servers":[],"components":{"securitySchemes":{"jwt":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"Metar":{"type":"object","properties":{"icao":{"type":"string","description":"The airport ICAO","example":"KLAX"},"metar":{"type":"string","description":"The TAF notice","example":"KLAX 242253Z 26012KT 10SM FEW025 SCT043 BKN240 20/12 A2993 RMK AO2 SLP134 T02000122"},"source":{"type":"string","description":"The source of the METAR notice","enum":["vatsim","ms","ivao","pilotedge"]}},"required":["icao","metar","source"]},"Atis":{"type":"object","properties":{"icao":{"type":"string","description":"The airport ICAO","example":"KLAX"},"source":{"type":"string","description":"The source of the ATIS notice","enum":["faa","vatsim","ivao","pilotedge"]},"combined":{"type":"string","description":"The combined ATIS notice","example":"KLAX ATIS INFO V 2253Z. 25012KT 10SM FEW025 SCT043 BKN240 20/12 A2993 (TWO NINER NINER THREE). SIMUL ILS APPS IN PROG RWYS 24R AND 25L, OR VCTR FOR VIS APP WILL BE PROVIDED. SIMUL VIS APPS TO ALL RWYS ARE IN PROG. PARALLEL APPS IN PROG BTWN LOS ANGELES AND HAWTHORNE ARPTS. SIMUL INSTRUMENT DEPS IN PROG RWYS 24 AND 25. NOTAMS... ASDE-X SYSTEM IN USE. ACTIVATE TRANSPONDER WITH MODE C ON ALL TWYS AND RWYS. READBACK ALL RWY HOLD SHORT INSTRUCTIONS. ...ADVS YOU HAVE INFO V."},"arr":{"type":"string","description":"The arrival ATIS notice"},"dep":{"type":"string","description":"The departure ATIS notice"}},"required":["icao","source","combined","arr","dep"]},"Taf":{"type":"object","properties":{"icao":{"type":"string","description":"The airport ICAO","example":"KLAX"},"taf":{"type":"string","description":"The TAF notice","example":"KLAX 242119Z 2421/2524 28011KT P6SM SCT029 OVC040 FM250500 26007KT P6SM OVC030 FM250900 25007KT P6SM OVC035 FM251800 25010KT P6SM OVC040 FM252100 25013KT P6SM BKN045"},"source":{"type":"string","description":"The source of the TAF notice","enum":["aviationweather","faa"]}},"required":["icao","taf","source"]},"ATCInfo":{"type":"object","properties":{"callsign":{"type":"string","description":"The atc callsign","example":"EBBR_TWR"},"frequency":{"type":"string","description":"The atc frequency","example":"128.800"},"visualRange":{"type":"number","description":"The atc visual range","example":150},"textAtis":{"description":"The atc current ATIS","example":["line 1","line2","line3"],"type":"array","items":{"type":"string"}},"type":{"type":"number","description":"The atc type","example":"GND"},"latitude":{"type":"number","description":"The atc latitude","example":32.08420727935125},"longitude":{"type":"number","description":"The atc longitude","example":-81.14929543157402}},"required":["callsign","frequency","visualRange","textAtis","type","latitude","longitude"]},"CpdlcMessageDto":{"type":"object","properties":{"logon":{"type":"string","description":"The Hoppie logon code","example":"xxxxxxxxxx"},"from":{"type":"string","description":"The from-callsign","example":"DLH8HM"},"to":{"type":"string","description":"The to-callsign","example":"ALL-CALLSIGNS"},"type":{"type":"string","description":"The request type","example":"poll"},"packet":{"type":"string","description":"The message content","example":"data2//1/Hello"}},"required":["logon","from","to","type","packet"]},"Cpdlc":{"type":"object","properties":{"response":{"type":"string","description":"The server's response","example":"ok {}"}},"required":["response"]},"Point":{"type":"object","properties":{"x":{"type":"number","description":"The X coordinate"},"y":{"type":"number","description":"The Y coordinate"}},"required":["x","y"]},"TelexConnection":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier of the connection","example":"6571f19e-21f7-4080-b239-c9d649347101"},"isActive":{"type":"boolean","description":"Whether the connection is an active on or not"},"firstContact":{"format":"date-time","type":"string","description":"The time of first contact"},"lastContact":{"format":"date-time","type":"string","description":"The time of last contact"},"flight":{"type":"string","description":"The flight number","example":"OS355"},"location":{"allOf":[{"$ref":"#/components/schemas/Point"},{"description":"The current location of the aircraft"}]},"trueAltitude":{"type":"number","description":"The altitude above sea level of the aircraft in feet","example":3500},"heading":{"type":"number","description":"The heading the aircraft in degrees","example":250.46,"minimum":0,"maximum":360},"freetextEnabled":{"type":"boolean","description":"Whether the user wants to receive freetext messages","example":true},"aircraftType":{"type":"string","description":"The aircraft type the connection associated with","example":"A32NX"},"origin":{"type":"string","description":"The origin of the flight","example":"KLAX"},"destination":{"type":"string","description":"The destination of the flight","example":"KSFO"}},"required":["id","isActive","firstContact","lastContact","flight","location","trueAltitude","heading","freetextEnabled","aircraftType"]},"PaginatedTelexConnectionDto":{"type":"object","properties":{"results":{"description":"List of TELEX connections","type":"array","items":{"$ref":"#/components/schemas/TelexConnection"}},"count":{"type":"number","description":"Amount of connections returned","example":"25"},"total":{"type":"number","description":"The number of total active connections in the boundary","example":"1237"}},"required":["results","count","total"]},"TelexSearchResult":{"type":"object","properties":{"fullMatch":{"allOf":[{"$ref":"#/components/schemas/TelexConnection"},{"description":"A possible full text match"}]},"matches":{"description":"All possible matches","type":"array","items":{"$ref":"#/components/schemas/TelexConnection"}}},"required":["fullMatch","matches"]},"CreateTelexConnectionDto":{"type":"object","properties":{"location":{"allOf":[{"$ref":"#/components/schemas/Point"},{"description":"The current location of the aircraft"}]},"trueAltitude":{"type":"number","description":"The altitude above sea level of the aircraft in feet","example":3500},"heading":{"type":"number","description":"The heading the aircraft in degrees","example":250.46,"minimum":0,"maximum":360},"freetextEnabled":{"type":"boolean","description":"Whether the user wants to receive freetext messages","example":true},"aircraftType":{"type":"object","description":"The aircraft type the connection associated with","example":"A32NX"},"destination":{"type":"string","description":"The destination of the flight","example":"KSFO"},"origin":{"type":"string","description":"The origin of the flight","example":"KLAX"},"flight":{"type":"string","description":"The flight number","example":"OS355"}},"required":["location","trueAltitude","heading","freetextEnabled","aircraftType","flight"]},"FlightToken":{"type":"object","properties":{"accessToken":{"type":"string","description":"The access token for secured endpoints"},"connection":{"type":"string","description":"The connection ID the token refers to","example":"2a883a5c-b1f3-4a16-9fa4-b10515742d63"},"flight":{"type":"string","description":"The flight number the token refers to","example":"OS 41"}},"required":["accessToken","connection","flight"]},"UpdateTelexConnectionDto":{"type":"object","properties":{"location":{"allOf":[{"$ref":"#/components/schemas/Point"},{"description":"The current location of the aircraft"}]},"trueAltitude":{"type":"number","description":"The altitude above sea level of the aircraft in feet","example":3500},"heading":{"type":"number","description":"The heading the aircraft in degrees","example":250.46,"minimum":0,"maximum":360},"freetextEnabled":{"type":"boolean","description":"Whether the user wants to receive freetext messages","example":true},"aircraftType":{"type":"object","description":"The aircraft type the connection associated with","example":"A32NX"},"destination":{"type":"string","description":"The destination of the flight","example":"KSFO"},"origin":{"type":"string","description":"The origin of the flight","example":"KLAX"}},"required":["location","trueAltitude","heading","freetextEnabled","aircraftType"]},"TelexMessageDto":{"type":"object","properties":{"to":{"type":"string","description":"The number of the recipient flight","example":"OS355"},"message":{"type":"string","description":"The message to send","example":"Hello over there!"}},"required":["to","message"]},"TelexMessage":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier of the message","example":"6571f19e-21f7-4080-b239-c9d649347101"},"createdAt":{"format":"date-time","type":"string","description":"The time the message was sent"},"received":{"type":"boolean","description":"Whether the message has been received"},"message":{"type":"string","description":"The message to send","example":"Hello over there!"},"isProfane":{"type":"boolean","description":"Whether the message contains profanity and got filtered"},"from":{"allOf":[{"$ref":"#/components/schemas/TelexConnection"},{"description":"The sender connection"}]},"to":{"allOf":[{"$ref":"#/components/schemas/TelexConnection"},{"description":"The recipient connection"}]}},"required":["id","createdAt","received","message","isProfane","from","to"]},"AirportBatchDto":{"type":"object","properties":{"icaos":{"description":"The ICAOs to fetch","example":["KLAX","KSFO"],"type":"array","items":{"type":"string"}}},"required":["icaos"]},"Airport":{"type":"object","properties":{"icao":{"type":"string","description":"The airport ICAO","example":"KLAX"},"iata":{"type":"string","description":"The airport IATA","example":"LAX"},"type":{"type":"string","description":"The type of the airport","enum":["large_airport","medium_airport","small_airport"]},"name":{"type":"string","description":"The name of the airport","example":"Los Angeles International Airport"},"lat":{"type":"number","description":"The latitude of the airport","example":33.94250107},"lon":{"type":"number","description":"The longitude of the airport","example":-118.4079971},"elevation":{"type":"number","description":"The elevation of the airport","example":125},"continent":{"type":"string","description":"The continent the airport is in","example":"NA"},"country":{"type":"string","description":"The country the airport is in","example":"US"},"transAlt":{"type":"number","description":"The transition altitude of the airport","example":18000}},"required":["icao","iata","type","name","lat","lon","elevation","continent","country","transAlt"]},"CommitInfo":{"type":"object","properties":{"sha":{"type":"string","description":"The commit hash","example":"5160ea16c15868251f97ba4489304f328caafa8c"},"shortSha":{"type":"string","description":"The shortened commit hash","example":"5160ea1"},"timestamp":{"format":"date-time","type":"string","description":"The time the commit was created"}},"required":["sha","shortSha","timestamp"]},"ReleaseInfo":{"type":"object","properties":{"name":{"type":"string","description":"The name of the release","example":"v0.5.1"},"isPreRelease":{"type":"boolean","description":"Whether the release is a pre-release"},"publishedAt":{"format":"date-time","type":"string","description":"The publish timestamp of the release"},"htmlUrl":{"type":"string","description":"The URL of the release page on GitHub"},"body":{"type":"string","description":"Markdown formatted body of the release"}},"required":["name","isPreRelease","publishedAt","htmlUrl","body"]},"PullInfo":{"type":"object","properties":{"number":{"type":"number","description":"The number of the PR","example":"3176"},"title":{"type":"string","description":"The title of the PR","example":"feat: brake fan"},"author":{"type":"string","description":"The username of the author","example":"tyler58546"},"labels":{"description":"The labels on the PR","type":"array","items":{"type":"string"}},"isDraft":{"type":"boolean","description":"Whether the PR is still a draft"}},"required":["number","title","author","labels","isDraft"]},"ArtifactInfo":{"type":"object","properties":{"artifactUrl":{"type":"string","description":"URL of the artifact","example":"https://.../zip"}},"required":["artifactUrl"]},"Chart":{"type":"object","properties":{"url":{"type":"string","description":"The chart URL","example":"http://aeronav.faa.gov/d-tpp/2101/00237AD.PDF"},"name":{"type":"string","description":"The chart name","example":"AIRPORT DIAGRAM for LAX"}},"required":["url","name"]},"Charts":{"type":"object","properties":{"icao":{"type":"string","description":"The airport ICAO","example":"KLAX"},"charts":{"allOf":[{"$ref":"#/components/schemas/Chart"},{"description":"The list of chart URLs"}]}},"required":["icao","charts"]},"SatelliteInfo":{"type":"object","properties":{"name":{"type":"string","description":"The name of the satellite","example":"GPS BIIR-2  (PRN 13)"},"id":{"type":"string"},"epoch":{"format":"date-time","type":"string"},"meanMotion":{"type":"number"},"eccentricity":{"type":"number"},"inclination":{"type":"number"},"raOfAscNode":{"type":"number"},"argOfPericenter":{"type":"number"},"meanAnomaly":{"type":"number"},"ephemerisType":{"type":"number"},"classificationType":{"type":"string"},"noradCatId":{"type":"number"},"elementSetNo":{"type":"number"},"revAtEpoch":{"type":"number"},"bstar":{"type":"number"},"meanMotionDot":{"type":"number"},"meanMotionDdot":{"type":"number"}},"required":["name","id","epoch","meanMotion","eccentricity","inclination","raOfAscNode","argOfPericenter","meanAnomaly","ephemerisType","classificationType","noradCatId","elementSetNo","revAtEpoch","bstar","meanMotionDot","meanMotionDdot"]}}},"paths":{"/":{"get":{"operationId":"AppController_documentation","parameters":[],"responses":{"200":{"description":""}}}},"/metar/{icao}":{"get":{"operationId":"MetarController_getForICAO","parameters":[{"name":"icao","required":true,"in":"path","description":"The ICAO of the airport to search for","example":"KLAX","schema":{"type":"string"}},{"name":"source","required":false,"in":"query","description":"The source for the METAR","example":"vatsim","schema":{"enum":["vatsim","ms","ivao","pilotedge","aviationweather"],"type":"string"}}],"responses":{"200":{"description":"METAR notice was found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Metar"}}}},"404":{"description":"METAR not available for ICAO"}},"tags":["METAR"]}},"/atis/{icao}":{"get":{"operationId":"AtisController_getForICAO","parameters":[{"name":"icao","required":true,"in":"path","description":"The ICAO of the airport to search for","example":"KLAX","schema":{"type":"string"}},{"name":"source","required":false,"in":"query","description":"The source for the ICAO","example":"faa","schema":{"enum":["faa","vatsim","ivao","pilotedge"],"type":"string"}}],"responses":{"200":{"description":"ATIS notice was found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Atis"}}}},"404":{"description":"ATIS not available for ICAO"}},"tags":["ATIS"]}},"/taf/{icao}":{"get":{"operationId":"TafController_getForICAO","parameters":[{"name":"icao","required":true,"in":"path","description":"The ICAO of the airport to search for","example":"KLAX","schema":{"type":"string"}},{"name":"source","required":false,"in":"query","description":"The source for the TAF","example":"faa","schema":{"enum":["aviationweather","faa"],"type":"string"}}],"responses":{"200":{"description":"TAF notice was found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Taf"}}}},"404":{"description":"TAF not available for ICAO"}},"tags":["TAF"]}},"/api/v1/atc":{"get":{"operationId":"AtcController_getControllers","parameters":[{"name":"source","required":true,"in":"query","description":"The source for the atcs","example":"vatsim","schema":{"enum":["vatsim","ivao"],"type":"string"}}],"responses":{"200":{"description":"list of connected atc","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ATCInfo"}}}}}},"tags":["ATC"]}},"/api/v1/hoppie":{"post":{"operationId":"CpdlcController_requestData","parameters":[],"requestBody":{"required":true,"description":"The message to send","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CpdlcMessageDto"}}}},"responses":{"201":{"description":"The message could be addressed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cpdlc"}}}},"404":{"description":"The sender or recipient flight number could not be found"}},"tags":["HOPPIE"]}},"/txcxn":{"get":{"operationId":"TelexConnectionController_getAllActiveConnections","parameters":[{"name":"west","required":false,"in":"query","description":"Longitude for the west edge of the bounding box","schema":{"minimum":-180,"maximum":180,"default":-180},"isArray":false},{"name":"south","required":false,"in":"query","description":"Latitude for the south edge of the bounding box","schema":{"minimum":-90,"maximum":90,"default":-90},"isArray":false},{"name":"east","required":false,"in":"query","description":"Longitude for the east edge of the bounding box","schema":{"minimum":-180,"maximum":180,"default":180},"isArray":false},{"name":"north","required":false,"in":"query","description":"Latitude for the north edge of the bounding box","schema":{"minimum":-90,"maximum":90,"default":90},"isArray":false},{"name":"skip","required":false,"in":"query","description":"The number of connections to skip","schema":{"minimum":0,"default":0},"isArray":false},{"name":"take","required":false,"in":"query","description":"The number of connections to take","schema":{"maximum":25,"minimum":0,"default":25},"isArray":false}],"responses":{"200":{"description":"The paginated list of connections","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedTelexConnectionDto"}}}}},"tags":["TELEX"]},"post":{"operationId":"TelexConnectionController_addNewConnection","parameters":[],"requestBody":{"required":true,"description":"The new connection containing the flight number and current location","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTelexConnectionDto"}}}},"responses":{"201":{"description":"A flight got created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlightToken"}}}},"400":{"description":"An active flight with the given flight number is already in use"}},"tags":["TELEX"]},"put":{"operationId":"TelexConnectionController_updateConnection","parameters":[],"requestBody":{"required":true,"description":"The updated connection containing the current location","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTelexConnectionDto"}}}},"responses":{"200":{"description":"The connection got updated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TelexConnection"}}}},"404":{"description":"The connection with the given ID could not be found"}},"tags":["TELEX"],"security":[{"jwt":[]}]},"delete":{"operationId":"TelexConnectionController_disableConnection","parameters":[],"responses":{"200":{"description":"The connection got disabled"},"404":{"description":"The connection with the given ID could not be found"}},"tags":["TELEX"],"security":[{"jwt":[]}]}},"/txcxn/_find":{"get":{"operationId":"TelexConnectionController_findConnection","parameters":[{"name":"flight","required":true,"in":"query","description":"The flight number","example":"AAL456","schema":{"type":"string"}}],"responses":{"200":{"description":"All connections matching the query","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TelexSearchResult"}}}}},"tags":["TELEX"]}},"/txcxn/_count":{"get":{"operationId":"TelexConnectionController_countConnections","parameters":[],"responses":{"200":{"description":"The total number of active flights","content":{"application/json":{"schema":{"type":"number"}}}}},"tags":["TELEX"]}},"/txcxn/{id}":{"get":{"operationId":"TelexConnectionController_getSingleConnection","parameters":[{"name":"id","required":true,"in":"path","description":"The connection ID","example":"6571f19e-21f7-4080-b239-c9d649347101","schema":{"type":"string"}}],"responses":{"200":{"description":"The connection with the given ID was found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TelexConnection"}}}},"404":{"description":"The connection with the given ID could not be found"}},"tags":["TELEX"]}},"/txmsg":{"post":{"operationId":"TelexMessageController_sendNewMessage","parameters":[],"requestBody":{"required":true,"description":"The message to send","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TelexMessageDto"}}}},"responses":{"201":{"description":"The message could be addressed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TelexMessage"}}}},"404":{"description":"The sender or recipient flight number could not be found"}},"tags":["TELEX"],"security":[{"jwt":[]}]},"get":{"operationId":"TelexMessageController_getMessagesForConnection","parameters":[],"responses":{"200":{"description":"Open messages for the recipient. Will get automatically acknowledged","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TelexMessage"}}}}}},"tags":["TELEX"],"security":[{"jwt":[]}]}},"/health":{"get":{"operationId":"HealthController_check","parameters":[],"responses":{"200":{"description":"The Health Check is successful","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","example":"ok"},"info":{"type":"object","example":{"database":{"status":"up"}},"additionalProperties":{"type":"object","properties":{"status":{"type":"string"}},"additionalProperties":{"type":"string"}},"nullable":true},"error":{"type":"object","example":{},"additionalProperties":{"type":"object","properties":{"status":{"type":"string"}},"additionalProperties":{"type":"string"}},"nullable":true},"details":{"type":"object","example":{"database":{"status":"up"}},"additionalProperties":{"type":"object","properties":{"status":{"type":"string"}},"additionalProperties":{"type":"string"}}}}}}}},"503":{"description":"The Health Check is not successful","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","example":"error"},"info":{"type":"object","example":{"database":{"status":"up"}},"additionalProperties":{"type":"object","properties":{"status":{"type":"string"}},"additionalProperties":{"type":"string"}},"nullable":true},"error":{"type":"object","example":{"redis":{"status":"down","message":"Could not connect"}},"additionalProperties":{"type":"object","properties":{"status":{"type":"string"}},"additionalProperties":{"type":"string"}},"nullable":true},"details":{"type":"object","example":{"database":{"status":"up"},"redis":{"status":"down","message":"Could not connect"}},"additionalProperties":{"type":"object","properties":{"status":{"type":"string"}},"additionalProperties":{"type":"string"}}}}}}}}},"tags":["HEALTH"]}},"/api/v1/airport/_batch":{"post":{"operationId":"AirportController_getBatch","parameters":[],"requestBody":{"required":true,"description":"List of all ICAOs to fetch","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AirportBatchDto"}}}},"responses":{"200":{"description":"List of found airports","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Airport"}}}}}},"tags":["Airport"]}},"/api/v1/airport/{icao}":{"get":{"operationId":"AirportController_getForICAO","parameters":[{"name":"icao","required":true,"in":"path","description":"The ICAO of the airport to search for","example":"KLAX","schema":{"type":"string"}}],"responses":{"200":{"description":"Airport was found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Airport"}}}},"404":{"description":"Airport was not found"}},"tags":["Airport"]}},"/api/v1/git-versions/{user}/{repo}/branches/{branch}":{"get":{"operationId":"GitVersionsController_getCommitOfBranch","parameters":[{"name":"user","required":true,"in":"path","description":"The owner of the repository","example":"flybywiresim","schema":{"type":"string"}},{"name":"repo","required":true,"in":"path","description":"The repository","example":"a32nx","schema":{"type":"string"}},{"name":"branch","required":true,"in":"path","description":"The target branch","example":"master","schema":{"type":"string"}}],"responses":{"200":{"description":"The newest commit on the branch","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommitInfo"}}}}},"tags":["Git Versions"]}},"/api/v1/git-versions/{user}/{repo}/releases":{"get":{"operationId":"GitVersionsController_getReleases","parameters":[{"name":"user","required":true,"in":"path","description":"The owner of the repository","example":"flybywiresim","schema":{"type":"string"}},{"name":"repo","required":true,"in":"path","description":"The repository","example":"a32nx","schema":{"type":"string"}},{"name":"includePreReleases","required":false,"in":"query","description":"Whether to include pre-releases in the list","schema":{"default":false,"enum":["true","false"],"type":"string"}},{"name":"skip","required":false,"in":"query","description":"The number of releases to skip","schema":{"minimum":0,"default":0},"isArray":false},{"name":"take","required":false,"in":"query","description":"The number of releases to take","schema":{"maximum":25,"minimum":0,"default":25},"isArray":false}],"responses":{"200":{"description":"The paginated releases","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ReleaseInfo"}}}}}},"tags":["Git Versions"]}},"/api/v1/git-versions/{user}/{repo}/pulls":{"get":{"operationId":"GitVersionsController_getPulls","parameters":[{"name":"user","required":true,"in":"path","description":"The owner of the repository","example":"flybywiresim","schema":{"type":"string"}},{"name":"repo","required":true,"in":"path","description":"The repository","example":"a32nx","schema":{"type":"string"}}],"responses":{"200":{"description":"The newest PRs of the repo","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PullInfo"}}}}}},"tags":["Git Versions"]}},"/api/v1/git-versions/{user}/{repo}/pulls/{pull}/artifact":{"get":{"operationId":"GitVersionsController_getArtifact","parameters":[{"name":"user","required":true,"in":"path","description":"The owner of the repository","example":"flybywiresim","schema":{"type":"string"}},{"name":"repo","required":true,"in":"path","description":"The repository","example":"a32nx","schema":{"type":"string"}},{"name":"pull","required":true,"in":"path","description":"The number of the PR","example":"3295","schema":{"type":"string"}}],"responses":{"200":{"description":"The artifact URL for this PR","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArtifactInfo"}}}}},"tags":["Git Versions"]}},"/api/v1/charts/{icao}":{"get":{"operationId":"ChartsController_getForICAO","parameters":[{"name":"icao","required":true,"in":"path","description":"The ICAO of the airport to search for","example":"KLAX","schema":{"type":"string"}}],"responses":{"200":{"description":"Charts were found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Charts"}}}},"404":{"description":"Charts not available for ICAO"}},"tags":["Charts"]}},"/api/v1/gnss":{"get":{"operationId":"GnssController_getGnssInfo","parameters":[],"responses":{"200":{"description":"Satellite data for the GNSS constellation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SatelliteInfo"}}}}}},"tags":["GNSS"]}}}}