# Inmuebles24 Search

Searches the live Inmuebles24 catalog for Mexico. operation covers sale, rent, transfer, vacation rental and auctions (foreclosure inventory - remates are a first-class vertical, not a special case). Each call returns up to 30 listings from one page. Two honest limits: bedrooms filters the returned page exactly rather than the whole index, so it is not a global count; and there is no area filter, because area is only available as output on each listing. Results arrive in upstream relevance order unless sort is given, and the two sort values reorder the returned page by price only. This is listing-level coverage: there is no per-property detail endpoint, so full photo sets, price history and mortgage figures for an individual property are not available.

- **Documentation:** [https://scrappa.co/docs/inmuebles24-api/inmuebles24_search](https://scrappa.co/docs/inmuebles24-api/inmuebles24_search)
- **API group:** Inmuebles24 API
- **Endpoint:** `GET https://scrappa.co/api/inmuebles24/search`

## Authentication

Send your Scrappa API key in the `X-API-KEY` request header. Paid endpoints also support accountless x402 payments when called without an API key.

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `operation` | string | No | sale, rent, transfer, vacation, or auctions for foreclosure (remate) inventory. |
| `type` | string | No | Typology code: 1 house, 2 apartment, 3 land, 5 commercial, 21 warehouse, 101 duplex, and more. The property-types endpoint lists every code with its label. |
| `location` | string | No | Location id from the locations endpoint, such as V1-C-1229, or free text. |
| `min_price` | number | No | Minimum price. |
| `max_price` | number | No | Maximum price. |
| `bathrooms` | integer | No | Minimum bathrooms. |
| `bedrooms` | integer | No | Exact bedroom count. Applied to the returned page (at most 30 listings), so it narrows the page rather than counting matches across the whole index. |
| `garages` | string | No | Parking spaces. |
| `seller_type` | string | No | PARTICULAR, COMPANY, or ALL. |
| `room_type` | string | No | Room type code from the filters endpoint. |
| `services` | string | No | Service code from the filters endpoint. |
| `outside` | string | No | Outdoor-feature code from the filters endpoint. |
| `general` | string | No | General-feature code from the filters endpoint. |
| `amenities` | string | No | Amenity code from the filters endpoint. |
| `age` | string | No | Property age code from the filters endpoint. |
| `published_within` | string | No | Recency code from the filters endpoint. |
| `keyword` | string | No | Free-text keyword. |
| `sort` | string | No | price_asc or price_desc, applied to the returned page rather than to the upstream index. |
| `page` | integer | No | 1-based page number, 30 listings per page. |

## Example request

```bash
#!/bin/bash

curl -X GET \
    -H "x-api-key: YOUR_API_KEY_HERE" \
    "https://scrappa.co/api/inmuebles24/search?operation=sale&type=1&location=V1-C-1229&page=1"
```

## Example response

```json
{
    "success": true,
    "data": {
        "listings": [
            {
                "id": "147214291",
                "title": "Casa en venta",
                "prices": [
                    {
                        "amount": 2678716,
                        "currency": "MXN"
                    }
                ],
                "features": {
                    "bedrooms": 3,
                    "bathrooms": 2
                },
                "coordinates": {
                    "lat": 25.67,
                    "lon": -100.28
                }
            }
        ],
        "total": 8904,
        "current_page": 1,
        "total_pages": 297,
        "per_page": 30
    }
}
```

## Errors

| Status | Error | Description |
| --- | --- | --- |
| 422 | Validation Error | A parameter is invalid. Unknown operations, property types, currencies and sort values are rejected here rather than upstream, because upstream answers them with an empty result that looks like a valid answer. This response is not billable. |
| 402 | Payment Required | The request carried neither an API key nor an x402 payment signature, so it was answered with a payment challenge before the lookup ran. Nothing was charged. Send an X-API-KEY header, or retry with a PAYMENT-SIGNATURE. |
| 503 | Upstream Unavailable | Inmuebles24 could not be reached through any approved route within the attempt budget. Nothing was charged and the request is safe to retry. |

## More Scrappa resources

- [API documentation](https://scrappa.co/docs)
- [Full LLM-readable API reference](https://scrappa.co/llms-full.txt)
- [OpenAPI specification](https://scrappa.co/docs/api.json)
- [Pricing](https://scrappa.co/pricing)
