Discover/Skyscanner API
live

Skyscanner APIskyscanner.de

Search one-way flights, compare airline prices, and get daily or monthly cheapest-fare calendars from Skyscanner.de via 4 structured API endpoints.

Endpoint health
verified 4d ago
search_flights_autocomplete
search_flights
get_price_calendar
get_price_calendar_month
4/4 passing latest checkself-healing
Endpoints
4
Updated
26d ago

What is the Skyscanner API?

The Skyscanner.de API exposes 4 endpoints for querying flight data from Skyscanner's German market: autocomplete airport and city lookups, one-way flight search with per-itinerary pricing, and two price-calendar views. The search_flights endpoint returns available itineraries with airline, price, times, and duration for any origin–destination pair and departure date, while get_price_calendar and get_price_calendar_month surface the cheapest fares across individual days and across multiple months.

Try it
Partial name of a location to search for (e.g. 'Ber', 'Lond', 'Par')
api.parse.bot/scraper/33eee404-d3ea-4f24-8793-1dcfd3580c5c/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/33eee404-d3ea-4f24-8793-1dcfd3580c5c/search_flights_autocomplete?query=Ber' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace skyscanner-de-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: Skyscanner flight search — find cheapest flights and compare prices."""
from parse_apis.skyscanner_flight_search___pricing_api import (
    Skyscanner, Route, Origin, Destination, PriceCategory, PriceTier, PlaceNotFound
)

client = Skyscanner()

# Search for airports matching "Berlin" — limit caps total items fetched.
for place in client.places.search(query="Ber", limit=3):
    print(place.place_name, place.place_id, place.country_name)

# Construct a route using typed enums and check monthly prices.
route = Route(_api=client, origin=Origin.BER, destination=Destination.LOND)
monthly = route.monthly_prices()
for mp in monthly.flight_prices_per_month[:3]:
    print(mp.month.year, mp.month.month, mp.price.amount, mp.price.currency_code, mp.price_category)

# Get daily prices to find the cheapest specific day.
calendar = route.daily_prices()
cheapest_day = min(calendar.days, key=lambda d: d.price)
print(cheapest_day.day, cheapest_day.price, calendar.currency, cheapest_day.group)

# Search flights on that cheapest day.
try:
    search = route.search_flights(date=cheapest_day.day)
    print(search.itineraries.context.total_results, "flights found")
    for itin in search.itineraries.results[:3]:
        leg = itin.legs[0]
        print(itin.price.formatted, leg.origin.city, "->", leg.destination.city, leg.duration_in_minutes, "min")
except PlaceNotFound as exc:
    print(f"Place not found: {exc}")

print("exercised: places.search / monthly_prices / daily_prices / search_flights")
All endpoints · 4 totalmissing one? ·

Autocomplete airport, city, or country names from a partial text query. Returns matching places with Skyscanner place codes, city names, country information, and Geo IDs usable as entity identifiers in other endpoints. Results are localized to German (de-DE). The response is a flat list ordered by relevance; no pagination.

Input
ParamTypeDescription
queryrequiredstringPartial name of a location to search for (e.g. 'Ber', 'Lond', 'Par')
Response
{
  "type": "object",
  "fields": {
    "data": "array of matching place objects with PlaceId, PlaceName, CountryId, CountryName, CityId, CityName, GeoId, IataCode, and Location"
  },
  "sample": {
    "data": {
      "data": [
        {
          "GeoId": "95673383",
          "CityId": "BERL",
          "PlaceId": "BER",
          "CityName": "Berlin",
          "IataCode": "",
          "Location": "52.366667,13.50333",
          "CountryId": "DE",
          "PlaceName": "Berlin Brandenburg",
          "CountryName": "Deutschland"
        },
        {
          "GeoId": "128668278",
          "CityId": "BERI",
          "PlaceId": "BGO",
          "CityName": "Bergen",
          "IataCode": "",
          "Location": "60.293611,5.219444",
          "CountryId": "NO",
          "PlaceName": "Bergen",
          "CountryName": "Norwegen"
        }
      ]
    },
    "status": "success"
  }
}

About the Skyscanner API

Endpoints and What They Return

The search_flights_autocomplete endpoint accepts a partial location string (e.g. 'Ber' or 'Lond') and returns matching airports, cities, and countries. Each result includes PlaceId, PlaceName, IataCode, GeoId, CityId, CityName, CountryId, and CountryName. Results are localized to de-DE, so display names and country strings appear in German. Use this endpoint to resolve user input into the IATA codes required by the flight search and calendar endpoints.

Flight Search

search_flights takes a required origin IATA code, destination IATA code, and a date string in YYYY-MM-DD format. It returns a sessionId and an itineraries object containing available one-way flight options — each with carrier, pricing, departure and arrival times, and total duration. Only one-way routes are supported by this endpoint; round-trip search is not exposed.

Price Calendars

Two calendar endpoints offer different granularities. get_price_calendar returns a flights object showing the cheapest available fare for each day of a given month for an origin–destination pair — useful for displaying a "cheapest day to fly" calendar view. get_price_calendar_month returns a flightPricesPerMonth array, giving cheapest-price summaries grouped by month across multiple months for the same route. Both accept origin and destination as required inputs and require no date parameter, defaulting to near-future availability.

Reliability & maintenanceVerified

The Skyscanner API is a managed, monitored endpoint for skyscanner.de — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when skyscanner.de changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official skyscanner.de API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
4d ago
Latest check
4/4 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Display a date-picker with per-day cheapest prices using get_price_calendar for a user-specified route
  • Power a month-overview fare grid with get_price_calendar_month to help users pick the cheapest travel month
  • Build an airport search-as-you-type input using search_flights_autocomplete with IATA code resolution
  • Retrieve and compare airline itineraries, prices, and flight durations for a specific route and date via search_flights
  • Aggregate daily minimum fares across routes to identify the cheapest corridor for flexible travelers
  • Enrich travel booking tools with German-localized airport and city names for EU-facing products
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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 partner API, but it was discontinued and access is no longer available to general developers. The program is documented historically at skyscanner.net/affiliates but is not accepting new integrations.
What does `search_flights` return, and can it search round-trip routes?+
The endpoint returns a sessionId and an itineraries object containing one-way flight options with airline, price, departure and arrival times, and duration. Round-trip search is not covered by this endpoint. The API currently handles one-way queries only. You can fork it on Parse and revise to add a round-trip search endpoint if your use case requires it.
Do the price calendar endpoints require a specific month or date?+
get_price_calendar and get_price_calendar_month require only origin and destination — no date or month parameter. Both default to near-future availability. If you need to query a specific target month, that filtering is not currently exposed. You can fork the API on Parse and revise it to add a month parameter to the calendar endpoints.
Are multi-city or connecting-flight details exposed?+
Not currently. The search_flights endpoint returns itinerary-level data for one-way routes, but does not break out individual flight segments, layover durations, or connection airports within a multi-leg itinerary. You can fork the API on Parse and revise it to add a segment-detail endpoint once the underlying data is available.
What localization does the autocomplete endpoint use?+
Results from search_flights_autocomplete are localized to de-DE, meaning place names, city names, and country names are returned in German. This is fixed to the German market and is not configurable per-request in the current endpoint definition.
Page content last updated . Spec covers 4 endpoints from skyscanner.de.
Related APIs in TravelSee all →
skyscanner.co.in API
Search for flights worldwide and compare prices with autocomplete suggestions for airports and destinations. View price calendars to find the cheapest travel dates and explore real-time flight availability and pricing.
skyscanner.com API
Search for flights and compare prices across multiple booking agents, while exploring airports and cities to plan your trip. View daily and monthly price calendars to find the best deals for your travel dates.
skiplagged.com API
Search for flights across airlines including hidden-city ticketing options, and look up airport information by name or code to find the best travel deals. Access Skiplagged's flight inventory and routing data to discover cheaper itineraries and alternative airport combinations.
us.trip.com API
Search for flights across Trip.com and view a low-price calendar to find the cheapest travel dates for your destination. Compare flight options and prices to book your next trip at the best rates available.
kayak.com API
Access Kayak flight data including price prediction calendars, nearby airport lookups, and popular destination suggestions. Find optimal booking windows across ~300 days of pricing data, discover alternative airports near any location, and explore top destinations from any origin.
makemytrip.com API
Search for airports and compare the cheapest flight fares between any two cities across multiple dates with MakeMyTrip's fare calendar to find your best deal. Quickly identify the most affordable travel options and plan your trip with real-time pricing information.
wizzair.com API
Search for Wizz Air flights and compare prices across dates with interactive price calendars, while discovering available routes and airports to plan your budget travel. Find the best fares for your desired destination and access complete flight timetables for any route.
kayak.com.hk API
Search for flights and compare prices across airlines and routes, including flexible-date searches across multiple origin airports. View monthly price calendars to find the cheapest travel dates and get real-time fare information for any route.