# Google Flights Scraper (x402)

> Google Flights Scraper (x402) is a paid API for AI agents from x402.186-241-26-229.sslip.io, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Searches Google Flights and returns structured flight itinerary data for a given origin, destination, and date, billed per successful call via x402 micropayment.

## Facts

- Endpoint: POST https://x402.186-241-26-229.sslip.io/v1/google-flights?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/google-flights-scraper-x402-a615607e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_SG03YOr-HSyAOxPQzaW9W

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 google-flights-scraper-x402-a615607e -d '<json body>'
```

Example prompt: Search Google Flights for round-trip flights from LAX to JFK departing on 2025-08-10 and returning on 2025-08-17 for 2 adults — show me only nonstop options under $400 USD.

## When to prefer this

Choose this endpoint when you need structured, machine-readable flight itinerary data from Google Flights without managing browser automation or scraping infrastructure yourself. It is ideal for travel planning agents, price comparison workflows, and itinerary suggestion pipelines that require real fare data on a pay-per-successful-call basis. Prefer it over raw scraping when you want cost predictability (no charge for empty runs) and a clean JSON schema ready for downstream processing.

## Known failure modes

- Invalid or unsupported IATA airport code returns empty result set (not charged)
- Past or invalid outbound date yields no itineraries
- Overly restrictive filters (max_price too low, max_stops=0 on thin routes) return empty results (not charged)
- Google Flights anti-scraping changes may intermittently reduce result availability
- Unsupported currency or locale codes may fall back to defaults or return errors

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

Returns a JSON object with a count of matching itineraries and an array of flight items, each containing fields like flightId, tripType, outboundDate, departureAirport, arrivalAirport, departureAirportName, arrivalAirportName, and resultCategory. Failed or empty result sets are not charged.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "gl": {
   "type": "string",
   "default": "us",
   "description": "Country code for the search page, such as us."
  },
  "hl": {
   "type": "string",
   "default": "en",
   "description": "Language code for the search page, such as en."
  },
  "adults": {
   "type": "integer",
   "default": 1,
   "maximum": 9,
   "minimum": 1,
   "description": "Number of adult travelers included in the displayed price."
  },
  "airlines": {
   "type": "string",
   "default": "",
   "description": "Optional comma-separated airline codes, such as AA,DL. Keep matching returned itineraries."
  },
  "currency": {
   "type": "string",
   "default": "USD",
   "description": "Three-letter currency code for displayed prices, such as USD or EUR."
  },
  "maxItems": {
   "type": "integer",
   "default": 100,
   "minimum": 0,
   "description": "Maximum flight rows to save. Set 0 for every itinerary exposed in the initial result set."
  },
  "max_price": {
   "type": "integer",
   "minimum": 1,
   "description": "Keep only returned itineraries at or below this displayed price."
  },
  "max_stops": {
   "type": "integer",
   "minimum": 0,
   "description": "Keep itineraries with at most this many stops. Set 0 for nonstop flights."
  },
  "arrival_id": {
   "type": "string",
   "description": "One three-letter IATA airport code, such as JFK. The search is for one arrival airport."
  },
  "return_date": {
   "type": "string",
   "description": "Optional return date in YYYY-MM-DD format. Leave empty for a one-way search."
  },
  "departure_id": {
   "type": "string",
   "description": "One three-letter IATA airport code, such as LAX. The search is for one departure airport."
  },
  "outbound_date": {
   "type": "string",
   "description": "Departure date in YYYY-MM-DD format. Use a future date with published fares."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "flightId": null,
    "tripType": null,
    "outboundDate": null,
    "arrivalAirport": null,
    "resultCategory": null,
    "departureAirport": null,
    "arrivalAirportName": null,
    "departureAirportName": null
   }
  ],
  "product": "google-flights"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/google-flights-scraper-x402-a615607e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.186-241-26-229.sslip.io](https://www.zero.xyz/host/x402.186-241-26-229.sslip.io/llms.txt)
