Surveyor Package · Pay as you go
Property data API for surveyors.
EPC, flood risk, environmental hazards, council tax, comps, and property records in one API. Pre-populate RICS reports, automate due diligence, and eliminate manual data gathering — 5 tokens to populate a Level 2 report. Sourced from residential property data from a licensed listings feed.
Pay as you go: 100 tokens = £1. First top-up matched 100%.
What you get
What's in the Surveyor Package
Core Property + Risk & Environment + Market & Pricing modules. Everything a surveyor needs for RICS-compliant reports — without logging into 6 different websites.
Doing solar or energy surveys? Add the Solar Assessment endpoint. The solar assessment endpoint returns panel count, kWp capacity, annual generation, savings (with and without battery), payback period, and CO₂ offset — all from a UPRN. One call to populate a complete solar feasibility section.
Core Property · 1 token
Property record
Property type, construction age, bedrooms, bathrooms, floor area, garden, parking, and full transaction history. The foundation of every survey report.
GET /properties/{uprn}/ Core Property · 1 token
EPC energy data
Current and potential energy efficiency ratings, EPC floor area, construction age band, and certificate reference. Direct from the EPC register.
GET /epc-checker/{uprn}/ Check any property's EPC instantly →Risk & Environment · 1 token
Flood risk assessment
Flood risk — river flooding and surface water — with a risk level from Very Low to High. Source-attributed and suitable for RICS Level 2 and 3 reports.
GET /risks/flood/?uprn={uprn} Risk & Environment · 1 token each (most endpoints)
Environmental hazards
Radon, noise, landfill proximity, coal mining history, air quality, and invasive plants — six more risk types beyond flood. One call per type, each returning a risk band with source and description.
Core Property · 3 tokens
Council tax band
Band and billing authority by property. Takes postcode + building number — pre-populate the council tax section of your report without manual VOA lookups.
GET /council_tax_band/?postcode=&building_number= Market & Pricing · Enterprise
Comparable sales
0.5-mile radius search. Up to 200 comps sorted by bedroom match and proximity. The evidence base for your valuation section. Arranged per customer rather than sold self-serve; the same evidence is included in the complete property profile.
GET /comparables/{uprn}/ Try the solar tool →Worked example
Pre-populate a Level 2 report in 5 API calls
Address → UPRN → property record + EPC + flood risk + environmental + comps. Automate the data-gathering stage so surveyors spend time surveying, not Googling.
# Step 1 — resolve address to UPRN (2 tokens) curl "https://api.homedata.co.uk/address/find/?q=42+Victoria+Road+Leeds" \ -H "Authorization: Api-Key YOUR_API_KEY" # Step 2 — property record: type, age, beds, floor area (1 token) curl "https://api.homedata.co.uk/properties/100032456789/" \ -H "Authorization: Api-Key YOUR_API_KEY" # Step 3 — EPC: current/potential rating, floor area, age band, certificate ID (1 token) curl "https://api.homedata.co.uk/epc-checker/100032456789/" \ -H "Authorization: Api-Key YOUR_API_KEY" # Step 4 — flood risk: river and surface water (1 token) curl "https://api.homedata.co.uk/risks/flood/?uprn=100032456789" \ -H "Authorization: Api-Key YOUR_API_KEY" # Step 5 — comparable sales. Arranged per customer rather than sold self-serve; # the same evidence is in the complete property profile. curl "https://api.homedata.co.uk/comparables/100032456789/" \ -H "Authorization: Api-Key YOUR_API_KEY"
import requests
API_KEY = "YOUR_API_KEY"
BASE = "https://api.homedata.co.uk"
HEADERS = {"Authorization": f"Api-Key {API_KEY}"}
def prefill_survey_report(address: str) -> dict:
# Step 1 — UPRN lookup
r = requests.get(f"{BASE}/address/find/", params={"q": address}, headers=HEADERS)
uprn = r.json()["suggestions"][0]["uprn"]
# Steps 2-5 — all property data in parallel (or sequential)
property_data = requests.get(f"{BASE}/properties/{uprn}/", headers=HEADERS).json()
epc_data = requests.get(f"{BASE}/epc-checker/{uprn}/", headers=HEADERS).json()
flood_risk = requests.get(f"{BASE}/risks/flood/", headers=HEADERS, params={"uprn": uprn}).json()
# comparables is arranged per customer rather than sold self-serve
comparables = requests.get(f"{BASE}/comparables/{uprn}/", headers=HEADERS).json()
return {
"uprn": uprn,
"property": {
"type": property_data.get("property_type"),
"bedrooms": property_data.get("bedrooms"),
"floor_area": property_data.get("epc_floor_area"),
"construction_age": property_data.get("construction_age_band"),
},
"epc": {
"current_efficiency": epc_data.get("current_energy_efficiency"),
"potential_efficiency": epc_data.get("potential_energy_efficiency"),
"floor_area_m2": epc_data.get("epc_floor_area"),
"construction_age": epc_data.get("construction_age_band"),
"last_assessed": epc_data.get("last_epc_date"),
},
"flood_label": flood_risk["results"][0]["label"] if flood_risk.get("results") else "Unknown",
"flood_desc": flood_risk["results"][0]["properties"]["description"] if flood_risk.get("results") else "",
"comparables_count": len(comparables.get("comparables", [])),
}
report = prefill_survey_report("42 Victoria Road Leeds")
print(f"Property: {report['property']['type']}, {report['property']['bedrooms']} bed")
print(f"EPC: {report['epc']['current_efficiency']}/100 → {report['epc']['potential_efficiency']}/100")
print(f"Flood: {report['flood_label']} — {report['flood_desc']}")
print(f"Comps: {report['comparables_count']} found")
Level 2 report pre-population — 5 API calls
Pricing
Surveyor Package pricing
Transparent token weights — most property data endpoints cost 1 token, address find is 2, retrieve is 5. A typical Level 2 report = 10–15 tokens. Know your costs before you write a line of code. Pay as you go with one-off top-ups of any amount from £20, or add tokens every month. A monthly subscription earns up to 75% bonus tokens — change the amount or stop any time.
Pay as you go
100 tokens = £1Every endpoint · First top-up matched 100%
- Address lookup (find 2 tokens, retrieve 5)
- Property records + EPC
- Build and test your integration
Monthly
£250 a month30,000 tokens a month
+20% bonus tokens · Every endpoint
- Same full endpoint access as every account
- Flood risk (river + surface water)
- Environmental hazards
- Comparable sales
- Council tax bands
Monthly
£500 a month67,500 tokens a month
+35% bonus tokens · Every endpoint
- Same full endpoint access as every account
- Planning applications
- Solar assessments
- 67,500 tokens a month (~9,642 reports)
What property data does Homedata provide for surveyors?
The Surveyor Package gives you EPC ratings (current + potential), flood risk, radon, noise, landfill proximity, coal mining, air quality and invasive plants risk, council tax bands, comparable sales, property records (type, age, floor area, bedrooms), and solar assessments. All via a single REST API with transparent token-weighted pricing — most property data endpoints cost 1 token, address find costs 2, retrieve costs 5.
How much does the surveyor API package cost?
The Surveyor Package is pay as you go — 100 tokens = £1, most calls 1 token. A typical RICS Level 2 report needs 5-7 API calls — that's 2,600-3,600 reports per month. Your first top-up is matched 100% — enough to build, test and evaluate the data. Every account reaches every endpoint — you only pay for what you call, in tokens. No contracts, cancel anytime.
Can I pre-populate RICS survey reports with this API?
Yes. Address lookup returns the UPRN, then 5-7 tokens populate: property type and construction (property record), EPC data (current and potential efficiency ratings, floor area, construction age band), flood risk, radon and other environmental risks (one call per risk type), council tax band, and comparable sales for the valuation section.
Does the API include environmental and flood risk data?
Yes. The Risk & Environment module covers 7 risk types: flood, radon, noise, landfill, coal mining, air quality, and invasive plants. Each is a separate call — GET /risks/{risk_type}/?uprn= — and returns a risk level (Very Low to High) with source attribution and a plain-English description.
Related
Related resources
Other packs
Start building today.
Pay as you go, 100 tokens = £1, first top-up matched. Get your key and test with real data.