# Google Maps Lead & Contact Scraper (`scrapecraft/google-company-contact-scraper`) Actor

Extract B2B leads directly from Google Maps. Automatically scrape company names, addresses, phone numbers, websites, to supercharge your sales pipeline.

- **URL**: https://apify.com/scrapecraft/google-company-contact-scraper.md
- **Developed by:** [ScrapeCraft](https://apify.com/scrapecraft) (community)
- **Categories:** Lead generation, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 80.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.03 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## Company Contact Scraper - Apify Actor

Scrapes one company/place profile from Google Maps and outputs one dataset item with contact details, address data, ratings, review star distribution, photos, web results, and Google Maps identifiers.

### What It Extracts

- Company/place name
- Category and category list
- Website and phone number
- Full address plus parsed street, city, state, postal code, and country
- Latitude/longitude
- Google Maps URL, CID, feature ID, KG/MID, and optional Place ID
- Rating, review count, and star distribution histogram
- Opening hours
- Photos and image URLs
- Web results shown in the Google Maps panel
- About/attribute data when available

The actor does not return individual review text. It returns only the aggregate star distribution.

### How It Works

1. Resolves the target company using a strategy: `url`, `cid`, `placeId`, or `search`.
2. For search runs, optionally verifies the matched result by website domain.
3. Opens the Google Maps profile in Puppeteer.
4. Uses Google Maps `preview/place` data when available.
5. Enriches missing contact, rating, review distribution, photos, web results, and about fields from the live Maps page when `apiOnly` is `false`.
6. Pushes one item to the default Apify dataset.
7. Writes `OUTPUT_METADATA` to the default key-value store.

### Input

At least one of `url`, `cid`, `placeId`, or `searchQuery` is required.

If `strategy` is `auto` and multiple target fields are provided, the priority is:

1. `url`
2. `cid`
3. `placeId`
4. `searchQuery`

| Field | Type | Required | Default | Description |
|---|---|---:|---|---|
| `strategy` | string | No | `auto` | Target resolution method. Allowed values: `auto`, `url`, `cid`, `placeId`, `search`. |
| `url` | string | Conditional | `null` | Full Google Maps place URL. |
| `cid` | string | Conditional | `null` | Google Maps CID. Accepts decimal CID, Maps URL with `cid`/`ludocid`, `cid:123`, `ludocid=123`, or a URL with a hex CID pair. Keep large CIDs as strings. |
| `placeId` | string | Conditional | `null` | Google Place ID. |
| `searchQuery` | string | Conditional | `null` | Company name to search on Google Maps. |
| `website` | string | No | `null` | Company website used to verify the correct search result. Strongly recommended with `searchQuery`. |
| `proxyConfig` | object | No | Apify residential proxy | Apify proxy configuration. Residential proxies are recommended for cloud runs. |
| `blockAssets` | boolean | No | `true` | Blocks image/font/media requests during the main scrape to reduce bandwidth. |
| `apiOnly` | boolean | No | `false` | Uses only the Maps preview API and disables DOM fallback/enrichment. Leave `false` for best completeness. |
| `language` | string | No | `en` | Google Maps UI language code, for example `en`, `es`, `fr`, `de`. |
| `headless` | boolean | No | `true` | Puppeteer headless mode. Keep `true` on Apify Cloud. |

### Input Examples

#### Search by Company Name and Website

```json
{
  "strategy": "search",
  "searchQuery": "VAS Global | Virtual Assistant Services for Businesses",
  "website": "https://virtualassistantsolutions.com/",
  "language": "en",
  "blockAssets": true,
  "apiOnly": false,
  "proxyConfig": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"]
  }
}
````

#### Direct Google Maps URL

```json
{
  "strategy": "url",
  "url": "https://www.google.com/maps/place/Eiffel+Tower/@48.8583701,2.2922926,17z",
  "language": "en",
  "proxyConfig": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"]
  }
}
```

#### Google Maps CID

```json
{
  "strategy": "cid",
  "cid": "15430805186958748717",
  "language": "en"
}
```

#### Google Place ID

```json
{
  "strategy": "placeId",
  "placeId": "ChIJZQi5xUUPyokRKnfZHK7gBnc",
  "language": "en"
}
```

### Output

The actor writes one object to the default dataset. Some fields can be `null` or empty arrays if Google Maps does not expose the data.

#### Main Output Fields

| Field | Type | Description |
|---|---|---|
| `searchString` | string or null | Original search/target value used for the run. |
| `title` | string or null | Company/place name. |
| `description` | string or null | Business description when available. |
| `categoryName` | string or null | Primary Google Maps category. |
| `categories` | array | Category list. |
| `address` | string or null | Full address. |
| `street` | string or null | Parsed street address. |
| `city` | string or null | Parsed city. |
| `postalCode` | string or null | Parsed postal/ZIP code. |
| `state` | string or null | Parsed state/province/region. |
| `countryCode` | string or null | Parsed country/country label. |
| `website` | string or null | Company website URL. |
| `phone` | string or null | Phone number as displayed by Google Maps. |
| `phoneUnformatted` | string or null | Normalized phone number when possible. |
| `totalScore` | number or null | Average rating. |
| `reviewsCount` | number or null | Total reviews count. |
| `reviewsDistribution` | object | Review histogram by star rating. |
| `openingHours` | array | Opening hours by day. |
| `location` | object or null | Latitude and longitude. |
| `url` | string or null | Final Google Maps URL. |
| `placeId` | string or null | Google Place ID when provided. |
| `cid` | string or null | Google Maps CID. |
| `fid` | string or null | Google Maps feature ID. |
| `kgmid` | string or null | Google Knowledge Graph / Maps ID when available. |
| `plusCode` | string or null | Google Plus Code when available. |
| `imageUrl` | string or null | Primary image URL. |
| `imageUrls` | array | Collected image URLs. |
| `imagesCount` | number | Number of collected image URLs. |
| `images` | array | Image objects with `imageUrl`, `authorName`, `authorUrl`, and `uploadedAt`. |
| `videoUrls` | array | Collected video URLs when available. |
| `webResults` | array | Related web results shown in Google Maps. |
| `additionalInfo` | object | About/attribute sections such as accessibility, amenities, planning, and payments. |
| `placesTags` | array | Flattened tags/attributes from Google Maps. |
| `permanentlyClosed` | boolean | Whether Google Maps marks the place permanently closed. |
| `temporarilyClosed` | boolean | Whether Google Maps marks the place temporarily closed. |
| `scrapedAt` | string | ISO timestamp when the item was scraped. |

#### Example Output

```json
{
  "searchString": "VAS Global | Virtual Assistant Services for Businesses",
  "title": "VAS Global | Virtual Assistant Services for Businesses",
  "description": null,
  "categoryName": "Business management consultant",
  "address": "123 Example Street, Miami, FL 33101, United States",
  "street": "123 Example Street",
  "city": "Miami",
  "postalCode": "33101",
  "state": "Florida",
  "countryCode": "United States",
  "website": "https://virtualassistantsolutions.com/",
  "phone": "+1 850-861-6367",
  "phoneUnformatted": "+18508616367",
  "totalScore": 2.4,
  "reviewsCount": 21,
  "reviewsDistribution": {
    "oneStar": 6,
    "twoStar": 7,
    "threeStar": 4,
    "fourStar": 1,
    "fiveStar": 3
  },
  "openingHours": [
    {
      "day": "Monday",
      "hours": "9 AM-5 PM"
    }
  ],
  "location": {
    "lat": 25.6554871,
    "lng": -80.4031784
  },
  "url": "https://www.google.com/maps/place/...",
  "placeId": null,
  "cid": "10346650057377339081",
  "fid": "0x88d9c189a9fea2df:0x8f919ce21903b6c9",
  "kgmid": "/g/11wbwhnbf9",
  "imageUrl": "https://lh5.googleusercontent.com/...",
  "imageUrls": [
    "https://lh5.googleusercontent.com/..."
  ],
  "imagesCount": 1,
  "images": [
    {
      "imageUrl": "https://lh5.googleusercontent.com/...",
      "authorName": null,
      "authorUrl": null,
      "uploadedAt": null
    }
  ],
  "videoUrls": [],
  "webResults": [
    {
      "title": "VAS Global",
      "url": "https://virtualassistantsolutions.com/",
      "displayedUrl": "virtualassistantsolutions.com",
      "description": "Related website result text when available"
    }
  ],
  "additionalInfo": {},
  "placesTags": [],
  "permanentlyClosed": false,
  "temporarilyClosed": false,
  "scrapedAt": "2026-05-25T08:40:00.000Z"
}
```

### Local Development

Install dependencies:

```bash
npm install
```

Run with CLI arguments:

```bash
node src/main.js --searchQuery="VAS Global | Virtual Assistant Services for Businesses" --website="https://virtualassistantsolutions.com/"
```

Run through Apify CLI:

```bash
apify run
```

Validate Apify schemas:

```bash
apify validate-schema
```

### Apify Deployment

The Dockerfile is stored at the project root:

```text
Dockerfile
```

Apify auto-detects it because `.actor/Dockerfile` is not present.

Deploy/rebuild on Apify:

```bash
apify push
```

If Chrome startup fails in Apify Cloud, set the environment variable below and rerun to print Chrome stderr:

```text
DEBUG_BROWSER=1
```

# Actor input Schema

## `strategy` (type: `string`):

Controls how the actor resolves the target company. Auto uses this priority: URL, CID, Place ID, then search query.

## `url` (type: `string`):

Full URL of the Google Maps place. Optional if searchQuery, placeId, or cid is provided.

## `placeId` (type: `string`):

Unique Google Place ID of the establishment. Navigates directly and avoids any text-search ambiguity.

## `cid` (type: `string`):

Google Maps Customer ID (CID). Navigates directly to the place without search. Accepts a decimal CID string, a maps URL with ?cid= or ludocid=, cid:12345 / ludocid=12345 text, or a place URL containing a hex CID pair (0x...:0x...). Keep large CIDs as strings — do not convert to JSON numbers.

## `searchQuery` (type: `string`):

Company name to search for on Google Maps. Used if URL is not provided.

## `website` (type: `string`):

The company's website to match against the search results to guarantee accuracy.

## `proxyConfig` (type: `object`):

Proxy settings. Residential proxies are strongly recommended for cloud runs.

## `blockAssets` (type: `boolean`):

Block image/font/media requests to speed up scraping and reduce bandwidth.

## `apiOnly` (type: `boolean`):

Use only the /maps/preview/place API for place details. Disables DOM fallback if the API response cannot be parsed.

## `language` (type: `string`):

Language code for the Google Maps interface (e.g. 'en', 'es', 'fr', 'de'). Defaults to English ('en').

## `headless` (type: `boolean`):

Run Puppeteer in headless mode. Set to false locally for debugging.

## Actor input object example

```json
{
  "strategy": "auto",
  "url": "https://www.google.com/maps/place/Eiffel+Tower/@48.8583701,2.2922926,17z",
  "placeId": "ChIJZQi5xUUPyokRKnfZHK7gBnc",
  "cid": "15430805186958748717",
  "searchQuery": "Eiffel Tower",
  "website": "starbucks.com",
  "proxyConfig": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  },
  "blockAssets": true,
  "apiOnly": false,
  "language": "es",
  "headless": true
}
```

# Actor output Schema

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

Default dataset items. Each run produces one company/place contact record.

## `metadata` (type: `string`):

Run metadata containing the resolved place output, source URL, and scrape timestamp.

# 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 = {
    "searchQuery": "Shopify NY"
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapecraft/google-company-contact-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 = { "searchQuery": "Shopify NY" }

# Run the Actor and wait for it to finish
run = client.actor("scrapecraft/google-company-contact-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 '{
  "searchQuery": "Shopify NY"
}' |
apify call scrapecraft/google-company-contact-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Google Maps Lead & Contact Scraper",
        "description": "Extract B2B leads directly from Google Maps. Automatically scrape company names, addresses, phone numbers, websites, to supercharge your sales pipeline.",
        "version": "0.0",
        "x-build-id": "LFGnRBr67y1ilETBV"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapecraft~google-company-contact-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapecraft-google-company-contact-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/scrapecraft~google-company-contact-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scrapecraft-google-company-contact-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/scrapecraft~google-company-contact-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scrapecraft-google-company-contact-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",
                "properties": {
                    "strategy": {
                        "title": "Resolution Strategy",
                        "enum": [
                            "auto",
                            "url",
                            "cid",
                            "placeId",
                            "search"
                        ],
                        "type": "string",
                        "description": "Controls how the actor resolves the target company. Auto uses this priority: URL, CID, Place ID, then search query.",
                        "default": "auto"
                    },
                    "url": {
                        "title": "Google Maps Place URL",
                        "pattern": "https?://.*google\\.com/maps/.*",
                        "type": "string",
                        "description": "Full URL of the Google Maps place. Optional if searchQuery, placeId, or cid is provided."
                    },
                    "placeId": {
                        "title": "Google Place ID (Optional)",
                        "type": "string",
                        "description": "Unique Google Place ID of the establishment. Navigates directly and avoids any text-search ambiguity."
                    },
                    "cid": {
                        "title": "Google Maps CID (Optional)",
                        "type": "string",
                        "description": "Google Maps Customer ID (CID). Navigates directly to the place without search. Accepts a decimal CID string, a maps URL with ?cid= or ludocid=, cid:12345 / ludocid=12345 text, or a place URL containing a hex CID pair (0x...:0x...). Keep large CIDs as strings — do not convert to JSON numbers."
                    },
                    "searchQuery": {
                        "title": "Search Query (Company Name)",
                        "type": "string",
                        "description": "Company name to search for on Google Maps. Used if URL is not provided."
                    },
                    "website": {
                        "title": "Company Website (Optional)",
                        "type": "string",
                        "description": "The company's website to match against the search results to guarantee accuracy."
                    },
                    "proxyConfig": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Proxy settings. Residential proxies are strongly recommended for cloud runs.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    },
                    "blockAssets": {
                        "title": "Block Images / Fonts",
                        "type": "boolean",
                        "description": "Block image/font/media requests to speed up scraping and reduce bandwidth.",
                        "default": true
                    },
                    "apiOnly": {
                        "title": "API Only",
                        "type": "boolean",
                        "description": "Use only the /maps/preview/place API for place details. Disables DOM fallback if the API response cannot be parsed.",
                        "default": false
                    },
                    "language": {
                        "title": "Language (Optional)",
                        "type": "string",
                        "description": "Language code for the Google Maps interface (e.g. 'en', 'es', 'fr', 'de'). Defaults to English ('en').",
                        "default": "en"
                    },
                    "headless": {
                        "title": "Headless Browser",
                        "type": "boolean",
                        "description": "Run Puppeteer in headless mode. Set to false locally for debugging.",
                        "default": true
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
