Switch to Homedata
in under 15 minutes.
Drop-in code examples for every major UK property data provider. Same endpoints you're used to — more data in every response.
Choose your current provider
Click your provider for a step-by-step migration guide with code diffs.
getAddress.io
Address lookup + autocomplete. Swap one endpoint URL — our response is a superset of theirs.
View guide ↓Ideal Postcodes
Postcode lookup + address autocomplete. Different auth model (API key in URL vs header) — easy remap.
View guide ↓PropertyData.co.uk
Property analytics + prices. Same data, better structure. Homedata returns UPRN-level detail.
View guide ↓Loqate (GBG)
Address verification + cleansing. Our find/retrieve pattern mirrors Loqate's — same two-step flow.
View guide ↓Sprift
Property data packs. Homedata gives the same data via API — EPC, flood risk, prices, title info — without manual reports.
View guide ↓StreetData
Postcode-level property data. Homedata offers the same at UPRN level — individual property records, not postcode averages.
View guide ↓Every migration follows 3 steps
Get your API key
Create a free account — 100 calls/month, no credit card. Your key is ready in seconds.
Swap the endpoint
Replace the old provider URL with the Homedata equivalent. Auth moves to an Authorization header.
Map the fields
Homedata returns richer responses. Map the fields you need — everything from your old provider is there, plus bedrooms, EPC, floor area, and more.
Migrate from getAddress.io
getAddress uses a postcode + house number lookup. Homedata uses a free-text search that returns structured addresses with UPRNs.
curl "https://api.getAddress.io/find/SW1A2AA?api-key=YOUR_KEY"
# Response:
{
"postcode": "SW1A 2AA",
"latitude": 51.50354,
"longitude": -0.12768,
"addresses": [
"10 Downing Street, , , , , London, "
]
}
curl -H "Authorization: Api-Key YOUR_KEY" \
"https://api.homedata.co.uk/api/address/find/?q=10+downing+street"
# Response:
{
"suggestions": [
{
"uprn": 100023336956,
"address": "10 Downing Street",
"address_line_1": "10 Downing Street",
"town": "London",
"postcode": "SW1A 2AA"
}
]
}
What you gain
- ✓ UPRN — unique property identifier for every address (getAddress doesn't return this)
- ✓ Structured fields — address_line_1, address_line_2, town, postcode (not a comma-separated string)
- ✓ Free-text search — no need to split postcode + house number first
- ✓ Property data on retrieve — pass the UPRN to get bedrooms, EPC, floor area, last sold price
- ✓ Free tier — 100 calls/month vs getAddress's pay-per-lookup model
Full comparison: Homedata vs getAddress.io →
Migrate from Ideal Postcodes
Ideal Postcodes uses a postcode lookup endpoint. Homedata's postcode endpoint returns the same addresses plus property-level enrichment.
curl "https://api.ideal-postcodes.co.uk/v1/postcodes/SW1A2AA?api_key=YOUR_KEY"
# Response:
{
"result": [
{
"postcode": "SW1A 2AA",
"line_1": "10 Downing Street",
"line_2": "",
"post_town": "London",
"uprn": "100023336956"
}
]
}
curl -H "Authorization: Api-Key YOUR_KEY" \
"https://api.homedata.co.uk/api/postcode/SW1A2AA/"
# Response:
{
"postcode": "SW1A 2AA",
"property_count": 42,
"properties": [
{
"uprn": 100023336956,
"address": "10 Downing Street",
"bedrooms": 4,
"epc_rating": "D",
"last_sold_price": null
}
]
}
Key differences
- ✓ Auth in header —
Authorization: Api-Key xxxinstead ofapi_key=query param - ✓ Property enrichment — each address includes bedrooms, EPC, floor area, last sold price
- ✓ Area statistics — postcode endpoint also returns median prices, property type breakdown, broadband speeds
- ✓ Free tier — 100 calls/month included. Ideal Postcodes charges from the first lookup.
Full comparison: Homedata vs Ideal Postcodes →
Migrate from PropertyData.co.uk
PropertyData focuses on area-level analytics. Homedata provides both area stats and individual property records via API.
import requests
# PropertyData: area-level metrics only
r = requests.get(
"https://api.propertydata.co.uk/prices",
params={"key": "YOUR_KEY", "postcode": "SW1A 2AA"}
)
data = r.json()
# Returns: average_price, median_price, transaction_count
# No individual property records
import requests
headers = {"Authorization": "Api-Key YOUR_KEY"}
# Individual property with full detail
r = requests.get(
"https://api.homedata.co.uk/api/properties/100023336956/",
headers=headers
)
prop = r.json()
# Returns: bedrooms, bathrooms, epc_rating, epc_score,
# floor_area_sqm, last_sold_price, last_sold_date,
# construction_age, tenure, property_type,
# flood_risk, noise_level, deprivation_score...
What you gain
- ✓ UPRN-level data — individual property records, not just postcode averages
- ✓ Comparable sales — 20 nearest sold prices for any property
- ✓ Price trends — 30 years of monthly median prices by outcode
- ✓ Environmental risk — flood, radon, noise, air quality per property
- ✓ Transparent pricing — published tiers starting at £49/mo vs PropertyData's opaque enterprise quotes
Full comparison: Homedata vs PropertyData →
Migrate from Loqate
Loqate uses a find/retrieve two-step pattern. Homedata uses the same pattern — search returns UPRNs, retrieve returns the full record.
// Step 1: Find
const find = await fetch(
`https://api.addressy.com/Capture/Interactive/Find/v1.1/json3.ws?Key=${key}&Text=10+downing`
);
const { Items } = await find.json();
const id = Items[0].Id;
// Step 2: Retrieve
const retrieve = await fetch(
`https://api.addressy.com/Capture/Interactive/Retrieve/v1/json3.ws?Key=${key}&Id=${id}`
);
// Returns: address lines only
const headers = { "Authorization": "Api-Key YOUR_KEY" };
// Step 1: Find (same pattern)
const find = await fetch(
"https://api.homedata.co.uk/api/address/find/?q=10+downing",
{ headers }
);
const { suggestions } = await find.json();
const uprn = suggestions[0].uprn;
// Step 2: Retrieve (returns the property, not just address)
const retrieve = await fetch(
`https://api.homedata.co.uk/api/properties/${uprn}/`,
{ headers }
);
// Returns: address + bedrooms, EPC, floor area, price history...
Key differences
- ✓ Same find/retrieve pattern — minimal code change
- ✓ UPRN as identifier — universal, permanent, government-standard (not a proprietary ID)
- ✓ Retrieve returns the property — not just address lines, but the full property record
- ✓ Simple auth — one API key in a header vs Loqate's key-per-service model
- ✓ Transparent pricing — from £0/month. No sales calls, no minimum contracts.
Full comparison: Homedata vs Loqate →
Migrate from Sprift
Sprift delivers property data as manual reports or CRM integrations. Homedata delivers the same data categories via API — programmatic, real-time, no manual steps.
Data mapping
| Sprift Data | Homedata Endpoint | Difference |
|---|---|---|
| EPC certificate | /api/properties/{uprn}/ | Rating + score + certificate date |
| Flood risk | /api/properties/{uprn}/ | 4 risk categories, colour-coded |
| Price history | /api/properties/{uprn}/ | Full transaction log |
| Comparable sales | /api/comparables/{uprn}/ | 20 nearest sold prices |
| Planning apps | /api/planning/{uprn}/ | Nearby applications |
| Area demographics | /api/postcode/{pc}/ | IMD, broadband, property mix |
Full comparison: Homedata vs Sprift →
Migrate from StreetData
StreetData provides postcode-level aggregate data. Homedata provides UPRN-level property records — individual properties, not averages.
What changes
- ✓ UPRN-level records — query individual properties, not postcode averages
- ✓ Live listings — current for-sale/rental properties with prices and agents
- ✓ Bulk export — download filtered datasets as CSV/JSON via API
- ✓ Self-serve — sign up, get key, start querying. No sales process.
Full comparison: Homedata vs StreetData →
Ready to switch?
Get your free API key now. 100 calls/month, no credit card, no sales call. Most migrations take under 15 minutes.