# Walgreens Product Search Scraper (`stealth_mode/walgreens-product-search-scraper`) Actor

Scrape product search results from Walgreens with 51+ data fields including pricing, inventory, images, ratings, and fulfillment details. Perfect for price monitoring, retail analytics, and product intelligence across thousands of SKUs.

- **URL**: https://apify.com/stealth\_mode/walgreens-product-search-scraper.md
- **Developed by:** [Stealth mode](https://apify.com/stealth_mode) (community)
- **Categories:** Automation, Developer tools, E-commerce
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.50 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
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

## Walgreens Product Search Scraper: Extract Retail Product Data at Scale

---

### What Is Walgreens?

Walgreens is one of the largest pharmacy and health & wellness retailers in North America, offering over 8 million products across health, beauty, household, and specialty categories. Their product search functionality enables customers to discover items by keyword, brand, or category. For business intelligence, competitive analysis, and market research, collecting structured product data from Walgreens search results is invaluable — yet manually gathering thousands of product records is impractical. The **Walgreens Product Search Scraper** automates this process, delivering complete product intelligence in seconds.

---

### Overview

The **Walgreens Product Search Scraper** extracts detailed product information from Walgreens search results pages, converting unstructured retail listings into rich, structured datasets with 51+ fields per product. It is ideal for:

- **Retail analysts** monitoring competitor pricing and product assortment
- **E-commerce platforms** aggregating pharmacy and wellness products
- **Market researchers** tracking product trends and availability
- **Brand managers** analyzing how their products are featured and priced
- **Price monitoring tools** tracking competitor prices in real-time

The scraper handles search results at scale, supporting pagination and high-volume data collection with optional proxy rotation and failure tolerance.

---

### Input Format

The scraper accepts a JSON configuration object:

```json
{
  "urls": [
    "https://www.walgreens.com/search/results.jsp?Ntt=shoe&analyticsTag=global"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 200
}
````

| Field | Type | Description |
|---|---|---|
| `urls` | Array of strings | URLs of Walgreens product search results pages. Supports multiple search queries, categories, or filter combinations. Example: `Ntt=shoe` searches for shoes; append filters like `&priceRange=50-100` to refine results. |
| `max_items_per_url` | Integer | Maximum number of products to extract per URL. Range: 1–500+. Default is 20; increase for comprehensive category scans. Note: Higher values may require pagination handling. |
| `ignore_url_failures` | Boolean | If `true`, the scraper continues running even if individual URLs fail. Useful for bulk operations where 1–2 URLs may timeout or return errors. If `false`, a single failure stops the entire run. |

> **Pro tip:** Use targeted search queries (e.g., `Ntt=multivitamin&sort=price_low_to_high`) to collect specific product segments. Walgreens URLs often contain analytics tags that can be preserved or removed without affecting results.

***

### Output Format

**Sample output**

```json
{
  "article_id": "000000000012501935",
  "hair_tool_type": "",
  "size": [],
  "store_inv": "instock",
  "fulfiller_type": "SFS",
  "web_exclusive": "0",
  "wic": "736186",
  "sku_inv_avail_map": {
    "400692796": "1000"
  },
  "prod_id": "300470720",
  "sku_id": "400692796",
  "image_url": "//pics.walgreens.com/prodimg/692796/155.jpg",
  "upc": "19560284385",
  "product_url": null,
  "product_size": "1 ea ",
  "new_item": "No",
  "w_brand_ind": "1",
  "auto_reorder": "0",
  "unit_price": "9999999.0",
  "unit_price_size": "ea",
  "loyalty_eligible": "0",
  "pln": "40000736186",
  "image_url_450": null,
  "product_name": "Straw Cowboy Hat",
  "image_url_50": null,
  "product_type": "Party Supplies",
  "is_age_restricted": false,
  "exclude_local_delivery": false,
  "same_day_purchase_limit": 12,
  "store_upc": null,
  "temperature_code": [
    {
      "key": "N",
      "value": "None"
    }
  ],
  "gtin": "195602843855",
  "ship_to_store_ind": "0",
  "odd_enabled": true,
  "tier_1_category_id": null,
  "tier_2_category_id": null,
  "tier_3_category_id": null,
  "sdp_enabled": true,
  "shipping_enabled": true,
  "op_study_number": "27",
  "online_inv_status": "instock",
  "brand_id": "520211",
  "beauty_category_name": "Festive Voice",
  "channel_availability_prd_card": {
    "add_to_cart": true,
    "find_at_store": true,
    "delivery_option": "Ship"
  },
  "retail_unit_qty": "",
  "clearance": "No",
  "quicklook_url": null,
  "product_display_name": "Festive Voice Straw Cowboy Hat",
  "product_display_type": "1",
  "price_info": {
    "regular_price": "$9.99",
    "regular_price_html": "<span class=\"product__price\"><sup>$</sup>9<sup>99</sup></span>",
    "on_sale": false
  },
  "average_rating": "0.0",
  "sub_brand_name": "Festive Voice",
  "ds_sku_id": "692796",
  "is_store_associated": false,
  "network_store_inv_status": "In Stock",
  "fsa_cd": "0",
  "from_url": "https://www.walgreens.com/store/store/category/productlist.jsp?No=144&N=20007586&Eon=20007586"
}
```

Each product record includes 51+ fields capturing comprehensive retail data:

#### Product Identification

| Field | Meaning |
|---|---|
| `Product ID` | Walgreens' unique identifier for the product |
| `SKU ID` | Stock Keeping Unit identifier for inventory tracking |
| `DS SKU ID` | Distributed Systems SKU, used for internal fulfillment routing |
| `Article ID` | Alternative article identifier, sometimes for legacy systems |
| `UPC` | Universal Product Code (barcode standard) |
| `GTIN` | Global Trade Item Number, similar to UPC but broader standard |
| `Store UPC` | Store-specific UPC variant, used for in-store kiosk systems |
| `PLN` | Permanent Link Name, used in URL slugs |

#### Product Details & Classification

| Field | Meaning |
|---|---|
| `Product Name` | Full product title (e.g., "Nike Air Max Running Shoe") |
| `Product Display Name` | Customer-facing name, may differ from product\_name for marketing |
| `Product Type` | Category classification (e.g., "Footwear", "Health Supplement") |
| `Sub Brand Name` | Sub-brand or product line (e.g., "Air Max", "Ultra Strength") |
| `Hair Tool Type` | Tool category if product is hair-related (dryer, straightener, etc.) |
| `Beauty Category Name` | Category for beauty products specifically |
| `Product Size` | Size available (e.g., "10.5", "100 ct", "8 oz") |
| `Size` | General size field, sometimes redundant with product\_size |
| `Retail Unit Quantity` | Quantity in package (e.g., 12 tablets per box) |

#### Pricing & Promotions

| Field | Meaning |
|---|---|
| `Unit Price` | Price per individual unit (e.g., price per tablet) |
| `Unit Price Size` | Size reference for unit pricing (e.g., "per tablet", "per ounce") |
| `Price Info` | Extended pricing details, may include promotion pricing or original price |
| `Clearance` | Boolean or flag indicating clearance/sale status |

#### Inventory & Fulfillment

| Field | Meaning |
|---|---|
| `Store Inventory` | Availability at physical Walgreens store locations |
| `Online Inventory Status` | Stock status for online orders (in-stock, out-of-stock, preorder) |
| `Network Store Inventory Status` | Inventory across the full Walgreens network |
| `SKU Inventory Availability Map` | Detailed inventory mapping by location or warehouse |
| `Fulfiller Type` | How product is fulfilled (Walgreens direct, third-party, marketplace) |
| `Ship To Store Indicator` | If true, product can be shipped to store for pickup |
| `ODD Enabled` | Order Direct Delivery enabled; allows home delivery |
| `Exclude Local Delivery` | If true, local delivery (same-day) is not available |
| `SDP Enabled` | Store Dispatch Program enabled for fast fulfillment |
| `Shipping Enabled` | If true, product ships via standard shipping |
| `Same Day Purchase Limit` | Maximum quantity a customer can buy for same-day delivery |

#### Product Features & Flags

| Field | Meaning |
|---|---|
| `New Item` | If true, product is newly added to Walgreens catalog |
| `Web Exclusive` | If true, product is only available online (not in-store) |
| `W Brand Indicator` | Walgreens' private-label brand indicator |
| `Auto Reorder` | If true, product is eligible for auto-replenishment subscriptions |
| `Loyalty Eligible` | If true, Walgreens Rewards points can be earned |
| `Is Age Restricted` | If true, age verification required (alcohol, tobacco) |
| `Is Store Associated` | If true, inventory is tied to a specific store location |
| `Clearance` | Mark if product is on clearance (overlaps with pricing section) |

#### Media & Images

| Field | Meaning |
|---|---|
| `Image URL` | Full-resolution product image URL |
| `Image URL 450` | Medium-resolution image (450px, suitable for product cards) |
| `Image URL 50` | Thumbnail image (50px, for lists and quick views) |
| `Quicklook URL` | URL for quick-look popup modal view |

#### Ratings & Reviews

| Field | Meaning |
|---|---|
| `Average Rating` | Star rating (e.g., 4.5 out of 5) |

#### Categorization & Taxonomy

| Field | Meaning |
|---|---|
| `Tier 1 Category ID` | Top-level category (e.g., "Health & Wellness") |
| `Tier 2 Category ID` | Mid-level category (e.g., "Vitamins & Supplements") |
| `Tier 3 Category ID` | Specific sub-category (e.g., "Multivitamins") |

#### Compliance & Special Codes

| Field | Meaning |
|---|---|
| `Brand ID` | Manufacturer/brand identifier for analytics |
| `Temperature Code` | Storage requirement code (ambient, refrigerated, frozen) |
| `WIC` | If true, product is WIC-eligible (Women, Infants, Children program) |
| `FSA Code` | If true, product qualifies for Flexible Spending Account purchases |
| `Is Age Restricted` | Regulatory flag for age-gated products |

#### Channel & Display

| Field | Meaning |
|---|---|
| `Channel Availability Product Card` | Specifies which sales channels display this product (online, store, both) |
| `Product Display Type` | Display format on product pages (standard, variant selector, bundle) |
| `Product URL` | Direct link to the product detail page on Walgreens.com |

#### Analytics & Internal

| Field | Meaning |
|---|---|
| `OP Study Number` | Internal operational study tracking code |

***

### How to Use

1. **Find search URLs** — Navigate to Walgreens.com, perform a product search, and copy the results page URL from your browser (it will contain `search/results.jsp`).
   - Example: `https://www.walgreens.com/search/results.jsp?Ntt=vitamin&priceRange=10-25`

2. **Build your input configuration** — Paste URLs into the `urls` array:

```json
   {
     "urls": [
       "https://www.walgreens.com/search/results.jsp?Ntt=multivitamin",
       "https://www.walgreens.com/search/results.jsp?Ntt=cold+medicine"
     ],
     "max_items_per_url": 100,
     "ignore_url_failures": true
   }
```

3. **Optimize item limits** — Set `max_items_per_url` based on your needs. Start with 50–100 for fast runs, or 200+ for comprehensive category analysis.

4. **Handle failures gracefully** — Enable `ignore_url_failures: true` for bulk operations to prevent one failed URL from halting the entire job.

5. **Run and export** — Execute the scraper and download results as JSON, CSV, or Excel. Results include all 51+ fields per product.

**Troubleshooting:**

- If pagination isn't captured, the scraper typically extracts only the first page. Use multiple URLs for different pages (e.g., `&page=1`, `&page=2`).
- Some products may have null values for fields like `Average Rating` or `Sub Brand Name` — this is normal for certain product types.
- If results are sparse, verify the URL contains `search/results.jsp` and includes the search query parameter `Ntt=...`.

***

### Use Cases & Business Value

- **Price intelligence:** Monitor competitor pricing across product categories and adjust your own pricing strategy in real-time.
- **Product assortment analysis:** Identify product gaps in competitor catalogs and trending items gaining shelf space.
- **Inventory tracking:** Understand stock availability patterns to optimize your own supply chain.
- **Review sentiment analysis:** Export average ratings alongside product data to identify high/low-performing SKUs.
- **Content aggregation:** Feed Walgreens product data into your own marketplace or comparison shopping engine.
- **Market research:** Build longitudinal datasets tracking price, availability, and product mix changes over time.

The Walgreens Product Search Scraper reduces research time from hours to minutes, enabling data-driven decisions across retail, e-commerce, and analytics teams.

***

### Conclusion

The **Walgreens Product Search Scraper** delivers complete, structured product intelligence from one of North America's largest retailers. With 51+ data fields covering pricing, inventory, fulfillment, and media, it unlocks insights that support competitive intelligence, price optimization, and market analysis. Start scraping today and turn retail data into actionable business insights.

# Actor input Schema

## `urls` (type: `array`):

Add the URLs of the products list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.

## `ignore_url_failures` (type: `boolean`):

If true, the scraper will continue running even if some URLs fail to be scraped.

## `max_items_per_url` (type: `integer`):

The maximum number of items to scrape per URL.

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

Select proxies to be used by your scraper.

## Actor input object example

```json
{
  "urls": [
    "https://www.walgreens.com/search/results.jsp?Ntt=shoe&analyticsTag=global"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "NL"
  }
}
```

# 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 = {
    "urls": [
        "https://www.walgreens.com/search/results.jsp?Ntt=shoe&analyticsTag=global"
    ],
    "ignore_url_failures": true,
    "max_items_per_url": 20,
    "proxy": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ],
        "apifyProxyCountry": "NL"
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("stealth_mode/walgreens-product-search-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 = {
    "urls": ["https://www.walgreens.com/search/results.jsp?Ntt=shoe&analyticsTag=global"],
    "ignore_url_failures": True,
    "max_items_per_url": 20,
    "proxy": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "NL",
    },
}

# Run the Actor and wait for it to finish
run = client.actor("stealth_mode/walgreens-product-search-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 '{
  "urls": [
    "https://www.walgreens.com/search/results.jsp?Ntt=shoe&analyticsTag=global"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "NL"
  }
}' |
apify call stealth_mode/walgreens-product-search-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Walgreens Product Search Scraper",
        "description": "Scrape product search results from Walgreens with 51+ data fields including pricing, inventory, images, ratings, and fulfillment details. Perfect for price monitoring, retail analytics, and product intelligence across thousands of SKUs.",
        "version": "0.0",
        "x-build-id": "dWmMCrNUbvOYeV42g"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/stealth_mode~walgreens-product-search-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-stealth_mode-walgreens-product-search-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/stealth_mode~walgreens-product-search-scraper/runs": {
            "post": {
                "operationId": "runs-sync-stealth_mode-walgreens-product-search-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/stealth_mode~walgreens-product-search-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-stealth_mode-walgreens-product-search-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": {
                    "urls": {
                        "title": "URLs of the products list urls to scrape",
                        "type": "array",
                        "description": "Add the URLs of the products list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "ignore_url_failures": {
                        "title": "Continue running even if some URLs fail to be scraped",
                        "type": "boolean",
                        "description": "If true, the scraper will continue running even if some URLs fail to be scraped."
                    },
                    "max_items_per_url": {
                        "title": "Max items per URL",
                        "type": "integer",
                        "description": "The maximum number of items to scrape per URL."
                    },
                    "proxy": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Select proxies to be used by your scraper."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
