# Immowelt Scraper - Real Estate Germany (`igolaizola/immowelt-scraper`) Actor

Scrape Immowelt Germany real estate listings for apartments, houses, plots and commercial properties. Search by city or location ID, filter by buy/rent, price, rooms and area, and export clean JSON/CSV data for market analysis, lead generation and price monitoring.

- **URL**: https://apify.com/igolaizola/immowelt-scraper.md
- **Developed by:** [Iñigo Garcia Olaizola](https://apify.com/igolaizola) (community)
- **Categories:** Real estate, Lead generation, Travel
- **Stats:** 4 total users, 2 monthly users, 94.1% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

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

## Immowelt Scraper - Real Estate Germany

Scrape public property listings from **Immowelt** in Germany and export them as clean data for **market research, lead generation, price tracking, and investment analysis**.

This actor is designed for both:

- **Non-technical users** who want ready-to-download data in Apify.
- **Data teams** that need structured JSON/CSV via API.

### ✅ What does this actor do?

The actor searches Immowelt listing result pages and returns structured records for properties such as:

- Apartments (`Wohnung`)
- Houses (`Haus`)
- Plots (`Grundstueck`)
- Parking / garage
- Commercial categories (selected combinations)

It supports:

- Location search (city / district / postcode style queries)
- Direct property fetch by explicit property IDs
- Buy or rent mode
- Rich filters (price, rooms, space, energy class, etc.)
- Optional listing details under `_details`
- Pagination up to your `maxItems`

### 🏠 Use cases

- **Real estate market monitoring** in Germany
- **Immowelt price tracking** by city and property type
- **Lead generation** for agencies and investors
- **Property dataset creation** for BI dashboards and alerts
- **Competitor and supply analysis** for PropTech teams

### 🚀 How to use

1. Open the actor in Apify and click **Try for free**.
2. Set these 3 fields first:
- `maxItems` (how many listings you want)
- `location` (for example: `Berlin`, `Hamburg`, `Muenchen`) or `locationID`
- `distributionType` (`BUY` or `RENT`)
3. Optionally add filters (price, rooms, space, estate type).
4. Run the actor.
5. Download results from **Dataset** as JSON/CSV/Excel.

### 🧾 Input parameters

| Field | Type | Required | Description |
|---|---|---:|---|
| `maxItems` | integer | Yes | Maximum number of listings to return. |
| `properties` | array | No | List of explicit Immowelt property IDs. When set, location and filters are ignored and each item includes `_details`. |
| `location` | string | No* | Search location text (city, district, postcode, etc.). |
| `locationID` | string | No* | Optional single location ID. Can be used by itself. |
| `distributionType` | string | No | `BUY` or `RENT`. |
| `estateType` | string | No | Main property family (e.g., `APARTMENT`, `HOUSE`, `PLOT`). |
| `order` | string | No | Sorting (`Default` or `DateDesc`). |
| `fetchDetails` | boolean | No | If `true`, adds `_details` with full detail payload per listing. |

#### Common Filters

- `minPrice`, `maxPrice`
- `minRooms`, `maxRooms`
- `minSpace`, `maxSpace`
- `energyScores`
- `features`
- `subEstateTypes`
- `classifiedBusiness`

#### Property IDs mode

If you already know listing IDs, use `properties` and skip search filters.

```json
{
  "maxItems": 2,
  "properties": [
    "251KK5W8ERLI",
    "26PD7QUELGE1"
  ]
}
````

In this mode:

- `location`, `locationID`, and all filters are ignored.
- Results are fetched directly by ID.
- Each output item includes `_details`.

#### Example Input

```json
{
  "maxItems": 100,
  "location": "Berlin",
  "distributionType": "BUY",
  "estateType": "APARTMENT",
  "minPrice": 250000,
  "maxPrice": 900000,
  "minRooms": 2,
  "maxRooms": 5,
  "minSpace": 55,
  "order": "DateDesc",
  "fetchDetails": false,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"]
  }
}
```

### 📊 Output Data

Each dataset item is a listing object (Immowelt payload) with a convenience image field:

- `id`
- `type`
- `mainDescription.headline`
- `mainDescription.description`
- `hardFacts.price.formatted`
- `rawData.price`, `rawData.nbroom`, `rawData.surface.main`
- `location.address.city`, `location.address.zipCode`, `location.address.street`
- `rawData.propertyType`, `rawData.distributionType`
- `provider.publisherType`, `cardProvider.title`
- `url`
- `_image` (first gallery image URL, added by this actor)
- `_details` (only when `fetchDetails=true`)

### ⚠️ Notes and tips

- `fetchDetails=false` is faster and cheaper.
- `fetchDetails=true` enriches each record with `_details`, useful for deeper analysis.
- Use specific `location` terms for better relevance (district > city center > broad region).
- For trend monitoring, keep filters stable and run periodically.
- For broad discovery, start with fewer filters and higher `maxItems`.
- Provide either `properties` or (`location`/`locationID`) depending on your workflow.

### ⚖️ Legal

Use responsibly and comply with applicable laws, website terms, and data regulations (including GDPR where relevant).

This actor is an independent tool and is **not affiliated with or endorsed by Immowelt**.

# Actor input Schema

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

Maximum number of listings to extract.

## `properties` (type: `array`):

List of Immowelt property IDs to fetch directly. When set, location and filters are ignored. Each result includes '\_details'.

## `fetchDetails` (type: `boolean`):

Fetch detailed data per listing and store it under \_details.

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

City, postcode, borough, or neighborhood. The actor resolves it to a location ID automatically.

## `locationID` (type: `string`):

Optional single location ID override

## `order` (type: `string`):

Sort order.

## `distributionType` (type: `string`):

Transaction mode.

## `estateType` (type: `string`):

Property type.

## `subEstateTypes` (type: `array`):

Optional subtype filters.

## `features` (type: `array`):

Optional features.

## `energyScores` (type: `array`):

Optional energy score filters.

## `furnished` (type: `string`):

Furnished status.

## `subsidized` (type: `string`):

Optional subsidized filter value.

## `classifiedBusiness` (type: `string`):

Business classification filter.

## `commissionFree` (type: `boolean`):

Only commission-free listings.

## `radius` (type: `number`):

Optional search radius.

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

Minimum price.

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

Maximum price.

## `minRooms` (type: `number`):

Minimum rooms.

## `maxRooms` (type: `number`):

Maximum rooms.

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

Minimum bedrooms.

## `maxBedrooms` (type: `integer`):

Maximum bedrooms.

## `minFloors` (type: `integer`):

Minimum number of floors.

## `maxFloors` (type: `integer`):

Maximum number of floors.

## `minSpace` (type: `integer`):

Minimum living space in square meters.

## `maxSpace` (type: `integer`):

Maximum living space in square meters.

## `minPlotSpace` (type: `integer`):

Minimum plot size.

## `maxPlotSpace` (type: `integer`):

Maximum plot size.

## `minYearOfConstruction` (type: `integer`):

Minimum construction year.

## `maxYearOfConstruction` (type: `integer`):

Maximum construction year.

## `projectTypes` (type: `array`):

Optional project type filters.

## `locationsInBuilding` (type: `array`):

Optional in-building location filters.

## `classifiedDisplay` (type: `array`):

Optional classified display filter.

## `energyHeating` (type: `array`):

Optional energy heating filter.

## `keywords` (type: `array`):

Optional search keywords.

## `matchAnyKeyword` (type: `boolean`):

If true, listing can match any keyword; otherwise all keywords should match.

## `isSaleGoodwill` (type: `boolean`):

Optional goodwill sale filter.

## `availableFromMax` (type: `string`):

Optional latest availability date/value.

## `availableFromIsLooseMode` (type: `boolean`):

Optional loose-mode availability matching.

## `preferredWarmRent` (type: `boolean`):

Optional preferred warm-rent filter.

## Actor input object example

```json
{
  "maxItems": 30,
  "properties": [],
  "fetchDetails": false,
  "location": "Berlin",
  "order": "Default"
}
```

# Actor output Schema

## `results` (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 = {
    "location": "Berlin"
};

// Run the Actor and wait for it to finish
const run = await client.actor("igolaizola/immowelt-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 = { "location": "Berlin" }

# Run the Actor and wait for it to finish
run = client.actor("igolaizola/immowelt-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 '{
  "location": "Berlin"
}' |
apify call igolaizola/immowelt-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Immowelt Scraper - Real Estate Germany",
        "description": "Scrape Immowelt Germany real estate listings for apartments, houses, plots and commercial properties. Search by city or location ID, filter by buy/rent, price, rooms and area, and export clean JSON/CSV data for market analysis, lead generation and price monitoring.",
        "version": "0.0",
        "x-build-id": "6jJ8fOeJ9wALRjfxU"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/igolaizola~immowelt-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-igolaizola-immowelt-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/igolaizola~immowelt-scraper/runs": {
            "post": {
                "operationId": "runs-sync-igolaizola-immowelt-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/igolaizola~immowelt-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-igolaizola-immowelt-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",
                "required": [
                    "maxItems"
                ],
                "properties": {
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum number of listings to extract.",
                        "default": 30
                    },
                    "properties": {
                        "title": "Property IDs",
                        "type": "array",
                        "description": "List of Immowelt property IDs to fetch directly. When set, location and filters are ignored. Each result includes '_details'.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "fetchDetails": {
                        "title": "Fetch Details",
                        "type": "boolean",
                        "description": "Fetch detailed data per listing and store it under _details.",
                        "default": false
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "City, postcode, borough, or neighborhood. The actor resolves it to a location ID automatically."
                    },
                    "locationID": {
                        "title": "Location ID",
                        "type": "string",
                        "description": "Optional single location ID override"
                    },
                    "order": {
                        "title": "Sort Order",
                        "enum": [
                            "Default",
                            "DateDesc"
                        ],
                        "type": "string",
                        "description": "Sort order.",
                        "default": "Default"
                    },
                    "distributionType": {
                        "title": "Distribution Type",
                        "enum": [
                            "BUY",
                            "RENT"
                        ],
                        "type": "string",
                        "description": "Transaction mode."
                    },
                    "estateType": {
                        "title": "Estate Type",
                        "enum": [
                            "HOUSE_OR_APARTMENT",
                            "APARTMENT",
                            "HOUSE",
                            "BUILDING",
                            "SENIOR",
                            "PLOT",
                            "PARKING",
                            "INVESTMENT",
                            "OFFICE",
                            "TRADING",
                            "GASTRONOMY_HOTEL",
                            "STORAGE_PRODUCTION",
                            "AGRICULTURE_FORESTRY",
                            "MISCELLANEOUS"
                        ],
                        "type": "string",
                        "description": "Property type."
                    },
                    "subEstateTypes": {
                        "title": "Sub Estate Types",
                        "type": "array",
                        "description": "Optional subtype filters.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "AGRICULTURE_COMPANY",
                                "AGRICULTURE_FORESTRY",
                                "APARTMENT",
                                "APARTMENT_HOUSE",
                                "APART_HOTEL",
                                "ASSISTED_LIVING",
                                "ATELIER",
                                "BEACH_HOUSE",
                                "BOAT_DOCK",
                                "BOX",
                                "BUNGALOW",
                                "CAFE_BAR_PUB",
                                "CARPORT",
                                "CAR_PARK",
                                "CASTLE",
                                "CASTLE_MANOR_HOUSE",
                                "CHALET",
                                "CLUB_DISCOTHEQUE",
                                "COMMERCIAL",
                                "COMMERCIAL_PARC",
                                "CORNER_TERRACE_HOUSE",
                                "COWORKING",
                                "DOUBLE_GARAGE",
                                "DUPLEX",
                                "DUPLEX_GARAGE",
                                "END_TERRACE_HOUSE",
                                "FARMHOUSE",
                                "FARM_RANCH",
                                "FINCA",
                                "FISHING",
                                "FLATSHARING_ROOM",
                                "FORESTRY",
                                "GARAGE",
                                "GARAGE_AREA",
                                "GARAGE_REPAIR",
                                "GARDENING",
                                "GARDEN_HOUSE",
                                "GITE",
                                "GROUNDFLOOR",
                                "HOTEL",
                                "HOUSE",
                                "HOUSE_PARK",
                                "HUNTING",
                                "INDUSTRY",
                                "KIOSK",
                                "LAKESIDE_PROPERTY",
                                "LEISURE",
                                "LEISURE_FACILITY",
                                "LIVING",
                                "LIVING_AND_COMMERCIAL",
                                "LIVING_AND_COMMERCIAL_BUILDING",
                                "LOFT",
                                "LOGISTICS_CENTER",
                                "MANOR_HOUSE",
                                "MEDICAL",
                                "MEDICAL_BUILDING",
                                "MEDICAL_CARE",
                                "MEDICAL_FLOOR",
                                "MID_TERRACE_HOUSE",
                                "MISCELLANEOUS",
                                "MISC_AGRICULTURE",
                                "MISC_STORAGE",
                                "MIXED",
                                "MODEL_HOUSE",
                                "MOUNTAIN_HUT",
                                "MULTI_FAMILY_HOUSE",
                                "MULTI_STOREY",
                                "NEW_BUILD_LOFT",
                                "NEW_BUILD_LOTS",
                                "NEW_BUILD_PROGRAM_APARTMENT",
                                "NEW_BUILD_PROGRAM_HOUSE",
                                "NEW_BUILD_PROGRAM_OFFICE",
                                "NEW_BUILD_PROGRAM_PARKING",
                                "NEW_HOME",
                                "NO_DEVELOPMENT",
                                "OFFICE_BUILDING",
                                "OFFICE_CENTRE",
                                "OFFICE_SPACE",
                                "OFFICE_STORAGE_BUILDING",
                                "OPEN_SPACE",
                                "ORCHARD",
                                "OUTDOOR_SPACE",
                                "OUTSIDE",
                                "PARKING_AREA",
                                "PARKING_INDOOR",
                                "PARKING_OUTDOOR",
                                "PENTHOUSE",
                                "PLANNED",
                                "PLOT",
                                "PRODUCTION_HALL",
                                "REFERENCE",
                                "RESIDENTIAL_COMPLEX",
                                "RESTAURANT",
                                "RIDING",
                                "RUSTICO",
                                "SEMIDETACHED_HOUSE",
                                "SHARED_OFFICE",
                                "SHOPPING_CENTRE",
                                "SHOWROOM_SPACE",
                                "SHOW_HOUSE",
                                "SALES_AREA",
                                "SINGLE_FAMILY_HOUSE",
                                "SINGLE_MULTI_HOUSES",
                                "SINGLE_OFFICE",
                                "SPECIAL_REAL_ESTATE",
                                "SPECIAL_USE",
                                "STORE",
                                "STREET_PARKING",
                                "STUDIO",
                                "TERRACE",
                                "TERRACE_HOUSE",
                                "TOWN_HOUSE",
                                "TRIPLEX",
                                "UNBUILDABLE_LAND",
                                "UNDERGROUND_GARAGE",
                                "UNDERGROUND_PARKING_SPACE",
                                "UNFINISHED_ATTIC_SPACE",
                                "UNKNOWN",
                                "VILLA",
                                "WAREHOUSE_HALL",
                                "WINERY"
                            ],
                            "enumTitles": [
                                "Agriculture / Forestry > Agriculture Company",
                                "Agriculture / Forestry > Agriculture Forestry",
                                "Apartment > Apartment",
                                "Apartment > Apartment House",
                                "Gastronomy / Hotel > Apart Hotel",
                                "Building > Assisted Living",
                                "Office > Atelier",
                                "House > Beach House",
                                "Parking > Boat Dock",
                                "Parking > Box",
                                "House > Bungalow",
                                "Gastronomy / Hotel > Cafe Bar Pub",
                                "Parking > Carport",
                                "Parking > Car Park",
                                "House > Castle",
                                "House > Castle Manor House",
                                "House > Chalet",
                                "Gastronomy / Hotel > Club Discotheque",
                                "Building > Commercial",
                                "Building > Commercial Parc",
                                "House > Corner Terrace House",
                                "Office > Coworking",
                                "Parking > Double Garage",
                                "Apartment > Duplex",
                                "Apartment > Duplex Garage",
                                "House > End Terrace House",
                                "House > Farmhouse",
                                "Agriculture / Forestry > Farm Ranch",
                                "House > Finca",
                                "Plot > Fishing",
                                "Apartment > Flatsharing Room",
                                "Agriculture / Forestry > Forestry",
                                "Parking > Garage",
                                "Parking > Garage Area",
                                "Parking > Garage Repair",
                                "Plot > Gardening",
                                "House > Garden House",
                                "House > Gite",
                                "Apartment > Groundfloor",
                                "Gastronomy / Hotel > Hotel",
                                "House > House",
                                "House > House Park",
                                "Plot > Hunting",
                                "Storage / Production > Industry",
                                "Trading > Kiosk",
                                "Plot > Lakeside Property",
                                "Miscellaneous > Leisure",
                                "Miscellaneous > Leisure Facility",
                                "Building > Living",
                                "Building > Living and Commercial",
                                "Building > Living and Commercial Building",
                                "Apartment > Loft",
                                "Storage / Production > Logistics Center",
                                "House > Manor House",
                                "Office > Medical",
                                "Building > Medical Building",
                                "Senior > Medical Care",
                                "Office > Medical Floor",
                                "House > Mid Terrace House",
                                "Miscellaneous > Miscellaneous",
                                "Agriculture / Forestry > Misc Agriculture",
                                "Storage / Production > Misc Storage",
                                "Miscellaneous > Mixed",
                                "House > Model House",
                                "House > Mountain Hut",
                                "House > Multi Family House",
                                "Apartment > Multi Storey",
                                "Apartment > New Build Loft",
                                "Plot > New Build Lots",
                                "Apartment > New Build Program Apartment",
                                "House > New Build Program House",
                                "Investment > New Build Program Office",
                                "Parking > New Build Program Parking",
                                "House > New Home",
                                "Plot > No Development",
                                "Building > Office Building",
                                "Office > Office Centre",
                                "Office > Office Space",
                                "Building > Office Storage Building",
                                "Plot > Open Space",
                                "Plot > Orchard",
                                "Plot > Outdoor Space",
                                "Miscellaneous > Outside",
                                "Parking > Parking Area",
                                "Parking > Parking Indoor",
                                "Parking > Parking Outdoor",
                                "Apartment > Penthouse",
                                "Investment > Planned",
                                "Plot > Plot",
                                "Storage / Production > Production Hall",
                                "Investment > Reference",
                                "Building > Residential Complex",
                                "Gastronomy / Hotel > Restaurant",
                                "Plot > Riding",
                                "House > Rustico",
                                "House > Semidetached House",
                                "Office > Shared Office",
                                "Trading > Shopping Centre",
                                "Office > Showroom Space",
                                "House > Show House",
                                "Trading > Sales Area",
                                "House > Single Family House",
                                "House > Single Multi Houses",
                                "Office > Single Office",
                                "Miscellaneous > Special Real Estate",
                                "Miscellaneous > Special Use",
                                "Trading > Store",
                                "Parking > Street Parking",
                                "Apartment > Studio",
                                "Miscellaneous > Terrace",
                                "House > Terrace House",
                                "House > Town House",
                                "Apartment > Triplex",
                                "Plot > Unbuildable Land",
                                "Parking > Underground Garage",
                                "Parking > Underground Parking Space",
                                "Apartment > Unfinished Attic Space",
                                "Miscellaneous > Unknown",
                                "House > Villa",
                                "House > Warehouse Hall",
                                "Agriculture / Forestry > Winery"
                            ]
                        }
                    },
                    "features": {
                        "title": "Features",
                        "type": "array",
                        "description": "Optional features.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "PARKING_GARAGE",
                                "BALCONY_TERRACE",
                                "GARDEN",
                                "SWIMMING_POOL",
                                "BATHROOM_WINDOW",
                                "BATHTUB",
                                "CELLAR",
                                "FURNISHED",
                                "UNFURNISHED",
                                "KITCHEN_FULLY_EQUIPPED",
                                "VACANT",
                                "TO_RENOVATE",
                                "PETS_ALLOWED",
                                "ASSISTED_LIVING",
                                "REDUCE_MOBILITY_ACCESS",
                                "ELEVATOR"
                            ],
                            "enumTitles": [
                                "Parking Garage",
                                "Balcony / Terrace",
                                "Garden",
                                "Swimming Pool",
                                "Bathroom Window",
                                "Bathtub",
                                "Cellar",
                                "Furnished",
                                "Unfurnished",
                                "Kitchen Fully Equipped",
                                "Vacant",
                                "To Renovate",
                                "Pets Allowed",
                                "Assisted Living",
                                "Reduced Mobility Access",
                                "Elevator"
                            ]
                        }
                    },
                    "energyScores": {
                        "title": "Energy Scores",
                        "type": "array",
                        "description": "Optional energy score filters.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "A_PLUS",
                                "A",
                                "B",
                                "C",
                                "D",
                                "E",
                                "F",
                                "G",
                                "H",
                                "NOT_APPLICABLE",
                                "NONE"
                            ],
                            "enumTitles": [
                                "A+",
                                "A",
                                "B",
                                "C",
                                "D",
                                "E",
                                "F",
                                "G",
                                "H",
                                "Not Applicable",
                                "None"
                            ]
                        }
                    },
                    "furnished": {
                        "title": "Furnished",
                        "enum": [
                            "FURNISHED",
                            "UNFURNISHED"
                        ],
                        "type": "string",
                        "description": "Furnished status."
                    },
                    "subsidized": {
                        "title": "Subsidized",
                        "type": "string",
                        "description": "Optional subsidized filter value."
                    },
                    "classifiedBusiness": {
                        "title": "Classified Business",
                        "enum": [
                            "PROFESSIONAL_UNITARY",
                            "PROFESSIONAL",
                            "PRIVATE",
                            "UNKNOWN"
                        ],
                        "type": "string",
                        "description": "Business classification filter."
                    },
                    "commissionFree": {
                        "title": "Commission Free",
                        "type": "boolean",
                        "description": "Only commission-free listings."
                    },
                    "radius": {
                        "title": "Radius",
                        "type": "number",
                        "description": "Optional search radius."
                    },
                    "minPrice": {
                        "title": "Min Price",
                        "type": "integer",
                        "description": "Minimum price."
                    },
                    "maxPrice": {
                        "title": "Max Price",
                        "type": "integer",
                        "description": "Maximum price."
                    },
                    "minRooms": {
                        "title": "Min Rooms",
                        "type": "number",
                        "description": "Minimum rooms."
                    },
                    "maxRooms": {
                        "title": "Max Rooms",
                        "type": "number",
                        "description": "Maximum rooms."
                    },
                    "minBedrooms": {
                        "title": "Min Bedrooms",
                        "type": "integer",
                        "description": "Minimum bedrooms."
                    },
                    "maxBedrooms": {
                        "title": "Max Bedrooms",
                        "type": "integer",
                        "description": "Maximum bedrooms."
                    },
                    "minFloors": {
                        "title": "Min Floors",
                        "type": "integer",
                        "description": "Minimum number of floors."
                    },
                    "maxFloors": {
                        "title": "Max Floors",
                        "type": "integer",
                        "description": "Maximum number of floors."
                    },
                    "minSpace": {
                        "title": "Min Space (m2)",
                        "type": "integer",
                        "description": "Minimum living space in square meters."
                    },
                    "maxSpace": {
                        "title": "Max Space (m2)",
                        "type": "integer",
                        "description": "Maximum living space in square meters."
                    },
                    "minPlotSpace": {
                        "title": "Min Plot Space",
                        "type": "integer",
                        "description": "Minimum plot size."
                    },
                    "maxPlotSpace": {
                        "title": "Max Plot Space",
                        "type": "integer",
                        "description": "Maximum plot size."
                    },
                    "minYearOfConstruction": {
                        "title": "Min Year",
                        "type": "integer",
                        "description": "Minimum construction year."
                    },
                    "maxYearOfConstruction": {
                        "title": "Max Year",
                        "type": "integer",
                        "description": "Maximum construction year."
                    },
                    "projectTypes": {
                        "title": "Project Types",
                        "type": "array",
                        "description": "Optional project type filters.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "ROOF_STOREY",
                                "GROUNDFLOOR",
                                "OTHERS"
                            ],
                            "enumTitles": [
                                "Roof Storey",
                                "Groundfloor",
                                "Others"
                            ]
                        }
                    },
                    "locationsInBuilding": {
                        "title": "Locations In Building",
                        "type": "array",
                        "description": "Optional in-building location filters.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "ROOF_STOREY",
                                "GROUNDFLOOR",
                                "OTHERS"
                            ],
                            "enumTitles": [
                                "Roof Storey",
                                "Groundfloor",
                                "Others"
                            ]
                        }
                    },
                    "classifiedDisplay": {
                        "title": "Classified Display",
                        "type": "array",
                        "description": "Optional classified display filter.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "STOCK",
                                "RESALE",
                                "NEW_BUILD",
                                "PROJECTED",
                                "FORECLOSURE",
                                "INVESTMENT",
                                "SWAP_APARTMENT",
                                "FLATSHARING",
                                "SHORT_TIME_RENTAL",
                                "LIFE_ANNUITY"
                            ],
                            "enumTitles": [
                                "Stock",
                                "Resale",
                                "New Build",
                                "Projected",
                                "Foreclosure",
                                "Investment",
                                "Swap Apartment",
                                "Flatsharing",
                                "Short Time Rental",
                                "Life Annuity"
                            ]
                        }
                    },
                    "energyHeating": {
                        "title": "Energy Heating",
                        "type": "array",
                        "description": "Optional energy heating filter.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "COAL",
                                "DISTRICT_HEATING",
                                "ELECTRIC",
                                "GAS",
                                "GEOTHERMIC_ENERGY",
                                "HEAT_PUMP",
                                "LIQUID_GAS",
                                "OIL",
                                "SOLAR",
                                "WIND",
                                "WOOD",
                                "PELLETS"
                            ],
                            "enumTitles": [
                                "Coal",
                                "District Heating",
                                "Electric",
                                "Gas",
                                "Geothermic Energy",
                                "Heat Pump",
                                "Liquid Gas",
                                "Oil",
                                "Solar",
                                "Wind",
                                "Wood",
                                "Pellets"
                            ]
                        }
                    },
                    "keywords": {
                        "title": "Keywords",
                        "type": "array",
                        "description": "Optional search keywords.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "matchAnyKeyword": {
                        "title": "Match Any Keyword",
                        "type": "boolean",
                        "description": "If true, listing can match any keyword; otherwise all keywords should match."
                    },
                    "isSaleGoodwill": {
                        "title": "Is Sale Goodwill",
                        "type": "boolean",
                        "description": "Optional goodwill sale filter."
                    },
                    "availableFromMax": {
                        "title": "Available From Max",
                        "type": "string",
                        "description": "Optional latest availability date/value."
                    },
                    "availableFromIsLooseMode": {
                        "title": "Available From Loose",
                        "type": "boolean",
                        "description": "Optional loose-mode availability matching."
                    },
                    "preferredWarmRent": {
                        "title": "Preferred Warm Rent",
                        "type": "boolean",
                        "description": "Optional preferred warm-rent filter."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
