UK Property Data API — Live Playground
BetaEvery endpoint with its parameters, a real response and copy-paste code. Create an account to run them against your own key.
Property tiers — one UPRN in, fixed depth out, fixed cost
Properties Query Builder
Catalog
Click or drag to chain
All add-ons chained.
Your query
Base · add-ons
Pick one fact about one UPRN — cheaper than a tier when you only need one field. Need several? Build your own ?with= chain.
For a known UPRN — every listing it ever had, the event-by-event timeline for any sale, and the Land Registry transaction record.
30 years of portal listingsFind live on-market listings and unlock the UPRN + full address.
Live UK listingsWhat's near a property — three families, one UPRN, a radius you choose. Open a card for the whole bundle, or a category for one type.
Postcode, outcode or boundary-level stats — prices, demographics, amenities, heritage.
Free calculators — no tokens spent. Use them anywhere.
Find an address — by query, postcode, or building.
/property/{uprn}/core/
Flagship
25 tokens
The complete listing card in one call — everything in Base plus council tax, flood, schools, broadband, crime, demographics, amenities, planning summary, valuations, solar and Land Registry sales. The shallowest tier most apps ever need.
curl "https://api.homedata.co.uk/property/100023336956/core/" \ -H "Authorization: Api-Key YOUR_API_KEY"
{
"uprn": 100023336956,
"address": {
"full_address": "PRIME MINISTER & FIRST LORD OF THE TREASURY, 10 DOWNING S\u2026",
"address": "10 Downing Street",
"address_line_1": "10 Downing Street",
"address_line_2": null,
"address_line_3": null,
"sub_building": null,
"building_name": null,
"building_number": "10",
"street_name": "Downing Street",
"locality": null,
"town_name": "London",
"post_town": null,
"postcode": "SW1A 2AA",
"outward_postcode": "SW1A"
},
"property_type": {
"property_type": "Terraced",
"classification_code": "RD"
},
"rooms": {
"bedrooms": null,
"predicted_bedrooms": 3,
"bathrooms": null,
"habitable_rooms": null,
"heated_rooms": null
},
"epc": {
"available": false,
"reason": "no EPC certificate on file"
},
"lr_title": {
"title_no": "NGL864428",
"estate_interest": "Estate in land",
"estate_interest_code": "EL",
"title_class": "Absolute freehold title",
"title_class_code": "AF",
"has_restrictive_covenant": null,
"record_status": "A"
},
"last_sold": {
"available": false,
"reason": "no recorded sale"
},
"construction": {
"construction_age_band": "Pre-1837",
"construction_material": "Brick Or Block Or Stone",
"has_basement": true
},
"dimensions": {
"geometry_area_m2": 1427.918,
"building_height": 25.6,
"estimated_volume": 36554.7008,
"predicted_floor_area": 7140
},
"garden": {
"has_garden": null,
"garden_details": null
},
"parking": {
"has_parking": null,
"parking_details": null
},
"council_tax": {
"council_tax_band": "H",
"authority_name": "Westminster"
},
"flood": [
{
"risk_type": "flood_rivers_sea",
"label": "Very low",
"score": 1,
"score_unit": "band",
"intersects": true,
"distance_m": 0,
"search_radius_m": 0,
"count": 1,
"radius_description": "At property",
"properties": {
"description": "Less than 1 in 1,000 chance of flooding each year",
"confidence": null
}
},
{
"risk_type": "flood_surface_water",
"label": "Low",
"score": 2,
"score_unit": "band",
"intersects": true,
"distance_m": 0,
"search_radius_m": 0,
"count": 1,
"radius_description": "At property",
"properties": {
"description": "Between 1 in 1,000 and 1 in 100 chance of flooding each year",
"confidence": null
}
}
],
"schools": {
"query": {
"lat": 51.503541,
"lng": -0.12767,
"radius_km": 3.0,
"postcode": null,
"uprn": "100023336956",
"phase": null,
"ofsted": null
},
"count": 20,
"total_in_radius": 130,
"ofsted_summary": {
"Good": 19,
"Outstanding": 11,
"Requires Improvement": 3,
"Not yet inspected": 97
},
"schools": [
{
"urn": 140939,
"name": "Harris Westminster Sixth Form",
"type": "Free schools 16 to 19",
"type_group": "Free Schools",
"phase": "16 plus",
"gender": "Mixed",
"religious_character": "None",
"admissions_policy": null,
"age_range": "16-19",
"number_of_pupils": 610,
"school_capacity": 600,
"percentage_fsm": null,
"ofsted": {
"rating": null,
"last_inspection": null
},
"address": {
"street": "Steel House, 11 Tothill Street",
"locality": "Westminster",
"town": "London",
"county": null,
"postcode": "SW1H 9LH"
}
},
{
"urn": 101159,
"name": "Westminster Abbey Choir School",
"type": "Other independent school",
"type_group": "Independent schools",
"phase": "Not applicable",
"gender": "Boys",
"religious_character": "Anglican",
"admissions_policy": "Not applicable",
"age_range": "8-13",
"number_of_pupils": 27,
"school_capacity": 32,
"percentage_fsm": null,
"ofsted": {
"rating": null,
"last_inspection": null
},
"address": {
"street": "Dean's Yard",
"locality": null,
"town": "London",
"county": null,
"postcode": "SW1P 3NY"
}
}
],
"metadata": {
"source": "GIAS \u2014 DfE Get Information About Schools",
"coverage": "England (~27,000 open schools)",
"note": "Distance is straight-line (as the crow flies)"
}
}
}
Per-row call cost:
Need an example UPRN? Find one.
Optional lookup — skip if you already have a value.
Parameters
Each category is its own endpoint — the path follows your pick.
Provide one of these — not both.
Provide one of these — not both.
Runs use your key and spend tokens from your balance. Sign in to run this request, or create an account if you don't have one.
29 million UK properties
Address lookup, UPRN resolution, EPC data, council tax band, Land Registry titles, and full sales history — every endpoint resolves against the same canonical UPRN graph.
Pay as you go — no subscription needed
100 tokens = £1 and your first top-up is matched 100%. Stamp Duty + mortgage calculators never cost a token. Add more only when you need volume.
Built for developers
REST endpoints, JSON responses, idiomatic curl/Python/Node/PHP code samples, and inline parameter validation. Everything you'd expect from a modern UK property API.
All Property Listings
Thirty years of listing history for one property — what it asked, how often that was cut, and whether it sold or quietly came off.
What you could build
Mayfield Park North, Bristol BS16 3NJ
Looks like it failed. It did not.
Withdrawn — sold ten days later
Last asking price
£325,000
The whole life of the listing, not today's snapshot
30 September 2019
First listed
Withdrawn
Left the market
2,537
Days on market
None
Price reductions
3 bed detached
Property
{
"count": 1,
"results": [
{
"id": "7f9200c5-93be-487a-befa-26aa8667b3e4",
"street": "Mayfield Park North Fishponds BS16",
"postcode": "BS16 3NJ",
"transaction_type": "Sale",
"latest_price": 325000,
"bedrooms": 3,
"bathrooms": 1,
"reception_rooms": 1,
"property_type": "Detached",
"is_reduced": false,
"times_reduced": 0,
"is_withdrawn": true,
"days_on_market": 2537,
"added_date": "2019-09-30"
}
]
}
Sale Events
The negotiation behind the headline price — every price move, offer and withdrawal, dated.
What you could build
Mayfield Park North, Bristol BS16 3NJ
Motivation signal
Agreed in seven days, then renegotiated
Events on record
3
What a single asking price hides
Added
30 September 2019
Sold STC
7 October 2019
Withdrawn
30 March 2020
{
"count": 3,
"results": [
{
"id": 53472,
"listing": "7f9200c5-93be-487a-befa-26aa8667b3e4",
"event_type": "Withdrawn",
"date": "2020-03-30",
"price": 325000
},
{
"id": 53471,
"listing": "7f9200c5-93be-487a-befa-26aa8667b3e4",
"event_type": "Sold STC",
"date": "2019-10-07",
"price": 325000
},
{
"id": 53470,
"listing": "7f9200c5-93be-487a-befa-26aa8667b3e4",
"event_type": "Added",
"date": "2019-09-30",
"price": 325000
}
]
}
Land Registry Sales
What actually changed hands, not what was asked — every HM Land Registry confirmed completion, with the date and the real price.
What you could build
Mayfield Park North, Bristol BS16 3NJ
What it actually sold for
£310,000
Price paid
£310,000
The completion the portals never showed
9 April 2020
Completion date
£15,000 below
Against the asking price
A96E4ACB-DBFE-9205-E053-6C04A8C0DA09
Land Registry txid
{
"uprn": 61263,
"count": 1,
"sales": [
{
"txid": "A96E4ACB-DBFE-9205-E053-6C04A8C0DA09",
"sold_let_date": "2020-04-09",
"sold_let_price": 310000,
"transaction_type": "Sale"
}
]
}
Comparables
The evidence a valuation stands on — like-for-like sold comparables, time-adjusted to today and ranked by how closely they match. The same set surveyors and estate agents already run inside their own systems.
What you could build
12 Orchard Lane, Reading RG1 5XA · Detached · 3 bed · 118 m²
Evidence quality
Strong · 12 matched
Adjusted median
£408,000
Closest matches, each adjusted to today
Detached · 3 bed · 121 m²
8 Orchard Lane · 0.05 mi
Detached · 3 bed · 114 m²
24 Windsor Road · 0.18 mi
Detached · 3 bed · 119 m²
3 Kendrick Close · 0.27 mi
Detached · 4 bed · 132 m²
17 Alexandra Road · 0.31 mi
Reading RG1 index, +1.8% since February
Market adjustment
{
"uprn": 100023336956,
"matched": 12,
"adjusted_median": 408000,
"range": {
"low": 392000,
"high": 427500
},
"radius_miles": 0.4,
"window_months": 9,
"comparables": [
{
"address": "8 Orchard Lane",
"distance_miles": 0.05,
"property_type": "Detached",
"bedrooms": 3,
"floor_area_m2": 121,
"sold_price": 415000,
"sold_date": "2026-06-14",
"adjusted_price": 415000
}
],
"index": {
"area": "RG1",
"change_pct": 1.8,
"since": "2026-02"
}
}
Search live listings
Live UK listings on sale or to let, filtered down to the properties worth calling.
What you could build
For sale · newest first · showing 3
Live matches
10,000+
Listings matched
10,000+
Every result carries what it took to find it
Mayfield Park North, BS16 3NJ
Terraced · 3 bed · added today
Cavendish Road, BA1 2UD
Detached · 2 bed · added today
Elmdon Lane, B37 7EQ
Detached · 3 bed · added today
Reductions, days on market, EPC band, floor area, garden, parking
Filter on
{
"count": 10000,
"page": 1,
"page_size": 3,
"total_pages": 3334,
"results": [
{
"id": "c61d5383-1214-4e6f-b63c-1153863bc50f",
"street": "Mayfield Park North",
"postcode": "BS16 3NJ",
"transaction_type": "Sale",
"latest_status": "For sale",
"latest_price": 385000,
"bedrooms": 3,
"bathrooms": 1,
"property_type": "Terraced",
"ownership": "Freehold",
"is_new_build": false,
"is_reduced": false,
"times_reduced": 0,
"days_on_market": 0,
"added_date": "2026-09-10"
}
]
}
Unlock UPRN + Address
Turn a listing into a real address — the full postal address and the whole sale history, ready to act on.
What you could build
One listing id in, the property out
Listing to property
One call
Returns
UPRN + address + timeline
What the reveal gives you
listing_id
You send
The full postal address
You get
The UPRN
You get
The full event timeline
You get
Free
Already revealed
{
"listing_id": "<id from any Live Listings result>",
"uprn": 100023336956,
"full_address": "10 Downing Street, London SW1A 2AA",
"charged": true
}
Flood risk expert
Everything the Environment Agency knows about flooding at this address — not the postcode, not one band. Seven layers, 1703 to the 2080s.
What you could build
Barton Street, Tewkesbury GL20
Band versus record
Surface-water band Low — the river has flooded it
Flood outlines within 250 m
10+
Every layer, read at this property
Screening band
Surface water — Low
1 in 1,000 to 1 in 100 a year
Planning zone 3
Outside
Nearest 105 m
Planning zone 2
Outside
Nearest 42 m
Recorded floods
Five episodes in the ten nearest outlines
1947, 1998, 2000 twice, 2007 — one covers the property at 0 m
Defences
None within 250 m
No EA defence recorded nearby
Storage areas
Not inside one
Warning and alert areas
Inside neither
Outside the EA warning service — no automatic alerts here
Reservoir failure
Inside the extent
EA wet-day worst case · Cheltenham Racecourse, a High-risk designated reservoir
Climate 2080s
In the extreme river extent
High-emissions scenario, defended and undefended
{
"query": {
"uprn": 100120547768,
"country": "England",
"coverage": [
"England"
],
"in_coverage": true,
"basis": "title"
},
"band": {
"risk_type": "flood_surface_water",
"label": "Low",
"score": 2,
"score_unit": "band",
"description": "Between 1 in 1,000 and 1 in 100 chance of flooding each year",
"confidence": 3
},
"zones": {
"source": "EA Flood Map for Planning (undefended fluvial/tidal)",
"flood_zone_3": {
"inside": false,
"nearest_m": 104.7
},
"flood_zone_2": {
"inside": false,
"nearest_m": 42.3
}
},
"history": {
"source": "EA Recorded Flood Outlines (1703-present)",
"has_flooded": true,
"events_within_250m": [
{
"name": "March-1947 River Severn",
"flood_source": "main river",
"flood_cause": "channel capacity exceeded (no raised defences)",
"start_date": "1947-03-07",
"end_date": "1947-04-04",
"distance_m": 0
},
{
"name": "River Swilgate 006 (July 07)",
"flood_source": "main river",
"flood_cause": "channel capacity exceeded (no raised defences)",
"start_date": "2007-07-20",
"end_date": "2007-07-24",
"distance_m": 43.4
}
]
},
"defences": {
"source": "EA Spatial Flood Defences",
"count_within_250m": 0,
"defences": []
},
"storage-areas": {
"source": "EA Flood Storage Areas",
"inside": false,
"nearest_m": null
},
"warning-areas": {
"source": "EA Flood Warning and Alert Areas",
"warning_area": {
"inside": false
},
"alert_area": {
"inside": false
}
},
"reservoir": {
"source": "EA Reservoir Flood Extents (wet-day worst case)",
"inside": true,
"reservoir": "Cheltenham Racecourse",
"operator": "The Steeplechase Company (Cheltenham) Ltd",
"risk_designation": "High-risk"
},
"climate": {
"source": "EA climate-change flood projections (CCP1)",
"epoch": "2080s (2070-2125)",
"scenario": "UKCP18 RCP8.5 (high emissions)",
"river": {
"high": {
"defended": false,
"undefended": false
},
"extreme": {
"defended": true,
"undefended": true
}
},
"sea": {
"high": {
"defended": false,
"undefended": false
},
"extreme": {
"defended": false,
"undefended": false
}
}
}
}
Plot intelligence
What the plot actually contains — garden size and aspect, whether a car fits on the drive, and whether it has already been extended. Measured, not guessed.
What you could build
Semi-detached, 1930s · 604 m² title
Extension detected
Yes — rear, 14 m²
Measured against the title, not read off a photo
Private garden
138 m²
Measured, then classified
Rear, 14 m²
Extension
Extra building part, lower eaves, off-archetype, approved application
Evidence
138 m² · widest circle 7.4 m
Garden
6.2 hrs midsummer
Sun on the garden
41 m² a car can reach
Driveway
3.1 m gap in the frontage
Way in
{
"uprn": 100023336956,
"extension": {
"detected": true,
"area_m2": 14,
"position": "rear",
"signals": [
"extra_building_part",
"eaves_step_down",
"off_cohort_archetype",
"approved_application"
],
"confidence": "high"
},
"extents": {
"title_m2": 604,
"boundary_basis": "HMLR general boundaries — indicative, screening tolerance",
"built_m2": 96,
"private_amenity_m2": 138,
"shared_m2": 0
},
"garden": {
"area_m2": 138,
"inscribed_circle_m": 7.4,
"aspect": "south_west",
"direct_sun_hours_midsummer": 6.2
},
"parking": {
"drivable_area_m2": 41,
"independent_bays": 2,
"tandem_bays": 1,
"opening_width_m": 3.1,
"crossing_consent": "not_verified"
},
"confidence": {
"band": "high",
"abstained": []
}
}
Development suitability
Whether it fits, before you pay anyone to draw it — and when it does not, exactly what would have to change.
What you could build
Corner plot, 604 m² · outside green belt
Development potential
High
Units placed and proved — not area divided by a quota
Screening clears
2 extra homes
Answer by answer, each one proved
Yes
Garden room or outbuilding
Yes
Annexe
Rear, side or loft
Extension
Yes
One extra house
Yes
Two extra houses
No
Three extra houses
61% granted
Consent base rate, same council
{
"title_number": "BK123456",
"plot_area_m2": 604,
"development_potential": "high",
"supports": {
"garden_room": true,
"annexe": true,
"extension": [
"rear",
"side",
"loft"
],
"extra_dwellings": 2
},
"why_not_three": {
"binding_constraint": "access",
"would_need": "3.3 m easement across the northern boundary"
},
"each_dwelling_cleared": {
"envelope_m2": 186,
"min_width_m": 9,
"separation_m": 6,
"access_route_m": 3.4,
"parking_spaces": 2
},
"site": {
"slope_deg": 2.1,
"land_type": "brownfield",
"designations": [],
"street_approvals_last_15_years": 4
},
"grant_rate": {
"cohort": "same council, infill dwelling, post-2010",
"decided": 148,
"granted": 91,
"rate": 0.61,
"confidence_interval_95": [
0.53,
0.69
]
},
"note": "Desk-based screening indicator. Subject to planning."
}
Lender-grade AVM
A valuation you can put in front of a credit committee — a point estimate, a stated confidence band, and what each attribute is actually worth.
What you could build
12 Orchard Lane, Reading RG1 5XA
Valuation confidence
High · 84/100
Estimated value
£412,500
What moves this valuation against the £365,000 local median
118 m² · 3 bed
Floor area
92 m² · south-facing
Garden
C (72)
EPC rating
Driveway · 2 cars
Parking
Very low
Flood risk
1930s · solid brick
Construction
{
"uprn": 100023336956,
"estimate": 412500,
"range": {
"low": 389000,
"high": 436000
},
"confidence": 84,
"forecast_sd_pct": 5.7,
"attributes": {
"floor_area_m2": {
"value": 118,
"vs_area_pct": 8.2
},
"garden_m2": {
"value": 92,
"vs_area_pct": 3.4
},
"epc": {
"value": "C",
"vs_area_pct": 2.1
},
"parking": {
"value": "driveway",
"vs_area_pct": 1.6
},
"flood_risk": {
"value": "very_low",
"vs_area_pct": 0
},
"construction": {
"value": "1930s_solid_brick",
"vs_area_pct": -2.3
}
},
"estimated_at": "2026-09-09"
}
Subsidence risk
Why the ground moves here — the clay, the tree next to the wall, and the mine workings underneath, each with the check that settles it.
What you could build
27 Beechwood Avenue, Croydon CR0 7NT · 1930s semi-detached
Ground stability
Moderate
Susceptibility
Moderate — band 2 of 3
What drives the score
Class 2 of 3
Shrink–swell
Lone canopy 8 m from the wall
Nearest tree
Moderate
Mine workings
Outside
Coal reporting area
1930s
Building era
Not held
Claims history
{
"uprn": 100023336956,
"band": "moderate",
"band_index": 2,
"band_count": 3,
"factors": {
"shrink_swell": {
"source": "BGS GeoSure",
"hazard_class": 2,
"class_count": 3
},
"nearest_tree": {
"source": "LiDAR trees outside woodland",
"distance_m": 8,
"canopy_class": "lone",
"mean_height_m": 14.2,
"survey_year": 2022
},
"mine_workings": {
"source": "Mining hazard zones",
"class": "Moderate"
},
"coal_reporting_area": false,
"building_era": "1930s",
"claims_history": null
},
"assessed_at": "2026-09-09"
}
Land quality
Every abnormal on a title before you instruct anyone — the things that kill a deal at week six, surfaced in week one.
What you could build
Land off Fen Road, March PE15 · title CB123456 · 2.4 ha
Screening outcome
Abnormals found before you instruct
Constraints found
3
Assessment
Soil
Naturally wet, loamy and clayey
Soilscape unit — drainage class carried through
Peat
Across 1.9 ha of the parcel
Mapped peat extent — a carbon and settlement question
Flood
Zone 3
High probability
Superficial geology
Tidal flat deposits — clay and silt
BGS superficial map
Bedrock
Ampthill Clay Formation
BGS bedrock map
Aquifer
Principal
Environment Agency designation — constrains discharge and piling
Agricultural class
Provisional Grade 2
Best and most versatile — expect a BMV test. Natural England 1:250k prior, not a field survey
Permitted waste sites
None within 250 m
EA waste-permit register — pre-1976 tips are not in it, and this is not a Phase 1 desk study
Planning
No live applications
Outside green belt
{
"title_number": "CB123456",
"area_ha": 2.4,
"constraints": [
"flood_zone_3",
"peat_extent",
"principal_aquifer"
],
"soil": {
"source": "Cranfield Soilscapes",
"texture_class": "loamy and clayey",
"drainage": "Naturally wet"
},
"peat": {
"source": "Natural England peat soil extent",
"within_parcel": true,
"area_ha": 1.9
},
"geology": {
"source": "BGS 1:50,000 DiGMapGB",
"superficial": "Tidal flat deposits — clay and silt",
"bedrock": "Ampthill Clay Formation"
},
"aquifer": {
"source": "EA aquifer designation",
"designation": "Principal"
},
"alc": {
"provisional_grade": "2",
"basis": "Natural England ALC 1:250,000"
},
"ea_permitted_waste_within_250m": false,
"flood_zone": 3,
"road_frontage_m": 40,
"planning": {
"live_applications": 0,
"green_belt": false
},
"assessed_at": "2026-09-09"
}
Interested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessInterested? Get access now.
Request accessCreate an API key
Sign up and set up your API key immediately.