BYTETOOLS

airportsapi

Free airport reference API with no key: resolve an ICAO code to the airport's official name and website URL. Tested curl example and live response included.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-21

What is the airportsapi?

airportsapi is a free, key-free lookup that resolves an ICAO airport code to the airport's official name and website URL. It is a small reference dataset rather than a live operational feed, and it returns the date each record was last refreshed.

There is a recurring gap in aviation tooling: you have an ICAO code and you want to link a passenger to the airport's own site for parking, terminal maps or live boards. Comprehensive aviation databases charge for that, and scraping is fragile. This service answers it in one request with the official name in its local language — EDDF returns "Flughafen Frankfurt Main" rather than an anglicised form.

Be honest with yourself about the freshness. Every record carries a `last_update` timestamp and many of them read 2017, so this is a static reference set rather than a maintained register. For airport names and primary websites that ages well, because neither changes often; for anything operational it is the wrong source entirely. Verify a returned URL before presenting it as a link if the record is old.

Quick facts

Base URL
https://airport-web.appspot.com/api
Authentication
No key or account required for the lookup endpoints.
Rate limit
No published quota. The dataset is static, so cache aggressively rather than querying per page view.
Pricing
Free.
CORS
Not enabled — call it from your server
Official docs
Read the docs

How to use the airportsapi

Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.

1. Look up an airport's name and website by ICAO code

GET https://airport-web.appspot.com/api/airports/EDDF

curl
curl 'https://airport-web.appspot.com/api/airports/EDDF'
JavaScript (fetch)
const res = await fetch("https://airport-web.appspot.com/api/airports/EDDF");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://airport-web.appspot.com/api/airports/EDDF", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
{
  "ICAO": "EDDF",
  "last_update": "Fri, 28 Jul 2017 14:18:23 GMT",
  "name": "Flughafen Frankfurt Main",
  "url": "https://www.frankfurt-airport.com/"
}

Parameters

ParameterTypeRequiredDescription
icaopathRequiredFour-letter ICAO airport code. `/airports/{icao}` returns the record. EDDF

Response fields

ICAOstring
The code that was resolved, echoed back in uppercase.
namestring
Official airport name in its local language rather than an anglicised version.
urlstring
The airport's official website. Verify before linking if `last_update` is old.
last_updatestring
When this record was last refreshed, as an RFC 1123 date string. Many records date from 2017.

What you can build with the airportsapi

  • Show an airport's proper name next to a flight code
  • Link passengers to the official airport site for terminal information
  • Enrich a schedule or booking export with readable airport names
  • Seed a local airport reference table from a small dataset
  • Display local-language airport names in a multilingual interface

Common errors and how to fix them

404 for a valid ICAO code

The airport is not in this dataset.

Fix: Coverage skews towards larger commercial airports. Fall back to a fuller aeronautical database when a code is missing.

The website URL is dead

`last_update` shows the record has not been refreshed in years.

Fix: Check `last_update` before presenting the URL as a link, and validate it server-side if it will be shown to users.

IATA codes are rejected

The endpoint takes ICAO codes only.

Fix: Convert first — most large US airports are the IATA code with a K prefix, but there is no universal rule, so use a mapping table.

No coordinates in the response

This dataset holds names and websites, not geometry.

Fix: Pair it with an airport coordinate lookup if you also need to place the airport on a map.

airportsapi — frequently asked questions

Is this airport API free?

Yes, free with no key or account. It is a small static reference dataset served from an App Engine instance rather than a maintained commercial product.

How current is the data?

Not very. Every record carries a `last_update` field and many read 2017. Airport names and primary websites age slowly, so it remains useful for reference — but never treat it as an operational source.

Does it accept IATA codes?

No, ICAO four-letter codes only. IATA and ICAO codes are not interchangeable and there is no reliable formula to convert between them, so you need a mapping table if your data uses IATA.

Does it return coordinates?

No. The record is the airport's name, website and refresh date. For coordinates use a dedicated airport location lookup alongside it.

Tools that pair with this API

airportsapi is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.