TRAVELAIDEVELOPER TOOLS API MCP READY

Google Flights Deals API

Google Flights Deals API - the 30 cheapest destinations from any airport as structured JSON, each with the price, the typical price for that route, the saving against it, exact dates, airline, stops, duration, and a booking link. The is_below_typical flag separates genuine bargains from merely short flights.

RECORDS30
MEDIAN LAGon demand
PARAMETERS14
TOTAL USERS3
MONTHLY ACTIVE2
TOTAL RUNS28
SUCCESS (30D)100.0%
RATINGno ratings yet
LAST MODIFIED2026-08-08
PUBLISHED2026-08

Input parameters

PARAMETERTYPEREQDEFAULTDESCRIPTION
departureId string no 3-letter IATA code to fly from, such as JFK. There is no arrival airport; the source ignores one.
departureIds array no Several departure airports in one run.
tripType enum no Round trip (default) or one way. Both keep the typical-price baseline.
outboundDate string no YYYY-MM-DD. Leave blank to let the feed pick cheap dates.
returnDate string no YYYY-MM-DD, for a fixed round trip.
travelDuration enum no Bias to a trip length: any, one week, weekend, or two weeks.
tripLength string no Exact days, as a number or a range like 5-10.
travelClass enum no Economy, premium economy, business, or first.
maxPrice integer no Drop deals above this price.
maxStops enum no Any, nonstop only, up to 1 stop, or up to 2 stops.
maxDurationMinutes integer no Drop longer deals. Note this makes the source stop returning the typical-price baseline, which turns off the savings fields.
includeAirlines string no Comma-separated airline codes to keep. Cannot be combined with excludeAirlines.
excludeAirlines string no Comma-separated airline codes to drop.
maxDealsPerAirport integer no Cap deals per airport. Default and maximum 30.

Worked examples

Basic — a realistic first run
{
  "departureId": "LAX",
  "maxStops": "nonstop",
  "maxPrice": 400
}
POWER-USER TIP
POWER-USER TIP
POWER-USER TIP

Tasks

Saved runs with the inputs already filled in — each one a standalone page and a working configuration example.

Request a task →

Code

curl

curl -X POST "https://api.apify.com/v2/acts/johnvc~google-flights-deals-api/run-sync-get-dataset-items" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"departureId": "LAX", "maxStops": "nonstop", "maxPrice": 400}'

Python

from apify_client import ApifyClient

client = ApifyClient("APIFY_TOKEN")
run = client.actor("johnvc/google-flights-deals-api").call(
    run_input={'departureId': 'LAX', 'maxStops': 'nonstop', 'maxPrice': 400}
)
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

What people use it for