Regional Analysis
Retrieve regional analysis data (property characteristics, energy costs, dwelling counts) by postcode outward code.
[Usage & billing] Each call costs 1 credit.
query Parameters
first_postcode^([A-Za-z]{1,2}\d[A-… · requiredUK postcode outward code (e.g. 'SW1A', 'B33'). 1-2 letters followed by 1 digit and optional letter/digit.
Responses
Regional analysis data for a postcode outward code
The primary outward code of the UK postcode (e.g., SW1A) used for regional aggregation.
Mean count of bedrooms for residential properties within the specified sector.
Mean count of bathrooms for residential properties within the specified sector.
Mean count of reception rooms (lounges, dining rooms) within the specified sector.
Average Gross Internal Area (GIA) in square metres, measured per RICS professional standards.
Current Energy Performance Certificate (EPC) rating, ranging from A (high) to G (low).
Estimated annual cost (GBP) for property lighting based on current energy prices.
Estimated annual cost (GBP) for space heating based on current energy prices.
Estimated annual cost (GBP) for domestic hot water based on current energy prices.
Categorical age range of the property's original construction (e.g., '2007 onwards').
Mean fixed-line broadband download speed (Mbps) recorded within the sector.
Total count of Detached residential dwellings within the area.
Total count of Semi-Detached residential dwellings within the area.
Total count of Terraced residential dwellings within the area.
Total count of Flats or maisonettes within the area.
Quarterly Market Analysis
Retrieve quarterly market analysis data (listings, sales, prices, SSTC times, reductions).
Three execution paths:
first_postcode_list— direct lookup by a list of outcodes; each row gets a resolvedregion_name.region+breakdown='aggregated'(default) — direct lookup of the pre-aggregated region row.region+breakdown='outcode'— expands the region into its constituent outcodes; each row carriesfirst_postcodeandregion_name.
Row-level pagination (limit / offset) with optional order_by / order_dir
applies to all paths. Results are always primary-sorted by quarter DESC
(latest quarter first), with order_by as the secondary sort within each
quarter. This means limit=N returns the Top N of the latest available
quarter when the region has ≥ N rows per quarter. period='YYYY-QN' filters
to a single quarter; omit for the full historical series. The response
envelope always includes data, count, total, limit, offset.
[Usage & billing] Each call costs 3 credits.
query Parameters
first_postcode_listComma-separated UK postcode outward codes (e.g. 'NW3' or 'NW3,NW1,N1'). Mutually exclusive with region; exactly one must be supplied. Each element must match the outcode pattern 1–2 letters + 1 digit + optional letter/digit. The raw string is split into a list and uppercased server-side.
regionUK region name. Mutually exclusive with first_postcode_list; exactly one must be supplied. Allowed: Greater London, East Of England, Yorkshire, Wales, North East, North West, South East, South West, East Midlands, West Midlands.
period^\d{4}-Q[1-4]$Target quarter in 'YYYY-QN' format (e.g. '2025-Q4'). If omitted, the full historical series is returned. Future quarters are rejected with 422.
breakdownOnly meaningful when region is supplied. 'aggregated' (default) returns the pre-aggregated region rows. 'outcode' returns one row per constituent outcode (each row carries first_postcode and region_name). When first_postcode_list is used, breakdown must stay at the default — rows are naturally per-outcode.
return_national^[yn]$Whether to include national statistics for comparison. 'y' or 'n'.
order_byOptional sort column. Must be one of the 54 statistic columns (count_, sold_count_, median_price_, median_sold_price_, avg_day_to_sstc_, reduction_ratio_, reduction_count_O, OTM_reduction_probability, completed_count_O, avg_day_from_sstc_to_LR_, LR_reduction_ratio_, sstc_pct_O, fall_through_count_O, fall_through_pct_O, withdrawal_count_O, withdrawal_pct_O). Omit for the database's natural ordering.
order_dirSort direction; only applied when order_by is set.
limitRow-level page size (max 100).
offsetRow-level page offset.
Responses
Quarterly market analysis. Returns one row per quarter when querying by outcode or by region with breakdown='aggregated'; one row per (quarter, constituent outcode) when region+breakdown='outcode'. Always wrapped as {data: [...], count: N}.
countRows returned in this page.
totalDistinct matching rows before pagination.
limitoffsetMonthly Market Analysis
Retrieve monthly market analysis data (listings, sales, prices, SSTC times, reductions) by postcode outward code.
[Usage & billing] Each call costs 3 credits.
query Parameters
first_postcode^([A-Za-z]{1,2}\d[A-… · requiredUK postcode outward code (e.g. 'SW1A', 'B33'). 1-2 letters followed by 1 digit and optional letter/digit.
return_national^[yn]$Whether to include national statistics for comparison. 'y' or 'n'.
Responses
Monthly market analysis data by postcode district
The specific month/period of the analysis (e.g. 'January 2026').
The geographic area or postcode district (e.g. 'AB10').
Count of properties listed in this period (All property types).
Count of properties sold in this period (All property types).
The median listing price of properties (All property types).
The median sold price of properties (All property types).
Average days from listing to SSTC (All property types).
Count of properties listed (Detached).
Count of properties sold (Detached).
The median listing price (Detached).
The median sold price (Detached).
Average days from listing to SSTC (Detached).
Count of properties listed (Flat).
Count of properties sold (Flat).
The median listing price (Flat).
The median sold price (Flat).
Average days from listing to SSTC (Flat).
Count of properties listed (Semi-Detached).
Count of properties sold (Semi-Detached).
The median listing price (Semi-Detached).
The median sold price (Semi-Detached).
Average days from listing to SSTC (Semi-Detached).
Count of properties listed (Terraced).
Count of properties sold (Terraced).
The median listing price (Terraced).
The median sold price (Terraced).
Average days from listing to SSTC (Terraced).
Ratio of properties sold within 30 days (All types).
Ratio of properties sold within 30 days (Detached).
Ratio of properties sold within 30 days (Semi-Detached).
Ratio of properties sold within 30 days (Terraced).
Ratio of properties sold within 30 days (Flat).
Ratio of properties sold within 60 days (All types).
Ratio of properties sold within 60 days (Detached).
Ratio of properties sold within 60 days (Semi-Detached).
Ratio of properties sold within 60 days (Terraced).
Ratio of properties sold within 60 days (Flat).
Ratio of properties sold within 90 days (All types).
Ratio of properties sold within 90 days (Detached).
Ratio of properties sold within 90 days (Semi-Detached).
Ratio of properties sold within 90 days (Terraced).
Ratio of properties sold within 90 days (Flat).
Price Distribution
Get selling valuation distribution graph data for a postcode outward code.
[Usage & billing] Each call costs 3 credits.
query Parameters
first_postcode^([A-Za-z]{1,2}\d[A-… · requiredUK postcode outward code (e.g. 'SW1A', 'B33'). 1-2 letters followed by 1 digit and optional letter/digit.
Responses
Distribution graph data with dynamic and fixed price buckets
Dynamic price range labels (10 buckets) based on the min/max selling valuations in the area.
Property counts for each dynamic price range bucket.
Fixed price range labels in £100k increments from £0 to >£1M.
Property counts for each fixed price range bucket.