# Airbnb Scraper — Listings, Prices & Full Details (`lofomachines/airbnb-scraper`) Actor

Scrape Airbnb listings from any country. Search by location or keywords, apply filters, or paste Airbnb URLs. Get prices, ratings, amenities, host info and more — no login required.

- **URL**: https://apify.com/lofomachines/airbnb-scraper.md
- **Developed by:** [Lofomachines](https://apify.com/lofomachines) (community)
- **Categories:** Lead generation, Travel, Real estate
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
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

## Airbnb Scraper — Listings, Prices & Full Details 🏠

**Extract Airbnb listings from any city, region, or country in minutes — prices, ratings, amenities, host profiles, photos, house rules, and 30+ more data points per listing. No Airbnb account, no API key, no coding required.**

Search by location or keywords, apply the same filters you'd use on airbnb.com, or simply paste an Airbnb URL. Works with **every Airbnb domain** — airbnb.com, airbnb.it, airbnb.fr, airbnb.de, airbnb.co.uk, airbnb.com.au, and all the others — and returns prices in **24 currencies** and text in **20 languages**.

> 💡 **Pro tip:** pair this Actor with the [Airbnb Availability Calendar Scraper](https://apify.com/lofomachines/airbnb-availability-calendar-scraper) to add day-by-day availability and nightly prices to every listing you collect here. Together they give you a complete short-term-rental market picture.

---

### Why use this Airbnb Scraper? ✨

- **🌍 Every country, every domain** — scrape Airbnb Italy, France, Spain, USA, Japan… all regional domains are supported out of the box.
- **🔍 Search like a human, get data like a machine** — enter "Rome, Italy" or "Lake Como villas with pool" and receive clean, structured JSON.
- **🎛️ Real Airbnb filters** — dates, guests, price range, property type, bedrooms, beds, bathrooms, 25 amenities, Instant Book.
- **📊 Rich records** — up to 30+ fields per listing, including rating breakdowns (cleanliness, location, value…), full amenity lists, host statistics, and complete photo galleries.
- **🔗 URL mode** — configure your search on airbnb.com with any combination of filters, paste the link, done.
- **🚄 Deep search built in** — when a city has thousands of listings, the Actor automatically expands the search to reach far beyond the ~270 results a normal Airbnb search page shows.
- **🔓 No login required** — the Actor never asks for your Airbnb credentials or any third-party authentication.
- **💾 Export anywhere** — download results as JSON, CSV, Excel, XML, or RSS, or push them straight into your own stack via API.

---

### What data does it extract? 📦

| Field | Description |
|---|---|
| `id`, `url` | Unique listing ID and direct link |
| `name`, `title` | Listing name and short descriptor ("Apartment in Rome") |
| `propertyType`, `roomType` | e.g. "Entire rental unit", "Entire home/apt" |
| `personCapacity`, `bedrooms`, `beds`, `bathrooms` | Capacity details |
| `price` | Price label, parsed amount, currency, nightly rate, taxes & fees breakdown, discounts |
| `rating` | Overall guest satisfaction + accuracy, check-in, cleanliness, communication, location, value |
| `isSuperhost`, `isGuestFavorite`, `badges` | Quality signals |
| `coordinates`, `address` | Latitude/longitude and human-readable location |
| `images`, `thumbnail`, `photoCount`, `imageCaptions` | Full photo gallery with captions |
| `description` | Complete listing description (plain text) |
| `amenities` | Every amenity, grouped by category, including what's *not* included |
| `highlights` | "Self check-in", "Great location", etc. |
| `sleepingArrangement` | Bed types per room |
| `houseRules`, `cancellationPolicy`, `safetyAndProperty` | Policies and rules |
| `host` | Name, photo, Superhost status, verification, rating, review count, years hosting, response info, co-hosts |
| `locationDescription` | Neighborhood description written by the host |
| `searchContext`, `scrapedAt` | Traceability of every record |

---

### Example input 📝

**Search two cities for summer stays under €150/night with a pool:**

```json
{
    "search": ["Rome, Italy", "Florence, Italy"],
    "checkIn": "2026-07-27",
    "checkOut": "2026-08-01",
    "adults": 2,
    "priceMax": 150,
    "currency": "EUR",
    "amenities": ["pool", "wifi"],
    "maxListings": 200,
    "includeDetails": true
}
````

**Or just paste Airbnb URLs (any domain, any filters):**

```json
{
    "startUrls": [
        { "url": "https://www.airbnb.it/s/Milano/homes?room_types%5B%5D=Entire%20home%2Fapt" },
        { "url": "https://www.airbnb.com/rooms/1714662055709854414" }
    ],
    "maxListings": 100
}
```

### Example output (one dataset item) 📄

```json
{
    "id": "1714662055709854414",
    "url": "https://www.airbnb.com/rooms/1714662055709854414",
    "name": "Trastevere Suite | Your Home in the Center of Rome",
    "title": "Apartment in Rome",
    "propertyType": "Entire rental unit",
    "roomType": "Entire home/apt",
    "personCapacity": 2,
    "bedrooms": 0,
    "beds": 1,
    "bathrooms": 1,
    "isSuperhost": false,
    "rating": {
        "guestSatisfaction": 5,
        "reviewsCount": 1,
        "cleanliness": 5,
        "location": 5,
        "value": 5
    },
    "price": {
        "label": "€588",
        "amount": 588,
        "qualifier": "total",
        "currency": "EUR",
        "nights": 5,
        "nightlyAmount": 105.5,
        "breakdown": [
            { "description": "5 nights x €105.50", "amount": 527.51 },
            { "description": "Taxes", "amount": 60 }
        ]
    },
    "coordinates": { "latitude": 41.8933, "longitude": 12.4712 },
    "address": "Rome, Lazio, Italy",
    "amenities": [
        { "group": "Kitchen and dining", "items": [{ "title": "Kitchen", "available": true }] }
    ],
    "host": {
        "name": "Alessia",
        "isSuperhost": false,
        "isVerified": true,
        "rating": 4.38,
        "reviewsCount": 396,
        "yearsHosting": 5
    },
    "scrapedAt": "2026-07-02T14:00:00.000Z"
}
```

***

### Popular use cases 🎯

#### 💰 Dynamic pricing & revenue management

Hosts and property managers benchmark nightly rates, fees, and occupancy signals against nearby competitors to price their own units optimally.

#### 🏘️ Real-estate & STR investment analysis

Analysts pull entire markets — ratings, prices, capacity, amenities — to score neighborhoods, estimate revenue potential, and find underserved niches before buying.

#### 📈 Market research & competitor monitoring

Track how many listings a city has, what amenities are standard, which hosts dominate, and how prices move by season. Schedule the Actor weekly and watch trends build up.

#### 🧳 Travel products & aggregators

Power meta-search tools, deal finders, and itinerary planners with fresh accommodation data across dozens of markets.

#### 🎓 Academic research & journalism

Study the impact of short-term rentals on housing markets with clean, citable datasets covering any city in the world.

#### 🤝 Lead generation for STR services

Cleaning companies, photographers, smart-lock vendors, and channel managers find and qualify hosts by portfolio size, rating, and location.

***

### How to run it 🚀

1. Click **Try for free** — you'll need an [Apify account](https://console.apify.com) (free tier works).
2. Enter one or more locations/keywords, or paste Airbnb URLs.
3. Optionally set dates, guests, and filters.
4. Click **Start** and watch listings stream into the dataset.
5. Export via **Storage → Dataset** (JSON, CSV, Excel, XML) or the [Apify API](https://docs.apify.com/api/v2).

#### Run it on a schedule ⏰

Use [Apify Schedules](https://docs.apify.com/platform/schedules) to run daily or weekly and build historical price series automatically.

#### Integrations 🔌

Connect the results to 5,000+ apps:

- **[n8n](https://docs.apify.com/platform/integrations/n8n)** — trigger a workflow when a run finishes and pipe listings into your database or Slack.
- **[Make](https://docs.apify.com/platform/integrations/make)** — build no-code market dashboards in Google Sheets.
- **[Zapier](https://docs.apify.com/platform/integrations/zapier)** — get an email or CRM entry for every new listing that matches your criteria.
- **Webhooks / API** — plug the dataset endpoint straight into your BI tool or data warehouse.

***

### FAQ ❓

**Do I need an Airbnb account or API key?**
No. The Actor works completely on its own — no login, no cookies, no third-party authentication.

**Is it legal to scrape Airbnb?**
The Actor only collects publicly available information that anyone can see in a browser. It does not collect private or personal data behind a login. Always review your own use case and local regulations; see Apify's [ethical web scraping](https://blog.apify.com/is-web-scraping-legal/) guide.

**How many listings can I get per search?**
A single search covers what Airbnb exposes for it; for large cities the built-in deep search automatically expands coverage into the thousands. For maximum coverage, add several nearby locations or neighborhoods as separate queries.

**Why do prices need dates?**
Without dates, Airbnb shows indicative prices. Set check-in/check-out to get the real bookable total for your exact stay, including fees and taxes.

**Can I get day-by-day availability?**
That's a different data shape — use the companion [Airbnb Availability Calendar Scraper](https://apify.com/lofomachines/airbnb-availability-calendar-scraper) and join the two datasets on the listing ID.

**Something isn't working?**
Open an issue on the Actor's **Issues** tab and it will be handled quickly.

***

### More tools you'll like 🧰

- 📅 [Airbnb Availability Calendar Scraper](https://apify.com/lofomachines/airbnb-availability-calendar-scraper) — day-by-day availability & nightly prices, the perfect companion to this Actor.
- 🏠 [Immobiliare.it Scraper](https://apify.com/lofomachines/immobiliare-it-scraper) — Italian real-estate listings & agencies for buy-vs-rent analysis.
- 🛍️ [Universal E-commerce Scraper](https://apify.com/lofomachines/universal-ecommerce-scraper) — product data from any online store.
- 📇 [Contact Extractor](https://apify.com/lofomachines/contact-extractor) — emails, phones & social links from any website, great for STR lead-gen follow-ups.
- 📰 [AI Media Monitor](https://apify.com/lofomachines/ai-media-monitor) — track brands, news & sentiment, e.g. for hospitality reputation monitoring.

Browse all Actors by [lofomachines](https://apify.com/lofomachines).

# Actor input Schema

## `search` (type: `array`):

Where (or what) to search on Airbnb. Enter a city, region, address, landmark, or a free-text phrase — e.g. <b>Rome, Italy</b>, <b>Lake Como villas</b>, <b>Brooklyn, New York</b>. Add as many as you want; each one is searched separately.

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

Alternatively, paste Airbnb links directly: search result pages (with any filters already applied on airbnb.com) or single listing pages (…/rooms/12345). Any Airbnb domain works — airbnb.com, airbnb.it, airbnb.fr, airbnb.co.uk, and so on.

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

Stop after collecting this many unique listings. Keep it low for quick tests.

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

When enabled, every listing is enriched with the complete profile: description, all photos, amenities, house rules, host profile, rating breakdown, cancellation policy, and more. Disable for a faster, lighter run with search-card data only. 💡 Need day-by-day availability too? Combine your results with the <a href='https://apify.com/lofomachines/airbnb-availability-calendar-scraper' target='_blank'>Airbnb Availability Calendar Scraper</a>.

## `checkIn` (type: `string`):

Optional stay dates. When set, prices reflect the actual total for your stay.

## `checkOut` (type: `string`):

Optional check-out date (must be after check-in).

## `adults` (type: `integer`):

Number of adult guests.

## `children` (type: `integer`):

Number of children.

## `infants` (type: `integer`):

Number of infants (under 2).

## `pets` (type: `integer`):

Number of pets travelling with you.

## `priceMin` (type: `integer`):

Only include listings priced above this amount (per night, in the selected currency).

## `priceMax` (type: `integer`):

Only include listings priced below this amount (per night, in the selected currency).

## `currency` (type: `string`):

Currency for all prices in the results.

## `language` (type: `string`):

Language of listing names, descriptions, and other texts in the results.

## `roomTypes` (type: `array`):

Limit results to certain types of places. Leave empty for all types.

## `minBedrooms` (type: `integer`):

Only listings with at least this many bedrooms.

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

Only listings with at least this many beds.

## `minBathrooms` (type: `integer`):

Only listings with at least this many bathrooms.

## `amenities` (type: `array`):

Only include listings that offer all of the selected amenities.

## `instantBookOnly` (type: `boolean`):

Only include listings that can be booked instantly, without host approval.

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

Proxy settings. The default configuration is already optimized — change it only if you know what you are doing.

## Actor input object example

```json
{
  "search": [
    "Rome, Italy"
  ],
  "maxListings": 100,
  "includeDetails": true,
  "adults": 1,
  "children": 0,
  "infants": 0,
  "pets": 0,
  "currency": "USD",
  "language": "en",
  "instantBookOnly": false,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

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

## JavaScript example

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

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

// Prepare Actor input
const input = {
    "search": [
        "Rome, Italy"
    ],
    "maxListings": 100,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

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

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

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

```

## Python example

```python
from apify_client import ApifyClient

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

# Prepare the Actor input
run_input = {
    "search": ["Rome, Italy"],
    "maxListings": 100,
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("lofomachines/airbnb-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "search": [
    "Rome, Italy"
  ],
  "maxListings": 100,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call lofomachines/airbnb-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Airbnb Scraper — Listings, Prices & Full Details",
        "description": "Scrape Airbnb listings from any country. Search by location or keywords, apply filters, or paste Airbnb URLs. Get prices, ratings, amenities, host info and more — no login required.",
        "version": "1.0",
        "x-build-id": "sNxY7UggNipZSHDbc"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/lofomachines~airbnb-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-lofomachines-airbnb-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/lofomachines~airbnb-scraper/runs": {
            "post": {
                "operationId": "runs-sync-lofomachines-airbnb-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/lofomachines~airbnb-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-lofomachines-airbnb-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "search": {
                        "title": "Locations or keywords",
                        "type": "array",
                        "description": "Where (or what) to search on Airbnb. Enter a city, region, address, landmark, or a free-text phrase — e.g. <b>Rome, Italy</b>, <b>Lake Como villas</b>, <b>Brooklyn, New York</b>. Add as many as you want; each one is searched separately.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "startUrls": {
                        "title": "Airbnb URLs (optional)",
                        "type": "array",
                        "description": "Alternatively, paste Airbnb links directly: search result pages (with any filters already applied on airbnb.com) or single listing pages (…/rooms/12345). Any Airbnb domain works — airbnb.com, airbnb.it, airbnb.fr, airbnb.co.uk, and so on.",
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "maxListings": {
                        "title": "Maximum listings",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Stop after collecting this many unique listings. Keep it low for quick tests.",
                        "default": 100
                    },
                    "includeDetails": {
                        "title": "Full listing details",
                        "type": "boolean",
                        "description": "When enabled, every listing is enriched with the complete profile: description, all photos, amenities, house rules, host profile, rating breakdown, cancellation policy, and more. Disable for a faster, lighter run with search-card data only. 💡 Need day-by-day availability too? Combine your results with the <a href='https://apify.com/lofomachines/airbnb-availability-calendar-scraper' target='_blank'>Airbnb Availability Calendar Scraper</a>.",
                        "default": true
                    },
                    "checkIn": {
                        "title": "Check-in date",
                        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                        "type": "string",
                        "description": "Optional stay dates. When set, prices reflect the actual total for your stay."
                    },
                    "checkOut": {
                        "title": "Check-out date",
                        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                        "type": "string",
                        "description": "Optional check-out date (must be after check-in)."
                    },
                    "adults": {
                        "title": "Adults",
                        "minimum": 1,
                        "maximum": 16,
                        "type": "integer",
                        "description": "Number of adult guests.",
                        "default": 1
                    },
                    "children": {
                        "title": "Children",
                        "minimum": 0,
                        "maximum": 15,
                        "type": "integer",
                        "description": "Number of children.",
                        "default": 0
                    },
                    "infants": {
                        "title": "Infants",
                        "minimum": 0,
                        "maximum": 5,
                        "type": "integer",
                        "description": "Number of infants (under 2).",
                        "default": 0
                    },
                    "pets": {
                        "title": "Pets",
                        "minimum": 0,
                        "maximum": 5,
                        "type": "integer",
                        "description": "Number of pets travelling with you.",
                        "default": 0
                    },
                    "priceMin": {
                        "title": "Minimum price",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only include listings priced above this amount (per night, in the selected currency)."
                    },
                    "priceMax": {
                        "title": "Maximum price",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only include listings priced below this amount (per night, in the selected currency)."
                    },
                    "currency": {
                        "title": "Currency",
                        "enum": [
                            "USD",
                            "EUR",
                            "GBP",
                            "CHF",
                            "AUD",
                            "CAD",
                            "BRL",
                            "MXN",
                            "JPY",
                            "INR",
                            "SEK",
                            "NOK",
                            "DKK",
                            "PLN",
                            "CZK",
                            "TRY",
                            "AED",
                            "SGD",
                            "HKD",
                            "NZD",
                            "ZAR",
                            "THB",
                            "KRW",
                            "ILS"
                        ],
                        "type": "string",
                        "description": "Currency for all prices in the results.",
                        "default": "USD"
                    },
                    "language": {
                        "title": "Language",
                        "enum": [
                            "en",
                            "it",
                            "es",
                            "fr",
                            "de",
                            "pt",
                            "nl",
                            "pl",
                            "sv",
                            "da",
                            "no",
                            "tr",
                            "ru",
                            "ja",
                            "ko",
                            "zh",
                            "ar",
                            "el",
                            "cs",
                            "hu"
                        ],
                        "type": "string",
                        "description": "Language of listing names, descriptions, and other texts in the results.",
                        "default": "en"
                    },
                    "roomTypes": {
                        "title": "Property type",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Limit results to certain types of places. Leave empty for all types.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "Entire home/apt",
                                "Private room",
                                "Shared room",
                                "Hotel room"
                            ],
                            "enumTitles": [
                                "Entire home / apartment",
                                "Private room",
                                "Shared room",
                                "Hotel room"
                            ]
                        }
                    },
                    "minBedrooms": {
                        "title": "Minimum bedrooms",
                        "minimum": 1,
                        "maximum": 16,
                        "type": "integer",
                        "description": "Only listings with at least this many bedrooms."
                    },
                    "minBeds": {
                        "title": "Minimum beds",
                        "minimum": 1,
                        "maximum": 16,
                        "type": "integer",
                        "description": "Only listings with at least this many beds."
                    },
                    "minBathrooms": {
                        "title": "Minimum bathrooms",
                        "minimum": 1,
                        "maximum": 16,
                        "type": "integer",
                        "description": "Only listings with at least this many bathrooms."
                    },
                    "amenities": {
                        "title": "Required amenities",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Only include listings that offer all of the selected amenities.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "wifi",
                                "kitchen",
                                "air_conditioning",
                                "heating",
                                "washer",
                                "dryer",
                                "pool",
                                "hot_tub",
                                "free_parking",
                                "ev_charger",
                                "gym",
                                "bbq_grill",
                                "breakfast",
                                "indoor_fireplace",
                                "smoking_allowed",
                                "dedicated_workspace",
                                "tv",
                                "hair_dryer",
                                "iron",
                                "smoke_alarm",
                                "carbon_monoxide_alarm",
                                "crib",
                                "king_bed",
                                "self_check_in",
                                "step_free_access"
                            ],
                            "enumTitles": [
                                "Wifi",
                                "Kitchen",
                                "Air conditioning",
                                "Heating",
                                "Washer",
                                "Dryer",
                                "Pool",
                                "Hot tub",
                                "Free parking",
                                "EV charger",
                                "Gym",
                                "BBQ grill",
                                "Breakfast",
                                "Indoor fireplace",
                                "Smoking allowed",
                                "Dedicated workspace",
                                "TV",
                                "Hair dryer",
                                "Iron",
                                "Smoke alarm",
                                "Carbon monoxide alarm",
                                "Crib",
                                "King bed",
                                "Self check-in",
                                "Step-free access"
                            ]
                        }
                    },
                    "instantBookOnly": {
                        "title": "Instant Book only",
                        "type": "boolean",
                        "description": "Only include listings that can be booked instantly, without host approval.",
                        "default": false
                    },
                    "proxyConfiguration": {
                        "title": "Proxy",
                        "type": "object",
                        "description": "Proxy settings. The default configuration is already optimized — change it only if you know what you are doing.",
                        "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
