{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Flights Scraper - Every Flight, Fares & History",
    "description": "Scrape Google Flights for every flight on a route and date, one row each: fare, airline, stops, layovers, aircraft, baggage and emissions. One-way, round-trip and multi-city, with recent fare history and the typical price band included. One price per search, no per-result charge.",
    "version": "0.0",
    "x-build-id": "TXMjlD1GGxyH5qt04"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/clearpath~google-flights-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-clearpath-google-flights-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/clearpath~google-flights-scraper/runs": {
      "post": {
        "operationId": "runs-sync-clearpath-google-flights-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/clearpath~google-flights-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-clearpath-google-flights-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "origin": {
            "title": "From",
            "type": "string",
            "description": "Airport to fly from, as its three-letter code. Several codes separated by commas search all of them, for example LAX, BUR, LGB."
          },
          "destination": {
            "title": "To",
            "type": "string",
            "description": "Airport to fly to, as its three-letter code. Several codes separated by commas search all of them, for example JFK, EWR, LGA."
          },
          "departureDate": {
            "title": "Departure date",
            "type": "string",
            "description": "Date of the outbound flight, as YYYY-MM-DD. Must not be in the past."
          },
          "returnDate": {
            "title": "Return date",
            "type": "string",
            "description": "Date of the return flight, as YYYY-MM-DD. Leave empty for a one-way search."
          },
          "maxResults": {
            "title": "Maximum flights",
            "minimum": 0,
            "type": "integer",
            "description": "Stop after this many flights per search. Leave at 0 for every flight found, which is usually 100 to 300."
          },
          "flightUrl": {
            "title": "Google Flights link",
            "type": "string",
            "description": "Paste a Google Flights address to reuse the search it holds, including route, dates, cabin and travellers. Open the search you want and copy the address once results are showing. Fields below still apply on top."
          },
          "multiCityLegs": {
            "title": "Multi-city legs",
            "type": "array",
            "description": "Extra legs for a multi-city trip, each written as FROM,TO,YYYY-MM-DD. Leave empty for a one-way or return trip.",
            "items": {
              "type": "string"
            }
          },
          "searches": {
            "title": "Several routes in one run",
            "type": "array",
            "description": "One entry per route, each with its own origin, destination and dates. Any setting left out of an entry is taken from the fields above. Leave empty to search a single route.",
            "items": {
              "type": "object"
            }
          },
          "cabinClass": {
            "title": "Cabin",
            "enum": [
              "economy",
              "premium_economy",
              "business",
              "first"
            ],
            "type": "string",
            "description": "Which cabin to price. Higher cabins return fewer flights, because not every route sells them."
          },
          "adults": {
            "title": "Adults",
            "minimum": 1,
            "maximum": 9,
            "type": "integer",
            "description": "Travellers aged 18 and over. At least one is required, and all travellers together cannot exceed nine."
          },
          "children": {
            "title": "Children",
            "minimum": 0,
            "maximum": 8,
            "type": "integer",
            "description": "Travellers aged 2 to 17."
          },
          "infantsInSeat": {
            "title": "Infants in seat",
            "minimum": 0,
            "maximum": 8,
            "type": "integer",
            "description": "Travellers under 2 who occupy their own seat."
          },
          "infantsOnLap": {
            "title": "Infants on lap",
            "minimum": 0,
            "maximum": 8,
            "type": "integer",
            "description": "Travellers under 2 seated on an adult's lap. Cannot exceed the number of adults."
          },
          "maxStops": {
            "title": "Stops",
            "enum": [
              "any",
              "nonstop",
              "one_stop",
              "two_stops"
            ],
            "type": "string",
            "description": "Largest number of connections to allow. Routes with no direct service return nothing when set to non-stop."
          },
          "airlines": {
            "title": "Airlines",
            "type": "array",
            "description": "Only show these airlines, by two-letter code, or a whole alliance: ONEWORLD, SKYTEAM, STAR_ALLIANCE.",
            "items": {
              "type": "string"
            }
          },
          "excludeAirlines": {
            "title": "Exclude airlines",
            "type": "array",
            "description": "Hide these airlines, by two-letter code, or a whole alliance: ONEWORLD, SKYTEAM, STAR_ALLIANCE. Can be combined with the airlines filter above.",
            "items": {
              "type": "string"
            }
          },
          "connectingAirports": {
            "title": "Connect via",
            "type": "array",
            "description": "Only show flights that connect through these airports, by three-letter code.",
            "items": {
              "type": "string"
            }
          },
          "maxPrice": {
            "title": "Maximum price",
            "minimum": 1,
            "type": "integer",
            "description": "Hide flights above this price, in the currency selected below."
          },
          "maxDurationMinutes": {
            "title": "Maximum trip length (minutes)",
            "minimum": 1,
            "type": "integer",
            "description": "Hide flights longer than this, counted in minutes. 600 is ten hours."
          },
          "departureTimeFrom": {
            "title": "Earliest departure (hour)",
            "minimum": 0,
            "maximum": 23,
            "type": "integer",
            "description": "Whole hour in local time at the departure airport, 0 to 23."
          },
          "departureTimeTo": {
            "title": "Latest departure (hour)",
            "minimum": 0,
            "maximum": 23,
            "type": "integer",
            "description": "Whole hour in local time at the departure airport, 0 to 23."
          },
          "arrivalTimeFrom": {
            "title": "Earliest arrival (hour)",
            "minimum": 0,
            "maximum": 23,
            "type": "integer",
            "description": "Whole hour in local time at the arrival airport, 0 to 23."
          },
          "arrivalTimeTo": {
            "title": "Latest arrival (hour)",
            "minimum": 0,
            "maximum": 23,
            "type": "integer",
            "description": "Whole hour in local time at the arrival airport, 0 to 23."
          },
          "lessEmissions": {
            "title": "Lower emissions only",
            "type": "boolean",
            "description": "Only show flights Google marks as having lower carbon emissions than typical for the route."
          },
          "carryOnBags": {
            "title": "Carry-on bags",
            "minimum": 0,
            "maximum": 9,
            "type": "integer",
            "description": "Price every fare with this many carry-on bags included. This changes the prices shown, it does not remove flights."
          },
          "checkedBags": {
            "title": "Checked bags",
            "minimum": 0,
            "maximum": 9,
            "type": "integer",
            "description": "Price every fare with this many checked bags included. This changes the prices shown, it does not remove flights."
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "top",
              "price",
              "duration",
              "departure_time",
              "arrival_time",
              "emissions"
            ],
            "type": "string",
            "description": "Order of the results."
          },
          "currency": {
            "title": "Currency",
            "enum": [
              "AED",
              "ALL",
              "AMD",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BGN",
              "BHD",
              "BMD",
              "BRL",
              "BSD",
              "BYN",
              "CAD",
              "CHF",
              "CLP",
              "CNY",
              "COP",
              "CRC",
              "CUP",
              "CZK",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "EUR",
              "GBP",
              "GEL",
              "HKD",
              "HRK",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KRW",
              "KWD",
              "KZT",
              "LBP",
              "MAD",
              "MDL",
              "MKD",
              "MXN",
              "MYR",
              "NGN",
              "NOK",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PHP",
              "PKR",
              "PLN",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "SAR",
              "SEK",
              "SGD",
              "THB",
              "TRY",
              "TWD",
              "UAH",
              "USD",
              "UYU",
              "VND",
              "XPF",
              "ZAR"
            ],
            "type": "string",
            "description": "Currency the fares are quoted in."
          },
          "market": {
            "title": "Country",
            "pattern": "^[A-Za-z]{2}$",
            "type": "string",
            "description": "Country to search from. Fares and availability differ by country, so this changes the results as well as the default currency."
          },
          "language": {
            "title": "Language",
            "pattern": "^[A-Za-z]{2}$",
            "type": "string",
            "description": "Language for airline and airport names."
          },
          "includeReturnFlights": {
            "title": "Include matching return flights",
            "type": "boolean",
            "description": "On a round-trip search, also collect the return flights that pair with each outbound option. Considerably slower, and only applies when a return date is set."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}