The Airports Data API is a REST endpoint returning structured records for 41,000+ airports by IATA or ICAO code — coordinates, timezone, elevation, runway count, hub airlines, terminals, and annual passenger traffic. One request returns the complete airport profile.
Fetch airport profiles with traffic statistics, geo coordinates, hub airlines, and logo assets in a single request. No manual data aggregation required.
Annual passenger counts, aircraft movements, and cargo tonnes from official ICAO statistical sources.
Latitude, longitude, elevation in feet, and IANA timezone for every airport.
Know which airlines use each airport as a hub — useful for route planning and carrier data enrichment.
Three logo variants (icon, logo, logo-white) bundled into every airport record — no extra requests needed.
Results sorted by annual passenger count descending — the world's busiest airports always appear first.
Interactive runway layouts, taxiway networks and terminal positions for 5,800+ airports worldwide — served via /v1/airport-diagram.
Live Demo
Real data from the Airports API. Click an airport to see its complete profile.
IATA airport codes, ICAO identifiers, and airline designators are the internal language of aviation — not of passengers. The Airports Data API decodes any IATA or ICAO code into structured location data: airport name, city, country, coordinates, timezone, and elevation. One request per code, no lookup tables required.
Raw booking data
LX 1610
MXP → ZRH
Decoded
Swiss International Air Lines
Star Alliance · ICAO: SWR
/v1/airlinesMilan Malpensa Airport
Milan, Italy · Europe/Rome
/v1/airportsZürich Airport
Zürich, Switzerland · Europe/Zurich
/v1/airportsAirport name
Zürich Airport
City & country
Zürich, Switzerland
Coordinates
47.4647° N, 8.549° E
Timezone
Europe/Zurich
Traffic stats, geo data, hub airlines, and logos — one request.
const res = await fetch(
"https://aviation-api.logostream.dev/v1/airports?iata=LHR",
{ headers: { "x-api-key": "YOUR_API_KEY" } }
);
const { data } = await res.json();
const airport = data[0];
// Core identifiers
console.log(airport.name); // "Heathrow Airport"
console.log(airport.iata); // "LHR"
console.log(airport.icao); // "EGLL"
// Traffic statistics
console.log(airport.passengers); // 79_200_000
console.log(airport.aircraft_movements); // 477_000
console.log(airport.cargo_tonnes); // 1_729_000
// Geo & city
const { city_name, latitude, longitude } = airport.city;
// Country
console.log(airport.country.name); // "United Kingdom"
// Logos
const { icon, logo, logo_white } = airport.logo;
document.querySelector("#airport-logo").src = logo;Everything you need to know about the airport data endpoint.