JustSERPDocs
Google

Google Flights Deals

The cheap flights Google lists for an origin ("Find cheap flights"), answered as the document with `deals`: thirty destinations in Google's order, each with its own dates, the price against the usual one, the airline and the stops.

GET
/v1/google/flights/deals

The cheap flights Google lists for an origin ("Find cheap flights"), answered as the document with deals: thirty destinations in Google's order, each with its own dates, the price against the usual one, the airline and the stops. q (Google's free-text deals) is refused (400). A captcha (/sorry/) is captcha.

Authorization

headerX-API-Key<token>

Your API key.

Query Parameters

cancel_token?string

A name you make up for this request (a UUID is fine), so you can later GET /v1/cancel with it. Only you know it, so only you can cancel. Use a new one for every request, retries included: a cancelled token stays cancelled for a few minutes.

Length1 <= length <= 128
departure_id*string

Airport code or place id (a city covers its airports); up to 10.

flight_type?string
Default"round_trip"
Value in"round_trip""one_way"
adults?integer
Range1 <= value
Default1
children?integer
Range0 <= value
Default0
infants_in_seat?integer
Range0 <= value
Default0
infants_on_lap?integer
Range0 <= value
Default0
travel_class?string
Default"economy"
Value in"economy""premium_economy""business""first_class"
stops?string
Default"any"
Value in"any""nonstop""one_stop_or_fewer""two_stops_or_fewer"
max_price?integer
included_airlines?string

Airline codes or ONEWORLD, SKYTEAM, STAR_ALLIANCE.

currency?string
Default"USD"
hl?string
Default"en"
gl?string
Default"us"

Response Body

The deals, as the document. When the page could not be parsed, the usual envelope.

application/json
  1. response

The first three keys of every parsed 200 (the answer is the document itself, no success/data envelope): what the search was (search_metadata), what it asked (search_parameters), the parser's own search_information ({} when it has none). The engine's blocks follow, at the same level. An engine whose answer is a list puts it under results.

search_metadata*
search_parameters*

The request's own fields as sent, engine first, without cancel_token.

search_information*

The parser's own, e.g. yelp_search's; otherwise {}.

deals?array<>
[key: string]?any
Example Request
curl -X GET 'https://api.justserp.com/v1/google/flights/deals?departure_id=%2Fm%2F02_286&stops=nonstop&max_price=500'
Example Response
{  "search_metadata": {    "id": "string",    "status": "Success",    "created_at": "string",    "request_url": "string",    "html_url": "string"  },  "search_parameters": {},  "search_information": {},  "deals": [    {      "position": 0,      "destination": {        "name": "string",        "country": "string",        "airport_code": "string",        "kgmid": "string",        "image": "string",        "tagline": "string",        "description": "string"      },      "origin": {        "airport_code": "string"      },      "outbound_date": "2019-08-24",      "return_date": "2019-08-24",      "trip_length_days": 0,      "price": 0,      "typical_price": 0,      "savings_amount": 0,      "savings_percentage": 0,      "stops": 0,      "flight_duration": "string",      "duration": 0,      "airline": "string",      "airline_code": "string",      "booking_link": "string",      "is_round_trip": true,      "is_multiple_airlines": true    }  ]}