# Google Maps Email Scraper - Leads, Phones & AI Openers (`flash_scraper/google-maps-leads-opener`) Actor

Google Maps email scraper for lead generation: scrape businesses by keyword + location to extract emails, phones, websites & ratings, then auto-write AI cold-email openers. Export to CSV, JSON, or Excel.

- **URL**: https://apify.com/flash\_scraper/google-maps-leads-opener.md
- **Developed by:** [Flash Scrape](https://apify.com/flash_scraper) (community)
- **Categories:** Lead generation, Travel, AI
- **Stats:** 3 total users, 1 monthly users, 75.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.000035 / actor start

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## Google Maps Email Scraper - Leads, Phones & AI Openers

**Google Maps email scraper for lead generation** that turns any Google Maps search into a ready-to-use lead list — complete with verified emails, phone numbers, websites, and ratings. Search businesses by keyword and location, automatically find the email behind each listing, keep only the leads worth contacting, and (optionally) generate a personalized AI cold-email opener for every lead. Export to CSV, JSON, or Excel in one run.

Built for **cold-email and lead-gen agencies, sales teams, and local-business marketers** who want clean, contactable B2B data — not just a raw Google Maps scrape.

---

### How to scrape Google Maps for leads

Most Google Maps scrapers stop at the listing. This Google Maps email scraper delivers a **finished lead list** instead:

1. Enter one or more search terms with a location — e.g. `dentists in Austin`, `roofers in Miami`.
2. The scraper pulls matching businesses from Google Maps (name, category, phone, website, rating, reviews, address).
3. It visits each business's website (home / contact / about pages) to find the real email and social links — far higher email fill-rate than scraping the Maps profile alone.
4. It dedupes, applies your quality filters, and scores every lead 0–100 so the most contactable prospects sort to the top.
5. *(Optional)* It writes a personalized one-line cold-email opener per lead using your own AI key.
6. You get a clean dataset you can export to CSV, JSON, or Excel, or pull via API.

No coding, no Google Maps API key, and no proxies to configure — just type a search and run.

---

### What data you get

Every run returns one row per business, best-scored leads first:

- **How do I get business emails from Google Maps?** Each lead's website is crawled for the best contact email plus any extra emails found on the page.
- **Can I get phone numbers and websites?** Yes — phone, website, full address, and city come straight from the Google Maps listing.
- **What about ratings and review counts?** Star rating and total reviews are included so you can target established businesses.
- **Do you find social profiles?** LinkedIn, Facebook, and Instagram links are extracted from each business website when present.
- **Is there a quality signal per lead?** Every lead gets a 0–100 lead score based on contactability and popularity, and rows are sorted highest-first.
- **Can it write cold-email openers?** Turn on AI openers to get a personalized one-sentence icebreaker per lead, written with your own OpenAI/Anthropic key.

---

### Filters and options

Trim the scrape down to only the leads worth contacting — so you stop paying for junk data:

- **Filter Google Maps leads by star rating** — keep only businesses at or above a minimum rating.
- **Filter by review count** — keep only businesses with at least N reviews (more established prospects).
- **Only businesses with a website** — drop listings you can't enrich an email from.
- **Only businesses with an email** — best for cold-email campaigns; every delivered row is contactable.
- **Set how many leads per search term** — 1–100 businesses per keyword.
- **Auto-dedupe** — duplicate listings (same place, domain, or email) collapse to a single row.

#### Input

```json
{
  "searchTerms": ["dentists in Austin", "med spas in Los Angeles"],
  "maxLeadsPerSearch": 50,
  "minRating": 4,
  "minReviews": 25,
  "onlyWithWebsite": true,
  "onlyWithEmail": true,
  "enrichEmails": true,
  "writeOpeners": false
}
````

| Field | What it does |
|---|---|
| **searchTerms** | One Google Maps search per line, including the location — e.g. `dentists in Austin`. Required. |
| **maxLeadsPerSearch** | How many businesses to pull per search term, 1–100 (default 20). |
| **minRating** | Keep only leads at or above this star rating (0 = no filter). |
| **minReviews** | Keep only leads with at least this many reviews (0 = no filter). |
| **onlyWithWebsite** | Drop leads that have no website. |
| **onlyWithEmail** | Drop leads where no email was found (best for cold email). |
| **enrichEmails** | Visit each site to find emails + social links (default on, no key needed). |
| **writeOpeners** | Add an AI cold-email opener per lead — needs your OpenAI/Anthropic key. |
| **llmProvider / llmApiKey / llmModel** | Your own AI key — used only to write openers, never stored. |

***

### What data you get (JSON output sample)

Results render as a clean, sortable table on the Output tab and export to CSV, JSON, or Excel. One row per business:

```json
{
  "lead_score": 98,
  "name": "Bright Smile Dental",
  "category": "Dentist",
  "city": "Austin",
  "phone": "+1 512-555-0199",
  "email": "hello@brightsmiledental.com",
  "email_status": "found",
  "extra_emails": ["office@brightsmiledental.com"],
  "website": "https://brightsmiledental.com",
  "address": "123 Congress Ave, Austin, TX 78701",
  "rating": 4.8,
  "reviews": 212,
  "linkedin": "https://linkedin.com/company/bright-smile-dental",
  "facebook": "https://facebook.com/brightsmiledental",
  "instagram": "https://instagram.com/brightsmiledental",
  "icebreaker": "Loved that you've held a 4.8 across 200+ reviews in Austin…",
  "maps_url": "https://www.google.com/maps/..."
}
```

| Field | Notes |
|---|---|
| `lead_score` | 0–100; rows are sorted highest-first. |
| `name`, `category`, `phone`, `website`, `address`, `city` | Core business fields from the Maps listing. |
| `email` / `email_status` | Best email found, plus `found` / `missing`. |
| `extra_emails` | Other emails discovered on the site (if any). |
| `rating`, `reviews` | Star rating and total review count. |
| `linkedin` / `facebook` / `instagram` | Social profiles found on the business website. |
| `icebreaker` | Personalized cold-email opener (only when AI openers are on). |
| `maps_url` | Direct link back to the Google Maps listing. |

***

### Use cases

- Build a cold-email list of **dentists in Austin**, **roofers in Miami**, or **med spas in LA** in minutes.
- Feed verified leads straight into Instantly, Smartlead, Lemlist, or your CRM.
- Agencies: spin up campaign-ready lead lists per client niche + city.
- Local SaaS and service businesses: find prospects that match your ideal customer profile.

***

### Use with AI agents and automation

This Google Maps email scraper plugs into any automation stack. Trigger it from an **MCP** server so AI agents can pull fresh leads on demand, schedule runs and pipe results through **Make** or **n8n**, fan out new rows to your CRM and email tools with **Zapier**, or push the finished lead list directly into **Google Sheets** for your team. Because every run produces clean, structured JSON, it drops into agentic workflows and no-code pipelines without any glue code.

***

### Pricing

**Pay-per-result — you're charged only for the leads delivered *after* filtering.** Turn on `onlyWithEmail` and you never pay for a lead you can't contact. Email enrichment is included with no extra API key; AI openers run on your own OpenAI/Anthropic key, so that cost never touches this actor.

***

### FAQ

**Is it legal to scrape Google Maps?** This scraper collects **public** business data only. Use it for legitimate B2B outreach and follow Google's terms plus applicable anti-spam laws (CAN-SPAM, GDPR) in how you contact leads.

**Do I need an API key?** No. Google Maps scraping and email enrichment work with no key at all. A key is only needed if you switch on AI cold-email openers — and it's *your* OpenAI/Anthropic key, used once per run and never stored.

**Where do the emails come from?** From public business websites (home / contact / about pages). Many small businesses don't publish an email anywhere, so use `onlyWithEmail` to keep just the leads that are actually contactable.

**How many results can I get?** Set `maxLeadsPerSearch` from 1 to 100 per search term, and pass as many search terms as you like in one run — so you can pull thousands of leads across niches and cities.

**Can I export to CSV or Google Sheets?** Yes — export to CSV, JSON, or Excel from the Output / Storage tab or via the API, and push rows into Google Sheets through Make, n8n, or Zapier.

**How accurate is the lead score?** It's a 0–100 signal combining contactability (has email, has website) and popularity (rating, reviews), used to sort the best prospects to the top — not a guarantee, but a fast way to prioritize outreach.

***

### Other Flash Scrape scrapers

Looking for leads on other platforms? Check out the rest of the Flash Scrape suite:

- [Yelp Leads Scraper](https://apify.com/flash_scraper/yelp-leads-scraper) — Yelp business leads
- [BBB + Yellow Pages Leads Scraper](https://apify.com/flash_scraper/bbb-yellowpages-leads-scraper) — BBB and Yellow Pages leads
- [Instagram Leads Scraper](https://apify.com/flash_scraper/instagram-leads-scraper) — Instagram profile leads
- [TikTok Leads Scraper](https://apify.com/flash_scraper/tiktok-leads-scraper) — TikTok creator leads
- [YouTube Leads Scraper](https://apify.com/flash_scraper/youtube-leads-scraper) — YouTube creator leads
- [Smart Scraper by Example](https://apify.com/flash_scraper/smart-scraper-by-example) — no-code web scraper

# Actor input Schema

## `searchTerms` (type: `array`):

What to search on Google Maps — include the location, e.g. 'dentists in Austin', 'roofers in Miami'. One search per line.

## `maxLeadsPerSearch` (type: `integer`):

How many businesses to pull per search term (1–100).

## `minRating` (type: `integer`):

Only keep businesses rated at or above this (0 = no filter). e.g. set 4 to skip poorly-reviewed places.

## `minReviews` (type: `integer`):

Only keep businesses with at least this many reviews (0 = no filter). Higher = more established businesses.

## `onlyWithWebsite` (type: `boolean`):

Drop leads that have no website (you can't enrich an email without one).

## `onlyWithEmail` (type: `boolean`):

Drop leads where no email could be found. Best for cold-email campaigns. Requires 'Find emails' below to be on.

## `enrichEmails` (type: `boolean`):

Visit each lead's website (home + /contact + /about) to extract emails and social links. Much higher email fill-rate. No key needed.

## `writeOpeners` (type: `boolean`):

Generate a personalized one-sentence outreach opener for each lead. Requires your OpenAI/Anthropic key below.

## `llmProvider` (type: `string`):

AI provider used to write the cold openers — OpenAI (GPT) or Anthropic (Claude). Use the provider that matches the LLM API key you supply.

## `llmApiKey` (type: `string`):

Your own OpenAI or Anthropic API key. Used only to write the openers; never stored.

## `llmModel` (type: `string`):

Override the default model (gpt-4o-mini for OpenAI, claude-haiku-4-5-20251001 for Anthropic).

## `minScore` (type: `integer`):

Keep only leads scoring at or above this value, 0-100 (0 = no filter). Pay only for your best A/B leads.

## Actor input object example

```json
{
  "searchTerms": [
    "med spas in Los Angeles"
  ],
  "maxLeadsPerSearch": 20,
  "minRating": 0,
  "minReviews": 0,
  "onlyWithWebsite": false,
  "onlyWithEmail": false,
  "enrichEmails": true,
  "writeOpeners": false,
  "llmProvider": "openai",
  "minScore": 0
}
```

# Actor output Schema

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

No description

# 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 = {
    "searchTerms": [
        "dentists in Austin"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("flash_scraper/google-maps-leads-opener").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 = { "searchTerms": ["dentists in Austin"] }

# Run the Actor and wait for it to finish
run = client.actor("flash_scraper/google-maps-leads-opener").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 '{
  "searchTerms": [
    "dentists in Austin"
  ]
}' |
apify call flash_scraper/google-maps-leads-opener --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=flash_scraper/google-maps-leads-opener",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Google Maps Email Scraper - Leads, Phones & AI Openers",
        "description": "Google Maps email scraper for lead generation: scrape businesses by keyword + location to extract emails, phones, websites & ratings, then auto-write AI cold-email openers. Export to CSV, JSON, or Excel.",
        "version": "0.1",
        "x-build-id": "KEWSpHPGrnd9hEPhI"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/flash_scraper~google-maps-leads-opener/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-flash_scraper-google-maps-leads-opener",
                "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/flash_scraper~google-maps-leads-opener/runs": {
            "post": {
                "operationId": "runs-sync-flash_scraper-google-maps-leads-opener",
                "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/flash_scraper~google-maps-leads-opener/run-sync": {
            "post": {
                "operationId": "run-sync-flash_scraper-google-maps-leads-opener",
                "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": [
                    "searchTerms"
                ],
                "properties": {
                    "searchTerms": {
                        "title": "Search terms",
                        "type": "array",
                        "description": "What to search on Google Maps — include the location, e.g. 'dentists in Austin', 'roofers in Miami'. One search per line.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxLeadsPerSearch": {
                        "title": "Max leads per search term",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": "How many businesses to pull per search term (1–100).",
                        "default": 20
                    },
                    "minRating": {
                        "title": "Minimum star rating",
                        "minimum": 0,
                        "maximum": 5,
                        "type": "integer",
                        "description": "Only keep businesses rated at or above this (0 = no filter). e.g. set 4 to skip poorly-reviewed places.",
                        "default": 0
                    },
                    "minReviews": {
                        "title": "Minimum number of reviews",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only keep businesses with at least this many reviews (0 = no filter). Higher = more established businesses.",
                        "default": 0
                    },
                    "onlyWithWebsite": {
                        "title": "Only businesses with a website",
                        "type": "boolean",
                        "description": "Drop leads that have no website (you can't enrich an email without one).",
                        "default": false
                    },
                    "onlyWithEmail": {
                        "title": "Only businesses with an email",
                        "type": "boolean",
                        "description": "Drop leads where no email could be found. Best for cold-email campaigns. Requires 'Find emails' below to be on.",
                        "default": false
                    },
                    "enrichEmails": {
                        "title": "Find emails on each business's website",
                        "type": "boolean",
                        "description": "Visit each lead's website (home + /contact + /about) to extract emails and social links. Much higher email fill-rate. No key needed.",
                        "default": true
                    },
                    "writeOpeners": {
                        "title": "Write an AI cold-opener per lead",
                        "type": "boolean",
                        "description": "Generate a personalized one-sentence outreach opener for each lead. Requires your OpenAI/Anthropic key below.",
                        "default": false
                    },
                    "llmProvider": {
                        "title": "AI provider (for openers)",
                        "enum": [
                            "openai",
                            "anthropic"
                        ],
                        "type": "string",
                        "description": "AI provider used to write the cold openers — OpenAI (GPT) or Anthropic (Claude). Use the provider that matches the LLM API key you supply.",
                        "default": "openai"
                    },
                    "llmApiKey": {
                        "title": "AI API key (for openers)",
                        "type": "string",
                        "description": "Your own OpenAI or Anthropic API key. Used only to write the openers; never stored."
                    },
                    "llmModel": {
                        "title": "AI model (optional)",
                        "type": "string",
                        "description": "Override the default model (gpt-4o-mini for OpenAI, claude-haiku-4-5-20251001 for Anthropic)."
                    },
                    "minScore": {
                        "title": "Minimum lead score",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "integer",
                        "description": "Keep only leads scoring at or above this value, 0-100 (0 = no filter). Pay only for your best A/B leads.",
                        "default": 0
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
