# Bandcamp Email Scraper (`scraperoka/bandcamp-email-scraper`) Actor

📧 Bandcamp Email Scraper extracts artist & venue emails from Bandcamp pages for targeted outreach. ✅ Save time, improve lead lists, and boost campaign results. 🚀 Perfect for marketing, sales, PR & research.

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

## Pricing

from $2.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.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

### Bandcamp Email Scraper 🎯 — Bulk Extract Emails from Bandcamp Bios & Public Pages

Manually digging through Bandcamp bios to collect contact emails wastes hours you don’t have. **Bandcamp Email Scraper** automatically extracts emails from publicly available Bandcamp content using your keywords and email-domain filters. This Bandcamp email scraper helps marketers, researchers, and growth teams collect bandcamp scrape emails and build a bandcamp artist email list at scale—often thousands of records in a single run.

---

### What You Get: Sample Output

Here’s a sample record from a single run:

```json
{
  "network": "Bandcamp.com",
  "keyword": "indie rock",
  "title": "Indie Rock — New Releases",
  "description": "Follow for booking. Contact: hello@gmail.com and press@newsletter.com",
  "url": "https://bandcamp.com/example-artist",
  "email": "hello@gmail.com",
  "status": "success",
  "error_message": null
}
````

| Field | Type | What It Tells You |
|---|---|---|
| `network` | string | Confirms the source network so you can route data correctly downstream |
| `keyword` | string | Shows which keyword produced the match, so you can attribute results |
| `title` | string | Gives context around the page where the email was found |
| `description` | string | Captures the surrounding text that contained the email |
| `url` | string | Links back to the page for quick verification and auditing |
| `email` | string | The extracted contact email address you can use for outreach |
| `status` | string | A clear success marker you can filter on in spreadsheets |
| `error_message` | string | Populated only when something goes wrong (null on success) |
| `engine` | string | Helps you track which scraping engine you used for the run |
| `platform` | string | Confirms you’re collecting from Bandcamp via this actor |

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

***

### Why Bandcamp Email Scraper?

There are a lot of ways to pull contact data from Bandcamp — here’s what sets **Bandcamp Email Scraper** (and bandcamp scrape emails workflows like it) apart.

#### Keyword and domain targeting that stays in your control

You choose the `keywords` used to find relevant bios and pages, and you restrict results with `customDomains` (for example, `@gmail.com`) to focus on the email domains that matter to your leads. This makes it easier to run targeted bandcamp bulk email extraction instead of collecting noisy addresses.

#### Built for bulk extraction with a clear stop condition

You set `maxEmails` to cap how many emails the scraper will collect. This helps keep large bandcamp email scraping software runs predictable—while still allowing the scraper to stop automatically once your limit is reached.

#### Resilient scraping with built-in retries and fallbacks

The actor is designed with resilience in mind, including retry logic and fallback behavior when results are sparse or access is limited. That means fewer “empty runs” when you’re running bandcamp lead generation email scraper jobs at scale.

#### Structured, integration-ready results

Each found email is pushed as a structured record with consistent fields (`email`, `url`, `keyword`, and more), so you can feed it directly into your workflow (spreadsheets, CRMs, or automation pipelines).

***

### Configuring Your Run

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

```json
{
  "keywords": ["indie rock"],
  "location": "",
  "platform": "Bandcamp",
  "customDomains": ["@gmail.com"],
  "maxEmails": 20,
  "engine": "legacy",
  "proxyConfiguration": {}
}
```

| Parameter | Required | What It Does |
|---|---|---|
| `keywords` | ✅ | The list of keywords the actor uses to search for relevant Bandcamp bios and pages containing contact emails |
| `location` | ⬜ | Optional location text to filter search results (leave empty for no location filter) |
| `platform` | ⬜ | Select the target platform; this actor supports `Bandcamp` |
| `customDomains` | ⬜ | Email domain allowlist (for example `@gmail.com`) to focus the extracted results |
| `maxEmails` | ⬜ | Upper limit for how many emails the actor collects before it stops |
| `engine` | ⬜ | Chooses the scraping engine mode: `cost-effective` or `legacy` |
| `proxyConfiguration` | ⬜ | Configure proxies for this Actor run (if you need dedicated routing) |

***

### Core Capabilities

#### Bandcamp bio-focused email extraction

The scraper finds emails from Bandcamp bios and posts related to your provided keywords. This is ideal when you want a bandcamp contact email scraper experience that’s tied to relevant creator content—not random web pages.

#### Domain filtering for higher lead relevance

Using `customDomains`, you can extract only emails matching the domains you care about. This is a practical way to run an email harvesting tool bandcamp-style while keeping your bandcamp email database cleaner and more actionable.

#### Bulk pagination with a hard result cap

The actor continues collecting results until it reaches `maxEmails`. This makes it easier to control runtime and cost during bandcamp artist email list building, especially for larger keyword sets.

#### Consistent, auditable output records

For each extracted email, you get structured fields including `network`, `keyword`, `title`, `description`, `url`, and `email`. The `url` and `description` fields help you quickly verify what the actor found, which is useful for research and quality control.

#### Engine choice for your reliability vs. speed needs

You can select `engine` to match your preferences. If you want a faster, cost-effective mode you can use `cost-effective`; if you prefer the legacy approach, use `legacy`. Either way, the goal is to make bandcamp scrape emails runs smoother and more productive.

***

### Who Gets the Most Out of This

Here’s how different teams put **Bandcamp Email Scraper** to work:

**Growth and marketing teams** — They use bandcamp email finder results to build a focused contact list for outreach campaigns, using keywords plus custom email domains to keep leads relevant. In one run, they can go from “we need emails” to a usable list ready for sequencing.

**Sales development reps** — They feed in their target niches (via `keywords`) and domain filters (`customDomains`) to generate a bandcamp lead generation email scraper dataset. The `url` and `description` context helps them verify matches before adding contacts to their CRM.

**Freelance researchers & data analysts** — They use Bandcamp Email Scraper to automate bandcamp bulk email extraction for studies, outreach sampling, and contact availability auditing. The structured output makes it easy to clean and analyze.

**Automation specialists (developers and data engineers)** — They run the actor via Apify, then export the dataset into their pipeline. This supports automated workflows for contact enrichment and updating internal bandcamp email database tables.

***

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

No coding needed. Here's how to run **Bandcamp Email Scraper** from start to finish:

1. **Open the actor on Apify** — go to [console.apify.com](https://console.apify.com) and open **Bandcamp Email Scraper**.
2. **Enter your inputs** — set `keywords` (required), and optionally `customDomains`, `location`, and `maxEmails`.
3. **Configure proxy settings** — if you need proxy routing for reliability, set `proxyConfiguration` for your run.
4. **Hit Run and watch the live log** — monitor progress to confirm emails are being found and pushed as results.
5. **View results in the dataset tab** — every extracted email appears as a structured record with context fields.
6. **Export as JSON, CSV, or Excel** — download the dataset in the format that fits your workflow.

The whole process takes under 5 minutes to set up.

***

### Integrations & Export Options

Once your data is collected, **Bandcamp Email Scraper** plugs directly into your existing workflow.

You can export your Apify dataset in common formats like **JSON**, **CSV**, and **Excel** from the Apify dashboard for easy importing into spreadsheets and tools. You can also connect your results to automation platforms like Zapier/Make and other destinations using Apify’s integrations.

For programmatic access, you can retrieve run results via the **Apify API** using [apify.com/docs/api](https://apify.com/docs/api). If you want downstream actions to trigger automatically, use Apify support for **webhooks** and run completion events (see Apify docs for details).

***

### Pricing & Free Trial

**Bandcamp Email Scraper** runs on the Apify platform, which offers a **free tier** — no credit card required to get started. You can start with a few test runs to validate your keyword and `customDomains` strategy, then scale up when you’re ready.

For production usage, Apify is typically **pay-as-you-go** (based on platform compute). Plans and exact costs depend on your Apify subscription and workload—check the Apify pricing page for the most up-to-date numbers.

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

***

### Reliability & Performance

| What We Handle | How |
|---|---|
| Rate-limiting and access variability | Uses engine modes and resilience-focused behavior to keep runs moving |
| Proxy-based reliability | Supports configurable proxy routing for stable collection |
| Sparse results | Includes logic to retry and move on when results are limited |
| Data continuity | Writes extracted items as structured records while the run progresses |
| Output consistency | Each found email includes context fields (`url`, `description`, and more) |

**Limitations:** The actor works on **publicly available data** published on Bandcamp pages/bios. If the emails you want are not present in the relevant public text, the results will be limited. For large or complex research projects, you may need to broaden `keywords` or expand `customDomains`.

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** that’s enough for testing smaller runs. Use it to validate that your `keywords` and `customDomains` return the kind of bandcamp artist email list entries you need.

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

No. This actor is designed to work with **publicly available data** from Bandcamp content, so you don’t need a Bandcamp account or session access.

#### How accurate is the data extracted by Bandcamp Email Scraper?

Accuracy depends on what contact emails are published in the Bandcamp bios and related public content. The actor extracts emails that appear in the scraped text and applies your `customDomains` filter to keep results focused.

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

You control the total with `maxEmails`. The actor will stop once the limit is reached, which helps you manage runtime and cost for bandcamp email database building.

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

The dataset reflects what was available at scrape time. If you need fresher results, run the actor again using updated `keywords` or expanded `customDomains`.

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

You should treat extracted emails as personal data and follow applicable laws and platform rules. This actor uses **publicly available data**, but it’s your responsibility to ensure your processing and outreach comply with GDPR, CCPA, and any local regulations.

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

Yes. You can export your dataset as **JSON, CSV, or Excel** from the Apify dashboard. From there, you can import into Google Sheets or any other spreadsheet tool you use.

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

Yes. With Apify, you can schedule actor runs so the **Bandcamp Email Scraper** can refresh your bandcamp scrape emails dataset automatically on a regular cadence.

#### Can I access this via API?

Yes. You can access results programmatically using the **Apify API**. See [apify.com/docs/api](https://apify.com/docs/api) for integration details.

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

If an error occurs for a specific part of the run, the actor is designed to use resilient behavior (including retries/fallbacks) rather than silently stopping. Results that were already extracted remain available in your dataset.

***

### Need Help or Have a Request?

Got a question about **Bandcamp Email Scraper** or want a new feature added? Reach out at <dataforleads@gmail.com>. We’re happy to help, and we actively maintain the actor based on community feedback—tell us what outcomes you want (for example, batch CSV upload or webhook on completion).

# Actor input Schema

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

A list of keywords to search for.

## `location` (type: `string`):

Location to filter search results.

## `platform` (type: `string`):

Select platform.

## `customDomains` (type: `array`):

List of custom email domains

## `maxEmails` (type: `integer`):

Maximum number of emails to collect. The scraper will stop once this limit is reached. Setting a higher limit allows for more potential results but doesn't guarantee reaching that number. This helps save costs by controlling scraping time.

## `engine` (type: `string`):

Choose scraping engine. 🚀 Cost Effective (New): Uses residential proxies with async requests for faster, cheaper scraping. 🔧 Legacy: Uses GOOGLE\_SERP proxy with traditional selectors - more reliable but slower and more expensive.

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

Configure proxies for this Actor.

## Actor input object example

```json
{
  "keywords": [
    "indie rock"
  ],
  "location": "",
  "platform": "Bandcamp",
  "customDomains": [
    "@gmail.com"
  ],
  "maxEmails": 20,
  "engine": "legacy"
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keywords": [
        "indie rock"
    ],
    "location": "",
    "customDomains": [
        "@gmail.com"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("scraperoka/bandcamp-email-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "keywords": ["indie rock"],
    "location": "",
    "customDomains": ["@gmail.com"],
}

# Run the Actor and wait for it to finish
run = client.actor("scraperoka/bandcamp-email-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keywords": [
    "indie rock"
  ],
  "location": "",
  "customDomains": [
    "@gmail.com"
  ]
}' |
apify call scraperoka/bandcamp-email-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Bandcamp Email Scraper",
        "description": "📧 Bandcamp Email Scraper extracts artist & venue emails from Bandcamp pages for targeted outreach. ✅ Save time, improve lead lists, and boost campaign results. 🚀 Perfect for marketing, sales, PR & research.",
        "version": "0.0",
        "x-build-id": "WnOCLTD4Gv7TbEb1h"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scraperoka~bandcamp-email-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scraperoka-bandcamp-email-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~bandcamp-email-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scraperoka-bandcamp-email-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~bandcamp-email-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scraperoka-bandcamp-email-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": [
                    "keywords"
                ],
                "properties": {
                    "keywords": {
                        "title": "Keywords",
                        "type": "array",
                        "description": "A list of keywords to search for.",
                        "default": [
                            "indie rock"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "Location to filter search results.",
                        "default": ""
                    },
                    "platform": {
                        "title": "Platform",
                        "enum": [
                            "Bandcamp"
                        ],
                        "type": "string",
                        "description": "Select platform.",
                        "default": "Bandcamp"
                    },
                    "customDomains": {
                        "title": "Custom Email Domains",
                        "type": "array",
                        "description": "List of custom email domains",
                        "default": [
                            "@gmail.com"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxEmails": {
                        "title": "Max Emails",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Maximum number of emails to collect. The scraper will stop once this limit is reached. Setting a higher limit allows for more potential results but doesn't guarantee reaching that number. This helps save costs by controlling scraping time.",
                        "default": 20
                    },
                    "engine": {
                        "title": "Engine",
                        "enum": [
                            "cost-effective",
                            "legacy"
                        ],
                        "type": "string",
                        "description": "Choose scraping engine. 🚀 Cost Effective (New): Uses residential proxies with async requests for faster, cheaper scraping. 🔧 Legacy: Uses GOOGLE_SERP proxy with traditional selectors - more reliable but slower and more expensive.",
                        "default": "legacy"
                    },
                    "proxyConfiguration": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Configure proxies for this Actor."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
