Flight take-off and landing time &Runway detection based on ADS-B data, More flights and status updates
October 15, 2020
We are continuing to expand capabilities related to analyzing actual flight tracks with reliance on community maintained ADS-B data provided by third-party. Attentive users could have already noticed that for some airports AeroDataBox API has started providing:
- Flight runway data, which we introduced as a response to requests of few users to have some capabilities to help the analysis of actual / expected taxi time to/from the terminal:
Actual flight landing and take-off times.
Actual runway of departure or arrival (the runway from which a flight took-off from or landed at).
This is rather new and you won't normally find this piece of information in other data sources.
- Extra flights and extra flight status updates:
Adding extra flights not normally available on online departure and arrival boards (we started to get more insight on movement of cargo flights, corporate jets, general aviation, etc.).
Live flight status updates for airports without live flight status coverage (limited to actual departure time and status for departing flights and expected and actual time and status for arriving ones).
All these capabilities are based on automated analysis of the actual trajectory of aircraft in the vicinity of this or that airport based on transponder ADS-B data.
The feature is currently in early stage mode, so we are going to increase its precision and enable support for more and more locations in the upcoming weeks. We have this feature currently enabled for the following airports:CYVR, CYYC, EBBR, EDDB, EDDF, EDDH, EDDK, EDDL, EDDM, EDDS, EDDT, EDDV, EDLV, EGCC, EGGD, EGGW, EGHI, EGKK, EGLC, EGLL, EGNX, EGPH, EGSS, EHAM, EHBK, EHEH, EHKD, EHLE, EHRD, EIDW, ENGM, EPKT, GMMN, HECA, KATL, KDFW, KEWR, KJFK, KLAS, KLAX, KLGA, KPHX, KSEA, KSFO, LEMD, LFBD, LFML, LFPG, LGAV, LICJ, LLBG, LMML, LPFR, LPMA, LPPT, LSZH, NZAA, OERK, PANC, PHNL, RCSS, RCTP, RJAA, RJTT, RKSI, SBKP, SBSP, SDAM, SEQM, SPJC, UAAA, UIII, UKBB, UKKK, UNEE, UNNT, UUBW, UUDD, UUEE, VHHH, VIDP, VOBL, VOMM, VTBD, VTBS, WIII, WMKK, YBNA, YMML, YPAD, YPPH, YSSY, ZUCK
Here you can also see statistics on how many flights (in absolute and relatively) had both runway and runway time detected: https://docs.google.com/spreadsheets/d/1536Jo9wJx-HR-8Qy15hBfnQg-M7FlAzIxQwxKWwM00A/edit?usp=sharing
We're also going to update health-check endpoints soon, so you will be able to check which airports has this supplement ADS-B data service operational.
Please be aware of the following limitations:
We unfortunately won't be able this feature available worldwide due to absence of local contributors of ADS-B data to our third-party provider.
This extra data currently not guaranteed to be always available or correct even if airport is considered covered.
Though the precision of the algorithm is rather high when the data quality is reasonable, the algorithm is still heavily reliant on the quality and availability of the external data, which is subject to myriad of factors out of our control (unusual trajectory of the aircraft, transponder peculiarities of an aircraft, individual ADS-B receiver's location, range and operational hours in the vicinity of the airport, overall coverage of the third-party provider).
Naturally, this data will only be available retroactively due to how ADS-B operates. We only will be able to retrieve the data once the aircraft is departed, approaching or arrived. There will be no significant look-ahead.
This way, data may be partially unavailable because, for instance:
- right after take-off an airplane has took an unusual / sharp turn (due to ATC instructions, circuit pattern, weather, evasion maneuver, etc.) over airport with multiple runways located close or unevenly (like, San Francisco or Amsterdam Schiphol) and the system is no longer able unambiguously "guess" the right take-off runway;
- the only local contributor's ADS-B receiver in the vicinity of the airport went down due to network or power problems -> no extra data will be available during this period of time, despite normally it is.
Please feel free to try it and don't hesitate to report any bugs.
Searching for Flight Status by ATC Call-sign, Aircraft Registration or Aircraft 24-bit ICAO Mode-S transponder address
June 17, 2020
We are introducing more capabilities to search for a flight status.
From now on, you can look for individual flight information not only by flight number, but also by ATC call-sign, registration or 24-bit ICAO Mode-S hexadecimal transponder address of the aircraft operating the flight.
New search capabilities are delivered through introducing new endpoints:
Flight by aircraft registration (and date)
Flight by ATC call-sign (and date)
Flight by ICAO 24-bit Mode-S address (and date)
Flight departure dates by aircraft registration (within range)
Flight departure dates by ATC call-sign (within range)
Flight departure dates by ICAO 24-bit Mode-S address (within range)
Behavior, contracts and pricing of each of new endpoints remain the same as for similar endpoints operating based on flight number.
Please feel free to try it and don't hesitate to report any bugs.
Adding USA Live Flights Coverage, Adding Mode-S Transponder Code, COVID-19 Changes, Airport Daily Statistic Routes Update
May 29, 2020
Here are some updates regarding the API made in recent weeks:
USA LIVE FLIGHTS COVERAGE
We have integrated live flight updates for the airports in the USA, which is a huge live flight data coverage expansion (almost 400%). Updates are based on flight plan data and include aircraft registration and model, flight status, scheduled, estimated and/or actual times.
MODE-S TRANSPONDER CODES
We started storing Mode-S Transponder ICAO 24-bit identifier for flights when possible. It's populated either from ADS-B data or from aircraft registration (based on aircrafts database look-up). You can already see this information when requesting our FIDS or Flight Search endpoints.
PARTIAL EXTRA LIVE FLIGHT UPDATES
We're experimenting with analyzing flight trajectories based on ADS-B data to provide more live flight updates based on this. This way you may observe more and more particular flights having updated times and statuses even if airport is not marked as airport having live flight updates.
COVID-19 FLIGHT SCHEDULES
Situation around COVID-19 is unprecedented and it has a dramatic effect on aviation traffic (we observe up to 80-90% traffic decrease in certain areas). We also had to adjust our algorithms extensively to deal with growing degree of ambiguity and incompleteness of incoming information about flights.
The biggest impact is on the flight seasonal schedules. If you check flights scheduled in future, you may notice that information is less reliable than normally due to numerous cancellations made by airlines these days.
But there is a difference between ad-hoc flight cancellation and systematic seasonal schedule change. What's happening these days looks like a great many ad-hoc cancellations which, because of their quantity, seem like legit schedule changes. Airlines say: "we cancel all our flights to because of COVID restrictions", and for us it sounds like a big schedule change. But it's technically a batch of ad-hoc cancellations, just a very big one. It's not a change in pre-planned seasonal schedules, which you see when you poll data from the API with more than few days look-ahead (these flights have "Unknown" status). This data may or may not be augmented with live status data (incl. cancellation status) later. But it may be that many of the flights you see now in schedules will be cancelled while COVID restrictions are in force.
However, even live data is inconsistent this days. Normally when flight is canceled we receive flight with valid "canceled" status. However, these days it's more and more often that flight may just disappear unexpectedly from the list few hours before departure/arrival time and we don't know if it has been canceled or it should never been in scheduled at the first place and we should also remove it as well. It's also possible that canceled flight continues to be reported as planned with no time change even after flight departure/arrival time has lapsed.
LIKELY CANCELLED FLIGHTS
To address this and few more ambiguity issues, "CanceledUncertain" flight status was introduced. This status will be assigned to flights which have been likely cancelled. There is complex technical background behind the assignment mechanisms, but it's essentially based on expectation to receive an update for a flight and failure to do so. Please be advised, that though status is likely to be assigned correctly, there is still a chance that "likely canceled" flight has actually departed/arrived.
AIRPORT DAILY ROUTES STATISTICS ADJUSTMENT
In light of numerous COVID-related cancellations we adjusted airport daily route statistics endpoint to calculate statistics based on flights which actually commenced (canceled and likely canceled flights are now excluded) - this will give much clearer picture over the current situation.
FIDS with Extended Information, Flight Time and Distance
March 18, 2020
There wasn't many updates recently. Due to independent personal circumstances, we can't devote much time to develop AeroDataBox at the moment unfortunately. Nevertheless, there is some new stuff in the API:
FIDS endpoint now has additional query string boolean parameter "withLeg". When set to true, response will contain times of arrival in destination for departing flights, and times of departure from origin for arriving flights, if available. Please note, that response contract will change slightly in this case. Feel free to check this endpoint out in the sand-box ( https://rapidapi.com/squawk7000/api/aerodatabox?endpoint=apiendpoint_3dbf8f9a-22de-4a99-8e7d-e542f6e63e4f ) and review extended documentation ( https://doc.aerodatabox.com/#operation/GetAirportFlights ).
Endpoint for calculating distance and flight-time between airports (by IATA or ICAO codes) is added. It requires a pair of ICAO or IATA codes of airports as input and returns great circle distance and estimated flight time between these airports. Flight time evaluation is based on re-calculating the great circle distance against statistical duration average of multiple flights covered similar distance before. This interpolation approach gives more precise estimate of possible flight time rather than just dividing distance per some constant average speed. Feel free to check these endpoints out in the sand-box:
and review extended documentation:
New Year Updates
December 27, 2019
We have several updates:
[NEW] "Search airports by location" endpoint is added. It allows finding airports situated within a certain radius around location specified. More: https://rapidapi.com/squawk7000/api/aerodatabox?endpoint=apiendpoint_d16d709c-fa01-4be7-87e2-050142c4d24e.
[NEW] "Airports supporting data feed service" health-check & status endpoint is added. It's designed to get a list of ICAO codes of airports for which we have a certain flight data feed service operational at the moment. To get the list, you need to specify which service type you're looking for. FlightSchedules - information about scheduled flight times. FlightLiveUpdates - live flight status and time updates. This may be useful for you to know what is the overall data coverage without need to check each airport feed individually. Calling this endpoint is at all times free. More: https://rapidapi.com/squawk7000/api/aerodatabox?endpoint=apiendpoint_b350b798-40c2-4855-a057-68e4aa31bc9b
[UPD] Both flight status endpoints now have optional query string parameter "withLocation" ("false" by default). If set to "true", API will attempt to fetch real-time positional data of the flight (location, speed, track, altitude) if it's airborne, if it has call-sign mapped (more on this below) and if ADS-B data is available for this flight now. More: https://rapidapi.com/squawk7000/api/aerodatabox?endpoint=apiendpoint_43b1741c-6e96-4a0d-9ffc-6cb81d31b432 and https://rapidapi.com/squawk7000/api/aerodatabox?endpoint=apiendpoint_7bb681a3-45b7-49ca-bb0e-5c18888ab851.
[UPD] "Departures and arrivals (FIDS) by airport ICAO code" endpoint now supports getting departures or arrivals separately. Please review new "direction" parameter. More: https://rapidapi.com/squawk7000/api/aerodatabox?endpoint=apiendpoint_3dbf8f9a-22de-4a99-8e7d-e542f6e63e4f.
[UPD] Live flight data is now generally populated with more passenger-related items: terminal, check-in desks, gate, baggage belt. Presence of this data is subject to availability in the data source.
[UPD] Live flight data is now enriched with real-time ADS-B data more often: much more live flights now have registrations and ATC call-signs mapped once these flights are airborne. There is more to be done on this, though: the main obstacle here, besides obviously limited coverage of AeroDataBox flight data and ADS-B data, is that call-signs and flight numbers don't always match, so these items have to be correlated using different approaches, incl. analyzing routes, aircrafts and flight schedules, TBD.
[UPD] More airports now have schedule and live updates flight data feeds now.
... and also few recommendations:
When specifying any boolean parameter in any endpoint, please use "true" or "false", not "1" and "0", EVEN if RapidAPI example states the opposite. Recent changes in RapidAPI provider dashboard are forcing me to enter "1" or "0" when updating API endpoint documentation. And while it's working perfectly from provider dashboard, it doesn't work from marketplace for some reason.
RapidAPI sometimes generates faulty code-snippets. So, review them carefully before use. Review this discussion recently initiated by our users: https://rapidapi.com/squawk7000/api/aerodatabox/discussions/13111/404-error.
Always check our API website https://aerodatabox.com/ for more documentation. RapidAPI have limitations on what information can be published in marketplace. For instance, they don't support having documentation for response properties.
... and one more remark:
AeroDataBox API project was created few months ago as a proof of concept of a freemium/low-cost API with limited data coverage for smaller projects. Since this little time few pros and cons were observed: we are seeing some demand, but also observing some mis-use. Pricing plans and API usage quotas probably will be reviewed: we want to stay available for smaller projects, but we also cannot handle too many users shooting dozens of requests per second apparently in attempt to download our database in whole :)
Anyway, everything is in active development now, mostly not visible outside. There are much more plans than could possibly be handled, therefore choices will be made to grow only in the most realistic directions. Any help, contributions or suggestions are greatly appreciated. :)
Happy New Year!
Airport Runways and Airport Routes Daily Statistics
October 10, 2019
Few more endpoints were added to the AeroDataBox API:
1) Airport runways by airport ICAO
Runways data was revised and updated for airports currently existing in the database. Therefore, data about heading, surface, width, threshold position, displacement and operation of the runways is available. You can also get runway information (as well as local time) in addition to basic airport information using regular 'Airport by IATA' or 'Airport by ICAO' endpoints, so you don't have shoot two calls.
2) Airport routes daily flights statistics by airport ICAO
This endpoint exposes statistical information for airports where we have static schedules or live flights updates enabled. Statistics is meant to answer following questions:
What are the most popular routes from an airport?
Where I can fly from an airport?
How many daily flights to different destinations from an airport?
Endpoints are now available on RapidAPI with a bit more readable and extensive documentation located here: https://doc.aerodatabox.com
Thanks for using AeroDataBox API!
Flight Status & Schedule, Flight Delay Statistics, FIDS, Airport Delay Index
September 16, 2019
We've been recently busy with adding few more endpoints to the AeroDataBox API. Now you are able to:
Get flight status or schedule for a specific date as well as for the nearest flight;
Get flight delay statistics;
Get departures and arrivals list per airport and within given time range (FIDS);
Get current airport delay statistics (delay index).
In addition, fixed few major bugs in data aggregation, which should increase data quality. And also, many flights with live updates are now having registrations of actual aircrafts operating these flights.
There is currently no limitation on date time ranges you can request the information (no matter how much data is kept in the system, you are currently able to access it all). But, keep in mind, however, that live flights update information is yet available for only few hundred of airports mostly located in Europe. As demand for API will grow, coverage will be increased. Static flight schedule information, however, is available at much bigger extent.
Also I have expanded overall description of the API and detailed documentation, which can be found here: https://aerodatabox.com
Thanks for using AeroDataBox API!