openapi: 3.0.2 info: title: AeroAPI version: 4.25.0 description: | # Introduction AeroAPI is a simple, query-based API that gives software developers access to a variety of FlightAware's flight data. Users can obtain current or historical data. AeroAPI is a RESTful API delivering accurate and actionable aviation data. With the introduction of Foresight™, customers have access to the data that powers over half of the predictive airline ETAs in the US. ## Categories AeroAPI is divided into several categories to make things easier to discover. - Flights: Summary information, planned routes, positions and more - Foresight: Flight positions enhanced with FlightAware Foresight™ - Airports: Airport information and FIDS style resources - Operators: Operator information and fleet activity resources - Alerts: Configure flight alerts and delivery destinations - History: Historical flight access for various endpoints - Miscellaneous: Flight disruption, future schedule information, and aircraft owner information - Account: AeroAPI usage statistics ## Development Tools AeroAPI is defined using the OpenAPI Spec 3.0, which means it can be easily imported into tools like Postman. To get started try importing the API specification using [Postman's instructions](https://learning.postman.com/docs/integrations/available-integrations/working-with-openAPI/). Once imported as a collection only the "Value" field under the collection's Authorization tab needs to be populated and saved before making calls. The AeroAPI OpenAPI specification is located at:\ https://static.flightaware.com/rsrc/aeroapi/aeroapi-openapi.yml Our [open source AeroApps project](/aeroapi/portal/resources) provides a small collection of services and sample applications to help you get started. The Flight Information Display System (FIDS) AeroApp is an example of a multi-tier application using multiple languages and Docker containers. It demonstrates connectivity, data caching, flight presentation, and leveraging flight maps. The Alerts AeroApp demonstrates the use of AeroAPI to set, edit, and receive alerts in a sample application with a Dockerized Python backend and a React frontend. Our AeroAPI push notification [testing interface](/commercial/aeroapi/send.rvt) provides a quick and easy way to test the delivery of customized alerts via AeroAPI push. tags: - name: flights - name: foresight description: | Foresight endpoints provide access to FlightAware's Foresight predictive models and predictions for key events. Our advanced machine learning (ML) models identify key influencing factors for a flight to forecast future events in real-time, providing unprecedented insight to improve operational efficiencies and facilitate better decision-making in the air and on the ground. To learn more about the power of Foresight, visit https://www.flightaware.com/commercial/foresight/ These endpoints each mirror a non-Foresight equivalent endpoint of similar functionality, with the addition of all the ML 'predicted' values included in the Foresight response. The respective non-Foresight endpoint response includes a flag, 'foresight_predictions_available', which can optionally be used as a trigger to obtain and leverage Foresight predictions on an as-needed basis and manage cost. Foresight is only available to Premium tier customers. Contact integrationsales@flightaware.com for more information, pricing details, and to have your account enabled for Foresight. - name: airports - name: operators - name: alerts description: | AeroAPI alerting can be used to configure and receive real-time alerts on key flight events. With customizable alerting offered by our alert endpoints, AeroAPI empowers users to selectively pick various types of events/filters to alert on. By doing so, you can receive specially tailored alerts delivered to you for events such as flight plan filed, flight departure (out and off), flight arrival (on and in), and more! To get started with alerting, the **PUT /alerts/endpoint** endpoint must first be used to set up the account-wide default URL that alerts will be delivered to. This step must be done before any alerts can be configured and will serve as the fallback URL that all alerts will be sent to for the account if a specific delivery URL is not designated on a particular alert. If this is not performed before configuring alerts, then you will receive a 400 error with an error message reminding you of this step when trying to interact with the **POST /alerts** endpoint. Once a URL is set via the **PUT /alerts/endpoint** endpoint, then alerts can be configured using the **POST /alerts** endpoint. The **GET /alerts** endpoint can also be used to retrieve all currently configured alerts associated with your AeroAPI key. The **GET /alerts** endpoint will allow you to easily retrieve the id of any specific alerts of interest configured for the account which can let you use the **GET** **PUT** and **DELETE** **/alerts/{id}** endpoints to retrieve, update, and delete specific alerts. When configuring an individual alert, the *target_url* field can be set to a URL that’s different than the account-wide target endpoint set via the **PUT /alerts/endpoint**. If the *target_url* field is set on an alert, then that specific alert will be delivered to the specified *target_url* rather than the default account-wide one. If this field is not configured for the alert, then the alert will be delivered to the default account-wide endpoint. By setting this field, one can easily target different alerts to be received by different endpoints which can be useful for configuring per-application alerts or sending alerts to an alternate development environment without having to adjust a production alert configuration. For each alert configured, one-to-many ‘events’ can be set for alert delivery. While most events will result in one alert delivery, both the *arrival* and the *departure* events can result in multiple alerts delivered (referred to as bundled). The *departure* event bundles the departure (actual OFF the ground) alert, along with the flight plan filed alert and up to 5 per-departure changes which can include alerts for significant departure delays of over 30 minutes, gate changes, and airport delays. FlightAware Global customers will also receive *Power on* and *Ready to taxi* alerts as part of the departure bundle. The *arrival* event bundles the arrival (actual ON the ground) alert, along with up to 5 en-route changes (including delays of over 30 minutes and excluding diversions) identified. FlightAware Global customers will also receive *taxi stop* times as part of the *arrival* bundle. Setting a bundled type and unbundled type for an On/Off will only result in a single alert in the case where events may overlap. If there is a need to change the alert configurations, updating an alert using the **PUT /alerts/{id}** endpoint and a unique alert identifier (id) is preferred rather than creating an additional alert. By doing so, you can avoid duplicate alerts being delivered which could create unnecessary noise if they are not of interest anymore. Creating duplicate alerts with the exact same configuration more than 50 times will result in a 400 error. If at any point there is a need to delete an alert, the **DELETE alerts/{id}** endpoint can be leveraged to delete an alert so that it won’t be delivered anymore. As a reminder, specific alert IDs can be retrieved from the **GET /alerts** endpoint. - name: history - name: miscellaneous - name: account servers: - url: 'https://{env}.flightaware.com/aeroapi' variables: env: default: aeroapi enum: - aeroapi components: securitySchemes: ApiKeyAuth: type: apiKey in: header name: x-apikey description: | Unlike previous versions of AeroAPI, authentication is now controlled by an API key that must be set in the header ```x-apikey```. Your FlightAware username is not used when authenticating to the API. security: - ApiKeyAuth: [] paths: /flights/search: get: operationId: get_flights_by_search summary: Search for flights description: | Search for airborne flights by matching against various parameters including geospatial data. Uses a simplified query syntax compared to /flights/search/advanced. tags: - flights parameters: - name: query in: query description: | Query to search for flights with a simplified syntax (compared to /flights/search/advanced). It should not exceed 1000 bytes in length. Query syntax allows filtering by latitude/longitude box, aircraft ident with wildcards, type with wildcards, prefix, origin airport, destination airport, origin or destination airport, groundspeed, and altitude. It takes search terms in a single string comprising "-key value" pairs. Codeshares and alternate idents are NOT searched when using the -idents clause. Keys include: * `-prefix STRING` * `-type STRING` * `-idents STRING` * `-identOrReg STRING` * `-airline STRING` * `-destination STRING` * `-origin STRING` * `-originOrDestination STRING` * `-aboveAltitude INTEGER` * `-belowAltitude INTEGER` * `-aboveGroundspeed INTEGER` * `-belowGroundspeed INTEGER` * `-latlong "MINLAT MINLON MAXLAT MAXLON"` * `-filter {ga|airline}` schema: type: string example: | -latlong "44.953469 -111.045360 40.962321 -104.046577" - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 flights: type: array items: allOf: - title: InFlightStatus type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. This field is not populated by the `/flights/search`, `flights/{id}/position` and `/foresight/flights/{id}/position` endpoints. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url waypoints: type: array items: type: number description: | Route waypoints as an array of alternating latitudes and longitudes. first_position_time: type: string nullable: true format: date-time description: Timestamp of when the first position for this flight was received. example: '2021-12-31T19:59:59Z' last_position: type: object description: Most recent position received for this flight. title: FlightPosition nullable: true properties: fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware to the flight with this position. This field is only populated by the `/flights/search/positions` (in other cases, the user will have already specified the fa_flight_id). altitude: type: integer description: Aircraft altitude in hundreds of feet altitude_change: type: string nullable: false description: | C when the aircraft is climbing, D when descending, and - when the altitude is being maintained. enum: - C - D - '-' groundspeed: type: integer description: Most recent groundspeed (knots) heading: type: integer nullable: true description: Aircraft heading in degrees (0-360) minimum: 0 maximum: 360 latitude: type: number description: Most recent latitude position longitude: type: number description: Most recent longitude position timestamp: type: string format: date-time description: Time that position was received example: '2021-12-31T19:59:59Z' update_type: type: string nullable: true description: | P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based enum: - P - O - Z - A - M - D - X - S - null required: - fa_flight_id - altitude - altitude_change - groundspeed - heading - latitude - longitude - timestamp - update_type bounding_box: type: array nullable: true description: | List of 4 coordinates representing the edges of a box that entirely contains this flight's positions. The order of the coordinates are the top, left, bottom, and right sides of the box. maxItems: 4 minItems: 4 items: type: number ident_prefix: type: string nullable: true description: | A one or two character identifier prefix code (Common values: G or GG Medevac, L Lifeguard, A Air Taxi, H Heavy, M Medium). aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - actual_off - actual_on - origin - destination - waypoints - first_position_time - last_position - bounding_box - ident_prefix - aircraft_type - title: ForesightPredictionsAvailable type: object properties: foresight_predictions_available: type: boolean description: Indicates if Foresight predictions are available for AeroAPI /foresight endpoints. example: true required: - foresight_predictions_available - title: ForesightLegacyDummy type: object properties: predicted_out: type: string format: date-time nullable: true description: Predicted time of gate departure event. Only available from /foresight endpoints. example: null predicted_off: type: string format: date-time nullable: true description: Predicted time of runway departure event. Only available from /foresight endpoints. example: null predicted_on: type: string format: date-time nullable: true description: Predicted time of runway arrival event. Only available from /foresight endpoints. example: null predicted_in: type: string format: date-time nullable: true description: Predicted time of gate arrival event. Only available from /foresight endpoints. example: null predicted_out_source: type: string nullable: true description: Source indicator of the predicted time of the gate departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average predicted_off_source: type: string nullable: true description: Source indicator of the predicted time of the runway departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average predicted_on_source: type: string nullable: true description: Source indicator of the predicted time of the runway arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average predicted_in_source: type: string nullable: true description: Source indicator of the predicted time of the gate arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average required: - predicted_out - predicted_off - predicted_on - predicted_in - predicted_out_source - predicted_off_source - predicted_on_source - predicted_in_source required: - links - num_pages - flights '400': description: | Incorrect parameter(s). Query may be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status /flights/search/positions: get: operationId: get_flights_by_position_search summary: Search for flight positions description: | Returns flight positions based on geospatial search parameters. This allows you to locate flights that have ever flown within a specific a latitude/longitude box, groundspeed, and altitude. It takes search terms in a single string comprising of {operator key value} elements and returns an array of flight structures. Each search term must be enclosed in curly braces. Multiple search terms can be combined in an implicit boolean "and" by separating the terms with at least one space. This function only searches flight data representing approximately the last 24 hours. The supported operators include (note that operators take different numbers of arguments): * false - results must have the specified boolean key set to a value of false. Example: {false preferred} * true - results must have the specified boolean key set to a value of true. Example: {true preferred} * null - results must have the specified key set to a null value. Example: {null waypoints} * notnull - results must have the specified key not set to a null value. Example: {notnull aircraftType} * = - results must have a key that exactly matches the specified value. Example: {= fp C172} * != - results must have a key that must not match the specified value. Example: {!= prefix H} * < - results must have a key that is lexicographically less-than a specified value. Example: {< arrivalTime 1276811040} * \> - results must have a key that is lexicographically greater-than a specified value. Example: {> speed 500} * <= - results must have a key that is lexicographically less-than-or-equal-to a specified value. Example: {<= alt 8000} * \>= - results must have a key that is lexicographically greater-than-or-equal-to a specified value. * match - results must have a key that matches against a case-insensitive wildcard pattern. Example: {match ident AAL*} * notmatch - results must have a key that does not match against a case-insensitive wildcard pattern. Example: {notmatch aircraftType B76*} * range - results must have a key that is numerically between the two specified values. Example: {range alt 8000 20000} * in - results must have a key that exactly matches one of the specified values. Example: {in orig {KLAX KBUR KSNA KLGB}} The supported key names include (note that not all of these key names are returned in the result structure, and some have slightly different names): * alt - Altitude, measured in hundreds of feet or Flight Level. * altChange - a one-character code indicating the change in altitude. * cid - a three-character cid code * clock - UNIX epoch timestamp seconds since 1970 * fp - unique identifier assigned by FlightAware for this flight, aka fa_flight_id. * gs - ground speed, measured in kts. * lat - latitude of the reported position. * lon - longitude of the reported position * updateType - source of the last reported position (P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based) tags: - flights parameters: - name: query in: query description: | Query to search for flight positions. It should not exceed 1000 bytes in length. Search criteria is applied against all positions of a flight. This function only searches flights within approximately the last 24 hours. The supported operators include (note that operators take different numbers of arguments): * false - results must have the specified boolean key set to a value of false. Example: {false preferred} * true - results must have the specified boolean key set to a value of true. Example: {true preferred} * null - results must have the specified key set to a null value. Example: {null waypoints} * notnull - results must have the specified key not set to a null value. Example: {notnull aircraftType} * = - results must have a key that exactly matches the specified value. Example: {= fp C172} * != - results must have a key that must not match the specified value. Example: {!= prefix H} * < - results must have a key that is lexicographically less-than a specified value. Example: {< arrivalTime 1276811040} * \> - results must have a key that is lexicographically greater-than a specified value. Example: {> speed 500} * <= - results must have a key that is lexicographically less-than-or-equal-to a specified value. Example: {<= alt 8000} * \>= - results must have a key that is lexicographically greater-than-or-equal-to a specified value. * match - results must have a key that matches against a case-insensitive wildcard pattern. Example: {match ident AAL*} * notmatch - results must have a key that does not match against a case-insensitive wildcard pattern. Example: {notmatch aircraftType B76*} * range - results must have a key that is numerically between the two specified values. Example: {range alt 8000 20000} * in - results must have a key that exactly matches one of the specified values. Example: {in orig {KLAX KBUR KSNA KLGB}} The supported key names include (note that not all of these key names are returned in the result structure, and some have slightly different names): * alt - Altitude, measured in hundreds of feet or Flight Level. * altChange - a one-character code indicating the change in altitude. * altMax - Altitude, measured in hundreds of feet or Flight Level. * cid - a three-character cid code * cidfac - a four-character cidfac code * clock - UNIX epoch timestamp seconds since 1970 * fp - unique identifier assigned by FlightAware for this flight, aka fa_flight_id. * gs - ground speed, measured in kts. * lat - latitude of the reported position. * lon - longitude of the reported position * preferred - boolean indicator of position quality * recvd - UNIX epoch timestamp seconds since 1970 * updateType - source of the last reported position (P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based) schema: type: string example: | {< alt 500} {range gs 10 100} - name: unique_flights in: query description: Whether to return only a single position per unique fa_flight_id. schema: type: boolean default: false - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 positions: type: array items: title: FlightPosition type: object nullable: true properties: fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware to the flight with this position. This field is only populated by the `/flights/search/positions` (in other cases, the user will have already specified the fa_flight_id). altitude: type: integer description: Aircraft altitude in hundreds of feet altitude_change: type: string nullable: false description: | C when the aircraft is climbing, D when descending, and - when the altitude is being maintained. enum: - C - D - '-' groundspeed: type: integer description: Most recent groundspeed (knots) heading: type: integer nullable: true description: Aircraft heading in degrees (0-360) minimum: 0 maximum: 360 latitude: type: number description: Most recent latitude position longitude: type: number description: Most recent longitude position timestamp: type: string format: date-time description: Time that position was received example: '2021-12-31T19:59:59Z' update_type: type: string nullable: true description: | P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based enum: - P - O - Z - A - M - D - X - S - null required: - fa_flight_id - altitude - altitude_change - groundspeed - heading - latitude - longitude - timestamp - update_type required: - links - num_pages - positions '400': description: | Incorrect parameter(s). Expected: pages > 0. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status /flights/search/count: get: operationId: get_flights_count_by_search summary: Get count of flights matching search parameters description: | Full search query documentation is available at the /flights/search endpoint. tags: - flights parameters: - name: query in: query description: | Query to search for flights with a simplified syntax (compared to /flights/search/advanced). It should not exceed 1000 bytes in length. Query syntax allows filtering by latitude/longitude box, aircraft ident with wildcards, type with wildcards, prefix, origin airport, destination airport, origin or destination airport, groundspeed, and altitude. It takes search terms in a single string comprising "-key value" pairs. Codeshares and alternate idents are NOT searched when using the -idents clause. Keys include: * `-prefix STRING` * `-type STRING` * `-idents STRING` * `-identOrReg STRING` * `-airline STRING` * `-destination STRING` * `-origin STRING` * `-originOrDestination STRING` * `-aboveAltitude INTEGER` * `-belowAltitude INTEGER` * `-aboveGroundspeed INTEGER` * `-belowGroundspeed INTEGER` * `-latlong "MINLAT MINLON MAXLAT MAXLON"` schema: type: string example: | -latlong "44.953469 -111.045360 40.962321 -104.046577" responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: count: type: integer required: - count /flights/search/advanced: get: operationId: get_flights_by_advanced_search summary: Search for flights using advanced syntax description: | Returns currently or recently airborne flights based on geospatial search parameters. Query parameters include a latitude/longitude box, aircraft ident with wildcards, type with wildcards, prefix, origin airport, destination airport, origin or destination airport, groundspeed, and altitude. It takes search terms in a single string comprising of {operator key value} elements and returns an array of flight structures. Each search term must be enclosed in curly braces. Multiple search terms can be combined in an implicit boolean "and" by separating the terms with at least one space. This function only searches flight data representing approximately the last 24 hours. Codeshares and alternate idents are NOT searched when matching against the ident key. The supported operators include (note that operators take different numbers of arguments): * false - results must have the specified boolean key set to a value of false. Example: {false arrived} * true - results must have the specified boolean key set to a value of true. Example: {true lifeguard} * null - results must have the specified key set to a null value. Example: {null waypoints} * notnull - results must have the specified key not set to a null value. Example: {notnull aircraftType} * = - results must have a key that exactly matches the specified value. Example: {= aircraftType C172} * != - results must have a key that must not match the specified value. Example: {!= prefix H} * < - results must have a key that is lexicographically less-than a specified value. Example: {< arrivalTime 1276811040} * \> - results must have a key that is lexicographically greater-than a specified value. Example: {> speed 500} * <= - results must have a key that is lexicographically less-than-or-equal-to a specified value. Example: {<= alt 8000} * \>= - results must have a key that is lexicographically greater-than-or-equal-to a specified value. * match - results must have a key that matches against a case-insensitive wildcard pattern. Example: {match ident AAL*} * notmatch - results must have a key that does not match against a case-insensitive wildcard pattern. Example: {notmatch aircraftType B76*} * range - results must have a key that is numerically between the two specified values. Example: {range alt 8000 20000} * in - results must have a key that exactly matches one of the specified values. Example: {in orig {KLAX KBUR KSNA KLGB}} * orig_or_dest - results must have either the origin or destination key exactly match one of the specified values. Example: {orig_or_dest {KLAX KBUR KSNA KLGB}} * airline - results will only include airline flight if the argument is 1, or will only include GA flights if the argument is 0. Example: {airline 1} * aircraftType - results must have an aircraftType key that matches one of the specified case-insensitive wildcard patterns. Example: {aircraftType {B76* B77*}} * ident - results must have an ident key that matches one of the specified case-insensitive wildcard patterns. Example: {ident {N123* N456* AAL* UAL*}} * ident_or_reg - results must have an ident key or was known to be operated by an aircraft registration that matches one of the specified case-insensitive wildcard patterns. Example: {ident_or_reg {N123* N456* AAL* UAL*}} The supported key names include (note that not all of these key names are returned in the result structure, and some have slightly different names): * actualDepartureTime - Actual time of departure, or null if not departed yet. UNIX epoch timestamp seconds since 1970 * aircraftType - aircraft type ID (for example: B763) * alt - altitude at last reported position (hundreds of feet or Flight Level) * altChange - altitude change indication (for example: "C" if climbing, "D" if descending, and empty if it is level) * arrivalTime - Actual time of arrival, or null if not arrived yet. UNIX epoch timestamp seconds since 1970 * arrived - true if the flight has arrived at its destination. * cancelled - true if the flight has been cancelled. The meaning of cancellation is that the flight is no longer being tracked by FlightAware. There are a number of reasons a flight may be cancelled including cancellation by the airline, but that will not always be the case. * cdt - Controlled Departure Time, set if there is a ground hold on the flight. UNIX epoch timestamp seconds since 1970 * clock - Time of last received position. UNIX epoch timestamp seconds since 1970 * cta - Controlled Time of Arrival, set if there is a ground hold on the flight. UNIX epoch timestamp seconds since 1970 * dest - ICAO airport code of destination (for example: KLAX) * edt - Estimated Departure Time. Epoch timestamp seconds since 1970 * eta - Estimated Time of Arrival. Epoch timestamp seconds since 1970 * fdt - Field Departure Time. UNIX epoch timestamp seconds since 1970 * firstPositionTime - Time when first reported position was received, or 0 if no position has been received yet. Epoch timestamp seconds since 1970 * fixes - intersections and/or VORs along the route (for example: SLS AMERO ARTOM VODIR NOTOS ULAPA ACA NUXCO OLULA PERAS ALIPO UPN GDL KEDMA BRISA CUL PERTI CEN PPE ALTAR ASUTA JLI RONLD LAADY WYVIL OLDEE RAL PDZ ARNES BASET WELLZ CIVET) * fp - unique identifier assigned by FlightAware for this flight, aka fa_flight_id. * gs - ground speed at last reported position, in kts. * heading - direction of travel at last reported position. * hiLat - highest latitude travelled by flight. * hiLon - highest longitude travelled by flight. * ident - flight identifier or registration of aircraft. * lastPositionTime - Time when last reported position was received, or 0 if no position has been received yet. Epoch timestamp seconds since 1970. * lat - latitude of last reported position. * lifeguard - true if a "lifeguard" rescue flight. * lon - longitude of last reported position. * lowLat - lowest latitude travelled by flight. * lowLon - lowest longitude travelled by flight. * ogta - Original Time of Arrival. UNIX epoch timestamp seconds since 1970 * ogtd - Original Time of Departure. UNIX epoch timestamp seconds since 1970 * orig - ICAO airport code of origin (for example: KIAH) * physClass - physical class (for example: J is jet) * prefix - A one or two character identifier prefix code (common values: G or GG Medevac, L Lifeguard, A Air Taxi, H Heavy, M Medium). * speed - ground speed, in kts. * status - Single letter code for current flight status, can be S Scheduled, F Filed, A Active, Z Completed, or X Cancelled. * updateType - data source of last position (P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based). * waypoints - all of the intersections and VORs comprising the route tags: - flights parameters: - name: query in: query description: | Query to search for airborne or recently arrived flights. It should not exceed 1000 bytes in length. Search criteria is only applied to the most recent position for a flight. This function only searches flights within approximately the last 24 hours. The supported operators include (note that operators take different numbers of arguments): * false - results must have the specified boolean key set to a value of false. Example: {false arrived} * true - results must have the specified boolean key set to a value of true. Example: {true lifeguard} * null - results must have the specified key set to a null value. Example: {null waypoints} * notnull - results must have the specified key not set to a null value. Example: {notnull aircraftType} * = - results must have a key that exactly matches the specified value. Example: {= aircraftType C172} * != - results must have a key that must not match the specified value. Example: {!= prefix H} * < - results must have a key that is lexicographically less-than a specified value. Example: {< arrivalTime 1276811040} * \> - results must have a key that is lexicographically greater-than a specified value. Example: {> speed 500} * <= - results must have a key that is lexicographically less-than-or-equal-to a specified value. Example: {<= alt 8000} * \>= - results must have a key that is lexicographically greater-than-or-equal-to a specified value. * match - results must have a key that matches against a case-insensitive wildcard pattern. Example: {match ident AAL*} * notmatch - results must have a key that does not match against a case-insensitive wildcard pattern. Example: {notmatch aircraftType B76*} * range - results must have a key that is numerically between the two specified values. Example: {range alt 8000 20000} * in - results must have a key that exactly matches one of the specified values. Example: {in orig {KLAX KBUR KSNA KLGB}} * orig_or_dest - results must have either the origin or destination key exactly match one of the specified values. Example: {orig_or_dest {KLAX KBUR KSNA KLGB}} * airline - results will only include airline flight if the argument is 1, or will only include GA flights if the argument is 0. Example: {airline 1} * aircraftType - results must have an aircraftType key that matches one of the specified case-insensitive wildcard patterns. Example: {aircraftType {B76* B77*}} * ident - results must have an ident key that matches one of the specified case-insensitive wildcard patterns. Example: {ident {N123* N456* AAL* UAL*}} * ident_or_reg - results must have an ident key or was known to be operated by an aircraft registration that matches one of the specified case-insensitive wildcard patterns. Example: {ident_or_reg {N123* N456* AAL* UAL*}} The supported key names include (note that not all of these key names are returned in the result structure, and some have slightly different names): * actualDepartureTime - Actual time of departure, or null if not departed yet. UNIX epoch timestamp seconds since 1970 * aircraftType - aircraft type ID (for example: B763) * alt - altitude at last reported position (hundreds of feet or Flight Level) * altChange - altitude change indication (for example: "C" if climbing, "D" if descending, and empty if it is level) * arrivalTime - Actual time of arrival, or null if not arrived yet. UNIX epoch timestamp seconds since 1970 * arrived - true if the flight has arrived at its destination. * cancelled - true if the flight has been cancelled. The meaning of cancellation is that the flight is no longer being tracked by FlightAware. There are a number of reasons a flight may be cancelled including cancellation by the airline, but that will not always be the case. * cdt - Controlled Departure Time, set if there is a ground hold on the flight. UNIX epoch timestamp seconds since 1970 * clock - Time of last received position. UNIX epoch timestamp seconds since 1970 * cta - Controlled Time of Arrival, set if there is a ground hold on the flight. UNIX epoch timestamp seconds since 1970 * dest - ICAO airport code of destination (for example: KLAX) * edt - Estimated Departure Time. Epoch timestamp seconds since 1970 * eta - Estimated Time of Arrival. Epoch timestamp seconds since 1970 * fdt - Field Departure Time. UNIX epoch timestamp seconds since 1970 * firstPositionTime - Time when first reported position was received, or 0 if no position has been received yet. Epoch timestamp seconds since 1970 * fixes - intersections and/or VORs along the route (for example: SLS AMERO ARTOM VODIR NOTOS ULAPA ACA NUXCO OLULA PERAS ALIPO UPN GDL KEDMA BRISA CUL PERTI CEN PPE ALTAR ASUTA JLI RONLD LAADY WYVIL OLDEE RAL PDZ ARNES BASET WELLZ CIVET) * fp - unique identifier assigned by FlightAware for this flight, aka fa_flight_id. * gs - ground speed at last reported position, in kts. * heading - direction of travel at last reported position. * hiLat - highest latitude travelled by flight. * hiLon - highest longitude travelled by flight. * ident - flight identifier or registration of aircraft. * lastPositionTime - Time when last reported position was received, or 0 if no position has been received yet. Epoch timestamp seconds since 1970. * lat - latitude of last reported position. * lifeguard - true if a "lifeguard" rescue flight. * lon - longitude of last reported position. * lowLat - lowest latitude travelled by flight. * lowLon - lowest longitude travelled by flight. * ogta - Original Time of Arrival. UNIX epoch timestamp seconds since 1970 * ogtd - Original Time of Departure. UNIX epoch timestamp seconds since 1970 * orig - ICAO airport code of origin (for example: KIAH) * physClass - physical class (for example: J is jet) * prefix - A one or two character identifier prefix code (common values: G or GG Medevac, L Lifeguard, A Air Taxi, H Heavy, M Medium). * speed - ground speed, in kts. * status - Single letter code for current flight status, can be S Scheduled, F Filed, A Active, Z Completed, or X Cancelled. * updateType - data source of last position (P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based). * waypoints - all of the intersections and VORs comprising the route schema: type: string example: | {orig_or_dest {KLAX KBUR KSNA KLGB}} {<= alt 8000} {match ident AAL*} - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 flights: type: array items: allOf: - title: InFlightStatus type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. This field is not populated by the `/flights/search`, `flights/{id}/position` and `/foresight/flights/{id}/position` endpoints. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url waypoints: type: array items: type: number description: | Route waypoints as an array of alternating latitudes and longitudes. first_position_time: type: string nullable: true format: date-time description: Timestamp of when the first position for this flight was received. example: '2021-12-31T19:59:59Z' last_position: type: object description: Most recent position received for this flight. title: FlightPosition nullable: true properties: fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware to the flight with this position. This field is only populated by the `/flights/search/positions` (in other cases, the user will have already specified the fa_flight_id). altitude: type: integer description: Aircraft altitude in hundreds of feet altitude_change: type: string nullable: false description: | C when the aircraft is climbing, D when descending, and - when the altitude is being maintained. enum: - C - D - '-' groundspeed: type: integer description: Most recent groundspeed (knots) heading: type: integer nullable: true description: Aircraft heading in degrees (0-360) minimum: 0 maximum: 360 latitude: type: number description: Most recent latitude position longitude: type: number description: Most recent longitude position timestamp: type: string format: date-time description: Time that position was received example: '2021-12-31T19:59:59Z' update_type: type: string nullable: true description: | P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based enum: - P - O - Z - A - M - D - X - S - null required: - fa_flight_id - altitude - altitude_change - groundspeed - heading - latitude - longitude - timestamp - update_type bounding_box: type: array nullable: true description: | List of 4 coordinates representing the edges of a box that entirely contains this flight's positions. The order of the coordinates are the top, left, bottom, and right sides of the box. maxItems: 4 minItems: 4 items: type: number ident_prefix: type: string nullable: true description: | A one or two character identifier prefix code (Common values: G or GG Medevac, L Lifeguard, A Air Taxi, H Heavy, M Medium). aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - actual_off - actual_on - origin - destination - waypoints - first_position_time - last_position - bounding_box - ident_prefix - aircraft_type - title: ForesightPredictionsAvailable type: object properties: foresight_predictions_available: type: boolean description: Indicates if Foresight predictions are available for AeroAPI /foresight endpoints. example: true required: - foresight_predictions_available - title: ForesightLegacyDummy type: object properties: predicted_out: type: string format: date-time nullable: true description: Predicted time of gate departure event. Only available from /foresight endpoints. example: null predicted_off: type: string format: date-time nullable: true description: Predicted time of runway departure event. Only available from /foresight endpoints. example: null predicted_on: type: string format: date-time nullable: true description: Predicted time of runway arrival event. Only available from /foresight endpoints. example: null predicted_in: type: string format: date-time nullable: true description: Predicted time of gate arrival event. Only available from /foresight endpoints. example: null predicted_out_source: type: string nullable: true description: Source indicator of the predicted time of the gate departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average predicted_off_source: type: string nullable: true description: Source indicator of the predicted time of the runway departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average predicted_on_source: type: string nullable: true description: Source indicator of the predicted time of the runway arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average predicted_in_source: type: string nullable: true description: Source indicator of the predicted time of the gate arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average required: - predicted_out - predicted_off - predicted_on - predicted_in - predicted_out_source - predicted_off_source - predicted_on_source - predicted_in_source required: - links - num_pages - flights '400': description: | Incorrect parameter(s). Id may be missing or may not be fa_flight_id format. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/flights/{ident}': get: operationId: get_flight summary: Get information for a flight description: | Returns the flight info status summary for a registration, ident, or fa_flight_id. If a fa_flight_id is specified then a maximum of 1 flight is returned, unless the flight has been diverted in which case both the original flight and any diversions will be returned with a duplicate fa_flight_id. If a registration or ident is specified, approximately 14 days of recent and scheduled flight information is returned, ordered by `scheduled_out` (or `scheduled_off` if `scheduled_out` is missing) descending. Alternately, specify a start and end parameter to find your flight(s) of interest, including up to 10 days of flight history. tags: - flights parameters: - name: ident in: path description: | The ident, registration, or fa_flight_id to fetch. If using a flight ident, it is highly recommended to specify ICAO flight ident rather than IATA flight ident to avoid ambiguity and unexpected results. Setting the ident_type can also be used to help disambiguate. required: true schema: type: string examples: ident: value: UAL4 reg: value: N123HQ fa_id: value: UAL1234-1234567890-airline-0123 - name: ident_type in: query description: | Type of ident provided in the ident parameter. By default, the passed ident is interpreted as a registration if possible. This parameter can force the ident to be interpreted as a designator instead. schema: type: string enum: - designator - registration - fa_flight_id - name: start in: query description: | The starting date range for flight results, comparing against flights' `scheduled_out` field (or `scheduled_off` if `scheduled_out` is missing). The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If not specified, will default to departures starting approximately 11 days in the past. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results, comparing against flights' `scheduled_out` field (or `scheduled_off` if `scheduled_out` is missing). The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If not specified, will default to departures starting approximately 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 flights: type: array items: allOf: - title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in - title: ForesightPredictionsAvailable type: object properties: foresight_predictions_available: type: boolean description: Indicates if Foresight predictions are available for AeroAPI /foresight endpoints. example: true required: - foresight_predictions_available required: - links - num_pages - flights '400': description: | Incorrect parameter(s). Ident may be missing or not in fa_flight_id format or pages may be < 1. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/flights/{ident}/canonical': get: operationId: get_flights_canonical summary: Get the canonical ident of a flight description: | When the ident parameter is a code that could map to multiple other codes, this endpoint returns an array of information about all the possible codes. An optional ident type and country code can be provided to refine ambiguous idents to a single result. The ident type should either be designator or registration to describe the ident being passed in. The country code should represent a country the operator of the flight operates within. tags: - flights parameters: - name: ident in: path description: The flight designator or aircraft registration required: true schema: type: string examples: ident: value: B6109 - name: ident_type in: query description: Type of ident provided in the ident parameter schema: type: string enum: - designator - registration - name: country_code in: query description: An ISO 3166-1 alpha-2 country code. schema: type: string example: US responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: idents: type: array items: title: CanonicalIdent type: object properties: ident: type: string description: | Canonical ident ident_type: type: string description: | Type of ident given in id enum: - designator - registration required: - ident - ident_type required: - idents '400': description: | Incorrect parameter(s). ident, ident_type, or country_code may be invalid. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/flights/{ident}/intents': post: operationId: post_flights_by_ident summary: Submit a Flight Intent description: | This operation informs FlightAware of an upcoming (or recently departed) flight. This information is used solely by FlightAware for improving the accuracy of flight tracking. This method does not transmit to any ANSP/ATC facility for flight separation or operational services. Access to this endpoint requires special account authorization. The FlightAware account must also be subscribed to FlightAware Global and the specified registration or ident must be on the Global account. tags: - flights parameters: - name: ident in: path description: The ident or registration of the Flight Intent required: true schema: type: string examples: ident: value: RPA4854 reg: value: N123HQ requestBody: description: Flight Intent content: application/json; charset=UTF-8: schema: title: FlightIntent type: object properties: aircraft_type: type: string description: Aircraft type ICAO code. example: C162 origin: type: string description: Origin airport ICAO code or LID. example: KSGR destination: type: string description: Destination airport ICAO code or LID. example: 50R intended_off: type: string format: date-time description: | Intended runway departure time of flight. This must be within 2 hours of the actual departure time or the flight intent will be ignored. Time may not be more than 1 hour in the past or 48 hours in the future. example: '2021-10-16T21:30:00Z' intended_on: type: string format: date-time description: Intended runway arrival time of flight. example: '2021-10-16T22:50:00Z' altitude: type: integer description: Cruising altitude (feet). example: 3500 airspeed: type: integer description: Cruising airspeed (knots). example: 86 route: type: string description: Flight route as a series of space-separate waypoints. example: MAPGP VICUC required: - aircraft_type - origin - destination - intended_off - intended_on responses: '200': description: OK '400': description: | Incorrect parameter(s). Ident may be missing or pages may be < 1. Body may be incomplete. User may lack permissions to post flight intent for this ident. Arrival/departure times, duration, or aircraft type may be invalid. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/flights/{id}/position': get: operationId: get_flight_position summary: Get flight's current position description: Returns the latest position for a flight tags: - flights parameters: - name: id in: path description: | The fa_flight_id to fetch. If looking for data from more than 10 days ago, please use the corresponding historical endpoint. required: true schema: type: string examples: fa_id: value: UAL1234-1234567890-airline-0123 responses: '200': description: OK content: application/json; charset=UTF-8: schema: allOf: - title: InFlightStatus type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. This field is not populated by the `/flights/search`, `flights/{id}/position` and `/foresight/flights/{id}/position` endpoints. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url waypoints: type: array items: type: number description: | Route waypoints as an array of alternating latitudes and longitudes. first_position_time: type: string nullable: true format: date-time description: Timestamp of when the first position for this flight was received. example: '2021-12-31T19:59:59Z' last_position: type: object description: Most recent position received for this flight. title: FlightPosition nullable: true properties: fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware to the flight with this position. This field is only populated by the `/flights/search/positions` (in other cases, the user will have already specified the fa_flight_id). altitude: type: integer description: Aircraft altitude in hundreds of feet altitude_change: type: string nullable: false description: | C when the aircraft is climbing, D when descending, and - when the altitude is being maintained. enum: - C - D - '-' groundspeed: type: integer description: Most recent groundspeed (knots) heading: type: integer nullable: true description: Aircraft heading in degrees (0-360) minimum: 0 maximum: 360 latitude: type: number description: Most recent latitude position longitude: type: number description: Most recent longitude position timestamp: type: string format: date-time description: Time that position was received example: '2021-12-31T19:59:59Z' update_type: type: string nullable: true description: | P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based enum: - P - O - Z - A - M - D - X - S - null required: - fa_flight_id - altitude - altitude_change - groundspeed - heading - latitude - longitude - timestamp - update_type bounding_box: type: array nullable: true description: | List of 4 coordinates representing the edges of a box that entirely contains this flight's positions. The order of the coordinates are the top, left, bottom, and right sides of the box. maxItems: 4 minItems: 4 items: type: number ident_prefix: type: string nullable: true description: | A one or two character identifier prefix code (Common values: G or GG Medevac, L Lifeguard, A Air Taxi, H Heavy, M Medium). aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - actual_off - actual_on - origin - destination - waypoints - first_position_time - last_position - bounding_box - ident_prefix - aircraft_type - title: ForesightPredictionsAvailable type: object properties: foresight_predictions_available: type: boolean description: Indicates if Foresight predictions are available for AeroAPI /foresight endpoints. example: true required: - foresight_predictions_available - title: ForesightLegacyDummy type: object properties: predicted_out: type: string format: date-time nullable: true description: Predicted time of gate departure event. Only available from /foresight endpoints. example: null predicted_off: type: string format: date-time nullable: true description: Predicted time of runway departure event. Only available from /foresight endpoints. example: null predicted_on: type: string format: date-time nullable: true description: Predicted time of runway arrival event. Only available from /foresight endpoints. example: null predicted_in: type: string format: date-time nullable: true description: Predicted time of gate arrival event. Only available from /foresight endpoints. example: null predicted_out_source: type: string nullable: true description: Source indicator of the predicted time of the gate departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average predicted_off_source: type: string nullable: true description: Source indicator of the predicted time of the runway departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average predicted_on_source: type: string nullable: true description: Source indicator of the predicted time of the runway arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average predicted_in_source: type: string nullable: true description: Source indicator of the predicted time of the gate arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average required: - predicted_out - predicted_off - predicted_on - predicted_in - predicted_out_source - predicted_off_source - predicted_on_source - predicted_in_source '400': description: | Incorrect parameter (id). Id may be missing or may not be fa_flight_id format. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/flights/{id}/track': get: operationId: get_flight_track summary: Get flight's track description: | Returns the track for a flight as an array of positions. By default only actual airborne positions will be included. Surface positions (aircraft taxi movement at supported airports) can be requested using the query-string parameters. Data from up to 10 days ago can be obtained. If looking for older data, please use the corresponding historical endpoint. tags: - flights parameters: - name: id in: path description: | The fa_flight_id to fetch. If looking for data from more than 10 days ago, please use the corresponding historical endpoint. required: true schema: type: string examples: fa_id: value: UAL1234-1234567890-airline-0123 - name: include_estimated_positions in: query description: | Whether to include estimated positions in the flight track. schema: type: boolean default: false - name: include_surface_positions in: query description: | Whether to include surface positions in the flight track and actual_distance computation. schema: type: boolean default: false responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: actual_distance: type: integer nullable: true description: | Distance (in miles) flown as of the latest position point. Will include distance from the origin airport to the first position point. If the flight has been completed, will include the distance from the last position point to the destination airport. If surface positions are enabled, will include distance traveled on the ground as part of the flight track and actual distance flown calculations. Estimated positions present in the flight track will not be part of the actual distance flown calculation. positions: type: array items: title: FlightPosition type: object nullable: true properties: fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware to the flight with this position. This field is only populated by the `/flights/search/positions` (in other cases, the user will have already specified the fa_flight_id). altitude: type: integer description: Aircraft altitude in hundreds of feet altitude_change: type: string nullable: false description: | C when the aircraft is climbing, D when descending, and - when the altitude is being maintained. enum: - C - D - '-' groundspeed: type: integer description: Most recent groundspeed (knots) heading: type: integer nullable: true description: Aircraft heading in degrees (0-360) minimum: 0 maximum: 360 latitude: type: number description: Most recent latitude position longitude: type: number description: Most recent longitude position timestamp: type: string format: date-time description: Time that position was received example: '2021-12-31T19:59:59Z' update_type: type: string nullable: true description: | P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based enum: - P - O - Z - A - M - D - X - S - null required: - fa_flight_id - altitude - altitude_change - groundspeed - heading - latitude - longitude - timestamp - update_type '400': description: | Incorrect parameter(s). Id may be missing or may not be fa_flight_id format. Aircraft may be blocked. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: | No track is available for this flight. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/flights/{id}/route': get: operationId: get_flight_route summary: Get flight's filed route description: | Returns information about a flight's filed route including coordinates, names, and types of fixes along the route. Not all flight routes can be successfully decoded by this endpoint, particularly if the flight is not entirely within the continental U.S. airspace, since this function only has access to navaids within that area. If data on a waypoint is missing then the type will be listed as "UNKNOWN". Data from up to 10 days ago can be obtained. If looking for older data, please use the corresponding historical endpoint. tags: - flights parameters: - name: id in: path description: | The fa_flight_id to fetch. If looking for data from more than 10 days ago, please use the corresponding historical endpoint. required: true schema: type: string examples: fa_id: value: UAL1234-1234567890-airline-0123 responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: route_distance: nullable: true type: string fixes: type: array items: title: RouteFix type: object properties: name: type: string description: Name of the route fix latitude: type: number nullable: true description: Longitude of the fix in decimal degrees longitude: type: number nullable: true description: Longitude of the fix in decimal degrees distance_from_origin: type: number nullable: true description: | Distance from origin airport stated in statue miles, nautical miles or kilometers depending on FlightAware Account Display Options distance_this_leg: type: number nullable: true description: | Distance from the last point on Route stated in statue miles, nautical miles or kilometers depending on FlightAware Account Display Options distance_to_destination: type: number nullable: true description: | Distance to destination airport stated in statue miles, nautical miles or kilometers depending on FlightAware Account Display Options outbound_course: type: number nullable: true description: | Course in integer degrees from the current point to the next relative to true north type: type: string description: Type of the fix (ie Waypoint / Reporting Point) required: - name - latitude - longitude - distance_from_origin - distance_this_leg - distance_to_destination - outbound_course - type required: - route_distance - fixes '400': description: | Incorrect parameter (id). Id may be missing or may not be fa_flight_id format. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: | No route is available for this flight. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/flights/{id}/map': get: operationId: get_flight_map summary: Get an image of a flight's track on a map description: | Returns a flight's track as a base64-encoded image. Image can contain a variety of additional data layers beyond just the track. Data from up to 10 days ago can be obtained. If looking for older data, please use the corresponding historical endpoint. tags: - flights parameters: - name: id in: path description: | The fa_flight_id to fetch. If looking for data from more than 10 days ago, please use the corresponding historical endpoint. required: true schema: type: string examples: fa_id: value: UAL1234-1234567890-airline-0123 - name: height in: query description: Height of requested image (pixels) schema: type: integer minimum: 1 maximum: 1500 default: 480 - name: width in: query description: Width of requested image (pixels) schema: type: integer minimum: 1 maximum: 1500 default: 640 - name: layer_on in: query description: List of map layers to enable schema: type: array items: type: string enum: - US Cities - european country boundaries - asia country boundaries - major airports - country boundaries - US state boundaries - water - US major roads - radar - track - flights - airports default: - country boundaries - US state boundaries - water - US major roads - radar - track - flights - airports - name: layer_off in: query description: List of map layers to disable schema: type: array items: type: string enum: - US Cities - european country boundaries - asia country boundaries - major airports - country boundaries - US state boundaries - water - US major roads - radar - track - flights - airports default: - US Cities - european country boundaries - asia country boundaries - major airports - name: show_data_block in: query description: | Whether a textual caption containing the ident, type, heading, altitude, origin, and destination should be displayed by the flight's position. schema: type: boolean default: false - name: airports_expand_view in: query description: | Whether to force zoom area to ensure origin/destination airports are visible. Enabling this flag forcefully enables the show_airports flag as well. schema: type: boolean default: false - name: show_airports in: query description: | Whether to show the origin/destination airports for the flight as labeled points on the map. schema: type: boolean default: false - name: bounding_box in: query description: | Manually specify the zoom area of the map using custom bounds. Should be a list of 4 coordinates representing the top, right, bottom, and left sides of the area (in that order). schema: type: array items: type: number minItems: 4 maxItems: 4 responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: map: type: string format: byte required: - map '400': description: | Incorrect parameter (id). Id may be missing or may not be fa_flight_id format. Bounding box corners may be incorrectly defined. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/foresight/flights/{ident}': get: operationId: get_flight_with_foresight summary: 'Get information for a flight, including Foresight data' description: | Returns the flight info status summary for a registration, ident, or fa_flight_id, including all available predicted fields. If a fa_flight_id is specified then a maximum of 1 flight is returned, unless the flight has been diverted in which case both the original flight and any diversions will be returned with a duplicate fa_flight_id. tags: - foresight parameters: - name: ident in: path description: | The ident, registration, or fa_flight_id to fetch. If using a flight ident, it is highly recommended to specify ICAO flight ident rather than IATA flight ident to avoid ambiguity and unexpected results. Setting the ident_type can also be used to help disambiguate. required: true schema: type: string examples: ident: value: UAL4 reg: value: N123HQ fa_id: value: UAL1234-1234567890-airline-0123 - name: ident_type in: query description: | Type of ident provided in the ident parameter. By default, the passed ident is interpreted as a registration if possible. This parameter can force the ident to be interpreted as a designator instead. schema: type: string enum: - designator - registration - fa_flight_id - name: start in: query description: | The starting date range for flight results, comparing against flights' `scheduled_out` field (or `scheduled_off` if `scheduled_out` is missing). The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If not specified, will default to departures starting approximately 11 days in the past. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results, comparing against flights' `scheduled_out` field (or `scheduled_off` if `scheduled_out` is missing). The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If not specified, will default to departures starting approximately 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 flights: type: array items: allOf: - title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in - title: ForesightFields allOf: - title: ForesightPredictionsAvailable type: object properties: foresight_predictions_available: type: boolean description: Indicates if Foresight predictions are available for AeroAPI /foresight endpoints. example: true required: - foresight_predictions_available - title: ForesightLegacy type: object properties: predicted_out: type: string format: date-time nullable: true description: Predicted time of gate departure event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_off: type: string format: date-time nullable: true description: Predicted time of runway departure event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_on: type: string format: date-time nullable: true description: Predicted time of runway arrival event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_in: type: string format: date-time nullable: true description: Predicted time of gate arrival event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_out_source: type: string nullable: true description: Source indicator of the predicted time of the gate departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Foresight predicted_off_source: type: string nullable: true description: Source indicator of the predicted time of the runway departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Historical Average predicted_on_source: type: string nullable: true description: Source indicator of the predicted time of the runway arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Historical Average predicted_in_source: type: string nullable: true description: Source indicator of the predicted time of the gate arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Foresight required: - predicted_out - predicted_off - predicted_on - predicted_in - predicted_out_source - predicted_off_source - predicted_on_source - predicted_in_source - title: ForesightModern type: object properties: predicted_taxi_out_duration: type: number nullable: true description: Predicted duration in seconds of gate departure event. Only available from /foresight endpoints. example: 1234 predicted_taxi_out_duration_source: type: string nullable: true description: Source indicator of the predicted duration of the gate departure event. Only available from /foresight endpoints. enum: - null - Foresight example: Foresight required: - predicted_taxi_out_duration - predicted_taxi_out_duration_source required: - links - num_pages - flights '400': description: | Incorrect parameter(s). Ident may be missing or not in fa_flight_id format or pages may be < 1. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status /foresight/flights/search/advanced: get: operationId: get_flights_by_advanced_search_with_foresight summary: 'Search for flights, responses include Foresight data' description: | Returns currently or recently airborne flights based on geospatial search parameters. If available, flights' predicted OOOI fields will be set. tags: - foresight parameters: - name: query in: query description: | Query to search for airborne or recently arrived flights. It should not exceed 1000 bytes in length. Search criteria is only applied to the most recent position for a flight. This function only searches flights within approximately the last 24 hours. The supported operators include (note that operators take different numbers of arguments): * false - results must have the specified boolean key set to a value of false. Example: {false arrived} * true - results must have the specified boolean key set to a value of true. Example: {true lifeguard} * null - results must have the specified key set to a null value. Example: {null waypoints} * notnull - results must have the specified key not set to a null value. Example: {notnull aircraftType} * = - results must have a key that exactly matches the specified value. Example: {= aircraftType C172} * != - results must have a key that must not match the specified value. Example: {!= prefix H} * < - results must have a key that is lexicographically less-than a specified value. Example: {< arrivalTime 1276811040} * \> - results must have a key that is lexicographically greater-than a specified value. Example: {> speed 500} * <= - results must have a key that is lexicographically less-than-or-equal-to a specified value. Example: {<= alt 8000} * \>= - results must have a key that is lexicographically greater-than-or-equal-to a specified value. * match - results must have a key that matches against a case-insensitive wildcard pattern. Example: {match ident AAL*} * notmatch - results must have a key that does not match against a case-insensitive wildcard pattern. Example: {notmatch aircraftType B76*} * range - results must have a key that is numerically between the two specified values. Example: {range alt 8000 20000} * in - results must have a key that exactly matches one of the specified values. Example: {in orig {KLAX KBUR KSNA KLGB}} * orig_or_dest - results must have either the origin or destination key exactly match one of the specified values. Example: {orig_or_dest {KLAX KBUR KSNA KLGB}} * airline - results will only include airline flight if the argument is 1, or will only include GA flights if the argument is 0. Example: {airline 1} * aircraftType - results must have an aircraftType key that matches one of the specified case-insensitive wildcard patterns. Example: {aircraftType {B76* B77*}} * ident - results must have an ident key that matches one of the specified case-insensitive wildcard patterns. Example: {ident {N123* N456* AAL* UAL*}} * ident_or_reg - results must have an ident key or was known to be operated by an aircraft registration that matches one of the specified case-insensitive wildcard patterns. Example: {ident_or_reg {N123* N456* AAL* UAL*}} The supported key names include (note that not all of these key names are returned in the result structure, and some have slightly different names): * actualDepartureTime - Actual time of departure, or null if not departed yet. UNIX epoch timestamp seconds since 1970 * aircraftType - aircraft type ID (for example: B763) * alt - altitude at last reported position (hundreds of feet or Flight Level) * altChange - altitude change indication (for example: "C" if climbing, "D" if descending, and empty if it is level) * arrivalTime - Actual time of arrival, or null if not arrived yet. UNIX epoch timestamp seconds since 1970 * arrived - true if the flight has arrived at its destination. * cancelled - true if the flight has been cancelled. The meaning of cancellation is that the flight is no longer being tracked by FlightAware. There are a number of reasons a flight may be cancelled including cancellation by the airline, but that will not always be the case. * cdt - Controlled Departure Time, set if there is a ground hold on the flight. UNIX epoch timestamp seconds since 1970 * clock - Time of last received position. UNIX epoch timestamp seconds since 1970 * cta - Controlled Time of Arrival, set if there is a ground hold on the flight. UNIX epoch timestamp seconds since 1970 * dest - ICAO airport code of destination (for example: KLAX) * edt - Estimated Departure Time. Epoch timestamp seconds since 1970 * eta - Estimated Time of Arrival. Epoch timestamp seconds since 1970 * fdt - Field Departure Time. UNIX epoch timestamp seconds since 1970 * firstPositionTime - Time when first reported position was received, or 0 if no position has been received yet. Epoch timestamp seconds since 1970 * fixes - intersections and/or VORs along the route (for example: SLS AMERO ARTOM VODIR NOTOS ULAPA ACA NUXCO OLULA PERAS ALIPO UPN GDL KEDMA BRISA CUL PERTI CEN PPE ALTAR ASUTA JLI RONLD LAADY WYVIL OLDEE RAL PDZ ARNES BASET WELLZ CIVET) * fp - unique identifier assigned by FlightAware for this flight, aka fa_flight_id. * gs - ground speed at last reported position, in kts. * heading - direction of travel at last reported position. * hiLat - highest latitude travelled by flight. * hiLon - highest longitude travelled by flight. * ident - flight identifier or registration of aircraft. * lastPositionTime - Time when last reported position was received, or 0 if no position has been received yet. Epoch timestamp seconds since 1970. * lat - latitude of last reported position. * lifeguard - true if a "lifeguard" rescue flight. * lon - longitude of last reported position. * lowLat - lowest latitude travelled by flight. * lowLon - lowest longitude travelled by flight. * ogta - Original Time of Arrival. UNIX epoch timestamp seconds since 1970 * ogtd - Original Time of Departure. UNIX epoch timestamp seconds since 1970 * orig - ICAO airport code of origin (for example: KIAH) * physClass - physical class (for example: J is jet) * prefix - A one or two character identifier prefix code (common values: G or GG Medevac, L Lifeguard, A Air Taxi, H Heavy, M Medium). * speed - ground speed, in kts. * status - Single letter code for current flight status, can be S Scheduled, F Filed, A Active, Z Completed, or X Cancelled. * updateType - data source of last position (P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based). * waypoints - all of the intersections and VORs comprising the route schema: type: string example: | {orig_or_dest {KLAX KBUR KSNA KLGB}} {<= alt 8000} {match ident AAL*} - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 flights: type: array items: allOf: - title: InFlightStatus type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. This field is not populated by the `/flights/search`, `flights/{id}/position` and `/foresight/flights/{id}/position` endpoints. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url waypoints: type: array items: type: number description: | Route waypoints as an array of alternating latitudes and longitudes. first_position_time: type: string nullable: true format: date-time description: Timestamp of when the first position for this flight was received. example: '2021-12-31T19:59:59Z' last_position: type: object description: Most recent position received for this flight. title: FlightPosition nullable: true properties: fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware to the flight with this position. This field is only populated by the `/flights/search/positions` (in other cases, the user will have already specified the fa_flight_id). altitude: type: integer description: Aircraft altitude in hundreds of feet altitude_change: type: string nullable: false description: | C when the aircraft is climbing, D when descending, and - when the altitude is being maintained. enum: - C - D - '-' groundspeed: type: integer description: Most recent groundspeed (knots) heading: type: integer nullable: true description: Aircraft heading in degrees (0-360) minimum: 0 maximum: 360 latitude: type: number description: Most recent latitude position longitude: type: number description: Most recent longitude position timestamp: type: string format: date-time description: Time that position was received example: '2021-12-31T19:59:59Z' update_type: type: string nullable: true description: | P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based enum: - P - O - Z - A - M - D - X - S - null required: - fa_flight_id - altitude - altitude_change - groundspeed - heading - latitude - longitude - timestamp - update_type bounding_box: type: array nullable: true description: | List of 4 coordinates representing the edges of a box that entirely contains this flight's positions. The order of the coordinates are the top, left, bottom, and right sides of the box. maxItems: 4 minItems: 4 items: type: number ident_prefix: type: string nullable: true description: | A one or two character identifier prefix code (Common values: G or GG Medevac, L Lifeguard, A Air Taxi, H Heavy, M Medium). aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - actual_off - actual_on - origin - destination - waypoints - first_position_time - last_position - bounding_box - ident_prefix - aircraft_type - title: ForesightFields allOf: - title: ForesightPredictionsAvailable type: object properties: foresight_predictions_available: type: boolean description: Indicates if Foresight predictions are available for AeroAPI /foresight endpoints. example: true required: - foresight_predictions_available - title: ForesightLegacy type: object properties: predicted_out: type: string format: date-time nullable: true description: Predicted time of gate departure event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_off: type: string format: date-time nullable: true description: Predicted time of runway departure event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_on: type: string format: date-time nullable: true description: Predicted time of runway arrival event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_in: type: string format: date-time nullable: true description: Predicted time of gate arrival event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_out_source: type: string nullable: true description: Source indicator of the predicted time of the gate departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Foresight predicted_off_source: type: string nullable: true description: Source indicator of the predicted time of the runway departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Historical Average predicted_on_source: type: string nullable: true description: Source indicator of the predicted time of the runway arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Historical Average predicted_in_source: type: string nullable: true description: Source indicator of the predicted time of the gate arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Foresight required: - predicted_out - predicted_off - predicted_on - predicted_in - predicted_out_source - predicted_off_source - predicted_on_source - predicted_in_source - title: ForesightModern type: object properties: predicted_taxi_out_duration: type: number nullable: true description: Predicted duration in seconds of gate departure event. Only available from /foresight endpoints. example: 1234 predicted_taxi_out_duration_source: type: string nullable: true description: Source indicator of the predicted duration of the gate departure event. Only available from /foresight endpoints. enum: - null - Foresight example: Foresight required: - predicted_taxi_out_duration - predicted_taxi_out_duration_source required: - links - num_pages - flights '400': description: | Incorrect parameter(s). Query may be incorrect. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/foresight/flights/{id}/position': get: operationId: get_flight_position_with_foresight summary: 'Get flight''s current position, including Foresight data' description: Returns the latest position for a flight tags: - foresight parameters: - name: id in: path description: | The fa_flight_id to fetch. If looking for data from more than 10 days ago, please use the corresponding historical endpoint. required: true schema: type: string examples: fa_id: value: UAL1234-1234567890-airline-0123 responses: '200': description: OK content: application/json; charset=UTF-8: schema: allOf: - title: InFlightStatus type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. This field is not populated by the `/flights/search`, `flights/{id}/position` and `/foresight/flights/{id}/position` endpoints. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url waypoints: type: array items: type: number description: | Route waypoints as an array of alternating latitudes and longitudes. first_position_time: type: string nullable: true format: date-time description: Timestamp of when the first position for this flight was received. example: '2021-12-31T19:59:59Z' last_position: type: object description: Most recent position received for this flight. title: FlightPosition nullable: true properties: fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware to the flight with this position. This field is only populated by the `/flights/search/positions` (in other cases, the user will have already specified the fa_flight_id). altitude: type: integer description: Aircraft altitude in hundreds of feet altitude_change: type: string nullable: false description: | C when the aircraft is climbing, D when descending, and - when the altitude is being maintained. enum: - C - D - '-' groundspeed: type: integer description: Most recent groundspeed (knots) heading: type: integer nullable: true description: Aircraft heading in degrees (0-360) minimum: 0 maximum: 360 latitude: type: number description: Most recent latitude position longitude: type: number description: Most recent longitude position timestamp: type: string format: date-time description: Time that position was received example: '2021-12-31T19:59:59Z' update_type: type: string nullable: true description: | P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based enum: - P - O - Z - A - M - D - X - S - null required: - fa_flight_id - altitude - altitude_change - groundspeed - heading - latitude - longitude - timestamp - update_type bounding_box: type: array nullable: true description: | List of 4 coordinates representing the edges of a box that entirely contains this flight's positions. The order of the coordinates are the top, left, bottom, and right sides of the box. maxItems: 4 minItems: 4 items: type: number ident_prefix: type: string nullable: true description: | A one or two character identifier prefix code (Common values: G or GG Medevac, L Lifeguard, A Air Taxi, H Heavy, M Medium). aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - actual_off - actual_on - origin - destination - waypoints - first_position_time - last_position - bounding_box - ident_prefix - aircraft_type - title: ForesightFields allOf: - title: ForesightPredictionsAvailable type: object properties: foresight_predictions_available: type: boolean description: Indicates if Foresight predictions are available for AeroAPI /foresight endpoints. example: true required: - foresight_predictions_available - title: ForesightLegacy type: object properties: predicted_out: type: string format: date-time nullable: true description: Predicted time of gate departure event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_off: type: string format: date-time nullable: true description: Predicted time of runway departure event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_on: type: string format: date-time nullable: true description: Predicted time of runway arrival event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_in: type: string format: date-time nullable: true description: Predicted time of gate arrival event. Only available from /foresight endpoints. example: '2021-12-31T19:59:59Z' predicted_out_source: type: string nullable: true description: Source indicator of the predicted time of the gate departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Foresight predicted_off_source: type: string nullable: true description: Source indicator of the predicted time of the runway departure event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Historical Average predicted_on_source: type: string nullable: true description: Source indicator of the predicted time of the runway arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Historical Average predicted_in_source: type: string nullable: true description: Source indicator of the predicted time of the gate arrival event. Only available from /foresight endpoints. enum: - null - Foresight - Historical Average example: Foresight required: - predicted_out - predicted_off - predicted_on - predicted_in - predicted_out_source - predicted_off_source - predicted_on_source - predicted_in_source - title: ForesightModern type: object properties: predicted_taxi_out_duration: type: number nullable: true description: Predicted duration in seconds of gate departure event. Only available from /foresight endpoints. example: 1234 predicted_taxi_out_duration_source: type: string nullable: true description: Source indicator of the predicted duration of the gate departure event. Only available from /foresight endpoints. enum: - null - Foresight example: Foresight required: - predicted_taxi_out_duration - predicted_taxi_out_duration_source '400': description: | Incorrect parameter (id). Id may be missing or may not be fa_flight_id format. Query may be incorrect. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status /airports: parameters: - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string get: operationId: get_all_airports summary: Get all airports description: | Returns the ICAO identifiers of all known airports. For airports that do not have an ICAO identifier, the FAA LID identifier will be used. Links for further information about each airport are included. tags: - airports responses: '200': description: Returns a list of airports content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 airports: type: array items: title: AirportRef type: object nullable: true properties: code: type: string description: | ICAO identifier if known, otherwise IATA or LID. For position-only flights, this may also be a string indicating the location where tracking of the flight began/ended. airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. required: - code - airport_info_url required: - links - num_pages - airports /airports/nearby: get: operationId: get_nearby_airports summary: Get airports near a location description: | Returns a list of airports located within a given distance from the given location. tags: - airports parameters: - name: latitude in: query description: | The latitude of the point used to search for nearby airports required: true schema: type: number - name: longitude in: query description: | The longitude of the point used to search for nearby airports required: true schema: type: number - name: radius in: query description: | The search radius to use for finding nearby airports (statue miles) required: true schema: type: integer - name: only_iap in: query description: | Return only nearby airports with Instrument Approaches (also limits results to North American airports) schema: type: boolean default: false - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 airports: type: array items: title: NearbyAirport allOf: - type: object properties: airport_code: type: string description: 'Default airport identifier, generally ICAO but may be IATA or LID if the airport lacks an ICAO code' example: KHOU code_icao: type: string nullable: true description: ICAO identifier for the airport if known example: KHOU code_iata: type: string nullable: true description: IATA identifier for the airport if known example: HOU code_lid: type: string nullable: true description: LID identifier for the airport if known example: HOU alternate_ident: deprecated: true type: string nullable: true description: 'IATA or LID identifier for the airport. (Deprecated, use code_iata for the IATA identifier or code_lid for the LID identifier instead.)' name: type: string description: Common name for the airport example: William P Hobby type: type: string nullable: true description: Type of airport enum: - Airport - Heliport - Seaplane Base - Ultralight - Stolport - Gliderport - Balloonport - null elevation: type: number description: Height above Mean Sea Level (MSL) city: type: string description: Closest city to the airport state: type: string description: | State/province where the airport resides if applicable. For US states this will be their 2-letter code; for provinces or other entities, it will be the full name. longitude: type: number description: 'Airport''s longitude, generally the center point of the airport' latitude: type: number description: 'Airport''s latitude, generally the center point of the airport' timezone: type: string description: 'Applicable timezone for the airport, in the TZ database format' example: America/Chicago country_code: type: string description: 2-letter code of country where the airport resides (ISO 3166-1 alpha-2) wiki_url: type: string nullable: true description: Link to the wikipedia page for the airport format: uri airport_flights_url: type: string format: uri-reference description: The URL to flights for this airport required: - airport_code - alternate_ident - name - elevation - city - state - longitude - latitude - timezone - country_code - wiki_url - airport_flights_url - type: object properties: distance: type: integer description: | Distance of airport from the specified location (statute miles) heading: type: integer description: | Direction from specified location to airport (degrees) minimum: 1 maximum: 360 direction: type: string description: | Cardinal direction from specified location to airport enum: - 'N' - E - S - W - NE - SE - SW - NW required: - distance - heading - direction required: - links - num_pages - airports '400': description: | Incorrect parameter(s). Expected: numerical latitude and longitude, radius > 0. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status /airports/delays: parameters: - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string get: operationId: get_delays_for_all_airports summary: Get delay information for all airports with delays description: | Returns a list of airports with delays. There may be multiple reasons returned per airport if there are multiple types of delays reported at an airport. Note that individual flights can be delayed without there being an airport-wide delay returned by this endpoint. tags: - airports responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 delays: type: array items: title: Airport Delay type: object properties: airport: type: string description: ICAO/IATA code of airport category: type: string description: | Category of the largest delay. Some possible values are "weather", "traffic", "equipment", etc. color: type: string description: | Color of largest delay. Red when delay is geater than 1 hour. Yellow when delay is between 15 minutes to an hour. Green when delay is between 0 to 15 minutes. enum: - red - yellow - green delay_secs: type: integer description: | Duration of largest delay (seconds). This value is not intended to be presented to users and should only be used for sorting results. reasons: type: array description: Reasons for the delay items: type: object properties: category: type: string description: | Category for the delay. Some possible values are "weather", "traffic", "equipment", etc. color: type: string description: Color indicating severity of delay enum: - red - yellow - green delay_secs: type: integer description: | Duration of delay (seconds). This value is not intended to be presented to users and should only be used for sorting results. reason: type: string description: Textual description of the cause of the delay required: - category - color - delay_secs - reason required: - airport - category - color - delay_secs - reasons required: - links - num_pages - delays '/airports/{id}': get: operationId: get_airport summary: Get static information about an airport description: | Returns information about an airport given an ICAO or LID airport code such as KLAX, KIAH, O07, etc. Data returned includes airport name, city, state (when known), latitude, longitude, and timezone. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH responses: '200': description: Information about the requested airport. content: application/json; charset=UTF-8: schema: allOf: - type: object properties: airport_code: type: string description: 'Default airport identifier, generally ICAO but may be IATA or LID if the airport lacks an ICAO code' example: KHOU code_icao: type: string nullable: true description: ICAO identifier for the airport if known example: KHOU code_iata: type: string nullable: true description: IATA identifier for the airport if known example: HOU code_lid: type: string nullable: true description: LID identifier for the airport if known example: HOU alternate_ident: deprecated: true type: string nullable: true description: 'IATA or LID identifier for the airport. (Deprecated, use code_iata for the IATA identifier or code_lid for the LID identifier instead.)' name: type: string description: Common name for the airport example: William P Hobby type: type: string nullable: true description: Type of airport enum: - Airport - Heliport - Seaplane Base - Ultralight - Stolport - Gliderport - Balloonport - null elevation: type: number description: Height above Mean Sea Level (MSL) city: type: string description: Closest city to the airport state: type: string description: | State/province where the airport resides if applicable. For US states this will be their 2-letter code; for provinces or other entities, it will be the full name. longitude: type: number description: 'Airport''s longitude, generally the center point of the airport' latitude: type: number description: 'Airport''s latitude, generally the center point of the airport' timezone: type: string description: 'Applicable timezone for the airport, in the TZ database format' example: America/Chicago country_code: type: string description: 2-letter code of country where the airport resides (ISO 3166-1 alpha-2) wiki_url: type: string nullable: true description: Link to the wikipedia page for the airport format: uri airport_flights_url: type: string format: uri-reference description: The URL to flights for this airport required: - airport_code - alternate_ident - name - elevation - city - state - longitude - latitude - timezone - country_code - wiki_url - airport_flights_url - type: object properties: alternatives: type: array description: | An array of other possible airport matches items: type: object properties: airport_code: type: string description: 'Default airport identifier, generally ICAO but may be IATA or LID if the airport lacks an ICAO code' example: KHOU code_icao: type: string nullable: true description: ICAO identifier for the airport if known example: KHOU code_iata: type: string nullable: true description: IATA identifier for the airport if known example: HOU code_lid: type: string nullable: true description: LID identifier for the airport if known example: HOU alternate_ident: deprecated: true type: string nullable: true description: 'IATA or LID identifier for the airport. (Deprecated, use code_iata for the IATA identifier or code_lid for the LID identifier instead.)' name: type: string description: Common name for the airport example: William P Hobby type: type: string nullable: true description: Type of airport enum: - Airport - Heliport - Seaplane Base - Ultralight - Stolport - Gliderport - Balloonport - null elevation: type: number description: Height above Mean Sea Level (MSL) city: type: string description: Closest city to the airport state: type: string description: | State/province where the airport resides if applicable. For US states this will be their 2-letter code; for provinces or other entities, it will be the full name. longitude: type: number description: 'Airport''s longitude, generally the center point of the airport' latitude: type: number description: 'Airport''s latitude, generally the center point of the airport' timezone: type: string description: 'Applicable timezone for the airport, in the TZ database format' example: America/Chicago country_code: type: string description: 2-letter code of country where the airport resides (ISO 3166-1 alpha-2) wiki_url: type: string nullable: true description: Link to the wikipedia page for the airport format: uri airport_flights_url: type: string format: uri-reference description: The URL to flights for this airport required: - airport_code - alternate_ident - name - elevation - city - state - longitude - latitude - timezone - country_code - wiki_url - airport_flights_url '400': description: | Incorrect parameter (id). Id must be a valid airport code and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/canonical': get: operationId: get_airports_canonical summary: Get the canonical code of an airport description: | Returns a list of ICAO airport codes corresponding to the given IATA or LID airport code. IATA codes can be identical to some LID codes, so if id_type is specified, only 1 ICAO code will be returned. If no id_type is specified and there are two possible ICAO codes, both will be returned. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: id_type in: query description: | Type of airport code provided in the id parameter schema: type: string enum: - iata - lid - icao responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: airports: type: array items: title: CanonicalAirport type: object properties: id: type: string description: | Canonical airport code. This is the code by which a given airport (and its flights) can be accessed in AeroAPI. id_type: type: string description: | Type of airport code given in id enum: - icao - iata - lid required: - id - id_type required: - airports '400': description: | Incorrect parameter(s). Id must be a valid airport code and id_type must be 'icao', 'iata', or 'lid'. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/nearby': get: operationId: get_airports_near_airport summary: Get airports near an airport description: | Returns a list of airports located within a given distance from the specified airport. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: radius in: query description: | The search radius to use for finding nearby airports (statue miles) required: true schema: type: integer - name: only_iap in: query description: | Return only nearby airports with Instrument Approaches (also limits results to North American airports) schema: type: boolean default: false - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 airports: type: array items: title: NearbyAirport allOf: - type: object properties: airport_code: type: string description: 'Default airport identifier, generally ICAO but may be IATA or LID if the airport lacks an ICAO code' example: KHOU code_icao: type: string nullable: true description: ICAO identifier for the airport if known example: KHOU code_iata: type: string nullable: true description: IATA identifier for the airport if known example: HOU code_lid: type: string nullable: true description: LID identifier for the airport if known example: HOU alternate_ident: deprecated: true type: string nullable: true description: 'IATA or LID identifier for the airport. (Deprecated, use code_iata for the IATA identifier or code_lid for the LID identifier instead.)' name: type: string description: Common name for the airport example: William P Hobby type: type: string nullable: true description: Type of airport enum: - Airport - Heliport - Seaplane Base - Ultralight - Stolport - Gliderport - Balloonport - null elevation: type: number description: Height above Mean Sea Level (MSL) city: type: string description: Closest city to the airport state: type: string description: | State/province where the airport resides if applicable. For US states this will be their 2-letter code; for provinces or other entities, it will be the full name. longitude: type: number description: 'Airport''s longitude, generally the center point of the airport' latitude: type: number description: 'Airport''s latitude, generally the center point of the airport' timezone: type: string description: 'Applicable timezone for the airport, in the TZ database format' example: America/Chicago country_code: type: string description: 2-letter code of country where the airport resides (ISO 3166-1 alpha-2) wiki_url: type: string nullable: true description: Link to the wikipedia page for the airport format: uri airport_flights_url: type: string format: uri-reference description: The URL to flights for this airport required: - airport_code - alternate_ident - name - elevation - city - state - longitude - latitude - timezone - country_code - wiki_url - airport_flights_url - type: object properties: distance: type: integer description: | Distance of airport from the specified location (statute miles) heading: type: integer description: | Direction from specified location to airport (degrees) minimum: 1 maximum: 360 direction: type: string description: | Cardinal direction from specified location to airport enum: - 'N' - E - S - W - NE - SE - SW - NW required: - distance - heading - direction required: - links - num_pages - airports '400': description: | Incorrect parameter(s). Id must be a valid airport code and cannot be empty, radius > 0. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/delays': get: operationId: get_airport_delays summary: Get airport delay information description: | Returns a list of reason codes for delays at a specific airport. There may be multiple reasons returned if there are multiple types of delays reported at an airport. Note that individual flights may be delayed without there being an airport delay returned by this endpoint. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH responses: '200': description: OK content: application/json; charset=UTF-8: schema: title: Airport Delay type: object properties: airport: type: string description: ICAO/IATA code of airport category: type: string description: | Category of the largest delay. Some possible values are "weather", "traffic", "equipment", etc. color: type: string description: | Color of largest delay. Red when delay is geater than 1 hour. Yellow when delay is between 15 minutes to an hour. Green when delay is between 0 to 15 minutes. enum: - red - yellow - green delay_secs: type: integer description: | Duration of largest delay (seconds). This value is not intended to be presented to users and should only be used for sorting results. reasons: type: array description: Reasons for the delay items: type: object properties: category: type: string description: | Category for the delay. Some possible values are "weather", "traffic", "equipment", etc. color: type: string description: Color indicating severity of delay enum: - red - yellow - green delay_secs: type: integer description: | Duration of delay (seconds). This value is not intended to be presented to users and should only be used for sorting results. reason: type: string description: Textual description of the cause of the delay required: - category - color - delay_secs - reason required: - airport - category - color - delay_secs - reasons '400': description: | Incorrect parameter (id). Id must be a valid airport code and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/flights': get: operationId: get_airport_flights summary: Get all flights for a given airport description: | Returns all recent and upcoming flights departing from or arriving at the specified airport. Filtering/ordering behavior for the optional start and end parameters for each type (`scheduled_departures`, `scheduled_arrivals`, `departures`, `arrivals`) match the behavior in their corresponding endpoints. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: airline in: query description: Airline to filter flights by. Do not provide airline if type is provided. schema: type: string example: UAL - name: type in: query description: Type of flights to return. Do not provide type if airline is provided. schema: type: string enum: - General_Aviation - Airline - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 scheduled_arrivals: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in scheduled_departures: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in arrivals: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in departures: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - scheduled_arrivals - scheduled_departures - arrivals - departures '400': description: | Incorrect parameter (id). Id must be a valid airport code and cannot be empty. Airline and type query params cannot both be set. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/flights/arrivals': get: operationId: get_airport_flights_arrived summary: Get flights that have recently arrived at an airport description: | Returns flights that have arrived at an airport, orderd by `actual_on` descending. The start parameter's default value is 24 hours before the current time. The end parameter's default value is the current time. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: airline in: query description: Airline to filter flights by. Do not provide airline if type is provided. schema: type: string example: UAL - name: type in: query description: Type of flights to return. Do not provide type if airline is provided. schema: type: string enum: - General_Aviation - Airline - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 arrivals: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - arrivals '400': description: | Incorrect parameter(s). Id must be a valid airport code and cannot be empty. Airline and type query params cannot both be set. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/flights/departures': get: operationId: get_airport_flights_departed summary: Get flights that have recently departed from an airport description: | Returns flights that have departed from an airport and not been diverted, ordered by `actual_off` descending. The optional start and end parameters will be compared against `actual_off` to limit the flights returned. The start parameter's default value is 24 hours before the current time. The end parameter's default value is the current time. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: airline in: query description: Airline to filter flights by. Do not provide airline if type is provided. schema: type: string example: UAL - name: type in: query description: Type of flights to return. Do not provide type if airline is provided. schema: type: string enum: - General_Aviation - Airline - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 departures: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - departures '400': description: | Incorrect parameter(s). Id must be a valid airport code and cannot be empty. Airline and type query params cannot both be set. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/flights/scheduled_departures': get: operationId: get_airport_flights_scheduled_departures summary: Get future flights departing from an airport description: | Returns flights that are scheduled to depart from an airport or have recently been cancelled, ordered by `estimated_off` (or `scheduled_off` if `estimated_off` is missing) ascending. The optional start and end parameters will be compared against `scheduled_off` to limit the flights returned. The start parameter's default value is 2 hours before the current time. The end parameter's default value is 24 hours after the current time. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: airline in: query description: Airline to filter flights by. Do not provide airline if type is provided. schema: type: string example: UAL - name: type in: query description: Type of flights to return. Do not provide type if airline is provided. schema: type: string enum: - General_Aviation - Airline - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 scheduled_departures: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - scheduled_departures '400': description: | Incorrect parameter(s). Id must be a valid airport code and cannot be empty. Airline and type query params cannot both be set. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/flights/scheduled_arrivals': get: operationId: get_airport_flights_scheduled_arrivals summary: Get future flights arriving at an airport description: | Returns flights that are expected to arrive at an airport. This can include both undeparted and en route flights. Flights are ordered by `estimated_on` ascending. The optional start and end parameters will be compared against `estimated_on` to limit the flights returned. The start parameter's default value is 48 hours before the current time (this accounts for delayed flights). The end parameter's default value is 24 hours after the current time. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: airline in: query description: Airline to filter flights by. Do not provide airline if type is provided. schema: type: string example: UAL - name: type in: query description: Type of flights to return. Do not provide type if airline is provided. schema: type: string enum: - General_Aviation - Airline - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 scheduled_arrivals: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - scheduled_arrivals '400': description: | Incorrect parameter(s). Id must be a valid airport code and cannot be empty. Airline and type query params cannot both be set. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/flights/to/{dest_id}': get: operationId: get_flights_between_airports summary: Get flights with a specific origin and destination description: | This endpoint is quite similar to the `FindFlight` operator in prior versions of AeroAPI. Results may include both non-stop and one-stop flights. Note that because the returned flights can include multiple legs, the response format differs from most other flight-returning endpoints. If the optional start or end query parameters are not provided start will default to 1 day in the future, while end will default to 7 days in the past relative to the time the query is made. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: dest_id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: type in: query description: Type of flights to return. schema: type: string enum: - General_Aviation - Airline - name: connection in: query description: | Whether flights should be filtered based on their connection status. If setting start/end date parameters then connection must be set to nonstop, and will default to nonstop if left blank. If start/end are not specified then leaving this blank will result in a mix of nonstop and one-stop flights being returned, with a preference for nonstop flights. One-stop flights are identified with a custom heuristic, which may be incomplete. schema: type: string enum: - nonstop - onestop - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 flights: type: array items: title: FullFlight type: object properties: segments: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - segments required: - links - num_pages - flights '400': description: | Incorrect parameter(s). Id and dest_id must be valid airport codes and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/flights/counts': get: operationId: get_airport_flights_count summary: Get flight counts for an airport description: | Returns counts of flights for an airport broken down by flight status. The returned categories are subtly different from what is returned from the `/airports/{id}/flights` endpoints. Specifically, this operation does not include completed flights in its counts, and it does not count cancelled/diverted flights. It also does not strictly bound the time for which scheduled flights are counted, so all future flights that FlightAware knows about are included in the counts. See the response schema and documentation for the airport flights endpoints for more information. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH responses: '200': description: OK content: application/json; charset=UTF-8: schema: title: AirportFlightCounts type: object description: None of the counts include cancellations. properties: departed: type: integer minimum: 0 description: | Number of flights that have departed the airport and are currently airborne. enroute: type: integer minimum: 0 description: | Number of flights that are currently bound for the airport. scheduled_arrivals: type: integer minimum: 0 description: | Number of flights that have not yet departed but are scheduled to arrive at the airport. scheduled_departures: type: integer minimum: 0 description: | Number of flights that are scheduled to depart from the airport. required: - departed - enroute - scheduled_arrivals - scheduled_departures '400': description: | Incorrect parameter (id). Id must be a valid airport code and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/weather/observations': get: operationId: get_airport_weather_observations summary: Get weather conditions for given airport description: | Returns weather for an airport in the form of a decoded METAR, starting from the latest report and working backwards in time as more data is requested. Data is provided in parsed, human-readable, and raw formats. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: temperature_units in: query description: Units to use for temperature fields. schema: type: string default: Celsius enum: - C - F - Celsius - Fahrenheit - name: return_nearby_weather in: query description: | If the requested airport does not have a weather conditions report then the weather for the nearest airport within 30 miles will be returned instead. schema: type: boolean default: false - name: timestamp in: query description: | Timestamp from which to begin returning weather data in a 1 day range. Because weather data is returned in reverse chronological order, all returned weather reports will be from before this timestamp. If unspecified, weather is returned starting from now up to or less than the user history limit, normally 14 days. schema: type: string format: date-time example: '2021-12-31T19:59:59Z' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 observations: type: array items: title: WeatherObservation type: object properties: airport_code: type: string description: | The airport code of the report. LID/IATA will be used if airport lacks an ICAO code. cloud_friendly: type: string nullable: true description: | Human-friendly summary of clouds. example: Overcast skies clouds: type: array items: type: object properties: altitude: type: integer nullable: true description: Height in feet (AGL) of cloud base symbol: type: string description: Raw cloud symbol from the METAR report type: type: string description: 'Type of cloud. May be CLR, FEW, SCT, BKN, OVC, VV' description: Array of cloud data conditions: type: string nullable: true description: Notable weather example: BR pressure: type: number nullable: true description: Air pressure (see pressure_units field for units) pressure_units: type: string nullable: true description: Units for air pressure enum: - null - mb - in Hg raw_data: type: string description: Raw METAR report string temp_air: type: integer nullable: true description: Air temperature temp_dewpoint: type: integer nullable: true description: Dewpoint temperature temp_perceived: type: integer nullable: true description: Perceived temperature (e.g. wind chill) relative_humidity: type: integer nullable: true description: Relative humidity (percent) minimum: 0 maximum: 100 time: type: string format: date-time description: Timestamp when report was collected example: '2021-12-31T19:59:59Z' visibility: type: number nullable: true description: Horizontal visibility distance (see visibility_units for units) visibility_units: type: string nullable: true description: Units for visibility enum: - null - meters - SM wind_direction: type: integer description: Heading direction of wind (degrees) minimum: 0 maximum: 360 wind_friendly: type: string description: Human-friendly summary of winds example: Very windy wind_speed: type: integer description: Wind speed minimum: 0 wind_speed_gust: type: integer description: Wind gust speed minimum: 0 wind_units: type: string description: Units for the wind speed and wind gusts enum: - MPS - KT required: - airport_code - cloud_friendly - clouds - conditions - pressure - pressure_units - raw_data - temp_air - temp_dewpoint - temp_perceived - relative_humidity - time - visibility - visibility_units - wind_direction - wind_friendly - wind_speed - wind_speed_gust - wind_units required: - links - num_pages - observations '400': description: | Incorrect parameter (id). Id must be a valid airport code and cannot be empty. Temperature_units may be invalid. Timestamp may be before user's history limit. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/weather/forecast': get: operationId: get_airport_weather_forecast summary: Get weather forecast for given airport description: | Returns the weather forecast for an airport in the form of a decoded TAF (Terminal Area Forecast). Only a single result is returned. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: timestamp in: query description: | Timestamp from which to begin returning weather data in a 1 day range. Because weather data is returned in reverse chronological order, all returned weather reports will be from before this timestamp. If unspecified, weather is returned starting from now up to or less than the user history limit, normally 14 days. schema: type: string format: date-time example: '2021-12-31T19:59:59Z' x-fill-example: 'no' - name: return_nearby_weather in: query description: | If the requested airport does not have a weather conditions report then the weather for the nearest airport within 30 miles will be returned instead. schema: type: boolean default: false responses: '200': description: OK content: application/json; charset=UTF-8: schema: title: WeatherForecast type: object properties: airport_code: type: string description: | The airport code of the report. LID/IATA will be used if airport lacks an ICAO code. raw_forecast: type: array description: Array of raw forecast lines from the TAF items: type: string time: type: string format: date-time description: Datetime that the forecast was generated. example: '2021-12-31T19:59:59Z' decoded_forecast: type: object nullable: true properties: start: type: string format: date-time example: '2021-12-31T19:59:59Z' end: type: string format: date-time example: '2021-12-31T19:59:59Z' lines: type: array items: type: object properties: type: type: string description: | The type of forecast line (forecast, from, temporary, becoming) start: type: string format: date-time description: Start of the effective period for this forecast line example: '2021-12-31T19:59:59Z' end: type: string format: date-time nullable: true description: End of the effective period for this forecast line example: '2021-12-31T19:59:59Z' turbulence_layers: type: string nullable: true description: Turbulence forecast icing_layers: type: string nullable: true description: Icing forecast barometric_pressure: type: number nullable: true description: Forecast pressure (percent) minimum: 0 maximum: 100 significant_weather: type: string nullable: true description: Significant weather forecast winds: type: object nullable: true properties: symbol: type: string description: Raw TAF wind symbol direction: type: string description: Wind direction (0-360 or "variable") speed: type: integer description: Wind speed units: type: string nullable: true description: Wind units peak_gusts: type: integer nullable: true description: Peak gusts for forecast required: - symbol - direction - speed - units - peak_gusts windshear: type: object nullable: true properties: symbol: type: string description: Raw TAF windshear symbol height: type: string description: Altitude of low level wind shear occurrence direction: type: string description: Wind direction of windshear (0-360 or "variable") speed: type: string description: Wind speed of windshear units: type: string nullable: true description: Wind units of windshear required: - symbol - height - direction - speed - units visibility: type: object nullable: true properties: symbol: type: string description: Raw TAF visibility symbol visibility: type: string description: Numeric visibility (or "unlimited") units: type: string nullable: true description: Visibility units required: - symbol - visibility - units clouds: type: array items: type: object properties: symbol: type: string description: Raw TAF cloud symbol coverage: type: string nullable: true description: | Area of sky covered by the cloud layer (few 0-2 octas, scatterd 3-4 octas, broken 5-7 octas, overcast 8 octas) enum: - null - sky_clear - few - scattered - broken - overcast altitude: type: string nullable: true description: Height (AGL) of cloud layer base special: type: string nullable: true description: | Any special modifiers such as CB (cumulonimbus) or TCU (towering cumulonimbus) required: - symbol - coverage - altitude - special required: - type - start - end - turbulence_layers - icing_layers - barometric_pressure - significant_weather - winds - windshear - visibility - clouds required: - start - end - lines required: - airport_code - raw_forecast - time - decoded_forecast '400': description: | Incorrect parameter (id). Id must be a valid airport code and cannot be empty. Temperature_units may be invalid. Timestamp may be before user's history limit. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: | No upcoming forecast currently available for this airport. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/airports/{id}/routes/{dest_id}': get: operationId: get_routes_between_airports summary: Get routes between 2 airports description: | Returns information about assigned IFR routings between two airports. tags: - airports parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: dest_id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: sort_by in: query description: | Field to sort results by. "count" will sort results by the route filing count (descending). "last_departure_time" will sort results by the latest scheduled departure time for that route (descending). schema: type: string default: count enum: - count - last_departure_time - name: max_file_age in: query description: | Maximum filed plan age of flights to consider. Can be a value less than or equal to 14 days (2 weeks) OR 1 month OR 1 year. schema: type: string default: 2 weeks examples: days: value: 6 days month: value: 1 month year: value: 1 year - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 routes: type: array items: title: RouteInfo type: object properties: aircraft_types: type: array description: List of aircraft types that have filed this route items: type: string count: type: integer minimum: 0 description: The number of flights with this filed route filed_altitude_max: type: integer description: The highest altitude filed for the route (hundreds of feet) filed_altitude_min: type: integer description: The lowest altitude filed for the route (hundreds of feet) last_departure_time: type: string format: date-time description: The latest departure time for a flight operating on this route example: '2021-12-31T19:59:59Z' route: type: string description: The IFR route assigned route_distance: type: string description: The distance as filed for the route. May vary from the actual distance flown. Includes units in string. required: - aircraft_types - count - filed_altitude_max - filed_altitude_min - last_departure_time - route - route_distance required: - links - num_pages - routes '400': description: | Incorrect parameter(s). Id and dest_id must be valid airport codes and cannot be empty. Max_file_age must be one of the specified values. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status /operators: parameters: - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string get: operationId: get_all_operators summary: Get all operators. description: | Returns list of operator references (ICAO/IATA codes and URLs to access more information). tags: - operators responses: '200': description: List of operators. content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 operators: type: array items: title: OperatorRef type: object properties: code: type: string description: 'ICAO identifier if known, otherwise IATA.' operator_info_url: type: string format: uri-reference description: The AeroAPI URL to more information about the operator required: - code - operator_info_url required: - links - num_pages - operators '/operators/{id}': parameters: - name: id in: path required: true description: | The ICAO or IATA identifier for an operator. The use of ICAO code is strongly preferred. In the case of non-unique IATA codes the operator with the lexicographically first ICAO code will be returned. schema: type: string example: UAL get: operationId: get_operator summary: Get static information for an operator. description: | Returns information for an operator such as their name, ICAO/IATA codes, headquarter location, etc. tags: - operators responses: '200': description: OK content: application/json; charset=UTF-8: schema: allOf: - type: object properties: icao: type: string nullable: true description: The operator's ICAO code. iata: type: string nullable: true description: The operator's IATA code. callsign: type: string nullable: true description: | The operator's ICAO telephony name (callsign) used with air traffic control. name: type: string description: The operator's name. Typically the legal business name. country: type: string nullable: true description: Country where operator is headquartered. location: type: string nullable: true description: | Potentially a more specific location where the operator is based. May specify city, state, province, etc. phone: type: string nullable: true description: Public phone number for the operator. shortname: type: string nullable: true description: | Shorter version of the operator's name. Typically the "doing business as" name, when different than "name." url: type: string nullable: true description: URL of operator's website. wiki_url: type: string nullable: true description: URL of operator's Wikipedia page. required: - icao - iata - callsign - name - country - location - phone - shortname - url - wiki_url - type: object properties: alternatives: type: array description: | An array of other possible operator matches items: type: object properties: icao: type: string nullable: true description: The operator's ICAO code. iata: type: string nullable: true description: The operator's IATA code. callsign: type: string nullable: true description: | The operator's ICAO telephony name (callsign) used with air traffic control. name: type: string description: The operator's name. Typically the legal business name. country: type: string nullable: true description: Country where operator is headquartered. location: type: string nullable: true description: | Potentially a more specific location where the operator is based. May specify city, state, province, etc. phone: type: string nullable: true description: Public phone number for the operator. shortname: type: string nullable: true description: | Shorter version of the operator's name. Typically the "doing business as" name, when different than "name." url: type: string nullable: true description: URL of operator's website. wiki_url: type: string nullable: true description: URL of operator's Wikipedia page. required: - icao - iata - callsign - name - country - location - phone - shortname - url - wiki_url '400': description: Incorrect parameter (id). Id must be a valid operator code and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: No such operator exists. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/operators/{id}/canonical': parameters: - name: id in: path required: true description: | The ICAO or IATA identifier for an operator. The use of ICAO code is strongly preferred. In the case of non-unique IATA codes the operator with the lexicographically first ICAO code will be returned. schema: type: string example: UAL - name: country_code in: query description: | An ISO 3166-1 alpha-2 country code. schema: type: string example: US get: operationId: get_operators_canonical summary: Get the canonical code of an operator for API usage. description: | Returns all possible matches for a given operator code (ICAO or IATA). An optional country code can be provided to refine ambiguous IATA codes to a single result. The country code should represent a country the operator operates within. tags: - operators responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: operators: type: array items: title: CanonicalOperator type: object properties: id: type: string description: Operator id for use in the API id_type: type: string description: Operator id type enum: - icao - iata required: - id - id_type required: - operators '400': description: | Incorrect parameter (id or country_code). Id must be a valid operator code and cannot be empty. Country code must represent a country the operator operates within. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: No such operator exists. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/operators/{id}/flights': parameters: - name: id in: path required: true description: | The ICAO or IATA identifier for an operator. The use of ICAO code is strongly preferred. In the case of non-unique IATA codes the operator with the lexicographically first ICAO code will be returned. schema: type: string example: UAL - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string get: operationId: get_operator_flights summary: Get all of an operator's flights description: | Returns all recent and upcoming flights for this operator. Behaviour for optional start and end dates for each type returned (`scheduled`, `arrivals`, `enroute`) match the behaviour in their corresponding endpoints. tags: - operators responses: '200': description: Operator's flights. content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 scheduled: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in arrivals: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in enroute: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - scheduled - arrivals - enroute '400': description: Incorrect parameter (id). Id must be a valid operator code and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: No such operator exists. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/operators/{id}/flights/scheduled': parameters: - name: id in: path required: true description: | The ICAO or IATA identifier for an operator. The use of ICAO code is strongly preferred. In the case of non-unique IATA codes the operator with the lexicographically first ICAO code will be returned. schema: type: string example: UAL - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string get: operationId: get_operator_flights_scheduled summary: Get scheduled flights description: | Returns flights for this operator that are scheduled to depart or have recently been cancelled, ordered by `estimated_off` (or `scheduled_off` if `estimated_off` is missing) ascending. The optional start and end parameters will be compared against `scheduled_off` to limit the flights returned. If start is not specified, flights with a `scheduled_off` or cancellation time no further than two hours into the past will be returned. If end is not specified, there is no guaranteed bound for how far in the future scheduled flights will be returned (it will typically be around 48 hours in the future for commercial flights, though). tags: - operators responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 scheduled: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - scheduled '400': description: Incorrect parameter (id). Id must be a valid operator code and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: No such operator exists. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/operators/{id}/flights/arrivals': parameters: - name: id in: path required: true description: | The ICAO or IATA identifier for an operator. The use of ICAO code is strongly preferred. In the case of non-unique IATA codes the operator with the lexicographically first ICAO code will be returned. schema: type: string example: UAL - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string get: operationId: get_operator_flights_arrived summary: Get arrived flights description: | Returns flights for this operator that have departed and subsequently arrived, ordered by `actual_on` descending. The optional start and end parameters will be compared against `actual_on` to limit the flights returned. The start parameter's default value is 24 hours before the current time. The end parameter's default value is the current time. tags: - operators responses: '200': description: Arrived flights. content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 arrivals: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - arrivals '400': description: Incorrect parameter (id). Id must be a valid operator code and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: No such operator exists. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/operators/{id}/flights/enroute': parameters: - name: id in: path required: true description: | The ICAO or IATA identifier for an operator. The use of ICAO code is strongly preferred. In the case of non-unique IATA codes the operator with the lexicographically first ICAO code will be returned. schema: type: string example: UAL - name: start in: query description: | The starting date range for flight results. The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - name: end in: query description: | The ending date range for flight results. The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must be no further than 10 days in the past and 2 days in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string get: operationId: get_operator_flights_enroute summary: Get en route flights description: | Returns flights for this operator that have departed and are currently en route, ordered by `estimated_on` ascending. The optional start and end parameters will be compared against `estimated_on` to limit the flights returned. The start parameter's default value is 48 hours before the current time (this accounts for delayed flights). There is no default end bound. tags: - operators responses: '200': description: En route flights. content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 enroute: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - enroute '400': description: Incorrect parameter (id). Id must be a valid operator code and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: No such operator exists. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/operators/{id}/flights/counts': parameters: - name: id in: path required: true description: | The ICAO or IATA identifier for an operator. The use of ICAO code is strongly preferred. In the case of non-unique IATA codes the operator with the lexicographically first ICAO code will be returned. schema: type: string example: UAL get: operationId: get_operator_flights_count summary: Get flight counts for operator description: | Returns counts of both airborne and recently operated flights for operator. tags: - operators responses: '200': description: OK content: application/json; charset=UTF-8: schema: title: OperatorFlightCounts type: object properties: airborne: type: integer minimum: 0 description: The number of currently airborne flights for this operator. flights_last_24_hours: type: integer minimum: 0 description: | The number of flights departed in the last 24 hours for this operator, including airborne flights. required: - airborne - flights_last_24_hours '400': description: Incorrect parameter (id). Id must be a valid operator code and cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: No such operator exists. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status /alerts: get: operationId: get_all_alerts summary: Get all configured alerts description: | Returns all configured alerts for the FlightAware account (this includes alerts configured through other means by the FlightAware user owning the AeroAPI account like FlightAware's website or mobile apps). tags: - alerts parameters: - in: query name: max_pages description: | Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. Defaults to 0, meaning no maximum is set. Set this parameter if your call is timing out (most likely due to a high number of alerts). schema: type: integer default: 0 minimum: 0 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: List of all alerts. content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 alerts: type: array items: allOf: - type: object properties: id: type: integer description: 'Unique ID for alert, can be used to update or delete alert.' description: type: string description: | Server-generated textual description of alert. May include carrier, flight number, origin, destination, etc. - type: object properties: ident: type: string nullable: true description: | Ident to alert on. This value may be modified based on codeshare resolution. If that occurs, the originally provided ident will be preserved in the user_ident field. - type: object properties: ident_icao: type: string nullable: true description: | ICAO ident to alert on ident_iata: type: string nullable: true description: | IATA ident to alert on - type: object properties: origin: type: string nullable: true description: 'Origin airport ICAO, IATA, or LID code to alert on.' - type: object properties: origin_icao: type: string nullable: true description: Origin airport ICAO code to alert on. origin_iata: type: string nullable: true description: Origin airport IATA code to alert on. origin_lid: type: string nullable: true description: Origin airport LID code to alert on. - type: object properties: destination: type: string nullable: true description: 'Destination airport ICAO, IATA, or LID code to alert on.' - type: object properties: destination_icao: type: string nullable: true description: Destination airport ICAO code to alert on. destination_iata: type: string nullable: true description: Destination airport IATA code to alert on. destination_lid: type: string nullable: true description: Destination airport LID code to alert on. - type: object properties: aircraft_type: type: string nullable: true description: Aircraft type ICAO code to alert on. - type: object properties: created: type: string format: date-time description: Time that the alert was created. example: '2021-12-31T19:59:59Z' changed: type: string format: date-time description: Time that the alert was last modified. example: '2021-12-31T19:59:59Z' - type: object properties: start: type: string nullable: true format: date description: | Start date of alert. Should be in departure airport's timezone. end: type: string nullable: true format: date description: | End date of alert (inclusive). Should be in departure airport's timezone. - type: object properties: user_ident: type: string nullable: true description: Originally specified ident. - type: object properties: eta: type: integer description: | How many minutes before a flight's ETA that an alert should be delivered. Alerts will only be delivered after the flight has been in the air for at least 15 minutes. Set to 0 to disable. default: 0 impending_arrival: type: array default: null nullable: true items: type: integer description: | List of minutes before a flight's arrival time that alerts should be delivered. Limited to 15 minutes after actual departure and available throughout the duration of the flight. No more than 10 impending arrival alerts can be configured for an individual flight. By default, this field is set to null and when set to either null or an empty array, this feature will not be configured for the alert. example: - 5 - 10 - 15 impending_departure: type: array default: null nullable: true items: type: integer description: | List of minutes before a flight's departure time that alerts should be delivered. Limited to 60 minutes prior to estimated departure until actual departure, implying a valid range of 60 - 5 minutes. No more than 10 impending departure alerts can be configured for an individual flight. By default, this field is set to null and when set to either null or an empty array, this feature will not be configured for the alert. example: - 5 - 10 - 15 events: type: object properties: arrival: type: boolean description: | Whether alerts should be delivered on arrival. FlightAware Global customers will also receive \"taxi stop\" Ready To Taxi™ alerts unless they've opted out. default: false cancelled: type: boolean description: | Whether alerts should be delivered on cancellation by the airline default: false departure: type: boolean description: | Whether alerts should be delivered on departure. FlightAware Global customers will also receive \"power on\" and \"taxi start\" Ready To Taxi™ alerts unless they've opted out. default: false diverted: type: boolean description: Whether alerts should be delivered on diversion default: false filed: type: boolean description: Whether alerts should be delivered on filing default: false out: type: boolean description: Whether alerts should be delivered when aircraft leaves departure gate default: false 'off': type: boolean description: Whether alerts should be delivered when aircraft leaves the runway default: false 'on': type: boolean description: Whether alerts should be delivered when aircraft touches down on runway default: false in: type: boolean description: Whether alerts should be delivered when aircraft enters arrival gate default: false hold_start: type: boolean description: Whether alerts should be delivered on start datetime of hold detection default: false hold_end: type: boolean description: | Whether alerts should be delivered on end datetime of hold exit (will be null for hold_entry event) default: false required: - arrival - cancelled - departure - diverted - filed - out - 'off' - 'on' - in - hold_start - hold_end target_url: type: string nullable: true description: | Alert specific URL to deliver to. If null, then the alert will be delivered to the configured account-wide alert URL target. - type: object properties: enabled: type: boolean description: Whether alert is enabled. required: - id - description - ident - origin - destination - aircraft_type - created - changed - start - end - user_ident - eta - events - target_url - enabled required: - alerts post: operationId: create_alert summary: Create new alert description: | Create a new AeroAPI flight alert. When the alert is triggered, a callback mechanism will be used to notify the address set via the /alerts/endpoint endpoint. Each callback will be charged as a query and count towards usage for the AeroAPI key that created the alert. If this key is disabled or removed, the alert will no longer be available. If a target_url is provided, then this specific alert will be delivered to that address regardless of the adress set via the /alerts/endpoint endpoint. Creating more than 50 duplicate alerts with the exact same configuration will result in a 400 error. tags: - alerts requestBody: description: Alert configuration structure content: application/json; charset=UTF-8: schema: allOf: - type: object properties: ident: type: string nullable: true description: | Ident to alert on. This value may be modified based on codeshare resolution. If that occurs, the originally provided ident will be preserved in the user_ident field. - type: object properties: origin: type: string nullable: true description: 'Origin airport ICAO, IATA, or LID code to alert on.' - type: object properties: destination: type: string nullable: true description: 'Destination airport ICAO, IATA, or LID code to alert on.' - type: object properties: aircraft_type: type: string nullable: true description: Aircraft type ICAO code to alert on. - type: object properties: start: type: string nullable: true format: date description: | Start date of alert. Should be in departure airport's timezone. end: type: string nullable: true format: date description: | End date of alert (inclusive). Should be in departure airport's timezone. - type: object properties: max_weekly: type: integer description: | Reject the new alert if the estimated number of triggered alerts per week based on historical flight trends would exceed this value. The threshold only considers alerts triggered by this alert config (it is not a total for all previously configured alerts). Check is only applied at alert creation/modification, and does and does not prevent alerts from being delivered even if they exceed the given amount. If your alert request is rejected, consider adding additional filter criteria for the alert creation to further refine the config. If max_weekly is not specified for a standard customer, we default the max_weekly to 1000. For a premium customer, we default the max_weekly to 4000. - type: object properties: eta: type: integer description: | How many minutes before a flight's ETA that an alert should be delivered. Alerts will only be delivered after the flight has been in the air for at least 15 minutes. Set to 0 to disable. default: 0 impending_arrival: type: array default: null nullable: true items: type: integer description: | List of minutes before a flight's arrival time that alerts should be delivered. Limited to 15 minutes after actual departure and available throughout the duration of the flight. No more than 10 impending arrival alerts can be configured for an individual flight. By default, this field is set to null and when set to either null or an empty array, this feature will not be configured for the alert. example: - 5 - 10 - 15 impending_departure: type: array default: null nullable: true items: type: integer description: | List of minutes before a flight's departure time that alerts should be delivered. Limited to 60 minutes prior to estimated departure until actual departure, implying a valid range of 60 - 5 minutes. No more than 10 impending departure alerts can be configured for an individual flight. By default, this field is set to null and when set to either null or an empty array, this feature will not be configured for the alert. example: - 5 - 10 - 15 events: type: object properties: arrival: type: boolean description: | Whether alerts should be delivered on arrival. FlightAware Global customers will also receive \"taxi stop\" Ready To Taxi™ alerts unless they've opted out. default: false cancelled: type: boolean description: | Whether alerts should be delivered on cancellation by the airline default: false departure: type: boolean description: | Whether alerts should be delivered on departure. FlightAware Global customers will also receive \"power on\" and \"taxi start\" Ready To Taxi™ alerts unless they've opted out. default: false diverted: type: boolean description: Whether alerts should be delivered on diversion default: false filed: type: boolean description: Whether alerts should be delivered on filing default: false out: type: boolean description: Whether alerts should be delivered when aircraft leaves departure gate default: false 'off': type: boolean description: Whether alerts should be delivered when aircraft leaves the runway default: false 'on': type: boolean description: Whether alerts should be delivered when aircraft touches down on runway default: false in: type: boolean description: Whether alerts should be delivered when aircraft enters arrival gate default: false hold_start: type: boolean description: Whether alerts should be delivered on start datetime of hold detection default: false hold_end: type: boolean description: | Whether alerts should be delivered on end datetime of hold exit (will be null for hold_entry event) default: false required: - arrival - cancelled - departure - diverted - filed - out - 'off' - 'on' - in - hold_start - hold_end target_url: type: string nullable: true description: | Alert specific URL to deliver to. If null, then the alert will be delivered to the configured account-wide alert URL target. required: - id - description - ident - origin - destination - aircraft_type - created - changed - start - end - user_ident - eta - events - target_url responses: '201': description: Alert created successfully headers: Location: description: URL of the newly created alert schema: type: string format: uri-reference '400': description: | Invalid parameters specified (invalid ident, origin, destination, aircraft_type, dates or missing events) or alert configured would trigger more than max_weekly delivered alerts per week. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/alerts/{id}': parameters: - in: path name: id description: The ID of the alert to fetch or update required: true schema: type: integer get: operationId: get_alert summary: Get specific alert description: | Returns the configuration data for an alert with the specified ID. tags: - alerts responses: '200': description: Returns alert configuration structure. content: application/json; charset=UTF-8: schema: allOf: - type: object properties: id: type: integer description: 'Unique ID for alert, can be used to update or delete alert.' description: type: string description: | Server-generated textual description of alert. May include carrier, flight number, origin, destination, etc. - type: object properties: ident: type: string nullable: true description: | Ident to alert on. This value may be modified based on codeshare resolution. If that occurs, the originally provided ident will be preserved in the user_ident field. - type: object properties: ident_icao: type: string nullable: true description: | ICAO ident to alert on ident_iata: type: string nullable: true description: | IATA ident to alert on - type: object properties: origin: type: string nullable: true description: 'Origin airport ICAO, IATA, or LID code to alert on.' - type: object properties: origin_icao: type: string nullable: true description: Origin airport ICAO code to alert on. origin_iata: type: string nullable: true description: Origin airport IATA code to alert on. origin_lid: type: string nullable: true description: Origin airport LID code to alert on. - type: object properties: destination: type: string nullable: true description: 'Destination airport ICAO, IATA, or LID code to alert on.' - type: object properties: destination_icao: type: string nullable: true description: Destination airport ICAO code to alert on. destination_iata: type: string nullable: true description: Destination airport IATA code to alert on. destination_lid: type: string nullable: true description: Destination airport LID code to alert on. - type: object properties: aircraft_type: type: string nullable: true description: Aircraft type ICAO code to alert on. - type: object properties: created: type: string format: date-time description: Time that the alert was created. example: '2021-12-31T19:59:59Z' changed: type: string format: date-time description: Time that the alert was last modified. example: '2021-12-31T19:59:59Z' - type: object properties: start: type: string nullable: true format: date description: | Start date of alert. Should be in departure airport's timezone. end: type: string nullable: true format: date description: | End date of alert (inclusive). Should be in departure airport's timezone. - type: object properties: user_ident: type: string nullable: true description: Originally specified ident. - type: object properties: eta: type: integer description: | How many minutes before a flight's ETA that an alert should be delivered. Alerts will only be delivered after the flight has been in the air for at least 15 minutes. Set to 0 to disable. default: 0 impending_arrival: type: array default: null nullable: true items: type: integer description: | List of minutes before a flight's arrival time that alerts should be delivered. Limited to 15 minutes after actual departure and available throughout the duration of the flight. No more than 10 impending arrival alerts can be configured for an individual flight. By default, this field is set to null and when set to either null or an empty array, this feature will not be configured for the alert. example: - 5 - 10 - 15 impending_departure: type: array default: null nullable: true items: type: integer description: | List of minutes before a flight's departure time that alerts should be delivered. Limited to 60 minutes prior to estimated departure until actual departure, implying a valid range of 60 - 5 minutes. No more than 10 impending departure alerts can be configured for an individual flight. By default, this field is set to null and when set to either null or an empty array, this feature will not be configured for the alert. example: - 5 - 10 - 15 events: type: object properties: arrival: type: boolean description: | Whether alerts should be delivered on arrival. FlightAware Global customers will also receive \"taxi stop\" Ready To Taxi™ alerts unless they've opted out. default: false cancelled: type: boolean description: | Whether alerts should be delivered on cancellation by the airline default: false departure: type: boolean description: | Whether alerts should be delivered on departure. FlightAware Global customers will also receive \"power on\" and \"taxi start\" Ready To Taxi™ alerts unless they've opted out. default: false diverted: type: boolean description: Whether alerts should be delivered on diversion default: false filed: type: boolean description: Whether alerts should be delivered on filing default: false out: type: boolean description: Whether alerts should be delivered when aircraft leaves departure gate default: false 'off': type: boolean description: Whether alerts should be delivered when aircraft leaves the runway default: false 'on': type: boolean description: Whether alerts should be delivered when aircraft touches down on runway default: false in: type: boolean description: Whether alerts should be delivered when aircraft enters arrival gate default: false hold_start: type: boolean description: Whether alerts should be delivered on start datetime of hold detection default: false hold_end: type: boolean description: | Whether alerts should be delivered on end datetime of hold exit (will be null for hold_entry event) default: false required: - arrival - cancelled - departure - diverted - filed - out - 'off' - 'on' - in - hold_start - hold_end target_url: type: string nullable: true description: | Alert specific URL to deliver to. If null, then the alert will be delivered to the configured account-wide alert URL target. - type: object properties: enabled: type: boolean description: Whether alert is enabled. required: - id - description - ident - origin - destination - aircraft_type - created - changed - start - end - user_ident - eta - events - target_url - enabled '404': description: No such alert exists. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status put: operationId: update_alert summary: Modify specific alert description: | Modifies the configuration for an alert with the specified ID. If a target URL address is provided, then the alert will be delivered to that address even if it is different than the default account-wide address set through the alerts/endpoint endpoint. Updating an alert that was created with a different AeroAPI key is possible, but will not change the AeroAPI key that the alert is associated with for usage. tags: - alerts requestBody: description: Alert configuration structure content: application/json; charset=UTF-8: schema: allOf: - allOf: - type: object properties: ident: type: string nullable: true description: | Ident to alert on. This value may be modified based on codeshare resolution. If that occurs, the originally provided ident will be preserved in the user_ident field. - type: object properties: origin: type: string nullable: true description: 'Origin airport ICAO, IATA, or LID code to alert on.' - type: object properties: destination: type: string nullable: true description: 'Destination airport ICAO, IATA, or LID code to alert on.' - type: object properties: aircraft_type: type: string nullable: true description: Aircraft type ICAO code to alert on. - type: object properties: start: type: string nullable: true format: date description: | Start date of alert. Should be in departure airport's timezone. end: type: string nullable: true format: date description: | End date of alert (inclusive). Should be in departure airport's timezone. - type: object properties: max_weekly: type: integer description: | Reject the new alert if the estimated number of triggered alerts per week based on historical flight trends would exceed this value. The threshold only considers alerts triggered by this alert config (it is not a total for all previously configured alerts). Check is only applied at alert creation/modification, and does and does not prevent alerts from being delivered even if they exceed the given amount. If your alert request is rejected, consider adding additional filter criteria for the alert creation to further refine the config. If max_weekly is not specified for a standard customer, we default the max_weekly to 1000. For a premium customer, we default the max_weekly to 4000. - type: object properties: eta: type: integer description: | How many minutes before a flight's ETA that an alert should be delivered. Alerts will only be delivered after the flight has been in the air for at least 15 minutes. Set to 0 to disable. default: 0 impending_arrival: type: array default: null nullable: true items: type: integer description: | List of minutes before a flight's arrival time that alerts should be delivered. Limited to 15 minutes after actual departure and available throughout the duration of the flight. No more than 10 impending arrival alerts can be configured for an individual flight. By default, this field is set to null and when set to either null or an empty array, this feature will not be configured for the alert. example: - 5 - 10 - 15 impending_departure: type: array default: null nullable: true items: type: integer description: | List of minutes before a flight's departure time that alerts should be delivered. Limited to 60 minutes prior to estimated departure until actual departure, implying a valid range of 60 - 5 minutes. No more than 10 impending departure alerts can be configured for an individual flight. By default, this field is set to null and when set to either null or an empty array, this feature will not be configured for the alert. example: - 5 - 10 - 15 events: type: object properties: arrival: type: boolean description: | Whether alerts should be delivered on arrival. FlightAware Global customers will also receive \"taxi stop\" Ready To Taxi™ alerts unless they've opted out. default: false cancelled: type: boolean description: | Whether alerts should be delivered on cancellation by the airline default: false departure: type: boolean description: | Whether alerts should be delivered on departure. FlightAware Global customers will also receive \"power on\" and \"taxi start\" Ready To Taxi™ alerts unless they've opted out. default: false diverted: type: boolean description: Whether alerts should be delivered on diversion default: false filed: type: boolean description: Whether alerts should be delivered on filing default: false out: type: boolean description: Whether alerts should be delivered when aircraft leaves departure gate default: false 'off': type: boolean description: Whether alerts should be delivered when aircraft leaves the runway default: false 'on': type: boolean description: Whether alerts should be delivered when aircraft touches down on runway default: false in: type: boolean description: Whether alerts should be delivered when aircraft enters arrival gate default: false hold_start: type: boolean description: Whether alerts should be delivered on start datetime of hold detection default: false hold_end: type: boolean description: | Whether alerts should be delivered on end datetime of hold exit (will be null for hold_entry event) default: false required: - arrival - cancelled - departure - diverted - filed - out - 'off' - 'on' - in - hold_start - hold_end target_url: type: string nullable: true description: | Alert specific URL to deliver to. If null, then the alert will be delivered to the configured account-wide alert URL target. required: - id - description - ident - origin - destination - aircraft_type - created - changed - start - end - user_ident - eta - events - target_url - type: object properties: enabled: type: boolean description: Whether alert is enabled. required: - enabled responses: '204': description: Alert modified '400': description: | Invalid parameters specified (invalid ident, origin, destination, aircraft_type, dates or missing events) or alert configured would trigger more than max_weekly delivered alerts per week. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '404': description: No such alert exists. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status delete: operationId: delete_alert summary: Delete specific alert description: | Deletes specific alert with given ID tags: - alerts responses: '204': description: Alert deleted. '400': description: Invalid id. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status /alerts/endpoint: get: operationId: get_alerts_endpoint summary: Get configured alert callback URL description: | Returns URL that will be POSTed to for alerts that are delivered via AeroAPI. tags: - alerts responses: '200': description: Returns endpoint URL. content: application/json; charset=UTF-8: schema: type: object description: | Configuration for a URL to which AeroAPI alerts should be delivered via HTTP POST. This is the default account-wide URL that all AeroAPI alerts will be delivered to if the alert does not have a specific alert URL configured for it. properties: url: type: string format: uri nullable: true description: Default account-wide URL that will be POSTed to for flight alerts. required: - url '400': description: Failed to get endpoint or no endpoint set. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status put: operationId: set_alerts_endpoint summary: Set alert callback URL description: | Updates the default URL that will be POSTed to for alerts that are delivered via AeroAPI. This sets the account-wide default URL that all alerts will be delivered to unless the specific alert has a different delivery address configured for it. tags: - alerts requestBody: description: Endpoint URL configuration structure content: application/json; charset=UTF-8: schema: type: object description: | Configuration for a URL to which AeroAPI alerts should be delivered via HTTP POST. This is the default account-wide URL that all AeroAPI alerts will be delivered to if the alert does not have a specific alert URL configured for it. properties: url: type: string format: uri nullable: true description: Default account-wide URL that will be POSTed to for flight alerts. required: - url responses: '204': description: 'Endpoint updated successfully, empty response.' '400': description: 'Bad address, missing hostname, or unsupported address protocol.' content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status callbacks: deliver_alert: registered endpoint: post: requestBody: required: true content: application/json; charset=UTF-8: schema: type: object required: - long_description - short_description - summary - event_code - alert_id - flight properties: long_description: type: string short_description: type: string summary: type: string event_code: type: string enum: - filed - departure - arrival - out - 'off' - 'on' - in - diverted - cancelled - position_only_arrival - position_only_departure - fru_arrival - nonairport_arrival - nonairport_departure - nonairport_filed - minutes_out - power_on - change - impending_departure - hold_entry - hold_exit alert_id: type: integer flight: type: object required: - fa_flight_id properties: fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. ident: type: string description: | Either the operator code (ICAO or IATA) followed by the flight number for the flight (for commercial flights) or the aircraft's tail number (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight. ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | Alternate ident for flight, possibly assigned by ATC. aircraft_type: type: string description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. origin: type: string nullable: true description: | The ICAO, IATA, or LID identifier for the origin airport origin_icao: type: string nullable: true description: | The ICAO identifier for the origin airport origin_iata: type: string nullable: true description: | The IATA identifier for the origin airport origin_lid: type: string nullable: true description: | The LID identifier for the origin airport destination: type: string nullable: true description: | The ICAO, IATA, or LID identifier for the destination airport destination_icao: type: string nullable: true description: | The ICAO identifier for the destination airport destination_iata: type: string nullable: true description: | The IATA identifier for the destination airport destination_lid: type: string nullable: true description: | The LID identifier for the destination airport route: type: string nullable: true description: | The textual description of the flight's route position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. cancelled: type: boolean description: | Flag indicating whether this flight was cancelled. diverted: type: boolean description: | Flag indicating whether this flight was diverted. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). filed_airspeed_kts: type: integer nullable: true description: | Filed IFR airspeed (knots). scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. error: type: string description: | Will contain error information in the event that a problem is encountered assembling the flight details responses: '200': description: Your server returns this code if it accepts the callback delete: operationId: delete_alerts_endpoint summary: Remove and disable default account-wide alert callback URL description: | Remove the default account-wide URL that will be POSTed to for alerts that are not configured with a specific URL. This means that any alerts that are not configured with a specific URL will not be delivered. tags: - alerts responses: '204': description: Endpoint successfully removed. '400': description: Failed to delete endpoint. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/history/flights/{ident}': get: operationId: get_history_flight summary: Get information for a historical flight description: | Returns historical flight info status summary for a registration, ident, or fa_flight_id. If a fa_flight_id is specified then a maximum of 1 flight is returned, unless the flight has been diverted in which case both the original flight and any diversions will be returned with a duplicate fa_flight_id. If a registraion or ident is specified then `start` and `end` date parameters must be specified. The span between `start` and `end` can be up to 7 days. No more than 40 pages may be requested at once. Data is available from now back to 2011-01-01 00:00:00 UTC. The field `inbound_fa_flight_id` will not be populated by this resource. tags: - history parameters: - name: ident in: path description: | The ident, registration, or fa_flight_id to fetch. If using a flight ident, it is highly recommended to specify ICAO flight ident rather than IATA flight ident to avoid ambiguity and unexpected results. Setting the ident_type can also be used to help disambiguate. required: true schema: type: string examples: ident: value: UAL4 reg: value: N123HQ fa_id: value: UAL1234-1234567890-airline-0123 - name: ident_type in: query description: | Type of ident provided in the ident parameter. By default, the passed ident is interpreted as a registration if possible. This parameter can force the ident to be interpreted as a designator instead. schema: type: string enum: - designator - registration - fa_flight_id - name: start in: query description: | The starting date range for flight results, comparing against flights' `scheduled_out` field (or `scheduled_off` if `scheduled_out` is missing). The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must occur on or after 2011-01-01 00:00:00 UTC and cannot be in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' - name: end in: query description: | The ending date range for flight results, comparing against flights' `scheduled_out` field (or `scheduled_off` if `scheduled_out` is missing). The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must occur after 2011-01-01 00:00:00 UTC and cannot be in the future. If using date instead of datetime, the time will default to 00:00:00Z. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 flights: type: array items: allOf: - title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in - title: ForesightPredictionsAvailable type: object properties: foresight_predictions_available: type: boolean description: Indicates if Foresight predictions are available for AeroAPI /foresight endpoints. example: true required: - foresight_predictions_available required: - links - num_pages - flights '400': description: | Incorrect parameter(s). Ident may be missing or not in fa_flight_id format or max_pages may be < 1. Request may be for data before earliest date or more than a 7 day span of results was requested. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/history/flights/{id}/track': get: operationId: get_history_flight_track summary: Get historical information for a flight's track description: | Returns the track for a historical flight as an array of positions. By default only actual airborne positions will be included. Surface positions (aircraft taxi movement at supported airports) can be requested using the query-string parameters. Data is available from now back to 2011-01-01T00:00:00Z. tags: - history parameters: - name: id in: path description: The fa_flight_id to fetch required: true schema: type: string examples: fa_id: value: UAL1234-1234567890-airline-0123 - name: include_estimated_positions in: query description: | Whether to include estimated positions in the flight track. schema: type: boolean default: false - name: include_surface_positions in: query description: | Whether to include surface positions in the flight track and actual_distance computation. schema: type: boolean default: false responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: actual_distance: type: integer nullable: true description: | Distance (in miles) flown as of the latest position point. Will include distance from the origin airport to the first position point. If the flight has been completed, will include the distance from the last position point to the destination airport. If surface positions are enabled, will include distance traveled on the ground as part of the flight track and actual distance flown calculations. Estimated positions present in the flight track will not be part of the actual distance flown calculation. positions: type: array items: title: FlightPosition type: object nullable: true properties: fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware to the flight with this position. This field is only populated by the `/flights/search/positions` (in other cases, the user will have already specified the fa_flight_id). altitude: type: integer description: Aircraft altitude in hundreds of feet altitude_change: type: string nullable: false description: | C when the aircraft is climbing, D when descending, and - when the altitude is being maintained. enum: - C - D - '-' groundspeed: type: integer description: Most recent groundspeed (knots) heading: type: integer nullable: true description: Aircraft heading in degrees (0-360) minimum: 0 maximum: 360 latitude: type: number description: Most recent latitude position longitude: type: number description: Most recent longitude position timestamp: type: string format: date-time description: Time that position was received example: '2021-12-31T19:59:59Z' update_type: type: string nullable: true description: | P=projected, O=oceanic, Z=radar, A=ADS-B, M=multilateration, D=datalink, X=surface and near surface (ADS-B and ASDE-X), S=space-based enum: - P - O - Z - A - M - D - X - S - null required: - fa_flight_id - altitude - altitude_change - groundspeed - heading - latitude - longitude - timestamp - update_type '400': description: | Incorrect parameter(s). Id parameter may not be fa_flight_id format. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/history/flights/{id}/map': get: operationId: get_history_flight_map summary: Get an image of a historical flight's track on a map description: | Returns a historical flight's track as a base64-encoded image. Image can contain a variety of additional data layers beyond just the track. Data is available from now back to 2011-01-01T00:00:00Z. tags: - history parameters: - name: id in: path description: The fa_flight_id to fetch required: true schema: type: string examples: fa_id: value: UAL1234-1234567890-airline-0123 - name: height in: query description: Height of requested image (pixels) schema: type: integer minimum: 1 maximum: 1500 default: 480 - name: width in: query description: Width of requested image (pixels) schema: type: integer minimum: 1 maximum: 1500 default: 640 - name: layer_on in: query description: List of map layers to enable schema: type: array items: type: string enum: - US Cities - european country boundaries - asia country boundaries - major airports - country boundaries - US state boundaries - water - US major roads - radar - track - flights - airports default: - country boundaries - US state boundaries - water - US major roads - radar - track - flights - airports - name: layer_off in: query description: List of map layers to disable schema: type: array items: type: string enum: - US Cities - european country boundaries - asia country boundaries - major airports - country boundaries - US state boundaries - water - US major roads - radar - track - flights - airports default: - US Cities - european country boundaries - asia country boundaries - major airports - name: show_data_block in: query description: | Whether a textual caption containing the ident, type, heading, altitude, origin, and destination should be displayed by the flight's position. schema: type: boolean default: false - name: airports_expand_view in: query description: | Whether to force zoom area to ensure origin/destination airports are visible. Enabling this flag forcefully enables the show_airports flag as well. schema: type: boolean default: false - name: show_airports in: query description: | Whether to show the origin/destination airports for the flight as labeled points on the map. schema: type: boolean default: false - name: bounding_box in: query description: | Manually specify the zoom area of the map using custom bounds. Should be a list of 4 coordinates representing the top, right, bottom, and left sides of the area (in that order). schema: type: array items: type: number minItems: 4 maxItems: 4 responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: map: type: string format: byte required: - map '400': description: | Incorrect parameter (id). Id may be missing or may not be fa_flight_id format. Bounding box corners may be incorrectly defined. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/history/flights/{id}/route': get: operationId: get_history_flight_route summary: Get historical flight's filed route description: | Returns information about a historical flight's filed route including coordinates, names, and types of fixes along the route. Not all flight routes can be successfully decoded by this endpoint, particularly if the flight is not entirely within the continental U.S. airspace, since this function only has access to navaids within that area. If data on a waypoint is missing then the type will be listed as "UNKNOWN". Data is available from now back to 2011-01-01T00:00:00Z. tags: - history parameters: - name: id in: path description: The fa_flight_id to fetch required: true schema: type: string examples: fa_id: value: UAL1234-1234567890-airline-0123 responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: route_distance: nullable: true type: string fixes: type: array items: title: RouteFix type: object properties: name: type: string description: Name of the route fix latitude: type: number nullable: true description: Longitude of the fix in decimal degrees longitude: type: number nullable: true description: Longitude of the fix in decimal degrees distance_from_origin: type: number nullable: true description: | Distance from origin airport stated in statue miles, nautical miles or kilometers depending on FlightAware Account Display Options distance_this_leg: type: number nullable: true description: | Distance from the last point on Route stated in statue miles, nautical miles or kilometers depending on FlightAware Account Display Options distance_to_destination: type: number nullable: true description: | Distance to destination airport stated in statue miles, nautical miles or kilometers depending on FlightAware Account Display Options outbound_course: type: number nullable: true description: | Course in integer degrees from the current point to the next relative to true north type: type: string description: Type of the fix (ie Waypoint / Reporting Point) required: - name - latitude - longitude - distance_from_origin - distance_this_leg - distance_to_destination - outbound_course - type required: - route_distance - fixes '400': description: | Incorrect parameter(s). Id parameter may not be fa_flight_id format. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/history/airports/{id}/flights/arrivals': get: operationId: get_history_airports_flights_arrived summary: Get historical flights that were planned to arrive at an airport description: | Returns all flights that were planned to arrive at a given airport between the requested start and end date, including canceled flights. The span between `start` and `end` date parameters can be up to 1 day (24 hours). No more than 40 pages may be requested at once. Data is available between 2011-01-01 00:00:00 UTC and up to 15 days prior to current datetime. The field `inbound_fa_flight_id` will not be populated by this resource. tags: - history parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: airline in: query description: Airline to filter flights by. Do not provide airline if type is provided. schema: type: string example: UAL - name: type in: query description: Type of flights to return. Do not provide type if airline is provided. schema: type: string enum: - General_Aviation - Airline - name: start in: query description: | The starting date range for flight results, comparing against flight's `scheduled_on` field (which represents the flight’s planned ON the ground time). The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must occur on or after 2011-01-01 00:00:00 UTC and the most recent it can be is 15 days ago from today. If using date instead of datetime, the time will default to 00:00:00Z. required: true schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' - name: end in: query description: | The ending date range for flight results, comparing against flight's `scheduled_on` field (which represents the flight’s planned ON the ground time), The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must occur after 2011-01-01 00:00:00 UTC and the most recent it can be is 15 days ago from today. If using date instead of datetime, the time will default to 00:00:00Z. required: true schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 arrivals: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - arrivals '400': description: | Incorrect parameter(s). Id must be a valid airport code and cannot be empty. Airline and type query params cannot both be set. Start and end date query parameters are required. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/history/airports/{id}/flights/departures': get: operationId: get_history_airports_flights_departed summary: Get historical flights that were planned to depart from an airport description: | Returns all flights that were planned to depart from a given airport between the requested start and end date, including canceled flights. The span between `start` and `end` date parameters can be up to 1 day (24 hours). No more than 40 pages may be requested at once. Data is available between 2011-01-01 00:00:00 UTC and up to 15 days prior to current datetime. The field `inbound_fa_flight_id` will not be populated by this resource. tags: - history parameters: - name: id in: path description: | ICAO, IATA or LID ID of destination airport to fetch. [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. required: true schema: type: string examples: ICAO: value: KIAH IATA: value: IAH - name: airline in: query description: Airline to filter flights by. Do not provide airline if type is provided. schema: type: string example: UAL - name: type in: query description: Type of flights to return. Do not provide type if airline is provided. schema: type: string enum: - General_Aviation - Airline - name: start in: query description: | The starting date range for flight results, comparing against flight's `scheduled_off` field (which represents the flight’s planned OFF the ground time). The format is ISO8601 date or datetime, and the bound is inclusive. Specified start date must occur on or after 2011-01-01 00:00:00 UTC and the most recent it can be is 15 days ago from today. If using date instead of datetime, the time will default to 00:00:00Z. required: true schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' - name: end in: query description: | The ending date range for flight results, comparing against flight's `scheduled_off` field (which represents the flight’s planned OFF the ground time) The format is ISO8601 date or datetime, and the bound is exclusive. Specified end date must occur after 2011-01-01 00:00:00 UTC and the most recent it can be is 15 days ago from today. If using date instead of datetime, the time will default to 00:00:00Z. required: true schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 departures: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - links - num_pages - departures '400': description: | Incorrect parameter(s). Id must be a valid airport code and cannot be empty. Airline and type query params cannot both be set. Start and end date query parameters are required. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/history/aircraft/{registration}/last_flight': get: operationId: get_history_aircraft_last_flight summary: Get aircraft's last known flight description: | Returns flight info status summary for an aircraft's last known flight given its registration. The search is limited to flights flown since January 1, 2011. On a successful response, the body will contain a flights array with only 1 element. If a user queries a registration with it's last known flight before January 1, 2011, an empty flights array will be returned. tags: - history parameters: - name: registration in: path description: The registration number of the aircraft to fetch required: true schema: type: string examples: registration: value: N199UA responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: flights: type: array items: title: BaseFlight type: object properties: ident: type: string description: | Either the operator code followed by the flight number for the flight (for commercial flights) or the aircraft's registration (for general aviation). ident_icao: type: string nullable: true description: | The ICAO operator code followed by the flight number for the flight (for commercial flights) ident_iata: type: string nullable: true description: | The IATA operator code followed by the flight number for the flight (for commercial flights) actual_runway_off: type: string nullable: true description: | Actual departure runway at origin, when known actual_runway_on: type: string nullable: true description: | Actual arrival runway at destination, when known fa_flight_id: type: string description: | Unique identifier assigned by FlightAware for this specific flight. If the flight is diverted, the new leg of the flight will have a duplicate fa_flight_id. operator: type: string nullable: true description: | ICAO code, if exists, of the operator of the flight, otherwise the IATA code operator_icao: type: string nullable: true description: | ICAO code of the operator of the flight. operator_iata: type: string nullable: true description: | IATA code of the operator of the flight. flight_number: type: string nullable: true description: | Bare flight number of the flight. registration: type: string nullable: true description: | Aircraft registration (tail number) of the aircraft, when known. atc_ident: type: string nullable: true description: | The ident of the flight for Air Traffic Control purposes, when known and different than ident. inbound_fa_flight_id: type: string nullable: true description: | Unique identifier assigned by FlightAware for the previous flight of the aircraft serving this flight. codeshares: type: array nullable: true description: | List of any ICAO codeshares operating on this flight. items: type: string codeshares_iata: type: array nullable: true description: | List of any IATA codeshares operating on this flight. items: type: string blocked: type: boolean description: | Flag indicating whether this flight is blocked from public viewing. diverted: type: boolean description: | Flag indicating whether this flight was diverted. cancelled: type: boolean description: | Flag indicating that the flight is no longer being tracked by FlightAware. There are a number of reasons this could happen including cancellation by the airline, but that will not always be the case. position_only: type: boolean description: | Flag indicating that this flight does not have a flight plan, schedule, or other indication of intent available. origin: description: | Information for this flight's origin airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url destination: description: | Information for this flight's destination airport. title: FlightAirportRef type: object nullable: true properties: code: type: string description: | ICAO/IATA/LID code or string indicating the location where tracking of the flight began/ended for position-only flights. nullable: true code_icao: type: string description: | ICAO code nullable: true code_iata: type: string description: | IATA code nullable: true code_lid: type: string description: | LID code nullable: true timezone: type: string description: | Applicable timezone for the airport, in the TZ database format nullable: true example: America/New_York name: type: string description: | Common name of airport nullable: true example: LaGuardia city: type: string description: | Closest city to the airport nullable: true example: New York airport_info_url: type: string nullable: true format: uri-reference description: The URL to more information about the airport. Will be null for position-only flights. required: - code - airport_info_url departure_delay: type: integer nullable: true description: | Departure delay (in seconds) based on either actual or estimated gate departure time. If gate time is unavailable then based on runway departure time. A negative value indicates the flight is early. arrival_delay: type: integer nullable: true description: | Arrival delay (in seconds) based on either actual or estimated gate arrival time. If gate time is unavailable then based on runway arrival time. A negative value indicates the flight is early. filed_ete: type: integer nullable: true description: | Runway-to-runway filed duration (seconds). progress_percent: type: integer nullable: true description: | The percent completion of a flight, based on runway departure/arrival. Null for en route position-only flights. minimum: 0 maximum: 100 status: type: string description: | Human-readable summary of flight status. aircraft_type: type: string nullable: true description: | Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known. route_distance: type: integer nullable: true description: | Planned flight distance (statute miles) based on the filed route. May vary from actual flown distance. filed_airspeed: type: integer nullable: true description: | Filed IFR airspeed (knots). filed_altitude: type: integer nullable: true description: | Filed IFR altitude (100s of feet). route: type: string nullable: true description: | The textual description of the flight's route. baggage_claim: type: string nullable: true description: | Baggage claim location at the destination airport. seats_cabin_business: type: integer nullable: true description: | Number of seats in the business class cabin. seats_cabin_coach: type: integer nullable: true description: | Number of seats in the coach cabin. seats_cabin_first: type: integer nullable: true description: | Number of seats in the first class cabin. gate_origin: type: string nullable: true description: | Departure gate at the origin airport. gate_destination: type: string nullable: true description: | Arrival gate at the destination airport. terminal_origin: type: string nullable: true description: | Departure terminal at the origin airport. terminal_destination: type: string nullable: true description: | Arrival terminal at the destination airport. type: type: string description: | Whether this is a commercial or general aviation flight. enum: - General_Aviation - Airline scheduled_out: type: string format: date-time nullable: true description: | Scheduled gate departure time. example: '2021-12-31T19:59:59Z' estimated_out: type: string format: date-time nullable: true description: | Estimated gate departure time. example: '2021-12-31T19:59:59Z' actual_out: type: string format: date-time nullable: true description: | Actual gate departure time. example: '2021-12-31T19:59:59Z' scheduled_off: type: string format: date-time nullable: true description: | Scheduled runway departure time. example: '2021-12-31T19:59:59Z' estimated_off: type: string format: date-time nullable: true description: | Estimated runway departure time. example: '2021-12-31T19:59:59Z' actual_off: type: string format: date-time nullable: true description: | Actual runway departure time. example: '2021-12-31T19:59:59Z' scheduled_on: type: string format: date-time nullable: true description: | Scheduled runway arrival time. example: '2021-12-31T19:59:59Z' estimated_on: type: string format: date-time nullable: true description: | Estimated runway arrival time. example: '2021-12-31T19:59:59Z' actual_on: type: string format: date-time nullable: true description: | Actual runway arrival time. example: '2021-12-31T19:59:59Z' scheduled_in: type: string format: date-time nullable: true description: | Scheduled gate arrival time. example: '2021-12-31T19:59:59Z' estimated_in: type: string format: date-time nullable: true description: | Estimated gate arrival time. example: '2021-12-31T19:59:59Z' actual_in: type: string format: date-time nullable: true description: | Actual gate arrival time. example: '2021-12-31T19:59:59Z' required: - ident - fa_flight_id - operator - operator_iata - flight_number - registration - atc_ident - inbound_fa_flight_id - codeshares - blocked - diverted - cancelled - position_only - origin - destination - departure_delay - arrival_delay - filed_ete - progress_percent - status - aircraft_type - route_distance - filed_airspeed - filed_altitude - route - baggage_claim - seats_cabin_business - seats_cabin_coach - seats_cabin_first - gate_origin - gate_destination - terminal_origin - terminal_destination - type - scheduled_out - estimated_out - actual_out - scheduled_off - estimated_off - actual_off - scheduled_on - estimated_on - actual_on - scheduled_in - estimated_in - actual_in required: - flights '400': description: | Incorrect parameter. Registration parameter may be missing or not the correct format. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/aircraft/{ident}/blocked': parameters: - name: ident in: path description: The ident or registration of the aircraft required: true schema: type: string examples: ident: value: RPA4854 reg: value: N123HQ get: operationId: get_aircraft_blocked summary: Check if a given ident is blocked description: | Given an aircraft identification, returns true if the aircraft is blocked from public tracking per request from the owner/operator, false if it is not blocked. Any IATA-like idents will be translated to ICAO before lookup. When marked as blocked, no associated flight information will be visible in AeroAPI. FlightAware can provide aircraft owner/operators with secure access to their blocked flight data by [contacting FlightAware for help](https://www.flightaware.com/about/contact). tags: - miscellaneous responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: blocked: type: boolean description: Set to true if the aircraft or ident is blocked from tracking. required: - blocked '400': description: | Incorrect parameter(s). Ident may be missing. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/aircraft/{ident}/owner': parameters: - name: ident in: path description: The ident or registration of the aircraft required: true schema: type: string examples: ident: value: RPA4854 reg: value: N123HQ get: operationId: get_aircraft_owner summary: Get the owner of an aircraft description: | Returns information about the owner of an aircraft, given a flight number or aircraft registration. Data returned includes owner's name, location (typically city and state), and website, if any. Codeshares and alternate idents are automatically searched. Specific owner name information is limited to ownership within the US (sourced by the FAA), Australia, and New Zealand. Note that while this information is updated weekly, there may be a lag in upstream data sources reflecting a change in ownership. tags: - miscellaneous responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: owner: type: object properties: name: type: string description: Name of the registered owner of the aircraft nullable: true location: type: string description: 'City and state of the registered owner. For Australia, state and country. For New Zealand, city and country.' nullable: true location2: type: string description: Street address of the registered owner nullable: true website: type: string description: Website for the owner if available nullable: true '400': description: | Incorrect or missing ident. It should be a flight number or a tail number. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/aircraft/types/{type}': parameters: - in: path name: type description: | The ICAO aircraft type designator for the aircraft to fetch information for required: true schema: type: string example: GALX get: operationId: get_flight_type summary: Get information about an aircraft type description: | Returns information about an aircraft type, given an ICAO aircraft type designator string. Data returned includes the description, type, manufacturer, engine type, and engine count. tags: - miscellaneous responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: manufacturer: type: string description: Manufacturer of aircraft type: type: string description: Type of aircraft description: type: string description: A short description of the aircraft engine_count: type: integer nullable: true description: Number of engines engine_type: type: string nullable: true description: Type of engine '400': description: | Incorrect parameters. Type must be an ICAO aircraft type designator string. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/schedules/{date_start}/{date_end}': parameters: - in: path name: date_start description: | Datetime or date of earliest scheduled flight departure to return. This must be no earlier than 3 months in the past and cannot be more than 3 weeks before date_end. Violating either constraint will result in an error. If using date instead of datetime, then the time will default to 00:00:00Z. required: true schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: path name: date_end description: | Datetime or date of latest scheduled flight departure to return. This must be no later than 1 year in the future and cannot be more than 3 weeks after date_start. Violating either constraint will result in an error. If using date instead of datetime, then the time will default to 00:00:00Z. Thus, the next day's date should be specified if one day of data is desired when using date instead of datetime. required: true schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2021-12-31T19:59:59Z' date: value: '2021-12-31' x-fill-example: 'no' - in: query name: origin description: | Only return flights with this origin airport. ICAO or IATA airport codes can be provided. schema: type: string examples: icao: value: KIAH iata: value: IAH - in: query name: destination description: | Only return flights with this destination airport. ICAO or IATA airport codes can be provided. schema: type: string examples: icao: value: KIAH iata: value: IAH - in: query name: airline description: | Only return flights flown by this carrier. ICAO or IATA carrier codes can be provided. schema: type: string examples: icao: value: UAL iata: value: UA - in: query name: flight_number description: Only return flights with this flight number. schema: type: integer format: int32 - in: query name: include_codeshares description: | Flag indicating whether ticketing codeshares should be returned as well. schema: type: boolean default: true - in: query name: include_regional description: | Flag indicating whether regional codeshares should be returned as well. schema: type: boolean default: true - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string get: operationId: get_schedules_by_date summary: Get scheduled flights description: | Returns scheduled flights that have been published by airlines. These schedules are available for up to three months in the past as well as one year into the future. tags: - miscellaneous responses: '200': description: OK content: application/json; charset=UTF-8: schema: properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 scheduled: type: array items: type: object description: | Information for a scheduled flight. All data is sourced from operator's schedule and may not reflect actual flight information (even after the flight has occurred). properties: ident: type: string description: Flight ident ident_icao: type: string nullable: true description: Flight ident in ICAO format ident_iata: type: string nullable: true description: Flight ident in IATA format actual_ident: type: string nullable: true description: 'If ident is a codeshare flight, this is the primary identifier used by the operator' actual_ident_icao: type: string nullable: true description: 'If ident is a codeshare flight, this is the primary identifier used by the operator in ICAO format' actual_ident_iata: type: string nullable: true description: 'If ident is a codeshare flight, this is the primary identifier used by the operator in IATA format' aircraft_type: type: string description: 'Aircraft type will generally be ICAO code, but IATA code will be given when the ICAO code is not known' scheduled_in: type: string format: date-time description: Scheduled time of arrival at gate example: '2021-12-31T19:59:59Z' scheduled_out: type: string format: date-time description: Scheduled time of departure from gate example: '2021-12-31T19:59:59Z' origin: type: string description: The origin airport's identifier code origin_icao: type: string nullable: true description: The origin airport's ICAO code origin_iata: type: string nullable: true description: The origin airport's IATA code origin_lid: type: string nullable: true description: The origin airport's LID destination: type: string description: The destination airport's identifier code destination_icao: type: string nullable: true description: The destination airport's ICAO code destination_iata: type: string nullable: true description: The destination airport's IATA code destination_lid: type: string nullable: true description: The destination airport's LID fa_flight_id: type: string nullable: true description: | Unique FlightAware ID for flight. Will be null for flights scheduled more than a few days in the future. meal_service: type: string description: Meal service offered on the flight seats_cabin_business: type: integer description: Number of seats in the business class cabin seats_cabin_coach: type: integer description: Number of seats in the coach class cabin seats_cabin_first: type: integer description: Number of seats in the first class cabin required: - ident - ident_icao - ident_iata - actual_ident - actual_ident_icao - actual_ident_iata - aircraft_type - scheduled_in - scheduled_out - origin - origin_icao - origin_iata - origin_lid - destination - destination_icao - destination_iata - destination_lid - fa_flight_id - meal_service - seats_cabin_business - seats_cabin_coach - seats_cabin_first required: - links - num_pages - scheduled '400': description: | Incorrect parameter(s). Date_start and date_end must be within time constraints and ISO 8601 format (ex. 1970-01-01T00:00:00Z). Airline and flight_number, if present, must be valid. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/disruption_counts/{entity_type}': parameters: - in: path name: entity_type required: true description: The type of entity to get disruption statistics for. schema: type: string enum: - airline - origin - destination example: origin - in: query name: time_period description: '' schema: type: string default: today enum: - yesterday - today - tomorrow - plus2days - twoDaysAgo - minus2plus12hrs - next36hrs - week - in: query name: max_pages description: Maximum number of pages to fetch. This is an upper limit and not a guarantee of how many pages will be returned. schema: type: integer default: 1 minimum: 1 - in: query name: cursor description: | Opaque value used to get the next batch of data from a paged collection. schema: type: string get: operationId: get_all_disruption_counts summary: Get global flight disruption statistics description: | Returns overall flight cancellation or delay counts in the specified time period for either all airlines or all airports. #### Cancellation Counts #### A cancelled flight will be counted if their `scheduled_out` (or `scheduled_off` if `scheduled_out` is missing) time falls within the specified time period. Cancellation counts are calculated at query time based on airline partner data and only count airline-confirmed cancellations. #### Delay Counts #### Delays are calculated based on the timezone of the origin airport and per day and are counted based on the specified time period. Delay statistics update cycles are re-calculated every 20 minutes and represent gate arrival delays (estimated or actual) of 15 minutes or more for flights that are not cancelled. If a delayed flight is eventually cancelled, it will be removed from the statistics count in the next update cycle. #### Time Periods #### When `yesterday`, `today`, `tomorrow`, `plus2days`, `twoDaysAgo`, and `week` are used as the time period, the current day is defined by the user's website timezone setting and starts at 08:00 and ends at 08:00 the next day. For example: * `today` will represent a 24-hour span starting at the current day at 08:00. * `yesterday` will represent a 24-hour span starting at 08:00 the previous day and ending at today's 08:00. * `tomorrow` will represent a 24-hour span starting at 08:00 the next day and ending at 08:00 two days from today. * `plus2days` will represent a 24-hour span starting at 08:00 two days from today and ending at 08:00 three days from today. * `twoDaysAgo` will represent a 24-hour span starting at 08:00 two days ago from today and ending at 08:00 the previous day. * `week` will represent the current 2 weeks of data indexed to the most recent Sunday's 08:00 ending at Saturday 08:00, right before 2 weeks from that Sunday. For `minus2plus12hrs` and `next36hrs`, the time period will be centered at the current time defined by the user's website timezone setting: * `minus2plus12hrs` will start capturing statistics 2 hours ago from the current time until 12 hours after the current time. * `next36hrs` will span from the current time until 36 hours from the current time. For delay counts, when using `minus2plus12hrs` and `next36hrs` as the time period, a flight will be counted as delayed within this specified time period if any day encompassed by the time span window, centered around the user's website timezone setting, coincides with the delayed flight's origin airport local timezone day of delay. tags: - miscellaneous responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: links: type: object nullable: true description: | Object containing links to related resources. properties: next: type: string format: uri-reference description: | A link to the next set of records in a collection. required: - next num_pages: description: Number of pages returned type: integer minimum: 1 entities: type: array description: | Per-entity disruption information. items: type: object properties: cancellations: type: integer minimum: 0 description: | The number of cancelled flights for this airline or airport. delays: type: integer minimum: 0 description: | The number of delayed flights for this airline or airport. total: type: integer minimum: 0 description: | Total number of originally scheduled flights for this airline or airport. entity_name: type: string nullable: true description: The name of the airline or airport. entity_id: type: string nullable: true description: Code for the airline or airport. required: - cancellations - delays - total - entity_name - entity_id total_cancellations_national: type: integer minimum: 0 description: Total number of cancelled flights in the US. total_cancellations_worldwide: type: integer minimum: 0 description: Total number of cancelled flights. total_delays_worldwide: type: integer minimum: 0 description: Total number of delayed flights. required: - links - num_pages - entities - total_cancellations_national - total_cancellations_worldwide - total_delays_worldwide '400': description: | Incorrect parameters. Entity_type and time_period must be one of the specified values. Entity_type cannot be empty. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status '/disruption_counts/{entity_type}/{id}': parameters: - in: path name: id required: true description: | The ICAO code for the airline or ID for the airport (ICAO, IATA, or LID) for which you are fetching disruption statistics. For airport ID, [ICAO is highly preferred](/aeroapi/portal/resources#icaoCode) to prevent ambiguity. schema: type: string examples: ICAO: value: KHOU IATA: value: HOU - in: path name: entity_type required: true description: The type of entity to get disruption statistics for. schema: type: string enum: - airline - origin - destination example: origin - in: query name: time_period description: '' schema: type: string default: today enum: - yesterday - today - tomorrow - plus2days - twoDaysAgo - minus2plus12hrs - next36hrs - week get: operationId: get_disruption_counts summary: Get flight disruption statistics for a particular entity description: | Returns flight cancellation or delay counts in the specified time period for a particular airline or airport. #### Cancellation Counts #### A cancelled flight will be counted if their `scheduled_out` (or `scheduled_off` if `scheduled_out` is missing) time falls within the specified time period. Cancellation counts are calculated at query time based on airline partner data and only count airline-confirmed cancellations. #### Delay Counts #### Delays are calculated based on the timezone of the origin airport and per day and are counted based on the specified time period. Delay statistics update cycles are re-calculated every 20 minutes and represent gate arrival delays (estimated or actual) of 15 minutes or more for flights that are not cancelled. If a delayed flight is eventually cancelled, it will be removed from the statistics count in the next update cycle. #### Time Periods #### When `yesterday`, `today`, `tomorrow`, `plus2days`, `twoDaysAgo`, and `week` are used as the time period, the current day is defined by the user's website timezone setting and starts at 08:00 and ends at 08:00 the next day. For example: * `today` will represent a 24-hour span starting at the current day at 08:00. * `yesterday` will represent a 24-hour span starting at 08:00 the previous day and ending at today's 08:00. * `tomorrow` will represent a 24-hour span starting at 08:00 the next day and ending at 08:00 two days from today. * `plus2days` will represent a 24-hour span starting at 08:00 two days from today and ending at 08:00 three days from today. * `twoDaysAgo` will represent a 24-hour span starting at 08:00 two days ago from today and ending at 08:00 the previous day. * `week` will represent the current 2 weeks of data indexed to the most recent Sunday's 08:00 ending at Saturday 08:00, right before 2 weeks from that Sunday. For `minus2plus12hrs` and `next36hrs`, the time period will be centered at the current time defined by the user's website timezone setting: * `minus2plus12hrs` will start capturing statistics 2 hours ago from the current time until 12 hours after the current time. * `next36hrs` will span from the current time until 36 hours from the current time. For delay counts, when using `minus2plus12hrs` and `next36hrs` as the time period, a flight will be counted as delayed within this specified time period if any day encompassed by the time span window, centered around the user's website timezone setting, coincides with the delayed flight's origin airport local timezone day of delay. tags: - miscellaneous responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: cancellations: type: integer minimum: 0 description: | The number of cancelled flights for this airline or airport. delays: type: integer minimum: 0 description: | The number of delayed flights for this airline or airport. total: type: integer minimum: 0 description: | Total number of originally scheduled flights for this airline or airport. entity_name: type: string nullable: true description: The name of the airline or airport. entity_id: type: string nullable: true description: Code for the airline or airport. required: - cancellations - delays - total - entity_name - entity_id '400': description: | Incorrect parameters. Entity_type and time_period must be one of the specified values. Entity_type cannot be empty. id must be a valid operator or airport code. content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status /account/usage: get: operationId: get_account_usage summary: Get AeroAPI usage statistics for account description: | Returns usage statistics for your AeroAPI account. Can be filtered by key and date range. Data per account is updated every 10 minutes. tags: - account parameters: - in: query name: start description: | Datetime or date to start gathering usage data from. If left blank, will default to 1 year into the past. Has a maximum value of 1 year into the past. If using date instead of datetime, then the time will default to 00:00:00Z. Thus, the next day's date should be specified if one day of data is desired when using date instead of datetime. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2023-12-31T19:59:59Z' date: value: '2023-12-31' x-fill-example: 'no' - in: query name: end description: | Datetime or date to end gathering usage data from. If left blank, will default to the current time. Has a maximum value of 1 year into the past If using date instead of datetime, then the time will default to 00:00:00Z. Thus, the next day's date should be specified if one day of data is desired when using date instead of datetime. schema: type: string oneOf: - format: date-time - format: date examples: datetime: value: '2023-12-31T19:59:59Z' date: value: '2023-12-31' x-fill-example: 'no' - in: query name: all_keys description: | Flag to determine which key(s) to get usage data for. If False, data for the key that made the request will be retrieved. If True, data for all keys associated with the account will be retrieved. schema: type: boolean default: false responses: '200': description: OK content: application/json; charset=UTF-8: schema: type: object properties: total_calls: type: integer description: | Total number of calls across all resources total_pages: type: integer description: | Total number of pages retrieved across all resources total_cost: type: number description: | Total cost for all calls made across all resources. Does not include volume discounting total_discount_cost: type: number description: | Total cost across all resources including volume discounting. (Total cost minus discount) total_successful_calls: type: integer description: | Total number of successful calls across all resources total_failed_calls: type: integer description: | Total number of failed calls across all resources resource_details: type: array items: type: object properties: operation: type: string description: | Name of the operation total_resource_calls: type: integer description: | Total number of calls made for this resource num_pages: type: integer description: | Total number of pages retrieved for this resource resource_cost: type: number description: | Total cost for all calls made to this resource. Does not include volume discounting successful_resource_calls: type: integer description: | Total number of successful calls for this resource failed_resource_calls: type: integer description: | Total number of failed calls for this resource required: - operation - total_resource_calls - num_pages - resource_cost - successful_resource_calls - failed_resource_calls description: | Resource specific information required: - total_calls - total_pages - total_cost - total_discount_cost - total_successful_calls - total_failed_calls - resource_details '400': description: | Incorrect parameter(s). content: application/json; charset=UTF-8: schema: title: Error type: object properties: title: type: string description: Short summary of the type of error encountered. reason: type: string description: Error type name directly from the backend. detail: type: string description: | More detailed description of the error, possibly including information about specific invalid fields or remediation steps. status: type: integer description: The HTTP response code returned as part of the error. required: - title - reason - detail - status