# Meta Threads Profile Scraper (`scraperoka/meta-threads-profile-scraper`) Actor

🔍 Meta Threads Profile Scraper extracts public profile details from Threads fast and accurately. 📈 Perfect for B2B lead gen, influencer research, and audience insights. Save time, stay compliant, and scale your marketing data collection. 🚀

- **URL**: https://apify.com/scraperoka/meta-threads-profile-scraper.md
- **Developed by:** [Scraperoka](https://apify.com/scraperoka) (community)
- **Categories:** Lead generation, Social media, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.99 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

### Meta Threads Profile Scraper 🎯 — Extract Profile Metadata & Latest Posts in Bulk

Manually visiting Threads.net profiles to collect profile metadata and latest posts is slow and hard to scale. **Meta Threads Profile Scraper** extracts comprehensive profile information and `latestPosts` from Threads profiles in one run—ideal for marketers, recruiters, and growth teams. Meta Threads profile scraper tools and Threads profile scraper software often stop at a single page—this one returns structured, integration-ready data for scraping Threads profiles at scale. You can process multiple usernames and get thousands of structured fields in minutes.

---

### What You Get: Sample Output

Here's a sample record from a single run:

```json
{
  "result": [
    {
      "url": "https://www.threads.net/@guinnessworldrecords",
      "is_private": false,
      "profile_pic_url": "https://example.com/profile_pic.jpg",
      "friendship_status": "FOLLOWING",
      "has_onboarded_to_text_post_app": true,
      "pk": "123456789",
      "text_post_app_is_private": false,
      "username": "guinnessworldrecords",
      "text_post_app_remove_mention_entrypoint": null,
      "text_app_custom_feeds": null,
      "gating": null,
      "follower_count": 1234567,
      "profile_context_facepile_users": [],
      "hd_profile_pic_versions": [],
      "text_post_app_public_views": 987654,
      "is_verified": true,
      "biography": "Official Guinness World Records updates and stories.",
      "text_app_biography": "Official Guinness World Records updates and stories.",
      "full_name": "Guinness World Records",
      "bio_links": ["https://guinnessworldrecords.com"],
      "profile_tags": ["Records", "World Records"],
      "transparency_label": null,
      "show_text_post_app_badge": true,
      "platform_podcast_info": null,
      "platform_podcast_episode_info": null,
      "id": "987654321",
      "latestPosts": [
        {
          "id": "post_1",
          "logging_info_token": "logtoken_1",
          "pk": "pk_1",
          "user": { "username": "guinnessworldrecords" },
          "text_post_app_info": { "some": "value" },
          "is_paid_partnership": false,
          "audio": null,
          "caption": "Breaking a new record today!",
          "caption_is_edited": false,
          "transcription_data": null,
          "carousel_media": [],
          "code": "code_1",
          "image_versions2": [],
          "original_height": 720,
          "original_width": 1280,
          "accessibility_caption": "Accessibility caption",
          "usertags": [],
          "video_versions": [],
          "has_audio": false,
          "media_type": 1,
          "caption_add_on": null,
          "like_count": 10234,
          "giphy_media_info": null,
          "prototyping_only_glimmer_post_info": null,
          "media_overlay_info": null,
          "metaPlace": null,
          "meta_place": null,
          "gen_ai_detection_method": null,
          "taken_at": 1710000000,
          "organic_tracking_token": null,
          "__token": "token_1",
          "canonical_url": "https://www.threads.net/p/code_1",
          "like_and_view_counts_disabled": false
        }
      ]
    }
  ]
}
````

#### Output Fields (sample)

| Field | Type | What It Tells You |
|---|---|---|
| `result` | array | The full run output, with one item per Threads username you provided |
| `url` | string | The canonical Threads profile URL for the scraped username |
| `is_private` | boolean | Whether the profile is marked private |
| `profile_pic_url` | string | The profile picture URL (useful for previewing or enrichment) |
| `friendship_status` | any | Relationship status value found in the profile data (helpful for internal analysis) |
| `follower_count` | number | The follower count captured at scrape time |
| `is_verified` | boolean | Whether the account is marked verified |
| `biography` | string | The profile biography text (great for segmentation) |
| `full_name` | string | The display name shown on the profile |
| `bio_links` | array | Any links present in the bio |
| `profile_tags` | array | Tags associated with the profile |
| `transparency_label` | any | Transparency label value from the profile data |
| `latestPosts` | array | Structured latest post objects found for the profile |
| `error` | string | Only appears for a username entry when scraping fails (failure reason + username) |

Export your dataset as JSON, CSV, or Excel — straight from the Apify dashboard.

***

### Why Meta Threads Profile Scraper?

There are a lot of ways to pull data from Threads profiles — here’s what sets Meta Threads Profile Scraper apart.

#### Profile metadata + latest posts in one output

Meta Threads Profile Scraper returns both profile-level fields (like `follower_count`, `is_verified`, and `biography`) and a structured `latestPosts` array in a single run. That means you can build richer audience profiles without stitching multiple sources together.

#### Clean, integration-ready JSON structure

The actor pushes a consistent JSON schema under `result`, with each username’s data grouped into one object. This makes the Threads profile scraper tool a practical choice for marketers and analysts who want to load results into a CRM, BI dashboard, or spreadsheet.

#### Resilient scraping with clear error states

If a profile request can’t be completed, the actor returns an `error` object containing a failure message and the `username`. This “results-first” approach is useful for large batches where you don’t want a single failure to break everything.

#### Built for bulk username runs

Meta Threads Profile Scraper is designed around passing a list of `usernames`, processing them sequentially, and collecting results into one payload. This makes it a solid option for scraping Threads profiles for research, outreach, or campaign planning.

***

### Configuring Your Run

Drop this into your `input.json` to get started:

```json
{
  "usernames": ["guinnessworldrecords"]
}
```

#### Input Parameters

| Parameter | Required | What It Does |
|---|---|---|
| `usernames` | ✅ | A list of Threads usernames to scrape (for example: `guinnessworldrecords`) |
| ↳ `usernames[]` | ✅ | Each item is a single Threads username; the actor builds the profile URL as `https://www.threads.net/@{username}` |

***

### Core Capabilities

#### Bulk Profile Processing

Meta Threads Profile Scraper accepts multiple Threads usernames and returns a `result` list that includes one profile object per username. That’s ideal when you’re compiling audience lists, tracking competitor activity, or building a creator shortlist.

#### Latest Posts Extraction (structured)

For each profile, the actor outputs a `latestPosts` array containing structured post objects. If you’re using a Threads profile information scraping workflow, this saves you from manually gathering post text and media metadata.

#### Output Completeness for Analysis

The `latestPosts` objects include many fields such as `id`, `pk`, `caption`, `like_count`, `media_type`, `canonical_url`, and more. This “wide but structured” output helps data teams run deeper analysis without immediately re-scraping.

#### Resilience & Error Handling

When scraping fails for a specific username, the actor returns an object with `error` and `username`. That makes it easier to separate successful results from failures and re-run only the problematic usernames.

#### Automation & Scale-Friendly Runs

Because Meta Threads Profile Scraper returns all results as a single dataset payload under `result`, it’s straightforward to export and integrate into repeatable pipelines. This is especially useful when you run Threads analytics scraper jobs as part of scheduled research tasks.

***

### Who Gets the Most Out of This

Here’s how different teams put Meta Threads Profile Scraper to work:

**Growth teams & social media strategists** — Use the Threads profile scraper tool to pull profile metadata like `follower_count`, `is_verified`, and `biography`, then pair it with `latestPosts` for fast competitor and campaign context. You end up with a searchable dataset instead of scattered notes across tabs.

**Influencer marketers & brand managers** — Scrape Threads profiles in bulk to compare creator bios and spot engagement signals from post data fields such as `like_count` and `canonical_url`. This helps you shortlist accounts more confidently when planning outreach.

**Recruiters & talent sourcers** — Use Meta Threads profile scraping software to enrich candidate research with structured profile details (including `full_name` and `bio_links`) and recent post metadata. It’s a faster way to build background dossiers from publicly available profile information.

**Researchers & data analysts** — Feed a list of usernames into a Threads user profile scraper workflow and analyze both profile attributes and post-level fields in one dataset. This is a strong starting point for metadata-driven insights and longitudinal tracking when you re-run on a schedule.

**Automation & integration specialists (technical)** — Trigger the actor via the Apify API to integrate Outputs into your data warehouse or internal services. You can automate Threads account data extractor tasks by consuming the JSON pushed under `result` and transforming it downstream.

***

### Step-by-Step: How to Use It

No coding needed. Here's how to run Meta Threads Profile Scraper from start to finish:

1. **Open the actor on Apify** — go to [console.apify.com](https://console.apify.com) and find **Meta Threads Profile Scraper**.
2. **Enter your inputs** — add your Threads usernames in `usernames` (from the Configuration section above).
3. **Configure proxy settings** — if your run requires it, adjust proxy preferences in the Apify UI (the actor supports proxy configuration for reliability).
4. **Hit Run and watch the live log** — monitor progress as each username is processed.
5. **View results in the dataset tab** — each run produces a dataset item with the scraped profile objects.
6. **Export as JSON, CSV, or Excel** — download from the Apify dashboard when processing finishes.

The whole process takes under 5 minutes to set up.

***

### Integrations & Export Options

Once your data is collected, Meta Threads Profile Scraper plugs directly into your existing workflow.

You can export results from the Apify dataset tab in common formats like JSON, CSV, or Excel, which makes it easy to move into spreadsheets, BI tools, and reporting dashboards. For a lot of teams, this single export step is enough to start using the data immediately.

For deeper automation, you can connect the actor to your systems via the Apify API (see [apify.com/docs/api](https://apify.com/docs/api)) and build scheduled runs. You can also trigger downstream actions with webhooks and no-code automation tools like Zapier or Make, so your Threads profile URL scraper outputs update automatically.

***

### Pricing & Free Trial

Meta Threads Profile Scraper runs on the Apify platform, which offers a **free tier** — no credit card required to get started. On Apify, pricing is generally based on platform compute usage, and you’ll be able to scale up when you move from testing to ongoing Threads profile information scraping.

Start for free at [apify.com](https://apify.com) and scale when you're ready.

***

### Reliability & Performance

| What We Handle | How |
|---|---|
| Rate limiting & request pressure | Uses paced processing (includes a short delay between usernames) |
| Network variability | Uses resilient request handling with graceful failures |
| Proxy support | Proxy configuration is supported to improve reliability |
| Failure visibility | Returns structured error information per username |
| Data completeness | Outputs both profile metadata and a `latestPosts` array in one record |

Limitations: The actor works with publicly accessible profile pages. If a profile’s page structure doesn’t provide the expected data blob, the actor may return an error for that username.

For enterprise-scale runs, contact us to discuss custom configurations.

***

### Frequently Asked Questions

#### Is there a free plan or trial?

Yes—Apify offers a free tier so you can test Meta Threads Profile Scraper before scaling. Exact credit amounts and availability depend on your Apify account and current platform policies.

#### Do I need to log in to Threads to use this?

No. This actor extracts data from publicly available profile pages and does not require you to log in.

#### How accurate is the data?

The data accuracy depends on what the profile page publicly provides at scrape time. Meta Threads Profile Scraper returns fields exactly as they are found in the page’s data blob, so missing fields are simply returned as `null` (or may not appear).

#### How many results can I get per run?

You can submit as many usernames as you include in the `usernames` array. The output returns one profile object per username under `result`, plus a `latestPosts` list for each profile when available.

#### How often is the data updated / how fresh is it?

Data is fresh at the moment the actor runs for each username. If you need up-to-date latestPosts, schedule recurring runs (for example, daily or weekly) using Apify scheduling.

#### Is this legal? Does it comply with GDPR / CCPA?

The actor works with **publicly available data** from Threads profiles that can be viewed without logging in. Compliance with GDPR, CCPA, platform Terms of Service, and any local regulations is your responsibility when storing and using the extracted data.

#### Can I export results to Google Sheets or Excel?

Yes. You can export results from the Apify dataset tab as JSON and CSV/Excel formats (and then import into Google Sheets or your spreadsheet tool). You can also automate the flow via Apify integrations.

#### Can I run this on a schedule automatically?

Yes. You can set scheduled runs on Apify, so Meta Threads Profile Scraper automatically refreshes your Threads profile metadata and latest posts dataset on a cadence you choose.

#### Can I access this via API?

Yes. You can access run results programmatically using the Apify API. See the Apify API documentation at [apify.com/docs/api](https://apify.com/docs/api).

#### What happens if the actor hits an error?

If scraping fails for a username, the actor returns an object containing `error` and `username` for that specific item. Your run can still complete for other usernames, and you’ll be able to identify which entries need attention.

***

### Need Help or Have a Request?

Got a question about Meta Threads Profile Scraper or want a new feature added? Reach out at <dataforleads@gmail.com>. We’re happy to help with setup, inputs, and output interpretation, and we actively maintain this actor based on user feedback. If you want concrete upgrades, ask about ideas like batch CSV upload of usernames or a webhook notification when the run completes.

***

### Disclaimer & Responsible Use

*Meta Threads Profile Scraper is the fastest, most reliable way to extract structured Threads profile metadata and latest posts — start your free run today.*

This actor extracts **publicly available data** from Threads profiles. It does not access private accounts, login-gated content, or password-protected pages. You are responsible for complying with GDPR, CCPA, platform Terms of Service, and any applicable local regulations. For data removal requests, contact <dataforleads@gmail.com>. Use responsibly, ethically, and only for lawful purposes.

# Actor input Schema

## `usernames` (type: `array`):

List of Threads usernames to scrape.

## Actor input object example

```json
{
  "usernames": [
    "guinnessworldrecords"
  ]
}
```

# 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 = {
    "usernames": [
        "guinnessworldrecords"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("scraperoka/meta-threads-profile-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 = { "usernames": ["guinnessworldrecords"] }

# Run the Actor and wait for it to finish
run = client.actor("scraperoka/meta-threads-profile-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 '{
  "usernames": [
    "guinnessworldrecords"
  ]
}' |
apify call scraperoka/meta-threads-profile-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Meta Threads Profile Scraper",
        "description": "🔍 Meta Threads Profile Scraper extracts public profile details from Threads fast and accurately. 📈 Perfect for B2B lead gen, influencer research, and audience insights. Save time, stay compliant, and scale your marketing data collection. 🚀",
        "version": "0.1",
        "x-build-id": "VhC3Te4wXYo0M9RXh"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scraperoka~meta-threads-profile-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scraperoka-meta-threads-profile-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/scraperoka~meta-threads-profile-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scraperoka-meta-threads-profile-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/scraperoka~meta-threads-profile-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scraperoka-meta-threads-profile-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": [
                    "usernames"
                ],
                "properties": {
                    "usernames": {
                        "title": "Usernames",
                        "type": "array",
                        "description": "List of Threads usernames to scrape.",
                        "items": {
                            "type": "string"
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
