Discover/skyscanner.com API
live

skyscanner.com APIskyscanner.com

Search Skyscanner flights, airports, and price calendars via API. Get itineraries, booking agent prices, daily/monthly fare grids, and place IDs.

Endpoints
4
Updated
3mo ago
Try it
Search query (city name, airport name, or IATA code)
Locale for results
Market/country code
api.parse.bot/scraper/f1fc6c1e-f28b-4354-8ec8-eed3deed11d3/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/f1fc6c1e-f28b-4354-8ec8-eed3deed11d3/search_places?query=New+York' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 4 totalclick to expand

Search for airports and cities by name. Returns place IDs (sky IDs and geo IDs) needed for other endpoints. Use this to resolve city/airport names to IDs before searching flights or prices.

Input
ParamTypeDescription
queryrequiredstringSearch query (city name, airport name, or IATA code)
localestringLocale for results
marketstringMarket/country code
Response
{
  "type": "object",
  "fields": {
    "query": "string — the search query used",
    "total": "integer — number of places returned",
    "locale": "string — locale used",
    "market": "string — market used",
    "places": "array of place objects with place_id, name, iata_code, city_id, city_name, country_id, country_name, geo_id, geo_container_id, location, display_name"
  },
  "sample": {
    "data": {
      "query": "New York",
      "total": 10,
      "locale": "en-US",
      "market": "US",
      "places": [
        {
          "name": "New York",
          "geo_id": "27537542",
          "city_id": "NYCA",
          "location": "40.6940959901,-73.9282670243",
          "place_id": "NYCA",
          "city_name": "New York",
          "iata_code": "NYC",
          "country_id": "US",
          "country_name": "United States",
          "display_name": "New York|New York|United States",
          "geo_container_id": "27537542"
        }
      ]
    },
    "status": "success"
  }
}

About the skyscanner.com API

The Skyscanner API provides 4 endpoints covering flight search, airport/city lookup, and fare calendars. The search_flights endpoint returns full itineraries with per-leg segment data, carrier details, pricing options from multiple booking agents, and direct booking URLs. Companion endpoints deliver daily cheapest prices across ~12 months and monthly fare summaries — giving developers the core building blocks for flight discovery and price-tracking applications.

Place Resolution and Airport Search

Before querying flights or price calendars, use search_places to resolve city names, airport names, or IATA codes into Skyscanner-specific identifiers. The endpoint returns place_id (sky ID), geo_id, geo_container_id, iata_code, and full city_name / country_name fields. Two different ID formats matter downstream: sky IDs (e.g., NYCA, LOND) feed into the daily price calendar, while geo IDs feed into the monthly price calendar.

Flight Search

search_flights accepts a date, origin, destination, adults, cabin_class (ECONOMY, PREMIUM_ECONOMY, BUSINESS, or FIRST), and currency. Results include an array of flights objects, each carrying a price, formatted_price, score, tags, is_self_transfer flag, and a legs array with full segment data. The pricing_options field on each flight lists individual booking agents with their prices and booking URLs. The filter_stats response object summarizes total_results, min_duration, max_duration, available airports, carriers, and stop_prices — useful for building filter UIs. Round-trip searches are supported via the return_date field.

Price Calendars

get_price_calendar_daily returns a prices array of {day, group, price} objects covering roughly the next 12 months for a given route. Each entry references a price_groups tier (e.g., cheap, medium, expensive) defined in the same response. This endpoint uses sky IDs for origin and destination.

get_price_calendar_monthly returns monthly_prices as {year, month, currency, price, price_category} objects. It accepts origin_id and destination_id as geo IDs from search_places, and supports trip_type (one_way or return) and a direct_only boolean filter.

Common use cases
  • Build a fare alert system using daily price calendar data to notify users when prices on a route drop below a threshold
  • Populate a flight search UI with itineraries, carrier names, and per-agent booking URLs from search_flights
  • Render a month-by-month fare grid for flexible travelers using get_price_calendar_monthly price_category labels
  • Autocomplete airport and city inputs by querying search_places with partial name or IATA code strings
  • Compare cheapest one-way vs. round-trip fares on a route using the trip_type parameter in get_price_calendar_monthly
  • Track price trends across cabin classes by running search_flights repeatedly with different cabin_class values
  • Resolve geo IDs for a list of cities in bulk via search_places before feeding them into price calendar queries
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Skyscanner have an official developer API?+
Skyscanner previously offered a public affiliate/partner API, but it has been discontinued for most developers. Access to official Skyscanner data integrations is now limited to select commercial partners. The Parse Skyscanner API provides programmatic access without requiring a direct partnership agreement.
What does search_flights return beyond a price?+
Each flight object includes the total price and formatted_price, a score, a tags array, an is_self_transfer boolean, and a legs array with per-segment carrier and routing details. The pricing_options field lists individual booking agents with their own prices and booking URLs. The top-level filter_stats object also provides aggregate data like min_duration, max_duration, carriers, and stop-count pricing.
Why do the daily and monthly calendar endpoints use different ID formats?+
get_price_calendar_daily uses Skyscanner sky IDs (e.g., NYCA, LOND) which are returned as place_id by search_places. get_price_calendar_monthly uses geo IDs, returned as geo_id by the same endpoint. Running search_places first gives you both values in a single response, so you can feed the correct ID to each calendar endpoint.
Does the API return hotel, car rental, or multi-city flight data?+
Not currently. The API covers one-way and round-trip flight search, airport/city place resolution, and daily and monthly flight price calendars. You can fork it on Parse and revise to add endpoints for hotels, car rentals, or multi-city itineraries.
How fresh are the price calendar results?+
get_price_calendar_daily covers approximately the next 12 months and reflects prices available at query time. Prices on Skyscanner are dynamic and can change frequently, so a cached or stored result may not reflect the current fare. Querying the endpoint fresh for time-sensitive use cases is advisable.
Page content last updated . Spec covers 4 endpoints from skyscanner.com.
Related APIs in TravelSee all →
opentable.ca API
Search and discover restaurants on OpenTable, view detailed information like menus and reviews, and check real-time dining availability across metro areas. Find top-rated restaurants in your location and instantly see which tables are open for your preferred date and time.
fandango.com API
Search for movies and retrieve nearby theater listings with showtimes by ZIP code and date, plus showtimes for a specific movie at nearby theaters.
data.lime.bike API
Access real-time availability data for Lime bikes and scooters, including station locations, vehicle status, system alerts, and geofencing zones across multiple cities. Monitor micromobility inventory and service information to find nearby vehicles or plan your trips effectively.
turo.com API
Search for peer-to-peer car rentals across Turo by location and dates to browse available vehicles with pricing, specifications, and real-time availability. Get detailed information on specific cars to compare features and make rental decisions.
reservation.pc.gc.ca API
Access real-time campground availability and reservation data from the Parks Canada booking system. Search locations, retrieve available campsites and cabins, filter by equipment type, and review operating date schedules across the national park network. Includes detailed resource metadata and map-based availability overviews.
bahn.com API
Search German train schedules and stations, find connections between destinations, and compare ticket prices across Deutsche Bahn routes. Get real-time station information and transit association details to plan your train journey efficiently.
united.com API
Search United Airlines flights, check real-time flight status, and view detailed seat maps to plan your perfect trip. Compare fare options and use airport autocomplete to quickly find your departure and arrival cities.
thetrainline.com API
Search UK train stations and find the cheapest fares across date ranges, then generate direct booking links to complete your purchase on Trainline.com. Get real-time journey information to compare prices and book your tickets in seconds.
Skyscanner API – Flights & Price Calendars · Parse