# Tiktok Hashtag Scraper (`scrapapi/tiktok-hashtag-scraper`) Actor

🔎 TikTok Hashtag Scraper pulls posts, video links, captions, likes, views & comments from any hashtag for instant insights. 📊 Export CSV/JSON for trend analysis, influencer discovery & content strategy. 🚀 Perfect for marketers, researchers & growth teams.

- **URL**: https://apify.com/scrapapi/tiktok-hashtag-scraper.md
- **Developed by:** [ScrapAPI](https://apify.com/scrapapi) (community)
- **Categories:** Automation, Lead generation, Social media
- **Stats:** 4 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$19.99/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

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

## 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

### Tiktok Hashtag Scraper

Tiktok Hashtag Scraper is an Apify actor that navigates public TikTok tag pages with Playwright and extracts structured video data from any hashtag, username, or keyword you provide. It solves the manual effort of finding and aggregating video performance metrics at scale by acting as a TikTok hashtag extractor and TikTok tag scraper that outputs clean, ready-to-analyze JSON/CSV datasets. Built for marketers, developers, data analysts, and researchers, it lets you scrape TikTok hashtags in bulk and turn them into insights you can use in dashboards, models, and content planning.

### What data / output can you get?

Below are the exact fields this TikTok hashtag research tool collects and pushes to the Apify dataset, with examples for clarity:

| Data type | Description | Example value |
| --- | --- | --- |
| hashtag | The hashtag/username/keyword you queried | "travel" |
| id | TikTok video ID | "7268815616677661970" |
| text | Video description text | "Hiking through the Dolomites! 🏔️" |
| createTime | Unix timestamp when the video was created | 1712073600 |
| createTimeISO | ISO timestamp parsed from createTime | "2024-04-02T00:00:00Z" |
| webVideoUrl | Public TikTok URL for the video | "https://www.tiktok.com/@wanderlust_jane/video/7268815616677661970" |
| mediaUrls | Array of playable/downloadable video URLs | ["https://v16-webapp-prime.tiktok.com/video/...mp4"] |
| videoMeta.duration | Video duration in seconds | 15 |
| authorMeta.name | Author’s unique handle | "wanderlust_jane" |
| authorMeta.fans | Author’s follower count | 12000 |
| diggCount | Number of likes | 4947 |
| shareCount | Number of shares | 1384 |
| playCount | Number of views | 176800 |
| commentCount | Number of comments | 62 |
| musicMeta.musicName | Music track title | "original sound" |
| hashtags[].name | Hashtags detected in the video | "foryoupage" |

Notes:
- You can export results in JSON, CSV, or Excel directly from the Apify dataset.
- Some nested metadata is included for authors, music, and video files to support deeper TikTok hashtag analytics workflows.

### Key features

- ⚙️ Playwright-powered extraction
  Uses a headless Chromium browser to load public TikTok tag pages and capture the underlying API responses for reliable, structured data collection.

- 📦 Bulk inputs via startUrls
  Accepts multiple hashtags, usernames, keywords, or full TikTok URLs in one run. The actor automatically extracts the token from URLs (e.g., tag or @handle) before scraping.

- 🎛️ Result limits you control
  Use maxData to cap how many videos are collected per query so you can balance depth and speed for each hashtag or username.

- 🌐 Proxy configuration
  Configure proxy settings with proxyConfiguration to manage access strategy for your region and workload.

- 🧱 Structured dataset outputs
  Pushes clean JSON records to the Apify dataset, including fields like id, text, authorMeta, videoMeta, mediaUrls, and engagement counts (diggCount, shareCount, playCount, commentCount).

- ⚡ Concurrent processing
  Internally processes multiple hashtags asynchronously to accelerate large batches and support scale for teams.

- 📤 Easy export & integration
  Download results as CSV/JSON/Excel from Apify or access them via the Apify API for pipelines, making it a practical TikTok hashtag finder for analytics stacks.

- 🔐 No credential setup
  Navigates public tag pages without account login, making it a straightforward TikTok hashtag scraping tool for rapid experimentation.

### How to use Tiktok Hashtag Scraper - step by step

1. Create your Apify account
   Sign up or log in to Apify to access the actor and your datasets.

2. Open the Tiktok Hashtag Scraper actor
   Find it in the Apify Store and click Try for free.

3. Add your input data
   - In startUrls, enter a list of hashtags (without #), usernames (without @), keywords, or full TikTok URLs.
   - Examples: "travel", "fitness", "https://www.tiktok.com/tag/cooking"

4. Set collection limits
   - Adjust maxData to control how many videos to collect per query.

5. Configure proxy (optional)
   - Set proxyConfiguration based on your needs (e.g., {"useApifyProxy": false} by default).

6. Run the actor
   Click Start. The actor opens each tag/handle page, scrolls, and captures video data behind the scenes.

7. Monitor progress
   Watch the run logs for counts of items collected per hashtag/username.

8. Export your results
   Open the run’s dataset and export to JSON, CSV, or Excel—or connect via the Apify API for automation.

Pro Tip: You can mix hashtags, usernames, keywords, and full URLs in startUrls. The actor automatically normalizes them for scraping, making it a flexible TikTok hashtag search tool for batch jobs.

### Use cases

| Use case name | Description |
| --- | --- |
| Marketing – campaign hashtag analysis | Collect engagement metrics (views, likes, shares, comments) for target tags to prioritize creatives and optimize media plans. |
| Content teams – topic validation | Gather recent videos for niche keywords to validate content ideas and build data-backed editorial calendars. |
| Influencer discovery via hashtags | Filter outputs by authorMeta.fans and engagement counts to find creators posting under a given tag. |
| Social analytics pipelines | Pull structured JSON from the Apify dataset API and feed it into BI dashboards or data warehouses. |
| Ecommerce/product monitoring | Track product or brand hashtags and measure traction via playCount and diggCount over time. |
| Academic/market research | Export CSV for longitudinal studies of topic diffusion and interaction counts per tag or keyword. |
| Competitive tracking on branded tags | Monitor competitor hashtags and quantify engagement deltas across periods using consistent fields. |

### Why choose Tiktok Hashtag Scraper?

This actor focuses on precision, reliability, and automation-friendly outputs for TikTok hashtag research at scale.

- ✅ Structured, field-accurate data designed for analytics (authorMeta, videoMeta, mediaUrls, engagement counts)
- ⚡ Asynchronous batch processing for faster collection across multiple tags or handles
- 🌐 Flexible proxy configuration for robust, region-agnostic scraping
- 🧰 Developer-ready via Apify datasets and API access, ideal for pipelines and apps
- 🔒 Public-page scraping only—no credential overhead
- 📤 One-click exports to CSV/JSON/Excel for quick analysis in your favorite tools
- 🏗️ Playwright-based browser automation for stability beyond fragile extensions

Bottom line: a production-ready TikTok hashtag scraping tool that favors clean outputs, speed, and repeatability over manual workflows or unstable alternatives.

### Is it legal / ethical to use Tiktok Hashtag Scraper?

Yes—when done responsibly. This actor loads public TikTok tag pages and extracts publicly available video data. It does not access private profiles or authenticated content.

Guidelines to follow:
- Only use the tool on public data you’re permitted to process.
- Comply with platform terms and applicable regulations (e.g., GDPR/CCPA).
- Avoid collecting or using data for spam or abusive purposes.
- Consult your legal team for edge cases or jurisdiction-specific requirements.

### Input parameters & output format

Example JSON input
```json
{
  "startUrls": [
    "travel",
    "https://www.tiktok.com/tag/fitness",
    "cooking"
  ],
  "maxData": 50,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
````

Parameters

- startUrls (array, required): List of TikTok hashtags (without #), usernames (without @), or keywords to scrape. You can also provide full TikTok URLs; the actor will extract the relevant tag/handle. Default: none (required).
- maxData (integer, optional): Maximum number of videos to collect per hashtag/username/keyword. Minimum 1, maximum 1000. Default: 10.
- proxyConfiguration (object, optional): Choose which proxies to use. Default prefill: {"useApifyProxy": false}.

Example JSON output

```json
{
  "hashtag": "travel",
  "id": "7268815616677661970",
  "text": "Hiking through the Dolomites! 🏔️",
  "createTime": 1712073600,
  "createTimeISO": "2024-04-02T00:00:00Z",
  "isAd": false,
  "isMuted": false,
  "authorMeta": {
    "id": "7028153025829602309",
    "name": "wanderlust_jane",
    "nickName": "Jane",
    "verified": false,
    "signature": "Travel vlogs & tips",
    "bioLink": null,
    "avatar": "https://p16-sign-va.tiktokcdn.com/...jpg",
    "privateAccount": false,
    "ttSeller": false,
    "following": 123,
    "fans": 12000,
    "heart": 208500,
    "video": 100,
    "digg": 48
  },
  "musicMeta": {
    "musicName": "original sound",
    "musicAuthor": "wanderlust_jane",
    "musicOriginal": true,
    "musicAlbum": "",
    "playUrl": "https://.../music.mp3",
    "coverMediumUrl": "https://.../cover.jpg",
    "musicId": "7268815657828125447"
  },
  "webVideoUrl": "https://www.tiktok.com/@wanderlust_jane/video/7268815616677661970",
  "mediaUrls": [
    "https://v16-webapp-prime.tiktok.com/video/...mp4",
    "https://v19-webapp-prime.tiktok.com/video/...mp4"
  ],
  "videoMeta": {
    "height": 1024,
    "width": 576,
    "duration": 15,
    "coverUrl": "https://.../cover.jpeg",
    "originalCoverUrl": "https://.../origin-cover.jpeg",
    "definition": "540p",
    "format": "mp4",
    "originalDownloadAddr": "https://.../download.mp4",
    "downloadAddr": "https://.../download.mp4"
  },
  "diggCount": 4947,
  "shareCount": 1384,
  "playCount": 176800,
  "collectCount": 1705,
  "commentCount": 62,
  "mentions": [],
  "hashtags": [
    { "name": "foryoupage" },
    { "name": "travel" },
    { "name": "dolomites" }
  ]
}
```

Notes:

- bioLink may be null.
- createTimeISO may be null if the timestamp cannot be parsed.
- mediaUrls and hashtags arrays can be empty depending on the source post.

### FAQ

#### Is Tiktok Hashtag Scraper free to use?

You can try it on Apify with free trial minutes and then choose a paid plan if you need higher volume. Check the actor’s Apify Store page for current pricing and limits.

#### Do I need to log in to TikTok?

No. The actor navigates public tag and profile pages using headless Chromium and does not require account credentials or cookies.

#### Can I use it as a TikTok hashtag extractor from full URLs?

Yes. You can paste full TikTok tag or profile URLs into startUrls. The actor extracts the hashtag or @username automatically before scraping.

#### How many results can I collect per hashtag?

Use maxData to set the limit per query. The schema allows 1 to 1000 items per hashtag/username/keyword per run, with a default of 10.

#### What output fields are included?

Each record includes fields like id, text, createTime, createTimeISO, authorMeta, musicMeta, videoMeta, mediaUrls, webVideoUrl, and engagement counts (diggCount, shareCount, playCount, commentCount), plus the hashtag you queried.

#### How can I export results?

All results are stored in the Apify dataset. You can export to JSON, CSV, or Excel directly from the run, or pull data via the Apify API for automation.

#### Does it support developers and Python workflows?

Yes. Because results live in Apify datasets, you can consume them via the Apify API from any language (including Python) to build pipelines and analytics.

#### Is scraping TikTok hashtags legal?

Yes—when you scrape public data responsibly and comply with platform terms and relevant laws. This tool only loads public pages. Always verify your specific use case with your legal team.

### Closing CTA / Final thoughts

Tiktok Hashtag Scraper is built to extract structured, analytics-ready TikTok hashtag data at scale. With Playwright-powered reliability, bulk inputs, proxy configuration, and clean dataset outputs, it’s ideal for marketers, creators, researchers, and developers who need a dependable TikTok hashtag scraping tool. Export to CSV/JSON for fast analysis, or connect via the Apify API to power dashboards and pipelines. Start extracting smarter TikTok insights today and turn hashtags into actionable strategy.

# Actor input Schema

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

List of TikTok hashtags (without #), usernames (without @), or keywords to scrape.

## `maxData` (type: `integer`):

Maximum number of videos to collect per hashtag/username/keyword.

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

Choose which proxies to use. If TikTok rejects the proxy, automatic fallback will occur.

## Actor input object example

```json
{
  "startUrls": [
    "travel"
  ],
  "maxData": 10,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# 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 = {
    "startUrls": [
        "travel"
    ],
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapapi/tiktok-hashtag-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 = {
    "startUrls": ["travel"],
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("scrapapi/tiktok-hashtag-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 '{
  "startUrls": [
    "travel"
  ],
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call scrapapi/tiktok-hashtag-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Tiktok Hashtag Scraper",
        "description": "🔎 TikTok Hashtag Scraper pulls posts, video links, captions, likes, views & comments from any hashtag for instant insights. 📊 Export CSV/JSON for trend analysis, influencer discovery & content strategy. 🚀 Perfect for marketers, researchers & growth teams.",
        "version": "0.1",
        "x-build-id": "DIIUkAYwjI3QQfXF6"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapapi~tiktok-hashtag-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapapi-tiktok-hashtag-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/scrapapi~tiktok-hashtag-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scrapapi-tiktok-hashtag-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/scrapapi~tiktok-hashtag-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scrapapi-tiktok-hashtag-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "startUrls"
                ],
                "properties": {
                    "startUrls": {
                        "title": "Hashtags, Usernames, or Keywords",
                        "type": "array",
                        "description": "List of TikTok hashtags (without #), usernames (without @), or keywords to scrape.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxData": {
                        "title": "Maximum Items per Hashtag",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Maximum number of videos to collect per hashtag/username/keyword.",
                        "default": 10
                    },
                    "proxyConfiguration": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Choose which proxies to use. If TikTok rejects the proxy, automatic fallback will occur."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
