Airport Tracker/Info

FlightXML 1.0 Documentation

Index

Overview

About

This document contains everything you should need to know to create a fully functional
application using FlightAware's FlightXML 1.0 API. Every function available is documented
as well as the array result for that query. Additionally, code examples in various languages
are provided to make the process as easy as possible.

FlightXML 1.0 uses SOAP/WSDL to easily integrate into new or existing applications using
any modern development platform. Applications should fetch the FlightXML 1.0 WSDL,
parse and cache the result, and then make queries as necessary by submitting SOAP
requests directly to FlightAware with your FlightAware-supplied FlightXML key.

In order to best support our legacy users that are already using
FlightXML 1.0 in production applications, FlightAware has
officially frozen the feature set that is currently offered by its WSDL.

However, FlightXML 2.0 has been officially released for general
availability and offers a number of new functions. When possible,
it is strongly recommended that newly developed applications be
designed against FlightXML 2.0 instead of 1.0, although FlightAware
will continue to maintain the FlightXML 1.0 infrastructure for the
forseeable future.

Authentication

To access FlightXML 1.0, all requests must include a username and FlightXML Key (don't have one?).
This data is transmitted via basic HTTP Authentication methods that encode user:key in base64 and send the data
to the FlightXML server as the "Authorization" header as part of the HTTP request.

Most programming languages and HTTP/SOAP/XML/WSDL packages allow you to specify your username and password as an argument
for the request so that the authentication is transparent to your application as it makes requests.

Web Services / WSDL

Although you can read the WSDL and generate SOAP queries manually, it is recommended that you develop your
applications to automatically parse the WSDL and populate your application namespace with the FlightXML
functions. Additionally, it is strongly suggested that you ensure that your applications cache the WSDL
file so that it is not necessary to fetch and parse the WSDL for every request or instance of your
application. This will vastly improve the performance and efficiency of your application.

The FlightXML 1.0 WSDL uses the "RPC/Encoded" method for encoding SOAP requests and responses. This is a
widely understood method that has a broad level of compatiblity with SOAP clients from numerous languages.
However, more recent SOAP industry standards dictate that the newer "Document/Literal" method should be used for
SOAP requests and responses. Users that have a need or preference to using this newer method are encouraged
to develop against FlightXML 2.0 instead.

FlightInfo

FlightInfo returns information about flights for a specific tail number (e.g., N12345) or ICAO airline and flight
number (e.g., SWA2558) and the maximum number of flights to be returned. Flight information will be returned from newest to old
est with the oldest not being more than 3-4 days in the past.

Times are in integer seconds-since-1970 (UNIX epoch) time, except for estimated time enroute, which is in hours and minutes.

InFlightInfo

InFlightInfo looks up a specific tail number (e.g., N12345) or ICAO airline and flight number (e.g., SWA2558)
and returns current position/direction/speed information. It is only useful for airborne flights.

GetLastTrack

GetLastTrack looks up a flight by specific tail number (e.g., N12345) or ICAO airline and flight number (e.g., SWA2558). It returns the track log from the current IFR flight or, if the aircraft is not airborne, the most recent IFR flight. It returns an array of positions, with each including the timestamp, longitude, latitude groundspeed, altitude, altitudestatus, updatetype, and altitudechange. Altitude is in hundreds of feet or Flight Level where appropriate, see http://flightaware.com/about/faq.rvt#flightLevel. Also included altitude status, update type, and altitude change

Altitude status is 'C' when the flight is more than 200 feet away from its ATC-assigned altitude. (For example, the aircraft is transitioning to its assigned altitude.) Altitude change is 'C' if the aircraft is climbing (compared to the previous position reported), 'D' for descending, and empty if it is level. This happens for VFR flights with flight following, among other things. Timestamp is integer seconds-since-1970.

SearchCount

Scheduled

Scheduled returns information about scheduled flights (technically, filed IFR flights) for a specified airport and a maximum number of flights to be returned. Scheduled flights are returned from soonest to furthest in the future to depart.

Departed

Departed returns information about already departed flights for a specified airport and maximum number of flights to be returned. Departed flights are returned in order from most recently to least recently departed.

Enroute

Enroute returns information about flights already in the air for the specified airport and maximum number of flights to be returned. Enroute flights are returned from soonest estimated arrival to least soon estimated arrival.

ZipcodeInfo

AirportInfo

AirportInfo returns information about an airport given an ICAO airport code such as KLAX, KSFO, KORD, KIAH, O07, etc. Data returned includes name (Houston Intercontinental Airport), location (typically city and state), latitude and longitude.

RoutesBetweenAirports

RoutesBetweenAirports returns information about assigned IFR routings between two airports. For each known routing, the route, number of times that route has been assigned and the filed altitude are returned.

countAirportOperations

Given an airport, returns integer values on the number of aircraft scheduled or actually en route or departing from the airport. Scheduled arrival is a non-airborne flight that is scheduled to the airport in question.

LatLongsToHeading

Given two latitudes and longitudes, lat1 lon1 lat2 and lon2, respectively, calculate and return the initial compass heading (where 360 is North) from position one to position two. Quite accurate for relatively short distances but since it assumes the earth is a sphere rather than on irregular oblate sphereoid may be inaccurate for flights around a good chunk of the world, etc.

MapFlight_Beta

This function will return a base64 encoded GIF (with the height and width as specified in pixels) of the most recent
(past or current) flight of a specified ident. This service is in beta. Future versions will allow viewing of past
flights, configuring nexrad, and configuring zoom.