Comparables
Returns ranked sold comparables around a UK postcode, matched via PostGIS spatial search. Each comparable carries asimilarity_score, a confidence_tier, a source_attribution, and flags that surface distressed or flip transactions, so you can build a defensible valuation rather than a flat list of nearby sales.
Required scope: market-data:read · Cost: 1 request
Authorization: Bearer paid_your_key). The endpoint also accepts a logged-in Clerk session when called from the dashboard. Anonymous requests are rejected.
Query parameters
Request
Response
Response fields
Each item in
comparables:
Property type
Comparables are drawn from three registers that each name the same dwelling differently. Zoopla saysSemi-Detached House, Flat/Maisonette, Purpose Built Flat, Converted Flat, Mid Terrace House; HM Land Registry stores D/S/T/F, which the comparables query expands to Detached/Semi-Detached/Terraced/Flat; Rightmove uses semi_detached. One ranked list could therefore contain seven labels for four kinds of dwelling.
property_type publishes one vocabulary for all of them:
flat · terraced · semi-detached · detached · bungalow · house · studio · maisonette · land · commercial · parking · caravan · other
house is a house whose subtype the source never stated (terraced vs semi-detached vs detached unknown). It is a real value, not a labelling error: some suppliers list only “house”, and subtype-specific filters (and the playbooks that gate on a specific house type) will not select those rows.
The published value is always a value you can send straight back as type= and get that row again — the mapping is chosen so the label selects its own row. property_type_source carries the supplier’s original string so you can audit the mapping.
Two consequences worth knowing:
Semi-Detached Bungalowpublishes assemi-detached, notbungalow. The structure decides the bucket the filter uses; the bungalow detail stays inproperty_type_source./api/v1/market-datais deliberately not on this vocabulary. Itsproperty_typeis HM Land Registry’s ownD/S/T/Fcode, which is also its filter value — translating it there would break the filter it echoes.
Floor area and £/sqft
A floor area is not always a measurement of the dwelling it is attached to. Most areas come from an EPC certificate, and a certificate routinely covers a whole block: 3,071,054 of the 26,755,813 Land Registry floor areas — 11.5%, measured 2026-08-13 — were attached by whole-address similarity, the rule that matches “Flat 3, 12 High Street” to “Flat 8, 12 High Street”. Dividing by such an area produces an exact-looking £/sqft whose precision is manufactured by the division.floor_area_source says which case you are in:
price_per_sqft_is_estimated is true for everything except measured. It is deliberately asymmetric: absent evidence of a measurement is not evidence of one.
The subject property’s own £/sqft, on the same footing, is returned by /api/v1/rental-estimate.
Confidence tiers
Theconfidence_tier ranks how directly comparable each sale is, combining similarity, distance, and recency:
Tenure outside England and Wales
Freehold and Leasehold are estates in English land law. Neither exists in Scotland. Feudal tenure was abolished by the Abolition of Feudal Tenure etc. (Scotland) Act 2000, and residential long leases converted to outright ownership under the Long Leases (Scotland) Act 2012.
A comparable with jurisdiction: "scotland" therefore returns:
Northern Ireland is unaffected: freehold and leasehold both genuinely exist there.
Where a postcode district straddles the border (
TD12, TD15) and no stronger evidence is held, jurisdiction is unknown and the tenure is passed through untouched rather than rewritten on a guess.
Distressed and flip flags
Two flags help you discount sales that do not reflect open-market value:transaction_category: "non_standard"marks sales recorded under HM Land Registry PPD category B — repossessions, right-to-buy, auction, and family transfers. These often sit below open-market value.is_likely_flip: truemarks an address that re-sold within roughly three years for a large uplift, which can inflate an apparent local price level.
For a robust valuation, lean on
gold and silver comparables and exclude or down-weight rows flagged non_standard or is_likely_flip. Widen radius_miles only if the closer tiers return too few rows.