# Youtube Scraper Plus (`practicaltools/youtube-scraper-plus`) Actor

YouTube Scraper is a powerful, high-performance tool designed to extract comprehensive data from YouTube without the limitations of the official YouTube Data API. Scrape videos, channels, playlists, shorts, and search results at scale— no API key or quotas required.

- **URL**: https://apify.com/practicaltools/youtube-scraper-plus.md
- **Developed by:** [Practical Tools](https://apify.com/practicaltools) (community)
- **Categories:** Videos, Developer tools, Social media
- **Stats:** 8 total users, 2 monthly users, 85.8% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.10 / 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 Scraper

YouTube Scraper is a powerful, high-performance tool designed to extract comprehensive data from YouTube without the limitations of the official YouTube Data API. Scrape videos, channels, playlists, shorts, and search results at scale—**no API key or quotas required.**

### 🌟 Why choose this YouTube Scraper?

Compared to the official API and other scrapers, this tool offers:
- **Zero Quota Limits**: Scrape as much as you need without worrying about "units" or daily credits.
- **Deep Data Extraction**: Access fields not available in the official API, like detailed like counts (even on videos with hidden counts), precise subscriber counts, and full channel about data.
- **Built-in Filtering**: Use YouTube's native search filters directly through the scraper (HD, 4K, Live, etc.).
- **Subtitles & Transcripts**: Extract video transcripts in plaintext, SRT, or VTT formats (experimental).
- **Advanced Channel Insights**: Collect total video counts, total channel views, location, and social media links with one click.
- **Flexible Sorting**: Sort results by relevance, upload date, view count, or rating.

---

### 🚀 Getting Started

1.  **Create an Apify account** if you don't have one.
2.  Open the **YouTube Scraper** Actor.
3.  Enter one or more **search terms** (e.g., `web scraping tutorial`) OR **direct URLs** (videos, channels, playlists).
4.  (Optional) Enable **Scrape Channel Data** for extra depth.
5.  Click **Start** and watch the data pour in.
6.  **Download** your results in JSON, CSV, Excel, or XML.

---

### 🛠 Features

#### 🔍 Powerful Search
Enter search terms just like you would on YouTube. You can limit the number of results for regular videos, shorts, and streams separately.

#### 🔗 Direct URL Support
Scrape specific entities directly by providing their URLs:
- **Videos**: `https://www.youtube.com/watch?v=...`
- **Channels**: `https://www.youtube.com/@...`
- **Playlists**: `https://www.youtube.com/playlist?list=...`
- **Hashtags**: `https://www.youtube.com/hashtag/...`

#### 🎞️ Shorts & Streams
Specifically target YouTube Shorts or Live Streams with dedicated result limits and specific metadata for these formats.

#### 📊 Comprehensive Metadata
Every result includes:
- **Video Details**: ID, Title, URL, Views, Likes, Comment Count.
- **Timing**: Duration (seconds + text), Published Date (ISO + text).
- **Quality**: Thumbnails, isShort, isStream flag.
- **Transcripts**: Full video subtitles/captions (Plaintext, SRT, or VTT).
- **Channel Info**: Name, ID, URL, Subscriber count.
- **Social Hooks**: Hashtags, full Description.

#### 📍 Exclusive Channel Data
Enable the **Scrape Channel Data** option to navigate to the channel's About page and collect:
- **Total Video Count**
- **Total Channel Views**
- **Channel Location**
- **Social Media Links** (Facebook, Instagram, Twitter, TikTok, etc.)

---

### 📥 Input Example

```json
{
    "searchQueries": ["apify web scraping"],
    "maxResults": 10,
    "scrapeChannelData": true,
    "sortingOrder": "views"
}
````

### 📤 Output Example

```json
{
  "id": "dQw4w9WgXcQ",
  "title": "Rick Astley - Never Gonna Give You Up (Official Video)",
  "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "views": 1749021771,
  "likes": 18833617,
  "commentsCount": 2400000,
  "durationText": "3:33",
  "publishedAt": "2009-10-24T23:57:33-07:00",
  "channelName": "Rick Astley",
  "channelUrl": "https://www.youtube.com/@RickAstleyYT",
  "subscribers": "4.46M subscribers",
  "videoCount": 394,
  "totalViews": 2412509438,
  "channelLocation": "United Kingdom",
  "socialMediaLinks": [
    "https://www.facebook.com/RickAstley/",
    "https://twitter.com/rickastley"
  ]
}
```

***

### ❓ FAQ

#### Is it legal to scrape data from YouTube?

Scraping public data is generally legal in most jurisdictions. Our scraper only accesses publicly available data that any user can see in a browser. However, you should always consult with legal counsel regarding your specific use case and comply with local regulations.

#### Does it require a proxy?

While it can run without a proxy for small volumes, we highly recommend using **Apify Proxy** (Residential or Datacenter) for high-volume scraping to ensure reliability and avoid rate limits.

***

### 💬 Feedback

We are constantly improving! If you find a bug or have a feature request, please [open an issue](https://console.apify.com/actors/nYGIjRsSV1mNi9ZYS/issues) on the Apify platform.

# Actor input Schema

## `searchQueries` (type: `array`):

Enter search terms just like you would enter them in YouTube's search bar.

## `startUrls` (type: `array`):

Enter a link to a YouTube video, channel, playlist, hashtag or search results page.

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

Limit the number of regular videos to crawl. 0 means unlimited.

## `maxResultsShorts` (type: `integer`):

Limit the number of Shorts videos to crawl. 0 means unlimited.

## `maxResultStreams` (type: `integer`):

Limit the number of Stream videos to crawl. 0 means unlimited.

## `downloadSubtitles` (type: `boolean`):

If enabled, the actor will attempt to download the transcript for each video.

## `saveSubsToKVS` (type: `boolean`):

Save the full subtitle/transcript text to the default Key-Value Store. Recommended if you are scraping long videos to avoid giant dataset files.

## `subtitlesLanguage` (type: `string`):

Language code for subtitles (e.g. 'en', 'es').

## `subtitlesFormat` (type: `string`):

The format of the collected subtitles.

## `sortingOrder` (type: `string`):

YouTube sort parameter for search results.

## `dateFilter` (type: `string`):

Filter search results by upload date.

## `videoType` (type: `string`):

Filter by video type.

## `lengthFilter` (type: `string`):

Filter results by video length.

## `isHD` (type: `boolean`):

Apply the HD filter for search.

## `hasSubtitles` (type: `boolean`):

Apply the Subtitles/CC filter for search.

## `hasCC` (type: `boolean`):

Apply the Creative Commons filter for search.

## `is3D` (type: `boolean`):

Apply the 3D filter for search.

## `isLive` (type: `boolean`):

Apply the Live filter for search.

## `isBought` (type: `boolean`):

Apply the Purchased filter for search.

## `is4K` (type: `boolean`):

Apply the 4K filter for search.

## `is360` (type: `boolean`):

Apply the 360 degrees filter for search.

## `hasLocation` (type: `boolean`):

Apply the Location filter for search.

## `isHDR` (type: `boolean`):

Apply the HDR filter for search.

## `isVR180` (type: `boolean`):

Apply the VR180 filter for search.

## `oldestPostDate` (type: `string`):

Only scrape videos uploaded on or after this date (YYYY-MM-DD) or this many days ago (e.g. '7' for last 7 days).

## `sortVideosBy` (type: `string`):

Sorting for channel Videos, Shorts, and Streams tabs.

## `scrapeChannelData` (type: `boolean`):

If enabled, the actor will navigate to each video's channel About page to collect additional channel data: total video count, total channel views, country/location, and social media links. Results are cached per channel to avoid duplicate requests.

## `proxyConfiguration` (type: `object`):

Select proxies to be used by your crawler.

## Actor input object example

```json
{
  "searchQueries": [
    "apify tutorial",
    "web scraping 2026"
  ],
  "startUrls": [],
  "maxResults": 10,
  "maxResultsShorts": 0,
  "maxResultStreams": 0,
  "downloadSubtitles": false,
  "saveSubsToKVS": false,
  "subtitlesLanguage": "en",
  "subtitlesFormat": "plaintext",
  "sortingOrder": "relevance",
  "scrapeChannelData": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `dataset` (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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("practicaltools/youtube-scraper-plus").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("practicaltools/youtube-scraper-plus").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 '{}' |
apify call practicaltools/youtube-scraper-plus --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Youtube Scraper Plus",
        "description": "YouTube Scraper is a powerful, high-performance tool designed to extract comprehensive data from YouTube without the limitations of the official YouTube Data API. Scrape videos, channels, playlists, shorts, and search results at scale— no API key or quotas required.",
        "version": "0.1",
        "x-build-id": "hHjkZhXP9kK6XEo97"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/practicaltools~youtube-scraper-plus/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-practicaltools-youtube-scraper-plus",
                "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/practicaltools~youtube-scraper-plus/runs": {
            "post": {
                "operationId": "runs-sync-practicaltools-youtube-scraper-plus",
                "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/practicaltools~youtube-scraper-plus/run-sync": {
            "post": {
                "operationId": "run-sync-practicaltools-youtube-scraper-plus",
                "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": {
                    "searchQueries": {
                        "title": "Search terms",
                        "type": "array",
                        "description": "Enter search terms just like you would enter them in YouTube's search bar.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "startUrls": {
                        "title": "Direct URLs",
                        "type": "array",
                        "description": "Enter a link to a YouTube video, channel, playlist, hashtag or search results page.",
                        "default": [],
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "maxResults": {
                        "title": "Maximum videos per search term",
                        "minimum": 0,
                        "maximum": 999999,
                        "type": "integer",
                        "description": "Limit the number of regular videos to crawl. 0 means unlimited.",
                        "default": 10
                    },
                    "maxResultsShorts": {
                        "title": "Maximum shorts per search term",
                        "minimum": 0,
                        "maximum": 999999,
                        "type": "integer",
                        "description": "Limit the number of Shorts videos to crawl. 0 means unlimited.",
                        "default": 0
                    },
                    "maxResultStreams": {
                        "title": "Maximum streams per search term",
                        "minimum": 0,
                        "maximum": 999999,
                        "type": "integer",
                        "description": "Limit the number of Stream videos to crawl. 0 means unlimited.",
                        "default": 0
                    },
                    "downloadSubtitles": {
                        "title": "Download subtitles",
                        "type": "boolean",
                        "description": "If enabled, the actor will attempt to download the transcript for each video.",
                        "default": false
                    },
                    "saveSubsToKVS": {
                        "title": "Save subtitles to Key-Value Store",
                        "type": "boolean",
                        "description": "Save the full subtitle/transcript text to the default Key-Value Store. Recommended if you are scraping long videos to avoid giant dataset files.",
                        "default": false
                    },
                    "subtitlesLanguage": {
                        "title": "Subtitles language",
                        "type": "string",
                        "description": "Language code for subtitles (e.g. 'en', 'es').",
                        "default": "en"
                    },
                    "subtitlesFormat": {
                        "title": "Subtitles format",
                        "enum": [
                            "plaintext",
                            "srt",
                            "vtt"
                        ],
                        "type": "string",
                        "description": "The format of the collected subtitles.",
                        "default": "plaintext"
                    },
                    "sortingOrder": {
                        "title": "Sorting order",
                        "enum": [
                            "relevance",
                            "rating",
                            "date",
                            "views"
                        ],
                        "type": "string",
                        "description": "YouTube sort parameter for search results.",
                        "default": "relevance"
                    },
                    "dateFilter": {
                        "title": "Date filter",
                        "enum": [
                            "hour",
                            "today",
                            "week",
                            "month",
                            "year"
                        ],
                        "type": "string",
                        "description": "Filter search results by upload date."
                    },
                    "videoType": {
                        "title": "Video type filter",
                        "enum": [
                            "video",
                            "movie"
                        ],
                        "type": "string",
                        "description": "Filter by video type."
                    },
                    "lengthFilter": {
                        "title": "Length filter",
                        "enum": [
                            "under4",
                            "between420",
                            "plus20"
                        ],
                        "type": "string",
                        "description": "Filter results by video length."
                    },
                    "isHD": {
                        "title": "HD",
                        "type": "boolean",
                        "description": "Apply the HD filter for search."
                    },
                    "hasSubtitles": {
                        "title": "Subtitles/CC",
                        "type": "boolean",
                        "description": "Apply the Subtitles/CC filter for search."
                    },
                    "hasCC": {
                        "title": "Creative Commons",
                        "type": "boolean",
                        "description": "Apply the Creative Commons filter for search."
                    },
                    "is3D": {
                        "title": "3D",
                        "type": "boolean",
                        "description": "Apply the 3D filter for search."
                    },
                    "isLive": {
                        "title": "Live",
                        "type": "boolean",
                        "description": "Apply the Live filter for search."
                    },
                    "isBought": {
                        "title": "Purchased",
                        "type": "boolean",
                        "description": "Apply the Purchased filter for search."
                    },
                    "is4K": {
                        "title": "4K",
                        "type": "boolean",
                        "description": "Apply the 4K filter for search."
                    },
                    "is360": {
                        "title": "360 degrees",
                        "type": "boolean",
                        "description": "Apply the 360 degrees filter for search."
                    },
                    "hasLocation": {
                        "title": "Location",
                        "type": "boolean",
                        "description": "Apply the Location filter for search."
                    },
                    "isHDR": {
                        "title": "HDR",
                        "type": "boolean",
                        "description": "Apply the HDR filter for search."
                    },
                    "isVR180": {
                        "title": "VR180",
                        "type": "boolean",
                        "description": "Apply the VR180 filter for search."
                    },
                    "oldestPostDate": {
                        "title": "Scrape videos published after date",
                        "type": "string",
                        "description": "Only scrape videos uploaded on or after this date (YYYY-MM-DD) or this many days ago (e.g. '7' for last 7 days)."
                    },
                    "sortVideosBy": {
                        "title": "Sort channel videos by",
                        "enum": [
                            "NEWEST",
                            "POPULAR",
                            "OLDEST"
                        ],
                        "type": "string",
                        "description": "Sorting for channel Videos, Shorts, and Streams tabs."
                    },
                    "scrapeChannelData": {
                        "title": "Scrape channel data",
                        "type": "boolean",
                        "description": "If enabled, the actor will navigate to each video's channel About page to collect additional channel data: total video count, total channel views, country/location, and social media links. Results are cached per channel to avoid duplicate requests.",
                        "default": false
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Select proxies to be used by your crawler.",
                        "default": {
                            "useApifyProxy": true
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
