Vepler logo
v5.2.0 Breaking change

Property responses default to identity and address

With no attributes parameter, property endpoints return locationId, propertyId, slug and address only. Name the blocks you need explicitly; the payload, the tier and the charge then always agree.

Changed

  • When the attributes parameter is omitted, property endpoints return each record's identity and address: locationId, propertyId, slug and address. This applies to GET /v1/property/{locationIds}, GET /v1/property/propertyId/{propertyIds}, POST /v1/property/query, POST /v1/property/properties/by-slugs and GET /v1/property/sources/{sourceIds}, along with the map tiles endpoint. The previous implicit default projected around seventy attribute paths, including pricing, listings, epc, saleHistory, tenancy, charges, roomDetails and marketStatus; those blocks now return only when requested.
  • To keep receiving richer blocks, name them in attributes: a comma-separated query parameter on the GET lookups, a string or array in the body of POST /v1/property/query, for example address,pricing,roomDetails,epc. A parent path selects the whole block, so attributes=epc returns the full EPC block. Requests that already pass attributes are unchanged, and locationId is always included whatever you request.
  • The attributes you request are what price the call: the identity-and-address default prices at the core tier, and richer blocks price at their own tiers when you ask for them, so the payload you receive, the tier you trigger and the credits you are charged always agree. If you relied on the implicit default, pin the exact list you need rather than omitting the parameter; omitting it is now a deliberate request for the minimal payload. The slim default also suits resolve-style calls: look up identities and addresses cheaply, then fetch the rich blocks for the records you actually need.

Removed

  • The optional X-Search-Session request header. Search-session grouping happens automatically through the server-minted search_id that suggest responses carry and clients echo back. The header was an optional analytics aid and telemetry recorded no production use of it; requests that still send it succeed unchanged, with the value ignored, so no integration change is needed. The developer guide now documents the server-minted flow: the engine issues an id when a query first narrows to a result set, and clients simply echo it back on the next keystroke.