# Amazon Product Research & Price Intelligence (`ramsford/amazon-product-intelligence`) Actor

Scrape Amazon by ASIN or keyword. Returns price, BSR, rating, review count, seller, availability — plus per-ASIN price-history deltas, price-drop alerts, and review theme mining. Built for FBA sellers and brand managers. Pay per product record.

- **URL**: https://apify.com/ramsford/amazon-product-intelligence.md
- **Developed by:** [Don Johnson](https://apify.com/ramsford) (community)
- **Categories:** E-commerce
- **Stats:** 2 total users, 1 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

$40.00 / 1,000 product records

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

## Amazon Product Research & Price Intelligence

**Production-grade Amazon scraper with built-in price-history tracking, change-delta annotations, price-drop alerts, and review-theme mining.** Built for Amazon FBA sellers, brand managers tracking MAP violations, retail-arbitrage scouts, e-commerce agencies, and price-comparison platforms.

Pay per product record. Run it daily on a watchlist of ASINs and you get an automatic, audited price-and-rank history per product — no separate database needed.

---

### What you get per product

Every Amazon product page is parsed into a normalised record:

```json
{
  "asin": "B08N5WRWNW",
  "marketplace": "amazon.com",
  "title": "Echo Dot (4th Gen) | Smart speaker with Alexa | Charcoal",
  "brand": "Amazon",
  "price": 29.99,
  "currency": "USD",
  "listPrice": 49.99,
  "discountPct": 40,
  "rating": 4.7,
  "reviewCount": 547213,
  "bsr": {
    "top": { "rank": 4, "category": "Electronics" },
    "all": [
      { "rank": 4, "category": "Electronics" },
      { "rank": 1, "category": "Amazon Devices & Accessories" }
    ]
  },
  "availability": "In Stock",
  "inStock": true,
  "seller": "Amazon.com",
  "fulfilledByAmazon": true,
  "prime": true,
  "coupon": null,
  "imageUrl": "https://m.media-amazon.com/images/I/...jpg",
  "breadcrumbs": ["Electronics", "Smart Home", "Smart Speakers"],
  "priceHistory": [
    { "takenAt": "2026-05-13T08:00:00Z", "price": 34.99, "inStock": true, "seller": "Amazon.com" },
    { "takenAt": "2026-05-14T08:00:00Z", "price": 32.99, "inStock": true, "seller": "Amazon.com" },
    { "takenAt": "2026-05-15T08:00:00Z", "price": 29.99, "inStock": true, "seller": "Amazon.com" }
  ],
  "priceDelta": {
    "previousPrice": 32.99,
    "previousAt": "2026-05-14T08:00:00Z",
    "deltaAbsolute": -3.00,
    "deltaPercent": -9.09,
    "direction": "down"
  },
  "priceAlert": false,
  "url": "https://www.amazon.com/dp/B08N5WRWNW"
}
````

And if `extractReviews` is on, you also get one `recordType: "reviews"` record per ASIN with:

```json
{
  "asin": "B08N5WRWNW",
  "recordType": "reviews",
  "sampleSize": 20,
  "averageRating": 4.65,
  "themesPositive": [
    { "theme": "Easy to use", "count": 11 },
    { "theme": "Great value", "count": 7 },
    { "theme": "High quality", "count": 5 }
  ],
  "themesNegative": [
    { "theme": "Hard to set up", "count": 2 }
  ],
  "topPositive": [ /* 3 most-helpful 4–5★ reviews */ ],
  "topNegative": [ /* 3 most-helpful 1–2★ reviews */ ]
}
```

***

### Input

```json
{
  "asins": ["B08N5WRWNW", "B09B8V1LZ3"],
  "keyword": "wireless earbuds",
  "category": "electronics",
  "maxSearchResults": 20,
  "marketplace": "amazon.com",
  "extractReviews": true,
  "maxReviewsPerProduct": 20,
  "priceAlertThreshold": 10,
  "proxy": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}
```

You must supply at least one of `asins` or `keyword`. They can be combined: the keyword adds top search results to the ASIN watchlist for the same run.

| Field | Purpose |
| --- | --- |
| `asins` | Watchlist of 10-char ASINs to scrape. |
| `keyword` | Amazon search term; top results' ASINs are added to the run. |
| `category` | Amazon category alias (e.g. `electronics`, `books`, `kitchen`) to scope keyword search. |
| `maxSearchResults` | How many top search results to capture per keyword. |
| `marketplace` | `amazon.com` (default), `amazon.co.uk`, `amazon.de`, `amazon.co.jp`, etc. |
| `extractReviews` | If `true`, emit a separate review-summary record per ASIN. |
| `maxReviewsPerProduct` | Cap on reviews pulled per product. |
| `priceAlertThreshold` | % drop vs prior run that triggers `priceAlert: true`. `0` disables. |
| `proxy` | Apify proxy config — residential strongly recommended. |

***

### How the price-history layer works

Every run, for every ASIN, the Actor appends to a `price-history` key in the `amazon-price-history` key-value store, keyed by marketplace + ASIN. The dataset record includes the full rolling history (last 50 points) and a `priceDelta` block comparing this run to the most recent prior price.

That means: **schedule this Actor daily, and after a week you have a per-ASIN price chart with zero extra wiring.** Hook the dataset into Make, Zapier, or a Google Sheet via Apify integrations and you have a working price-monitoring product.

`priceAlert` is set to `true` when the current price is at least `priceAlertThreshold` % below the most recent stored price — pipe that boolean into Slack, email, or your reorder workflow.

***

### How the review mining works

Reviews are pulled from `/product-reviews/{asin}` (most-helpful sort). Each review is bucketed positive (4–5★) or negative (1–2★), then matched against a library of common e-commerce themes — *Easy to use*, *Great value*, *Cheap build*, *Sizing issues*, *Broke quickly*, etc. The result: a ranked list of *what reviewers love and complain about*, plus the 3 most-helpful reviews on each side. Pure rule-based, no LLM cost.

***

### Anti-bot strategy

Amazon aggressively throttles unauthenticated scrapers. This Actor:

- Uses Apify **residential proxy** by default (`RESIDENTIAL` group).
- Uses Crawlee's session pool with cookie persistence, capped at 25 requests per session.
- Retires sessions and retries with a fresh IP on captcha/robot-wall detection.
- Throws on empty product pages so retries kick in instead of writing junk records.

If you have a low Apify proxy budget, switch to `apifyProxyGroups: []` (datacenter) — works at smaller scales but expect higher captcha rates.

***

### Pricing

**Pay-Per-Event:** one PPE event per *product record*. (Review records do not separately charge.) Suggested retail: **$0.04 / product record** — competitive with established Amazon scrapers on the marketplace and aligned to actual unit value.

Worked examples:

- Track 100 ASINs daily for a month → 3,000 records → ~$120/mo. Replaces a $200–$500/mo Keepa or Helium 10 plan for users who just need the raw signal.
- One-off market research scan of 500 keyword results → 500 records → ~$20.
- BSR monitor on a top-20 category, hourly → 480 records/day → ~$19/day.

Compared to commercial Amazon data APIs ($0.10–$0.30 / call at low volume), this is 2–7× cheaper and you keep the full normalized JSON.

***

### Use Cases

#### FBA competitor watchlist

Schedule daily on the ASIN list of your 50 nearest competitors. Pipe `priceAlert: true` into Slack. Re-price within an hour of any competitor drop.

#### MAP-violation monitoring (brand managers)

Pass your branded ASINs and the marketplaces you sell on. Any record where `price < MAP_floor` is a violation you can flag to your channel team.

#### Retail arbitrage scout

Run with `keyword` = a clearance category and `priceAlertThreshold = 30`. Each run surfaces sudden 30%+ drops on a hot search.

#### BSR category monitor

Run with `keyword` = the category seed term and `maxSearchResults = 50` daily. Track `bsr.top.rank` movement to see which products are gaining/losing momentum in the category.

#### Pricing-platform data layer

If you're building a Keepa-style price comparison tool, this Actor is the ingestion layer. The price-history key-value store is the audited source of truth — no separate DB needed for an MVP.

***

### Differentiation vs other Amazon actors on the marketplace

| Capability | This actor | Most marketplace scrapers |
| --- | --- | --- |
| Built-in price-history rolling window | ✅ key-value store, per ASIN | ❌ external storage required |
| Change-delta annotation on every record | ✅ `priceDelta` block | ❌ |
| Price-drop alerts (threshold flag) | ✅ `priceAlert: true` | ❌ |
| Review theme mining (positive/negative) | ✅ rule-based, no LLM cost | ❌ raw reviews only |
| BSR multi-category capture | ✅ `bsr.all[]` | ⚠️ usually just top rank |
| Combined ASIN + keyword input | ✅ both in one run | ⚠️ usually one or the other |
| 12 marketplaces (US, EU, JP, BR, MX, etc.) | ✅ | ⚠️ usually US-only |

***

### Output

Two dataset record types:

1. **Product record** — one per ASIN, includes all product fields, price history, and delta. Charged as one PPE event.
2. **Review record** — one per ASIN when `extractReviews=true`, with theme summary and top reviews. Not charged.

Plus a `SUMMARY` key in the default key-value store with the run roll-up.

***

### FAQ

**Q: Does this work for amazon.in / amazon.co.jp / amazon.de?**
Yes — set `marketplace` accordingly. Selectors are the same across Amazon domains.

**Q: How do I track price over time without re-running?**
Each run appends to a persistent key-value store. After N runs you have N data points per ASIN, embedded in every dataset record's `priceHistory[]`.

**Q: How do I get a 6-month BSR trend?**
Schedule this actor daily for 180 days. The `priceHistory[]` block holds last 50 points — for longer windows, sink the dataset into BigQuery or Google Sheets via Apify integrations and query from there.

**Q: Can I just get a CSV?**
Apify's dataset view exports CSV directly. All fields flatten cleanly, including `priceDelta.deltaPercent` and `bsr.top.rank`.

**Q: Will Amazon block me?**
Residential proxy + session pool handles 99% of regular use. Very large concurrent jobs may hit captcha — reduce `maxSearchResults` or scale by running with smaller ASIN batches.

***

### Support

Open an Apify Console issue on this actor's page, or contact Johnson AI Consulting.

# Actor input Schema

## `asins` (type: `array`):

List of Amazon ASINs to scrape (e.g. 'B08N5WRWNW'). Use this OR 'keyword' (or both).

## `keyword` (type: `string`):

Amazon keyword search. Use alone or alongside ASINs. The top 'maxSearchResults' products are pulled.

## `category` (type: `string`):

Amazon category alias for keyword search (e.g. 'electronics', 'books', 'kitchen'). Leave blank for all departments.

## `maxSearchResults` (type: `integer`):

When 'keyword' is set, how many top results to fetch product pages for.

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

Amazon marketplace domain. Defaults to amazon.com (US).

## `extractReviews` (type: `boolean`):

Pull top reviews and emit a positive/negative theme summary (no AI cost — local heuristics).

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

How many top reviews to fetch when 'extractReviews' is on.

## `priceAlertThreshold` (type: `integer`):

If the current price is at least this % below the most recent stored price, the record is flagged with 'priceAlert: true'. Set to 0 to disable.

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

Apify proxy. Residential is strongly recommended for Amazon.

## Actor input object example

```json
{
  "asins": [
    "B08N5WRWNW",
    "B09B8V1LZ3"
  ],
  "keyword": "wireless earbuds",
  "maxSearchResults": 20,
  "marketplace": "amazon.com",
  "extractReviews": true,
  "maxReviewsPerProduct": 20,
  "priceAlertThreshold": 10,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# 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 = {
    "proxy": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("ramsford/amazon-product-intelligence").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 = { "proxy": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    } }

# Run the Actor and wait for it to finish
run = client.actor("ramsford/amazon-product-intelligence").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 '{
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call ramsford/amazon-product-intelligence --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Amazon Product Research & Price Intelligence",
        "description": "Scrape Amazon by ASIN or keyword. Returns price, BSR, rating, review count, seller, availability — plus per-ASIN price-history deltas, price-drop alerts, and review theme mining. Built for FBA sellers and brand managers. Pay per product record.",
        "version": "0.5",
        "x-build-id": "5aaRZxUr81vRWYddo"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/ramsford~amazon-product-intelligence/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-ramsford-amazon-product-intelligence",
                "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/ramsford~amazon-product-intelligence/runs": {
            "post": {
                "operationId": "runs-sync-ramsford-amazon-product-intelligence",
                "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/ramsford~amazon-product-intelligence/run-sync": {
            "post": {
                "operationId": "run-sync-ramsford-amazon-product-intelligence",
                "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": {
                    "asins": {
                        "title": "ASINs",
                        "type": "array",
                        "description": "List of Amazon ASINs to scrape (e.g. 'B08N5WRWNW'). Use this OR 'keyword' (or both).",
                        "items": {
                            "type": "string"
                        }
                    },
                    "keyword": {
                        "title": "Keyword search",
                        "type": "string",
                        "description": "Amazon keyword search. Use alone or alongside ASINs. The top 'maxSearchResults' products are pulled."
                    },
                    "category": {
                        "title": "Category filter (optional)",
                        "type": "string",
                        "description": "Amazon category alias for keyword search (e.g. 'electronics', 'books', 'kitchen'). Leave blank for all departments."
                    },
                    "maxSearchResults": {
                        "title": "Max search results per keyword",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": "When 'keyword' is set, how many top results to fetch product pages for.",
                        "default": 20
                    },
                    "marketplace": {
                        "title": "Marketplace domain",
                        "enum": [
                            "amazon.com",
                            "amazon.co.uk",
                            "amazon.de",
                            "amazon.fr",
                            "amazon.it",
                            "amazon.es",
                            "amazon.ca",
                            "amazon.com.au",
                            "amazon.co.jp",
                            "amazon.in",
                            "amazon.com.mx",
                            "amazon.com.br"
                        ],
                        "type": "string",
                        "description": "Amazon marketplace domain. Defaults to amazon.com (US).",
                        "default": "amazon.com"
                    },
                    "extractReviews": {
                        "title": "Extract & summarise reviews",
                        "type": "boolean",
                        "description": "Pull top reviews and emit a positive/negative theme summary (no AI cost — local heuristics).",
                        "default": true
                    },
                    "maxReviewsPerProduct": {
                        "title": "Max reviews per product",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "integer",
                        "description": "How many top reviews to fetch when 'extractReviews' is on.",
                        "default": 20
                    },
                    "priceAlertThreshold": {
                        "title": "Price-drop alert threshold (%)",
                        "minimum": 0,
                        "maximum": 90,
                        "type": "integer",
                        "description": "If the current price is at least this % below the most recent stored price, the record is flagged with 'priceAlert: true'. Set to 0 to disable.",
                        "default": 10
                    },
                    "proxy": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Apify proxy. Residential is strongly recommended for Amazon.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
