# Facebook Competitor Ads Scraper (`igview-owner/facebook-page-ads`) Actor

Scrape all ad campaigns from any brand's Facebook page. Extract video URLs, image links, and copy to reverse-engineer successful competitor marketing.

- **URL**: https://apify.com/igview-owner/facebook-page-ads.md
- **Developed by:** [Sachin Kumar Yadav](https://apify.com/igview-owner) (community)
- **Categories:** Social media, Lead generation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 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

## Facebook Page Ads - Page Ad Library Scraper

**Scrape all ads from a specific Facebook Page using the Ad Library. Extract ad creatives, copy, targeting platforms, and page info. Supports pagination, country filtering, active status filtering, and multiple platforms (Facebook, Instagram, Messenger, Audience Network). Built with Apify best practices for reliability and speed.**

---

### Table of Contents

- [Features](#features)
- [Use Cases](#use-cases)
- [Quick Start](#quick-start)
- [Input Parameters](#input-parameters)
- [Output Format](#output-format)
- [Supported Countries](#supported-countries)
- [Performance & Limits](#performance--limits)
- [FAQ](#faq)
- [Troubleshooting](#troubleshooting)
- [Tags](#tags)

---

### Features

- **Page-Specific Scrapes** - Target any public Facebook Page by entering its unique Page ID.
- **Pagination Support** - Scrape multiple pages of ad search results (up to 20 pages per run).
- **Active Status Filtering** - Filter ads by their status: active, inactive, or all.
- **Multi-Platform Data** - Extract platform info (Facebook, Instagram, Messenger, and Audience Network).
- **Rich Ad Metadata** - Retrieve ad copy, creatives (images/videos), call-to-action details, advertiser page info, reach estimates, and spend.
- **Global Targeting** - Search ads across 50+ countries worldwide.
- **Fast & Reliable** - Built-in API key rotation, automatic retries, and smart error recovery.

---

### Use Cases

| Use Case | Description | Key Benefits |
|----------|-------------|--------------|
| Competitor Benchmarking | Scrape all ads from a direct competitor's page to evaluate their creative strategies. | Extract active creatives, copy styles, and CTAs. |
| Creative Research | Analyze the exact ads and offers of industry leaders. | Model successful ad styles and formats for your brand. |
| Ad Spend Tracking | Monitor political or issue advertiser pages to see their estimated spend. | Review spend ranges and total impressions per page. |
| Offer Monitoring | Detect when a page launches new seasonal discount codes or promotional links. | Stay ahead of competitor promotional events. |
| Marketing Automation | Sync advertiser ads directly with a media-buying dashboard. | Automate creative analysis and competitor monitoring. |

---

### Quick Start

#### 1. Basic - Simple Page Ads Search
```json
{
  "pageId": "603588909508573",
  "country": "US",
  "maxPages": 1
}
````

#### 2. Advanced - Pagination & Active Status Filter

```json
{
  "pageId": "603588909508573",
  "country": "GB",
  "activeStatus": "ACTIVE",
  "maxPages": 5
}
```

***

### Input Parameters

| Parameter | Type | Required | Description | Default | Example |
|-----------|------|----------|-------------|---------|---------|
| `pageId` | String | Yes | The Facebook Page ID to extract ads from | - | `"603588909508573"`, `"102484795092789"` |
| `country` | String | No | Two-letter country code (ISO 3166-1 alpha-2) | `"US"` | `"US"`, `"GB"`, `"CA"`, `"DE"`, `"IN"` |
| `activeStatus` | String | No | Filter ads by active/inactive status (`ALL`, `ACTIVE`, `INACTIVE`) | `"ALL"` | `"ACTIVE"`, `"INACTIVE"`, `"ALL"` |
| `maxPages` | Integer | No | Number of result pages to scrape (1-20). Each page contains ~10 ads. | `1` | `3`, `5`, `10` |

***

### Output Format

#### Ad Result Data Structure

```json
{
  "source": "facebook_page_ads",
  "input_page_id": "603588909508573",
  "position": 1,
  "ad_archive_id": "123456789012345",
  "collation_count": 1,
  "collation_id": "1234567890",
  "is_active": true,
  "page_id": "603588909508573",
  "page_name": "AI Innovation Hub",
  "page_profile_uri": "https://www.facebook.com/AIInnovationHub",
  "page_profile_picture_url": "https://scontent.xx.fbcdn.net/v/t39.35426-6/...",
  "page_like_count": 15420,
  "page_categories": ["Software Company", "Artificial Intelligence"],
  "page_is_deleted": false,
  "ad_body": "Unlock the power of artificial intelligence with our new productivity platform! Get 50% off today.",
  "title": "Boost Your Productivity",
  "caption": "aihub.com",
  "display_format": "video",
  "cta_text": "Sign Up",
  "cta_type": "SIGN_UP",
  "link_url": "https://aihub.com/promo",
  "link_description": "Start your free trial today and experience the difference.",
  "byline": "Sponsored",
  "image_url": "https://scontent.xx.fbcdn.net/v/t39.35426-6/...",
  "image_resized_url": "https://scontent.xx.fbcdn.net/v/t39.35426-6/...",
  "video_hd_url": "https://video.xx.fbcdn.net/v/t42.1790-2/...mp4",
  "video_sd_url": "https://video.xx.fbcdn.net/v/t42.1790-2/...mp4",
  "video_preview_image_url": "https://scontent.xx.fbcdn.net/v/t39.35426-6/...",
  "images_count": 0,
  "videos_count": 1,
  "cards_count": 0,
  "branded_content_page_id": null,
  "branded_content_page_name": null,
  "publisher_platform": ["facebook", "instagram", "messenger", "audience_network"],
  "categories": ["issues_eg_pol_gov"],
  "targeted_or_reached_countries": ["US"],
  "start_date": "2026-06-20T00:00:00.000Z",
  "end_date": null,
  "start_date_unix": 1781913600,
  "end_date_unix": null,
  "currency": "USD",
  "spend": {
    "lower_bound": "0",
    "upper_bound": "99"
  },
  "reach_estimate": {
    "lower_bound": "1000",
    "upper_bound": "5000"
  },
  "impressions_text": "1K-5K",
  "gated_type": "none",
  "is_aaa_eligible": true,
  "contains_digital_created_media": false,
  "contains_sensitive_content": false,
  "hide_data_status": "none",
  "has_user_reported": false,
  "is_reshared": false,
  "scraped_at": "2026-06-23T13:20:00.000Z"
}
```

#### Output Fields Explained

| Field | Type | Description |
|-------|------|-------------|
| `source` | String | Source indicator, always `facebook_page_ads` |
| `input_page_id` | String | The exact input Page ID queried by the user |
| `position` | Integer | Position of the ad in the scraper batch (1-based) |
| `ad_archive_id` | String | Facebook's unique Ad Archive ID |
| `collation_count` | Integer | Number of identical or similar ads grouped together |
| `collation_id` | String | Collation ID for grouped ads |
| `is_active` | Boolean | Whether the ad is currently active/running |
| `page_id` | String | ID of the advertiser's Facebook Page |
| `page_name` | String | Name of the advertiser's Facebook Page |
| `page_profile_uri` | String | URL of the advertiser's Facebook profile/page |
| `page_profile_picture_url` | String | URL of the advertiser's profile picture |
| `page_like_count` | Integer | Total number of likes for the page |
| `page_categories` | Array | Categories associated with the advertiser's page |
| `page_is_deleted` | Boolean | Whether the advertiser's page has been deleted |
| `ad_body` | String | The main ad text/copy |
| `title` | String | Ad headline or title |
| `caption` | String | Ad caption/domain name displayed in the creative |
| `display_format` | String | Creative format (`image`, `video`, `carousel`, etc.) |
| `cta_text` | String | Button text/Call to action (e.g. "Shop Now") |
| `cta_type` | String | System type code for the CTA (e.g. "SHOP\_NOW") |
| `link_url` | String | The final destination URL of the ad |
| `link_description` | String | Description text below the title |
| `byline` | String | Sponsor byline text (e.g. "Sponsored") |
| `image_url` | String | Direct link to the full-size creative image |
| `video_hd_url` | String | Direct link to the high-definition video file |
| `publisher_platform` | Array | Platforms where the ad is published (e.g. `facebook`, `instagram`) |
| `targeted_or_reached_countries` | Array | Country codes targeted by this ad campaign |
| `start_date` | String | ISO formatted start date of the ad campaign |
| `end_date` | String | ISO formatted end date of the ad campaign (if stopped) |
| `currency` | String | Currency of estimated spend (e.g. USD, EUR) |
| `spend` | Object | Range containing `lower_bound` and `upper_bound` of spend estimation |
| `reach_estimate` | Object | Estimated range of audience reached |
| `impressions_text` | String | Formatted text of total impressions (e.g., "1K-5K") |
| `scraped_at` | String | Timestamp of extraction |

***

### Supported Countries

The scraper supports 50 countries context. Here are some of the most commonly used country codes:

| Region | Code | Region | Code | Region | Code |
|--------|------|--------|------|--------|------|
| United States | `US` | United Kingdom | `GB` | Canada | `CA` |
| Australia | `AU` | India | `IN` | Germany | `DE` |
| France | `FR` | Italy | `IT` | Spain | `ES` |
| Brazil | `BR` | Mexico | `MX` | Japan | `JP` |
| South Korea | `KR` | Netherlands | `NL` | Sweden | `SE` |
| Poland | `PL` | Türkiye | `TR` | United Arab Emirates | `AE` |
| Saudi Arabia | `SA` | Singapore | `SG` | Indonesia | `ID` |

*(Check `.actor/input_schema.json` for the complete list of 50 supported countries).*

***

### Performance & Limits

- **Pagination Limit** - Up to 20 pages per page search can be requested to optimize execution time and API limits.
- **Batching** - Data is saved in batches of 10 items to prevent loss during unexpected errors.
- **Concurrency** - The actor automatically handles rate-limiting and rotating credentials for smooth performance.

***

### FAQ

- **Q: How can I find a Facebook Page ID?**
  - You can copy it directly from the Facebook Page URL or run the **Facebook Page Search Scraper** to search pages by name.
- **Q: Does this scraper require Facebook account credentials?**
  - No. It uses public API endpoints via RapidAPI and rotates access keys automatically, requiring no login or cookies on your part.
- **Q: Can I scrape inactive historical ads?**
  - Yes, as long as they are stored in the Facebook Ad Library and you set the `activeStatus` filter to `ALL` or `INACTIVE`.
- **Q: Why does country filtering matter for page ads?**
  - Facebook Ad Library displays page ads within regional parameters. Selecting the correct country context ensures you get the exact ads running for that country.

***

### Troubleshooting

| Issue | Cause | Solution |
|-------|-------|----------|
| "No Page ID provided" | Empty or missing `pageId` | Enter a valid numerical Page ID in the input schema |
| No ads found | The page is not running ads in the selected country, or the Page ID is incorrect | Verify the Page ID using the Facebook Page Search Scraper, or change the target country |
| Key rotation alerts | High rate of requests | Normal behavior. The actor automatically switches keys and continues scraping |
| Slow execution | Many pages requested | Reduce `maxPages` to run the actor faster |

***

### Why Choose This Actor?

- Page-specific Facebook Ad extraction
- Rich creatives (Direct HD video & image links)
- Advertiser details (Page likes, categories, etc.)
- Multi-platform targeting info
- Automatic key-rotation & retries
- Downloadable as CSV, Excel, JSON, or HTML

***

### Tags

`facebook page ads scraper`, `facebook ad library scraper`, `competitor spy tool`, `facebook advertiser page scraper`, `spy tool scraper`, `dropshipping competitor monitor`, `facebook video ads downloader`, `ad creative scraper`, `facebook competitor research`, `apify actor`

***

### Get Started Now

1. Enter the **Facebook Page ID** (e.g., `603588909508573`)
2. Select your target **Country** (e.g., `US`)
3. Choose the **Ad Status** (Active/Inactive/All)
4. Set the **Maximum Pages** to scrape
5. Click **Start** to run the scraper
6. Export your data in JSON, CSV, or Excel format
7. Click ["Try for free"](https://apify.com?fpr=ykgg9c) to test the actor

***

### Related Actors

- **[Facebook Ads Search Scraper](https://apify.com/igview-owner/facebook-ads-search)** - Search ads across the entire Ad Library by keyword.
- **[Facebook Page Search Scraper](https://apify.com/igview-owner/facebook-page-search)** - Search and find Facebook Page IDs and info.

*Built using Apify Platform | Optimized for Performance & Reliability*

# Actor input Schema

## `pageId` (type: `string`):

💬 Enter the Facebook Page ID to scrape ads from (e.g., '603588909508573'). You can find the Page ID from the page's URL or using the Facebook Page Search actor.

## `country` (type: `string`):

🗺️ Select the country to search ads in. Uses two-letter country code (ISO 3166-1 alpha-2).

## `activeStatus` (type: `string`):

🔄 Filter ads by their active status. Choose ALL to get both active and inactive ads, ACTIVE for currently running ads, or INACTIVE for stopped ads.

## `maxPages` (type: `integer`):

📊 Number of result pages to scrape (1-20). Each page contains ~10 ads. More pages = more results but longer runtime and higher API usage.

## Actor input object example

```json
{
  "pageId": "603588909508573",
  "country": "US",
  "activeStatus": "ALL",
  "maxPages": 1
}
```

# Actor output Schema

## `ads_overview` (type: `string`):

Open the dataset view with an overview of all page ads including ad copy, format, status, platforms, and dates.

# 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 = {
    "pageId": "603588909508573",
    "country": "US",
    "activeStatus": "ALL",
    "maxPages": 1
};

// Run the Actor and wait for it to finish
const run = await client.actor("igview-owner/facebook-page-ads").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 = {
    "pageId": "603588909508573",
    "country": "US",
    "activeStatus": "ALL",
    "maxPages": 1,
}

# Run the Actor and wait for it to finish
run = client.actor("igview-owner/facebook-page-ads").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 '{
  "pageId": "603588909508573",
  "country": "US",
  "activeStatus": "ALL",
  "maxPages": 1
}' |
apify call igview-owner/facebook-page-ads --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=igview-owner/facebook-page-ads",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Facebook Competitor Ads Scraper",
        "description": "Scrape all ad campaigns from any brand's Facebook page. Extract video URLs, image links, and copy to reverse-engineer successful competitor marketing.",
        "version": "1.0",
        "x-build-id": "2SCV1w8MxBQyizKfL"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/igview-owner~facebook-page-ads/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-igview-owner-facebook-page-ads",
                "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/igview-owner~facebook-page-ads/runs": {
            "post": {
                "operationId": "runs-sync-igview-owner-facebook-page-ads",
                "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/igview-owner~facebook-page-ads/run-sync": {
            "post": {
                "operationId": "run-sync-igview-owner-facebook-page-ads",
                "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": [
                    "pageId"
                ],
                "properties": {
                    "pageId": {
                        "title": "🆔 Facebook Page ID",
                        "minLength": 1,
                        "maxLength": 50,
                        "type": "string",
                        "description": "💬 Enter the Facebook Page ID to scrape ads from (e.g., '603588909508573'). You can find the Page ID from the page's URL or using the Facebook Page Search actor.",
                        "default": "603588909508573"
                    },
                    "country": {
                        "title": "🌍 Country",
                        "enum": [
                            "US",
                            "GB",
                            "CA",
                            "AU",
                            "IN",
                            "DE",
                            "FR",
                            "IT",
                            "ES",
                            "BR",
                            "MX",
                            "JP",
                            "KR",
                            "NL",
                            "SE",
                            "PL",
                            "TR",
                            "AE",
                            "SA",
                            "SG",
                            "PH",
                            "ID",
                            "TH",
                            "VN",
                            "EG",
                            "ZA",
                            "NG",
                            "KE",
                            "PK",
                            "BD",
                            "AR",
                            "CO",
                            "CL",
                            "PE",
                            "RO",
                            "CZ",
                            "HU",
                            "AT",
                            "CH",
                            "BE",
                            "PT",
                            "DK",
                            "NO",
                            "FI",
                            "IE",
                            "NZ",
                            "IL",
                            "MY",
                            "TW",
                            "HK"
                        ],
                        "type": "string",
                        "description": "🗺️ Select the country to search ads in. Uses two-letter country code (ISO 3166-1 alpha-2).",
                        "default": "US"
                    },
                    "activeStatus": {
                        "title": "📊 Ad Status Filter",
                        "enum": [
                            "ALL",
                            "ACTIVE",
                            "INACTIVE"
                        ],
                        "type": "string",
                        "description": "🔄 Filter ads by their active status. Choose ALL to get both active and inactive ads, ACTIVE for currently running ads, or INACTIVE for stopped ads.",
                        "default": "ALL"
                    },
                    "maxPages": {
                        "title": "📄 Maximum Pages",
                        "minimum": 1,
                        "maximum": 20,
                        "type": "integer",
                        "description": "📊 Number of result pages to scrape (1-20). Each page contains ~10 ads. More pages = more results but longer runtime and higher API usage.",
                        "default": 1
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
