# Google Maps Reviews Scraper (`scraperforge/google-maps-reviews-scraper`) Actor

📍 Google Maps Reviews Scraper extracts ratings, comments, timestamps & reviewer details from place URLs or IDs. ⚡ Fast, reliable, anti-blocking. 📊 Export CSV/JSON for analysis. 🔎 Ideal for local SEO, reputation management & competitor research. 🔁 Schedules & API-ready automation.

- **URL**: https://apify.com/scraperforge/google-maps-reviews-scraper.md
- **Developed by:** [ScraperForge](https://apify.com/scraperforge) (community)
- **Categories:** Automation, AI, Lead generation
- **Stats:** 5 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$19.99/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#rental-actors

## 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

### 💡 What Does a Google Maps Reviews Scraper Do?

A Google Maps Reviews Scraper is a powerful tool that automatically extracts customer reviews, ratings, timestamps, reviewer profiles, and business insights from Google Maps pages. It helps marketers, researchers, and businesses gather structured data without manual copy-paste. By using automated scraping, you can analyze customer sentiment, compare competing locations, and fuel data-driven decisions.

Tools like an Apify Google Maps Reviews Scraper, Google Maps Reviews Scraper Python scripts, or even Google Maps Reviews Scraper Chrome extensions allow you to collect large volumes of review data instantly. This is especially valuable for SEO, reputation management, business intelligence, and lead generation.

If you’re searching for the best Google Maps scraper, a scraper gives you a massive advantage by transforming raw Google Maps reviews into actionable insights—fast, accurate, and ready for analysis. 🚀

* * *

### 📥 What Google Maps Reviews Can I Extract?

The Google Maps Reviews Scraper can extract a wide set of review-related data. Below is a comprehensive table ⬇️

| Data Type | Description |
| --- | --- |
| ⭐ Star Rating | 1–5 star rating from users |
| 🧑 Reviewer Name | Public profile name of the reviewer |
| 📝 Review Text | Full content of the written review |
| 📅 Review Date | Date the review was posted |
| 🔢 Review ID | Unique ID for each review |
| 🖼 Reviewer Image | Profile photo (if available) |
| 📍 Business Details | Business name, address, category |
| 🔄 Response from Owner | Any business owner replies |
| 🔗 Review URL | Direct link to the review |
| 🏷 Tags | Keywords like “family friendly”, “great service” |

  

* * *

#### 🚀 Key Features of Google Maps Reviews Scraper

Here are the standout features that make this tool the preferred choice over solutions like Google Maps Reviews Scraper GitHub, Outscraper Google Maps Reviews Scraper, or browser extensions:

*   ⚡ Bulk Review Extraction — Scrape thousands of reviews from multiple locations at once.  
      
    
*   📊 Clean, Structured Output — Get JSON/CSV datasets ready for analysis or AI tools.  
      
    
*   🔍 Keyword & Sentiment Insights — Identify customer sentiment trends and recurring complaint themes.  
      
    
*   💬 Owner Response Collection — Capture business replies for complete reputation tracking.  
      
    
*   🌐 API Support — Compatible with Google Maps Reviews Scraper API and automated workflows.  
      
    
*   🧩 Easy Integrations — Works with Python scripts, automation platforms, and Apify’s cloud.  
      
    
*   🛠 Custom Filters — Extract only the latest reviews, specific keywords, or star ranges.  
      
    
*   📈 Scalable & Reliable — More powerful than any Google review scraper extension.  
      
    

This blend of features makes it the best Google Maps scraper for businesses, agencies, and data analysts.

* * *

### 🧭 How to Use Google Maps Reviews Scraper

Follow this simple step-by-step guide to scrape reviews effortlessly:

1.  🔐 Log in to Apify  
    Create a free account or sign in to your dashboard.  
      
    
2.  🔎 Search for the Actor  
    Look up “Google Maps Reviews Scraper” or “Apify Google Maps Reviews Scraper” in the Apify Store.  
      
    
3.  📥 Enter Your Input Data  
    Add Google Maps place URLs into the startUrls field.  
    You can add one URL or hundreds.  
      
    
4.  ⚙ Choose Options  
    Enable or disable options such as:  
      
    

*   Include reviewer profile  
      
    
*   Include owner responses  
      
    
*   Include only recent reviews  
      
    
*   Extract all reviews or limit count  
      
    

6.  ▶ Run the Actor  
    Click Start and the scraper will automatically begin extracting reviews.  
      
    
7.  ⬇ Download Results  
    Export as JSON, CSV, or Excel, ready to use in Python, dashboards, or AI tools.  
      
    

This process is easier and more scalable than using a Google Maps Reviews Scraper Python script or a simple browser extension.

* * *

### 🎯 Use Cases

Here are powerful real-world applications for a Google Maps Reviews Scraper free or paid version:

#### ✔ Business Reputation Management

Track sentiment, identify complaints, and monitor brand health.

#### ✔ Competitor Analysis

Compare ratings and customer feedback for multiple businesses in your market.

#### ✔ SEO & Local SEO Optimization

Find keywords customers mention repeatedly and optimize your website or GBP listing.

#### ✔ Market Research

Analyze trends across restaurants, hotels, retail stores, medical practices, and more.

#### ✔ AI Training Datasets

Feed review data into LLMs, sentiment analysis tools, or machine-learning models.

#### ✔ Lead Generation

Identify businesses with poor ratings that may need marketing services.

#### ✔ Product/Service Improvement

Uncover patterns in customer behavior and expectations.

Whether you're using a Google Maps Reviews Scraper Chrome extension, API, or cloud automation, the use cases are unlimited.

* * *

### 🌟 Why Choose Us?

Here’s why our Google Maps Reviews Scraper stands out from GitHub scripts or free extensions:

*   🏆 Enterprise-grade accuracy — No missing data, no partial scraping.  
      
    
*   ⚙ Zero maintenance — Unlike GitHub scripts or Python scrapers, everything runs in the cloud.  
      
    
*   ☁ Unlimited scaling — Extract thousands of reviews without browser crashes.  
      
    
*   🔐 Secure & compliant — Built with safe, reliable infrastructure.  
      
    
*   🧩 Flexible integrations — Works with Zapier, Make, APIs, and automation stacks.  
      
    
*   📞 Premium support — Real experts available to help with setup.  
      
    
*   💸 Affordable — Cheaper and more reliable than Outscraper.  
      
    

In short, it’s the most scalable, powerful, and cost-effective solution for scraping Google Maps reviews.

* * *

### 📈 How Many Results Can You Scrape with Google Maps Reviews Scraper?

Scalability is one of the strongest features of our tool. Whether you're handling a small dataset or scraping millions of reviews, the system is built to deliver top-tier performance.

#### ⚡ Small-Scale Scraping

Perfect for small businesses, consultants, or researchers who need data from:

*   1–5 Google Maps locations  
      
    
*   Up to 1,000 reviews per run  
      
    
*   Fast results for immediate insights  
      
    

#### ⚡ Medium-Scale Scraping

Ideal for SEO agencies and analytics teams:

*   50–500 Google Maps URLs  
      
    
*   Up to 50,000 reviews per run  
      
    
*   Automated scheduling via API  
      
    

#### ⚡ Large-Scale / Enterprise Scraping

Designed for massive datasets:

*   1,000+ locations scraped at once  
      
    
*   Hundreds of thousands of reviews extracted  
      
    
*   Queue-based execution for unlimited scaling  
      
    

Unlike a Google Maps Reviews Scraper Chrome extension or simple Python script, our cloud infrastructure handles:

*   Parallelized runs  
      
    
*   Automatic retries  
      
    
*   Complete extraction  
      
    
*   High-speed processing  
      
    

This makes it the best Google Maps scraper for large workloads.

* * *

### ⚖️ Is It Legal to Scrape Google Maps?

Scraping publicly available data is generally legal when done responsibly, but it comes with important considerations:

*   ✔ Data must be public  
      
    
*   ✔ Scraping must follow ethical guidelines  
      
    
*   ✔ No circumvention of security measures  
      
    
*   ✔ Use data only for lawful purposes  
      
    

Our Google Maps Reviews Scraper is designed to operate within these boundaries by:

*   Respecting robots.txt rules  
      
    
*   Avoiding private or restricted information  
      
    
*   Offering compliance-friendly features  
      
    

Always make sure YOUR use case aligns with relevant laws and Google’s terms. If unsure, consult legal advice.

* * *

### 🔧 Input Parameters

#### JSON Example
```json
{
  "startUrls": [
    {
      "url": "https://www.google.com/maps/place/Ozz+Cafe/@23.7515736,90.3640976,17z/data=!3m1!4b1!4m6!3m5!1s0x3755bf50215d2885:0x73b4574a678e2e65!8m2!3d23.7515687!4d90.3666725!16s%2Fg%2F11c5t2yjtg!5m1!1e4?entry=ttu"
    }
  ],
  "keywords": [
    "Starbucks New York",
    "Ozz Cafe",
    "restaurant near me"
  ],
  "maxComments": 60,
  "sortOrder": "newest",
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
````

### 📤 Output Format

#### JSON Example

```json
{
  "url": "https://www.google.com/maps/place/Ozz+Cafe/...",
  "locationName": "Ozz Cafe",
  "reviewerName": "John Doe",
  "isLocalGuide": true,
  "reviewsAmount": 35,
  "photosAmount": 10,
  "reviewerLink": "https://www.google.com/maps/contrib/115284223668523434855",
  "rating": 5,
  "date": "2 months ago",
  "text": "Amazing food and great service! Highly recommended.",
  "photos": [
    "https://lh3.googleusercontent.com/geougc-cs/...",
    "https://lh3.googleusercontent.com/geougc-cs/..."
  ]
}
```

### ❓ FAQ — Google Maps Reviews Scraper

#### 1️⃣ Is there a Google Maps Reviews Scraper free version?

Yes! Free usage tiers exist, especially with Apify.

#### 2️⃣ Is this better than a Google Maps Reviews Scraper GitHub script?

Yes—no setup, no coding, no maintenance.

#### 3️⃣ Can I use this with Python?

Absolutely. Use the API with your Google Maps Reviews Scraper Python workflow.

#### 4️⃣ Is it safer than a Chrome extension review scraper?

Much safer—extensions are limited and risky.

#### 5️⃣ Can it scrape multiple locations at once?

Yes! Bulk scraping is fully supported.

#### 6️⃣ Does it work for any country?

Yes—all global Google Maps regions are supported.

#### 7️⃣ Can I export results to Excel?

Yes—CSV, XLSX, JSON formats included.

#### 8️⃣ Is Outscraper better?

Apify offers more scalability, flexibility, and better pricing.

### 🏁 Conclusion

The Google Maps Reviews Scraper is an essential tool for businesses, marketers, and analysts who rely on accurate, scalable review data. With fast extraction, automation, and powerful insights, it outperforms extensions and scripts—making it the smartest choice for reputation management, SEO, and data-driven decision-making. 🚀

# Actor input Schema

## `startUrls` (type: `array`):

📍➕ Add one or more Google Maps place URLs (example: https://www.google.com/maps/place/Restaurant+Name/...).

## `placeIds` (type: `array`):

📌✨ Optional. Each place ID (e.g. `ChIJ...`) is auto-converted into a Maps URL and scraped together with `startUrls`.

## `maxReviews` (type: `integer`):

📊🎚️ Set the maximum number of reviews to extract for every place URL.

## `reviewsSort` (type: `string`):

⭐↕️ Choose sorting exactly like Google Maps: newest, most relevant, highest rating, or lowest rating.

## `reviewsStartDateAbsolute` (type: `string`):

🗓️✅ Pick an exact calendar date (YYYY-MM-DD). Reviews older than this cutoff are skipped.

## `reviewsStartDateRelative` (type: `string`):

⌛📆 Choose a relative time window when you want recent reviews without selecting an exact date.

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

🗣️🌍 Select your preferred language. Applied to Maps cookies, locale, and Accept-Language headers.

## `personalData` (type: `boolean`):

🔒🙈 If disabled, reviewer name and profile link are hidden in all output rows.

## `proxy` (type: `object`):

🛡️⚙️ Optional proxy settings block. Set `use_proxy: false` to scrape directly. `username` / `password` can stay empty for unauthenticated proxies. Used by Playwright + aiohttp so all requests go through one IP.

## Actor input object example

```json
{
  "startUrls": [
    "https://www.google.com/maps/place/Boucherie+Union+Square/@40.7372552,-73.9882246,17z/data=!4m6!3m5!1s0x89c259a1ec5f5573:0x2fc6687f46f682d5!8m2!3d40.7372552!4d-73.9882246!16s%2Fg%2F11hbv5rh0_"
  ],
  "placeIds": [],
  "maxReviews": 10,
  "reviewsSort": "newest",
  "reviewsStartDateAbsolute": "",
  "reviewsStartDateRelative": "",
  "language": "en",
  "personalData": true,
  "proxy": {
    "useApifyProxy": false
  }
}
```

# 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 = {
    "startUrls": [
        "https://www.google.com/maps/place/Boucherie+Union+Square/@40.7372552,-73.9882246,17z/data=!4m6!3m5!1s0x89c259a1ec5f5573:0x2fc6687f46f682d5!8m2!3d40.7372552!4d-73.9882246!16s%2Fg%2F11hbv5rh0_"
    ],
    "placeIds": [],
    "proxy": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("scraperforge/google-maps-reviews-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 = {
    "startUrls": ["https://www.google.com/maps/place/Boucherie+Union+Square/@40.7372552,-73.9882246,17z/data=!4m6!3m5!1s0x89c259a1ec5f5573:0x2fc6687f46f682d5!8m2!3d40.7372552!4d-73.9882246!16s%2Fg%2F11hbv5rh0_"],
    "placeIds": [],
    "proxy": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("scraperforge/google-maps-reviews-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 '{
  "startUrls": [
    "https://www.google.com/maps/place/Boucherie+Union+Square/@40.7372552,-73.9882246,17z/data=!4m6!3m5!1s0x89c259a1ec5f5573:0x2fc6687f46f682d5!8m2!3d40.7372552!4d-73.9882246!16s%2Fg%2F11hbv5rh0_"
  ],
  "placeIds": [],
  "proxy": {
    "useApifyProxy": false
  }
}' |
apify call scraperforge/google-maps-reviews-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Google Maps Reviews Scraper",
        "description": "📍 Google Maps Reviews Scraper extracts ratings, comments, timestamps & reviewer details from place URLs or IDs. ⚡ Fast, reliable, anti-blocking. 📊 Export CSV/JSON for analysis. 🔎 Ideal for local SEO, reputation management & competitor research. 🔁 Schedules & API-ready automation.",
        "version": "0.1",
        "x-build-id": "7cPKJzMecVR31WAjJ"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scraperforge~google-maps-reviews-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scraperforge-google-maps-reviews-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/scraperforge~google-maps-reviews-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scraperforge-google-maps-reviews-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/scraperforge~google-maps-reviews-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scraperforge-google-maps-reviews-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": {
                    "startUrls": {
                        "title": "🔗🗺️ Google Maps Place URLs",
                        "type": "array",
                        "description": "📍➕ Add one or more Google Maps place URLs (example: https://www.google.com/maps/place/Restaurant+Name/...).",
                        "items": {
                            "type": "string"
                        }
                    },
                    "placeIds": {
                        "title": "🆔📌 Google Place IDs",
                        "type": "array",
                        "description": "📌✨ Optional. Each place ID (e.g. `ChIJ...`) is auto-converted into a Maps URL and scraped together with `startUrls`.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxReviews": {
                        "title": "🧾📊 Maximum Reviews per URL",
                        "minimum": 1,
                        "maximum": 100000,
                        "type": "integer",
                        "description": "📊🎚️ Set the maximum number of reviews to extract for every place URL.",
                        "default": 10
                    },
                    "reviewsSort": {
                        "title": "🗂️⭐ Review Sort Order",
                        "enum": [
                            "newest",
                            "mostRelevant",
                            "highestRanking",
                            "lowestRanking"
                        ],
                        "type": "string",
                        "description": "⭐↕️ Choose sorting exactly like Google Maps: newest, most relevant, highest rating, or lowest rating.",
                        "default": "newest"
                    },
                    "reviewsStartDateAbsolute": {
                        "title": "📅🧭 Reviews Start Date (Absolute)",
                        "type": "string",
                        "description": "🗓️✅ Pick an exact calendar date (YYYY-MM-DD). Reviews older than this cutoff are skipped.",
                        "default": ""
                    },
                    "reviewsStartDateRelative": {
                        "title": "⏳🕒 Reviews Start Date (Relative)",
                        "enum": [
                            "",
                            "7 days",
                            "1 month",
                            "3 months",
                            "6 months",
                            "1 year",
                            "2 years"
                        ],
                        "type": "string",
                        "description": "⌛📆 Choose a relative time window when you want recent reviews without selecting an exact date.",
                        "default": ""
                    },
                    "language": {
                        "title": "🌐🗣️ Language",
                        "enum": [
                            "en",
                            "es",
                            "fr",
                            "de",
                            "it",
                            "pt",
                            "nl",
                            "bn",
                            "hi",
                            "ar",
                            "tr",
                            "id",
                            "ja",
                            "ko",
                            "zh-CN"
                        ],
                        "type": "string",
                        "description": "🗣️🌍 Select your preferred language. Applied to Maps cookies, locale, and Accept-Language headers.",
                        "default": "en"
                    },
                    "personalData": {
                        "title": "🪪🔒 Include Personal Data",
                        "type": "boolean",
                        "description": "🔒🙈 If disabled, reviewer name and profile link are hidden in all output rows.",
                        "default": true
                    },
                    "proxy": {
                        "title": "🌐🛡️ Proxy Configuration",
                        "type": "object",
                        "description": "🛡️⚙️ Optional proxy settings block. Set `use_proxy: false` to scrape directly. `username` / `password` can stay empty for unauthenticated proxies. Used by Playwright + aiohttp so all requests go through one IP."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
