Look up a client
GET /property-v1/customers
Returns the record of the clientRef you ask for.
curl https://property-api.mapaprop.com/property-v1/customers \
-H "Authorization: Bearer $TOKEN" \
-H "x-client-ref: cliente-42"
200 response:
{
"customer": {
"customerId": "MAPAPROP-PA-000002",
"clientRef": "cliente-42",
"createdAt": "2026-10-01T02:54:30.980Z",
"updatedAt": "2026-10-01T02:54:30.980Z",
"name": "Inmobiliaria Modelo",
"phone1": "2234567890",
"email": "contacto@inmobiliaria-modelo.test",
"country": 1,
"branch": { "name": "Sucursal Centro", "phone1": "2234567891" }
}
}
If you have not declared anything yet, it responds 404 — not a 200 with an empty record, so that you
can tell "it does not exist" from "it exists and is incomplete".
The two 404s
Your "does it exist?" check does not change: both are 404. What changes is the body, because the
fix is different in each case.
You never declared it
{
"error": "No hay una inmobiliaria declarada para este clientRef",
"detail": "Creala con POST /property-v1/customers antes de dar de alta propiedades."
}
→ POST, and you get a new customerId.
You deactivated it
{
"error": "customer_deleted",
"detail": "Esta inmobiliaria fue dada de baja el 2026-10-01T18:22:04.117Z. Volvé a crearla con POST /property-v1/customers: recupera el mismo customerId (MAPAPROP-PA-000002) y sus propiedades.",
"deletedAt": "2026-10-01T18:22:04.117Z",
"customerId": "MAPAPROP-PA-000002"
}
→ the same POST reactivates it, and it recovers the
customerId it already had.
If your integration tells the two cases apart, look at the error field: customer_deleted tells you
the client existed and that you will recover its id. The other 404 tells you that you will get a new
one.
Response codes
| Code | What happened |
|---|---|
200 | The record |
400 | The x-client-ref header is missing |
401 | Token missing or invalid |
403 | Your token does not have the property-api-read scope |
404 | There is no usable record — the two cases above |