Skip to content
looot docs
Esc
↑↓navigate↵open⌘Jpreview
On this page

SearchAPI.io - Google Travel Explore Destination API

SearchAPI.io tool searchapi-io-google-travel-explore-destination on looot: input fields, $0.004 per call, output shape, and code to run it with curl, JavaScript or Python.

The Google Travel Explore Destination API returns detailed flight information for a specific destination city. Unlike the Google Travel Explore API which discovers destinations, this API provides flight options for a known destination. Each flight result includes airport codes and dates that can be passed directly to the Google Flights API to get full booking options, price insights, and price history. Cross-linking: - Use Google Travel Explore API to discover destination kgmids, then use this API for detailed flight options - Use departure and arrival airport codes with dates from this API to search Google Flights API for complete booking details, price insights, and price history - Departure_id accepts 3-letter IATA codes (e.g., “JFK”) or kgmid with /m/ prefix (e.g., “/m/07bbc” for Skopje) - Arrival_id accepts 3-letter IATA codes (e.g., “JFK”) or kgmid with /m/ prefix (e.g., “/m/05qtj” for Paris)

Inputs

Name Type Required Description
adults integer no
arrival_id string yes
carry_on_bags integer no
children integer no
currency string no
departure_id string yes
engine string no Fixed to “google_travel_explore_destination” for this endpoint. Example: “google_travel_explore_destination”
gl string no
hl string no
included_airlines string no
infants_in_seat integer no
infants_on_lap integer no
max_flight_duration integer no
max_price integer no
stops string no
time_period string no
travel_class string no
travel_mode string no

Output

The run’s result holds the provider’s answer. Signed in, looot inspect searchapi-io-google-travel-explore-destination prints its fields.

Run it

Every call needs your API token in LOOOT_TOKEN; Sign in shows how to get one. Each run also needs a new idempotency key, so a retry never pays twice. With wait: 30 the answer comes back inline when the run ends within 30 seconds. Otherwise you get the running run back: poll GET /v1/runs/<runId>.

Example input with placeholder values:

curl -X POST "https://api.looot.ai/v1/runs" \
  -H "Authorization: Bearer $LOOOT_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"endpointId":"searchapi-io-google-travel-explore-destination","input":{"departure_id":"<departure_id>","arrival_id":"<arrival_id>","engine":"google_travel_explore_destination"},"wait":30}'
const response = await fetch("https://api.looot.ai/v1/runs", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.LOOOT_TOKEN}`,
    "Content-Type": "application/json",
    "Idempotency-Key": crypto.randomUUID(),
  },
  body: JSON.stringify({
    endpointId: "searchapi-io-google-travel-explore-destination",
    input: {
      departure_id: "<departure_id>",
      arrival_id: "<arrival_id>",
      engine: "google_travel_explore_destination",
    },
    wait: 30,
  }),
});
const run = await response.json();
console.log(run.status, run.result);
import os
import uuid

import requests

response = requests.post(
    "https://api.looot.ai/v1/runs",
    headers={
        "Authorization": f"Bearer {os.environ['LOOOT_TOKEN']}",
        "Idempotency-Key": str(uuid.uuid4()),
    },
    json={
        "endpointId": "searchapi-io-google-travel-explore-destination",
        "input": {
            "departure_id": "<departure_id>",
            "arrival_id": "<arrival_id>",
            "engine": "google_travel_explore_destination",
        },
        "wait": 30,
    },
    timeout=90,
)
run = response.json()
print(run["status"], run.get("result"))

To let looot pick among every provider of this job instead, send job:search.google-travel-explore-destination as endpointId; see the job page.

Was this page helpful?