# Fincaraiz Property API Documentation

Scrappa's `GET /api/fincaraiz/property` returns the full record for one Colombian listing: description, price, area, rooms, facilities, coordinates, image gallery, and publication dates.

## Owner information

Listings carry an `owner` block, reduced to four fields: `id`, `name`, `masked_phone`, and `ci`. The phone number is already masked by the platform and is returned masked.

No email address, no unmasked phone number, and no personal name beyond the published business or owner name is returned. Those fields exist on the platform but are never selected, and this selection is fixed in the implementation rather than built from your request — there is no parameter that can widen it.

## Status

`active`, `sold`, and `soldDate` describe the listing's lifecycle as published. The platform offers no way to filter by these, so treat them as facts about this listing, not as a searchable state. All three keys are always present; a key the platform did not publish for a given listing is `null` rather than an assumed value, so treat `null` as "the platform did not say".

## Images

`images` is a flat list of URLs served from the platform's own content delivery network. The URLs are passed through exactly as published and are never rewritten or cached by Scrappa.

## Not found

An id that does not exist returns a non-billable 404. Ids come from the search endpoint and from map pins.

- **Documentation:** [https://scrappa.co/docs/fincaraiz-api/fincaraiz_property](https://scrappa.co/docs/fincaraiz-api/fincaraiz_property)
- **API group:** Fincaraiz API
- **Endpoint:** `GET https://scrappa.co/api/fincaraiz/property`

## 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 |
| --- | --- | --- | --- |
| `id` | string | Yes | Numeric listing id, from the search endpoint or a map pin. |

## Example request

```bash
#!/bin/bash

curl -X GET \
    -H "x-api-key: YOUR_API_KEY_HERE" \
    "https://scrappa.co/api/fincaraiz/property?id=191347339"
```

## Example response

```json
{
    "success": true,
    "property": {
        "id": "191347339",
        "title": "Apartamento en  Venta en Manga, Cartagena",
        "description": "Hermoso apartamento remodelado en el sector de Manga...",
        "price": {
            "amount": 880000000,
            "currency": "COP"
        },
        "bedrooms": 3,
        "bathrooms": 2,
        "latitude": 10.4236,
        "longitude": -75.5478,
        "active": true,
        "sold": false,
        "soldDate": null,
        "images": [
            "https://cdn4.fincaraiz.com.co/repo/img/example.jpg"
        ],
        "image_count": 12,
        "owner": {
            "id": "176827195",
            "name": "Karpador inmobiliaria",
            "masked_phone": "(604) *** *** 45",
            "ci": null
        }
    },
    "meta": {
        "billable": true,
        "endpoint_family": "property",
        "attempts": 1
    }
}
```

## Errors

| Status | Error | Description |
| --- | --- | --- |
| 422 | Validation Error | The required `id` parameter is missing or invalid. Non-billable. |
| 503 | Unreadable Response | The platform answered successfully with a body this endpoint cannot read, so nothing is published and nothing is charged (`parser_drift`). Retryable. |
| 404 | Listing Not Found | No listing exists with that id (`not_found`). Non-billable. |
| 503 | Upstream Unavailable | The upstream request failed or could not be parsed after retries. Retryable and never billed. |

## Frequently asked questions

### Do you return the seller email address?

No. The platform exposes an owner email field, but this API never selects it and never returns a personal first name, an unmasked phone number, or any other contact detail.

### Can I find sold or expired listings with this API?

Not by filter — the platform exposes no lifecycle filter. Each listing carries active, sold, and soldDate, which you can read and act on, but you cannot search for a lifecycle state.

## Related endpoints

- [Search](https://scrappa.co/docs/fincaraiz-api/fincaraiz_search)
- [Similar Listings](https://scrappa.co/docs/fincaraiz-api/fincaraiz_similar_properties)

## 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)
