Find Airports and Cities for Flight Search

View all Skyscanner Flights & Travel Search endpoints →

Autocomplete an airport or city name with required query and optional market/locale codes. The observed response is an object with places; suggestions include skyId, entityId, iataCode, name, cityName, countryName, placeType and coordinates.lat/lng. London returned a CITY suggestion with skyId LOND and entityId 27544008, plus AIRPORT suggestions such as London Heathrow with skyId LHR and entityId 95565050. Use the selected suggestion's paired identifiers in subsequent flight searches, and distinguish city-wide selections from individual airports. iataCode can be an empty string even for a valid airport. A deliberately nonexistent query returned HTTP 200 with places:[], so an empty list is a clean no-match result, not evidence of an outage. Suggestion order and count can change.

API Features

Airport and city disambiguation placeType distinguishes CITY and AIRPORT suggestions, allowing travelers to select a city area or a specific departure airport.
Flight-search identifier pairs Returned skyId/entityId values provide the route identifiers required by the main flight search and origin-based discovery operations.
Country-aware place labels name, cityName and countryName help separate similarly named suggestions in different countries rather than selecting the first text match.
Valid places with blank IATA codes A populated skyId and entityId can coexist with an empty iataCode string; use the returned search identifiers instead of fabricating a code.
Clean autocomplete no-match result The tested nonexistent name returned places:[] with HTTP 200; handle it as no selectable place instead of inventing identifiers.

Live API Demo

GET /api/project/skyscanner/flights-search-airport

API Response (JSON)

{}
curl -X GET 'https://api.opendata-api.com/api/project/skyscanner/flights-search-airport?key=<API_KEY>&query=<query>&market=US&locale=en-US'
📢
Need Help?
If you encounter API issues or need other API requirements, please contact us.
Contact Us

Use Cases

Frequently asked questions

How do skyId, entityId and IATA codes differ?

Use skyId and entityId from the same autocomplete suggestion as the paired identifiers for flight search. iataCode is separate airport or city code information and cannot replace entityId. A city skyId need not be a three-letter code: London returned LOND. Check placeType because city and airport suggestions cover different scopes.

What does HTTP 200 with empty places or a blank IATA code mean?

places:[] means no selectable match; refine the name or region and request again deliberately rather than inventing an ID. A blank iataCode on a populated suggestion is different: retain its skyId/entityId and confirm the place using its name, country and type instead of rejecting it solely for the blank code.

Related operations

Guides

View Subscription Plans →