# Propertyfinder — 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 and browse properties across the UAE, view detailed listings with agent and broker information, and discover locations all in one place. Find the perfect property, connect with real estate agents, and explore company profiles to make informed decisions.

**Category:** Real Estate | **Website:** [propertyfinder.ae/](https://propertyfinder.ae/) | **Docs:** [parse.bot/marketplace/fbbc1eca-b1d3-488b-9f95-7ed6f950d083/propertyfinder-ae-api](https://parse.bot/marketplace/fbbc1eca-b1d3-488b-9f95-7ed6f950d083/propertyfinder-ae-api)

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

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/propertyfinder/`
**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 agent details

Get the full profile of a specific agent including transactions, areas of expertise, ratings, and broker affiliation. The slug format is '{name}-{id}' constructed from the slug and id fields returned by search_agents.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug` | string | Yes | Agent URL slug in format 'name-id' (e.g., 'ryan-morgan-198365'). Construct from search_agents slug + '-' + id fields. |

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

### Get company details

Get details of a real estate broker company including profile information, description, awards, and agent/property counts. The slug is the urlSlug field from search_companies results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug` | string | Yes | Company URL slug from search_companies urlSlug field (e.g., 'elite-property-brokerage-4428') |

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

### Get location suggestions

Autocomplete suggestions for locations (cities, communities, buildings). Returns location IDs and names for use as filters in search_properties. Each result includes the location's parent hierarchy.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Location search query (e.g., 'Dubai Marina', 'Downtown', 'Palm Jumeirah') |

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

### Get property details

Fetch full details of a single property listing. Note: Detail pages are protected by AWS WAF and may return blocked status. Use search_properties for comprehensive property data instead.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug_url` | string | Yes | Property URL path from search results details_path field |

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

### Search agents

Search for real estate agents. Returns detailed agent profiles including contact info, ratings, transaction history, brokerage details, and areas of expertise. Results are paginated with 20 agents per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | string | No | Category filter. |
| `page` | integer | No | Page number for pagination |
| `query` | string | No | Agent name or keyword search |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/propertyfinder/search-agents \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<string>","page":"<integer>","query":"<string>"}'
```

### Search companies

Search for real estate broker companies. Returns company profiles with agent counts, property counts, awards, and license information. Results are paginated with 20 companies per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for pagination |
| `query` | string | No | Company name search |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/propertyfinder/search-companies \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","query":"<string>"}'
```

### Search properties

Search for property listings with filters. Returns comprehensive property data including price, location, agent, broker, images, description, and amenities. Results are paginated with 25 items per page. Supports filtering by location (via ID or slug from get_location_suggestions), price range, area, bedrooms, bathrooms, property type, broker, and sort order. Multiple location IDs can be provided as a comma-separated string to search across several locations simultaneously.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `bathrooms` | string | No | Number of bathrooms filter (e.g., '1', '2', '3') |
| `bedrooms` | string | No | Number of bedrooms filter (e.g., '1', '2', '3') |
| `broker_id` | string | No | Broker/agency ID to filter properties by a specific company. Obtain from broker.id in search_properties results or id field in search_companies results. |
| `category` | string | No | Listing category. |
| `location_id` | string | No | Location ID or comma-separated location IDs from get_location_suggestions (e.g., '50' for Dubai Marina, '50,73' for Dubai Marina and Jumeirah Village Circle). Results include properties from any of the specified locations. |
| `location_slug` | string | No | Location slug from get_location_suggestions 's' field (e.g., 'dubai-marina' for Dubai Marina, 'palm-jumeirah' for Palm Jumeirah). The slug is resolved to a location ID internally for filtering. |
| `max_area` | integer | No | Maximum area in sqft |
| `max_price` | integer | No | Maximum price in AED |
| `min_area` | integer | No | Minimum area in sqft |
| `min_price` | integer | No | Minimum price in AED |
| `page` | integer | No | Page number for pagination |
| `property_type_id` | string | No | Property type ID: '1' for Apartment, '35' for Villa, '22' for Townhouse |
| `sort` | string | No | Sort order for results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/propertyfinder/search-properties \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"bathrooms":"<string>","bedrooms":"<string>","broker_id":"<string>","category":"<string>","location_id":"<string>","location_slug":"<string>","max_area":"<integer>","max_price":"<integer>","min_area":"<integer>","min_price":"<integer>","page":"<integer>","property_type_id":"<string>","sort":"<string>"}'
```

## Next steps

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