The leading API for UK property market data

Introduction Documentation Get a key

Getting started

Every request to the PropertyData API requires a key.

You can sign up for a 14-day free trial to experiment with the API.

Every request to the PropertyData API should be a GET request.

/prices

For a given UK postcode (full, district or sector) and at least one filter, returns property asking prices average and confidence intervals from the smallest radius at which there is reasonable data.

Input

key Your API key Required
postcode A UK postcode Required
bedrooms Filter by number of bedrooms (0-5) Require at least one filter
type Filter by type (list) Require at least one filter

Example

https://api.propertydata.co.uk/prices?key={INSERT_YOUR_KEY}&postcode=W149JH&bedrooms=2

Raw data omitted from example response for brevity

/prices-per-sqf

For a given UK postcode (full, district or sector), returns property asking prices per square foot average and confidence intervals from the smallest radius at which there is reasonable data. Read more about our price per square foot data here.

Input

key Your API key Required
postcode A UK postcode Required

Example

https://api.propertydata.co.uk/prices-per-sqf?key={INSERT_YOUR_KEY}&postcode=W149JH

Raw data omitted from example response for brevity

/prices-sold

For a given UK postcode (full, district or sector), returns recent property sold prices, broken down by property type (detached, semi-detached, terraced, flat).

Input

key Your API key Required
postcode A UK postcode Required

Example

https://api.propertydata.co.uk/prices-sold?key={INSERT_YOUR_KEY}&postcode=W149JH

Raw data omitted from example response for brevity

/rents

For a given UK postcode (full, district or sector) and at least one filter, returns property asking rents average and confidence intervals from the smallest radius at which there is reasonable data. All rents are expressed as per week (for monthly values, multiply by 4.333).

Input

key Your API key Required
postcode A UK postcode Required
bedrooms Filter by number of bedrooms (0-5) Require at least one filter
type Filter by type (list) Require at least one filter

Example

https://api.propertydata.co.uk/rents?key={INSERT_YOUR_KEY}&postcode=W149JH&bedrooms=2

Raw data omitted from example response for brevity

/rents-hmo

For a given UK postcode (full, district or sector), returns live analytics on the local room rental market, broken down by double / single rooms and ensuite / shared bathroom.

Input

key Your API key Required
postcode A UK postcode Required

Example

https://api.propertydata.co.uk/rents-hmo?key={INSERT_YOUR_KEY}&postcode=W149JH

/yields

For a given UK postcode (full, district or sector) and at least one filter, returns typical property yields from the smallest radius at which there is reasonable data.

Input

key Your API key Required
postcode A UK postcode Required
bedrooms Filter by number of bedrooms (0-5) Require at least one filter
type Filter by type (list) Require at least one filter

Example

https://api.propertydata.co.uk/yields?key={INSERT_YOUR_KEY}&postcode=W149JH&bedrooms=2

/demographics

For a given UK postcode (full, district or sector) returns population demographics from the smallest radius at which there is reasonable data.

Input

key Your API key Required
postcode A UK postcode Required

Example

https://api.propertydata.co.uk/demographics?key={INSERT_YOUR_KEY}&postcode=W149JH

/planning

For a given UK postcode (full, district or sector) returns up to 10 nearby planning applications.

Input

key Your API key Required
postcode A UK postcode Required

Example

https://api.propertydata.co.uk/planning?key={INSERT_YOUR_KEY}&postcode=W149JH

Number of planning data points returned limited for brevity

/stamp-duty

For a given transaction value, calculates the SDLT payable. Value returned depends on whether additional rate SDLT is payable.

Input

key Your API key Required
value The transaction value (£) Required
additional Additional rate (0 or 1)

Example

https://api.propertydata.co.uk/stamp-duty?key={INSERT_YOUR_KEY}&value=250000&additional=1

Error reference

All the possible errors returned by the PropertyData API, with further explanation and recommended actions:

CodeMessageExplanation / recommended action
X01Invalid API methodCheck the API method is spelled correctly and that it follows immediately after the base URL, e.g. https://api.propertydata.co.uk/method-name. If in doubt, try with the example URL from the documentation first.
X02Missing input: keyYou have not supplied an API key. Every PropertyData API call requires a key, in the querystring using the variable 'key'. If you're logged in to PropertyData, the example URLs in the API documentation are automatically populated with your API key.
X03Invalid input: keyYou supplied an API key, but it was not recognised. Check that your key is correct. Note that this is the error you would receive if you regenerated your API key in your account home, but were trying to use the old key in your application.
X04Monthly plan limit exceeded: N callsYou have reached your API plan call limit. Note that calls limits are reset at 00:01 on the first day of each calendar month. Consider upgrading your plan.
X05Account associated with API key cancelled or card declinedThe PropertyData account associated with the API key you supplied has been cancelled or had it's card declined. Login and reactivate the account if you wish to continue using the PropertyData API.
X06Missing input: postcodeYou have not supplied a postcode. All API methods except 'stamp-duty' require a full UK postcode, in the querystring using the variable 'postcode'.
X07Invalid input: postcodeThe postcode you supplied was not recognised as a full UK postcode. Most of the time this means the postcode is not valid, although it can also mean the postcode is newly allocated. Try a different postcode.
X08Insufficient data - not enough comparable data points could be foundIn general, the PropertyData API will seek to always return analysis, widening the analytics radius until sufficient data points are available. If your filter variables are very rare (e.g. 4-bed link-detached house), you may receive this error. Try a more common combination of filter values.
101Missing filter: you must supply at least one filter (bedrooms or type)On the 'prices' and 'rents' methods, you must narrow the analysis by supplying at least one filter ('bedrooms' or 'type') in the querystring. Add a filter to your request.
102Invalid filter: number of bedroomsThe value you supplied in the 'bedrooms' filter variable was not valid. Valid values are 1, 2, 3, 4, 5.
103Invalid filter: typeThe value you supplied in the 'type' filter variable was not valid. Consult the valid types list.
201Demographic data is only available in England & WalesPropertyData demographic data is based on Office for National Statistics data, and does not cover Scotland or Northern Ireland. Try a postcode in England or Wales.
202Unable to generate demographic data for this postcodeThis error should not occur. It is possible it could occur on special-case postcodes, or near national borders. Contact us or try a different postcode.
301Planning data is only available in England & WalesPropertyData planning data is supplied by some local councils in England & Wales. Try a different postcode.
401Value provided not recognised or out of range (1 - 10000000)Stamp duty can only be calculated for prices of £1 to £10,000,000. Enter an integer in this range.

Accepted property types

If you would like to filter by property type, the following types are accepted:

  • flat
  • detached_house
  • terraced_house
  • semi-detached_house
  • end_terrace_house
  • studio
  • detached_bungalow
  • bungalow
  • maisonette
  • town_house
  • cottage
  • semi-detached_bungalow
  • mobile_or_park_home
  • link-detached_house
  • barn_conversion
  • mews_house