# eBay Sold Listings Scraper — Price Comps & Analytics (`khadinakbar/ebay-sold-comps-analytics-scraper`) Actor

Scrape eBay sold/completed listings and get a price-analytics report: min/max/avg/median, percentiles, sell-through velocity, weekly price trend, and condition breakdown. 8 marketplaces. MCP-ready.

- **URL**: https://apify.com/khadinakbar/ebay-sold-comps-analytics-scraper.md
- **Developed by:** [Khadin Akbar](https://apify.com/khadinakbar) (community)
- **Categories:** E-commerce, MCP servers, Automation
- **Stats:** 1 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 1,000 sold item scrapeds

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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

## eBay Sold Listings Scraper — Price Comps & Analytics

Scrape eBay **sold/completed** listings and get an instant **price-analytics report** in one run: average, median, min/max, percentiles, sell-through velocity, weekly price trend, and breakdowns by condition and listing type. Built for resellers, dropshippers, and AI agents that need to answer one question fast — **"what does this actually sell for?"**

### What you get

Every run returns two kinds of records in the dataset:

1. **Sold-item rows** — one per completed eBay sale (title, sold price, currency, condition, sold date, listing type, bids, shipping, item URL).
2. **One analytics report** — a single summary record (`_isAnalyticsReport: true`) computed across the whole sold sample.

### When to use this actor

- Pricing an item before you list it ("what's the real market price for used AirPods Pro 2?").
- Sourcing decisions — is this product selling, and at what margin?
- Repricing and competitive monitoring against actual sold data, not asking prices.
- Feeding an AI agent structured price comps for a buy/sell decision.

**Not for active listings or product details.** For current live listings, seller info, or item specifics across active + sold + detail modes, use the [eBay Scraper — Listings, Sold Prices & Sellers](https://apify.com/khadinakbar/ebay-all-in-one-scraper). This actor is sold-data + analytics only.

### Output

#### Sold-item record

| Field | Type | Description |
|-------|------|-------------|
| `title` | string | Listing title |
| `soldPrice` | number | Final sold price (local currency) |
| `currency` | string | ISO currency code (USD, GBP, EUR, …) |
| `condition` | string | Item condition as eBay labels it |
| `soldDate` | string | Sale date, `YYYY-MM-DD` (when eBay shows it) |
| `listingType` | string | `auction` or `buy_it_now` |
| `bidsCount` | number\|null | Bids (auctions only) |
| `shippingCost` | number\|null | Shipping cost, `0` if free |
| `shippingType` | string | `free` / `paid` / `local_pickup` / `unknown` |
| `itemUrl` | string | Canonical item URL |
| `imageUrl` | string\|null | Highest-res gallery image |
| `marketplace` | string | eBay domain queried |

#### Analytics report record (`_isAnalyticsReport: true`)

```json
{
  "_isAnalyticsReport": true,
  "searchQuery": "airpods pro 2",
  "marketplace": "ebay.com",
  "currency": "USD",
  "sampleSize": 50,
  "priceStats": {
    "min": 89.99, "max": 219.0, "avg": 168.42, "median": 172.5,
    "p10": 120.0, "p25": 149.99, "p75": 189.0, "p90": 199.99,
    "stddev": 28.31, "sum": 8421.0
  },
  "shipping": { "freeShippingPct": 78.0, "paidShippingCount": 11, "avgPaidShipping": 6.42 },
  "velocity": {
    "firstSoldDate": "2026-05-20", "lastSoldDate": "2026-06-17",
    "spanDays": 28, "itemsPerDay": 1.79, "itemsPerWeek": 12.5
  },
  "timeBuckets": [
    { "weekStart": "2026-05-18", "count": 12, "avgPrice": 165.1, "medianPrice": 170.0 }
  ],
  "conditionBreakdown": {
    "new": { "count": 18, "avgPrice": 192.3, "medianPrice": 195.0, "minPrice": 159.0, "maxPrice": 219.0 },
    "used": { "count": 32, "avgPrice": 154.9, "medianPrice": 158.0, "minPrice": 89.99, "maxPrice": 189.0 }
  },
  "listingTypeBreakdown": {
    "buy_it_now": { "count": 41, "avgPrice": 171.2, "medianPrice": 175.0 },
    "auction": { "count": 9, "avgPrice": 154.0, "medianPrice": 150.0 }
  }
}
````

### Pricing (pay-per-event)

| Event | Price |
|-------|-------|
| Actor start | $0.00005 |
| Sold item scraped | $0.005 / item |
| Analytics report | $0.05 / run |

A typical run of 50 sold items with the report costs about **$0.30**. Set `includeReport: false` to skip the report fee and pay only per item. `maxItems` is a hard cap — billing never exceeds it.

### Input

| Field | Type | Default | Notes |
|-------|------|---------|-------|
| `searchQuery` | string | `airpods pro 2` | Keyword; sold+completed filter added automatically |
| `startUrls` | array | — | eBay search URLs (forced to sold mode); overrides `searchQuery` |
| `marketplace` | enum | `ebay.com` | 8 markets: US/UK/DE/FR/IT/ES/CA/AU |
| `maxItems` | int | `50` | 1–1000, hard billing cap |
| `condition` | enum | `any` | `any` / `new` / `used` / `refurbished` / `open_box` |
| `daysBack` | int | — | Keep only items sold in last N days (≤90) |
| `minPrice` / `maxPrice` | int | — | eBay price filter, local currency |
| `sortBy` | enum | `newest` | `newest` recommended for current pricing |
| `includeReport` | bool | `true` | Append the analytics report |

#### Example

```json
{
  "searchQuery": "rolex submariner",
  "marketplace": "ebay.com",
  "maxItems": 100,
  "condition": "used",
  "daysBack": 30,
  "includeReport": true
}
```

### How it works

- **PlaywrightCrawler (Chromium)** with browser fingerprints — eBay blocks raw HTTP at the TLS layer, so a real browser is required.
- **Country-pinned Apify Residential proxy** — a US IP hitting ebay.de looks like a bot, so the proxy country matches the marketplace.
- **WARMUP priming** — each run primes a residential session against `/robots.txt` before hitting the search page, which cuts first-request blocks.
- **Circuit breaker** — after 3 consecutive blocks with zero results, the run exits cleanly (you pay only the start fee) instead of burning proxy budget.
- **Resource blocking** — images/fonts/CSS/media are aborted for ~3× faster page loads.

### Use with AI agents (MCP)

This actor is exposed in the Apify MCP server as `apify--ebay-sold-comps-analytics-scraper`. Pass a `searchQuery` and read back the analytics report record for a one-shot price comp — ideal for agents making buy/sell or repricing decisions.

### FAQ

**How far back does sold data go?** eBay exposes roughly the last 90 days of sold/completed listings. `daysBack` filters within that window; it cannot retrieve older sales.

**Why are some `soldDate` values null?** eBay does not render a sold date on every card variant. Those items still count toward price stats but are excluded from velocity/time-trend math.

**Why did a run return 0 items?** eBay rate-limits residential proxies transiently. The run exits with a clear status message (no hard failure) — retry, lower `maxItems`, or wait 10–15 minutes.

**Does it scrape active listings?** No — sold/completed only. Use the all-in-one eBay scraper for active listings and product detail.

**Multiple currencies in one report?** The report uses the most common currency in the sample. Pin a single `marketplace` to keep currency consistent.

### Legal

This actor scrapes only publicly available data from eBay search results. It does not log in, bypass authentication, or access private data. You are responsible for complying with eBay's Terms of Service and applicable laws (including data-protection regulations) in your jurisdiction. Use sold-price data for legitimate market-research and pricing purposes. This tool is provided as-is, without warranty.

# Actor input Schema

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

Keyword to search eBay SOLD/completed listings (e.g. 'airpods pro 2'). The actor adds eBay's sold+completed filter automatically, so you do not need to set it. Defaults to 'airpods pro 2'. NOT a product URL — to scrape sold results from a specific eBay search page, use startUrls instead.

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

Optional list of eBay search-result URLs to scrape instead of a keyword. Each URL is forced into sold+completed mode automatically (LH\_Sold=1\&LH\_Complete=1 are injected). Use this for advanced eBay filters you build in the browser. Leave empty to use searchQuery. NOT for /itm/ product-detail URLs.

## `marketplace` (type: `string`):

Which eBay marketplace to query. Picks the domain and pins the residential proxy to the matching country. Defaults to ebay.com (US). Ignored when startUrls are supplied (the URL's own domain wins).

## `maxItems` (type: `integer`):

Maximum number of sold listings to scrape and feed into the analytics report. Range 1–1000. More items give a more accurate price report but cost more. Defaults to 50. This is a hard cap — billing never exceeds it.

## `condition` (type: `string`):

Filter sold listings by item condition. 'any' returns all conditions (default). Use 'new' or 'used' to price a specific condition tier — resellers usually want one or the other, not both mixed.

## `daysBack` (type: `integer`):

Keep only items sold within the last N days (filtered by parsed sold date). eBay exposes roughly the last 90 days of sold history, so values above 90 have no extra effect. Leave empty for all available sold history. Example: 30.

## `minPrice` (type: `integer`):

Optional lower price bound passed to eBay's own filter. Excludes sold listings below this amount, in the marketplace's local currency. Leave empty for no lower bound. NOT a currency-converted value.

## `maxPrice` (type: `integer`):

Optional upper price bound passed to eBay's own filter. Excludes sold listings above this amount, in the marketplace's local currency. Leave empty for no upper bound. NOT a currency-converted value.

## `sortBy` (type: `string`):

Order eBay returns sold results in. 'newest' (default) surfaces the most recent sales first — best for current pricing. 'price\_asc'/'price\_desc' sort by price. Affects which items fill the maxItems cap.

## `includeReport` (type: `boolean`):

When true (default), the actor appends one analytics-report record summarizing the sold sample: min/max/avg/median/percentile prices, sell-through velocity, weekly price trend, and breakdowns by condition and listing type. Set false to get only raw sold-item rows and skip the per-report fee.

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

Proxy settings. The actor uses its built-in residential proxy by default (required — eBay blocks datacenter IPs), so you normally leave this alone. Override only if you want to supply your own residential proxy.

## Actor input object example

```json
{
  "searchQuery": "rolex submariner",
  "marketplace": "ebay.com",
  "maxItems": 5,
  "condition": "any",
  "daysBack": 30,
  "sortBy": "newest",
  "includeReport": true,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

Sold-item rows plus one analytics-report record. Download as JSON, CSV, Excel, HTML, or RSS.

# API

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

## JavaScript example

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

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

// Prepare Actor input
const input = {
    "searchQuery": "airpods pro 2",
    "marketplace": "ebay.com",
    "maxItems": 5,
    "condition": "any",
    "daysBack": 30,
    "sortBy": "newest",
    "includeReport": true
};

// Run the Actor and wait for it to finish
const run = await client.actor("khadinakbar/ebay-sold-comps-analytics-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchQuery": "airpods pro 2",
    "marketplace": "ebay.com",
    "maxItems": 5,
    "condition": "any",
    "daysBack": 30,
    "sortBy": "newest",
    "includeReport": True,
}

# Run the Actor and wait for it to finish
run = client.actor("khadinakbar/ebay-sold-comps-analytics-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchQuery": "airpods pro 2",
  "marketplace": "ebay.com",
  "maxItems": 5,
  "condition": "any",
  "daysBack": 30,
  "sortBy": "newest",
  "includeReport": true
}' |
apify call khadinakbar/ebay-sold-comps-analytics-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=khadinakbar/ebay-sold-comps-analytics-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "eBay Sold Listings Scraper — Price Comps & Analytics",
        "description": "Scrape eBay sold/completed listings and get a price-analytics report: min/max/avg/median, percentiles, sell-through velocity, weekly price trend, and condition breakdown. 8 marketplaces. MCP-ready.",
        "version": "0.1",
        "x-build-id": "Z5X8ghfKOiTsbPOJ7"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/khadinakbar~ebay-sold-comps-analytics-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-khadinakbar-ebay-sold-comps-analytics-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/khadinakbar~ebay-sold-comps-analytics-scraper/runs": {
            "post": {
                "operationId": "runs-sync-khadinakbar-ebay-sold-comps-analytics-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/khadinakbar~ebay-sold-comps-analytics-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-khadinakbar-ebay-sold-comps-analytics-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": {
                    "searchQuery": {
                        "title": "Search query",
                        "type": "string",
                        "description": "Keyword to search eBay SOLD/completed listings (e.g. 'airpods pro 2'). The actor adds eBay's sold+completed filter automatically, so you do not need to set it. Defaults to 'airpods pro 2'. NOT a product URL — to scrape sold results from a specific eBay search page, use startUrls instead."
                    },
                    "startUrls": {
                        "title": "eBay search URLs",
                        "type": "array",
                        "description": "Optional list of eBay search-result URLs to scrape instead of a keyword. Each URL is forced into sold+completed mode automatically (LH_Sold=1&LH_Complete=1 are injected). Use this for advanced eBay filters you build in the browser. Leave empty to use searchQuery. NOT for /itm/ product-detail URLs.",
                        "items": {
                            "type": "object",
                            "properties": {
                                "url": {
                                    "title": "URL",
                                    "type": "string",
                                    "description": "An eBay search-results URL to scrape (forced to sold+completed mode)."
                                }
                            },
                            "required": [
                                "url"
                            ]
                        }
                    },
                    "marketplace": {
                        "title": "Marketplace",
                        "enum": [
                            "ebay.com",
                            "ebay.co.uk",
                            "ebay.de",
                            "ebay.fr",
                            "ebay.it",
                            "ebay.es",
                            "ebay.ca",
                            "ebay.com.au"
                        ],
                        "type": "string",
                        "description": "Which eBay marketplace to query. Picks the domain and pins the residential proxy to the matching country. Defaults to ebay.com (US). Ignored when startUrls are supplied (the URL's own domain wins).",
                        "default": "ebay.com"
                    },
                    "maxItems": {
                        "title": "Max sold items",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Maximum number of sold listings to scrape and feed into the analytics report. Range 1–1000. More items give a more accurate price report but cost more. Defaults to 50. This is a hard cap — billing never exceeds it.",
                        "default": 50
                    },
                    "condition": {
                        "title": "Item condition",
                        "enum": [
                            "any",
                            "new",
                            "used",
                            "refurbished",
                            "open_box"
                        ],
                        "type": "string",
                        "description": "Filter sold listings by item condition. 'any' returns all conditions (default). Use 'new' or 'used' to price a specific condition tier — resellers usually want one or the other, not both mixed.",
                        "default": "any"
                    },
                    "daysBack": {
                        "title": "Sold within last N days",
                        "minimum": 1,
                        "maximum": 90,
                        "type": "integer",
                        "description": "Keep only items sold within the last N days (filtered by parsed sold date). eBay exposes roughly the last 90 days of sold history, so values above 90 have no extra effect. Leave empty for all available sold history. Example: 30."
                    },
                    "minPrice": {
                        "title": "Min price",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Optional lower price bound passed to eBay's own filter. Excludes sold listings below this amount, in the marketplace's local currency. Leave empty for no lower bound. NOT a currency-converted value."
                    },
                    "maxPrice": {
                        "title": "Max price",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Optional upper price bound passed to eBay's own filter. Excludes sold listings above this amount, in the marketplace's local currency. Leave empty for no upper bound. NOT a currency-converted value."
                    },
                    "sortBy": {
                        "title": "Sort order",
                        "enum": [
                            "newest",
                            "best_match",
                            "ending_soon",
                            "price_asc",
                            "price_desc"
                        ],
                        "type": "string",
                        "description": "Order eBay returns sold results in. 'newest' (default) surfaces the most recent sales first — best for current pricing. 'price_asc'/'price_desc' sort by price. Affects which items fill the maxItems cap.",
                        "default": "newest"
                    },
                    "includeReport": {
                        "title": "Include analytics report",
                        "type": "boolean",
                        "description": "When true (default), the actor appends one analytics-report record summarizing the sold sample: min/max/avg/median/percentile prices, sell-through velocity, weekly price trend, and breakdowns by condition and listing type. Set false to get only raw sold-item rows and skip the per-report fee.",
                        "default": true
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Proxy settings. The actor uses its built-in residential proxy by default (required — eBay blocks datacenter IPs), so you normally leave this alone. Override only if you want to supply your own residential proxy.",
                        "default": {
                            "useApifyProxy": true
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
