# Mansionglobal Property Search Scraper (`stealth_mode/mansionglobal-property-search-scraper`) Actor

Scrape luxury property listings from Mansion Global with ease. Extract 30+ fields including price, bedrooms, bathrooms, location, images, brokerage details, and more — perfect for real estate analysts, investors, and market researchers.

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

## Pricing

from $1.50 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Mansion Global Property Search Scraper: Extract Luxury Real Estate Listings

### What Is Mansion Global?

Mansion Global is a premium international real estate platform operated by Dow Jones, specializing in luxury residential properties across major global markets. It aggregates high-end listings from top brokerages worldwide, covering cities like Paris, New York, London, Hong Kong, and beyond.

Manually collecting listing data across hundreds of search results is impractical. The **Mansion Global Property Search Scraper** automates this process — turning paginated search results into clean, structured datasets ready for analysis.

---

### Overview

The **Mansion Global Scraper** crawls property search result pages and extracts detailed listing records. It is built for:

- **Real estate investors** tracking luxury market inventory and pricing
- **Market analysts** studying price trends by location and property type
- **Proptech developers** feeding listing data into custom platforms
- **Wealth managers** monitoring high-net-worth property opportunities

Key features include configurable item limits per URL, resilient error handling for failed pages, and support for Mansion Global's filterable search URLs (location, property type, price range, etc.).

---

### Input Format

The scraper accepts a JSON configuration object:

```json
{
  "urls": [
    "https://www.mansionglobal.com/buy/france/ile-de-france/paris?mod=mg_search_france_ile-de-france_paris&reloadLocationOnSearch=false&searchType=suggested"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 50
}
````

| Field | Type | Description |
|---|---|---|
| `urls` | `array` | One or more Mansion Global property search page URLs. Use the site's filters (location, price, type) to build targeted search URLs before pasting. Supports bulk input. |
| `ignore_url_failures` | `boolean` | If `true`, the scraper skips failed URLs and continues processing remaining ones. Recommended for multi-URL runs. Default: `true`. |
| `max_items_per_url` | `integer` | Maximum number of listings to collect per URL. Default: `20`. Set higher (e.g., `50`) for broader market coverage. |

> **Tip:** Build your search URL directly on Mansion Global using location, bedroom count, and price filters — the scraper will respect those parameters.

***

### Output Format

**Sample output**

```json
{
  "deleted_at": null,
  "original_price_cents": 3400000000,
  "original_currency": "EUR",
  "original_price_period": null,
  "price_upon_request": true,
  "upsell": null,
  "brokerage_name": "Daniel Féau Conseil Immobilier Christie's International Real Estate",
  "branch_name": "Daniel Féau Conseil Immobilier Christie's International Real Estate",
  "marketing_group_name": "Christie's",
  "address": {
    "city": "Paris",
    "zip_code": "75016",
    "state_code": "Île-de-France"
  },
  "geocoded_address": {
    "lat": "48.8530933",
    "lng": "2.2487626",
    "type": "latlng",
    "country": "France",
    "locality": "Paris",
    "plus_code": "V63X+6G",
    "political": "Paris",
    "administrative_area_level_1": "Île-de-France",
    "administrative_area_level_2": "Paris"
  },
  "hide_address": false,
  "bedrooms": 8,
  "full_bathrooms": 0,
  "partial_bathrooms": 8,
  "combined_bathrooms": "0.8",
  "seo_path": "/listings/9142492",
  "candidate": true,
  "original_listing_url": "https://belles-demeures-de-france.com/fr/annonce-immobiliere/83266511?utm_source=QRC&utm_medium=PUB&utm_campaign=APIMO",
  "property_type": "townhouse",
  "status": "for_sale",
  "list_date": null,
  "upsell_priority": 0,
  "auction_date": null,
  "lot_size": "500.0",
  "lot_size_format": "square_meter",
  "living_area": 1460,
  "living_area_format": "square_feet",
  "rentable": false,
  "lkey": null,
  "utm": null,
  "id": 9142492,
  "video": {
    "wellcomemat_media": null
  },
  "images": [
    {
      "sequence": 0,
      "small_url": "https://static3.mansionglobal.com/production/media/listing_images/79fd40fac758b164e46f67d7e3673a45/small_d24d35bfd83333eda617943df1ac72.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 1,
      "small_url": "https://static3.mansionglobal.com/production/media/listing_images/7b72d84b474a561ab689c4421bb16778/small_89aedecdee283b33d5acf00f05fde5.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 2,
      "small_url": "https://static2.mansionglobal.com/production/media/listing_images/65552980ca1681e3dc262358432a0d86/small_7dc38ea4503a9cd7e950cfdb1b53d8.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 3,
      "small_url": "https://static1.mansionglobal.com/production/media/listing_images/5d05b40d9084327bc54e546b5944b8df/small_e3a9c30f0e4d17a5063b6ef4b77049.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 4,
      "small_url": "https://static2.mansionglobal.com/production/media/listing_images/6708d80daea2a23d27f5967eef2d7d92/small_266c9cbbce0b52e2d2155d3fbc3b5f.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 5,
      "small_url": "https://static3.mansionglobal.com/production/media/listing_images/7044fdc8224fcd37c43fb816aa869df9/small_2ebf96d5fc242c1a5c2dbcbff1ccda.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 6,
      "small_url": "https://static1.mansionglobal.com/production/media/listing_images/1533464d028f89955f1e4a7505cd0e74/small_4285f79960249692b0d72da4c55a5e.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 960
      }
    },
    {
      "sequence": 7,
      "small_url": "https://static3.mansionglobal.com/production/media/listing_images/ccc456898294bed7ffa2c881a5fbfade/small_dae119faa50ece609e1cd074a07e58.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 8,
      "small_url": "https://static1.mansionglobal.com/production/media/listing_images/5181fcd658fe4df5d9bc24d3127c01db/small_5ef53ee3e499b55c94f21a2a5d1994.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 960
      }
    },
    {
      "sequence": 9,
      "small_url": "https://static2.mansionglobal.com/production/media/listing_images/f65d7b53f6075811d24a13a90d0bd88d/small_7403b020dded13980d6e7a8e1ba8da.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 960
      }
    },
    {
      "sequence": 10,
      "small_url": "https://static.mansionglobal.com/production/media/listing_images/88f58d9c37ef80cd27aaf9a66defe5b5/small_d51020824d24cefba1affef187c27b.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 11,
      "small_url": "https://static1.mansionglobal.com/production/media/listing_images/51ae8973bc6ba1bf6693ae7a69603fbc/small_7289a2e63dc1bc0f155f6e02478b0e.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 12,
      "small_url": "https://static2.mansionglobal.com/production/media/listing_images/ffab2e4285e443ea5513e7b55e8a4ccc/small_24a1294056d2745f61df6e8ede84c6.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 13,
      "small_url": "https://static.mansionglobal.com/production/media/listing_images/83ee9bc86c390c7ce51eaa8a2599dc5b/small_75538368c18c1dbd1a7f44be5cfac9.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 14,
      "small_url": "https://static3.mansionglobal.com/production/media/listing_images/7743b9db3d84012e3e9a58cc0f866064/small_d0accd9e12ef28e6bec3f68b99acd9.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 960
      }
    },
    {
      "sequence": 15,
      "small_url": "https://static.mansionglobal.com/production/media/listing_images/4d24113425e427572cf7684754484114/small_7368b4c5f0088634a9a94d4dae6797.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 16,
      "small_url": "https://static.mansionglobal.com/production/media/listing_images/06ce282c33a13dbe2122a10f2efe5002/small_e65703abf417dad0f7fd655d71138c.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 17,
      "small_url": "https://static3.mansionglobal.com/production/media/listing_images/c4df943192ec1307fc6e2730e5f4b85d/small_c363633c7d660ada02653f0a41b8cd.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 18,
      "small_url": "https://static3.mansionglobal.com/production/media/listing_images/7250ba2f0a6a44a67d11a404f40940a6/small_213c17ea17a379fcf5520d25b395ba.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    },
    {
      "sequence": 19,
      "small_url": "https://static1.mansionglobal.com/production/media/listing_images/1dcd1cd589b32f472a3e7b4e02c2bcc6/small_ec6716524afba89404569d6e24f278.jpg",
      "small_dimensions": {
        "width": 640,
        "height": 427
      }
    }
  ]
}
```

Each listing returns a structured record with 30+ fields:

#### Pricing

| Field | Meaning |
|---|---|
| `Original Price Cents` | Listing price in the smallest currency unit (e.g., cents), enabling precise numeric comparisons |
| `Original Currency` | Currency of the listing (e.g., `EUR`, `USD`, `GBP`) |
| `Original Price Period` | Price period if applicable (e.g., per month for rentals) |
| `Price Upon Request` | Boolean flag — `true` if the seller withholds the price publicly |

#### Brokerage & Marketing

| Field | Meaning |
|---|---|
| `Brokerage Name` | Name of the listing agency or brokerage |
| `Branch Name` | Specific branch or office handling the listing |
| `Marketing Group Name` | Marketing umbrella or network the brokerage belongs to |
| `Upsell` | Whether the listing has a paid promotional placement |
| `Upsell Priority` | Numeric ranking of the upsell tier |

#### Location

| Field | Meaning |
|---|---|
| `Address` | Full address as provided by the listing |
| `Geocoded Address` | Standardized address resolved via geocoding |
| `Hide Address` | `true` if the exact address is intentionally hidden |

#### Property Specs

| Field | Meaning |
|---|---|
| `Bedrooms` | Number of bedrooms |
| `Full Bathrooms` | Number of full bathrooms |
| `Partial Bathrooms` | Number of half/partial bathrooms |
| `Combined Bathrooms` | Total bathroom count (full + partial) |
| `Living Area` | Interior living space (numeric value) |
| `Living Area Format` | Unit of the living area (e.g., `sqft`, `sqm`) |
| `Lot Size` | Total lot or land area |
| `Lot Size Format` | Unit of the lot size |
| `Property Type` | Category of property (e.g., apartment, villa, townhouse) |
| `Rentable` | Whether the property is also available for rent |

#### Listing Metadata

| Field | Meaning |
|---|---|
| `ID` | Unique internal Mansion Global listing identifier |
| `Status` | Listing status (e.g., active, sold, pending) |
| `List Date` | Date the property was first published |
| `Auction Date` | Scheduled auction date, if applicable |
| `Deleted At` | Timestamp if the listing has been removed |
| `SEO Path` | URL slug used for the listing's canonical page |
| `Original Listing URL` | Direct link to the listing detail page |
| `Candidate` | Internal classification flag used by the platform |
| `LKey` | Internal lookup key for the listing |
| `UTM` | UTM tracking parameters associated with the listing |

#### Media

| Field | Meaning |
|---|---|
| `Images` | Array of listing photo URLs |
| `Video` | Video tour URL, if available |

***

### How to Use

1. **Build your search URL** — Go to Mansion Global, apply your filters (city, price range, bedrooms, property type), and copy the resulting page URL.
2. **Configure the input** — Paste URLs into the `urls` array. Multiple URLs are supported for multi-market runs.
3. **Set item limit** — Adjust `max_items_per_url` based on how many listings you need per location.
4. **Enable fault tolerance** — Keep `ignore_url_failures: true` to prevent a single bad URL from stopping the entire run.
5. **Export** — Download results as JSON, CSV, or Excel for use in Excel, Google Sheets, Tableau, or your database.

**Common issues:**

- If results are empty, confirm the URL returns visible listings in your browser (some markets may require login).
- Overly specific filters may return fewer listings than `max_items_per_url` — this is expected behavior.

***

### Use Cases & Business Value

- **Price benchmarking:** Compare luxury property prices across Paris arrondissements or global cities
- **Inventory monitoring:** Track new listings hitting the market in target neighborhoods
- **Investment research:** Identify underpriced assets relative to comparable listings
- **Market reporting:** Build data-driven reports on luxury real estate supply and demand

The Mansion Global Scraper replaces hours of manual browsing with a single automated run, delivering consistent, machine-readable data at scale.

***

### Conclusion

The **Mansion Global Property Search Scraper** is an essential tool for anyone working with luxury real estate data. With 30+ structured fields per listing — covering price, specs, location, brokerage, and media — it provides the depth needed for serious market analysis. Run it against any Mansion Global search URL and start turning listings into insights.

# Actor input Schema

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

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

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

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

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

The maximum number of items to scrape per URL.

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

Select proxies to be used by your scraper.

## Actor input object example

```json
{
  "urls": [
    "https://www.mansionglobal.com/buy/france/ile-de-france/paris?mod=mg_search_france_ile-de-france_paris&reloadLocationOnSearch=false&searchType=suggested"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

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

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "urls": [
        "https://www.mansionglobal.com/buy/france/ile-de-france/paris?mod=mg_search_france_ile-de-france_paris&reloadLocationOnSearch=false&searchType=suggested"
    ],
    "ignore_url_failures": true,
    "max_items_per_url": 20,
    "proxy": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ],
        "apifyProxyCountry": "US"
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("stealth_mode/mansionglobal-property-search-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "urls": ["https://www.mansionglobal.com/buy/france/ile-de-france/paris?mod=mg_search_france_ile-de-france_paris&reloadLocationOnSearch=false&searchType=suggested"],
    "ignore_url_failures": True,
    "max_items_per_url": 20,
    "proxy": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "US",
    },
}

# Run the Actor and wait for it to finish
run = client.actor("stealth_mode/mansionglobal-property-search-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "urls": [
    "https://www.mansionglobal.com/buy/france/ile-de-france/paris?mod=mg_search_france_ile-de-france_paris&reloadLocationOnSearch=false&searchType=suggested"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}' |
apify call stealth_mode/mansionglobal-property-search-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Mansionglobal Property Search Scraper",
        "description": "Scrape luxury property listings from Mansion Global with ease. Extract 30+ fields including price, bedrooms, bathrooms, location, images, brokerage details, and more — perfect for real estate analysts, investors, and market researchers.",
        "version": "0.0",
        "x-build-id": "FuKtmyRpiv6x92hjd"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/stealth_mode~mansionglobal-property-search-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-stealth_mode-mansionglobal-property-search-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/stealth_mode~mansionglobal-property-search-scraper/runs": {
            "post": {
                "operationId": "runs-sync-stealth_mode-mansionglobal-property-search-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/stealth_mode~mansionglobal-property-search-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-stealth_mode-mansionglobal-property-search-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "urls": {
                        "title": "URLs of the property list urls to scrape",
                        "type": "array",
                        "description": "Add the URLs of the property list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "ignore_url_failures": {
                        "title": "Continue running even if some URLs fail to be scraped",
                        "type": "boolean",
                        "description": "If true, the scraper will continue running even if some URLs fail to be scraped."
                    },
                    "max_items_per_url": {
                        "title": "Max items per URL",
                        "type": "integer",
                        "description": "The maximum number of items to scrape per URL."
                    },
                    "proxy": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Select proxies to be used by your scraper."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
