# Microsoft Store Scraper — App Details, Search & Reviews (`freshactors/microsoft-store-scraper`) Actor

Reliable, always-fresh Microsoft Store data: app details with 7/30-day rating windows, search, and customer reviews with helpful votes. Any country market. Monitored daily. By FreshActors.

- **URL**: https://apify.com/freshactors/microsoft-store-scraper.md
- **Developed by:** [Freshactors](https://apify.com/freshactors) (community)
- **Categories:** Developer tools, E-commerce
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.50 / 1,000 app details fetcheds

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

## Microsoft Store Scraper — App Details, Search & Reviews (No API Key)

Scrape the **Microsoft Store** (Windows apps & games) into clean, structured JSON — app **details** with all-time *and* 7/30-day **rating windows**, keyword **search**, and customer **reviews with helpful votes and device info**. Any country market. No account, no login, no API key.

![Microsoft Store Scraper — app details, rating windows, search and reviews](https://raw.githubusercontent.com/Freshactors/freshactors-assets/main/msstore-screenshot.png)

> ✅ **Last verified working: 2026-06-11.** Monitored by an automated daily canary. When Microsoft changes the Store's endpoints, we patch fast and log it in the changelog below — so your pipeline doesn't silently break.

---

### Why this Microsoft Store scraper

Together with our [Apple App Store](https://apify.com/freshactors/app-store-scraper) and [Google Play](https://apify.com/freshactors/google-play-scraper) scrapers, this completes **all three major app stores in one consistent toolset** — same modes, same pricing model, same reliability standard. And the Microsoft Store data has fields the other stores don't expose:

- **Rating windows** — every details record carries the average + count for **all-time, last 7 days, and last 30 days**. That's a momentum signal: a 4.6 all-time / 3.8-last-30-days app is in trouble; the reverse is a turnaround.
- **Reviews with helpful votes + device family** — each review includes `helpfulPositive`/`helpfulNegative` (community-validated complaints!) plus the reviewer's `deviceFamily` and `osVersion`.
- **Any country market** — `market`/`language` inputs localize availability, prices, descriptions, ratings, and review pools (e.g. `DE`/`de-de`).
- **Batched details** — up to 20 apps per request under the hood: fast and cheap.
- **Per-item isolation + retries** — a bad ID or transient error is skipped and logged, never fatal.
- **Stable, versioned output** (`_schemaVersion`) + a **daily canary** — that "last verified working" date is real.

### What data you get

**Details rows** (one per app):

| Field | Type | Description |
|---|---|---|
| `productId` | string | Microsoft Store product ID (12 chars, starts with `9`). |
| `title` / `publisher` | string | App name and publisher. |
| `description` / `shortDescription` | string \| null | Full and short listing text (localized per `language`). |
| `category` | string \| null | Store category (e.g. `Social`). |
| `rating` | object | `{average, count}` — all-time. |
| `rating7Days` / `rating30Days` | object | `{average, count}` for the recent windows — the momentum signal. |
| `price` | object | `{amount, currency, isFree}` for the selected market. |
| `imageUrl` / `imagesCount` | string \| null, number | Primary logo + total image count. |
| `releaseDate` / `lastModified` | string \| null | ISO timestamps. |
| `storeUrl` | string | Public listing URL. |

**Search rows:** `productId`, `title`, `publisher`, `averageRating`, `ratingCountText` (the Store's humanized count, e.g. `"332K"`) + `ratingCountApprox` (parsed number), `displayPrice`, `isFree`, `categories`, `productType` (Apps/Games), `hasIAPs`, `minimumAge`, `releaseDate`, `lastModified`, `storeUrl`, `_searchTerm`.

**Review rows:** `productId`, `reviewId`, `reviewerName`, `rating` (1–5), `title`, `text`, **`helpfulPositive`**, **`helpfulNegative`**, `market`, `locale`, `osVersion`, **`deviceFamily`**, `submittedAt`, `isRevised`.

### Use cases

- **App competitive intelligence.** Track competitors' rating windows (is their last update tanking?), review complaints ranked by helpful votes, and price/IAP changes — across any country market.
- **Cross-store ASO research.** Combine with our Apple and Google Play scrapers for the full three-store picture of an app brand or category, in one normalized pipeline.
- **Review mining.** The helpful-vote counts surface the complaints *users themselves* validated — gold for product teams and reviewers. `deviceFamily` splits desktop vs Xbox vs mobile feedback.
- **Market research.** Search any keyword per market and compare which apps win the same query in the US, Germany, or Japan.

### Input

| Field | Type | Required | Notes |
|---|---|---|---|
| `mode` | string | ✅ | `details` (default) / `search` / `reviews`. |
| `productIds` | string[] | for details/reviews | 12-char Store IDs starting with `9` (e.g. `9NKSQGP7F2NH`) or `apps.microsoft.com/detail/...` URLs. `XP...` winget IDs are desktop installers, not Store products — they're skipped with a warning. |
| `searchTerms` | string[] | for search | Free-text queries; one result set per term. |
| `maxSearchResults` | integer | — | Cap per term (1–20). Default `10`. The Store's search endpoint returns ~20 results per query. |
| `maxReviewsPerApp` | integer | — | Cap per app (1–500), newest first. Default `50`. Deep pagination supported. |
| `market` | string | — | 2-letter country (default `US`). |
| `language` | string | — | Language tag, lowercase (default `en-us`). |

```json
{
  "mode": "details",
  "productIds": ["9NKSQGP7F2NH", "9NCBCSZSJRSB", "9WZDNCRFJ3TJ"]
}
````

### Output sample

A real record from the default run:

```json
{
  "_type": "app",
  "_schemaVersion": "1.0",
  "_source": "microsoft-store",
  "productId": "9NKSQGP7F2NH",
  "title": "WhatsApp",
  "publisher": "WhatsApp Inc.",
  "description": "WhatsApp from Meta is a 100% free messaging app. It's used by over 2B people in more than 180 countries. ...",
  "shortDescription": null,
  "category": "Social",
  "rating": { "average": 4.4, "count": 2294755 },
  "rating7Days": { "average": 4.4, "count": 15549 },
  "rating30Days": { "average": 4.4, "count": 68880 },
  "price": { "amount": 0, "currency": "USD", "isFree": true },
  "imageUrl": "https://store-images.s-microsoft.com/image/apps.39936.13655054093851568.04a4d8fc-dd15-4e4e-bd00-4bbe4247c42e.5fccebf1-7bd7-4999-87f1-863ef313827f",
  "imagesCount": 24,
  "releaseDate": "2017-02-01T01:35:55.265Z",
  "lastModified": "2026-05-27T20:49:24.181Z",
  "storeUrl": "https://apps.microsoft.com/detail/9NKSQGP7F2NH",
  "_scrapedAt": "2026-06-11T12:19:16.266Z"
}
```

### Use with AI agents (MCP)

This scraper is callable as a tool by AI agents via the **[Apify MCP server](https://mcp.apify.com)** — so assistants like **Claude, Cursor, and VS Code** can run it and use the structured results mid-conversation, with no glue code.

Simplest path: in a recent **Claude Desktop**, add the hosted server `https://mcp.apify.com` under **Settings → Connectors** and authorize with OAuth. For any config-file client:

```json
{
  "mcpServers": {
    "apify": {
      "command": "npx",
      "args": ["-y", "@apify/actors-mcp-server"],
      "env": { "APIFY_TOKEN": "YOUR_APIFY_TOKEN" }
    }
  }
}
```

Then ask in plain language, e.g. *"Pull the Microsoft Store ratings and the 20 most helpful recent reviews for WhatsApp."* — the agent calls **`freshactors/microsoft-store-scraper`** with the right input and reads back the JSON. Full setup: [Apify MCP docs](https://docs.apify.com/platform/integrations/mcp).

### Pricing

Pay-per-event — **no subscription**, no per-run start fee. You pay only for the rows you receive:

| Event | Price (USD) | When it fires |
|---|---|---|
| **App details fetched** | **$0.0025** | Once per app details record returned. |
| **Search result fetched** | **$0.001** | Once per search result row returned. |
| **Review fetched** | **$0.0001** | Once per review returned. |

**Worked examples:**

- Full details on **100 apps**: 100 × $0.0025 = **$0.25**
- **10 search queries** × 10 results: 100 × $0.001 = **$0.10**
- **500 reviews** of one app: 500 × $0.0001 = **$0.05**

(Apify platform usage is billed separately per their standard rates.)

### FAQ

**Is scraping the Microsoft Store legal?**
This actor reads **public, non-personal** listing data from the Store's own public endpoints — the same data the Store app shows any user. Review records contain only the public display name a reviewer chose to publish. Use responsibly and in line with applicable terms and laws.

**Do I need an API key or login?**
No. No Microsoft account, token, or key is involved.

**How do I find an app's product ID?**
Open the app on `apps.microsoft.com` — the ID is the last path segment: `apps.microsoft.com/detail/`**`9NKSQGP7F2NH`**. You can paste the whole URL too.

**Why was my `XP...` ID skipped?**
IDs starting with `XP` come from the winget package index — they're classic desktop installers, not Store catalog products, and the Store's catalog has no data for them. Only `9...` Store product IDs resolve.

**What are the rating windows?**
The Store tracks the rating average and count for **all-time, the last 7 days, and the last 30 days**. Comparing them shows momentum — e.g. an app whose last-30-days average is far below all-time is regressing.

**Can I get reviews in other languages/markets?**
Yes — set `market` + `language` (e.g. `DE` + `de-de`); the review pool, descriptions, and prices follow the market.

**Why is the search result count capped at 20?**
The Store's search endpoint returns about 20 results per query with no pagination cursor — so we cap honestly rather than promise more. Use more specific terms to surface different slices.

**Is `ratingCountApprox` exact?**
No — search results carry the Store's humanized count (`"332K"`); we parse it to an approximate number *and* keep the original text. For exact counts, run details mode (e.g. WhatsApp: `2294755`).

**How often is the data updated?**
It's live — every run queries the Store's current data. The actor itself is monitored by a daily canary so parsing stays correct as the endpoints evolve.

### Other FreshActors tools

| FreshActors actor | What it scrapes |
|---|---|
| [App Store Scraper](https://apify.com/freshactors/app-store-scraper) | Apple App Store — app details, search, reviews |
| [Google Play Scraper](https://apify.com/freshactors/google-play-scraper) | Google Play — app details + reviews |
| [VS Code Marketplace Scraper](https://apify.com/freshactors/vscode-marketplace-scraper) | VS Code extensions — install/trending stats, search, reviews |
| [Shopify App Store Scraper](https://apify.com/freshactors/shopify-app-store-scraper) | Shopify App Store — app details, reviews, discovery |
| [Redfin Scraper](https://apify.com/freshactors/redfin-scraper) | Redfin — US real-estate listings |
| [Greenhouse & Lever Jobs Scraper](https://apify.com/freshactors/greenhouse-lever-jobs-scraper) | Greenhouse + Lever — normalized job postings |
| [Workable Jobs Scraper](https://apify.com/freshactors/workable-jobs-scraper) | Workable — normalized job postings, full descriptions |
| [SmartRecruiters Jobs Scraper](https://apify.com/freshactors/smartrecruiters-jobs-scraper) | SmartRecruiters — normalized job postings, full descriptions |
| [Recruitee Jobs Scraper](https://apify.com/freshactors/recruitee-jobs-scraper) | Recruitee — normalized job postings, full descriptions + salary |
| [Teamtailor Jobs Scraper](https://apify.com/freshactors/teamtailor-jobs-scraper) | Teamtailor — normalized job postings, full descriptions |
| [Personio Jobs Scraper](https://apify.com/freshactors/personio-jobs-scraper) | Personio — normalized job postings, departments + seniority |

### Reliability

A scheduled **daily canary** fetches known apps, validates the normalized schema (rating windows numeric, search IDs valid, review pagination advancing, helpful votes present), and alerts the moment a parse changes. The Store's endpoints serve Microsoft's own Store client and can change without notice — when they do, we patch fast and record it below. Every record carries `_schemaVersion` and `_scrapedAt`.

**Changelog**

- **2026-06-11** — v1.0 launch. Details (batched, rating windows, any market) / search (full consumer coverage) / reviews (helpful votes, device family, deep offset pagination); `9*` ID validation with clear winget-ID warnings; per-item isolation; daily canary monitoring.

**Legal note:** Reads public, non-personal listing data from the Store's public endpoints (the same data the Store client serves any user). No login, no private data. Use responsibly and in line with applicable terms and laws.

*Found a problem? Open an issue on the actor — issues are answered fast.*

# Actor input Schema

## `mode` (type: `string`):

What to scrape: details (full record per app, batched), search (query the Store), or reviews (customer reviews per app).

## `productIds` (type: `array`):

Microsoft Store product IDs — 12 characters starting with 9 (e.g. 9NKSQGP7F2NH for WhatsApp) — or apps.microsoft.com/detail/... URLs. Used by details and reviews modes. Note: XP... IDs from winget are desktop installers, not Store products, and are skipped.

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

Free-text queries for search mode (e.g. netflix, pdf editor, photo). One result set per term.

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

Cap on search results returned per term (1–20). The Store's search endpoint returns about 20 results per query.

## `maxReviewsPerApp` (type: `integer`):

Cap on customer reviews returned per app (1–500), newest first.

## `market` (type: `string`):

Two-letter country code for the Store market (e.g. US, DE, GB, JP). Affects availability, prices, ratings and review pools.

## `language` (type: `string`):

Language tag for localized titles/descriptions, lowercase (e.g. en-us, de-de, fr-fr).

## Actor input object example

```json
{
  "mode": "details",
  "productIds": [
    "9NKSQGP7F2NH",
    "9NCBCSZSJRSB",
    "9WZDNCRFJ3TJ"
  ],
  "maxSearchResults": 10,
  "maxReviewsPerApp": 50,
  "market": "US",
  "language": "en-us"
}
```

# Actor output Schema

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

App details / search results / reviews, depending on the selected mode.

# 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 = {
    "productIds": [
        "9NKSQGP7F2NH",
        "9NCBCSZSJRSB",
        "9WZDNCRFJ3TJ"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("freshactors/microsoft-store-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 = { "productIds": [
        "9NKSQGP7F2NH",
        "9NCBCSZSJRSB",
        "9WZDNCRFJ3TJ",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("freshactors/microsoft-store-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 '{
  "productIds": [
    "9NKSQGP7F2NH",
    "9NCBCSZSJRSB",
    "9WZDNCRFJ3TJ"
  ]
}' |
apify call freshactors/microsoft-store-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Microsoft Store Scraper — App Details, Search & Reviews",
        "description": "Reliable, always-fresh Microsoft Store data: app details with 7/30-day rating windows, search, and customer reviews with helpful votes. Any country market. Monitored daily. By FreshActors.",
        "version": "1.0",
        "x-build-id": "i2b3B0zY9DfY6AvlY"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/freshactors~microsoft-store-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-freshactors-microsoft-store-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/freshactors~microsoft-store-scraper/runs": {
            "post": {
                "operationId": "runs-sync-freshactors-microsoft-store-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/freshactors~microsoft-store-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-freshactors-microsoft-store-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": [
                    "mode"
                ],
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "details",
                            "search",
                            "reviews"
                        ],
                        "type": "string",
                        "description": "What to scrape: details (full record per app, batched), search (query the Store), or reviews (customer reviews per app).",
                        "default": "details"
                    },
                    "productIds": {
                        "title": "Product IDs",
                        "type": "array",
                        "description": "Microsoft Store product IDs — 12 characters starting with 9 (e.g. 9NKSQGP7F2NH for WhatsApp) — or apps.microsoft.com/detail/... URLs. Used by details and reviews modes. Note: XP... IDs from winget are desktop installers, not Store products, and are skipped.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "searchTerms": {
                        "title": "Search terms",
                        "type": "array",
                        "description": "Free-text queries for search mode (e.g. netflix, pdf editor, photo). One result set per term.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxSearchResults": {
                        "title": "Max search results per term",
                        "minimum": 1,
                        "maximum": 20,
                        "type": "integer",
                        "description": "Cap on search results returned per term (1–20). The Store's search endpoint returns about 20 results per query.",
                        "default": 10
                    },
                    "maxReviewsPerApp": {
                        "title": "Max reviews per app",
                        "minimum": 1,
                        "maximum": 500,
                        "type": "integer",
                        "description": "Cap on customer reviews returned per app (1–500), newest first.",
                        "default": 50
                    },
                    "market": {
                        "title": "Market (country)",
                        "type": "string",
                        "description": "Two-letter country code for the Store market (e.g. US, DE, GB, JP). Affects availability, prices, ratings and review pools.",
                        "default": "US"
                    },
                    "language": {
                        "title": "Language",
                        "type": "string",
                        "description": "Language tag for localized titles/descriptions, lowercase (e.g. en-us, de-de, fr-fr).",
                        "default": "en-us"
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
