# Youtube Comments Ultra (`knowten/youtube-comments-ultra`) Actor

Professional YouTube comment scraper for sentiment analysis, brand monitoring, competitive intelligence and audience research. Extract complete comment threads with exact precision or blazing-fast estimates. Detect creator hearts. No authentication needed. Pay only for comments extracted.

- **URL**: https://apify.com/knowten/youtube-comments-ultra.md
- **Developed by:** [Knowten](https://apify.com/knowten) (community)
- **Categories:** Videos, Social media
- **Stats:** 3 total users, 1 monthly users, 91.2% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

$0.40 / 1,000 per comment extracteds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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 Comment Ultra
### The Ultra-Fast YouTube Comments Scraper for Professional Data Analysis

Extract YouTube comments at lightning speed with **exact precision** or **blazing-fast estimates**. YouTube Comment Ultra is engineered for researchers, marketers, and analysts who need comprehensive comment data without the complexity.

**Get comment data in minutes. Not hours.**

---

### 🎯 What is YouTube Comment Ultra?

YouTube Comment Ultra is a professional-grade **HTTP-based comment scraper** that extracts:

✅ All comments and replies from YouTube videos  
✅ Comment text, author names, timestamps, and engagement metrics  
✅ Creator heart indicators and engagement data  
✅ Complete thread structures (top-level + nested replies)  
✅ Total accurate comment counts  
✅ Zero authentication required — no proxies, no API keys  

Built for **sentiment analysis**, **brand monitoring**, **competitive intelligence**, and **large-scale audience research**.

---

### 💰 Pricing: Simple & Transparent

**$0.40 per 1,000 comments** ($0.0004 per comment extracted)

- **Per Comment Pricing:** $0.0004 per comment you extract
- **No Hidden Costs:** Pay only for comments you actually scrape
- **Batch Friendly:** Extract 10,000 comments for just $4.00
- **Fair Pricing:** The more you analyze, the more value you get

#### Pricing Examples

| Comments Extracted | Cost |
|----------|------|
| 100 comments | $0.04 |
| 1,000 comments | $0.40 |
| 10,000 comments | $4.00 |
| 100,000 comments | $40.00 |

---

### 📊 Why Choose YouTube Comment Ultra?

| Feature | Benefit |
|---------|---------|
| 🔥 **Ultra-Fast Extraction** | Get results instantly with estimated mode or guaranteed accuracy with exact mode |
| 💬 **Complete Thread Data** | Capture all comment replies and nested threads in single extraction |
| 🎯 **Smart Filtering** | Extract only comments from specific date ranges with `publishedAfter` |
| 📊 **Flexible Output** | Export to JSON, CSV, Excel, or XML — ready for your analysis pipeline |
| 🔐 **No Authentication** | Works without login — no session management, no API key complexity |
| 💰 **Cost Effective** | Pay once per run, extract unlimited comments from unlimited videos |
| 🧠 **AI-Ready Output** | Structured JSON format perfect for NLP, sentiment analysis, and ML training |

---

### 🏃 Two Speed Modes: Pick Your Perfect Balance

#### ⚡ **Estimated Mode** (Default)
- **Speed:** Instant results (seconds)
- **Coverage:** YouTube's visible page count (~1,200 comments average)
- **Accuracy:** Fast approximation based on YouTube's interface
- **Use Case:** Quick competitive scans, trend monitoring, large-scale sampling

**Best for:** Brand monitoring, social listening, rapid competitive analysis

```json
{
  "startUrls": [
    { "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }
  ],
  "maxComments": 500,
  "exactCommentCount": false,
  "commentsSortBy": "0"
}
````

#### 🎯 **Exact Mode** (100% Accuracy)

- **Speed:** Thorough traversal (minutes, depending on comment volume)
- **Coverage:** **Every single comment** on the video
- **Accuracy:** Guaranteed true total — walks all comment continuations
- **Use Case:** Sentiment analysis, detailed audience research, academic studies

**Best for:** Comprehensive sentiment analysis, detailed market research, complete audience profiles

```json
{
  "startUrls": [
    { "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }
  ],
  "maxComments": 2000,
  "exactCommentCount": true,
  "commentsSortBy": "1",
  "publishedAfter": "90 days"
}
```

***

### 📋 Input Parameters

Configure your extraction with simple, human-friendly parameters:

| Parameter | Type | Description | Default |
|-----------|------|-------------|---------|
| **startUrls** | array | One or more YouTube video URLs to scrape | `[]` |
| **maxComments** | integer | Maximum comments to store per video (0 = unlimited) | `100` |
| **exactCommentCount** | boolean | `true` = accurate total, `false` = fast estimate | `false` |
| **commentsSortBy** | string | `"0"` = Top comments, `"1"` = Newest first | `"0"` |
| **publishedAfter** | string | Only comments after this date (e.g., `"2026-01-01"` or `"30 days"`) | `null` |

#### Supported URL Types

```
✅ Regular Videos:  https://www.youtube.com/watch?v=VIDEO_ID
✅ Playlist Items:  https://www.youtube.com/watch?v=VIDEO_ID&t=30s
```

***

### 💡 Use Case Strategies

#### Strategy 1: Quick Brand Monitoring

Monitor competitors and trending videos for brand mentions in seconds.

```json
{
  "startUrls": [
    "https://www.youtube.com/watch?v=TRENDING_VIDEO_1",
    "https://www.youtube.com/watch?v=TRENDING_VIDEO_2"
  ],
  "maxComments": 200,
  "exactCommentCount": false,
  "commentsSortBy": "0"
}
```

**Time to completion:** < 30 seconds\
**Use case:** Rapid competitive intelligence, social listening, brand mention tracking

***

#### Strategy 2: Deep Sentiment Analysis

Extract complete comment datasets for comprehensive NLP and sentiment analysis.

```json
{
  "startUrls": [
    "https://www.youtube.com/watch?v=PRODUCT_REVIEW_VIDEO"
  ],
  "maxComments": 1000,
  "exactCommentCount": true,
  "commentsSortBy": "1",
  "publishedAfter": "2025-01-01"
}
```

**Time to completion:** 2-5 minutes (depending on comment volume)\
**Use case:** Product feedback analysis, customer sentiment, opinion mining, NLP training data

***

#### Strategy 3: Trending Content Detection

Analyze newest comments to identify emerging trends and real-time sentiment.

```json
{
  "startUrls": [
    "https://www.youtube.com/watch?v=BREAKING_NEWS_VIDEO"
  ],
  "maxComments": 500,
  "exactCommentCount": true,
  "commentsSortBy": "1"
}
```

**Time to completion:** 1-3 minutes\
**Use case:** Trend detection, real-time social listening, breaking news analysis

***

#### Strategy 4: Academic & Research

Collect complete, documented datasets for research, with exact totals and full thread structures.

```json
{
  "startUrls": [
    "https://www.youtube.com/watch?v=RESEARCH_VIDEO_1",
    "https://www.youtube.com/watch?v=RESEARCH_VIDEO_2"
  ],
  "maxComments": 0,
  "exactCommentCount": true,
  "commentsSortBy": "0",
  "publishedAfter": "2024-01-01"
}
```

**Time to completion:** 5-10 minutes per video\
**Use case:** Academic research, discourse analysis, sociological studies, longitudinal audience tracking

***

### 📦 Output Format

Clean, structured JSON with comprehensive comment data ready for immediate analysis:

```json
{
  "cid": "UgxRn0_LUxzRP2MybPR4AaABAg",
  "replyToCid": null,
  "type": "comment",
  "comment": "This is the most amazing video I've ever seen!",
  "author": "@CreatorName",
  "authorIsChannelOwner": false,
  "hasCreatorHeart": true,
  "voteCount": 245,
  "replyCount": 12,
  "publishedTimeText": "2 weeks ago",
  "videoId": "dQw4w9WgXcQ",
  "pageUrl": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "commentsCount": 1258,
  "title": "Video Title Here"
}
```

#### Field Definitions

| Field | Type | Description |
|-------|------|-------------|
| `cid` | string | Unique comment ID (YouTube's internal ID) |
| `replyToCid` | string|null | Parent comment ID (null if top-level comment) |
| `type` | string | `"comment"` or `"reply"` |
| `comment` | string | Full comment text |
| `author` | string | Comment author's display name |
| `authorIsChannelOwner` | boolean | True if author owns the video's channel |
| `hasCreatorHeart` | boolean | True if video creator liked this comment |
| `voteCount` | integer | Number of likes on the comment |
| `replyCount` | integer | Number of direct replies to this comment |
| `publishedTimeText` | string | Relative timestamp (e.g., "2 weeks ago") |
| `videoId` | string | YouTube video ID |
| `pageUrl` | string | Direct link to the video |
| `commentsCount` | integer | **Estimated** or **exact** total comments on video |
| `title` | string | Video title |

***

### 🎯 Common Use Cases

#### 📊 Sentiment Analysis

Analyze customer opinions and product feedback at scale.

- Extract top-voted comments for quick wins
- Use exact mode for comprehensive opinion coverage
- Filter by date to track sentiment changes over time

#### 🔍 Competitive Intelligence

Monitor competitor videos and audience reactions.

- Track brand mentions across multiple competitor videos
- Identify customer pain points from competitor feedback
- Discover emerging market trends from comment discussions

#### 📈 Market Research

Understand audience preferences and market gaps.

- Analyze discussion threads for customer needs
- Identify feature requests in comment replies
- Track sentiment shifts for new product launches

#### 🧠 NLP & Machine Learning

Prepare training datasets for AI models.

- Extract diverse comment samples for training
- Use exact mode to ensure balanced datasets
- Get structured JSON output compatible with ML pipelines

#### 🚀 Social Listening

Monitor real-time trends and brand mentions.

- Use estimated mode for fast sampling
- Sort by newest to catch trending discussions
- Filter by date range to focus on specific periods

***

### ✨ Key Features

✅ **Complete Thread Capture** — Get top-level comments AND all nested replies in one run\
✅ **Creator Hearts Detected** — Identify which comments were liked by the creator\
✅ **Smart Threading** — Structured reply data shows comment relationships\
✅ **Date Filtering** — Extract only recent comments with `publishedAfter`\
✅ **Dual-Mode Speed** — Choose fast estimates or guaranteed accuracy\
✅ **Batch Processing** — Scrape multiple videos in a single run\
✅ **Export Flexibility** — JSON, CSV, Excel, XML all supported\
✅ **No API Keys** — Works out of the box, no YouTube API quota needed

***

### 📝 Example Input & Output

#### Running the Scraper

```json
{
  "startUrls": [
    { "url": "https://www.youtube.com/watch?v=AVmi2ffgVzk" }
  ],
  "maxComments": 300,
  "exactCommentCount": true,
  "commentsSortBy": "0",
  "publishedAfter": "30 days"
}
```

**Results:**

- ✅ Extracts up to 300 comments
- ✅ Shows true total (exact mode)
- ✅ Sorts by top comments
- ✅ Only from last 30 days

***

### 🚀 Quick Start (3 Steps)

1. **Paste URLs**\
   Add one or more YouTube video URLs to your input

2. **Pick a Mode**
   - Fast estimate? → Set `exactCommentCount: false`
   - Complete accuracy? → Set `exactCommentCount: true`

3. **Start & Download**\
   Click Start and download your comment dataset in any format (JSON, CSV, Excel, XML)

***

### ⚠️ Notes

- **Estimated Mode:** Uses YouTube's visible page count, typically ~1,200 comments visible
- **Exact Mode:** Traverses all comment continuations for guaranteed accuracy
- **Rate Limiting:** No authentication required; YouTube's standard rate limits apply
- **Reply Threads:** Replies are captured and linked via `replyToCid` field
- **Large Extractions:** For 10,000+ comments, exact mode may take several minutes

***

### 🆘 Troubleshooting

**Getting fewer comments than expected?**

- In estimated mode, YouTube only shows ~1,200 comments by default
- Switch to `exactCommentCount: true` for complete traversal
- Some videos have comments disabled or limited

**Empty dataset?**

- Check that the video URL is public and not deleted
- Verify the video has comments enabled
- Try a well-known video (e.g., Rick Roll) to test

**Want results faster?**

- Use `exactCommentCount: false` for instant results
- Reduce `maxComments` to lower numbers
- Sort by `"0"` (top comments) instead of `"1"` (newest)

***

### 💼 Perfect For

- **Agencies** running client sentiment analysis projects
- **Brands** monitoring competitor reactions in real-time
- **Researchers** gathering large comment datasets for studies
- **Analysts** conducting social listening and trend detection
- **Data Teams** preparing ML training datasets
- **Content Creators** understanding audience sentiment

***

**YouTube Comment Ultra** — Extract insights from your audience, today. 🎯

# Actor input Schema

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

Paste one or more direct YouTube video URLs.

## `maxComments` (type: `integer`):

Limits how many comments are saved in the dataset. Use 0 to store every matching comment.

## `exactCommentCount` (type: `boolean`):

Turn on for the exact total comment count. Leave off for faster runs with YouTube's visible estimate.

## `commentsSortBy` (type: `string`):

Choose which comment order to scrape.

## `publishedAfter` (type: `string`):

Only store comments published on or after this date. Use an absolute date like 2026-01-01 or a relative value like 30 days.

## Actor input object example

```json
{
  "startUrls": [],
  "maxComments": 100,
  "exactCommentCount": false,
  "commentsSortBy": "0"
}
```

# Actor output Schema

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

Dataset items containing extracted YouTube comments and their exact `commentsCount` values.

# 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("knowten/youtube-comments-ultra").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("knowten/youtube-comments-ultra").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 knowten/youtube-comments-ultra --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Youtube Comments Ultra",
        "description": "Professional YouTube comment scraper for sentiment analysis, brand monitoring, competitive intelligence and audience research. Extract complete comment threads with exact precision or blazing-fast estimates. Detect creator hearts. No authentication needed. Pay only for comments extracted.",
        "version": "0.0",
        "x-build-id": "hRcedfLndSWNBI1r4"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/knowten~youtube-comments-ultra/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-knowten-youtube-comments-ultra",
                "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/knowten~youtube-comments-ultra/runs": {
            "post": {
                "operationId": "runs-sync-knowten-youtube-comments-ultra",
                "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/knowten~youtube-comments-ultra/run-sync": {
            "post": {
                "operationId": "run-sync-knowten-youtube-comments-ultra",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "startUrls": {
                        "title": "YouTube video URLs",
                        "type": "array",
                        "description": "Paste one or more direct YouTube video URLs.",
                        "default": [],
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "maxComments": {
                        "title": "Maximum comments to store",
                        "minimum": 0,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Limits how many comments are saved in the dataset. Use 0 to store every matching comment.",
                        "default": 100
                    },
                    "exactCommentCount": {
                        "title": "Exact count mode",
                        "type": "boolean",
                        "description": "Turn on for the exact total comment count. Leave off for faster runs with YouTube's visible estimate.",
                        "default": false
                    },
                    "commentsSortBy": {
                        "title": "Comment sorting",
                        "enum": [
                            "0",
                            "1"
                        ],
                        "type": "string",
                        "description": "Choose which comment order to scrape.",
                        "default": "0"
                    },
                    "publishedAfter": {
                        "title": "Comments published after",
                        "type": "string",
                        "description": "Only store comments published on or after this date. Use an absolute date like 2026-01-01 or a relative value like 30 days."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
