# Skyscanner Scraper | Flight Prices and Routes (`parseforge/skyscanner-scraper`) Actor

Search Skyscanner for flights with origin, destination, dates, airlines, stops, duration, layovers, and prices in any currency. Compare offers across providers and find cheapest deals for travel apps, fare tracking, price alerts, and trip planning automations worldwide.

- **URL**: https://apify.com/parseforge/skyscanner-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Travel, E-commerce, Real estate
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $19.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## ✈️ Skyscanner Scraper

> 🚀 **Export Skyscanner flight prices in seconds.** Search any route, any date - get airline names, prices, durations, stops, and booking links in one clean dataset.

> 🕒 **Last updated:** 2026-05-22 · **📊 13 fields** per record · **Up to 1,000,000 results** · **Global route coverage**

The Skyscanner Scraper extracts real-time flight search results from Skyscanner using the same mobile API the Android app uses. It resolves IATA airport codes, initiates a live search session, polls for complete results, and returns a sorted dataset of available flights - cheapest first.

Skyscanner indexes flights from hundreds of airlines and online travel agencies across every major route worldwide. This scraper surfaces those results programmatically, using Android API headers to bypass PerimeterX bot detection without needing residential proxies or browser automation.

### Target Audience

| Who | Why |
|-----|-----|
| Travel hackers | Find the cheapest fare on any route without clicking through ads |
| Travel agencies | Automate competitor fare monitoring and route pricing analysis |
| Corporate travel teams | Track flight costs for budget planning and approval workflows |
| Price alert developers | Build custom flight deal notification tools |
| Data journalists | Analyze airfare trends and route pricing over time |

### 📋 What the Skyscanner Scraper does

- Resolves IATA airport codes (e.g. JFK, LHR) to Skyscanner entity IDs automatically
- Initiates a live Skyscanner search session and polls until results are complete
- Collects all available itineraries sorted cheapest first
- Captures airline name, logo, flight number, departure/arrival times, duration, stops, and price
- Builds a direct Skyscanner deep link for each result so users can book instantly
- Works without proxies by mimicking the Skyscanner Android app API fingerprint

> 💡 **Why it matters:** Skyscanner's web interface loads results slowly through multiple API calls and is protected by PerimeterX. This actor bypasses that entirely using the Android client channel, returning complete search results in a single structured dataset - something no manual search can replicate at scale.

### 🎬 Full Demo

🚧 Coming soon

### ⚙️ Input

| Field | Type | Default | Description |
|-------|------|---------|-------------|
| `origin` | string | `JFK` | IATA code of the departure airport |
| `destination` | string | `LHR` | IATA code of the arrival airport |
| `outboundDate` | string | `2026-08-01` | Departure date in YYYY-MM-DD format |
| `maxItems` | integer | `10` | Maximum number of flight results to collect (free: 10, paid: up to 1,000,000) |

**Example 1 - Search New York to London:**
```json
{
  "origin": "JFK",
  "destination": "LHR",
  "outboundDate": "2026-08-15",
  "maxItems": 50
}
````

**Example 2 - Search Los Angeles to Tokyo, default limit:**

```json
{
  "origin": "LAX",
  "destination": "NRT",
  "outboundDate": "2026-09-01"
}
```

> ⚠️ **Good to Know:** Enter airport codes as standard IATA codes (3 letters). The actor auto-resolves codes to the correct Skyscanner entity even when multiple airports serve a city. Results are for economy class, 1 adult. Prices are in USD.

### 📊 Output

| Field | Type | Description |
|-------|------|-------------|
| 🖼️ `imageUrl` | string | Airline logo URL |
| ✈️ `airline` | string | Marketing airline name |
| 🔠 `airlineCode` | string | 2-letter IATA airline code |
| 🔢 `flightNumber` | string | Flight number(s), comma-separated for connections |
| 🛫 `origin` | string | Departure airport IATA code |
| 🛬 `destination` | string | Arrival airport IATA code |
| 🕐 `departureTime` | string | Departure datetime (ISO 8601) |
| 🕑 `arrivalTime` | string | Arrival datetime (ISO 8601) |
| ⏱️ `duration` | string | Total flight duration (e.g. "7h 35m") |
| 🔁 `stops` | number | Number of stops (0 = nonstop) |
| 💰 `price` | number | Total price in USD |
| 💱 `currency` | string | Currency code (USD) |
| 🔗 `deepLink` | string | Direct Skyscanner booking URL |
| 🕒 `scrapedAt` | string | ISO timestamp of when the record was collected |

**Sample record:**

```json
{
  "imageUrl": "https://logos.skyscnr.com/images/airlines/favicon/AA.png",
  "airline": "American Airlines",
  "airlineCode": "AA",
  "flightNumber": "AA100",
  "origin": "JFK",
  "destination": "LHR",
  "departureTime": "2026-08-15T22:00:00",
  "arrivalTime": "2026-08-16T10:05:00",
  "duration": "7h 5m",
  "stops": 0,
  "price": 487,
  "currency": "USD",
  "deepLink": "https://www.skyscanner.com/transport/flights/JFK/LHR/260815/?itinerary=flight-AA-100",
  "scrapedAt": "2026-05-22T09:15:00.000Z",
  "error": null
}
```

### ✨ Why choose this Actor

- **No proxies required** - uses Android API fingerprint to bypass PerimeterX detection natively
- **Full result polling** - waits for Skyscanner's session to complete so you get all available fares, not just the first batch
- **Cheapest-first sorting** - results are sorted by price ascending automatically
- **Deep links included** - every record links directly to the Skyscanner booking page for that flight
- **IATA code resolution** - just enter standard airport codes; entity ID resolution is automatic
- **Pay-per-item pricing** - only pay for the flight records you collect

### 📈 How it compares to alternatives

| Feature | ParseForge Skyscanner Scraper | Manual search | Flight APIs (Amadeus etc.) |
|---------|------------------------------|---------------|---------------------------|
| No registration needed | Yes | Yes | No - requires API key |
| Bulk export | Yes, up to 1M | No | Yes, but expensive |
| Proxy required | No | N/A | N/A |
| Real Skyscanner prices | Yes | Yes | Varies |
| Deep links to book | Yes | Yes | No |
| Free tier | 10 results | Unlimited (slow) | Limited free tier |

### 🚀 How to use

1. [Create a free Apify account](https://console.apify.com/sign-up?fpr=vmoqkp) (includes $5 credit)
2. Open the Skyscanner Scraper actor page and click **Try for free**
3. Enter your origin and destination as IATA codes (e.g. `LAX`, `CDG`)
4. Set your travel date in YYYY-MM-DD format
5. Set `maxItems` to how many flight options you want
6. Click **Start** - results are ready in under 60 seconds for most routes
7. Download as CSV, JSON, Excel, or connect via API

### 💼 Business use cases

#### Travel Agency Fare Monitoring

Agencies can run automated daily scans on their key routes to monitor how competitor pricing changes and adjust their own offers accordingly.

#### Corporate Travel Budget Planning

Finance teams can pull fare data for upcoming travel periods to build realistic travel budgets before bookings are made.

#### Flight Deal Alert Services

Developers can build Slack bots or email alerts that trigger when fares on a watched route drop below a target price.

#### Aviation Research and Journalism

Analysts and journalists can track how prices on specific routes evolve over weeks and months - useful for reporting on airline pricing behavior or route economics.

### 🔌 Automating Skyscanner Scraper

- **Make (formerly Integromat)** - Schedule weekly fare scans and populate a Google Sheet with price history per route
- **Zapier** - Send a Slack or email alert when the cheapest fare on a route drops below your threshold
- **n8n** - Build a full price tracking pipeline that logs fare changes to a database over time
- **REST API** - Trigger runs programmatically from your own application using the Apify API

### 🌟 Beyond business use cases

#### Personal Trip Planning

Automatically check fares across multiple date windows for a planned trip and identify the cheapest travel dates without clicking through pages of results.

#### Academic Research

Researchers studying airline pricing algorithms or market competition can collect systematic fare data across many routes and dates.

#### Backpacker Route Optimization

Budget travelers can scan multiple origin-destination pairs simultaneously to find the cheapest next leg of a round-the-world trip.

#### Flight Data for AI Projects

Train recommendation models or build travel assistant apps using real fare data as training input or live context.

### 🤖 Ask an AI assistant about this scraper

Not sure how to analyze your results? Ask an AI:

> "I have a JSON dataset from the Skyscanner Scraper with fields airline, departureTime, stops, and price. How do I find all nonstop flights under $500 and sort them by departure time?"

The structured output is designed to be immediately usable with any data analysis or AI tool.

### ❓ Frequently Asked Questions

**What IATA codes should I use?**
Standard 3-letter airport codes like JFK (New York JFK), LHR (London Heathrow), CDG (Paris Charles de Gaulle), NRT (Tokyo Narita).

**Does it return round-trip results?**
The scraper returns one-way results for the specified outbound date. Run twice (swap origin/destination) to get both legs for comparison.

**What cabin class is searched?**
Economy class, 1 adult. This matches the default Skyscanner search.

**Are prices guaranteed?**
No. Prices reflect what Skyscanner showed at the time of the run. Actual booking prices may vary due to availability changes.

**Does it require residential proxies?**
No. The actor uses the Skyscanner Android API which does not require proxies.

**How long does a run take?**
Most routes complete in 30-90 seconds, including the polling phase for complete results.

**What if no flights are found?**
The actor pushes a single `{ "error": "No flights found..." }` record so you can see the run completed without returning data.

**Can I search multiple routes at once?**
Run one actor instance per route. You can run multiple instances in parallel on Apify.

**What does `stops: 0` mean?**
A nonstop flight. `stops: 1` means one connection, etc.

**Is this legal to use?**
This actor accesses publicly available flight search data. Use the results in accordance with Skyscanner's Terms of Service.

**Can I search dates further in the future?**
Yes, any future date in YYYY-MM-DD format is valid.

**Why might results be different from the Skyscanner website?**
Results reflect the mobile Android API response, which may differ slightly from the web interface. Prices and availability are equivalent.

### 🔌 Integrate with any app

Export your dataset to:

**Spreadsheets:** Google Sheets, Microsoft Excel, Airtable

**Databases:** PostgreSQL, MySQL, MongoDB, Supabase

**Automation:** Make, Zapier, n8n, Pipedream

**Analytics:** Tableau, Power BI, Metabase, Google Looker Studio

**Developer access:** REST API, Python client, JavaScript client, CLI

### 🔗 Recommended Actors

| Actor | Description |
|-------|-------------|
| [Booking.com Scraper](https://apify.com/parseforge) | Extract hotel availability and prices from Booking.com |
| [Trivago Scraper](https://apify.com/parseforge/trivago-scraper) | Compare hotel prices across 5M+ properties via Trivago |
| [Google Flights Scraper](https://apify.com/parseforge) | Pull flight results from Google Flights for any route |

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for 50+ ready-to-use data extractors covering travel, marketplaces, real estate, jobs, and more.

***

**Disclaimer:** This actor is an independent tool not affiliated with, endorsed by, or connected to Skyscanner Ltd. It accesses only publicly available flight search data. Use responsibly and in accordance with Skyscanner's Terms of Service. ParseForge is not responsible for how collected data is used.

# Actor input Schema

## `origin` (type: `string`):

Origin airport IATA code (e.g. JFK, LHR, CDG)

## `destination` (type: `string`):

Destination airport IATA code (e.g. LHR, JFK, CDG)

## `outboundDate` (type: `string`):

Outbound flight date in YYYY-MM-DD format

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## Actor input object example

```json
{
  "origin": "JFK",
  "destination": "LHR",
  "outboundDate": "2026-08-01",
  "maxItems": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "origin": "JFK",
    "destination": "LHR",
    "outboundDate": "2026-08-01",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/skyscanner-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "origin": "JFK",
    "destination": "LHR",
    "outboundDate": "2026-08-01",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/skyscanner-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "origin": "JFK",
  "destination": "LHR",
  "outboundDate": "2026-08-01",
  "maxItems": 10
}' |
apify call parseforge/skyscanner-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/skyscanner-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Skyscanner Scraper | Flight Prices and Routes",
        "description": "Search Skyscanner for flights with origin, destination, dates, airlines, stops, duration, layovers, and prices in any currency. Compare offers across providers and find cheapest deals for travel apps, fare tracking, price alerts, and trip planning automations worldwide.",
        "version": "0.1",
        "x-build-id": "gmHTdQTF1qZLLslYH"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~skyscanner-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-skyscanner-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/parseforge~skyscanner-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-skyscanner-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/parseforge~skyscanner-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-skyscanner-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",
                "required": [
                    "origin",
                    "destination",
                    "outboundDate"
                ],
                "properties": {
                    "origin": {
                        "title": "Origin Airport",
                        "type": "string",
                        "description": "Origin airport IATA code (e.g. JFK, LHR, CDG)"
                    },
                    "destination": {
                        "title": "Destination Airport",
                        "type": "string",
                        "description": "Destination airport IATA code (e.g. LHR, JFK, CDG)"
                    },
                    "outboundDate": {
                        "title": "Outbound Date",
                        "type": "string",
                        "description": "Outbound flight date in YYYY-MM-DD format"
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000"
                    }
                }
            },
            "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
                                    }
                                }
                            },
                            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
