Google Flights Deals API
Google Flights Deals API
- Price
- 0.025000 USDT / request
- Status
- Available
- Official reference
- 0.025000 USDT / request
- Protocols
- REST · MCP
Run a test
Runs are submitted only when you click Run. Check the input and cost limit first.
Tests use your account balance and the selected key’s budget. The cost limit caps this API call; it does not include future calls or recurring upstream jobs.
Run a test to see its status, charges and response here.
API reference
A successful asynchronous create call returns a receipt. Use the provider’s status/result operation with that receipt ID to check whether the upstream job has completed.
curl https://gw.asale.ai/v1/tool-runs \
-H 'Authorization: Bearer <ASALE_API_KEY>' \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
-d '{
"tool": "search.google.flights.deals",
"input": {
"query": {
"query": "IANA example domains"
}
},
"max_cost_micros": 25000
}'curl https://gw.asale.ai/v1/tool-runs/<RUN_ID> -H 'Authorization: Bearer <ASALE_API_KEY>'| Parameter | Required | Type |
|---|---|---|
| query | No | object |
Full input schema
{
"additionalProperties": false,
"properties": {
"query": {
"additionalProperties": false,
"properties": {
"adults": {
"description": "Parameter defines the number of adults. Default to 1.",
"type": [
"string",
"number",
"boolean"
]
},
"async": {
"description": "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](https://Asale.com/search-archive-api) to retrieve your results. `async` and `no_ca",
"type": [
"string",
"number",
"boolean"
]
},
"children": {
"description": "Parameter defines the number of children. Default to 0.",
"type": [
"string",
"number",
"boolean"
]
},
"currency": {
"description": "Parameter defines the currency of the returned prices. Default to `USD`. Head to the [Google Travel Currencies page](https://Asale.com/google-travel-currencies) for a full list of supported currency codes.",
"type": [
"string",
"number",
"boolean"
]
},
"departure_id": {
"description": "Parameter defines the departure airport code or location kgmid. An airport code is an uppercase 3-letter code. You can search for it using our [Google Flights Autocomplete API](https://Asale.com/google-flights-autocomplete-api) or [IATA](https://www.iata.org/en/publications/directories/code-search). For example, `CDG` is Paris Charles de Gaulle Airport and `AUS` is Austin-Bergstrom International",
"type": [
"string",
"number",
"boolean"
]
},
"exclude_airlines": {
"description": "Parameter defines the airline codes to be excluded. Split multiple airlines with comma. It can't be used together with `include_airlines`. 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](https://www.iata.org/en/publications/directories/code-search). For example, `UA` is",
"type": [
"string",
"number",
"boolean"
]
},
"gl": {
"description": "Parameter defines the country to use for the Google Flights Deals 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](https://Asale.com/google-countries) for a full list of supported Google countries.",
"type": [
"string",
"number",
"boolean"
]
},
"hl": {
"description": "Parameter defines the language to use for the Google Flights Deals search. It's a two or three-letter language code. (e.g., `en` for English, `es` for Spanish, or `fr` for French), optionally followed by a two-letter or three-digit region code (e.g., `en-gb` for British English, or `es-419` for Latin American Spanish). Head to the [Google languages page](https://Asale.com/google-languages) for a",
"type": [
"string",
"number",
"boolean"
]
},
"include_airlines": {
"description": "Parameter defines the airline codes to be included. Split multiple airlines with comma. It can't be used together with `exclude_airlines`. 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](https://www.iata.org/en/publications/directories/code-search). For example, `UA` is",
"type": [
"string",
"number",
"boolean"
]
},
"infants_in_seat": {
"description": "Parameter defines the number of infants in seat. Default to 0.",
"type": [
"string",
"number",
"boolean"
]
},
"infants_on_lap": {
"description": "Parameter defines the number of infants on lap. Default to 0.",
"type": [
"string",
"number",
"boolean"
]
},
"json_restrictor": {
"description": "Parameter defines the fields you want to include in the output, reducing payload size for faster response. See the [JSON Restrictor documentation](https://Asale.com/json-restrictor) for more details.",
"type": [
"string",
"number",
"boolean"
]
},
"max_duration": {
"description": "Parameter defines the maximum flight duration, in minutes. For example, specify `1500` for 25 hours. If your search returns no results, try increasing your `max_duration` by up to `200` minutes to account for route-specific scheduling variances.",
"type": [
"string",
"number",
"boolean"
]
},
"max_price": {
"description": "Parameter defines the maximum ticket price. Default to unlimited.",
"type": [
"string",
"number",
"boolean"
]
},
"no_cache": {
"description": "Parameter will force SerpApi to fetch the Google Flights Deals 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 t",
"type": [
"string",
"number",
"boolean"
]
},
"outbound_date": {
"description": "Parameter defines when you want to depart. Use a single YYYY-MM-DD date for an exact departure date, or two comma-separated dates for a flexible departure window. Asalemples: `2026-09-14` — depart on this exact date `2026-09-14,2026-10-13` — depart anytime within this window With a **single date**: `return_date` (single date) is required for round trip flights. With a **date range**: optionally co",
"type": [
"string",
"number",
"boolean"
]
},
"output": {
"description": "Parameter defines the format of the result. It can be set to `json` (default) to get a structured JSON of the results, `html` to get the raw HTML retrieved, or `md` to get a markdown-formatted version optimized for LLMs and AI agents.",
"type": [
"string",
"number",
"boolean"
]
},
"query": {
"description": "Parameter defines the natural language query for Google Flights Deals. e.g. `High rises`, `beach vacation next month`. Cannot be combined with `travel_duration` or `trip_length`. Describe the trip duration in `query` instead.",
"type": [
"string",
"number",
"boolean"
]
},
"return_date": {
"description": "Parameter defines when you want to return. Use a single YYYY-MM-DD date for an exact return date, or two comma-separated dates for a flexible return window. Asalemples: `2026-09-20` — return on this exact date (use with a single `outbound_date`) `2026-09-20,2026-10-20` — return anytime within this window (use with a range `outbound_date`) Not available for one-way flights (`type` = `2`). A single",
"type": [
"string",
"number",
"boolean"
]
},
"stops": {
"description": "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",
"type": [
"string",
"number",
"boolean"
]
},
"travel_class": {
"description": "Parameter defines the travel class. Available options: `1` - Economy (default) `2` - Premium economy `3` - Business `4` - First",
"type": [
"string",
"number",
"boolean"
]
},
"travel_duration": {
"description": "Parameter defines a preset trip duration when searching with flexible dates. Available options: `1` - 1 week (default) `2` - Weekend `3` - 2 weeks Can be used alone (deals of this duration, any departure date) or with `outbound_date` as a date range (e.g., `2026-09-14,2026-10-13`) to limit the departure window. Cannot be combined with `return_date`, `trip_length`, or `query`. Not available for o",
"type": [
"string",
"number",
"boolean"
]
},
"trip_length": {
"description": "Parameter defines a custom trip length in days when searching with flexible dates. Provide a single number for an exact duration, or two comma-separated numbers for a min/max range. Asalemples: `7` — exactly 7 days `5,10` — between 5 and 10 days Can be used alone (deals of this length, any departure date) or with `outbound_date` as a date range (e.g., `2026-09-14,2026-10-13`) to limit the departur",
"type": [
"string",
"number",
"boolean"
]
},
"type": {
"description": "Parameter defines the type of the flights. Available options: `1` - Round trip (default) `2` - One way",
"type": [
"string",
"number",
"boolean"
]
},
"zero_trace": {
"description": "Enterprise only. Parameter enables [ZeroTrace mode](https://Asale.com/zero-trace-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.",
"type": [
"string",
"number",
"boolean"
]
}
},
"required": [],
"type": "object"
}
},
"required": [],
"type": "object"
}Price
0.025000 USDT / request
Tests use your account balance and the selected key’s budget. The cost limit caps this API call; it does not include future calls or recurring upstream jobs.
Price revision 4
Search
Asale matches available channels by price. The reference is the highest verified channel reference price. Only definite rejections may transfer to another channel; uncertain executions require reconciliation to avoid duplicate charges.
Supply channels: 1