Google Travel Explore API

Our Google Travel Explore API allows you to scrape travel destinations and related flights from Google Travel Explore. The API is accessed through the following endpoint: /search?engine=google_travel_explore.

A user may query the following: https://serpapi.com/search?engine=google_travel_explore utilizing a GET request. Head to the playground for a live and interactive demo.

API Parameters

Search Query

departure_id

Optional

Parameter defines the departure airport code or city location kgmid.
An airport code is an uppercase 3-letter code. You can search for it on Google Flights or IATA.
For example, CDG is Paris Charles de Gaulle Airport and AUS is Austin-Bergstrom International Airport.
A location kgmid is a string that starts with /m/. You can search for a location on Wikidata and use its "Freebase ID" as the location kgmid. For example, /m/0vzm is the location kgmid for Austin, TX.
You can specify multiple departure airports by separating them with a comma. For example, CDG,ORY,/m/04jpl.

Localization

gl

Optional

Parameter defines the country to use for the Google Travel Explore search. It's a two-letter country code. (e.g., us for the United States, uk for United Kingdom, or fr for France) Head to the Google countries page for a full list of supported Google countries.

hl

Optional

Parameter defines the language to use for the Google Travel Explore search. It's a two-letter language code. (e.g., en for English, es for Spanish, or fr for French). Head to the Google languages page for a full list of supported Google languages.

currency

Optional

Parameter defines the currency of the returned prices. Default to USD. Head to the Google Travel Currencies page for a full list of supported currency codes.

Advanced Google Travel Explore Parameters

arrival_area_id

Optional

Parameter defines the arrival region or country as a location kgmid.
A location kgmid is a string that starts with /m/. You can search for a region or country on Wikidata and use its "Freebase ID" as the location kgmid.
For example, /m/02j9z is the location kgmid for Europe, and /m/0f8l9c is the location kgmid for France.
This parameter is used when exploring flights to broader areas (regions or countries) rather than specific cities or airports.

arrival_id

Optional

Parameter defines the arrival airport code or city location kgmid.
An airport code is an uppercase 3-letter code. You can search for it on Google Flights or IATA.
For example, CDG is Paris Charles de Gaulle Airport and AUS is Austin-Bergstrom International Airport.
A location kgmid is a string that starts with /m/. You can search for a location on Wikidata and use its "Freebase ID" as the location kgmid. For example, /m/0vzm is the location kgmid for Austin, TX.

type

Optional

Parameter defines the type of the flights.
Available options:

1 - Round trip (default)
2 - One way

When this parameter is set to 3, use multi_city_json to set the flight information.

outbound_date

Optional

Parameter defines the outbound date. The format is YYYY-MM-DD. e.g. 2025-11-04

return_date

Optional

Parameter defines the return date. The format is YYYY-MM-DD. e.g. 2025-11-10

Parameter is required if type parameter is set to: 1 (Round trip)

month

Optional

Parameter defines the month of the trip with flexible travel dates.
The value must be a number from 1 to 12, where 1 = January, 2 = February, …, 12 = December.

0 (default) means all months within the next 6 months are considered.

Only the next 6 months from the current date are available for selection.

travel_duration

Optional

Parameter defines the duration of the trip with flexible travel dates.
Available options:

1 - Weekend
2 - 1 week (default)
3 - 2 weeks

travel_class

Optional

Parameter defines the travel class.
Available options:

1 - Economy (default)
2 - Premium economy
3 - Business
4 - First

Number Of Passengers

adults

Optional

Parameter defines the number of adults. Default to 1.

children

Optional

Parameter defines the number of children. Default to 0.

infants_in_seat

Optional

Parameter defines the number of infants in seat. Default to 0.

infants_on_lap

Optional

Parameter defines the number of infants on lap. Default to 0.

Advanced Filters

stops

Optional

Parameter defines the number of stops during the flight.
Available options:

0 - Any number of stops (default)
1 - Nonstop only
2 - 1 stop or fewer
3 - 2 stops or fewer

travel_mode

Optional

Parameter defines the travel mode.
Available options:

0 - All (default)
1 - Flight only

travel_mode and interest parameters can't be used together.

interest

Optional

Parameter defines the interest of the destination.
Available options:

0 - Popular (default)
/g/11bc58l13w - Outdoors
/m/0b3yr - Beaches
/m/09cmq - Museum
/m/03g3w - History
/m/071k0 - Skiing

travel_mode and interest parameters can't be used together.

include_airlines

Optional

Parameter defines the airline codes to be included. Split multiple airlines with comma.
Each airline code should be a 2-character IATA code consisting of either two uppercase letters or one uppercase letter and one digit. You can search for airline codes on IATA.
For example, UA is United Airlines.
Additionally, alliances can be also included here:

STAR_ALLIANCE - Star Alliance
SKYTEAM - SkyTeam
ONEWORLD - Oneworld

bags

Optional

Parameter defines the number of carry-on bags. Default to 0.

Parameter should not exceed the total number of passengers with carry-on bag allowance (adults, children and infants_in_seat).

max_price

Optional

Parameter defines the maximum ticket price. Default to unlimited.

max_duration

Optional

Parameter defines the maximum flight duration, in minutes. For example, specify 1500 for 25 hours.

Serpapi Parameters

engine

Required

Set parameter to google_travel_explore to use the Google Travel Explore API engine.

no_cache

Optional

Parameter will force SerpApi to fetch the Google Travel Explore results even if a cached version is already present. A cache is served only if the query and all parameters are exactly the same. Cache expires after 1h. Cached searches are free, and are not counted towards your searches per month. It can be set to false (default) to allow results from the cache, or true to disallow results from the cache. no_cache and async parameters should not be used together.

async

Optional

Parameter defines the way you want to submit your search to SerpApi. It can be set to false (default) to open an HTTP connection and keep it open until you got your search results, or true to just submit your search to SerpApi and retrieve them later. In this case, you'll need to use our Searches Archive API to retrieve your results. async and no_cache parameters should not be used together. async should not be used on accounts with Ludicrous Speed enabled.

zero_trace

Optional

Enterprise only. Parameter enables ZeroTrace mode. It can be set to false (default) or true. Enable this mode to skip storing search parameters, search files, and search metadata on our servers. This may make debugging more difficult.

api_key

Required

Parameter defines the SerpApi private key to use.

output

Optional

Parameter defines the final output you want. It can be set to json (default) to get a structured JSON of the results, or html to get the raw html retrieved.

json_restrictor

Optional

Parameter defines the fields you want to restrict in the outputs for smaller, faster responses. See JSON Restrictor for more details.

API Results

JSON Results

JSON output includes structured data for Flight Results and Price Insights.

A search status is accessible through search_metadata.status. It flows this way: Processing -> Success || Error. If a search has failed, error will contain an error message. search_metadata.id is the search ID inside SerpApi.

HTML Results

This API does not have html response, just a text. search_metadata.prettify_html_file contains prettified version of result. It is displayed in playground.

API Examples

Example with departure_id: /m/02_286 (New York City)

Example with departure_id: /m/02_286 (New York City)

JSON Example

{
  "search_metadata": {
    "id": "68cd1a30fe1c6b0cf6ddcbfb",
    "status": "Success",
    "json_endpoint": "https://serpapi.com/searches/6d607c268ebad9fb/68cd1a30fe1c6b0cf6ddcbfb.json",
    "created_at": "2025-09-19 08:54:08 UTC",
    "processed_at": "2025-09-19 08:54:08 UTC",
    "google_travel_explore_url": "https://www.google.com/travel/explore?hl=en&gl=us&curr=USD&tfs=CBwQAxoPag0IAxIJL20vMDJfMjg2Gg9yDQgDEgkvbS8wMl8yODZCAQFIAXACggECEAKYAQGyAQA",
    "raw_html_file": "https://serpapi.com/searches/6d607c268ebad9fb/68cd1a30fe1c6b0cf6ddcbfb.html",
    "prettify_html_file": "https://serpapi.com/searches/6d607c268ebad9fb/68cd1a30fe1c6b0cf6ddcbfb.prettify",
    "total_time_taken": 1.62
  },
  "search_parameters": {
    "engine": "google_travel_explore",
    "hl": "en",
    "gl": "us",
    "departure_id": "/m/02_286",
    "currency": "USD"
  },
  "destinations": [
    {
      "destination_id": "/m/030qb3t",
      "name": "Los Angeles",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 34.0549076,
        "longitude": -118.242643
      },
      "thumbnail": "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTARk3fg4JrXocEwFZ__Vu1gTQq_0fAQykb5FfW16JDWxFEvSzsdWXG8thXEjtdTNrnGpD6L0OVyiRFQb3xGcQk6R1qWqf3S-SjvkZccA",
      "destination_airport": {
        "code": "LAX"
      },
      "start_date": "2025-12-06",
      "end_date": "2025-12-13",
      "flight_price": 174,
      "hotel_price": 186,
      "flight_duration": 385,
      "number_of_stops": 0,
      "airline": "Frontier",
      "airline_code": "F9"
    },
    {
      "destination_id": "/m/0f2v0",
      "name": "Miami",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 25.7616798,
        "longitude": -80.1917902
      },
      "thumbnail": "https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcRhlHkMsMziRb7h4PsDzIzUkoDmYShx02v4iBLFDtotsN9Ax1mGEk9Vs97xFoAnGmkK_NRKJtJVBu45TUJ_LBwFPOWqAgpbzSPadIoSpw",
      "destination_airport": {
        "code": "MIA"
      },
      "start_date": "2025-09-29",
      "end_date": "2025-10-07",
      "flight_price": 68,
      "hotel_price": 135,
      "flight_duration": 198,
      "number_of_stops": 0,
      "airline": "Spirit",
      "airline_code": "NK"
    },
    {
      "destination_id": "/m/0r62v",
      "name": "Santa Barbara",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 34.420285,
        "longitude": -119.698935
      },
      "thumbnail": "https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcQDVUmAzCFNn5ffTIXtxBs6cMqiJ3HpOIpP7KtHIqOVvoxM93d4DRFfqNU27M0aMbAuimHcjkIp8l31qI-T_WRKaA",
      "destination_airport": {
        "code": "LAX",
        "location": "Los Angeles",
        "location_id": "/m/030qb3t"
      },
      "start_date": "2025-12-06",
      "end_date": "2025-12-13",
      "flight_price": 174,
      "hotel_price": 249,
      "flight_duration": 385,
      "number_of_stops": 0,
      "airline": "Frontier",
      "airline_code": "F9",
      "car_duration": 120
    },
    ...
  ],
  ...
}

Example with departure_id: JFK and arrival_id: LAX

Example with departure_id: JFK and arrival_id: LAX

JSON Example

{
  {
  "search_metadata": {
    "id": "6900a197fe1c6b090fdfc6dd",
    "status": "Success",
    "json_endpoint": "https://serpapi.com/searches/51f61b633d12f08c/6900a197fe1c6b090fdfc6dd.json",
    "created_at": "2025-10-28 10:57:27 UTC",
    "processed_at": "2025-10-28 10:57:27 UTC",
    "google_travel_explore_url": "https://www.google.com/travel/explore?hl=en&gl=us&curr=USD&tfs=CBwQAxoJagcIARIDSkZLGglyBwgBEgNKRktCAQFIAXABggELCP___________wGYAQGyAQkqBwgBEgNMQVg",
    "raw_html_file": "https://serpapi.com/searches/51f61b633d12f08c/6900a197fe1c6b090fdfc6dd.html",
    "prettify_html_file": "https://serpapi.com/searches/51f61b633d12f08c/6900a197fe1c6b090fdfc6dd.prettify",
    "total_time_taken": 2.14
  },
  "search_parameters": {
    "engine": "google_travel_explore",
    "hl": "en",
    "gl": "us",
    "departure_id": "JFK",
    "arrival_id": "LAX",
    "currency": "USD"
  },
  "start_date": "2025-11-13",
  "end_date": "2025-11-19",
  "flights": [
    {
      "departure_airport": {
        "name": "John F. Kennedy International Airport",
        "id": "JFK"
      },
      "arrival_airport": {
        "name": "Los Angeles International Airport",
        "id": "LAX"
      },
      "duration": 488,
      "price": 130,
      "cheapest_flight": true,
      "number_of_stops": 1,
      "airline": "Frontier",
      "airline_code": "F9"
    },
    {
      "departure_airport": {
        "name": "John F. Kennedy International Airport",
        "id": "JFK"
      },
      "arrival_airport": {
        "name": "Los Angeles International Airport",
        "id": "LAX"
      },
      "duration": 363,
      "price": 192,
      "number_of_stops": 0,
      "airline": "Frontier",
      "airline_code": "F9"
    },
    {
      "departure_airport": {
        "name": "John F. Kennedy International Airport",
        "id": "JFK"
      },
      "arrival_airport": {
        "name": "Los Angeles International Airport",
        "id": "LAX"
      },
      "duration": 380,
      "price": 247,
      "number_of_stops": 0,
      "airline": "JetBlue",
      "airline_code": "B6"
    }
  ],
  "google_flights_link": "https://www.google.com/travel/flights?hl=en&gl=us&curr=USD&tfs=CBsQAhoSagcIARIDSkZLcgcIARIDTEFYGhJqBwgBEgNMQVhyBwgBEgNKRktCAQFIAVIDVVNEcAF6dENqUklkekpYV2pCUFUwbGFlbFZCUVhBdFIzZENSeTB0TFMwdExTMHRMV3h5ZG1NeE9VRkJRVUZCUjJ0QmIxcHJSSGhFY2tkQkVnMUdPVE15TXpkOFJqa3pNamt4R2dvSXhtVVFBaG9EVlZORU9CeHd4bVU9mAEBsgEJKgcIARIDTEFY",
  "google_flights_serpapi_link": "https://serpapi.com/search.json?arrival_id=LAX&currency=USD&departure_id=JFK&engine=google_flights&gl=us&hl=en"
}

Example with type: 2 (One Way)

Example with type: 2 (One Way)

JSON Example

{
  ...
  "destinations": [
    {
      "destination_id": "/m/0d6lp",
      "name": "San Francisco",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 37.7749295,
        "longitude": -122.4194155
      },
      "thumbnail": "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcSb3M4B-mwVbnbCg6A-uHJ50Yqot_FqJt5CFqZ05KpfufPCKnMWlqgbieVpj1kd7zhr8xgADYXDvTFPuFz9z_Po42wjClju7n8vBoFD9A",
      "destination_airport": {
        "code": "SFO"
      },
      "start_date": "2025-12-03",
      "flight_price": 29,
      "flight_duration": 96,
      "number_of_stops": 0,
      "airline": "Frontier",
      "airline_code": "F9"
    },
    {
      "destination_id": "/m/0cv3w",
      "name": "Las Vegas",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 36.171563,
        "longitude": -115.1391009
      },
      "thumbnail": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRu92znS_LNcf-AXv--tTB8NqlNSESpb9FmWerXxvY1AJRwqHluyG2zDEgBLgxVEVWpuYPwEE2JVxB0MhBzOU_YK6AXQfqD-Il3YAovBg",
      "destination_airport": {
        "code": "LAS"
      },
      "start_date": "2025-11-12",
      "flight_price": 25,
      "flight_duration": 76,
      "number_of_stops": 0,
      "airline": "Spirit",
      "airline_code": "NK"
    },
    {
      "destination_id": "/m/01626x",
      "name": "Zion National Park",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 37.2982022,
        "longitude": -113.0263005
      },
      "thumbnail": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQKGE_W9V0oG_b3m7jzH0Dcd8g07xaI9oj5LuZOJnZJ-AOTQf4ywbrW0cauvDqslx0mUxbZh1DjeD5EVEiqF0NgzZCdOm3zl4pGQhp27lM",
      "destination_airport": {
        "code": "LAS",
        "location": "Las Vegas",
        "location_id": "/m/0cv3w"
      },
      "start_date": "2025-11-12",
      "flight_price": 25,
      "flight_duration": 76,
      "number_of_stops": 0,
      "airline": "Spirit",
      "airline_code": "NK",
      "car_duration": 150
    },
    ...
  ],
  ...
}

Example with month: 3 and travel_duration: 3(2 weeks in March)

Example with month: 3 and travel_duration: 3(2 weeks in March)

JSON Example

{
  ...
  "destinations": [
    {
      "destination_id": "/m/030qb3t",
      "name": "Los Angeles",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 34.0549076,
        "longitude": -118.242643
      },
      "thumbnail": "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTARk3fg4JrXocEwFZ__Vu1gTQq_0fAQykb5FfW16JDWxFEvSzsdWXG8thXEjtdTNrnGpD6L0OVyiRFQb3xGcQk6R1qWqf3S-SjvkZccA",
      "destination_airport": {
        "code": "BUR",
        "location": "Burbank",
        "location_id": "/m/0r00l"
      },
      "start_date": "2026-03-02",
      "end_date": "2026-03-17",
      "flight_price": 257,
      "hotel_price": 200,
      "flight_duration": 675,
      "number_of_stops": 1,
      "airline": "American",
      "airline_code": "AA"
    },
    {
      "destination_id": "/m/0d6lp",
      "name": "San Francisco",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 37.7749295,
        "longitude": -122.4194155
      },
      "thumbnail": "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcSb3M4B-mwVbnbCg6A-uHJ50Yqot_FqJt5CFqZ05KpfufPCKnMWlqgbieVpj1kd7zhr8xgADYXDvTFPuFz9z_Po42wjClju7n8vBoFD9A",
      "destination_airport": {
        "code": "SFO"
      },
      "start_date": "2026-03-07",
      "end_date": "2026-03-23",
      "flight_price": 269,
      "hotel_price": 258,
      "flight_duration": 388,
      "number_of_stops": 0,
      "airline": "Alaska and JetBlue",
      "airline_code": "multi"
    },
    {
      "destination_id": "/m/0cv3w",
      "name": "Las Vegas",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 36.171563,
        "longitude": -115.1391009
      },
      "thumbnail": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRu92znS_LNcf-AXv--tTB8NqlNSESpb9FmWerXxvY1AJRwqHluyG2zDEgBLgxVEVWpuYPwEE2JVxB0MhBzOU_YK6AXQfqD-Il3YAovBg",
      "destination_airport": {
        "code": "LAS"
      },
      "start_date": "2026-03-01",
      "end_date": "2026-03-16",
      "flight_price": 337,
      "hotel_price": 145,
      "flight_duration": 345,
      "number_of_stops": 0,
      "airline": "JetBlue",
      "airline_code": "B6"
    },
    ...
  ],
  ...
}

Example with specific dates

Example with specific dates

JSON Example

{
  ...
  "destinations": [
    {
      "destination_id": "/m/030qb3t",
      "name": "Los Angeles",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 34.0549076,
        "longitude": -118.242643
      },
      "thumbnail": "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTARk3fg4JrXocEwFZ__Vu1gTQq_0fAQykb5FfW16JDWxFEvSzsdWXG8thXEjtdTNrnGpD6L0OVyiRFQb3xGcQk6R1qWqf3S-SjvkZccA",
      "destination_airport": {
        "code": "LAX"
      },
      "start_date": "2026-01-20",
      "end_date": "2026-01-25",
      "flight_price": 274,
      "hotel_price": 190,
      "flight_duration": 214,
      "number_of_stops": 1,
      "airline": "United",
      "airline_code": "UA"
    },
    {
      "destination_id": "/m/0cv3w",
      "name": "Las Vegas",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 36.171563,
        "longitude": -115.1391009
      },
      "thumbnail": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRu92znS_LNcf-AXv--tTB8NqlNSESpb9FmWerXxvY1AJRwqHluyG2zDEgBLgxVEVWpuYPwEE2JVxB0MhBzOU_YK6AXQfqD-Il3YAovBg",
      "destination_airport": {
        "code": "LAS"
      },
      "start_date": "2026-01-20",
      "end_date": "2026-01-25",
      "flight_price": 137,
      "hotel_price": 134,
      "flight_duration": 185,
      "number_of_stops": 0,
      "airline": "Southwest",
      "airline_code": "WN"
    },
    {
      "destination_id": "/m/0d6lp",
      "name": "San Francisco",
      "country": "United States",
      "gps_coordinates": {
        "latitude": 37.7749295,
        "longitude": -122.4194155
      },
      "thumbnail": "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcSb3M4B-mwVbnbCg6A-uHJ50Yqot_FqJt5CFqZ05KpfufPCKnMWlqgbieVpj1kd7zhr8xgADYXDvTFPuFz9z_Po42wjClju7n8vBoFD9A",
      "destination_airport": {
        "code": "SFO"
      },
      "start_date": "2026-01-20",
      "end_date": "2026-01-25",
      "flight_price": 206,
      "hotel_price": 211,
      "flight_duration": 340,
      "number_of_stops": 1,
      "airline": "Southwest",
      "airline_code": "WN"
    },
    ...
  ],
  ...
}

JSON structure overview

{
  // present when seaching for destinations
  "destinations": [
    {
      "destination_id": "String - Unique kgmid identifier for the destination",
      "name": "String - Name of the destination",
      "country": "String - Country of the destination",
      "gps_coordinates": {
        "latitude": "Float - Latitude of the destination",
        "longitude": "Float - Longitude of the destination"
      },
      "thumbnail": "String - URL of the thumbnail image",
      "destination_airport": {
        "code": "String - IATA code of the destination airport",
        "location": "String - Location of the destination airport (if destination is not the same as airport)",
        "name": "String - Name of the destination airport (if destination is not the same as airport)"
      },
      "start_date": "String - Start date of the trip (YYYY-MM-DD)",
      "end_date": "String - End date of the trip (YYYY-MM-DD)",
      "flight_price": "Number - Price of the flight",
      "hotel_price": "Number - Price of the hotel",
      "flight_duration": "Integer - Duration of the flight in minutes",
      "number_of_stops": "Integer - Number of stops in the flight",
      "airline": "String - Name of the airline operating the flight",
      "airline_code": "String - IATA code of the airline operating the flight"
    }
  ],
  // present when seaching for flights
  "start_date": "String - Date of the outbound flight (YYYY-MM-DD)",
  "end_date": "String - Date of the returning flight (YYYY-MM-DD)",
  "flights": [
    {
      "departure_airport": {
        "name": "String - Name of the departure airport",
        "id": "String - IATA code of the departure airport"
      },
      "arrival_airport": {
        "name": "String - Name of the arrival airport",
        "id": "String - IATA code of the arrival airport"
      },
      "duration": "Integer - Duration of the flight in minutes",
      "price": "Number - Price of the flight",
      "cheapest_flight": "Boolean - Indicates if this is the cheapest flight",
      "number_of_stops": "Integer - Number of stops in the flight",
      "airline": "String - Name of the airline operating the flight",
      "airline_code": "String - IATA code of the airline operating the flight"
    }
  ]
}