# Etherscan Gas Tracker Scraper (`automation-lab/etherscan-gas-tracker-scraper`) Actor

⛽ Monitor Ethereum gas prices from Etherscan. Export safe, proposed, fast, base-fee, latest-block, and gas-used-ratio snapshots.

- **URL**: https://apify.com/automation-lab/etherscan-gas-tracker-scraper.md
- **Developed by:** [Stas Persiianenko](https://apify.com/automation-lab) (community)
- **Categories:** Developer tools, Automation, Integrations
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

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

## Etherscan Gas Tracker Scraper

Monitor Ethereum gas prices with timestamped snapshots from Etherscan's public gas oracle API.

This Apify Actor collects safe, proposed, fast, base-fee, latest-block, and gas-used-ratio data in a clean dataset that is ready for dashboards, alerts, spreadsheets, and scheduled fee monitoring workflows.

### What does Etherscan Gas Tracker Scraper do?

Etherscan Gas Tracker Scraper calls the Etherscan V2 gas oracle endpoint and saves one dataset row per gas-price snapshot.

It is designed for scheduled monitoring rather than one-off page scraping.

You can run it once for the current gas state, or collect multiple samples with a fixed interval.

The actor works without an Etherscan API key.

If you add your own Etherscan API key, you can use lower intervals according to your Etherscan plan.

### Who is it for?

Crypto traders use it to monitor cheaper transaction windows.

Wallet developers use it to compare gas fee suggestions for UX decisions.

DeFi teams use it for operational dashboards and cost alerts.

Data analysts use it to collect historical gas snapshots on a schedule.

Automation builders use it as a lightweight Ethereum gas monitor in larger workflows.

### Why use this gas tracker?

It uses the official Etherscan V2 gas oracle JSON endpoint.

It does not rely on Cloudflare-challenged HTML pages.

It exports normalized numeric fields.

It supports repeated samples in one run.

It protects no-key users by enforcing Etherscan's public rate limit.

It can include the raw Etherscan response for audits when needed.

### Data you can extract

| Field | Description |
| --- | --- |
| `timestamp` | ISO time when the sample was collected |
| `chainId` | Etherscan V2 chain ID queried |
| `sampleIndex` | 1-based sample number |
| `lastBlock` | Last block from the gas oracle |
| `safeGasPriceGwei` | Safe gas price in Gwei |
| `proposeGasPriceGwei` | Proposed gas price in Gwei |
| `fastGasPriceGwei` | Fast gas price in Gwei |
| `suggestedBaseFeeGwei` | Suggested base fee in Gwei |
| `gasUsedRatio` | Parsed gas-used ratios as numbers |
| `gasUsedRatioRaw` | Original comma-separated gas-used-ratio value |
| `sourceUrl` | Etherscan API URL without your API key |
| `status` | `ok` or `error` |
| `error` | Error details when a sample fails |

### How much does it cost to monitor Etherscan gas prices?

This actor uses pay-per-event pricing.

You pay a small start fee per run and a small result fee for each gas tracker sample saved.

For most users, scheduled one-sample runs are inexpensive because the actor performs one HTTP API request and exits quickly.

Longer monitoring runs cost more because they collect more timestamped samples.

### Quick start

1. Open the actor on Apify.

2. Keep `chainId` set to `1` for Ethereum mainnet.

3. Set `samples` to `1` for a current gas snapshot.

4. Set `samples` higher if you want a short monitoring session.

5. Leave `apiKey` empty unless you have an Etherscan key.

6. Click **Start**.

7. Export the dataset as JSON, CSV, Excel, or via API.

### Input configuration

`chainId` selects the Etherscan V2 chain.

`1` is Ethereum mainnet.

`samples` controls how many snapshots are saved.

`intervalSeconds` controls the delay between snapshots.

`apiKey` is optional and secret.

`includeRawResponse` adds the original Etherscan result object.

`maxRetries` controls retries for transient errors and rate limits.

### Recommended inputs

#### One current snapshot

```json
{
  "chainId": 1,
  "samples": 1,
  "intervalSeconds": 5
}
````

#### Ten-minute scheduled monitor

```json
{
  "chainId": 1,
  "samples": 100,
  "intervalSeconds": 6
}
```

#### With an Etherscan API key

```json
{
  "chainId": 1,
  "samples": 20,
  "intervalSeconds": 1,
  "apiKey": "YOUR_ETHERSCAN_API_KEY"
}
```

### Output example

```json
{
  "timestamp": "2026-07-04T02:30:00.000Z",
  "chainId": 1,
  "sampleIndex": 1,
  "source": "etherscan-gas-oracle-v2",
  "status": "ok",
  "lastBlock": 25456622,
  "safeGasPriceGwei": 0.070173264,
  "proposeGasPriceGwei": 0.070304905,
  "fastGasPriceGwei": 0.071173264,
  "suggestedBaseFeeGwei": 0.070173264,
  "gasUsedRatioRaw": "0.4214426,0.852954983333333,0.407436"
}
```

### Scheduling ideas

Run every five minutes for a live gas dashboard.

Run every hour for daily fee trend analysis.

Run before high-volume wallet or contract operations.

Run alongside transaction simulation or swap routing jobs.

Run with webhooks to notify a team when gas drops below your own threshold.

### Integrations

Send dataset rows to Google Sheets for a fee history sheet.

Use Apify webhooks to trigger Slack, Discord, or email alerts.

Pull results into a BI dashboard.

Store snapshots in a database for long-term Ethereum gas analytics.

Combine with wallet, DeFi, or NFT automation actors from `https://apify.com/automation-lab/`.

### API usage with Node.js

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

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/etherscan-gas-tracker-scraper').call({
  chainId: 1,
  samples: 1,
  intervalSeconds: 5
});
console.log(run.defaultDatasetId);
```

### API usage with Python

```python
from apify_client import ApifyClient
import os

client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/etherscan-gas-tracker-scraper').call({
    'chainId': 1,
    'samples': 1,
    'intervalSeconds': 5,
})
print(run['defaultDatasetId'])
```

### API usage with cURL

```bash
curl -X POST 'https://api.apify.com/v2/acts/automation-lab~etherscan-gas-tracker-scraper/runs?token=YOUR_APIFY_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{"chainId":1,"samples":1,"intervalSeconds":5}'
```

### MCP usage

Use Apify MCP with Claude Code or Claude Desktop to run this actor from chat.

MCP endpoint:

`https://mcp.apify.com/?tools=automation-lab/etherscan-gas-tracker-scraper`

Claude Code setup:

```bash
claude mcp add apify-etherscan-gas-tracker "https://mcp.apify.com/?tools=automation-lab/etherscan-gas-tracker-scraper"
```

Claude Desktop JSON config:

```json
{
  "mcpServers": {
    "apify-etherscan-gas-tracker": {
      "url": "https://mcp.apify.com/?tools=automation-lab/etherscan-gas-tracker-scraper"
    }
  }
}
```

Example prompts:

- "Run the Etherscan gas tracker scraper and summarize current safe, propose, and fast gas."

- "Collect 12 Ethereum gas samples and tell me whether fees are trending up."

- "Export the latest Etherscan gas tracker dataset as CSV."

### Tips for no-key mode

No-key Etherscan responses are rate-limited.

Keep `intervalSeconds` at five or higher.

Use one-sample scheduled runs for recurring monitoring.

Add an API key if you need tighter sampling intervals.

Do not scrape Etherscan HTML pages for this workflow; the API endpoint is more reliable.

### Error handling

The actor retries transient failures and rate-limit responses.

If a sample still fails, it saves an error row instead of hiding the problem.

This makes scheduled runs easier to audit.

Check the `status` and `error` fields before using a row in alerts.

### Legality and responsible use

This actor uses Etherscan's public gas oracle API.

Respect Etherscan's API terms and rate limits.

If you run high-frequency monitoring, use your own Etherscan API key.

Do not use the actor to overload public endpoints.

### FAQ

#### Does it need an Etherscan API key?

No. It works without a key, but no-key mode is slower.

#### Why are intervals below five seconds raised?

Etherscan's no-key response states that a 1 request per 5 seconds limit is applied.

#### Can it monitor chains other than Ethereum mainnet?

The actor accepts any positive Etherscan V2 `chainId`, but the default and primary workflow is Ethereum mainnet.

#### Why do I get an error row?

A transient API error, invalid chain ID, or rate limit may have occurred. Review `error` and retry with a longer interval.

### Related scrapers

Explore related automation-lab actors at `https://apify.com/automation-lab/`.

Useful adjacent workflows include wallet monitoring, blockchain explorer extraction, DeFi analytics, and API health checks.

### Support

If you need another gas metric or chain-specific output, open an issue on the actor page.

Include your input JSON and the run ID so the problem can be reproduced.

### Changelog

Initial version collects Etherscan V2 gas oracle snapshots with optional raw response output.

### Developer notes

The actor is intentionally HTTP-only.

It avoids Playwright because the Etherscan HTML pages may be Cloudflare challenged while the gas oracle JSON endpoint returns the target data directly.

### Storage

Results are saved to the default dataset.

You can download data in JSON, CSV, XML, Excel, RSS, or HTML table formats from Apify.

### Performance

A single sample usually completes quickly.

A 100-sample no-key run takes at least about 500 seconds because the actor honors the public Etherscan rate limit.

### Final reminder

Start small with one sample.

Schedule recurring runs if you need long-term gas history.

Use an API key for higher-frequency monitoring.

# Actor input Schema

## `chainId` (type: `integer`):

Etherscan V2 chain ID to query. Use 1 for Ethereum mainnet.

## `samples` (type: `integer`):

Number of gas oracle snapshots to save. Without an API key, Etherscan allows about 1 request every 5 seconds.

## `intervalSeconds` (type: `integer`):

Delay between samples. Values below 5 seconds are automatically raised to 5 when no API key is supplied.

## `apiKey` (type: `string`):

Optional API key for higher Etherscan rate limits. Leave empty for public no-key mode.

## `includeRawResponse` (type: `boolean`):

Add the original gas oracle result object to each dataset row for debugging or downstream audit trails.

## `maxRetries` (type: `integer`):

How many times to retry a rate-limited or transiently failed gas oracle request before saving an error row.

## Actor input object example

```json
{
  "chainId": 1,
  "samples": 1,
  "intervalSeconds": 5,
  "includeRawResponse": false,
  "maxRetries": 2
}
```

# Actor output Schema

## `overview` (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 = {
    "chainId": 1,
    "samples": 1,
    "intervalSeconds": 5,
    "includeRawResponse": false,
    "maxRetries": 2
};

// Run the Actor and wait for it to finish
const run = await client.actor("automation-lab/etherscan-gas-tracker-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 = {
    "chainId": 1,
    "samples": 1,
    "intervalSeconds": 5,
    "includeRawResponse": False,
    "maxRetries": 2,
}

# Run the Actor and wait for it to finish
run = client.actor("automation-lab/etherscan-gas-tracker-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 '{
  "chainId": 1,
  "samples": 1,
  "intervalSeconds": 5,
  "includeRawResponse": false,
  "maxRetries": 2
}' |
apify call automation-lab/etherscan-gas-tracker-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Etherscan Gas Tracker Scraper",
        "description": "⛽ Monitor Ethereum gas prices from Etherscan. Export safe, proposed, fast, base-fee, latest-block, and gas-used-ratio snapshots.",
        "version": "0.1",
        "x-build-id": "jldQJZgKn12ztN4O2"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/automation-lab~etherscan-gas-tracker-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-automation-lab-etherscan-gas-tracker-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/automation-lab~etherscan-gas-tracker-scraper/runs": {
            "post": {
                "operationId": "runs-sync-automation-lab-etherscan-gas-tracker-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/automation-lab~etherscan-gas-tracker-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-automation-lab-etherscan-gas-tracker-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": [
                    "chainId",
                    "samples"
                ],
                "properties": {
                    "chainId": {
                        "title": "Chain ID",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Etherscan V2 chain ID to query. Use 1 for Ethereum mainnet.",
                        "default": 1
                    },
                    "samples": {
                        "title": "Gas snapshots to collect",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": "Number of gas oracle snapshots to save. Without an API key, Etherscan allows about 1 request every 5 seconds.",
                        "default": 1
                    },
                    "intervalSeconds": {
                        "title": "Seconds between snapshots",
                        "minimum": 0,
                        "maximum": 3600,
                        "type": "integer",
                        "description": "Delay between samples. Values below 5 seconds are automatically raised to 5 when no API key is supplied.",
                        "default": 5
                    },
                    "apiKey": {
                        "title": "Etherscan API key",
                        "type": "string",
                        "description": "Optional API key for higher Etherscan rate limits. Leave empty for public no-key mode."
                    },
                    "includeRawResponse": {
                        "title": "Include raw Etherscan result",
                        "type": "boolean",
                        "description": "Add the original gas oracle result object to each dataset row for debugging or downstream audit trails.",
                        "default": false
                    },
                    "maxRetries": {
                        "title": "Retries per snapshot",
                        "minimum": 0,
                        "maximum": 5,
                        "type": "integer",
                        "description": "How many times to retry a rate-limited or transiently failed gas oracle request before saving an error row.",
                        "default": 2
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
