# Amazon Product Scraper | Prices, ASIN & Reviews (`rp_openpro.ai/amazon-ultimate-scraper`) Actor

Scrape Amazon products without the official API. Extract prices, ASIN, ratings, reviews, brand, images, specs, seller info and breadcrumbs from search, category, bestseller and product URLs. Fast HTTP scraping with automatic browser fallback and residential proxy support.

- **URL**: https://apify.com/rp\_openpro.ai/amazon-ultimate-scraper.md
- **Developed by:** [Rémi Pelloux](https://apify.com/rp_openpro.ai) (community)
- **Categories:** E-commerce, Automation
- **Stats:** 2 total users, 1 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

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

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

## Amazon Product Scraper — Prices, ASIN, Reviews & Full Product Data

**Scrape Amazon products without the official API.** Extract prices, ASIN codes, star ratings, review counts, brand names, images, feature bullets, technical specs, seller info, breadcrumbs, bestseller ranks, and 40+ structured fields from search results, category pages, bestseller lists, and direct `/dp/` product URLs — across **18 Amazon country domains**.

**From $5.00 / 1,000 results** with **10 free results** to test. Fast HTTP scraping with automatic browser fallback. Tiered proxy system keeps costs low.

> **Why pay $6–$12 per 1,000 results on other scrapers?** This actor uses smart proxy tiering (datacenter first, residential fallback) to deliver the same data at a fraction of the cost — with better anti-block recovery.

---

### How It Compares

| Feature | **Amazon Product Scraper (This)** | Junglee ($6.20/1k) | Basic scrapers |
|---|---|---|---|
| Search + category + bestseller + product URLs | **All 4 supported** | Partial | Search only |
| Full detail page scraping | **40+ fields** | 20–30 fields | 10–15 fields |
| Captcha / block recovery | **Auto browser fallback** | Manual retry | None |
| Price per 1,000 results | **$5.00** | $6.20 | $8–$12 |
| Multi-country (18 domains) | **.com, .co.uk, .de, .fr, .it, …** | .com only | .com only |
| Tiered proxy (cost savings) | **Datacenter → residential auto** | Residential only | Residential only |
| Free tier | **10 results** | 5 results | None |

---

### What Data You Get

Each product includes **40+ structured fields** across 9 categories:

| Category | Fields |
|---|---|
| **Identity** | ASIN, title, brand, product URL, author |
| **Pricing** | Current price, list price, currency, shipping price |
| **Social proof** | Star rating, review count, monthly purchase volume |
| **Availability** | In-stock status, delivery estimate, fastest delivery |
| **Content** | Description, feature bullets, breadcrumbs |
| **Media** | Thumbnail, gallery thumbnails, high-resolution images |
| **Specifications** | Attributes table, product overview, manufacturer attributes |
| **Commerce** | Seller name/link, offers, Amazon's Choice badge, condition |
| **Variants** | Variant ASINs, variant details (color, size), bestseller ranks |

---

### Input

| Field | Required | Default | Description |
|---|:---:|---|---|
| `categoryUrls` | **Yes** | — | Amazon search, category, bestseller, or `/dp/` product URLs |
| `maxItemsPerStartUrl` | | `100` | Max products per start URL |
| `maxSearchPagesPerStartUrl` | | `7` | Max listing pages per URL (Amazon caps keyword search at ~7) |
| `scrapeProductDetails` | | `true` | Fetch full product pages. Disable for fast listing-only mode |
| `useBrowserFallback` | | `true` | Auto-retry blocked pages with headless browser |
| `detailConcurrency` | | `5` | Parallel product detail fetches (1–10) |
| `proxyConfiguration` | | Auto-tiered | Leave empty for optimal cost. Override only if needed |

#### Supported URL types

````

Search:      https://www.amazon.com/s?k=wireless+keyboard
Category:    https://www.amazon.com/b?node=12879431
Bestseller:  https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics
Product:     https://www.amazon.com/dp/B07D34L57F

````

#### Example input

```json
{
  "categoryUrls": [
    { "url": "https://www.amazon.com/s?k=wireless+keyboard" },
    { "url": "https://www.amazon.com/dp/B07D34L57F" }
  ],
  "maxItemsPerStartUrl": 20,
  "scrapeProductDetails": true
}
````

***

### Output example

```json
{
  "asin": "B07D34L57F",
  "title": "Arteck 2.4G Wireless Keyboard Stainless Steel Ultra Slim",
  "url": "https://www.amazon.com/dp/B07D34L57F",
  "brand": "Arteck",
  "price": { "value": 25.77, "currency": "USD", "raw": "$25.77" },
  "listPrice": { "value": 39.99, "currency": "USD", "raw": "$39.99" },
  "stars": 4.5,
  "reviewsCount": 29003,
  "inStock": true,
  "inStockText": "In Stock",
  "delivery": "FREE delivery Tue, May 27",
  "features": [
    "Easy Setup: Simply insert the nano USB receiver...",
    "Ergonomic design: Stainless steel material..."
  ],
  "description": "Full-size wireless keyboard with low-profile keys...",
  "breadCrumbs": "Electronics > Computers & Accessories > Keyboards",
  "thumbnailImage": "https://m.media-amazon.com/images/I/71example.jpg",
  "galleryThumbnails": ["https://m.media-amazon.com/images/I/71ex1.jpg"],
  "highResolutionImages": ["https://m.media-amazon.com/images/I/71ex1.jpg"],
  "productOverview": [{ "key": "Brand", "value": "Arteck" }],
  "attributes": [{ "key": "Connectivity Technology", "value": "Wireless" }],
  "seller": { "name": "Arteck Direct", "url": "https://www.amazon.com/..." },
  "isAmazonChoice": true,
  "monthlyPurchaseVolume": "10K+ bought in past month",
  "bestsellerRanks": [{ "rank": 1, "category": "Computer Keyboards" }],
  "loadedCountryCode": "US",
  "succeeded": true,
  "processedAt": "2026-05-23T12:00:00.000Z"
}
```

***

### Pricing

Pay per result — platform usage (compute + proxy) is billed separately by Apify.

| Volume | Price |
|---|---:|
| **Per result** | **$0.005** |
| Per 1,000 results | **$5.00** |
| Per 10,000 results | **$50.00** |
| Free trial | **10 results** |

***

### Quick Start

#### 1. Apify Console (no code)

1. Click **Try for free** at the top of this page
2. Paste your Amazon URLs into the `categoryUrls` field
3. Click **Start** → download results from the **Dataset** tab

#### 2. API (cURL)

```bash
curl -X POST "https://api.apify.com/v2/acts/rp_openpro.ai~amazon-ultimate-scraper/runs?token=YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "categoryUrls": [{ "url": "https://www.amazon.com/s?k=wireless+keyboard" }],
    "maxItemsPerStartUrl": 20
  }'
```

#### 3. Python

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_TOKEN")
run = client.actor("rp_openpro.ai/amazon-ultimate-scraper").call(run_input={
    "categoryUrls": [{"url": "https://www.amazon.com/s?k=wireless+keyboard"}],
    "maxItemsPerStartUrl": 20,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item["title"], item["price"])
```

#### 4. JavaScript / Node.js

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('rp_openpro.ai/amazon-ultimate-scraper').call({
    categoryUrls: [{ url: 'https://www.amazon.com/s?k=wireless+keyboard' }],
    maxItemsPerStartUrl: 20,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach(item => console.log(item.title, item.price));
```

***

### Supported Amazon Domains

| Domain | Country | Domain | Country |
|---|---|---|---|
| amazon.com | United States | amazon.co.jp | Japan |
| amazon.co.uk | United Kingdom | amazon.in | India |
| amazon.de | Germany | amazon.com.mx | Mexico |
| amazon.fr | France | amazon.nl | Netherlands |
| amazon.it | Italy | amazon.se | Sweden |
| amazon.es | Spain | amazon.pl | Poland |
| amazon.ca | Canada | amazon.com.be | Belgium |
| amazon.com.au | Australia | amazon.sg | Singapore |
| amazon.ae | UAE | amazon.sa | Saudi Arabia |

***

### Use Cases

- **Price monitoring** — track competitor pricing, list prices, and deals across categories
- **Product research** — analyze ratings, review counts, and bestseller ranks for market entry
- **Catalog enrichment** — import ASIN, title, brand, images, specs into your PIM, ERP, or database
- **Seller intelligence** — identify top sellers, analyze offer distribution
- **Affiliate marketing** — find high-review, high-rating products in profitable niches
- **Competitor analysis** — benchmark products side-by-side with structured attribute data

***

### How It Works

1. **Listing discovery** — fetches search, category, or bestseller pages via fast HTTP
2. **Tiered proxy** — tries cheap datacenter proxy first; auto-escalates to residential on blocks
3. **Browser fallback** — if Amazon shows a captcha, retries with a headless browser
4. **Detail enrichment** — fetches each product page in parallel (5 concurrent by default)
5. **Structured output** — parses 40+ fields and pushes clean JSON to the dataset

**Listing-only mode:** set `scrapeProductDetails: false` for 5–10x faster runs at lower cost when you only need titles, prices, ratings, and ASINs from the search page.

***

### Integrations

Connect your Amazon data to any workflow:

- **Google Sheets** — auto-export results to a spreadsheet
- **Zapier / Make** — trigger actions on new products or price changes
- **Webhooks** — POST results to your backend in real time
- **Slack / Email** — get alerts when prices drop or new products appear
- **Apify Scheduling** — run hourly, daily, or weekly from the Console

***

### More Scrapers by rp\_openpro.ai

Build complete data pipelines by combining our scrapers:

| Actor | What it does | Link |
|---|---|---|
| **Google Maps Scraper** | Business names, emails, phones, socials & marketing tags | [Open](https://apify.com/rp_openpro.ai/google-maps-scraper) |
| **TikTok Ultimate Scraper** | Videos, profiles, hashtags, sounds & Creative Center analytics | [Open](https://apify.com/rp_openpro.ai/tiktok-ultimate-scraper) |
| **Trustpilot Scraper** | Reviews, ratings, company data & sentiment analysis | [Open](https://apify.com/rp_openpro.ai/trustpilot-reviews-scraper) |
| **Contact Details Scraper** | Emails, social media & marketing tags from any website | [Open](https://apify.com/rp_openpro.ai/contact-details-scraper) |
| **Ultimate Leads Generator** | Full lead profiles from a single keyword | [Open](https://apify.com/rp_openpro.ai/ultimate-leads) |
| **LeBonCoin Scraper** | Search, cars, real estate & classified ads from LeBonCoin | [Open](https://apify.com/rp_openpro.ai/leboncoin-scraper) |
| **B2B URL Finder** | Find company websites by keyword or industry | [Open](https://apify.com/rp_openpro.ai/b2b-url-finder) |
| **LinkedIn Profile Scraper** | LinkedIn profiles with email finder — no cookies needed | [Open](https://apify.com/rp_openpro.ai/linkedin-profile-scraper) |

***

### FAQ

**Does this use the official Amazon Product Advertising API?**
No. It scrapes publicly available Amazon web pages — no API keys or Amazon account required.

**Why only ~7 search pages for keyword searches?**
Amazon caps keyword search pagination at approximately 7 pages. For deeper coverage, use a **category URL** combined with search filters, or scrape bestseller lists.

**Which proxy should I use?**
Leave the proxy field **empty** for optimal cost — the actor automatically uses datacenter proxy first and escalates to residential only when needed. Override only if you have specific requirements.

**Can I scrape a single product by ASIN?**
Yes — pass a direct `/dp/ASIN` URL (e.g., `https://www.amazon.com/dp/B07D34L57F`) in `categoryUrls`.

**How do I get listing-only data faster?**
Set `scrapeProductDetails: false` to skip individual product page visits. You'll get titles, prices, ratings, and ASINs from the listing cards — 5–10x faster at lower cost.

**What happens if Amazon blocks a request?**
The actor retries automatically: first with a different proxy tier, then with a headless browser. Most blocks are resolved transparently.

**Can I schedule recurring scrapes?**
Yes — use **Apify Scheduling** in the Console to run hourly, daily, or weekly. Combine with webhooks or Google Sheets export for automated monitoring.

***

### Responsible Use

Scrape only data you are legally allowed to collect. Respect Amazon's Terms of Service and applicable laws in your jurisdiction. This tool is intended for legitimate business intelligence, research, and automation.

# Actor input Schema

## `categoryUrls` (type: `array`):

Amazon search, category, bestseller, or product URLs. Example: https://www.amazon.com/s?k=keyboard or https://www.amazon.com/dp/B08XXXX

## `maxItemsPerStartUrl` (type: `integer`):

Maximum products to scrape for each start URL.

## `maxSearchPagesPerStartUrl` (type: `integer`):

Maximum listing pages to crawl per start URL. Amazon often caps keyword search at ~7 pages — combine category + keyword for deeper coverage.

## `scrapeProductDetails` (type: `boolean`):

When enabled, opens each product page for full metadata (features, specs, seller, images). Disable for faster listing-only mode.

## `useBrowserFallback` (type: `boolean`):

If Amazon returns a captcha/block page over HTTP, retry with a headless browser through your proxy.

## `detailConcurrency` (type: `integer`):

How many product detail pages to scrape in parallel after listing discovery.

## `proxyConfiguration` (type: `object`):

Leave empty for optimal cost — uses fast datacenter proxy with automatic residential fallback on blocks. Override only if you have specific proxy requirements.

## Actor input object example

```json
{
  "categoryUrls": [
    {
      "url": "https://www.amazon.com/s?k=wireless+keyboard"
    },
    {
      "url": "https://www.amazon.com/dp/B07D34L57F"
    }
  ],
  "maxItemsPerStartUrl": 20,
  "maxSearchPagesPerStartUrl": 3,
  "scrapeProductDetails": true,
  "useBrowserFallback": true,
  "detailConcurrency": 5
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

## `products` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "categoryUrls": [
        {
            "url": "https://www.amazon.com/s?k=wireless+keyboard"
        }
    ],
    "maxItemsPerStartUrl": 20,
    "maxSearchPagesPerStartUrl": 3,
    "scrapeProductDetails": true,
    "useBrowserFallback": true,
    "detailConcurrency": 5
};

// Run the Actor and wait for it to finish
const run = await client.actor("rp_openpro.ai/amazon-ultimate-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 = {
    "categoryUrls": [{ "url": "https://www.amazon.com/s?k=wireless+keyboard" }],
    "maxItemsPerStartUrl": 20,
    "maxSearchPagesPerStartUrl": 3,
    "scrapeProductDetails": True,
    "useBrowserFallback": True,
    "detailConcurrency": 5,
}

# Run the Actor and wait for it to finish
run = client.actor("rp_openpro.ai/amazon-ultimate-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 '{
  "categoryUrls": [
    {
      "url": "https://www.amazon.com/s?k=wireless+keyboard"
    }
  ],
  "maxItemsPerStartUrl": 20,
  "maxSearchPagesPerStartUrl": 3,
  "scrapeProductDetails": true,
  "useBrowserFallback": true,
  "detailConcurrency": 5
}' |
apify call rp_openpro.ai/amazon-ultimate-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Amazon Product Scraper | Prices, ASIN & Reviews",
        "description": "Scrape Amazon products without the official API. Extract prices, ASIN, ratings, reviews, brand, images, specs, seller info and breadcrumbs from search, category, bestseller and product URLs. Fast HTTP scraping with automatic browser fallback and residential proxy support.",
        "version": "1.8",
        "x-build-id": "m1HnFxQQSGNcxJxzh"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/rp_openpro.ai~amazon-ultimate-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-rp_openpro.ai-amazon-ultimate-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/rp_openpro.ai~amazon-ultimate-scraper/runs": {
            "post": {
                "operationId": "runs-sync-rp_openpro.ai-amazon-ultimate-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/rp_openpro.ai~amazon-ultimate-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-rp_openpro.ai-amazon-ultimate-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": [
                    "categoryUrls"
                ],
                "properties": {
                    "categoryUrls": {
                        "title": "Amazon start URLs",
                        "type": "array",
                        "description": "Amazon search, category, bestseller, or product URLs. Example: https://www.amazon.com/s?k=keyboard or https://www.amazon.com/dp/B08XXXX"
                    },
                    "maxItemsPerStartUrl": {
                        "title": "Max results (per start URL)",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Maximum products to scrape for each start URL.",
                        "default": 100
                    },
                    "maxSearchPagesPerStartUrl": {
                        "title": "Maximum search pages (per start URL)",
                        "minimum": 1,
                        "maximum": 400,
                        "type": "integer",
                        "description": "Maximum listing pages to crawl per start URL. Amazon often caps keyword search at ~7 pages — combine category + keyword for deeper coverage.",
                        "default": 7
                    },
                    "scrapeProductDetails": {
                        "title": "Scrape product details",
                        "type": "boolean",
                        "description": "When enabled, opens each product page for full metadata (features, specs, seller, images). Disable for faster listing-only mode.",
                        "default": true
                    },
                    "useBrowserFallback": {
                        "title": "Use browser fallback on blocks",
                        "type": "boolean",
                        "description": "If Amazon returns a captcha/block page over HTTP, retry with a headless browser through your proxy.",
                        "default": true
                    },
                    "detailConcurrency": {
                        "title": "Product detail concurrency",
                        "minimum": 1,
                        "maximum": 10,
                        "type": "integer",
                        "description": "How many product detail pages to scrape in parallel after listing discovery.",
                        "default": 5
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration (override)",
                        "type": "object",
                        "description": "Leave empty for optimal cost — uses fast datacenter proxy with automatic residential fallback on blocks. Override only if you have specific proxy requirements."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
