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.
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 'https://airport-web.appspot.com/api/airports/EDDF'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);import requests
res = requests.get("https://airport-web.appspot.com/api/airports/EDDF", timeout=20)
res.raise_for_status()
print(res.json()){
"ICAO": "EDDF",
"last_update": "Fri, 28 Jul 2017 14:18:23 GMT",
"name": "Flughafen Frankfurt Main",
"url": "https://www.frankfurt-airport.com/"
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
icao | path | Required | Four-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
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
URL Encoder
Percent-encode text for URLs instantly. Switch between encodeURIComponent and encodeURI modes, see live output and copy the result. Free URL encoder.
CSV to JSON Converter
Convert CSV to a JSON array of objects online. Header-row detection, comma/semicolon/tab delimiters and pretty-printed output — 100% in your browser.
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.