# Immobilienscout24 — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Access Germany's largest real estate portal to retrieve geocode suggestions, detailed listing information, property images, and realtor contact details. Browse ImmobilienScout24.de properties with comprehensive data on locations, descriptions, photos, and agent information at your fingertips.

**Category:** Real Estate | **Website:** [immobilienscout24.de/](https://immobilienscout24.de/) | **Docs:** [parse.bot/marketplace/45821378-95ab-4f3c-8443-49a44a9fb527/immobilienscout24-de-api](https://parse.bot/marketplace/45821378-95ab-4f3c-8443-49a44a9fb527/immobilienscout24-de-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/immobilienscout24/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get geocode suggestions

Resolve a location name to structured geo identifiers. Returns an object with a 'data' array of location suggestions matching the query, including cities, districts, postcodes, streets, train stations, POIs, and addresses. Each suggestion carries type, id, label, and geopath URI. Results are ordered by relevance.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `QUERY` | string | Yes | Location search query (city name, postcode, street, district, train station, POI, or address) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/immobilienscout24/get-geocode-suggestions \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"QUERY":"<string>"}'
```

### Get listing details

Retrieve full details for a specific listing by its expose ID. Returns structured property data including price, location address, contact information, gallery data, and key-value attributes (room count, area, heating type, etc.). Extracted from the expose page's embedded data.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `LISTING_ID` | string | Yes | The expose/listing ID (numeric string, e.g. '139440647') |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/immobilienscout24/get-listing-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"LISTING_ID":"<string>"}'
```

### Get listing images

Get all images for a listing by its expose ID. Returns an array of image objects with gallery, full-size, and thumbnail URLs, plus captions. Extracted from the expose page's embedded gallery data.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `LISTING_ID` | string | Yes | The expose/listing ID (numeric string, e.g. '139440647') |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/immobilienscout24/get-listing-images \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"LISTING_ID":"<string>"}'
```

### Get realtor details

Get detailed information about a realtor or listing company by their company-wide ID. Returns company info (name, logo, profile URL), contact details, evaluations/ratings, products, badges, and settings. Returns input_not_found if the ID does not match any realtor.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `REALTOR_ID` | string | Yes | The company-wide realtor ID in format '<prefix>.<uuid>' (e.g. '009.ecb352e3-56cd-4e07-aee2-97f5dee45a69'). Found in listing detail keyValues as obj_cwId. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/immobilienscout24/get-realtor-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"REALTOR_ID":"<string>"}'
```

### Search listings

Search for real estate listings with various filters. Returns paginated results. NOTE: Currently blocked by AWS WAF.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `LOCATION` | string | Yes | Location name to search in (e.g., 'Berlin', 'München') |
| `MAX_AREA` | string | No | Maximum living area in sqm |
| `MAX_PRICE` | string | No | Maximum price filter |
| `MAX_ROOMS` | string | No | Maximum rooms filter |
| `MIN_AREA` | string | No | Minimum living area in sqm |
| `MIN_PRICE` | string | No | Minimum price filter |
| `MIN_ROOMS` | string | No | Minimum rooms filter |
| `PAGE` | string | No | Page number |
| `SORTING` | string | No | Sorting option code (0=default, 3=price desc, 4=price asc) |
| `TYPE` | string | No | Property type: apartmentRent, apartmentBuy, houseRent, houseBuy, etc. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/immobilienscout24/search-listings \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"LOCATION":"<string>","MAX_AREA":"<string>","MAX_PRICE":"<string>","MAX_ROOMS":"<string>","MIN_AREA":"<string>","MIN_PRICE":"<string>","MIN_ROOMS":"<string>","PAGE":"<string>","SORTING":"<string>","TYPE":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://beta.paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://beta.paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://beta.paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://beta.paywithlocus.com/agent/index.md): every Locus agent page.