# Google Flights Calendar API

> Get the lowest Google Flights fare for each departure date in a range between two airports, for one-way or round trips.

Source: https://www.sandbase.ai/apis/google-flights/calendar
API reference: https://www.sandbase.ai/apis/google-flights/calendar#api

## Facts

- Provider: Google Flights
- Type: Data API
- Endpoint: `POST https://api.sandbase.ai/v1/api/google-flights/calendar`
- Price: $0.01 per call
- Capabilities: api, google flights, travel, flights
- Billing: pay per use from one SandBase balance; no provider account or subscription needed

## Call it

`POST https://api.sandbase.ai/v1/api/google-flights/calendar` with `Authorization: Bearer $SANDBASE_API_KEY` and the parameters as a JSON body.

| Parameter | Type | Required | Allowed values |
| --- | --- | --- | --- |
| `departure_id` | string | yes |  |
| `arrival_id` | string | yes |  |
| `gl` | string | no |  |
| `hl` | string | no |  |
| `currency` | string | no |  |
| `type` | string | no |  |
| `date_range_start` | string | no |  |
| `date_range_end` | string | no |  |
| `round_trip_days` | string | no |  |
| `fixed_outbound_date` | string | no |  |
| `travel_class` | string | no |  |
| `adults` | string | no |  |
| `children` | string | no |  |
| `infants_in_seat` | string | no |  |
| `infants_on_lap` | string | no |  |
| `stops` | string | no |  |
| `exclude_airlines` | string | no |  |
| `include_airlines` | string | no |  |
| `outbound_times` | string | no |  |
| `return_times` | string | no |  |
| `json_restrictor` | string | no |  |

## FAQ

### How do I use the Google Flights Calendar API?

Send a POST request to https://api.sandbase.ai/v1/api/google-flights/calendar with your SandBase API key in the Authorization header (Bearer) and the parameters as a JSON body. You can also try it in the Playground on this page without writing code.

### How much does the Google Flights Calendar API cost?

$0.01 per call, billed from your SandBase balance. You are only charged for calls you make; there is no subscription.

### What parameters does the Google Flights Calendar API accept?

Required: departure_id (string) and arrival_id (string). Optional: gl (string), hl (string), currency (string), type (string), date_range_start (string) and date_range_end (string) and 13 more. The Parameters table and the Playground on this page list every field.

### What does the Google Flights Calendar API return?

A JSON response returned in the same HTTP request (synchronous).

### Do I need a Google Flights developer account or API key?

No. Google Flights Calendar runs through SandBase, so one SandBase API key covers this endpoint and every other API and model in the catalog. You do not need to apply for Google Flights API access separately.

## README

### Google Flights Calendar

Get the lowest Google Flights fare for each departure date in a range between two airports, for one-way or round trips.

#### Request

```bash
curl -X POST "https://api.sandbase.ai/v1/api/google-flights/calendar" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"departure_id": "AUS", "arrival_id": "JFK"}'
```

The result is returned in `outputs[0].data` as structured JSON.

#### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `departure_id` | string | Yes | Parameter defines the departure airport code or location kgmid. An airport code is an uppercase 3-letter code. You can search for it on Google Flights or IATA. For example, `CDG` is Paris Charles de Gaulle Airport and `AUS` is Austin-Bergst |
| `arrival_id` | string | Yes | Parameter defines the arrival airport code or location kgmid. An airport code is an uppercase 3-letter code. You can search for it on Google Flights or IATA. For example, `CDG` is Paris Charles de Gaulle Airport and `AUS` is Austin-Bergstro |
| `gl` | string | No | Parameter defines the country to use for the Google Flights 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 for a full list of support |
| `hl` | string | No | Parameter defines the language to use for the Google Flights search. It's a two-letter language code. (e.g., `en` for English, `es` for Spanish, or `fr` for French). Head to the Google languages page for a full list of supported Google lang |
| `currency` | string | No | Parameter defines the currency of the returned prices. Default to `USD`. Head to the Google Travel Currencies page for a full list of supported currency codes. |
| `type` | string | No | Parameter defines the type of the flights. Available options: `1` - Round trip (default) `2` - One way |
| `date_range_start` | string | No | Parameter defines the start date of the date range. The format is YYYY-MM-DD. e.g. `2026-11-12` Default to today's date. When `fixed_outbound_date` is set to `true`, this date is also used as the outbound date. |
| `date_range_end` | string | No | Parameter defines the end date of the date range. The format is YYYY-MM-DD. e.g. `2026-12-31` Default to end of next month. |
| `round_trip_days` | string | No | Parameter defines the number of days for the round trip. Default to 7. It can only be used in combination with `type` parameter set to `1` (Round trip). Parameter cannot be used with `fixed_outbound_date` parameter. |
| `fixed_outbound_date` | string | No | Parameter defines whether the outbound date is fixed. It can be set to `true` to depart on `date_range_start` and get a price for each return date in the date range, or `false` (default) to get a price for each outbound date in the date ran |
| `travel_class` | string | No | Parameter defines the travel class. Available options: `1` - Economy (default) `2` - Premium economy `3` - Business `4` - First |
| `adults` | string | No | Parameter defines the number of adults. Default to 1. |
| `children` | string | No | Parameter defines the number of children. Default to 0. |
| `infants_in_seat` | string | No | Parameter defines the number of infants in seat. Default to 0. |
| `infants_on_lap` | string | No | Parameter defines the number of infants on lap. Default to 0. |
| `stops` | string | No | 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 |
| `exclude_airlines` | string | No | 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 |
| `include_airlines` | string | No | 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 |
| `outbound_times` | string | No | Parameter defines the outbound times range. It's a string containing two (for departure only) or four (for departure and arrival) comma-separated numbers. Each number represents the beginning of an hour. For example: `4,18`: 4:00 AM - 7:00  |
| `return_times` | string | No | Parameter defines the return times range. It's a string containing two (for departure only) or four (for departure and arrival) comma-separated numbers. Each number represents the beginning of an hour. For example: `4,18`: 4:00 AM - 7:00 PM |
| `json_restrictor` | string | No | Parameter defines the fields you want to include in the output, reducing payload size for faster response. See the JSON Restrictor documentation for more details. |

#### Pricing

$0.010 per successful call. Failed calls are not charged.
