realestate.co.nz sold properties
Properties in New Zealand with a recorded sale on realestate.co.nz: address and coordinates, bedrooms, bathrooms, parking, floor and land area, building age, the latest sale (date, price, method, days to sell, settled), the listing it sold through (title, asking price, days listed, photo), full sales history, council valuations (capital, land and improvements value) and the current estimated value range. Filter by place, sale date, sale price, bedrooms, bathrooms, land and floor area; sort by sale date, sold price or estimate. sold_after defaults to one year ago. Pass next_page back as page (null on the last page).
Every response includes credits_used: the credits this call cost.
Parameters
| name | type | description |
|---|---|---|
location | string | Region, district path or suburb (a name or path from /realestate-nz/v1/places, e.g. auckland, auckland/auckland-city or ponsonby). Example: auckland |
sold_after | string | Sold on or after this date, YYYY-MM-DD (default: one year ago). |
sold_before | string | Sold on or before this date, YYYY-MM-DD. |
price_min | number | Minimum sale price (NZD). |
price_max | number | Maximum sale price (NZD). |
bedrooms_min | integer | Minimum bedrooms. |
bedrooms_max | integer | Maximum bedrooms. |
bathrooms_min | integer | Minimum bathrooms. |
bathrooms_max | integer | Maximum bathrooms. |
land_area_min | number | Minimum land area (m²). |
land_area_max | number | Maximum land area (m²). |
floor_area_min | number | Minimum floor area (m²). |
floor_area_max | number | Maximum floor area (m²). |
sort | latest | oldest | lowest_price | highest_price | lowest_estimate | highest_estimate | featured | Sort order (default latest: most recent sale first). |
limit | integer | Properties per page (default 10, max 50). |
page | integer | Result page (1 = first). Example: 1 |
Every endpoint also takes fresh, raw, fields (see lean responses and caching).
Example
curl "https://api.api.sh/realestate-nz/v1/sold?location=auckland" \
-H "x-api-key: $APISH_KEY" import os, requests
res = requests.get(
"https://api.api.sh/realestate-nz/v1/sold",
params={"location": "auckland"},
headers={"x-api-key": os.environ["APISH_KEY"]},
timeout=120,
)
res.raise_for_status()
data = res.json() const url = new URL("https://api.api.sh/realestate-nz/v1/sold");
url.searchParams.set("location", "auckland");
const res = await fetch(url, { headers: { "x-api-key": process.env.APISH_KEY } });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
const data = await res.json(); Response
A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).