# MercadoLibre Review Scraper (`sourabhbgp/mercadolibre-review-scraper`) Actor

Pull MercadoLibre product reviews (reseñas y opiniones) across all nine Latin-American marketplaces — Mexico, Brazil, Argentina, Chile, Colombia, Peru, Uruguay, Ecuador, Dominican Republic. One row per review with rating, title, text, date, helpful votes, and reviewer photos. $1 per 1,000 reviews.

- **URL**: https://apify.com/sourabhbgp/mercadolibre-review-scraper.md
- **Developed by:** [Sourabh Kumar](https://apify.com/sourabhbgp) (community)
- **Categories:** E-commerce, Marketing
- **Stats:** 3 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

$1.00 / 1,000 results

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

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

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

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

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

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

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

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

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

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

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


# README

### MercadoLibre reviews & reseñas – Mexico, Brazil, Argentina & 6 more

Pull product reviews — *reseñas y opiniones* — from MercadoLibre across all nine Latin-American marketplaces. One row per review: rating, title, text, date, helpful-votes, and any photos the buyer attached.

Works in 🇲🇽 MX, 🇦🇷 AR, 🇧🇷 BR, 🇨🇱 CL, 🇨🇴 CO, 🇵🇪 PE, 🇺🇾 UY, 🇪🇨 EC, and 🇩🇴 DO — country is auto-detected from each product URL.

**$1 per 1,000 reviews. No per-run fee.**

### Why this scraper?

- 🌎 **Nine LATAM countries**, one actor. Mix MX, BR, AR, CL in a single run — no per-country setup.
- 📦 **Deep review coverage.** Sweeps every rating and sort order in parallel to pull every public review the listing exposes.
- ⚡ **Fast & parallel.** Multiple products and rating buckets run concurrently; tune throughput with one input field.
- 🔌 **HTTP-only.** No browser, no Cloudflare drama, no 1-minute warm-up.
- 🧾 **Reviewer photos included** when buyers attach them — perfect for visual QA and complaint clustering.
- 🌐 **Native Spanish & Portuguese preserved.** Accents, ñ, ã, ç all returned exactly as written.
- 🔁 **Paste any URL format:** catalog `…/p/MLM…`, article `articulo.*/MLM-…`, or just the raw ID.
- 🛡️ **Built-in proxy retry** routes around the occasional blocked IP without your involvement.

### What data can you extract?

<table>
<tr>
<td>⭐ Star rating (1–5)</td>
<td>📝 Review title</td>
<td>💬 Review body text</td>
<td>📅 Review date</td>
</tr>
<tr>
<td>👍 Helpful votes</td>
<td>📷 Reviewer photos</td>
<td>🎨 Product variant reviewed</td>
<td>🌍 Reviewer country</td>
</tr>
<tr>
<td>🆔 Unique review ID</td>
<td>🛒 Product ID</td>
<td>🔗 Source product URL</td>
<td>🏷️ Marketplace site ID</td>
</tr>
<tr>
<td>🇲🇽🇧🇷🇦🇷 Country code</td>
<td>🕒 Scraped-at timestamp</td>
</tr>
</table>

### How to scrape MercadoLibre reviews: step by step

1. [Create a free Apify account](https://console.apify.com/sign-up). Takes 30 seconds, no card needed.
2. Open [MercadoLibre Review Scraper](https://console.apify.com/actors/rpbTcgcCWE8vjePr8?addFromActorId=rpbTcgcCWE8vjePr8) in the Apify Console.
3. Paste one or more product URLs (any country, any URL format).
4. Click **Start**.
5. Export as JSON, CSV, or Excel — or fetch via API.

### Input

```json
{
  "productUrls": [
    "https://www.mercadolibre.com.mx/apple-iphone-15-256-gb-negro/p/MLM27172669",
    "https://www.mercadolivre.com.br/p/MLB23163729",
    "https://www.mercadolibre.com.ar/p/MLA32636837"
  ],
  "maxReviewsPerProduct": 0,
  "reviewRating": "all",
  "reviewOrder": "relevance",
  "maxConcurrency": 8,
  "useResidentialProxy": true
}
````

| Field | Type | Default | Notes |
|---|---|---|---|
| `productUrls` | array | required | Catalog `/p/MLM…`, article `articulo.*/MLM-…`, or raw IDs like `MLM27172669`. |
| `maxReviewsPerProduct` | integer | 100 | Per-product cap. `0` = unlimited. |
| `reviewRating` | enum | `all` | `all`, `1`, `2`, `3`, `4`, `5`. `all` runs the full deep sweep. |
| `reviewOrder` | enum | `relevance` | `relevance` or `dateCreated` (newest first). Only used when `reviewRating` is a specific star. |
| `country` | enum | `MX` | Fallback when a URL doesn't include a country signal (rare). |
| `maxConcurrency` | integer | 8 | Parallel slice tasks across the run. |
| `useResidentialProxy` | boolean | `true` | Keeps yield high across LATAM IPs. |

#### Star-rating filter (only negatives, only positives, etc.)

```json
{
  "productUrls": ["https://www.mercadolibre.com.mx/p/MLM27172669"],
  "reviewRating": "1",
  "reviewOrder": "dateCreated",
  "maxReviewsPerProduct": 200
}
```

### Output

One JSON record per review:

```json
{
  "country": "MX",
  "siteId": "MLM",
  "productId": "MLM27172669",
  "productUrl": "https://www.mercadolibre.com.mx/p/MLM27172669",
  "reviewId": 803375213,
  "reviewRating": 5,
  "reviewTitle": "excelente",
  "reviewText": "Producto chino pero 100% original, tomando en cuenta que todos los iphone se producen en china, solo cambia el empaquetado para el país que va a ser distribuido…",
  "reviewDate": "21 nov 2023",
  "reviewCountry": null,
  "reviewLikes": 2434,
  "reviewMedia": [
    "https://http2.mlstatic.com/D_NQ_NP_2X_698307-MLA72919050762_112023-O.webp"
  ],
  "reviewVariant": "",
  "scrapedAt": "2026-05-13T07:24:02.571Z"
}
```

### Multi-country & multi-language

Reviews come back in the buyer's original language — Spanish in MX/AR/CL/CO/PE/UY/EC/DO, Portuguese in BR — with all native characters preserved.

Mix countries freely in a single run; country is read off the URL:

```json
{
  "productUrls": [
    "https://www.mercadolibre.com.mx/p/MLM27172669",
    "https://www.mercadolivre.com.br/p/MLB23163729",
    "https://www.mercadolibre.com.ar/p/MLA32636837",
    "https://www.mercadolibre.cl/p/MLC18659729",
    "https://www.mercadolibre.com.co/p/MCO25397329",
    "https://www.mercadolibre.com.pe/p/MPE23363858",
    "https://www.mercadolibre.com.uy/p/MLU18609282",
    "https://www.mercadolibre.com.ec/p/MEC23069364"
  ]
}
```

### How much does MercadoLibre Review Scraper cost?

Pay-per-result pricing. You pay **$1 for 1,000 reviews** — flat, regardless of country or rating filter. No per-run fee.

The Apify Free plan gives you $5 in usage credits a month, enough for around **5,000 reviews**. The $29/month Starter plan covers about **29,000 reviews** per month. No subscription lock-in — pause whenever.

### Use cases

- 🔍 **Product research before launch.** Read what real LATAM buyers say about competing SKUs — pain points, missing features, packaging complaints — before you ship your own.
- 📉 **Returns & complaint analysis.** Filter to 1- and 2-star reviews to surface recurring defects, fakes, or shipping issues.
- 🏆 **Competitive benchmarking.** Compare star distributions and review volume across competing products in the same category.
- 📷 **Visual quality monitoring.** Reviewer photos reveal damage, fakes, and packaging variations no listing image will show.
- 🌎 **Cross-market comparison.** Is the same product loved in Mexico but hated in Brazil? Run both URLs side by side.
- 🧠 **Sentiment & topic modeling.** Feed raw review text into an LLM or NLP pipeline for theme extraction, language by language.
- 📈 **Listing optimization.** Spot the phrases buyers use to describe what they like — then echo them in your own title and description.
- 🛒 **Marketplace seller monitoring.** Track review trends on your own SKUs over time and catch quality slippage early.

### FAQ

#### How much does this cost?

Pay-per-result: **$1 per 1,000 reviews**. No per-run fee. Free plan ($5 credit) covers ~5,000 reviews/month; Starter plan ($29) covers ~29,000.

#### Is it legal to scrape MercadoLibre?

Scraping public data is generally allowed in the US and most of the EU, as long as you don't collect personal data covered by GDPR or CCPA without a lawful basis. This actor only touches publicly accessible review pages, but how you use the output is on you.

Apify's full breakdown: [Is web scraping legal?](https://blog.apify.com/is-web-scraping-legal/).

#### Can I integrate this with other tools?

Push results into **Make, Zapier, Slack, Airbyte, GitHub, Google Sheets, Google Drive**, and more. Apify treats every actor as a webhook source, so anything that consumes webhooks or pulls from an API works.

Full list: [Apify integrations](https://docs.apify.com/platform/integrations).

#### Can I use this with the Apify API?

Yes. Every run is available via the Apify REST API:

```bash
curl -X POST "https://api.apify.com/v2/acts/sourabhbgp~mercadolibre-review-scraper/runs?token=APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"productUrls":["https://www.mercadolibre.com.mx/p/MLM27172669"]}'
```

Docs: [Apify API reference](https://docs.apify.com/api/v2).

#### Can I use this through an MCP server?

Yes. Apify ships an MCP server that exposes every actor as a tool, so Claude Desktop, Cursor, and any other MCP-capable client can call this scraper. Setup: [Apify MCP docs](https://docs.apify.com/platform/integrations/mcp).

### Your feedback

Bug, missing field, or odd behavior? Drop a note in the [Issues tab](https://console.apify.com/actors/rpbTcgcCWE8vjePr8/issues). Reports go to a human and fixes usually ship the same week.

# Actor input Schema

## `productUrls` (type: `array`):

One or more MercadoLibre product URLs. Accepts catalog URLs (.../p/MLM…), article URLs (articulo.\*/MLM-…), or raw IDs (e.g., MLM27172669). Country is auto-detected from each URL.

## `maxReviewsPerProduct` (type: `integer`):

Maximum reviews to return for each product. 0 = unlimited.

## `country` (type: `string`):

Fallback marketplace when a URL doesn't include a country signal. Country is auto-detected from the URL — this only applies if you paste a raw ID with no country prefix.

## `reviewRating` (type: `string`):

Scrape only reviews with this star rating. The default 'all' triggers a deep sweep — every rating and sort order in parallel — to recover the maximum unique reviews per product.

## `reviewOrder` (type: `string`):

Sort order. 'relevance' is MercadoLibre's helpfulness-ranked default; 'dateCreated' returns newest first. Only takes effect when Rating Filter is a specific rating (1–5) — when filter is 'all', both sorts run in parallel as part of the deep sweep.

## `maxConcurrency` (type: `integer`):

Maximum parallel requests across all (product × rating × sort) slice tasks. 8 is a safe default; bump up for large batches (50+ products) if you see throughput stalling. Capped at 24.

## `useResidentialProxy` (type: `boolean`):

Enable residential proxy fallback when MercadoLibre serves a 'suspicious traffic' page to the datacenter IP. Required on Apify because Apify datacenter has no LATAM IPs. Costs ~$8/GB residential traffic on top of actor pricing.

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

Alias for Product URLs — accepts the same formats. Useful if you're chaining this actor after another scraper that emits 'startUrls'.

## Actor input object example

```json
{
  "productUrls": [
    "https://www.mercadolibre.com.mx/apple-iphone-15-256-gb-negro/p/MLM27172669"
  ],
  "maxReviewsPerProduct": 100,
  "country": "MX",
  "reviewRating": "all",
  "reviewOrder": "relevance",
  "maxConcurrency": 8,
  "useResidentialProxy": true,
  "startUrls": []
}
```

# Actor output Schema

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

View the scraped reviews in the dataset.

# 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 = {
    "productUrls": [
        "https://www.mercadolibre.com.mx/apple-iphone-15-256-gb-negro/p/MLM27172669"
    ],
    "maxReviewsPerProduct": 100,
    "startUrls": []
};

// Run the Actor and wait for it to finish
const run = await client.actor("sourabhbgp/mercadolibre-review-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 = {
    "productUrls": ["https://www.mercadolibre.com.mx/apple-iphone-15-256-gb-negro/p/MLM27172669"],
    "maxReviewsPerProduct": 100,
    "startUrls": [],
}

# Run the Actor and wait for it to finish
run = client.actor("sourabhbgp/mercadolibre-review-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 '{
  "productUrls": [
    "https://www.mercadolibre.com.mx/apple-iphone-15-256-gb-negro/p/MLM27172669"
  ],
  "maxReviewsPerProduct": 100,
  "startUrls": []
}' |
apify call sourabhbgp/mercadolibre-review-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "MercadoLibre Review Scraper",
        "description": "Pull MercadoLibre product reviews (reseñas y opiniones) across all nine Latin-American marketplaces — Mexico, Brazil, Argentina, Chile, Colombia, Peru, Uruguay, Ecuador, Dominican Republic. One row per review with rating, title, text, date, helpful votes, and reviewer photos. $1 per 1,000 reviews.",
        "version": "0.0",
        "x-build-id": "ByUzOpVps5SwUej5b"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/sourabhbgp~mercadolibre-review-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-sourabhbgp-mercadolibre-review-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/sourabhbgp~mercadolibre-review-scraper/runs": {
            "post": {
                "operationId": "runs-sync-sourabhbgp-mercadolibre-review-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/sourabhbgp~mercadolibre-review-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-sourabhbgp-mercadolibre-review-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": [
                    "productUrls"
                ],
                "properties": {
                    "productUrls": {
                        "title": "Product URLs",
                        "type": "array",
                        "description": "One or more MercadoLibre product URLs. Accepts catalog URLs (.../p/MLM…), article URLs (articulo.*/MLM-…), or raw IDs (e.g., MLM27172669). Country is auto-detected from each URL.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxReviewsPerProduct": {
                        "title": "Max Reviews Per Product",
                        "minimum": 0,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Maximum reviews to return for each product. 0 = unlimited.",
                        "default": 100
                    },
                    "country": {
                        "title": "Country (fallback)",
                        "enum": [
                            "MX",
                            "AR",
                            "BR",
                            "EC",
                            "DO",
                            "CL",
                            "CO",
                            "PE",
                            "UY"
                        ],
                        "type": "string",
                        "description": "Fallback marketplace when a URL doesn't include a country signal. Country is auto-detected from the URL — this only applies if you paste a raw ID with no country prefix.",
                        "default": "MX"
                    },
                    "reviewRating": {
                        "title": "Review Rating Filter",
                        "enum": [
                            "all",
                            "1",
                            "2",
                            "3",
                            "4",
                            "5"
                        ],
                        "type": "string",
                        "description": "Scrape only reviews with this star rating. The default 'all' triggers a deep sweep — every rating and sort order in parallel — to recover the maximum unique reviews per product.",
                        "default": "all"
                    },
                    "reviewOrder": {
                        "title": "Review Sort Order",
                        "enum": [
                            "relevance",
                            "dateCreated"
                        ],
                        "type": "string",
                        "description": "Sort order. 'relevance' is MercadoLibre's helpfulness-ranked default; 'dateCreated' returns newest first. Only takes effect when Rating Filter is a specific rating (1–5) — when filter is 'all', both sorts run in parallel as part of the deep sweep.",
                        "default": "relevance"
                    },
                    "maxConcurrency": {
                        "title": "Max Concurrency",
                        "minimum": 1,
                        "maximum": 24,
                        "type": "integer",
                        "description": "Maximum parallel requests across all (product × rating × sort) slice tasks. 8 is a safe default; bump up for large batches (50+ products) if you see throughput stalling. Capped at 24.",
                        "default": 8
                    },
                    "useResidentialProxy": {
                        "title": "Use Residential Proxy (paid plans)",
                        "type": "boolean",
                        "description": "Enable residential proxy fallback when MercadoLibre serves a 'suspicious traffic' page to the datacenter IP. Required on Apify because Apify datacenter has no LATAM IPs. Costs ~$8/GB residential traffic on top of actor pricing.",
                        "default": true
                    },
                    "startUrls": {
                        "title": "Start URLs (alias)",
                        "type": "array",
                        "description": "Alias for Product URLs — accepts the same formats. Useful if you're chaining this actor after another scraper that emits 'startUrls'.",
                        "items": {
                            "type": "string"
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
