# Bayut UAE Real Estate Scraper (`devilscrapes/bayut-uae-real-estate`) Actor

Scrape normalized property listings from Bayut, the UAE's top real-estate portal — one row per listing with price, specs, geo-location, agency/agent details, DLD permit number, verification status, and amenities. Search by URL, purpose, location, or custom polygon.

- **URL**: https://apify.com/devilscrapes/bayut-uae-real-estate.md
- **Developed by:** [DevilScrapes](https://apify.com/devilscrapes) (community)
- **Categories:** Real estate
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

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

## 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/docs.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

<div align="center">
  <img src=".actor/icon.svg" width="160" alt="Devil Scrapes mark" />

## Bayut UAE Real Estate Scraper

**💰 $2.01 / 1 000 results** &nbsp;·&nbsp; pay only for results &nbsp;·&nbsp; no credit card to try

_We do the dirty work so your dataset stays clean._ 😈

Scrape normalized property listings from Bayut, the UAE's top real-estate portal — one row per listing with price, specs, geo-location, agency/agent details, DLD permit number, verification status, and amenities. Search by URL, purpose, location, or custom polygon.

</div>

---

### 🎯 What this scrapes

Bayut is the UAE's #1 property portal — Dubai, Abu Dhabi, Sharjah and every other emirate list for-sale and to-rent properties there first. This Actor wraps Bayut's own listing data directly, writing one structured row per property: price, bed/bath count, floor area, precise geo-coordinates, agency and agent details, the DLD Trakheesi permit number, TruCheck verification status, and amenity tags — a richer combined field set than any single Bayut scraper on the Apify Store ships today. Search by purpose + location, a custom polygon boundary, or direct search URLs.

### 🔥 What we handle for you

- 🛡️ **Browser fingerprint rotation** — `curl-cffi` impersonates real Chrome / Firefox / Safari TLS handshakes so the target sees a browser, not Python.
- 🌐 **Residential proxy rotation** via Apify Proxy — fresh session and exit IP on every block.
- 🔁 **Retries with exponential backoff** on `408 / 429 / 5xx` — up to 5 attempts per page, `Retry-After` honoured.
- 🧱 **Rate-limit-aware pacing** — when the target pushes back, we slow down instead of getting banned.
- 🧊 **Clean, typed dataset rows** — Pydantic-validated, ISO-8601 timestamps, stable IDs, JSON / CSV / Excel export straight from the Apify Console.
- 💰 **Pay-Per-Event pricing** — you only pay for results that hit your dataset. No data, no charge.

### 💡 Use cases

- **Investor deal screening** — pull every for-sale listing in a target area with price, size, and DLD permit number to spot underpriced units fast.
- **Rental market tracking** — snapshot to-rent listings across an emirate to build price-per-sqft benchmarks.
- **Agency/agent lead lists** — collect agency names, agent names, and (optionally) public phone numbers behind active listings.
- **Polygon-bound area research** — draw a custom boundary instead of picking a fixed emirate/area slug for hyper-local coverage.

### ⚙️ How to use it

1. Click **Try for free** at the top of the page.
2. Fill in the input form — most fields have sensible defaults.
3. Click **Start**. Output streams into the run's dataset.
4. Export from **Storage → Dataset** as JSON, CSV, or Excel — or fetch via the API.

### 📥 Input

| Field | Type | Required | Default | Notes |
|---|---|:--:|---|---|
| `searchUrls` | `array` | no | '—' | Direct Bayut search URLs to scrape as-is, e.g. https://www.bayut.com/for-sale/apartments/dubai/downtown-dubai/. Up to 50 |
| `purpose` | `string` | no | 'for-sale' | Sale vs. rent listings. Required (together with Location) if Search URLs and Polygon are unset. |
| `propertyType` | `string` | no | 'apartments' | Bayut's own property-type vocabulary. |
| `location` | `string` | no | 'dubai/downtown-dubai' | Emirate/area path slug, e.g. dubai/downtown-dubai. Required (together with Purpose) if Search URLs and Polygon are unset |
| `polygon` | `array` | no | '—' | Custom search boundary — a list of at least 3 [lat, lng] pairs. Alternative to Purpose + Location / Search URLs. |
| `minBeds` | `integer` | no | '—' | Minimum bedrooms (0 = studio). |
| `maxBeds` | `integer` | no | '—' | Maximum bedrooms. |
| `minPrice` | `integer` | no | '—' | Minimum price in AED. |
| `maxPrice` | `integer` | no | '—' | Maximum price in AED. |
| `maxListings` | `integer` | no | 50 | Hard cap on dataset rows for this run. |
| `locale` | `string` | no | 'en' | Scrape the English or Arabic (/ar/) site mirror. |
| `includeAgentPhone` | `boolean` | no | `false` | Enrich rows with the listing agent's public phone number, where exposed. |
| `proxyConfiguration` | `object` | no | `{"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]}` | Mandatory-by-default RESIDENTIAL — direct/datacenter-IP requests are blocked before reaching listing data. |

#### Example input

```json
{
  "purpose": "for-sale",
  "location": "dubai/downtown-dubai",
  "propertyType": "apartments",
  "maxListings": 3,
  "locale": "en",
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
````

### 📤 Output

Every row is one dataset item.

| Field | Type | Notes |
|---|---|---|
| `listing_id` | `string` | Bayut internal ID — dedup key. |
| `listing_url` | `string` | Canonical detail URL. |
| `locale` | `string` | Locale fetched under — 'en' or 'ar'. |
| `title` | `string` | Listing headline. |
| `purpose` | `string` | 'for-sale' or 'to-rent'. |
| `property_type` | `string` | e.g. 'apartments'. |
| `price_amount` | `['number', 'null']` | Numeric price. |
| `price_currency` | `string` | Always 'AED' in v1. |
| `price_frequency` | `['string', 'null']` | 'yearly' for rent, null for sale. |
| `bedrooms` | `['integer', 'null']` | 0 = studio. |
| `bathrooms` | `['integer', 'null']` | Bathroom count. |
| `area_value` | `['number', 'null']` | Numeric floor area. |
| `area_unit` | `['string', 'null']` | 'sqft' or 'sqm', as displayed. |
| `location_hierarchy` | `array` | Breadcrumb, coarse to fine (\[0] = emirate). |
| `latitude` | `['number', 'null']` | WGS-84 latitude. |
| `longitude` | `['number', 'null']` | WGS-84 longitude. |
| `agency_name` | `['string', 'null']` | Listing agency. |
| `agent_name` | `['string', 'null']` | Listing agent. |
| `agent_phone` | `['string', 'null']` | Set only if includeAgentPhone=true and public. |
| `permit_number` | `['string', 'null']` | DLD Trakheesi ad-permit number. |
| `verified` | `boolean` | Bayut 'TruCheck' badge. |
| `amenities` | `array` | Amenity tags. |
| `photos_count` | `integer` | Gallery photo count. |
| `listed_date` | `['string', 'null']` | ISO YYYY-MM-DD. |
| `scraped_at` | `string` | ISO-8601 UTC row creation timestamp. |

#### Example output

```json
{
  "listing_id": "8523104",
  "listing_url": "https://www.bayut.com/property/details-8523104.html",
  "locale": "en",
  "title": "Luxury 2BR | Burj Khalifa View",
  "purpose": "for-sale",
  "property_type": "apartments",
  "price_amount": 2450000,
  "price_currency": "AED",
  "price_frequency": null,
  "bedrooms": 2,
  "bathrooms": 3,
  "area_value": 1450.0,
  "area_unit": "sqft",
  "location_hierarchy": [
    "Dubai",
    "Downtown Dubai",
    "Burj Khalifa"
  ],
  "latitude": 25.1972,
  "longitude": 55.2744,
  "agency_name": "Example Real Estate Brokers",
  "agent_name": "Jane Doe",
  "agent_phone": "+971501234567",
  "permit_number": "12345678",
  "verified": true,
  "amenities": [
    "Balcony",
    "Shared Pool",
    "Covered Parking"
  ],
  "photos_count": 18,
  "listed_date": "2026-07-15",
  "scraped_at": "2026-07-20T14:00:00+00:00"
}
```

### 💰 Pricing

Pay-Per-Event — you pay only when these events fire:

| Event | USD | What it is |
|---|---:|---|
| `actor-start` | $0.01 | One-off warm-up charge per run |
| `result-row` | $0.002 | Charged for each listing row written to the dataset |

Example: 1 000 results at the rates above ≈ **$2.01**. No subscription, no minimum, no card to start — Apify gives every new account $5 of free credit.

### 🚧 Limitations

v1 covers UAE listings only — Saudi Arabia is a separate Bayut property and out of scope. Off-plan project microsites, the mortgage calculator, and area-guide content are not scraped. permit\_number ships verbatim from the listing; it is not independently verified against DLD/RERA registries. verified reflects Bayut's own TruCheck badge flag, not OCR of the badge graphic.

### ❓ FAQ

**Do I need a Bayut account or API key?**

No. This Actor scrapes Bayut's own publicly listed property data — no login, no API key.

**Why does this default to a residential proxy?**

Bayut blocks direct/datacenter-IP requests before they reach listing data. We default proxyConfiguration to Apify's RESIDENTIAL group so runs clear that check without you tuning anything.

**Can I search a custom area instead of a fixed emirate/area?**

Yes — supply polygon as a list of at least 3 \[lat, lng] pairs instead of purpose + location.

**Does agent\_phone always populate?**

Only when includeAgentPhone is true and the agent's number is publicly exposed on the listing; otherwise it's null.

### 💬 Your feedback

Spotted a bug, hit a weird edge case, or need a new field? Open an
issue on the Actor's **Issues** tab on Apify Console — we ship
fixes weekly and we read every report.

***

<div align="center">

Built by **[Devil Scrapes](https://apify.com/DevilScrapes)** 😈 — a small fleet of
opinionated public-data Actors. Honest pricing, real engineering, zero fine print.

</div>

# Actor input Schema

## `searchUrls` (type: `array`):

Direct Bayut search URLs to scrape as-is, e.g. https://www.bayut.com/for-sale/apartments/dubai/downtown-dubai/. Up to 50. One of Search URLs / Polygon / (Purpose + Location) is required.

## `purpose` (type: `string`):

Sale vs. rent listings. Required (together with Location) if Search URLs and Polygon are unset.

## `propertyType` (type: `string`):

Bayut's own property-type vocabulary.

## `location` (type: `string`):

Emirate/area path slug, e.g. dubai/downtown-dubai. Required (together with Purpose) if Search URLs and Polygon are unset.

## `polygon` (type: `array`):

Custom search boundary — a list of at least 3 \[lat, lng] pairs. Alternative to Purpose + Location / Search URLs.

## `minBeds` (type: `integer`):

Minimum bedrooms (0 = studio).

## `maxBeds` (type: `integer`):

Maximum bedrooms.

## `minPrice` (type: `integer`):

Minimum price in AED.

## `maxPrice` (type: `integer`):

Maximum price in AED.

## `maxListings` (type: `integer`):

Hard cap on dataset rows for this run.

## `locale` (type: `string`):

Scrape the English or Arabic (/ar/) site mirror.

## `includeAgentPhone` (type: `boolean`):

Enrich rows with the listing agent's public phone number, where exposed.

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

Mandatory-by-default RESIDENTIAL — direct/datacenter-IP requests are blocked before reaching listing data.

## Actor input object example

```json
{
  "purpose": "for-sale",
  "propertyType": "apartments",
  "location": "dubai/downtown-dubai",
  "maxListings": 50,
  "locale": "en",
  "includeAgentPhone": false,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

## `datasetItems` (type: `string`):

All dataset items as JSON.

## `datasetItemsCsv` (type: `string`):

Same data exported to CSV.

## `datasetView` (type: `string`):

Open the run dataset in the Console.

# 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 = {
    "purpose": "for-sale",
    "propertyType": "apartments",
    "location": "dubai/downtown-dubai",
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("devilscrapes/bayut-uae-real-estate").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 = {
    "purpose": "for-sale",
    "propertyType": "apartments",
    "location": "dubai/downtown-dubai",
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("devilscrapes/bayut-uae-real-estate").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 '{
  "purpose": "for-sale",
  "propertyType": "apartments",
  "location": "dubai/downtown-dubai",
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call devilscrapes/bayut-uae-real-estate --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=devilscrapes/bayut-uae-real-estate",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Bayut UAE Real Estate Scraper",
        "description": "Scrape normalized property listings from Bayut, the UAE's top real-estate portal — one row per listing with price, specs, geo-location, agency/agent details, DLD permit number, verification status, and amenities. Search by URL, purpose, location, or custom polygon.",
        "version": "0.0",
        "x-build-id": "hjBAEjvZw49ZCbFg5"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/devilscrapes~bayut-uae-real-estate/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-devilscrapes-bayut-uae-real-estate",
                "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/devilscrapes~bayut-uae-real-estate/runs": {
            "post": {
                "operationId": "runs-sync-devilscrapes-bayut-uae-real-estate",
                "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/devilscrapes~bayut-uae-real-estate/run-sync": {
            "post": {
                "operationId": "run-sync-devilscrapes-bayut-uae-real-estate",
                "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": {
                    "searchUrls": {
                        "title": "Search URLs",
                        "type": "array",
                        "description": "Direct Bayut search URLs to scrape as-is, e.g. https://www.bayut.com/for-sale/apartments/dubai/downtown-dubai/. Up to 50. One of Search URLs / Polygon / (Purpose + Location) is required.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "purpose": {
                        "title": "Purpose",
                        "enum": [
                            "for-sale",
                            "to-rent"
                        ],
                        "type": "string",
                        "description": "Sale vs. rent listings. Required (together with Location) if Search URLs and Polygon are unset."
                    },
                    "propertyType": {
                        "title": "Property type",
                        "enum": [
                            "apartments",
                            "villas",
                            "townhouses",
                            "penthouses",
                            "hotel-apartments",
                            "villa-compound",
                            "residential-plots",
                            "residential-floors",
                            "residential-building",
                            "offices",
                            "shops",
                            "warehouses",
                            "labour-camps",
                            "commercial-plots",
                            "commercial-villas",
                            "commercial-buildings",
                            "commercial-floors",
                            "factories",
                            "industrial-land",
                            "showrooms"
                        ],
                        "type": "string",
                        "description": "Bayut's own property-type vocabulary."
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "Emirate/area path slug, e.g. dubai/downtown-dubai. Required (together with Purpose) if Search URLs and Polygon are unset."
                    },
                    "polygon": {
                        "title": "Polygon",
                        "type": "array",
                        "description": "Custom search boundary — a list of at least 3 [lat, lng] pairs. Alternative to Purpose + Location / Search URLs."
                    },
                    "minBeds": {
                        "title": "Minimum bedrooms",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Minimum bedrooms (0 = studio)."
                    },
                    "maxBeds": {
                        "title": "Maximum bedrooms",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum bedrooms."
                    },
                    "minPrice": {
                        "title": "Minimum price (AED)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Minimum price in AED."
                    },
                    "maxPrice": {
                        "title": "Maximum price (AED)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum price in AED."
                    },
                    "maxListings": {
                        "title": "Max listings",
                        "minimum": 1,
                        "maximum": 2000,
                        "type": "integer",
                        "description": "Hard cap on dataset rows for this run.",
                        "default": 50
                    },
                    "locale": {
                        "title": "Locale",
                        "enum": [
                            "en",
                            "ar"
                        ],
                        "type": "string",
                        "description": "Scrape the English or Arabic (/ar/) site mirror.",
                        "default": "en"
                    },
                    "includeAgentPhone": {
                        "title": "Include agent phone",
                        "type": "boolean",
                        "description": "Enrich rows with the listing agent's public phone number, where exposed.",
                        "default": false
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Mandatory-by-default RESIDENTIAL — direct/datacenter-IP requests are blocked before reaching listing data.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
