# stabletravel.dev Google Flights Booking Options

> stabletravel.dev Google Flights Booking Options is a paid API for AI agents from stabletravel.dev, paid per call via x402 or MPP, $0.02/call, status unknown (last checked 2026-10-10, last successful call 2026-05-18).

Retrieves booking options for a specific flight using a departure token obtained from a prior flight search result

## Facts

- Endpoint: GET https://stabletravel.dev/api/google-flights/booking?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402, MPP
- Status: unknown
- Last checked: 2026-10-10
- Last successful call: 2026-05-18
- Success rate: 33% of calls made through Zero
- Rating: 1.3 / 5 from 1 review
- Activations on Zero: 3
- Tags: x402
- Canonical page: https://www.zero.xyz/c/stabletravel-dev-b587b3ba
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_S1jN47DcVOwksyRmOCW8u

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability stabletravel-dev-b587b3ba
```

Example prompt: I found a flight from JFK to LAX on May 20th for 2 adults in economy — I have the departure token from the search. Can you fetch all the booking options and price insights for it so I can see where to actually purchase the ticket?

## When to prefer this

Use this endpoint after obtaining a departure_token from a flight search result when you need to retrieve specific booking URLs and price insights for a chosen itinerary. This is the second step in a two-step flight booking workflow — search first, then call this endpoint with the token to get actionable booking links.

## Known failure modes

- Invalid or expired departure_token returns empty booking options or error
- Missing required parameters (departure_id, arrival_id, outbound_date) returns 400 validation error
- departure_token from a different search context may yield no results
- Round-trip type (type=1) without return_date may cause unexpected behavior
- Invalid currency code (not 3-char ISO) returns validation error
- Payment failure (x402) if USDC balance is insufficient

## How this service works

Get booking options for a specific flight. Requires a departure_token from a search result.

## Output

Returns booking options including direct airline links and third-party booking URLs, price insights (price level, lowest price, typical price range, price history), and structured fare information for the selected flight itinerary

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "$schema": "https://json-schema.org/draft/2020-12/schema",
     "required": [
      "departure_id",
      "arrival_id",
      "outbound_date",
      "type",
      "adults",
      "children",
      "infants_in_seat",
      "infants_on_lap",
      "currency",
      "hl",
      "departure_token"
     ],
     "properties": {
      "hl": {
       "type": "string",
       "default": "en"
      },
      "type": {
       "enum": [
        "1",
        "2",
        "3"
       ],
       "type": "string",
       "default": "1",
       "description": "1 = Round trip, 2 = One way, 3 = Multi-city"
      },
      "adults": {
       "type": "integer",
       "default": 1,
       "maximum": 9,
       "minimum": 1
      },
      "children": {
       "type": "integer",
       "default": 0,
       "maximum": 9,
       "minimum": 0
      },
      "currency": {
       "type": "string",
       "default": "USD",
       "maxLength": 3,
       "minLength": 3
      },
      "arrival_id": {
       "type": "string"
      },
      "return_date": {
       "type": "string",
       "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
      },
      "departure_id": {
       "type": "string"
      },
      "travel_class": {
       "enum": [
        "1",
        "2",
        "3",
        "4"
       ],
       "type": "string",
       "description": "1 = Economy, 2 = Premium economy, 3 = Business, 4 = First"
      },
      "outbound_date": {
       "type": "string",
       "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
      },
      "infants_on_lap": {
       "type": "integer",
       "default": 0,
       "maximum": 9,
       "minimum": 0
      },
      "departure_token": {
       "type": "string",
       "description": "Token from a search result to get booking options"
      },
      "infants_in_seat": {
       "type": "integer",
       "default": 0,
       "maximum": 9,
       "minimum": 0
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": 
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "booking_options": [
   {
    "url": "https://www.aa.com/booking",
    "price": 350,
    "book_with": "American Airlines",
    "option_title": "Book with American Airlines"
   }
  ],
  "selected_flights": [
   {
    "price": 350,
    "flights": [
     {
      "airline": "American",
      "duration": 360,
      "flight_number": "AA 100",
      "arrival_airport": {
       "id": "LAX",
       "name": "LAX",
       "time": "2026-12-01 11:00"
      },
      "departure_airport": {
       "id": "JFK",
       "name": "JFK",
       "time": "2026-12-01 08:00"
      }
     }
    ],
    "total_duration": 360
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/stabletravel-dev-b587b3ba/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from stabletravel.dev](https://www.zero.xyz/host/stabletravel.dev/llms.txt)
