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

CodeWhat happened
200The record
400The x-client-ref header is missing
401Token missing or invalid
403Your token does not have the property-api-read scope
404There is no usable record — the two cases above