{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Flights Scraper API 💰$2/1k — Fares & Multi-City",
    "description": "[💰$2/1K] Google Flights scraper for fare monitoring and price comparison. One-way, round-trip & multi-city from airports, cities or countries, with every Google filter. Explore cheapest trips anywhere, price graph, return flights, CO2, layovers, bags, booking options & a link per flight.",
    "version": "0.0",
    "x-build-id": "joGBK4WRhqRAu8P6G"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/memo23~google-flights-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-memo23-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/memo23~google-flights-scraper/runs": {
      "post": {
        "operationId": "runs-sync-memo23-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/memo23~google-flights-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-memo23-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": {
          "startUrls": {
            "title": "Google Flights URLs (optional)",
            "type": "array",
            "description": "Paste Google Flights URLs instead of filling the route fields — either the address-bar URL after a search (with tfs=…) or a query URL like https://www.google.com/travel/flights?q=Flights+from+DPS+to+LGK+on+2026-11-03 (city names work too: q=Flights+from+Paris+to+New+York+on+2026-11-03). Each URL is its own search: route, dates, cabin, passengers and the URL's curr/hl/gl are read from it, and the From/To, date and multi-city fields below are ignored, so you don't need to clear them. The link's own filters come along too (airlines, connecting airports, layover length, stops). An Explore link (google.com/travel/explore?tfs=…) runs as an Explore search, and a round-trip link with the outbound flight already picked lists that flight's return flights, as the site does. The settings below still apply.",
            "items": {
              "type": "string"
            }
          },
          "searches": {
            "title": "More searches in the same run (advanced)",
            "type": "array",
            "description": "Run several searches in one run. Each entry is an object with the same fields as this form (origin, destination, departDate, returnDate, multiCityLegs, exploreDestinations, filters…). Anything an entry leaves out comes from the form, except the route: give each entry its own origin/destination/dates. Rows carry search-index (1, 2, …) so you can tell the searches apart. Startup is charged once per run, not per search."
          },
          "origin": {
            "title": "From (airport, city or country)",
            "type": "string",
            "description": "Where the trip starts: an airport IATA code (LAX), several codes comma-separated (LAX,BUR,LGB), or a city, region or country name as Google Flights spells it (\"Los Angeles\", \"Paris, France\", \"United Kingdom\"). A name searches every airport Google lists for it. Separate several names with \";\". Defaults to LAX if left empty."
          },
          "destination": {
            "title": "To (airport, city or country)",
            "type": "string",
            "description": "Where the trip goes: an airport IATA code (JFK), several codes comma-separated (JFK,EWR,LGA), or a city, region or country name (\"New York\", \"Japan\"). Separate several names with \";\". Defaults to JFK if left empty."
          },
          "departDate": {
            "title": "Departure date",
            "type": "string",
            "description": "Departure date. Leave empty to default to ~30 days from today (so the Actor always runs out of the box). Format YYYY-MM-DD, e.g. 2026-08-04."
          },
          "returnDate": {
            "title": "Return date (optional)",
            "type": "string",
            "description": "Return date for a round trip. Leave empty for one-way. Format YYYY-MM-DD, e.g. 2026-08-11."
          },
          "departDaysAhead": {
            "title": "Depart N days from the run date",
            "minimum": 0,
            "maximum": 330,
            "type": "integer",
            "description": "Instead of a fixed date: depart this many days after the day the run starts (e.g. 30). Wins over the departure date, so a saved or scheduled run keeps searching ahead."
          },
          "tripLengthDays": {
            "title": "Trip length (days)",
            "minimum": 0,
            "maximum": 330,
            "type": "integer",
            "description": "Return this many days after departure (e.g. 7). Wins over the return date; works with either a fixed or a relative departure."
          },
          "departDateWindowDays": {
            "title": "Also search the next N departure dates",
            "minimum": 0,
            "maximum": 30,
            "type": "integer",
            "description": "Searches the departure date plus each of the next N days as separate searches (max 30), keeping the trip length. Rows carry search-label with the dates. Each date is a search of its own.",
            "default": 0
          },
          "multiCityLegs": {
            "title": "Multi-city legs (advanced)",
            "type": "array",
            "description": "For multi-city trips only. Add one row per leg as ORIGIN-DESTINATION-DATE, e.g. LAX-JFK-2026-08-04. Origin and destination take airport codes or names (Paris-Tokyo-2026-08-04). When set, this overrides the From / To / dates above. Leave empty for one-way or round-trip.",
            "items": {
              "type": "string"
            }
          },
          "multiCityPricing": {
            "title": "Multi-city pricing",
            "enum": [
              "single_ticket",
              "separate_tickets"
            ],
            "type": "string",
            "description": "single_ticket (default): the whole trip as one ticket, priced the way Google Flights shows it; each row is a first-leg flight with the ticket price, and the top rows get their later legs picked (leg-2-…, leg-3-… columns). separate_tickets: each leg searched on its own as a one-way, rows tagged multi-city-leg.",
            "default": "single_ticket"
          },
          "multiCityCompleteTop": {
            "title": "Multi-city: complete the top N tickets",
            "minimum": 0,
            "maximum": 50,
            "type": "integer",
            "description": "With one-ticket pricing, how many of the cheapest-listed first-leg flights get their later legs picked (the cheapest flight on each later leg). Each takes one extra request per later leg.",
            "default": 5
          },
          "adults": {
            "title": "Adults",
            "minimum": 1,
            "type": "integer",
            "description": "Number of adult passengers (12+).",
            "default": 1
          },
          "children": {
            "title": "Children",
            "type": "integer",
            "description": "Number of child passengers (2-11).",
            "default": 0
          },
          "infantsInSeat": {
            "title": "Infants (in seat)",
            "type": "integer",
            "description": "Infants with their own seat.",
            "default": 0
          },
          "infantsOnLap": {
            "title": "Infants (on lap)",
            "type": "integer",
            "description": "Infants on an adult's lap.",
            "default": 0
          },
          "cabinClass": {
            "title": "Cabin class",
            "enum": [
              "economy",
              "premium_economy",
              "business",
              "first"
            ],
            "type": "string",
            "description": "Cabin class for the search.",
            "default": "economy"
          },
          "currency": {
            "title": "Currency",
            "type": "string",
            "description": "ISO 4217 currency code for prices, e.g. USD, EUR, GBP. If Google doesn't price in it for the chosen market, the run says so and labels prices with the currency Google actually used.",
            "default": "USD"
          },
          "market": {
            "title": "Market (country)",
            "type": "string",
            "description": "Country/market code, e.g. US, GB, DE. Affects pricing and availability. UK and country names such as Germany are accepted and converted (UK becomes GB).",
            "default": "US"
          },
          "language": {
            "title": "Language",
            "type": "string",
            "description": "Language code, e.g. en, de, fr.",
            "default": "en"
          },
          "maxItems": {
            "title": "Max results",
            "type": "integer",
            "description": "Maximum number of itineraries to return. Default 100; a busy route typically has ~100-150. On multi-city runs the cap is split evenly across the legs.",
            "default": 100
          },
          "maxStops": {
            "title": "Max stops",
            "minimum": 0,
            "maximum": 2,
            "type": "integer",
            "description": "Filter by number of stops: 0 = nonstop only, 1 = up to 1 stop, 2 = up to 2 stops. Leave empty for any number of stops."
          },
          "airlines": {
            "title": "Airlines (include only)",
            "type": "array",
            "description": "Only flights from these airlines: two-letter codes or names as Google Flights shows them, e.g. [\"DL\"], [\"Air France\", \"KLM\"]. Leave empty for all airlines.",
            "items": {
              "type": "string"
            }
          },
          "alliances": {
            "title": "Alliances (include only)",
            "type": "array",
            "description": "Only flights from these alliances: ONEWORLD, SKYTEAM, STAR_ALLIANCE. Combines with Airlines above (either matches).",
            "items": {
              "type": "string"
            }
          },
          "excludeAirlines": {
            "title": "Exclude airlines or alliances",
            "type": "array",
            "description": "Leave out these airlines (codes or names, e.g. [\"Spirit\", \"F9\"]) and/or alliances ([\"SKYTEAM\"]).",
            "items": {
              "type": "string"
            }
          },
          "returnMaxStops": {
            "title": "Return: max stops",
            "minimum": 0,
            "maximum": 2,
            "type": "integer",
            "description": "Round trips only: the return's own stops limit (0 = nonstop, 1, 2), over 'Max stops' above. E.g. nonstop out, up to 1 stop back."
          },
          "returnAirlines": {
            "title": "Return: only these airlines",
            "type": "array",
            "description": "Round trips only: airlines (codes or names) or alliances for the return flight, over the airlines above.",
            "items": {
              "type": "string"
            }
          },
          "returnExcludeAirlines": {
            "title": "Return: exclude these airlines",
            "type": "array",
            "description": "Round trips only: airlines or alliances to leave out of the return flight.",
            "items": {
              "type": "string"
            }
          },
          "maxPrice": {
            "title": "Max price",
            "minimum": 1,
            "type": "integer",
            "description": "Only return itineraries at or below this price, in the selected currency. Leave empty for no price cap."
          },
          "outboundDepartureTime": {
            "title": "Outbound departure time",
            "type": "string",
            "description": "Hour window for the outbound departure, 24-hour clock, e.g. 6-12 for morning departures or 18-24 for evening. Multi-city legs all use this window."
          },
          "outboundArrivalTime": {
            "title": "Outbound arrival time",
            "type": "string",
            "description": "Hour window for the outbound arrival, e.g. 8-20."
          },
          "returnDepartureTime": {
            "title": "Return departure time",
            "type": "string",
            "description": "Round trips: hour window for the return departure, e.g. 12-24."
          },
          "returnArrivalTime": {
            "title": "Return arrival time",
            "type": "string",
            "description": "Round trips: hour window for the return arrival, e.g. 0-23."
          },
          "maxDurationHours": {
            "title": "Max trip duration (hours)",
            "minimum": 1,
            "type": "integer",
            "description": "Longest journey per direction, layovers included."
          },
          "connectOnlyVia": {
            "title": "Connect only via",
            "type": "array",
            "description": "Connections must change planes at one of these airports, e.g. [\"ORD\",\"DFW\"]. Nonstop flights still show.",
            "items": {
              "type": "string"
            }
          },
          "neverConnectVia": {
            "title": "Never connect via",
            "type": "array",
            "description": "Never change planes at these airports, e.g. [\"JFK\"].",
            "items": {
              "type": "string"
            }
          },
          "minLayoverHours": {
            "title": "Min layover (hours)",
            "minimum": 1,
            "type": "number",
            "description": "Shortest connection time allowed. Half hours work too, e.g. 1.5."
          },
          "maxLayoverHours": {
            "title": "Max layover (hours)",
            "minimum": 1,
            "type": "number",
            "description": "Longest connection time allowed. Half hours work too, e.g. 1.5."
          },
          "checkedBags": {
            "title": "Checked bags",
            "minimum": 0,
            "maximum": 9,
            "type": "integer",
            "description": "Price fares with checked bags, as Google's Bags filter does: the total for the whole party, at most one per traveller with a seat (more makes Google refuse the search, so it is capped). Google adds the airline's bag fee to each price where it knows it."
          },
          "carryOnBags": {
            "title": "Carry-on bags",
            "minimum": 0,
            "maximum": 9,
            "type": "integer",
            "description": "Price fares with carry-on bags: the total for the whole party, at most one per traveller with a seat (lap infants don't count). Each bag adds the airline's fee, e.g. 2 adults with 2 carry-ons pay two fees."
          },
          "excludeBasicEconomy": {
            "title": "Exclude basic economy",
            "type": "boolean",
            "description": "Leave out basic-economy fares (US carriers).",
            "default": false
          },
          "lessEmissionsOnly": {
            "title": "Less emissions only",
            "type": "boolean",
            "description": "Only flights Google marks as lower emissions.",
            "default": false
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "top",
              "price",
              "departure",
              "arrival",
              "duration",
              "emissions"
            ],
            "type": "string",
            "description": "Order of the results: Google's top flights, or by price, departure time, arrival time, duration or emissions.",
            "default": "top"
          },
          "priceGraphDays": {
            "title": "Price graph (days)",
            "minimum": 0,
            "maximum": 330,
            "type": "integer",
            "description": "Also return Google's price graph: the cheapest fare for each departure date, starting at your departure date, for this many days (up to 330). Round trips keep your trip length. Each day is one row (record-type \"price-graph\"). 0 = off.",
            "default": 0
          },
          "dateGridDays": {
            "title": "Date grid: ± days around your dates (round trips)",
            "minimum": 0,
            "maximum": 7,
            "type": "integer",
            "description": "Round trips only. Adds Google's date grid: the cheapest price for every departure date within ±N days of yours paired with every return date within ±N days of yours (3 → a 7 × 7 grid of 49 prices). One row per date pair, record-type date-grid, with price-rank (1 = cheapest).",
            "default": 0
          },
          "priceCalendarOnly": {
            "title": "Price calendar only (no flight rows)",
            "type": "boolean",
            "description": "Write only the price-graph and date-grid rows, not the flights. A cheap way to watch prices across dates. Needs 'Price graph' days or a date grid.",
            "default": false
          },
          "searchSummaryRow": {
            "title": "Add a summary row per search",
            "type": "boolean",
            "description": "Adds one row per search (record-type search-summary): flights found, the cheapest price and flight, the cheapest nonstop, Google's price level and typical range, and its recent price history as a list. Handy for price trackers. Counts as one result.",
            "default": false
          },
          "includeRawData": {
            "title": "Include Google's raw data",
            "type": "boolean",
            "description": "Attach Google's own itinerary array to each flight row as raw-google (nested JSON), for fields this Actor doesn't map. Makes rows much larger.",
            "default": false
          },
          "returnFlightsTop": {
            "title": "Return flights: for the top N outbound flights",
            "minimum": 0,
            "maximum": 50,
            "type": "integer",
            "description": "Round trips: list the return flights for the first N outbound flights, each with its round-trip price and a booking link (rows with record-type \"return-flight\", linked by outbound-index). 0 = off.",
            "default": 0
          },
          "returnFlightsPerOutbound": {
            "title": "Return flights per outbound flight",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "How many return flights to list for each of those outbound flights.",
            "default": 5
          },
          "resolveBookingOptions": {
            "title": "Resolve booking options (OTAs + fares)",
            "type": "boolean",
            "description": "For each itinerary, fetch the bookable options — online travel agencies and airlines selling the fare, with per-option price, fare name (e.g. \"Blue Basic\"), booking domain and a booking URL. Adds extra requests per itinerary (more for round-trip), so it's capped by 'Max itineraries to resolve'. Works for one-way, round-trip and multi-city.",
            "default": false
          },
          "maxBookingItineraries": {
            "title": "Max itineraries to resolve booking options for",
            "minimum": 0,
            "type": "integer",
            "description": "When 'Resolve booking options' is on, only the first N itineraries get their booking options resolved (each is an extra request). Default 10.",
            "default": 10
          },
          "resolveBookingUrls": {
            "title": "Resolve booking URLs to the seller's site",
            "type": "boolean",
            "description": "With 'Resolve booking options' on, also follow each option's Google link to the airline's or agency's own booking page and add it as booking-option-N-final-url (e.g. an aa.com link with your flights filled in). One extra request per option.",
            "default": false
          },
          "bookingConcurrency": {
            "title": "Booking-options concurrency",
            "minimum": 1,
            "maximum": 12,
            "type": "integer",
            "description": "How many booking-option lookups to run in parallel when 'Resolve booking options' is on. Higher is faster but sends more concurrent requests through one IP; 1 = the old one-at-a-time behaviour. Default 6.",
            "default": 6
          },
          "includeLccFares": {
            "title": "Include low-cost-carrier fares (Ryanair)",
            "type": "boolean",
            "description": "Also append the direct Ryanair fares that Google Flights structurally under-shows. For the same route and date(s), adds extra rows tagged source=\"ryanair\" so you get the budget-airline prices Google misses. Works for the single origin/destination case (not multi-city).",
            "default": false
          },
          "exploreDestinations": {
            "title": "Explore: cheapest trips to anywhere",
            "type": "boolean",
            "description": "Instead of flights to one destination, list the cheapest trip from From to every destination Google Flights Explore shows (one row per destination, record-type \"explore-destination\", cheapest first). To is ignored. With a departure date (and return date) the trips use those dates; without, Google picks the cheapest dates for the month and trip length below.",
            "default": false
          },
          "exploreRegion": {
            "title": "Explore region",
            "enum": [
              "anywhere",
              "europe",
              "asia",
              "middle_east",
              "africa",
              "north_america",
              "central_america_caribbean",
              "south_america",
              "oceania"
            ],
            "type": "string",
            "description": "Where to look. Anywhere searches the world map plus every region map, which lists the most places.",
            "default": "anywhere"
          },
          "exploreCountry": {
            "title": "Explore: only this country",
            "type": "string",
            "description": "With Explore on: list only destinations in this country, as Google Flights names it (e.g. \"Italy\", \"Japan\", \"United States\"). The run also zooms the map onto the country, so smaller towns show up."
          },
          "exploreMonth": {
            "title": "Explore month (flexible dates)",
            "enum": [
              "next_6_months",
              "january",
              "february",
              "march",
              "april",
              "may",
              "june",
              "july",
              "august",
              "september",
              "october",
              "november",
              "december"
            ],
            "type": "string",
            "description": "Without a departure date: when to travel.",
            "default": "next_6_months"
          },
          "exploreTripLength": {
            "title": "Explore trip length (flexible dates)",
            "enum": [
              "weekend",
              "1_week",
              "2_weeks",
              "one_way"
            ],
            "type": "string",
            "description": "Without a departure date: the trip length, or one-way.",
            "default": "1_week"
          },
          "proxy": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Residential proxy is recommended (and on by default). Google returns empty results to datacenter IPs, so a residential IP is needed for reliable results. Responses are small, so bandwidth cost is minimal.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}