# 密码Google Maps Business Leads Scraper (`opspilot.cc/mi-ma-google-maps-business-leads-scraper`) Actor

Search Google Maps Extract business leads by category, keyword, and location across 18 languages. Returns phone, website, rating, hours, popular times, services, and more.

- **URL**: https://apify.com/opspilot.cc/mi-ma-google-maps-business-leads-scraper.md
- **Developed by:** [wang wei](https://apify.com/opspilot.cc) (community)
- **Categories:** Lead generation, E-commerce, SEO tools
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

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

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Maps Business Leads Scraper — Google Maps Lead Generation

> **Find business leads on Google Maps in any country, in any language.**
> Extract phone numbers, websites, ratings, business hours, popular times, services, and review topics for any category, keyword, and location — all in a single run.

This Apify Actor searches Google Maps and turns the results into a one-click lead generation tool for marketers, agencies, and researchers. Search by category, keyword, and GPS coordinate across **18 languages**, and export clean JSON to an Apify Dataset ready for CRM import.

---

### Table of Contents

- [Why Use This Actor](#why-use-this-actor)
- [What You Get](#what-you-get)
- [Quick Start](#quick-start)
- [Input Reference](#input-reference)
- [Output Reference](#output-reference)
- [Use Cases](#use-cases)
- [Pricing & Limits](#pricing--limits)
- [FAQ](#faq)
- [Support](#support)

---

### Why Use This Actor

Searching Google Maps manually takes hours. Copy-pasting phone numbers is error-prone. Different languages and currencies break naive scrapers. This Actor solves all of that:

| Problem | How This Actor Solves It |
|---|---|
| Scraping Google Maps directly gets you blocked | Uses enterprise-grade infrastructure — no IP bans, no CAPTCHAs, no rate-limit headaches |
| Multi-language searches need native scripts | 18 languages supported via Map: `English`, `中文`, `日本語`, `한국어`, `Deutsch`, `Français`, `Español`, etc. |
| Duplicate businesses across categories & locations | Three-tier dedup: `place_id` → `cid` → text fallback |
| Large radius searches miss suburbs | Per-task auto-pagination (up to 200 results per location) |
| Field bloat in JSON exports | All 10 field groups included; nothing to configure |
| Hard limits on free-tier cost | 200 results/task hard cap, 1500/min rate limit, free users get 5 runs/day |

---

### What You Get

Every business in the output includes:

- **Identity**: `place_id`, `cid`, `title`, `original_title`, `category`, `category_ids`, `additional_categories`, `address`, `address_info{borough, address, city, zip, region, country_code}`, `latitude`, `longitude`, `url`
- **Contact**: `phone`, `domain`, `contact_info[]` (extra phones / emails / websites)
- **Rating**: `rating{type, value, votes_count, max}`, `hotel_rating`, `price_level`, `rating_distribution{1..5}`, `is_claimed`
- **Hours**: `work_time{current_status, timetable{sunday..saturday[{open, close}]}}`
- **Popular Times**: `popular_times{popular_times_by_days{sunday..saturday[{hour, minute, popular_index}]}}`
- **Services**: `services[]{category, title, snippet, price{current, regular, max_value, currency, is_price_range, displayed_price}}`
- **Attributes**: `attributes{available_attributes, unavailable_attributes}`
- **Topics**: `place_topics{"keyword": count}` — review keyword frequency
- **Media**: `total_photos`, `logo`, `main_image`
- **Links**: `local_business_links[]{type, title, url}` (reservation / order / menu / delivery)

Plus a top-level `language` field for data lineage (which language the search was run in).

---

### Quick Start

#### 1. Run with Example Input

No setup required — credentials are pre-configured. Just paste this into the input form:

````

categories:   lawyer
keywords:     personal injury
locations:    Los Angeles,CA,United States
language:     English

````

That's it. Results stream into the default dataset in 10–60 seconds.

#### 2. Export Your Results

In the Apify Console, open the **Dataset** tab → **Export** → choose JSON, CSV, Excel, or pipe to your CRM via the Apify API. The run summary is also written to the default Key-Value Store as the `SUMMARY` key.

---

### Input Reference

#### Top-Level Structure

```json
{
  "categories": "lawyer\npersonal_injury_lawyer",
  "keywords":   "personal injury\ncar accident attorney",
  "locations":  "Los Angeles,CA,United States\n34.0522,-118.2437,25",
  "language":   "English"
}
````

> Every field is a multi-line text box — **one value per line**. Paste from a spreadsheet, one per row, or just type lines manually. The Actor expands the cartesian product (`locations` × `categories`) into individual search tasks, each optionally tagged with the joined `keywords`.

#### `categories` — Business Categories (required)

Multi-line text box. Business category slugs, **one per line** (max 10). Examples: `lawyer`, `restaurant`, `real_estate_agency`, `dental_clinic`, `marketing_agency`, `pizza_restaurant`.

#### `locations` — Target Locations (required)

Multi-line text box. **One location per line**. Use a city name (e.g. `Los Angeles,CA,United States`) or GPS coords `lat,lng,radius_km` (e.g. `34.0522,-118.2437,25`). Auto-detected per line.

#### `keywords` — Search Keywords (optional)

Multi-line text box. Optional keywords appended to the `title` / `description` search, **one per line** (max 20). Use any language. Keywords are joined with a space and truncated to 200 characters per task.

> Need to run more searches? Submit multiple Actor runs with different category / keyword combinations — each run is one search job. There is no nested `queries[]` array; the form is intentionally flat to match the Apify Console text-area editor.

##### Location Formats

Each **line** in the Locations text box is auto-detected. Numeric-only 3-part comma-separated lines are treated as coordinates; everything else is treated as a city name:

```
Los Angeles,CA,United States       // city / region name
Berlin,Germany
Tokyo,Japan
34.0522,-118.2437,25               // lat,lng,radius_km — radius 1-100000
41.9028,12.4964,10
```

#### `language` — Result Language

One setting for the entire run. Accepts **English names**, **ISO 639-1 codes**, or **local scripts**:

| English Name | ISO 639-1 | Local Script | Output Code |
|---|---|---|---|
| English | en | — | `en` |
| Chinese | zh | `中文`, `简体中文`, `繁体中文` | `zh` |
| German | de | `Deutsch` | `de` |
| Japanese | ja | `日本語` | `ja` |
| Korean | ko | `한국어` | `ko` |
| French | fr | `Français` | `fr` |
| Spanish | es | `Español` | `es` |
| Portuguese | pt | `Português` | `pt` |
| Russian | ru | `Русский` | `ru` |
| Arabic | ar | `العربية` | `ar` |
| Italian | it | `Italiano` | `it` |
| Dutch | nl | `Nederlands` | `nl` |
| Polish | pl | `Polski` | `pl` |
| Turkish | tr | `Türkçe` | `tr` |
| Vietnamese | vi | `Tiếng Việt` | `vi` |
| Thai | th | `ภาษาไทย` | `th` |
| Indonesian | id | `Bahasa` | `id` |
| Hindi | hi | `हिन्दी` | `hi` |

Unrecognized input falls back to `English` — no errors thrown.

***

### Output Reference

One JSON object per business. Example:

```json
{
  "language": "en",
  "place_id": "ChIJn2J5_8VhZ0wRkS8xG3cK1uA",
  "cid": "12345678901234567890",
  "title": "Smith & Jones Personal Injury Law",
  "original_title": "Smith & Jones Personal Injury Law",
  "category": "Personal injury attorney",
  "category_ids": ["1109"],
  "additional_categories": ["Lawyer"],
  "address": "1234 Sunset Blvd, Los Angeles, CA 90028",
  "address_info": {
    "borough": "Hollywood",
    "address": "1234 Sunset Blvd",
    "city": "Los Angeles",
    "zip": "90028",
    "region": "Los Angeles County",
    "country_code": "US"
  },
  "latitude": 34.098,
  "longitude": -118.328,
  "url": "https://www.google.com/maps?cid=12345678901234567890",
  "domain": "smithjoneslaw.com",
  "phone": "+12135551234",
  "contact_info": [
    { "type": "phone",   "value": "+12135551234",       "source": "google" },
    { "type": "website", "value": "https://smithjoneslaw.com", "source": "google" }
  ],
  "rating": { "rating_type": "Max5", "value": 4.8, "votes_count": 327, "rating_max": 5 },
  "hotel_rating": null,
  "price_level": null,
  "rating_distribution": { "1": 2, "2": 1, "3": 5, "4": 23, "5": 296 },
  "is_claimed": true,
  "work_time": {
    "current_status": "open",
    "timetable": {
      "monday":    [{ "open": { "hour": 9,  "minute": 0 }, "close": { "hour": 17, "minute": 0 } }],
      "tuesday":   [{ "open": { "hour": 9,  "minute": 0 }, "close": { "hour": 17, "minute": 0 } }],
      "wednesday": [{ "open": { "hour": 9,  "minute": 0 }, "close": { "hour": 17, "minute": 0 } }],
      "thursday":  [{ "open": { "hour": 9,  "minute": 0 }, "close": { "hour": 17, "minute": 0 } }],
      "friday":    [{ "open": { "hour": 9,  "minute": 0 }, "close": { "hour": 17, "minute": 0 } }],
      "saturday":  [],
      "sunday":    []
    }
  },
  "popular_times": {
    "popular_times_by_days": {
      "monday": [
        { "hour": 9,  "minute": 0, "popular_index": 25 },
        { "hour": 10, "minute": 0, "popular_index": 60 }
      ]
    }
  },
  "services": [
    {
      "category": "Legal Service",
      "title": "Free Case Evaluation",
      "snippet": "No fee unless you win",
      "price": null
    }
  ],
  "attributes": {
    "available_attributes":   { "wheelchair_accessible": true, "online_appointments": true },
    "unavailable_attributes": {}
  },
  "place_topics": { "attorney": 87, "case": 64, "accident": 52 },
  "total_photos": 42,
  "logo": "https://lh3.googleusercontent.com/...",
  "main_image": "https://lh3.googleusercontent.com/...",
  "local_business_links": []
}
```

***

### Use Cases

#### Lead Generation for Agencies

Scrape personal injury attorneys in LA with 4+ star ratings and 50+ reviews:

```
categories:   personal_injury_lawyer
locations:    Los Angeles,CA,United States
              New York,NY,United States
keywords:     personal injury
              car accident
language:     English
```

#### Restaurant Site Selection

Find busy lunch spots in Tokyo to scout a new branch location:

```
categories:   ramen_restaurant
locations:    Tokyo,Japan
              Osaka,Japan
keywords:     ramen
              tonkotsu
language:     日本語
```

#### Competitor Pricing Research

Pull menu prices for pizza restaurants in Rome:

```
categories:   pizza_restaurant
keywords:     Neapolitan pizza
locations:    Rome,Italy
              Naples,Italy
language:     Italiano
```

#### Multi-City Real Estate Agents

Search real estate agencies across three US metros in one run:

```
categories:   real_estate_agency
locations:    New York,NY,United States
              Los Angeles,CA,United States
              Chicago,IL,United States
language:     English
```

***

### Pricing & Limits

#### Free Tier

- **5 runs per day** (UTC calendar day)
- 200 results per task
- 1500 API calls/min (industry-standard safety limit)

#### Pay-Per-Event (PPE) — Paid Tier

- **No run limit**
- **No input caps**
- Charged via `Actor.charge()` per event:

| Event Name | What It Charges For |
|---|---|
| `query-task` | One per search task (= one location × category) |
| `business-result` | One per business result pushed to dataset |

> Pricing per event is configured by the Actor owner. Check the **Pricing** tab in the Apify Console for current rates.

#### Hard Limits (All Tiers)

- **200 results per task** (locked — prevents runaway costs)
- **50 pages per task** (10,000 item cap via auto-pagination)
- **1500 API calls/min** (token bucket)
- **3 retries on 5xx / network errors** with exponential backoff

#### Cost Notes

The Actor charges you per event via Apify's Pay-Per-Event model. The underlying search infrastructure cost is included in the event pricing — there is no separate usage fee.

***

### FAQ

#### Why does my run fail with "API credentials missing"?

Credentials are bundled in the Actor configuration, so this should not happen during normal use. If it does, please open an issue on the Actor's GitHub repo with the full error log.

#### Why does my run fail with "Payment required"?

Your account balance is empty. Top up via **Settings → Billing** in the Apify Console.

#### Why does my run fail with "Authentication failed"?

The bundled credentials have been rejected by the upstream API. Please open an issue on the Actor's GitHub repo.

#### Why am I getting only 200 results per location?

Hard limit to protect free-tier users from runaway costs. Upgrade to a paid Apify plan to keep this limit, or submit multiple Actor runs with different keyword / category / location combinations.

#### Can I get more than 200 per location?

Not in this version. Submit multiple Actor runs with different keyword / category / location combinations. The 200 cap is enforced server-side.

#### How do I find the right category name?

Use the standard Google My Business category naming convention. Examples that work: `lawyer`, `restaurant`, `pizza_restaurant`, `real_estate_agency`, `dental_clinic`, `marketing_agency`, `hair_salon`, `coffee_shop`, `gym`, `auto_repair`. Lowercase with underscores.

#### What if I get an unknown language code in my output?

The Actor falls back to `en` for any unrecognized input. The `language` field in each output record always reflects the ISO 639-1 code that was actually used.

#### Where do I see the run summary?

Each run saves a `SUMMARY` key in the **Key-Value Store** with totals: tasks run, items fetched, items pushed, duplicates skipped, errors.

***

### Technical Details

- **Data source**: Google Maps business listings
- **Runtime**: Node.js 20 (Docker)
- **Concurrency**: 10 parallel tasks
- **Dedup**: 3-tier (place\_id → cid → title+address+lat/lng)
- **Auto-pagination**: Up to 50 pages
- **Retries**: 3 attempts with exponential backoff (5xx, network, 429)
- **Free-tier storage**: Apify KV store `free-tier-limits`, key `free_runs_YYYY-MM-DD`

***

### Support

- **Documentation**: This README
- **Issues**: Open an issue on the Actor's GitHub repo
- **Apify Support**: [console.apify.com/support](https://console.apify.com/support)

***

### License

Apache-2.0

# Actor input Schema

## `categories` (type: `string`):

Business categories, one per line (max 10).
Examples:
lawyer
restaurant
real\_estate\_agency
pizza\_restaurant
marketing\_agency

## `keywords` (type: `string`):

Keywords appended to title/description search, one per line. Use any language. Max 20.

## `locations` (type: `string`):

One location per line. Use a city name (e.g. "Los Angeles,CA,United States") or GPS coords "lat,lng,radius\_km" (e.g. "34.0522,-118.2437,25"). Auto-detected per line.

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

Language of returned business data. Accepts English name (English, Chinese, German, Japanese, Korean, French, Spanish, ...) or ISO 639-1 code (en, zh, de, ja, ...) or local script (中文, 日本語, 한국어). Defaults to English.

## Actor input object example

```json
{
  "language": "English"
}
```

# Actor output Schema

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

Array of business objects, one per Google Maps result. Use the dataset URL to fetch or stream the full list.

## `summary` (type: `string`):

Run-level summary with task count, fetched/pushed/duplicate totals, and error samples. Stored as the SUMMARY key in the default key-value store.

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("opspilot.cc/mi-ma-google-maps-business-leads-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 = {}

# Run the Actor and wait for it to finish
run = client.actor("opspilot.cc/mi-ma-google-maps-business-leads-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 '{}' |
apify call opspilot.cc/mi-ma-google-maps-business-leads-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "密码Google Maps Business Leads Scraper",
        "description": "Search Google Maps Extract business leads by category, keyword, and location across 18 languages. Returns phone, website, rating, hours, popular times, services, and more.",
        "version": "1.1",
        "x-build-id": "Ez4eIEKGbIyowRj8N"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/opspilot.cc~mi-ma-google-maps-business-leads-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-opspilot.cc-mi-ma-google-maps-business-leads-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/opspilot.cc~mi-ma-google-maps-business-leads-scraper/runs": {
            "post": {
                "operationId": "runs-sync-opspilot.cc-mi-ma-google-maps-business-leads-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/opspilot.cc~mi-ma-google-maps-business-leads-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-opspilot.cc-mi-ma-google-maps-business-leads-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": [
                    "categories",
                    "locations"
                ],
                "properties": {
                    "categories": {
                        "title": "Categories (required)",
                        "minLength": 1,
                        "type": "string",
                        "description": "Business categories, one per line (max 10).\nExamples:\nlawyer\nrestaurant\nreal_estate_agency\npizza_restaurant\nmarketing_agency"
                    },
                    "keywords": {
                        "title": "Search Keywords (optional)",
                        "type": "string",
                        "description": "Keywords appended to title/description search, one per line. Use any language. Max 20."
                    },
                    "locations": {
                        "title": "Locations (required)",
                        "minLength": 1,
                        "type": "string",
                        "description": "One location per line. Use a city name (e.g. \"Los Angeles,CA,United States\") or GPS coords \"lat,lng,radius_km\" (e.g. \"34.0522,-118.2437,25\"). Auto-detected per line."
                    },
                    "language": {
                        "title": "Result Language",
                        "type": "string",
                        "description": "Language of returned business data. Accepts English name (English, Chinese, German, Japanese, Korean, French, Spanish, ...) or ISO 639-1 code (en, zh, de, ja, ...) or local script (中文, 日本語, 한국어). Defaults to English.",
                        "default": "English"
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
