# Pinterest Scraper (`silentflow/pinterest-scraper`) Actor

Scrape Pinterest pins, boards, users and search results at scale. Extract images, videos, engagement metrics, pinner data, SEO metadata, prices and comments. 30+ data fields per pin with multi-resolution images.

- **URL**: https://apify.com/silentflow/pinterest-scraper.md
- **Developed by:** [SilentFlow](https://apify.com/silentflow) (community)
- **Categories:** Social media, E-commerce, Lead generation
- **Stats:** 20 total users, 4 monthly users, 100.0% runs succeeded, 2 bookmarks
- **User rating**: No ratings yet

## Pricing

$24.99/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

## Pinterest Scraper

**Turn Pinterest into structured data you can actually use.** Extract pins, boards, user profiles, and search results with 30+ fields per pin, including 9 image resolutions, engagement metrics, creator info, and shopping data. 100 pins in under 30 seconds.

### How it works

![How it works](https://api.apify.com/v2/key-value-stores/jkLbmgsrsgmcAAGJe/records/how-it-works-v1.png)

### ✨ Why use this scraper?

Copying Pinterest data manually? Dealing with scrapers that return 10 fields when you need 30? Getting blocked every other run?

- 📸 **9 image resolutions per pin.** From 170px thumbnails to full originals. No more guessing which URL gives you the size you need.
- 📊 **30+ structured fields per pin.** Engagement, creator, board, SEO, shopping, video, dominant color. Other scrapers skip half of these.
- 🔍 **Search, boards, profiles, idea pins.** One scraper handles every Pinterest content type. No need for separate tools.
- 🛒 **Shopping and price data included.** Enable `includeDetails` to get product prices, sale prices, and rich pin metadata.
- 💬 **Full comment threads.** Enable `includeComments` to get every comment with author info, likes, and timestamps.
- 🎨 **Dominant color and visual data.** Get hex color codes, dimensions, alt text, and visual annotations for every pin.

### 🎯 Use cases

| Team | What they build |
|------|----------------|
| **E-commerce** | Product trend reports from Pinterest shopping pins across categories |
| **Design agencies** | Visual mood boards with high-res images, color palettes, and engagement data |
| **Content marketing** | Top-performing pin analysis to guide content strategy on Pinterest |
| **Academic research** | Visual culture datasets with metadata, engagement, and creator demographics |
| **SEO teams** | Pinterest keyword research using search volume and pin engagement signals |
| **Brand monitoring** | Track how products and brand visuals spread across boards and repins |

### 📥 Input parameters

#### Search

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| `startUrls` | array | * | - | Pinterest URLs to scrape: pins, boards, user profiles, or search URLs |
| `search` | string | * | - | Search Pinterest for this keyword |

\* Either `startUrls` or `search` is required (or both).

#### Limits

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| `maxItems` | integer | No | 100 | Maximum number of pins to return |
| `endPage` | integer | No | 0 | Stop after this page number (0 = no limit) |

#### Options

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| `includeDetails` | boolean | No | false | Fetch SEO metadata, original pin source, and product prices |
| `includeComments` | boolean | No | false | Fetch comments for each pin with author info and likes |

#### Advanced

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| `includeUserInfoOnly` | boolean | No | false | When scraping user profiles, only return user info without their pins |
| `proxy` | object | No | Residential | Proxy configuration |

### 📊 Output data

Each pin returns a structured JSON object with 30+ fields:

```json
{
    "type": "pin",
    "id": "1234567890",
    "url": "https://www.pinterest.com/pin/1234567890/",
    "title": "Modern Minimalist Living Room",
    "description": "Clean lines and neutral tones for a calm, modern space",
    "richSummary": "Interior design inspiration",
    "imageUrl": "https://i.pinimg.com/originals/ab/cd/ef/abcdef123456.jpg",
    "imageUrls": {
        "original": "https://i.pinimg.com/originals/ab/cd/ef/abcdef123456.jpg",
        "736x": "https://i.pinimg.com/736x/ab/cd/ef/abcdef123456.jpg",
        "474x": "https://i.pinimg.com/474x/ab/cd/ef/abcdef123456.jpg",
        "236x": "https://i.pinimg.com/236x/ab/cd/ef/abcdef123456.jpg",
        "170x": "https://i.pinimg.com/170x/ab/cd/ef/abcdef123456.jpg",
        "60x60": "https://i.pinimg.com/60x60/ab/cd/ef/abcdef123456.jpg",
        "136x136": "https://i.pinimg.com/136x136/ab/cd/ef/abcdef123456.jpg",
        "200x150": "https://i.pinimg.com/200x150/ab/cd/ef/abcdef123456.jpg",
        "400x300": "https://i.pinimg.com/400x300/ab/cd/ef/abcdef123456.jpg"
    },
    "videoUrl": "",
    "isVideo": false,
    "saves": 3420,
    "comments": 87,
    "reactions": 215,
    "repinCount": 1890,
    "viewCount": 45200,
    "createdAt": "2025-03-10T14:22:00Z",
    "pinner": {
        "username": "modernhomedesign",
        "fullName": "Modern Home Design",
        "followerCount": 28500,
        "profileUrl": "https://www.pinterest.com/modernhomedesign/",
        "imageUrl": "https://i.pinimg.com/avatars/modernhomedesign.jpg",
        "isVerified": true
    },
    "board": {
        "name": "Living Room Ideas",
        "url": "https://www.pinterest.com/modernhomedesign/living-room-ideas/",
        "pinCount": 412,
        "owner": "modernhomedesign"
    },
    "dominantColor": "#D4C5B2",
    "width": 1920,
    "height": 2560,
    "altText": "Modern minimalist living room with neutral tones",
    "autoAltText": "Living room with white sofa and wooden coffee table",
    "link": "https://www.homedesignmag.com/minimalist-living-room",
    "domain": "homedesignmag.com",
    "richPinType": "article",
    "category": "home_decor",
    "hashtags": ["minimalist", "livingroom", "homedecor"],
    "isStoryPin": false,
    "isCarousel": false,
    "isPromoted": false,
    "isRepin": true,
    "seoTitle": "20 Minimalist Living Room Ideas for 2025",
    "seoDescription": "Discover clean, modern living room designs with neutral palettes",
    "priceValue": 0,
    "priceCurrency": "",
    "originalPin": {
        "id": "9876543210",
        "pinner": {
            "username": "originalcreator",
            "fullName": "Original Creator"
        }
    },
    "commentsList": [
        {
            "id": "5551234",
            "text": "Love this design! Where is the sofa from?",
            "createdAt": "2025-03-12T09:15:00Z",
            "user": {
                "username": "homelover99",
                "fullName": "Sarah Home"
            },
            "likeCount": 12
        }
    ]
}
````

### 🗂️ Data fields

#### Core

| Field | Type | Description |
|-------|------|-------------|
| `type` | string | Content type: pin, board, or user |
| `id` | string | Pinterest pin ID |
| `url` | string | Full Pinterest URL |
| `title` | string | Pin title |
| `description` | string | Pin description |
| `richSummary` | string | Rich pin summary text |
| `createdAt` | string | Creation date (ISO 8601) |

#### Images

| Field | Type | Description |
|-------|------|-------------|
| `imageUrl` | string | Highest resolution image URL |
| `imageUrls` | object | All available resolutions: original, 736x, 474x, 236x, 170x, 60x60, 136x136, 200x150, 400x300 |
| `dominantColor` | string | Hex color code of the dominant color |
| `width` | integer | Image width in pixels |
| `height` | integer | Image height in pixels |
| `altText` | string | Image alt text |
| `autoAltText` | string | Pinterest auto-generated alt text |

#### Video

| Field | Type | Description |
|-------|------|-------------|
| `videoUrl` | string | Video URL if available |
| `isVideo` | boolean | Whether the pin contains a video |
| `isPlayable` | boolean | Whether the video is playable |
| `videoDuration` | float | Video duration in seconds |

#### Engagement

| Field | Type | Description |
|-------|------|-------------|
| `saves` | integer | Number of saves |
| `comments` | integer | Number of comments |
| `reactions` | integer | Number of reactions |
| `repinCount` | integer | Number of repins |
| `viewCount` | integer | Number of views |
| `likeCount` | integer | Number of likes |
| `shareCount` | integer | Number of shares |

#### Creator

| Field | Type | Description |
|-------|------|-------------|
| `pinner` | object | Creator info: username, fullName, followerCount, profileUrl, imageUrl, isVerified |
| `nativeCreator` | object | Original content creator (for repins) |
| `board` | object | Board info: name, url, pinCount, owner |

#### Links and source

| Field | Type | Description |
|-------|------|-------------|
| `link` | string | External source URL |
| `domain` | string | Source website domain |
| `trackingLink` | string | Click tracking URL |
| `canonicalUrl` | string | Canonical URL |

#### Rich pins and shopping

| Field | Type | Description |
|-------|------|-------------|
| `richPinType` | string | Type: article, recipe, product, app, movie |
| `priceValue` | float | Product price (with includeDetails) |
| `priceCurrency` | string | Price currency code |
| `salePrice` | float | Sale price if available |
| `isBuyable` | boolean | Whether the product can be purchased |
| `shoppingInfo` | object | Full shopping metadata |
| `productTags` | array | Product tags on the pin |

#### SEO (with includeDetails)

| Field | Type | Description |
|-------|------|-------------|
| `seoTitle` | string | SEO-optimized title |
| `seoDescription` | string | SEO meta description |
| `originalPin` | object | Source pin info for repins |

#### Comments (with includeComments)

| Field | Type | Description |
|-------|------|-------------|
| `commentsList` | array | Comments with text, author, likes, and date |

#### Content type

| Field | Type | Description |
|-------|------|-------------|
| `isStoryPin` | boolean | Whether it is an idea pin |
| `storyPinData` | object | Idea pin pages and metadata |
| `isCarousel` | boolean | Whether it is a carousel pin |
| `carouselCount` | integer | Number of carousel slides |
| `category` | string | Pinterest category |
| `hashtags` | array | Hashtags on the pin |
| `isPromoted` | boolean | Whether the pin is a promoted ad |
| `isRepin` | boolean | Whether the pin is a repin |

### 🚀 Examples

#### Search for trending interior design pins

```json
{
    "search": "interior design 2025",
    "maxItems": 100
}
```

#### Extract all pins from a board

```json
{
    "startUrls": ["https://www.pinterest.com/pinterest/official-news/"],
    "maxItems": 200
}
```

#### Pull shopping data from fashion pins

```json
{
    "search": "summer dresses",
    "maxItems": 100,
    "includeDetails": true
}
```

#### Get pins with full comment threads

```json
{
    "search": "recipe ideas",
    "maxItems": 50,
    "includeComments": true
}
```

### 💻 Integrations

#### Python

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_API_TOKEN")

run = client.actor("silentflow/pinterest-scraper").call(run_input={
    "search": "home decor",
    "maxItems": 100,
    "includeDetails": True
})

for pin in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(f"{pin['title']}: {pin['imageUrl']}")
    print(f"  Saves: {pin['saves']}, Color: {pin['dominantColor']}")
```

#### JavaScript

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

const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });

const run = await client.actor('silentflow/pinterest-scraper').call({
    search: 'fashion trends',
    maxItems: 100,
    includeDetails: true
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach(pin => {
    console.log(`${pin.title}: ${pin.imageUrl}`);
    console.log(`  Saves: ${pin.saves}, Color: ${pin.dominantColor}`);
});
```

### 📈 Performance

| Metric | Value |
|--------|-------|
| Speed | ~50-100 pins per minute |
| Fields per pin | 30+ |
| Image resolutions | 9 per pin |
| Detail fetching | 5 parallel workers |

### 💡 Tips for best results

1. **Start with 10 items to test.** Verify the output format matches your needs before running large jobs.
2. **Use board URLs for targeted data.** Boards return focused, curated pins. Search results are broader but noisier.
3. **Enable includeDetails only when needed.** It adds SEO metadata and prices but requires an extra request per pin, which increases run time.
4. **Enable includeComments selectively.** Comment fetching adds one request per pin. Use it only when you need the actual comment text and authors.
5. **Use endPage with large boards.** For boards with thousands of pins, set `endPage` to limit how deep the scraper paginates.

### ❓ FAQ

**Can I scrape private boards?**
No. Only publicly visible Pinterest content is accessible.

**Are videos included?**
Yes. Video pins include `videoUrl`, `videoDuration`, and `isPlayable` fields.

**What are idea pins?**
Idea pins (formerly story pins) are multi-page pins. The scraper returns them with `isStoryPin: true` and the full `storyPinData` object.

**What does includeDetails add?**
SEO title and description, the original pin source for repins, and product price and shopping data. These fields require an extra request per pin.

**How many image resolutions do I get?**
Nine: original, 736x, 474x, 236x, 170x, 60x60, 136x136, 200x150, and 400x300.

**What URL formats are supported?**
Pins (`/pin/123/`), boards (`/user/board-name/`), user profiles (`/username/`), and search URLs (`/search/pins/?q=keyword`).

### 📬 Support

Need something this scraper doesn't do yet? We ship features fast.

- Feature requests go straight to our backlog
- Enterprise needs? We do custom integrations

Response time: usually under 24 hours.

Check out our other scrapers: [SilentFlow on Apify](https://apify.com/silentflow)

# Actor input Schema

## `search` (type: `string`):

Search Pinterest for this keyword (e.g. 'interior design', 'fashion', 'recipes').

## `startUrls` (type: `array`):

Specific Pinterest URLs to scrape: pins, boards, user profiles, or search URLs. Use instead of or alongside keyword search.

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

Maximum number of pins to scrape.

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

Fetch SEO metadata, original pin source, and product prices. Adds ~1 request per pin.

## `includeUserInfoOnly` (type: `boolean`):

When scraping user profiles, only get user info without their pins.

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

Residential proxies are recommended.

## Actor input object example

```json
{
  "search": "home decor ideas",
  "maxItems": 100,
  "includeDetails": false,
  "includeUserInfoOnly": false,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

## `pins` (type: `string`):

Complete Pinterest data including: type (pin/board/user), id, title, description, imageUrl (high-res), videoUrl, saves (save count), comments (comment count), reactions, url, createdAt, boardName, boardUrl, userName, userUrl, userFollowers, tags, link (external URL), isVideo.

# 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 = {
    "search": "home decor ideas",
    "proxy": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("silentflow/pinterest-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 = {
    "search": "home decor ideas",
    "proxy": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("silentflow/pinterest-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 '{
  "search": "home decor ideas",
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call silentflow/pinterest-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Pinterest Scraper",
        "description": "Scrape Pinterest pins, boards, users and search results at scale. Extract images, videos, engagement metrics, pinner data, SEO metadata, prices and comments. 30+ data fields per pin with multi-resolution images.",
        "version": "1.0",
        "x-build-id": "l4k21f1yhmaCAkWdO"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/silentflow~pinterest-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-silentflow-pinterest-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/silentflow~pinterest-scraper/runs": {
            "post": {
                "operationId": "runs-sync-silentflow-pinterest-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/silentflow~pinterest-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-silentflow-pinterest-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": {
                    "search": {
                        "title": "🔎 Search Keyword",
                        "type": "string",
                        "description": "Search Pinterest for this keyword (e.g. 'interior design', 'fashion', 'recipes')."
                    },
                    "startUrls": {
                        "title": "🔗 Pinterest URLs",
                        "type": "array",
                        "description": "Specific Pinterest URLs to scrape: pins, boards, user profiles, or search URLs. Use instead of or alongside keyword search.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum number of pins to scrape.",
                        "default": 100
                    },
                    "includeDetails": {
                        "title": "📊 Include SEO & Price Data",
                        "type": "boolean",
                        "description": "Fetch SEO metadata, original pin source, and product prices. Adds ~1 request per pin.",
                        "default": false
                    },
                    "includeUserInfoOnly": {
                        "title": "👤 User Info Only",
                        "type": "boolean",
                        "description": "When scraping user profiles, only get user info without their pins.",
                        "default": false
                    },
                    "proxy": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Residential proxies are recommended."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
