# WordPress Themes Directory Scraper (`automation-lab/wordpress-themes-directory-scraper`) Actor

Extract WordPress.org theme metadata, author leads, ratings, downloads, tags, screenshots, and compatibility data from the public directory.

- **URL**: https://apify.com/automation-lab/wordpress-themes-directory-scraper.md
- **Developed by:** [Stas Persiianenko](https://apify.com/automation-lab) (community)
- **Categories:** Marketing
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

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

## WordPress Themes Directory Scraper

Extract WordPress.org theme metadata at scale from the public WordPress Themes Directory API.

Use this actor to monitor theme competitors, discover vendors, enrich author leads, compare ratings, and track compatibility changes across the WordPress theme ecosystem.

### What does WordPress Themes Directory Scraper do?

WordPress Themes Directory Scraper collects public theme records from WordPress.org.

It supports keyword searches, tag searches, browse collections, and direct theme slugs.

Each dataset item contains theme identity, author details, ratings, downloads, update dates, compatibility requirements, tags, screenshots, preview links, download links, and WordPress.org URLs.

### Who is it for?

#### Theme developers

Find competing themes in your niche and track how their ratings, downloads, and compatibility requirements change.

#### WordPress agencies

Build shortlists of themes for client audits, migrations, and design research.

#### Plugin and SaaS vendors

Discover theme authors and vendor websites for outreach, partnership, or integration research.

#### Market researchers

Analyze popular WordPress theme categories, author concentration, and freshness signals.

#### SEO and affiliate teams

Collect structured theme metadata for comparison pages, review workflows, and market maps.

### Why use this actor?

- 🔎 Search themes by keyword such as `seo`, `restaurant`, or `woocommerce`.
- 🏷️ Collect themes by public WordPress.org tags such as `blog` or `full-site-editing`.
- 🎯 Enrich exact theme slugs such as `twentytwentyfive`.
- 📈 Track ratings, download totals, update dates, and compatibility fields.
- 👤 Extract author display names, profile URLs, avatars, and vendor URLs.
- 🖼️ Export screenshots, preview URLs, homepages, and download links.
- ⚡ Uses the public WordPress.org API, so no browser or login is required.

### Data you can extract

| Field group | Examples |
| --- | --- |
| Theme identity | name, slug, version, WordPress.org homepage |
| Author/vendor | username, display name, profile URL, avatar, author URL |
| Popularity | rating percent, rating average, rating count, downloads |
| Freshness | last updated date, last updated time, creation time |
| Compatibility | required WordPress version, required PHP version |
| Media and links | screenshot URL, preview URL, download URL, reviews URL |
| Classification | tag slugs and readable tag labels |
| Commercial signals | commercial/community flags and external support/repository URLs |

### Example use cases

- Monitor the top 500 popular WordPress themes every week.
- Find all themes matching a product niche such as SEO, booking, LMS, or restaurant.
- Build a lead list of theme authors with profile and website URLs.
- Detect recently updated themes before launching compatibility outreach.
- Compare ratings and review counts across theme categories.
- Enrich a list of exact theme slugs from competitor research.

### How much does it cost to scrape WordPress themes?

This actor uses pay-per-event pricing.

A small start event is charged once per run, and a result event is charged for each saved theme record.

The default input is intentionally small so your first test run is inexpensive.

For larger monitoring jobs, increase `maxItems` to the number of themes you need.

### Input options

#### Search terms

Use `searchTerms` to search the WordPress.org theme directory.

Examples:

- `seo`
- `restaurant`
- `woocommerce`
- `portfolio`
- `real estate`

#### Browse collection

Use `browse` to include one WordPress.org browse collection.

Supported values:

- `popular`
- `featured`
- `new`
- `updated`
- `block-themes`
- `none`

#### Theme tags

Use `tags` for WordPress.org tag filters.

Examples:

- `blog`
- `e-commerce`
- `full-site-editing`
- `accessibility-ready`
- `portfolio`

#### Theme slugs

Use `themeSlugs` when you already know exact WordPress.org theme slugs.

For example, the URL `https://wordpress.org/themes/twentytwentyfive/` has slug `twentytwentyfive`.

#### Maximum themes

Use `maxItems` to control how many unique themes are saved across all inputs.

The actor deduplicates by slug.

#### Detailed metadata

Keep `includeDetails` enabled to enrich each theme with download totals, last updated dates, download links, review URLs, and full tag labels.

Disable it only when you need the fastest possible search-only run.

### Example input

```json
{
  "searchTerms": ["seo", "restaurant"],
  "browse": "popular",
  "tags": ["blog"],
  "themeSlugs": ["twentytwentyfive"],
  "maxItems": 100,
  "includeDetails": true
}
````

### Example output

```json
{
  "queryType": "slug",
  "query": "twentytwentyfive",
  "name": "Twenty Twenty-Five",
  "slug": "twentytwentyfive",
  "version": "1.5",
  "homepageUrl": "https://wordpress.org/themes/twentytwentyfive/",
  "previewUrl": "https://wp-themes.com/twentytwentyfive/",
  "screenshotUrl": "https://ts.w.org/wp-content/themes/twentytwentyfive/screenshot.png?ver=1.5",
  "downloadUrl": "https://downloads.wordpress.org/theme/twentytwentyfive.1.5.zip",
  "ratingPercent": 84,
  "ratingAverage": 4.2,
  "ratingCount": 12,
  "downloaded": 9372740,
  "lastUpdated": "2026-05-20",
  "requiresWordPress": "6.7",
  "requiresPhp": "7.2",
  "tags": ["blog", "full-site-editing"],
  "author": {
    "username": "wordpressdotorg",
    "displayName": "WordPress.org",
    "profileUrl": "https://profiles.wordpress.org/wordpressdotorg/",
    "authorUrl": "https://wordpress.org"
  },
  "reviewsUrl": "https://wordpress.org/support/theme/twentytwentyfive/reviews/",
  "scrapedAt": "2026-07-07T00:00:00.000Z"
}
```

### How to scrape WordPress themes

1. Open the actor on Apify.
2. Enter one or more search terms, tags, browse mode, or theme slugs.
3. Set `maxItems` to the number of unique themes you want.
4. Keep `includeDetails` enabled for the richest dataset.
5. Run the actor.
6. Export results as JSON, CSV, Excel, XML, or via API.

### Tips for better results

- Use broad search terms first, then narrow with tags.
- Use direct slugs when monitoring known competitors.
- Use `browse=updated` for freshness monitoring.
- Use `browse=popular` for market-share snapshots.
- Use `browse=none` when you only want exact searches or exact slugs.
- Keep `maxItems` low for tests and increase after checking the output.

### Integrations

#### CRM enrichment

Export author profile URLs and author websites to enrich vendor or partner lead records.

#### Competitive intelligence dashboards

Schedule the actor and send datasets to Google Sheets, BigQuery, Snowflake, or a BI tool.

#### Product marketing research

Combine theme tags, rating counts, and downloads to prioritize integration campaigns.

#### Content workflows

Use theme screenshots, descriptions, and compatibility data for review or comparison workflows.

### API usage with Node.js

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

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/wordpress-themes-directory-scraper').call({
  searchTerms: ['seo'],
  browse: 'popular',
  maxItems: 100,
  includeDetails: true,
});
console.log(run.defaultDatasetId);
```

### API usage with Python

```python
from apify_client import ApifyClient
import os

client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/wordpress-themes-directory-scraper').call(run_input={
    'searchTerms': ['seo'],
    'browse': 'popular',
    'maxItems': 100,
    'includeDetails': True,
})
print(run['defaultDatasetId'])
```

### API usage with cURL

```bash
curl -X POST "https://api.apify.com/v2/acts/automation-lab~wordpress-themes-directory-scraper/runs?token=$APIFY_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"searchTerms":["seo"],"browse":"popular","maxItems":100,"includeDetails":true}'
```

### MCP server usage

Use this actor from Claude Desktop, Claude Code, or another MCP client through Apify MCP.

MCP URL:

```text
https://mcp.apify.com/?tools=automation-lab/wordpress-themes-directory-scraper
```

Add it in Claude Code with:

```bash
claude mcp add apify-wordpress-themes https://mcp.apify.com/?tools=automation-lab/wordpress-themes-directory-scraper
```

Claude Desktop JSON configuration:

```json
{
  "mcpServers": {
    "apify-wordpress-themes": {
      "url": "https://mcp.apify.com/?tools=automation-lab/wordpress-themes-directory-scraper"
    }
  }
}
```

Example prompts:

- "Scrape 100 popular WordPress themes and summarize the top author websites."
- "Find SEO-related WordPress themes and rank them by rating count."
- "Monitor recently updated block themes and return those requiring WordPress 6.7+."

### Scheduling

Run the actor daily, weekly, or monthly to monitor theme ecosystem changes.

For repeated monitoring, keep the same input and compare dataset exports over time using `slug` as the stable key.

### Data freshness

The actor reads the public WordPress.org Themes API at run time.

Values such as ratings, downloads, versions, and last updated dates reflect what the API returns during the run.

### Legality

This actor collects public metadata from WordPress.org theme directory endpoints.

You are responsible for using exported data lawfully, respecting applicable terms, and complying with privacy and outreach rules in your jurisdiction.

### FAQ

#### Can I scrape WordPress themes without a login?

Yes. The actor uses public WordPress.org theme directory endpoints and does not require a WordPress.org account.

#### Can I monitor the same market every week?

Yes. Schedule the same input and compare exports by `slug`, `version`, `ratingCount`, `downloaded`, and `lastUpdated`.

### Troubleshooting

#### Why did I get fewer themes than maxItems?

The actor deduplicates by slug. If the same theme appears in multiple sources, it is saved once.

#### Why did a direct slug fail?

Check that the slug exists in a WordPress.org theme URL. Invalid slugs are skipped and logged.

#### Why are some commercial URLs empty?

WordPress.org only exposes external support or repository URLs for themes that provide those fields.

### Related scrapers

Automation Lab also offers related WordPress and web-research actors:

- https://apify.com/automation-lab/wordpress-plugin-developer-leads-scraper
- https://apify.com/automation-lab/wordpress-plugin-reviews-scraper

### Output field reference

- `queryType` — input source type: slug, search, tag, or browse.
- `query` — exact keyword, tag, browse collection, or slug that found the theme.
- `name` — theme display name.
- `slug` — stable WordPress.org theme slug.
- `version` — current theme version.
- `homepageUrl` — WordPress.org theme page.
- `previewUrl` — WordPress theme preview URL.
- `screenshotUrl` — theme screenshot URL.
- `downloadUrl` — ZIP download URL when available.
- `description` — public theme description.
- `ratingPercent` — WordPress.org rating percentage.
- `ratingAverage` — rating converted to a 0-5 average.
- `ratingCount` — number of ratings.
- `downloaded` — public total download count when available.
- `lastUpdated` — last updated date.
- `requiresWordPress` — minimum WordPress version.
- `requiresPhp` — minimum PHP version.
- `tags` — theme tag slugs.
- `tagLabels` — readable theme tag labels.
- `author` — nested author profile and website data.
- `sourceApiUrl` — API endpoint used for traceability.
- `scrapedAt` — ISO timestamp when the item was saved.

### Changelog

#### 0.1

Initial release with keyword, tag, browse, and direct slug collection from the public WordPress.org Themes API.

# Actor input Schema

## `searchTerms` (type: `array`):

Keywords to search in the WordPress.org Themes Directory, for example niches, competitors, industries, or features.

## `browse` (type: `string`):

Optional WordPress.org browse collection to include after searches/tags/slugs. Choose None to use only exact search terms, tags, or slugs.

## `tags` (type: `array`):

WordPress.org theme tags to collect, such as blog, e-commerce, full-site-editing, portfolio, or accessibility-ready.

## `themeSlugs` (type: `array`):

Specific WordPress.org theme slugs to enrich. Example: twentytwentyfive from https://wordpress.org/themes/twentytwentyfive/.

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

Maximum unique themes to save across all inputs. Keep low for tests and increase for market monitoring.

## `includeDetails` (type: `boolean`):

Fetch the public theme\_information API for each theme to include downloads, last updated, reviews URL, download link, and full tag labels.

## Actor input object example

```json
{
  "searchTerms": [
    "seo",
    "restaurant"
  ],
  "browse": "popular",
  "tags": [
    "blog"
  ],
  "themeSlugs": [
    "twentytwentyfive"
  ],
  "maxItems": 20,
  "includeDetails": true
}
```

# Actor output Schema

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

No description

# API

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

## JavaScript example

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

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

// Prepare Actor input
const input = {
    "searchTerms": [
        "seo",
        "restaurant"
    ],
    "browse": "popular",
    "tags": [
        "blog"
    ],
    "themeSlugs": [
        "twentytwentyfive"
    ],
    "maxItems": 20,
    "includeDetails": true
};

// Run the Actor and wait for it to finish
const run = await client.actor("automation-lab/wordpress-themes-directory-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 = {
    "searchTerms": [
        "seo",
        "restaurant",
    ],
    "browse": "popular",
    "tags": ["blog"],
    "themeSlugs": ["twentytwentyfive"],
    "maxItems": 20,
    "includeDetails": True,
}

# Run the Actor and wait for it to finish
run = client.actor("automation-lab/wordpress-themes-directory-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 '{
  "searchTerms": [
    "seo",
    "restaurant"
  ],
  "browse": "popular",
  "tags": [
    "blog"
  ],
  "themeSlugs": [
    "twentytwentyfive"
  ],
  "maxItems": 20,
  "includeDetails": true
}' |
apify call automation-lab/wordpress-themes-directory-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=automation-lab/wordpress-themes-directory-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "WordPress Themes Directory Scraper",
        "description": "Extract WordPress.org theme metadata, author leads, ratings, downloads, tags, screenshots, and compatibility data from the public directory.",
        "version": "0.1",
        "x-build-id": "k2fA5O4PTKcxaUOxh"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/automation-lab~wordpress-themes-directory-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-automation-lab-wordpress-themes-directory-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/automation-lab~wordpress-themes-directory-scraper/runs": {
            "post": {
                "operationId": "runs-sync-automation-lab-wordpress-themes-directory-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/automation-lab~wordpress-themes-directory-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-automation-lab-wordpress-themes-directory-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": {
                    "searchTerms": {
                        "title": "Search terms",
                        "type": "array",
                        "description": "Keywords to search in the WordPress.org Themes Directory, for example niches, competitors, industries, or features.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "browse": {
                        "title": "Browse collection",
                        "enum": [
                            "popular",
                            "featured",
                            "new",
                            "updated",
                            "block-themes",
                            "none"
                        ],
                        "type": "string",
                        "description": "Optional WordPress.org browse collection to include after searches/tags/slugs. Choose None to use only exact search terms, tags, or slugs.",
                        "default": "popular"
                    },
                    "tags": {
                        "title": "Theme tags",
                        "type": "array",
                        "description": "WordPress.org theme tags to collect, such as blog, e-commerce, full-site-editing, portfolio, or accessibility-ready.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "themeSlugs": {
                        "title": "Theme slugs",
                        "type": "array",
                        "description": "Specific WordPress.org theme slugs to enrich. Example: twentytwentyfive from https://wordpress.org/themes/twentytwentyfive/.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxItems": {
                        "title": "Maximum themes",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Maximum unique themes to save across all inputs. Keep low for tests and increase for market monitoring.",
                        "default": 20
                    },
                    "includeDetails": {
                        "title": "Fetch detailed theme metadata",
                        "type": "boolean",
                        "description": "Fetch the public theme_information API for each theme to include downloads, last updated, reviews URL, download link, and full tag labels.",
                        "default": 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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
