# Zapimoveis — 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 filter real estate listings across Brazil on ZAP Imóveis — the country's largest property portal. Retrieve listings for sale or rent with detailed attributes including price, location, size, bedrooms, bathrooms, parking, and amenities. Supports location autocomplete, property type discovery, and full listing detail retrieval.

**Category:** Real Estate | **Website:** [zapimoveis.com.br/](https://zapimoveis.com.br/) | **Docs:** [parse.bot/marketplace/a2ae5d2b-5595-4aaa-b564-5c217880fd8a/zapimoveis-com-br-api](https://parse.bot/marketplace/a2ae5d2b-5595-4aaa-b564-5c217880fd8a/zapimoveis-com-br-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-zapimoveis-com-br-api-a2ae5d2b/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_listing_amenities

Get available amenity slugs and their listing counts for a given transaction type and optional location. Returns a map of amenity codes to the number of listings offering that amenity. Useful for discovering available amenities before filtering search results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `location_id` | string | No | Location ID to filter by (from get_location_suggestions). |
| `transaction` | string | No | Transaction type: RENTAL or SALE. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zapimoveis-com-br-api-a2ae5d2b/get_listing_amenities \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"location_id":"<string>","transaction":"<string>"}'
```

### get_listing_detail

Get full details of a specific property listing by its numeric ID. Returns comprehensive listing information including address, pricing, amenities, media (images/videos), and advertiser account details. The listing_id can be obtained from search_listings results (listing.id field).

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `listing_id` | string | Yes | The numeric listing ID (e.g. '2877108789') from search_listings results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zapimoveis-com-br-api-a2ae5d2b/get_listing_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"listing_id":"<string>"}'
```

### get_location_suggestions

Autocomplete location search to find city, neighborhood, zone, and street suggestions with their location IDs. Returns up to 10 suggestions matching the query. Use the returned locationId values as the location_id parameter in search_listings.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search query for location (e.g. 'Rio de Janeiro', 'Copacabana'). |
| `transaction_type` | string | No | Transaction type: RENTAL or SALE. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zapimoveis-com-br-api-a2ae5d2b/get_location_suggestions \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>","transaction_type":"<string>"}'
```

### get_property_types

Get available property type slugs and their listing counts for a given transaction type and optional location. Returns a map of property type codes to the number of active listings. Useful for discovering which property types have inventory before searching.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `location_id` | string | No | Location ID to filter by (from get_location_suggestions). |
| `transaction` | string | No | Transaction type: RENTAL or SALE. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zapimoveis-com-br-api-a2ae5d2b/get_property_types \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"location_id":"<string>","transaction":"<string>"}'
```

### search_listings

Search for real estate listings with extensive filters. Returns paginated results including listing details, account info, media, and total count. Supports filtering by location, property type, price range, bedrooms, bathrooms, area, and parking spaces. Pagination via page number; each page returns up to page_size results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `bathrooms` | integer | No | Number of bathrooms to filter by. |
| `bedrooms` | integer | No | Number of bedrooms to filter by. |
| `city` | string | No | City name filter (e.g. 'Rio de Janeiro', 'São Paulo'). |
| `is_development` | boolean | No | Filter for new developments only. |
| `location_id` | string | No | Location ID from get_location_suggestions endpoint (e.g. 'BR>Rio de Janeiro>NULL>Rio de Janeiro'). |
| `max_area` | integer | No | Maximum area in m². |
| `max_price` | integer | No | Maximum price filter. |
| `min_area` | integer | No | Minimum area in m². |
| `min_price` | integer | No | Minimum price filter. |
| `page` | integer | No | Page number for pagination. |
| `page_size` | integer | No | Number of results per page. |
| `parking_spaces` | integer | No | Number of parking spaces to filter by. |
| `property_types` | string | No | Comma-separated property type slugs (e.g. 'APARTMENT', 'HOME', 'APARTMENT,HOME'). Available types include APARTMENT, HOME, CONDOMINIUM, PENTHOUSE, FLAT, KITNET, VILLAGE_HOUSE, LOFT. |
| `sort` | string | No | Sort order for results. |
| `state` | string | No | State name filter (e.g. 'Rio de Janeiro', 'São Paulo'). |
| `transaction` | string | No | Transaction type: RENTAL or SALE. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zapimoveis-com-br-api-a2ae5d2b/search_listings \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"bathrooms":"<integer>","bedrooms":"<integer>","city":"<string>","is_development":"<boolean>","location_id":"<string>","max_area":"<integer>","max_price":"<integer>","min_area":"<integer>","min_price":"<integer>","page":"<integer>","page_size":"<integer>","parking_spaces":"<integer>","property_types":"<string>","sort":"<string>","state":"<string>","transaction":"<string>"}'
```
