# Athome — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://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.

> Search for properties, view detailed listings, and browse real estate agencies and agents operating in Luxembourg through athome.lu. Access comprehensive information about specific properties, agency profiles, agent details, and discover all properties managed by any agency or agent.

**Category:** Real Estate | **Website:** [athome.lu/](https://athome.lu/) | **Docs:** [parse.bot/marketplace/13f79891-e2bd-4256-9216-24fbc16b42d0/athome-lu-api](https://parse.bot/marketplace/13f79891-e2bd-4256-9216-24fbc16b42d0/athome-lu-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-athome-lu-api-13f79891/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_agency_agents

Get the list of agents belonging to a specific agency.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `agency_id` | string | Yes | Numeric agency ID (from search_agencies results[*].id). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-athome-lu-api-13f79891/get_agency_agents \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"agency_id":"<string>"}'
```

### get_agency_details

Get detailed information about a real estate agency by its ID, including contact info, business hours, description, services, and links.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `agency_id` | string | Yes | Numeric agency ID (from search_agencies results[*].id or get_agency_properties). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-athome-lu-api-13f79891/get_agency_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"agency_id":"<string>"}'
```

### get_agency_properties

Get paginated property listings associated with a specific agency, optionally filtered by agent and transaction type.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `agency_id` | string | Yes | Numeric agency ID (from search_agencies results[*].id). |
| `agent_id` | string | No | Numeric agent ID to filter properties by a specific agent (from get_agency_agents results[*].id). |
| `page` | integer | No | Page number for pagination. |
| `page_size` | integer | No | Number of results per page. |
| `transaction` | string | No | Transaction type. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-athome-lu-api-13f79891/get_agency_properties \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"agency_id":"<string>","agent_id":"<string>","page":"<integer>","page_size":"<integer>","transaction":"<string>"}'
```

### get_agent_details

Get detailed information about a specific real estate agent including experience, languages, and contact details.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `agent_id` | string | Yes | Numeric agent ID (from get_agency_agents results[*].id or get_all_agents results[*].id). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-athome-lu-api-13f79891/get_agent_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"agent_id":"<string>"}'
```

### get_all_agents

Get a list of all active real estate agents on the platform with their agency information. Returns a curated list of featured agents.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-athome-lu-api-13f79891/get_all_agents \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_property_details

Get full details of a specific property listing by its numeric ID. Returns complete property data including descriptions, media, pricing, characteristics, and child units for multi-unit projects. Returns input_not_found for non-existent listing IDs.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `listing_id` | string | Yes | Numeric property listing ID (from search_properties results[*].id). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-athome-lu-api-13f79891/get_property_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"listing_id":"<string>"}'
```

### search_agencies

Search for real estate agencies on the platform. By default returns all agencies in Luxembourg. Optionally filter by city name which is resolved to a geographic key internally. Returns paginated results with agency summaries including listing counts.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `city` | string | No | City name to filter agencies (e.g. 'Luxembourg', 'Esch-sur-Alzette'). Omitting returns all agencies in Luxembourg. |
| `page` | integer | No | Page number for pagination. |
| `page_size` | integer | No | Number of results per page. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-athome-lu-api-13f79891/search_agencies \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"city":"<string>","page":"<integer>","page_size":"<integer>"}'
```

### search_properties

Search for property listings on atHome.lu with various filters. Returns paginated results ordered by recency. Supports filtering by transaction type, property type, price range, room count, and surface area. Results include full listing summaries with address, contact, media, pricing, and child units for multi-unit projects.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `max_area` | integer | No | Maximum surface area in square meters. |
| `max_price` | integer | No | Maximum price in EUR. |
| `max_rooms` | integer | No | Maximum number of rooms. |
| `min_area` | integer | No | Minimum surface area in square meters. |
| `min_price` | integer | No | Minimum price in EUR. |
| `min_rooms` | integer | No | Minimum number of rooms. |
| `page` | integer | No | Page number for pagination. |
| `page_size` | integer | No | Number of results per page. |
| `property_types` | string | No | Comma-separated property type keys to filter by. Values are case-sensitive: 'Apartment', 'House', 'Semi-detached house', 'Terraced', 'Apartment block', 'New project', 'Housing project'. |
| `transaction` | string | No | Transaction type. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-athome-lu-api-13f79891/search_properties \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"max_area":"<integer>","max_price":"<integer>","max_rooms":"<integer>","min_area":"<integer>","min_price":"<integer>","min_rooms":"<integer>","page":"<integer>","page_size":"<integer>","property_types":"<string>","transaction":"<string>"}'
```
