Airports
4,008 airports with scheduled passenger service, grouped by country, searchable by name, IATA or ICAO code, or city. Source: OurAirports (public domain).
Free
How do I add Airports autocomplete to my app?
Airports is a free AutoSugges reference list of 4,241 items. Query it with your publishable key as the key parameter and the typed text as q, after at least two characters. Results come back pre-ranked from the edge, ten by default, ready for the AutoSugges React, React Native or HTML component.
Try it
Type to search this list live from the AutoSugges edge.
Loading the live demo…
Want this list in your own app? Subscribe to embed it.
Provenance
- What it is
- 4,008 airports with scheduled passenger service, grouped by country, searchable by name, IATA or ICAO code, or city. Source: OurAirports (public domain).
- Source
- OurAirports
- Authority
- Authoritative
- May AutoSugges redistribute it
- Yes
- Attribution required
- No
- Refresh cadence
- Nightly upstream; refreshed deliberately
- Last retrieved
- 2026-09-23
- Availability
- Free
- Reference list or entity dataset
- Reference list
Field schema
4,241 items, across 2 hierarchy levels: country, airport.
- country: 233
- airport: 4,008
| Field | Type | Meaning |
|---|---|---|
| value | string | The canonical, unique value — what a query resolves to. |
| displayValue | string | The locale-resolved label a suggestion renders. |
| description | string, optional | Free-text detail shown beside the item. NAICS uses it for the ancestor breadcrumb; not every dataset sets it. |
| parentSourceId | string, optional | The parent item in the source’s own key space, for a hierarchical dataset. |
| hierarchyLevel | string, optional | Which level of the hierarchy this item sits at. |
| displayOrder | integer | Curated display order, distinct from relevance rank. |
| aliases | string[] | Alternate spellings that resolve to this item. |
| metadata | object | Dataset-specific fields — e.g. NAICS’s `code`/`level`/`trilateral`, or a country’s `alpha2`/`alpha3`/`numeric`. |
A worked item
{
"value": "FBD",
"displayValue": "Fayzabad Airport",
"description": "Fayzabad, Afghanistan",
"aliases": [
"FBD",
"OAFZ",
"Fayzabad"
],
"metadata": {
"iata": "FBD",
"icao": "OAFZ",
"municipality": "Fayzabad",
"type": "small_airport",
"isoRegion": "AF-BDS",
"lat": 37.122148,
"lon": 70.5201
},
"ancestors": [
{
"value": "AF",
"displayValue": "Afghanistan"
}
]
}Query it
/v1/query?key=YOUR_PUBLISHABLE_KEY&q=fayzabadThe publishable key above is a public, browser-safe identifier — never a secret.
Related
Frequently asked questions
- What is in the Airports dataset?
- 4,008 airports with scheduled passenger service, grouped by country, searchable by name, IATA or ICAO code, or city. Source: OurAirports (public domain). It has 4,241 items. Its source is OurAirports. Authority: Authoritative. Licence: Public domain. OurAirports: "All data is released to the Public Domain, and comes with no guarantee of accuracy or fitness for use.". Refresh cadence: Nightly upstream; refreshed deliberately.
- Is the Airports dataset free?
- AutoSugges-published free datasets are never priced on their own — every plan includes all of them. What a plan prices is how many queries you may make, not which free list you may query. A few catalog entries are licensed from a third party or supplied by you, and those carry their own access terms, shown on that dataset's own page.
- How do I query Airports?
- Call GET /v1/query with your publishable key as the key parameter and the typed text as q, or mount the AutoSugges component for React, React Native or HTML. The runtime answers from the edge and never reads a database.
- What is the minimum number of characters before a query runs?
- Two by default. A list owner can change the minimum, but it can never be 1. The client reads the real value from bootstrap and sends no request below it, so do not hardcode it.
- How long does the client wait after typing before it queries?
- 150 milliseconds by default. The value is delivered through bootstrap and a list owner can raise it, so the client uses the policy value rather than a constant.
- What happens when my query quota runs out?
- The runtime returns a structured quota_exceeded response that carries no items and no placeholder suggestions, so exhaustion is never mistaken for no results. Render it from the typed error code and prompt an upgrade.