# YouTube Keyword Scraper (`solidcode/youtube-keyword-scraper`) Actor

\[💰 $0.15 / 1K] Expand seed keywords into hundreds of long-tail keyword ideas from YouTube's autocomplete. Pick a country and language and get real search suggestions for SEO, tag, and title research, with alphabetical expansion and hashtags.

- **URL**: https://apify.com/solidcode/youtube-keyword-scraper.md
- **Developed by:** [SolidCode](https://apify.com/solidcode) (community)
- **Categories:** SEO tools, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.15 / 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

## YouTube Keyword Scraper

Turn a single seed word into hundreds of long-tail YouTube keyword ideas pulled straight from YouTube's own autocomplete — the exact phrases viewers type into the search box, localized by country and language, ranked by relevance, with optional hashtag variants. Built for YouTube creators, SEO specialists, and video marketers who need long-tail keyword ideas that viewers actually search without guessing or paying for bloated keyword tools.

### Why This Scraper?

- **Real YouTube autocomplete, not guessed keywords** — every suggestion is a phrase YouTube's search box actively offers to viewers, so you target demand that already exists instead of made-up variations.
- **36-way alphabetical expansion** — appends a–z and 0–9 to each seed (36 expansions), turning one seed keyword into roughly 500 long-tail suggestions in a single run.
- **Batch seeds in one run** — pass an array of seed keywords and expand them all at once; you pay one start fee, not one per keyword.
- **45 country codes, 25 interface languages** — pull French suggestions for France, Japanese for Japan, Portuguese for Brazil; region and language are both honored, so the same seed surfaces different demand market by market.
- **Real hashtag suggestions on demand** — flip on `includeHashtags` to also pull YouTube's genuine `#`-suggestions for each seed, ready for tag, title, and Shorts research — actual hashtags YouTube recommends, not made-up strings.
- **Rank position on every row** — each suggestion carries its 1-based position in YouTube's autocomplete list, where rank 1 is the most-relevant phrase for that query.
- **Automatic global dedup** — duplicate keywords are removed across every seed and expansion, so your result count is unique phrases only and you never pay for repeats.
- **Flat, one-row-per-keyword output** — six named fields per row (`keyword`, `seedKeyword`, `country`, `language`, `rank`, `isHashtag`), ready to drop straight into a spreadsheet or content calendar.

### Use Cases

**Content Strategy**
- Mine video title and topic ideas from what viewers are already searching
- Spot rising sub-topics off a broad seed before competitors cover them
- Build a Shorts and long-form content calendar from a single seed keyword

**SEO & Discoverability**
- Populate video tags and descriptions with real long-tail phrases
- Target low-competition long-tail queries instead of saturated head terms
- Match on-video text to the exact wording viewers type

**Advertising**
- Build keyword lists for YouTube and Google video ad campaigns
- Expand a single product term into hundreds of targeting phrases
- Discover negative-keyword candidates from off-topic suggestions

**Market Research**
- Read demand and intent signals off autocomplete for any niche
- Compare topic interest across regions using the country and language controls
- Track how suggestions shift when you re-run a seed over time

**Agencies**
- Generate client-ready keyword reports in minutes, not hours
- Deliver localized keyword sets for clients targeting multiple countries
- Batch every client's seeds into one run and split the export downstream

### Getting Started

#### Single Seed

The simplest possible run — one seed, full alphabetical expansion:

```json
{
    "keywords": ["how to"]
}
````

#### Multiple Seeds, Localized

Expand several seeds at once for a French audience:

```json
{
    "keywords": ["yoga", "recette facile", "guitare"],
    "country": "fr",
    "language": "fr"
}
```

#### Advanced — Hashtags, Capped, Focused

Add hashtag variants, cap the result count, and keep the list tight by turning off alphabetical expansion:

```json
{
    "keywords": ["best headphones", "gaming setup"],
    "country": "gb",
    "language": "en",
    "expandAlphabet": false,
    "includeHashtags": true,
    "maxResults": 200
}
```

### Input Reference

#### Search

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `keywords` | string\[] | `["how to"]` | One or more seed words or phrases to expand into YouTube autocomplete suggestions (e.g. "how to", "best headphones", "yoga for beginners"). Each seed is expanded independently. |

#### Localization

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `country` | select | `United States` | Country/region used to localize the suggestions. 45 options including United Kingdom, France, Germany, Japan, Brazil, India, and more. Suggestions differ by region. |
| `language` | select | `English` | Language of the suggestions. 25 options including Spanish, French, German, Japanese, Korean, Chinese (Simplified), Chinese (Traditional), Arabic, and Hindi. |

#### Expansion

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `expandAlphabet` | boolean | `true` | Append each letter (a–z) and digit (0–9) to every seed to surface far more long-tail keywords. Turn on for the biggest keyword lists; turn off for a quick, focused set of top suggestions. |
| `includeHashtags` | boolean | `false` | Also fetch YouTube's real hashtag suggestions for each seed (querying the seed with a "#" in front), useful for tag, title, and Shorts research. Every hashtag row is a genuine YouTube suggestion. |

#### Limits

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `maxResults` | integer | `1000` | Maximum number of keywords to return (0 = unlimited). The run stops once this many unique keywords are collected. Increase for bigger runs, or set to `0` for no cap (you'll get every unique suggestion your seeds produce). |

### Output

Every row is one unique keyword suggestion. Here's a representative result:

```json
{
    "keyword": "how to tie a tie",
    "seedKeyword": "how to t",
    "country": "us",
    "language": "en",
    "rank": 1,
    "isHashtag": false
}
```

A real hashtag suggestion, when `includeHashtags` is on:

```json
{
    "keyword": "#howto",
    "seedKeyword": "how to",
    "country": "us",
    "language": "en",
    "rank": 1,
    "isHashtag": true
}
```

#### Fields

| Field | Type | Description |
|-------|------|-------------|
| `keyword` | string | The autocomplete suggestion — the exact phrase YouTube offers viewers. This is the billable result. |
| `seedKeyword` | string | The seed (or seed-plus-letter expansion) that produced this suggestion. |
| `country` | string | Country code used for the request (e.g. `us`, `fr`, `jp`). |
| `language` | string | Language code used for the request (e.g. `en`, `fr`, `ja`). |
| `rank` | number | Position of this suggestion within YouTube's list for its query. `1` is the most relevant. |
| `isHashtag` | boolean | `true` when the row is a hashtag suggestion (starts with `#`), `false` for a plain keyword. |

### Tips for Best Results

- **Seed with intent words.** Prefix seeds with "how to", "best", "why", or "vs" to surface the highest-intent long-tail queries — these are the phrases viewers type when they're ready to watch.
- **Run the same seed across multiple countries.** Re-run one seed with different `country` and `language` pairs to find untapped localized demand competitors in your market haven't noticed yet.
- **Keep alphabetical expansion on for discovery, off for a shortlist.** Leave `expandAlphabet` on to harvest the full ~500 keywords per seed; turn it off when you only want YouTube's top handful of suggestions for a single term.
- **Batch related seeds.** Group a topic's variations into one `keywords` array — one run, one export, one start fee — instead of launching a separate run per seed.
- **Match language to country.** Pair `country` and `language` that go together (France + French, Japan + Japanese) for the cleanest localized suggestions.
- **Turn on hashtags for tag research.** Flip `includeHashtags` on when you're planning tags, titles, or Shorts — the run adds YouTube's real `#`-suggestions for each seed, ready to paste.
- **Use `rank` to prioritize.** Sort your export by `rank` and start with the rank-1 and rank-2 phrases — they're the ones YouTube considers most relevant to each query.

### Pricing

**From $0.15 per 1,000 results** — a fraction of the cost of subscription keyword tools, billed only for the unique keywords you keep. No compute or time-based charges — you pay per result, plus a small fixed per-run start fee. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.

| Results | No discount | Bronze | Silver | Gold |
|---------|-------------|--------|--------|------|
| 100 | $0.018 | $0.017 | $0.016 | $0.015 |
| 1,000 | $0.18 | $0.17 | $0.16 | $0.15 |
| 10,000 | $1.80 | $1.70 | $1.60 | $1.50 |
| 100,000 | $18.00 | $17.00 | $16.00 | $15.00 |

A "result" is any unique keyword row in the output dataset. Duplicate keywords are removed automatically, so you're only billed for distinct suggestions.

### Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

- **Zapier** / **Make** / **n8n** — Workflow automation
- **Google Sheets** — Direct spreadsheet export
- **Slack** / **Email** — Notifications on new results
- **Webhooks** — Trigger custom APIs on run completion
- **Apify API** — Full programmatic access

### Legal & Ethical Use

This actor is designed for legitimate keyword research, content strategy, SEO, and market analysis. Users are responsible for complying with applicable laws and YouTube's terms of service, including making reasonable-rate requests. Do not use extracted data for spam, harassment, or any illegal purpose.

# Actor input Schema

## `keywords` (type: `array`):

One or more seed words or phrases to expand into YouTube autocomplete suggestions (e.g. 'how to', 'best headphones', 'yoga for beginners'). Each seed is expanded independently.

## `country` (type: `string`):

Country/region used to localize the suggestions. Suggestions differ by region.

## `language` (type: `string`):

Language of the suggestions.

## `expandAlphabet` (type: `boolean`):

Append each letter (a–z) and digit (0–9) to every seed to surface far more long-tail keywords. Turn this on for the biggest keyword lists; turn it off for a quick, focused set of top suggestions.

## `includeHashtags` (type: `boolean`):

Also fetch YouTube's real hashtag suggestions for each seed (querying the seed with a '#' in front), useful for tag, title, and Shorts research. Every hashtag row is a genuine YouTube suggestion.

## `maxResults` (type: `integer`):

Maximum number of keywords to return (0 = unlimited). The run stops once this many unique keywords are collected. Default 1000 — increase for bigger runs, or set to 0 for no cap (you'll get every unique suggestion your seeds produce). Each keyword is billed at the per-result rate.

## Actor input object example

```json
{
  "keywords": [
    "how to"
  ],
  "country": "us",
  "language": "en",
  "expandAlphabet": true,
  "includeHashtags": false,
  "maxResults": 1000
}
```

# Actor output Schema

## `overview` (type: `string`):

Table of keyword suggestions with the seed, rank, and country/language.

# 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 = {
    "keywords": [
        "how to"
    ],
    "country": "us",
    "language": "en",
    "expandAlphabet": true,
    "includeHashtags": false,
    "maxResults": 1000
};

// Run the Actor and wait for it to finish
const run = await client.actor("solidcode/youtube-keyword-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 = {
    "keywords": ["how to"],
    "country": "us",
    "language": "en",
    "expandAlphabet": True,
    "includeHashtags": False,
    "maxResults": 1000,
}

# Run the Actor and wait for it to finish
run = client.actor("solidcode/youtube-keyword-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 '{
  "keywords": [
    "how to"
  ],
  "country": "us",
  "language": "en",
  "expandAlphabet": true,
  "includeHashtags": false,
  "maxResults": 1000
}' |
apify call solidcode/youtube-keyword-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "YouTube Keyword Scraper",
        "description": "[💰 $0.15 / 1K] Expand seed keywords into hundreds of long-tail keyword ideas from YouTube's autocomplete. Pick a country and language and get real search suggestions for SEO, tag, and title research, with alphabetical expansion and hashtags.",
        "version": "1.0",
        "x-build-id": "TApBUIOXeCQMBvpmO"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/solidcode~youtube-keyword-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-solidcode-youtube-keyword-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/solidcode~youtube-keyword-scraper/runs": {
            "post": {
                "operationId": "runs-sync-solidcode-youtube-keyword-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/solidcode~youtube-keyword-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-solidcode-youtube-keyword-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": {
                    "keywords": {
                        "title": "Seed Keywords",
                        "type": "array",
                        "description": "One or more seed words or phrases to expand into YouTube autocomplete suggestions (e.g. 'how to', 'best headphones', 'yoga for beginners'). Each seed is expanded independently.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "country": {
                        "title": "Country",
                        "enum": [
                            "us",
                            "gb",
                            "ca",
                            "au",
                            "nz",
                            "ie",
                            "fr",
                            "de",
                            "es",
                            "it",
                            "nl",
                            "be",
                            "pt",
                            "ch",
                            "at",
                            "se",
                            "no",
                            "dk",
                            "fi",
                            "pl",
                            "jp",
                            "kr",
                            "cn",
                            "hk",
                            "tw",
                            "sg",
                            "my",
                            "th",
                            "id",
                            "ph",
                            "vn",
                            "in",
                            "br",
                            "mx",
                            "ar",
                            "cl",
                            "co",
                            "ae",
                            "sa",
                            "tr",
                            "il",
                            "za",
                            "eg",
                            "ru",
                            "ua"
                        ],
                        "type": "string",
                        "description": "Country/region used to localize the suggestions. Suggestions differ by region.",
                        "default": "us"
                    },
                    "language": {
                        "title": "Language",
                        "enum": [
                            "en",
                            "es",
                            "pt",
                            "fr",
                            "de",
                            "it",
                            "nl",
                            "pl",
                            "sv",
                            "da",
                            "fi",
                            "no",
                            "tr",
                            "ru",
                            "uk",
                            "ar",
                            "he",
                            "ja",
                            "ko",
                            "zh-CN",
                            "zh-TW",
                            "th",
                            "vi",
                            "id",
                            "hi"
                        ],
                        "type": "string",
                        "description": "Language of the suggestions.",
                        "default": "en"
                    },
                    "expandAlphabet": {
                        "title": "Alphabetical expansion",
                        "type": "boolean",
                        "description": "Append each letter (a–z) and digit (0–9) to every seed to surface far more long-tail keywords. Turn this on for the biggest keyword lists; turn it off for a quick, focused set of top suggestions.",
                        "default": true
                    },
                    "includeHashtags": {
                        "title": "Include hashtag variations",
                        "type": "boolean",
                        "description": "Also fetch YouTube's real hashtag suggestions for each seed (querying the seed with a '#' in front), useful for tag, title, and Shorts research. Every hashtag row is a genuine YouTube suggestion.",
                        "default": false
                    },
                    "maxResults": {
                        "title": "Maximum Results",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum number of keywords to return (0 = unlimited). The run stops once this many unique keywords are collected. Default 1000 — increase for bigger runs, or set to 0 for no cap (you'll get every unique suggestion your seeds produce). Each keyword is billed at the per-result rate.",
                        "default": 1000
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
