Skip to main content

Multi-City

Multi-City is a feature supported in Flights Live Prices API. It allows users to search flights worldwide using multiple stops in their query by adding extra legs with stopovers in several different cities.

How to use it?

To make a multi-city search you can use the same query as the one for Flights Live Prices Query Object by adding more query legs to the queryLeg object indicating it's a multi-city search.

Skyscanner multi-city search view

👉 Here is a sample in Skyscanner.

Example queries

Edinburgh to London - London to Paris - Paris to Berlin (3 legs)

💡 Make sure your dates are in the future when making your own requests.

{
"query": {
"market": "UK",
"locale": "en-GB",
"currency": "GBP",
"queryLegs": [
{
"originPlaceId": {
"iata": "EDI"
},
"destinationPlaceId": {
"iata": "LHR"
},
"date": {
"year": "2024",
"month": "11",
"day": "24"
}
},
{
"originPlaceId": {
"iata": "LHR"
},
"destinationPlaceId": {
"iata": "CDG"
},
"date": {
"year": "2024",
"month": "11",
"day": "30"
}
},
{
"originPlaceId": {
"iata": "CDG"
},
"destinationPlaceId": {
"iata": "BER"
},
"date": {
"year": "2024",
"month": "12",
"day": "10"
}
}
],
"adults": 1,
"childrenAges": [],
"cabinClass": "CABIN_CLASS_ECONOMY",
"excludedAgentsIds": [],
"excludedCarriersIds": [],
"includedAgentsIds": [],
"includedCarriersIds": [],
"nearbyAirports": false
}
}
Berlin to Barcelona - Madrid to Thessaloniki - Athens to Rome - Rome to London (4 legs)

💡 Make sure your dates are in the future when making your own requests.

{
"query": {
"market": "UK",
"locale": "en-GB",
"currency": "GBP",
"queryLegs": [
{
"originPlaceId": {
"iata": "BER"
},
"destinationPlaceId": {
"iata": "BCN"
},
"date": {
"year": "2024",
"month": "11",
"day": "24"
}
},
{
"originPlaceId": {
"iata": "MAD"
},
"destinationPlaceId": {
"iata": "SKG"
},
"date": {
"year": "2024",
"month": "11",
"day": "30"
}
},
{
"originPlaceId": {
"iata": "ATH"
},
"destinationPlaceId": {
"iata": "FCO"
},
"date": {
"year": "2024",
"month": "12",
"day": "10"
}
},
{
"originPlaceId": {
"iata": "FCO"
},
"destinationPlaceId": {
"iata": "LHR"
},
"date": {
"year": "2024",
"month": "12",
"day": "20"
}
}
],
"adults": 1,
"childrenAges": [],
"cabinClass": "CABIN_CLASS_ECONOMY",
"excludedAgentsIds": [],
"excludedCarriersIds": [],
"includedAgentsIds": [],
"includedCarriersIds": [],
"nearbyAirports": false
}
}

Using the response

The response is the same as the Flights Live Prices response object.

Limitations

There are some limitations when searching for multi-city flight prices.

  • Multi-City is only supported for flights live prices.
  • nearbyAirports filter has to be set to false as it's not supported for multi-search.
  • Maximum 6 places are supported meaning you can have maximum 6 queryLegs.