# Specialized Bike Scraper (`nerdnd/specialized-bike-scraper`) Actor

https://www.specialized.com scraper that collects bycicle specs on the product pages.

- **URL**: https://apify.com/nerdnd/specialized-bike-scraper.md
- **Developed by:** [nerdnd](https://apify.com/nerdnd) (community)
- **Categories:** Travel
- **Stats:** 8 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$20.00/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#rental-actors

## 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

### What does Specialized Bike Scraper do?

Mtbdatabase Scraper will enable you to collect bycicle specs(name, price, sizes, etc.) on the product pages.

Specialized Bike Scraper can scrape:

-   image_urls
-   loaded_url
-   name
-   subname
-   colors
-   sizes
-   price_sale
-   price_old
-   categories
-   frame
-   fork
-   handlebars
-   stem
-   tape
-   saddle
-   seatpost
-   seat_binder
-   rear_brake
-   front_brake
-   shift_levers
-   front_derailleur
-   rear_derailleur
-   cassette
-   crankset
-   chainrings
-   bottom_bracket
-   chain
-   front_wheel
-   rear_wheel
-   front_tire
-   rear_tire
-   inner_tubes
-   head_unit_and_mount
-   product_id
-   weight
-   weight_size

### Why scrape [Specialized](https://www.specialized.com)?

[Specialized](https://www.specialized.com) is a cornerstone in the cycling industry, renowned for its high-quality products and significant influence. Here’s why specialized.com is an essential site in the world of cycling:

1. Leading Brand in the Industry

    Specialized is one of the most recognized and respected brands in the cycling world. The company has a long history of innovation and excellence, consistently producing top-tier bicycles and cycling equipment that set industry standards.

2. Comprehensive Product Range

    Specialized.com offers an extensive range of products, including road bikes, mountain bikes, electric bikes, and accessories. This diverse selection ensures that cyclists of all types can find the perfect equipment for their needs, whether they are beginners, enthusiasts, or professionals.

3. Cutting-Edge Technology

    Specialized is known for its cutting-edge technology and continuous innovation. The brand invests heavily in research and development to create bikes that are lighter, faster, and more durable. Specialized.com showcases these technological advancements, providing detailed information about the features and benefits of each product.

4. High-Quality Standards

    Products from Specialized are synonymous with quality. The company maintains rigorous quality control processes to ensure that every bike and accessory meets the highest standards. This commitment to quality is reflected on Specialized.com, where customers can explore detailed specifications and trust in the reliability of the products.

5. Educational Resources and Support

    Specialized.com is not just a shopping platform; it is also a valuable educational resource. The site offers extensive guides, tips, and articles on various aspects of cycling, helping customers make informed decisions and improve their riding skills. Additionally, Specialized provides excellent customer support, assisting users with product selection and maintenance.

6. Community Engagement

    Specialized actively engages with the cycling community through events, sponsorships, and initiatives. The brand supports professional cycling teams and organizes events that bring cyclists together. This community focus is evident on Specialized.com, where users can find information about upcoming events and sponsored athletes.

7. Sustainability Efforts

    Specialized is committed to sustainability and environmental responsibility. The company works to reduce its carbon footprint and promotes eco-friendly practices within the cycling industry. Information about these efforts is readily available on Specialized.com, highlighting the brand’s dedication to making a positive impact on the

### How to scrape [Specialized](https://www.specialized.com)

It's easy to scrape [specialized.com](https://www.specialized.com) with Specialized Bike Scraper. Just follow these few steps and you'll get your data in a few minutes.

1. Click on Try for free.
2. Enter start urls(it should be product detail pages) you want to scrape.
3. Click on Run.
4. When Specialized Bike Scraper has finished, preview or download your data from the Dataset tab.

### Results

```json
[
    {
        "name": "S-Works Tarmac SL8 LTD",
        "subname": "Red Bull - BORA - hansgrohe Edition",
        "price_sale": "$16,500",
        "categories": [
            "Bikes",
            "Road Bikes",
            "Performance Road Bikes",
            "Tarmac"
        ],
        "sizes": ["49", "52", "54", "56", "58"],
        "image_urls": {
            "Tdf - Bora Red Bull": [
                "https://assets.specialized.com/i/specialized/94925-03_TARMAC-SW-LTD-TDF-BORA-RED-BULL_HERO-PDP?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/94925-03_TARMAC-SW-LTD-TDF-BORA-RED-BULL_FDSQ?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/94925-03_TARMAC-SW-LTD-TDF-BORA-RED-BULL_RDSQ?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/94925-03_TARMAC-SW-LTD-TDF-BORA-RED-BULL_D1-POV?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/94925-03_TARMAC-SW-LTD-TDF-BORA-RED-BULL_D3-HT?$scom-pdp-product-image$&fmt=auto"
            ]
        },
        "loaded_url": "https://www.specialized.com/us/en/s-works-tarmac-sl8-ltd-red-bull---bora---hansgrohe-edition/p/4279319?color=5446749-4279319",
        "colors": ["Tdf - Bora Red Bull"],
        "frame": "S-Works Tarmac SL8 FACT 12r Carbon, Rider First Engineered™, Win Tunnel Engineered, Clean Routing, Threaded BB, 12x142mm thru-axle, flat-mount disc",
        "fork": "S-Works FACT 12r Carbon, 12x100mm thru-axle, flat-mount disc",
        "handlebars": "Roval Rapide Cockpit, Integrated Bar/Stem",
        "stem": "Roval Rapide Cockpit, Integrated Bar/Stem",
        "tape": "Supacaz Super Sticky Kush",
        "saddle": "S-Works Power with Mirror",
        "seatpost": "S-Works Tarmac SL8 Carbon seat post, FACT Carbon, 15mm offset",
        "seat_binder": "Tarmac Integrated Wedge",
        "rear_brake": "NEW SRAM RED AXS, hydraulic disc",
        "front_brake": "NEW SRAM RED AXS, hydraulic disc",
        "shift_levers": "NEW SRAM RED AXS, hydraulic disc, LTD",
        "front_derailleur": "NEW SRAM RED AXS, braze-on",
        "rear_derailleur": "NEW SRAM RED AXS, 12-speed",
        "cassette": "NEW SRAM RED XG-1290, 12-speed, 10-33t",
        "crankset": "NEW SRAM RED AXS Power Meter, LTD",
        "chainrings": "48/35",
        "bottom_bracket": "Ceramic Speed - DUB",
        "chain": "NEW SRAM RED 12-speed",
        "front_wheel": "Rapide CLX II Team, Hooked, 700c, Disc Brake, Tubeless, 51mm-Depth, 21mm Internal Width, DT Swiss Aerolite II spokes, Ceramic Bearings",
        "rear_wheel": "Rapide CLX II Team, Hooked, 700c, Disc Brake, Tubeless, 60mm-Depth, 21mm Internal Width, DT Swiss Aerolite II spokes, Ceramic Bearings",
        "front_tire": "Turbo Cotton, 320 TPI, 700x26mm",
        "rear_tire": "Turbo Cotton, 320 TPI, 700x26mm",
        "inner_tubes": "Turbo Ultralight, 60mm Front, 80mm Rear, Presta valve",
        "head_unit_and_mount": "K-Edge, LTD, Hammerhead Karoo III",
        "product_id": "279319",
        "weight": "6.66 kg (14 lb, 10.9 oz)",
        "weight_size": "56"
    },
    {
        "name": "Turbo Creo 2 Comp",
        "price_sale": "₩8,010,000",
        "price_old": "₩8,900,000",
        "categories": ["Bikes", "Electric Bikes", "E-Road Bikes", "Turbo Creo"],
        "sizes": ["49", "52", "54", "56", "58"],
        "image_urls": {
            "SATIN HARVEST GOLD HARVEST GOLD TINT": [
                "https://assets.specialized.com/i/specialized/98123-50_CREO-SL-COMP-CARBON-HRVGLD-HRVGLDTNT_HERO?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-50_CREO-SL-COMP-CARBON-HRVGLD-HRVGLDTNT_FDSQ?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-50_CREO-SL-COMP-CARBON-HRVGLD-HRVGLDTNT_RDSQ?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-50_CREO-SL-COMP-CARBON-HRVGLD-HRVGLDTNT_D1-POV?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-50_CREO-SL-COMP-CARBON-HRVGLD-HRVGLDTNT_D3-HT?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-50_CREO-SL-COMP-CARBON-HRVGLD-HRVGLDTNT_D4-STTT?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-50_CREO-SL-COMP-CARBON-HRVGLD-HRVGLDTNT_D5-MOTOR?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-50_CREO-SL-COMP-CARBON-HRVGLD-HRVGLDTNT_D7-TCU?$scom-pdp-product-image$&fmt=auto"
            ],
            "SATIN DEEP LAKE METALLIC DEEP LAKE": [
                "https://assets.specialized.com/i/specialized/98123-51_CREO-SL-COMP-CARBON-DPLAKE-DPLAKEMET_HERO?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-51_CREO-SL-COMP-CARBON-DPLAKE-DPLAKEMET_FDSQ?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-51_CREO-SL-COMP-CARBON-DPLAKE-DPLAKEMET_RDSQ?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-51_CREO-SL-COMP-CARBON-DPLAKE-DPLAKEMET_D1-POV?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-51_CREO-SL-COMP-CARBON-DPLAKE-DPLAKEMET_D3-HT?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-51_CREO-SL-COMP-CARBON-DPLAKE-DPLAKEMET_D4-STTT?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-51_CREO-SL-COMP-CARBON-DPLAKE-DPLAKEMET_D5-MOTOR?$scom-pdp-product-image$&fmt=auto",
                "https://assets.specialized.com/i/specialized/98123-51_CREO-SL-COMP-CARBON-DPLAKE-DPLAKEMET_D7-TCU?$scom-pdp-product-image$&fmt=auto"
            ]
        },
        "loaded_url": "https://www.specialized.com/kr/en/turbo-creo-2-comp/p/221801?color=367423-221801",
        "colors": [
            "SATIN HARVEST GOLD HARVEST GOLD TINT",
            "SATIN DEEP LAKE METALLIC DEEP LAKE"
        ],
        "frame": "FACT 11r carbon, front/rear thru-axles, fully integrated down tube battery, internal cable routing, fender/rack mounts, 12x142mm",
        "seat_binder": "Specialized Alloy, 31.8",
        "fork": "Future Shock 3.2 w/ Smooth Boot, 12x100mm thru-axle, flat-mount disc",
        "motor": "New Specialized 1.2 SL Custom Lightweight Motor",
        "ui/remote": "Specialized MasterMind TCU, percentage of remaining charge, 120 possible display configurations, MicroTune assist adjustment, over-the-air updates, ANT+/Bluetooth®, w/Handlebar remote",
        "battery": "Specialized SL1-320, fully integrated, 320Wh",
        "charger": "Custom charger, 48V System w/ SL system charger plug",
        "wiring_harness": "Custom Specialized wiring harness w/ charge port",
        "handlebars": "Specialized Adventure Gear Hover, 103mm drop x 70mm reach x 12º flare",
        "seatpost": "Trans-X Dropper, 50mm Travel",
        "stem": "Future Stem Comp",
        "tape": "Supacaz Super Sticky Kush",
        "saddle": "Body Geometry Power Sport",
        "grips": "HANDLE BAR TAPE, SUPACAZ, BT-601OE, W/EXTRA TAPE(L:9CM) SUPER STICKY KUSH CLASSIC, PU LEATHER, , BLK",
        "front_brake": "SRAM Apex eTAP AXS, hydraulic disc",
        "rear_brake": "SRAM Apex eTAP AXS, hydraulic disc",
        "rear_derailleur": "SRAM X1 Eagle AXS",
        "shift_levers": "SRAM Apex eTap AXS",
        "cassette": "SRAM PG1210, 12-Speed, 11-50t",
        "crankset": "SRAM Alloy DUB Crank Arms",
        "chain": "SRAM NX Eagle, 12-Speed",
        "chainrings": "SRAM X-Sync Eagle, 107 BCD, 44T",
        "front_wheel": "DT Swiss G540 rim, 24mm internal width, tubeless ready, 24h, Specialized full sealed bearing thru axle hub, centerlock disc, DT Swiss Champion 14G stainless steel spokes, DT Swiss brass nipples",
        "rear_wheel": "DT Swiss G540 rim, 24mm internal width, tubeless ready, 24h, Specialized full sealed bearing thru axle hub, centerlock disc, DT Swiss Champion 14G stainless steel spokes, DT Swiss brass nipples",
        "front_tire": "Tracer Pro, 700x47c",
        "rear_tire": "Tracer Pro, 700x47c",
        "inner_tubes": "700x32/50mm, 48mm Presta valve",
        "weight": "14.47 kg (31 lb, 14.4 oz)",
        "weight_size": "56"
    }
]
````

### Is it legal to scrape [Specialized](https://www.specialized.com)?

Note that personal data is protected by GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers. We also recommend that you read our blog post: [is web scraping legal?](https://blog.apify.com/is-web-scraping-legal/)

# Actor input Schema

## `start_urls` (type: `array`):

Product page URLs to start with

## `proxyConfiguration` (type: `object`):

Specifies proxy servers that will be used by the scraper in order to hide its origin.

## Actor input object example

```json
{
  "start_urls": [
    "https://www.specialized.com/us/en/s-works-tarmac-sl8-ltd-red-bull---bora---hansgrohe-edition/p/4279319?color=5446749-4279319",
    "https://www.specialized.com/kr/en/turbo-creo-2-comp/p/221801?color=367422-221801"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# 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 = {
    "start_urls": [
        "https://www.specialized.com/us/en/s-works-tarmac-sl8-ltd-red-bull---bora---hansgrohe-edition/p/4279319?color=5446749-4279319",
        "https://www.specialized.com/kr/en/turbo-creo-2-comp/p/221801?color=367422-221801"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("nerdnd/specialized-bike-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 = {
    "start_urls": [
        "https://www.specialized.com/us/en/s-works-tarmac-sl8-ltd-red-bull---bora---hansgrohe-edition/p/4279319?color=5446749-4279319",
        "https://www.specialized.com/kr/en/turbo-creo-2-comp/p/221801?color=367422-221801",
    ],
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("nerdnd/specialized-bike-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 '{
  "start_urls": [
    "https://www.specialized.com/us/en/s-works-tarmac-sl8-ltd-red-bull---bora---hansgrohe-edition/p/4279319?color=5446749-4279319",
    "https://www.specialized.com/kr/en/turbo-creo-2-comp/p/221801?color=367422-221801"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call nerdnd/specialized-bike-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Specialized Bike Scraper",
        "description": "https://www.specialized.com scraper that collects bycicle specs on the product pages.",
        "version": "0.0",
        "x-build-id": "4shZU8h8Afy2jaU2P"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/nerdnd~specialized-bike-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-nerdnd-specialized-bike-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/nerdnd~specialized-bike-scraper/runs": {
            "post": {
                "operationId": "runs-sync-nerdnd-specialized-bike-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/nerdnd~specialized-bike-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-nerdnd-specialized-bike-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": [
                    "start_urls"
                ],
                "properties": {
                    "start_urls": {
                        "title": "Start URLs",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Product page URLs to start with",
                        "items": {
                            "type": "string"
                        }
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Specifies proxy servers that will be used by the scraper in order to hide its origin.",
                        "default": {
                            "useApifyProxy": 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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
