Google Flights
Arcade.dev LLM tools for getting flights via Google Flights
4.1.2Google Flights Toolkit
Arcade's Google Flights toolkit gives LLMs access to real-time flight data via the SerpApi Google Flights endpoint, covering search, airport lookup, and booking-option resolution.
Capabilities
- Flight search — one-way, round-trip (single call with both outbound and return dates), and multi-city/open-jaw itineraries; each result includes a direct
google_flights_urlfor immediate handoff to the user - Pricing correctness — round-trip and multi-city fares are priced as bundles; the toolkit is designed around single bundled queries rather than summing separate one-way fares, which is typically more expensive and inaccurate
- Airport/city lookup — resolve city names, country names, or airport names to IATA codes; metropolitan codes (NYC, LON, TYO, PAR) are accepted in searches to mean "any airport in this city"
- Booking-option resolution — convert a
booking_tokenfrom any search result into the full list of airlines and OTAs selling that specific itinerary, with optional POST data for backend vendor hand-off
Secrets
SERP_API_KEY — A SerpApi API key used to authenticate all requests to the Google Flights endpoint. To obtain one: create an account at SerpApi, then find your private API key on the dashboard. The free tier provides a limited number of monthly searches; paid plans are required for higher volume. No special scopes need to be selected — the key grants access to all SerpApi endpoints including Google Flights.
For guidance on storing secrets in Arcade, see Tool Secrets. You can also manage secrets directly at https://api.arcade.dev/dashboard/auth/secrets.
Available tools(4)
| Tool name | Description | Secrets | |
|---|---|---|---|
Resolve a ``booking_token`` to the airlines and OTAs selling that itinerary.
Pass a ``booking_token`` from a one-way, round-trip, or multi-city
flight search result to get the vendors selling that specific
flight. The token encodes the route, dates, cabin class,
and passenger counts (every segment for multi-city), so there are
no ``travel_class``, ``num_adults``, or ``num_children`` parameters;
supplying a cabin or party size would silently disagree with the
itinerary the token was issued for.
Leave ``include_booking_post_data`` off (the default) when an LLM
is comparing prices; turn it on only when a backend needs to
rebuild the vendor hand-off, since the POST body is multiple
kilobytes per option. | 1 | ||
Find IATA airport codes for a city, country, or airport name.
Metropolitan codes (NYC, LON, TYO, PAR, ...) are accepted as a
``departure_airport_code`` or ``arrival_airport_code`` in flight
searches and mean "any airport in this city". | |||
Search Google Flights for one-way or round-trip itineraries.
For a trip where the traveler returns to their origin, issue a
single call with both ``outbound_date`` and ``return_date`` set.
Do NOT issue two separate one-way searches in opposite directions
and sum the prices: airlines price round-trip fares independently
from one-way fares, so the sum of two cheapest one-ways is rarely
equal to the cheapest round-trip and is typically more expensive.
Each returned itinerary carries a ``google_flights_url`` that opens
that specific pre-selected flight on Google Flights, so you can hand
the user a booking link straight from these results without a
separate booking-options lookup. | 1 | ||
Search Google Flights for a multi-city (open-jaw) itinerary.
Use this for trips that are neither a simple one-way nor a round-trip
(e.g. an open-jaw three-leg trip that ends back at the origin).
The open-jaw bundle is typically cheaper than the equivalent set
of one-way searches summed; never substitute several one-way
searches for a single multi-city query.
Each returned itinerary carries a ``google_flights_url`` that opens
that specific pre-selected itinerary on Google Flights, so you can
hand the user a booking link straight from these results without a
separate booking-options lookup. | 1 |