# Yelp Email Scraper (`scraperoka/yelp-email-scraper`) Actor

📧 Yelp Email Scraper pulls business email contacts from Yelp listings quickly and accurately. Perfect for lead gen, B2B outreach, and market research. Save time, reach prospects faster, and streamline your sales pipeline! 🚀

- **URL**: https://apify.com/scraperoka/yelp-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 $0.01 / 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

### Yelp Email Scraper 🚀

Manually visiting hundreds of Yelp profiles to collect emails wastes hours you don’t have. **Yelp Email Scraper** automates email extraction from Yelp profile content using your keywords and email-domain filters, turning lead research into a ready-to-use list. This Yelp email scraper (scrape yelp emails, extract emails from yelp) is ideal for marketers, recruiters, and growth teams that need thousands of contact opportunities in minutes.

---

### What You Get: Sample Output

Here’s a sample record from a single run:

```json
{
  "network": "Yelp.com",
  "keyword": "founder",
  "title": "Founders & Marketing — Small Business Services",
  "description": "Great team. Email us at hello@gmail.com for partnerships and marketing.",
  "url": "https://www.yelp.com/biz/example-business",
  "email": "hello@gmail.com",
  "proxyGroups": [
    "legacy"
  ]
}
````

**Output Fields**

| Field | Type | What It Tells You |
|---|---|---|
| `network` | string | Confirms the source network for your dataset (always `Yelp.com`). |
| `keyword` | string | The keyword that was used when this email was found, so you can track lead relevance. |
| `title` | string | The page/title context where the email was discovered (useful for categorizing leads). |
| `description` | string | The extracted text snippet around the email, helping you validate context for outreach. |
| `url` | string | The originating URL for the record so your team can verify and archive sources. |
| `email` | string | The contact email address extracted from publicly available content. |
| `proxyGroups` | array | Indicates which proxy configuration group(s) were used for the record. |
| `error_message` | string | If an error happens during the run, this actor may return an error message (see FAQ for error behavior). |

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

***

### Why Yelp Email Scraper?

There are a lot of ways to pull data from Yelp — here’s what sets **Yelp Email Scraper** apart.

#### Keyword-first targeting that maps to outreach intent

You provide a list of `keywords`, and the actor extracts emails from Yelp profile bios and posts related to those keywords. This makes scrape yelp emails workflows much more useful than generic email harvesting, especially for yelp leads email scraper use cases.

#### Domain filtering to reduce noisy addresses

Use `customDomains` (for example, `@gmail.com`) so your yelp business email finder focuses on the email domains that matter to your outreach strategy. It’s a practical way to improve list quality when running yelp email list builds at scale.

#### Built-in resilience for large searches

When results are sparse or scraping encounters issues, the actor uses built-in retries and fallback handling for resilience. That means yelp contact email scraper runs are more likely to complete and produce usable output, even when some pages behave differently.

#### Clear, structured output for easy downstream use

Each extracted email is pushed with consistent fields like `network`, `keyword`, `title`, `description`, `url`, and `email`. That structure makes it straightforward to feed your yelp email harvesting software pipeline into spreadsheets, CRMs, or analyst workflows.

***

### Configuring Your Run

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

```json
{
  "keywords": ["founder", "marketing"],
  "location": "San Francisco, CA",
  "platform": "Yelp",
  "customDomains": ["@gmail.com", "@company.com"],
  "maxEmails": 50,
  "engine": "legacy",
  "proxyConfiguration": {}
}
```

| Parameter | Required | What It Does |
|---|---:|---|
| `keywords` | ✅ | A list of keywords to search for. The scraper looks for emails in Yelp bios and posts related to these terms. |
| `location` | ⬜ | Location to filter search results. Leave empty to search more broadly. |
| `platform` | ⬜ | Select platform. Use `Yelp` (this actor is configured for Yelp). |
| `customDomains` | ⬜ | List of custom email domains to target (for example, `@gmail.com`). Helpful for focusing your yelp business contact emails output. |
| `maxEmails` | ⬜ | Maximum number of emails to collect. The scraper stops once this limit is reached; higher limits may take longer and don’t guarantee finding that many. |
| `engine` | ⬜ | Choose scraping engine. `cost-effective` uses residential proxies with async requests, while `legacy` uses a more traditional approach that is described as more reliable but slower and more expensive. |
| `proxyConfiguration` | ⬜ | Configure proxies for this Actor (Apify proxy settings). |

***

### Core Capabilities

#### Extract emails from Yelp bios and posts

Yelp Email Scraper finds emails from Yelp bios and posts related to your `keywords`. This makes it effective for automated yelp email extraction when you need real contact addresses tied to the right context.

#### Flexible keyword and domain targeting

Use multiple `keywords` to cover different lead angles (for example, “founder” and “marketing”). Pair them with `customDomains` to keep your yelp business email finder results aligned with the domains you want to contact.

#### Pagination with stop conditions for cost control

You can cap output with `maxEmails`, and the actor will stop once it reaches your requested limit. This helps keep scraping time (and cost) predictable while still enabling you to scrape yelp for contact information at scale.

#### Resilient scraping behavior

The actor includes logic to handle cases where results are sparse or requests fail, including retries and fallbacks for resilience. That improves the odds that your yelp data scraping email job completes with usable results.

#### Structured dataset records written as results are found

As emails are found, records are pushed with consistent fields including `network`, `keyword`, `title`, `description`, `url`, and `email`. This gives you clean integration-ready output for yelp email list building and analysis.

***

### Who Gets the Most Out of This

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

**Sales and business development teams** — Use this Yelp email scraper to quickly build a focused outreach list by keyword and email-domain. The result is more time spent writing outreach and less time manually researching Yelp leads.

**Growth and marketing teams** — When campaigns need local business contacts, scrape yelp emails using targeted keywords and custom domains (like `@gmail.com`) to find relevant yelp business contact emails. You can then route the dataset into your CRM for faster follow-ups.

**Recruiters and talent sourcing** — The actor helps you find contact emails tied to publicly available bios and posts, making it easier to identify founders or marketing-focused leaders on Yelp. You get structured records with context (`title`, `description`, and `url`) for faster validation.

**Freelance researchers and data analysts** — Use yelp contact email scraper output to assemble datasets for research projects, lead scoring experiments, or dataset auditing. Each record includes enough context to support review and quality checks.

**Developers and automation specialists** — For workflows that require automated yelp email harvesting software runs, you can trigger the actor via the Apify API and store results in your own pipeline. The consistent JSON field structure supports repeatable processing without manual cleanup.

***

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

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

1. **Open the actor on Apify**\
   Go to [console.apify.com](https://console.apify.com) and open *Yelp Email Scraper*.

2. **Enter your inputs**\
   Add your `keywords` (required). Optionally set `location`, `customDomains`, and `maxEmails` to control targeting and volume.

3. **Configure proxy settings**\
   If you use Apify Proxy or custom proxy settings, set them in `proxyConfiguration` and pick the `engine` you want (`cost-effective` or `legacy`).

4. **Hit Run and watch the live log**\
   Monitor the run progress in Apify to see how the actor is collecting emails and handling any retries.

5. **View results in the dataset tab**\
   Each extracted email is stored as a structured JSON record in your dataset as the run progresses.

6. **Export as JSON, CSV, or Excel**\
   Download the dataset in the format your team needs, or pass it into your workflow via API.

The whole process takes under 5 minutes to set up.

***

### Integrations & Export Options

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

You can export results directly from the Apify dataset tab in formats like **JSON, CSV, and Excel**, which makes it easy to build a yelp email list for outreach or analysis. If you want to push data into tools like spreadsheets, use Apify’s native capabilities or no-code automation.

You can also use **API access** to pull results programmatically via the Apify API (see [apify.com/docs/api](https://apify.com/docs/api)). For event-driven workflows, you can trigger downstream actions using **webhooks**, and you can automate exports and updates with **Zapier / Make** and scheduled runs (cron-style scheduling) in Apify.

***

### Pricing & Free Trial

Yelp Email Scraper runs on the Apify platform, which offers a **free tier** — no credit card required to get started.

You’ll typically use a mix of free credits for testing and then pay as you go using Apify’s usage model. For exact cost details and plan options, check Apify’s pricing page on the platform (this actor does not set its own per-row pricing).

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

***

### Reliability & Performance

| What We Handle | How |
|---|---|
| Sparse results and request issues | Uses retry and fallback behavior to improve completion chances. |
| Proxy-based reliability | Supports proxy configuration for more stable runs. |
| Output volume control | You can stop at `maxEmails` to cap how many emails are collected. |
| Data freshness | Results are collected live during the run and written to the dataset as they are found. |
| Error handling | Errors are logged and can affect how many results are collected in a given run. |

**Limitations:** This actor works with **publicly available data** from Yelp bios and posts that relate to your keywords. It can’t access login-gated or private content. Results depend on what contact details are published and on the email domains you filter for.

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 Yelp Email Scraper before committing to paid usage. You can run smaller keyword + domain experiments to gauge how many yelp business contact emails you’ll get.

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

No. Yelp Email Scraper is designed to extract emails from publicly available Yelp profile content. You don’t need a Yelp account or cookies to use the actor.

#### How accurate is the data?

The actor extracts emails that appear in Yelp bios and posts related to your `keywords`, and it applies your `customDomains` filter. Accuracy depends on how consistently businesses publish contact emails in public content.

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

You control volume with `maxEmails`, which is the maximum number of emails to collect before the run stops. Larger `maxEmails` values may take longer and don’t guarantee you’ll reach the exact number.

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

Data freshness depends on when you run the actor, since results are captured during the run. For lead generation workflows, it’s usually best to run on the schedule you need for your pipeline.

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

The actor only targets **publicly available data** from Yelp profile content. You’re responsible for following applicable laws and platform terms, including GDPR/CCPA and any email outreach regulations.

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

Yes. You can export your dataset from the Apify dashboard in common formats like JSON, CSV, or Excel. You can also connect the results to your broader workflow using Apify integrations or no-code tools.

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

Yes. Apify supports scheduled runs so you can automate Yelp Email Scraper on a recurring basis. This is useful for continuously building or refreshing a yelp email list.

#### Can I access this via API?

Yes. You can trigger runs and retrieve results programmatically using the Apify API. This is ideal for pipelines that need automated yelp email harvesting software jobs.

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

If errors occur, they are logged and the run may return fewer results than expected. Built-in retries and fallback logic help resilience, but your final output depends on how scraping behaves during the run.

***

### Need Help or Have a Request?

Got a question about Yelp Email Scraper or want a new feature added? Reach out at <dataforleads@gmail.com>. We’re happy to help with troubleshooting and to hear ideas like batch CSV upload or a webhook when a run completes.

***

### Disclaimer & Responsible Use

*Yelp Email Scraper is the fastest, most reliable way to collect emails from Yelp profile content at scale — start your free run today.*

This actor collects **publicly available data** from Yelp bios and posts and 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 laws when using or storing the extracted data. For data removal requests, contact <dataforleads@gmail.com>. Use responsibly, ethically, and only for lawful purposes.

# 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": [
    "founder",
    "marketing"
  ],
  "location": "",
  "platform": "Yelp",
  "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": [
        "founder",
        "marketing"
    ],
    "location": "",
    "customDomains": [
        "@gmail.com"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("scraperoka/yelp-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": [
        "founder",
        "marketing",
    ],
    "location": "",
    "customDomains": ["@gmail.com"],
}

# Run the Actor and wait for it to finish
run = client.actor("scraperoka/yelp-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": [
    "founder",
    "marketing"
  ],
  "location": "",
  "customDomains": [
    "@gmail.com"
  ]
}' |
apify call scraperoka/yelp-email-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Yelp Email Scraper",
        "description": "📧 Yelp Email Scraper pulls business email contacts from Yelp listings quickly and accurately. Perfect for lead gen, B2B outreach, and market research. Save time, reach prospects faster, and streamline your sales pipeline! 🚀",
        "version": "0.0",
        "x-build-id": "DviSJBOqXXhMntAHz"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scraperoka~yelp-email-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scraperoka-yelp-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~yelp-email-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scraperoka-yelp-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~yelp-email-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scraperoka-yelp-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": [
                            "founder",
                            "marketing"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "Location to filter search results.",
                        "default": ""
                    },
                    "platform": {
                        "title": "Platform",
                        "enum": [
                            "Yelp"
                        ],
                        "type": "string",
                        "description": "Select platform.",
                        "default": "Yelp"
                    },
                    "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
