# Chrome Extensions Scraper (`maximedupre/chrome-extensions-scraper`) Actor

Scrape Chrome Web Store extensions by URL, ID, keyword, category, or top chart. Export names, ratings, users, publisher contacts, manifests, permissions, media, privacy links, and related extensions.

- **URL**: https://apify.com/maximedupre/chrome-extensions-scraper.md
- **Developed by:** [Maxime Dupré](https://apify.com/maximedupre) (community)
- **Categories:** Developer tools, Marketing
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.90 / 1,000 scraped extensions

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

### 🧩 Chrome extensions scraper for Web Store data

Chrome Extensions Scraper collects public extension data from the [Chrome Web Store](https://chromewebstore.google.com/). Use this chrome extensions scraper to look up exact extensions, search by keyword, browse category targets, or pull top-chart results without opening each listing by hand.

Each successful row keeps the Chrome Web Store identity, source URL, name, summary, rating, user count, publisher contact fields, version, size, manifest, permissions, media, privacy links, and related extensions when the source exposes them. It is built for extension market research, security reviews, prospecting, publisher research, competitor lists, and repeatable Chrome Web Store exports.

You do not need a Chrome account, Google account, cookies, or a source API key. For a quick first run, keep the prefilled targets and lower `Results per discovery target` if you only want a small preview dataset.

### ✅ What this Actor does

- Looks up Chrome Web Store extensions from full listing URLs or 32-character extension IDs.
- Searches extensions by keyword, such as `password manager` or `ad blocker`.
- Reads category URLs and supported category slugs, such as `productivity`.
- Reads global top-chart targets with `top` and category top targets with `top:<category-slug>`.
- Saves one clean dataset row per successful extension or compatible theme result.
- Enriches discovered items with detail-page fields before saving them.
- Filters by minimum rating, minimum user count, verified publisher/listing status, and featured status when Chrome Web Store exposes those facts.
- Returns manifest and permission fields for extension audit workflows.
- Skips failed, private, missing, or unsupported targets instead of mixing error rows into the dataset.

### 📦 Data you can extract

Each row can include:

- `extensionId`, `name`, and `url`
- `summary` and `description`
- `categories`
- `version`, `updatedDate`, `createdDate`, `size`, and `minChromeVersion`
- `rating`, `ratingCount`, `userCount`, `installCount`, `featured`, and `verified`
- `publisher` details such as name, website, email, phone, company, contact person, and address when publicly listed
- `supportUrl`, `privacyPolicyUrl`, and `bugTrackerUrl`
- `media` with icon, small icon, header image, screenshots, and video URLs
- `languages`
- `manifest` with manifest version, extension version, permissions, host permissions, content-script and service-worker indicators, and the parsed raw manifest
- `privacy` details when mapped from the listing
- `relatedExtensions` with IDs, names, URLs, icons, and source order
- `discovery` target and rank for search, category, and top-chart rows

Fields can be `null` or empty when Chrome Web Store does not expose that fact for a listing.

### 🎯 Input options

Add one target per row in `Chrome Web Store targets`.

Supported target formats:

- Full extension URL: `https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm`
- Bare extension ID: `cjpalhdlnbpafiamejdnhcphjbkeiagm`
- Search keyword: `password manager`
- Category URL or category slug: `productivity`
- Top chart: `top`
- Category top chart: `top:productivity`

`Results per discovery target` caps rows saved for search, category, and top-chart targets. Direct URL and ID targets return one matching row.

Use the filters when you want a smaller market list:

- `Minimum rating`
- `Minimum users`
- `Verified publishers only`
- `Featured extensions only`

### 🚀 How to run it

1. Open the Input tab.
2. Add Chrome Web Store URLs, IDs, keywords, categories, or top-chart targets.
3. Keep `Results per discovery target` small for your first run.
4. Add rating, user, verified, or featured filters only when you need them.
5. Run the Actor and open the dataset.

You can export the dataset as JSON, CSV, Excel, XML, RSS, or HTML. You can also run the Actor through the Apify API, schedule repeat runs, or connect results to webhooks and integrations.

### 🧾 Output example

```json
{
	"extensionId": "cjpalhdlnbpafiamejdnhcphjbkeiagm",
	"name": "uBlock Origin",
	"url": "https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm",
	"summary": "Finally, an efficient wide-spectrum content blocker.",
	"description": "uBlock Origin is a free, open-source browser extension...",
	"categories": ["Productivity"],
	"version": "1.62.0",
	"updatedDate": "2025-01-13",
	"createdDate": null,
	"size": "3.8MiB",
	"minChromeVersion": "88",
	"rating": 4.7,
	"ratingCount": 31420,
	"userCount": 10000000,
	"installCount": null,
	"featured": true,
	"verified": true,
	"publisher": {
		"name": "Raymond Hill",
		"websiteUrl": "https://ublockorigin.com",
		"email": null,
		"phone": null,
		"company": null,
		"contactPerson": null,
		"address": null
	},
	"supportUrl": "https://github.com/gorhill/uBlock",
	"privacyPolicyUrl": "https://github.com/gorhill/uBlock/wiki/Privacy-policy",
	"bugTrackerUrl": "https://github.com/gorhill/uBlock/issues",
	"media": {
		"iconUrl": "https://lh3.googleusercontent.com/example-icon.png",
		"smallIconUrl": "https://lh3.googleusercontent.com/example-small-icon.png",
		"headerImageUrl": "https://lh3.googleusercontent.com/example-header.png",
		"screenshotUrls": ["https://lh3.googleusercontent.com/example-screenshot.png"],
		"videoUrls": []
	},
	"languages": ["English"],
	"manifest": {
		"manifestVersion": 3,
		"version": "1.62.0",
		"permissions": ["storage", "declarativeNetRequest"],
		"hostPermissions": ["<all_urls>"],
		"contentScripts": true,
		"backgroundServiceWorker": true,
		"raw": {
			"manifest_version": 3,
			"name": "uBlock Origin"
		}
	},
	"privacy": {
		"dataHandled": [],
		"statements": [],
		"summary": "Privacy policy is listed on the Chrome Web Store page."
	},
	"relatedExtensions": [
		{
			"extensionId": "gighmmpiobklfepjocnamgkkbiglidom",
			"name": "AdBlock",
			"url": "https://chromewebstore.google.com/detail/adblock/gighmmpiobklfepjocnamgkkbiglidom",
			"iconUrl": "https://lh3.googleusercontent.com/example-related-icon.png",
			"position": 1
		}
	],
	"discovery": null
}
````

### 💳 Pricing

This Actor uses pay-per-event pricing. You are charged for each successful Chrome Web Store extension or compatible theme result that is saved.

Current planned row prices:

- Free tier: $1.80 per 1,000 saved results
- Bronze tier: $1.50 per 1,000 saved results
- Silver tier: $1.15 per 1,000 saved results
- Gold, Platinum, and Diamond tiers: $0.90 per 1,000 saved results

Failed, private, removed, unsupported, or not-found targets are not saved as dataset rows.

### ⚠️ Limits and notes

- The Actor returns public Chrome Web Store data only.
- It does not scrape review text.
- It does not use Chrome cookies, Google account credentials, or private developer dashboards.
- It does not create alerts, historical tracking, or cross-run change detection.
- Contact fields are included only when publicly listed by the source.
- Compatible theme rows are included only when Chrome Web Store pages return rows that fit the same output shape.

### ❓ FAQ

#### Can I scrape by extension ID?

Yes. Add a 32-character Chrome Web Store extension ID, or paste the full Chrome Web Store listing URL.

#### Can I use it for keyword research?

Yes. Add search terms such as `password manager`, `coupon`, or `screen recorder`. The Actor saves matching extension rows up to your per-target limit.

#### Does it return the manifest?

Yes, when Chrome Web Store exposes the manifest data for the listing. The output includes the parsed raw manifest plus normalized permission fields.

#### Does it return developer emails?

Yes, when the email or other contact details are publicly listed on the Chrome Web Store page. Missing contact fields stay `null`.

#### Does it scrape Chrome Web Store reviews?

No. This Actor focuses on extension listings, contacts, media, manifest data, and discovery rows. Review text is outside this output contract.

### 📝 Changelog

- 0.1: Initial release.

### 🆘 Support

For issues, questions, or feature requests, [file a ticket](https://console.apify.com/actors/maximedupre~chrome-extensions-scraper/issues) and I'll fix or implement it in less than 24h 🫡

### 🔗 Other actors

- [WordPress Plugin Scraper ↗](https://apify.com/maximedupre/wordpress-plugin-scraper) - Scrape WordPress.org plugin data, ratings, authors, compatibility, and reviews.
- [Google Play Store Scraper ↗](https://apify.com/maximedupre/google-play-store-scraper) - Export Google Play app data, reviews, permissions, and Data Safety details.
- [Apple App Store Scraper ↗](https://apify.com/maximedupre/apple-app-store-scraper) - Collect public iOS app metadata, charts, ratings, and reviews.
- [Product Hunt Scraper ↗](https://apify.com/maximedupre/product-hunt-scraper) - Build startup and product research datasets from Product Hunt pages.
- [Website Emails Scraper ↗](https://apify.com/maximedupre/website-emails-scraper) - Find public contact emails from websites for outreach and enrichment.

**Made with ❤️ by Maxime Dupré**

# Actor input Schema

## `targets` (type: `array`):

Add one target per row. Use extension URLs or IDs for direct lookup, keywords for search, category URLs or slugs for categories, and `top` or `top:productivity` for top charts.

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

Maximum extension or theme rows to save for each search, category, or top-chart target. Direct extension targets return one matching row.

## `minRating` (type: `number`):

Only save extensions with this Chrome Web Store rating or higher when the source exposes a rating.

## `minUsers` (type: `integer`):

Only save extensions with at least this many Chrome Web Store users when the source exposes the user count.

## `verifiedOnly` (type: `boolean`):

Only save rows where Chrome Web Store marks the publisher or listing as verified.

## `featuredOnly` (type: `boolean`):

Only save rows where Chrome Web Store marks the listing as featured.

## Actor input object example

```json
{
  "targets": [
    "https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm",
    "password manager",
    "productivity",
    "top",
    "ad blocker",
    "screen recorder",
    "pdf editor"
  ],
  "maxItems": 50,
  "minRating": 0,
  "minUsers": 0,
  "verifiedOnly": false,
  "featuredOnly": false
}
```

# Actor output Schema

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

Open the dataset with one row for each successfully scraped Chrome Web Store extension or compatible theme result.

# 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 = {
    "targets": [
        "https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm",
        "password manager",
        "productivity",
        "top",
        "ad blocker",
        "screen recorder",
        "pdf editor"
    ],
    "maxItems": 50,
    "minRating": 0,
    "minUsers": 0
};

// Run the Actor and wait for it to finish
const run = await client.actor("maximedupre/chrome-extensions-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 = {
    "targets": [
        "https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm",
        "password manager",
        "productivity",
        "top",
        "ad blocker",
        "screen recorder",
        "pdf editor",
    ],
    "maxItems": 50,
    "minRating": 0,
    "minUsers": 0,
}

# Run the Actor and wait for it to finish
run = client.actor("maximedupre/chrome-extensions-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 '{
  "targets": [
    "https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm",
    "password manager",
    "productivity",
    "top",
    "ad blocker",
    "screen recorder",
    "pdf editor"
  ],
  "maxItems": 50,
  "minRating": 0,
  "minUsers": 0
}' |
apify call maximedupre/chrome-extensions-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Chrome Extensions Scraper",
        "description": "Scrape Chrome Web Store extensions by URL, ID, keyword, category, or top chart. Export names, ratings, users, publisher contacts, manifests, permissions, media, privacy links, and related extensions.",
        "version": "0.1",
        "x-build-id": "ygXSis12BL8grst0S"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/maximedupre~chrome-extensions-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-maximedupre-chrome-extensions-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/maximedupre~chrome-extensions-scraper/runs": {
            "post": {
                "operationId": "runs-sync-maximedupre-chrome-extensions-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/maximedupre~chrome-extensions-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-maximedupre-chrome-extensions-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": [
                    "targets",
                    "maxItems",
                    "minRating",
                    "minUsers",
                    "verifiedOnly",
                    "featuredOnly"
                ],
                "properties": {
                    "targets": {
                        "title": "Chrome Web Store targets",
                        "minItems": 1,
                        "maxItems": 100,
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Add one target per row. Use extension URLs or IDs for direct lookup, keywords for search, category URLs or slugs for categories, and `top` or `top:productivity` for top charts.",
                        "items": {
                            "type": "string",
                            "minLength": 1
                        }
                    },
                    "maxItems": {
                        "title": "Results per discovery target",
                        "minimum": 1,
                        "maximum": 5000,
                        "type": "integer",
                        "description": "Maximum extension or theme rows to save for each search, category, or top-chart target. Direct extension targets return one matching row.",
                        "default": 50
                    },
                    "minRating": {
                        "title": "Minimum rating",
                        "minimum": 0,
                        "maximum": 5,
                        "type": "number",
                        "description": "Only save extensions with this Chrome Web Store rating or higher when the source exposes a rating.",
                        "default": 0
                    },
                    "minUsers": {
                        "title": "Minimum users",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only save extensions with at least this many Chrome Web Store users when the source exposes the user count.",
                        "default": 0
                    },
                    "verifiedOnly": {
                        "title": "Verified publishers only",
                        "type": "boolean",
                        "description": "Only save rows where Chrome Web Store marks the publisher or listing as verified.",
                        "default": false
                    },
                    "featuredOnly": {
                        "title": "Featured extensions only",
                        "type": "boolean",
                        "description": "Only save rows where Chrome Web Store marks the listing as featured.",
                        "default": false
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
