realestate.co.nz Scraper - NZ Listings, Sold Prices & Agents
Pricing
from $0.79 / 1,000 property searches
realestate.co.nz Scraper - NZ Listings, Sold Prices & Agents
Scrape realestate.co.nz, New Zealand's agency-owned property portal: houses for sale and rent, commercial, rural and business listings with agent contacts, school zones, council RV, sold prices and AVM estimates.
Pricing
from $0.79 / 1,000 property searches
Rating
0.0
(0)
Developer
SIÁN OÜ
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
realestate.co.nz Scraper — NZ Listings, Sold Prices & Agents 🏡
🎉 Sold prices, council RV and a current estimate on the same row as the listing
Built for NZ agencies, valuers, proptech teams and anyone tired of copying addresses by hand
🔎 What is the realestate.co.nz Scraper — and when should you use it?
The realestate.co.nz Scraper turns realestate.co.nz, the property portal New Zealand's real-estate industry owns into clean, structured rows you can filter, export and feed straight into a spreadsheet, database or AI agent. No account, no portal API key, no browser automation to maintain.
Use it when you need: New Zealand homes for sale or to rent, returned as flat rows. Each carries the asking price exactly as the agency published it, plus a parsed number where there is one. Rows also hold the full address with coordinates and postcode, bedrooms, bathrooms, land and floor area in square metres, tenure, council rates, photos, floor plans and videos. Every listing names the licensed salesperson with their direct mobile, office line, email and profile, plus the agency behind them. The schools the property is actually zoned for and the open-home times come on the same row. Commercial, rural and businesses for sale are separate categories of the same search. A second operation returns what an address sold for, when, by which method and how long it took, alongside the council capital and land valuation and a current estimate with a confidence rating.
Use something else when: the property is in Australia rather than New Zealand. Use realestate.com.au Scraper for Australia's largest portal, a completely different operator despite the similar name. Use Domain.com.au Scraper for Australia's second portal, useful when you want two sources on one address. Use Sold Prices Forensics for comparable sales across several countries at once. This is the agency portal, jointly owned by the New Zealand real-estate industry, so every listing on it belongs to a licensed agency. Private sellers list on Trade Me instead and those listings are not here. One other limit worth knowing: the portal stops paginating at 10,000 rows for any single place-and-filter combination, so a nationwide sweep has to be split by district, suburb or price band.
🤖 Use with AI agents
Already connected to the Apify MCP server? Just ask for this Actor by name: sian.agency/realestate-nz-property-scraper
Your agent can pay for its own runs. This Actor is eligible for agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — without an Apify account or API token of its own. Billing is the same either way: per successful row, never for errors.
Otherwise copy this prompt into Claude, ChatGPT, Cursor or any MCP-enabled assistant:
I want New Zealand property market data from realestate.co.nz using the Apify Actor `sian.agency/realestate-nz-property-scraper`.Use it when I need: New Zealand homes for sale or to rent, returned as flat rows. Each carries the asking price exactly as the agency published it, plus a parsed number where there is one. Rows also hold the full address with coordinates and postcode, bedrooms, bathrooms, land and floor area in square metres, tenure, council rates, photos, floor plans and videos. Every listing names the licensed salesperson with their direct mobile, office line, email and profile, plus the agency behind them. The schools the property is actually zoned for and the open-home times come on the same row. Commercial, rural and businesses for sale are separate categories of the same search. A second operation returns what an address sold for, when, by which method and how long it took, alongside the council capital and land valuation and a current estimate with a confidence rating.Don't use it when: the property is in Australia rather than New Zealand — use realestate-au-property-scraper or domain-au-property-scraper or sold-prices-forensics-scraper instead.How to call it: give `locations` a list of the portal's place slugs — a region (`auckland`, `canterbury`, `wellington`), a district (`auckland/rodney`), or a suburb (`wellington/wellington-city/te-aro`). Leave `locations` empty to sweep the whole country. Pick a `category`: `res_sale`, `res_rent`, `com_sale`, `com_lease`, `rural_sale` or `biz_sale`. Narrow with `minPrice`, `maxPrice`, `minBedrooms`, `minBathrooms`, `minLandArea`, `minFloorArea`, `propertyTypes`, `keywords`, `openHomesOnly`, `newBuildsOnly`, `mortgageeSalesOnly` and `petFriendlyOnly`, and order with `sortBy`. To expand listings you already have links for, pass them in `listingUrls` — the row and the price per row are identical. For sale prices, council rateable values and current estimates, set `operation` to `sold` and use `soldWithin` and `soldSortBy`.Start with this input:{"operation": "search","locations": ["auckland","wellington"],"category": "res_sale","sortBy": "latest","maxResults": 100}Ask me which New Zealand region, district or suburb, and whether they want live listings or sale prices, then run the Actor and summarise the results as a table.
Things you can ask your agent for:
- Find three-bedroom homes for sale in Devonport with an open home this weekend, and tell me what the last five sales on that street went for.
- Pull every pet-friendly rental under 600 dollars a week in Wellington City and give me the agent's mobile for each.
- Compare the median sale price against the council rateable value for Bayswater over the last twelve months.
- List every mortgagee sale live in New Zealand right now with its price, address and listing agency.
Machine-readable API, MCP config and OpenAPI definition for this Actor are published at apify.com/sian.agency/realestate-nz-property-scraper.md.
📋 Overview
New Zealand's property market, in a spreadsheet. realestate.co.nz is the portal the NZ real-estate industry owns and every licensed agency feeds. This Actor reads both halves of it. Live listings first: 40,884 homes for sale, 8,420 to rent, 28,391 commercial spaces for lease. Then the records behind them, covering roughly two million New Zealand addresses.
What you get for the money:
- ✅ 70+ fields on a real row: measured, not promised. Price, address, coordinates, every room count, land and floor area, tenure, rates, photos, agent and agency.
- ⚡ 100 listings per request: a suburb takes one request; a whole region takes a handful.
- 🎯 Agent contact on every listing: name, direct mobile, office line, email, profile and photo. This is the agency portal, so that column is full rather than half-empty.
- 💰 $0.90 per 1,000 listings: the same price as the cheapest credible actor in this category, for a row roughly three times deeper.
- 💎 Sold price next to council RV next to the estimate: the three numbers a New Zealand valuation argument turns on, on one row, with the recent sales nearby already matched to the address.
- ✨ NEW: school and childcare zones with an in-zone flag on every listing, and per-photo content hashes so you can tell a genuine change from a refresh.
✨ Features
- 🏘️ Six live categories in one Actor: homes for sale, homes to rent, commercial for sale, commercial for lease, rural and lifestyle, businesses for sale.
- 💰 Sold prices and valuations: achieved price, sale date, sale method, days to sell, full sales history, council capital / land / improvements valuation, and an estimate with a confidence rating.
- 🎓 School zones that matter: every listing carries the schools around it with a flag for whether the property is actually inside that school's enrolment zone, plus distance. Childcare centres come the same way.
- 👤 Licensed agent and agency details: mobile, office line, email, profile link, photo, current listing count — and the agency's brand, phone, email, website and logo.
- 🗺️ Coordinates and the portal's own geography keys: latitude, longitude, postcode, and the region / district / suburb slugs plus neighbouring suburbs, so rows join cleanly to census areas and your own maps.
- 🔨 Auction, tender and deadline dates: listings with no price still carry their auction date, time and venue, or the deadline the offers close.
- 🚪 Open-home times: every scheduled viewing, with start and end, plus the next one broken out.
- 📐 Media that is actually usable: full-size photo URLs, floor plans, videos, virtual walkthroughs — and a content hash per photo for change detection.
- 🎚️ Filters the portal applies, not us: price, bedrooms, bathrooms, land area, floor area, property type, keywords, open homes, new builds, mortgagee sales, pet-friendly rentals. A narrower search returns fewer rows and costs less.
- 🔗 Bring your own listing URLs: paste realestate.co.nz links or bare listing IDs and get the same row, at the same price per row.
🎬 Quick Start
Pick your places, pick a category, run it. The default input works with no editing — press Start and you get Auckland homes for sale, newest first. Everything else is narrowing.
curl -X POST 'https://api.apify.com/v2/acts/sian.agency~realestate-nz-property-scraper/runs?token=YOUR_TOKEN' \-H 'Content-Type: application/json' \-d '{"operation": "search", "locations": ["auckland"], "category": "res_sale", "maxResults": 100}'
🚀 Getting Started (3 Simple Steps)
Step 1: Choose your places
Type a region slug such as auckland, canterbury or wellington. Narrow it with a district (auckland/rodney) or a suburb (wellington/wellington-city/te-aro). Leave the list empty to sweep the whole country.
Step 2: Choose what you are looking at
Property Search for live listings, with a category. Sold Prices & Valuations for what places actually sold for, with a time window.
Step 3: Run it and take the data
Results land in the dataset. Export as JSON, CSV or Excel, or read them straight from the API.
That's it! In under a minute, you'll have:
- Every matching listing with its price, address, coordinates and photos
- The licensed salesperson and agency behind each one, with contact details
- A run report in your key-value store showing exactly what you paid for
📥 Input Configuration
| Field | Type | Required | Description |
|---|---|---|---|
operation | string | No | search for live listings, sold for sale prices and valuations. Default search. |
locations | array | No | NZ region, district or suburb slugs. Empty means the whole country. |
category | string | No | res_sale, res_rent, com_sale, com_lease, rural_sale, biz_sale. |
propertyTypes | array | No | Narrow by type slug, e.g. house, apartment, townhouse, section. |
listingUrls | array | No | Specific realestate.co.nz listing URLs or bare listing IDs. |
minPrice / maxPrice | integer | No | NZD. Weekly for rentals, annual for commercial leases. |
minBedrooms / minBathrooms | integer | No | Minimum room counts. |
minLandArea / minFloorArea | integer | No | Square metres. Hectares are converted for you. |
keywords | string | No | Words the portal matches in the listing text, comma-separated. |
openHomesOnly | boolean | No | Only listings with an open home scheduled. |
newBuildsOnly | boolean | No | Only new construction. |
mortgageeSalesOnly | boolean | No | Only mortgagee sales. |
petFriendlyOnly | boolean | No | Only rentals that accept pets. |
sortBy | string | No | latest, oldest, lowest-price, highest-price, featured. |
soldWithin | string | No | 3-months, 6-months, 12-months, 24-months, any. |
soldSortBy | string | No | latest-sale, oldest-sale, highest-sold-price, lowest-sold-price. |
maxResults | integer | No | Row budget for the whole run. Default 100. |
Example — homes for sale in two regions:
{"operation": "search","locations": ["auckland", "wellington"],"category": "res_sale","sortBy": "latest","maxResults": 500}
Example — what sold in a suburb this year:
{"operation": "sold","locations": ["auckland/north-shore-city/devonport"],"soldWithin": "12-months","soldSortBy": "latest-sale","maxResults": 200}
Example — specific listings you already have links for:
{"operation": "search","listingUrls": ["https://www.realestate.co.nz/43121617/residential/sale/8-kaipara-crescent-helensville","43120064"]}
📤 Output
Results are saved to the Apify dataset. A live listing returns around 70 populated fields; a property record returns around 50.
| Field | Type | Description |
|---|---|---|
fullAddress | string | Street, suburb, district and region |
priceDisplay | string | Exactly as the agency published it, including "Auction" and "Deadline Sale" |
priceValue | integer | The parsed number, or empty when the listing carries none |
priceMethod | string | Auction, Tender, Deadline Sale, Enquiries Over, Negotiation… |
bedrooms / bathrooms | integer | Room counts, with ensuite and WC splits alongside |
landAreaSqm / floorAreaSqm | number | Square metres, hectares already converted |
titleType | string | Freehold, Leasehold, Cross Lease, Unit Title, Company |
latitude / longitude | number | Coordinates |
agentEmail / agentMobile | string | Direct contact for the licensed salesperson |
officeName / officePhone | string | The agency behind the listing |
schoolsInZone | array | Schools this property is actually zoned for |
openHomes | array | Every scheduled viewing, start and end |
soldPrice / saleDate / saleMethod | — | What it sold for, when, and how |
councilCapitalValue / councilLandValue | integer | The council rateable valuation |
estimateMid / estimateConfidence | integer | Current estimate and how confident it is |
Example (trimmed):
{"listingId": 43120064,"propertyUrl": "https://www.realestate.co.nz/43120064/residential/sale/8-ariho-terrace-devonport","propertyTitle": "A cosy perch on the peninsula","fullAddress": "8 Ariho Terrace, Devonport, North Shore City, Auckland","suburb": "Devonport","region": "Auckland","postcode": "0624","latitude": -36.82167908,"longitude": 174.79806209,"priceDisplay": "Deadline Sale","priceMethod": "Deadline Sale","deadlineDate": "2026-09-24T16:00:00+12:00","bedrooms": 2,"bathrooms": 1,"floorAreaSqm": 60,"titleType": "Cross Lease","propertyType": "House","schoolsInZone": ["Devonport School", "Belmont Intermediate", "Takapuna Grammar School"],"nextOpenHome": "2026-09-05T11:00:00+12:00","agentName": "Natasha Pretorius","agentEmail": "natasha.pretorius@bayleys.co.nz","agentMobile": "021 204 8384","officeName": "Bayleys Real Estate Ltd (Licensed: REAA 2008) - Devonport","officePhone": "09 489 1999","totalImages": 27,"daysOnMarket": 3}
💼 Use Cases & Examples
1. Agency inventory and competitor watch
Sales managers tracking who is listing what, week by week.
Input: your region, sortBy: latest, on a daily schedule
Output: every listing that appeared since the last run, with the agency and named salesperson
Use: a live picture of market share in your patch, and a list of the agents winning the listings you wanted
2. Comparable sales and valuation work
Valuers and buyer's agents building a comps sheet for a suburb.
Input: operation: sold, one suburb, soldWithin: 12-months
Output: achieved price, sale date, method, days to sell, council RV, current estimate, and nearby recent sales already matched to each address
Use: a defensible comparables table in one run instead of an afternoon of tab-switching
3. Buyer lead generation for mortgage and legal firms
Brokers and conveyancers who want the buyers before the offer goes in.
Input: openHomesOnly: true across the suburbs you serve
Output: the listings your prospects will walk through this weekend, plus school zones and the agent to approach
Use: turn open-home traffic into a referral pipeline
4. Rental portfolio and yield analysis
Property managers and investors pricing a portfolio.
Input: category: res_rent for a suburb, then operation: sold for the same suburb
Output: weekly rent, bond, maximum tenants, furnishing, pets policy and availability date on one side; sale prices and council valuations on the other
Use: gross yield per suburb from two runs
5. Distressed and off-market sourcing
Buyers who want the mortgagee sales the day they appear.
Input: mortgageeSalesOnly: true, nationwide, on a schedule
Output: the whole mortgagee set — 64 live across New Zealand at the time of writing — with price, address and agent
Use: be first, in a category that moves within days
6. Commercial and rural acquisition
Industrial tenants, farm buyers and commercial agents.
Input: category: com_lease with minFloorArea, or category: rural_sale with minLandArea
Output: 28,391 commercial spaces for lease filtered by size, or rural blocks split into grazing, dairy, cropping, forestry, horticulture and viticulture
Use: a shortlist filtered on the metric that actually matters for the asset class
7. Feeding a property portal or AI assistant
Proptech teams building on top of NZ data.
Input: whole regions, scheduled, with maxResults set high
Output: rows carrying coordinates, the portal's own geography keys and per-photo content hashes
Use: incremental syncs where "did this listing change?" is a one-line comparison, not a re-scrape
🔗 Integration Examples
JavaScript/Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('sian.agency/realestate-nz-property-scraper').call({operation: 'search',locations: ['auckland/north-shore-city/devonport'],category: 'res_sale',maxResults: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0]);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run = client.actor('sian.agency/realestate-nz-property-scraper').call(run_input={'operation': 'sold','locations': ['auckland/north-shore-city/devonport'],'soldWithin': '12-months','maxResults': 200,})for item in client.dataset(run['defaultDatasetId']).iterate_items():print(item['fullAddress'], item.get('soldPrice'), item.get('councilCapitalValue'))
cURL
curl -X POST 'https://api.apify.com/v2/acts/sian.agency~realestate-nz-property-scraper/runs?token=YOUR_TOKEN' \-H 'Content-Type: application/json' \-d '{"operation": "search", "locations": ["wellington"], "category": "res_rent", "petFriendlyOnly": true}'
Automation Workflows (N8N / Zapier / Make)
- Trigger: schedule it daily, or fire on a webhook from your CRM
- HTTP Request: call the Actor API with your places and filters
- Process: handle the JSON rows — dedupe on
listingId, diff onimageHashes - Action: write to a sheet, push new listings to Slack, or create CRM records from the agent contacts
📊 Performance & Pricing
FREE Tier (Try It Now)
- 25 rows per run — every field, same quality, nothing held back
- No credit card required
- Enough to check the data against a suburb you know before you commit
PAID Tier (Production Ready)
- Unlimited rows per run
- 100 listings per request, so a region is a handful of requests
- Pay per row returned: a place that matched nothing, and any input we could not read, cost you nothing
💰 $0.90 per 1,000 listings — level with the cheapest credible actor in this category, for a row carrying roughly three times the fields. Sold prices and valuations are $1.20 per 1,000, and a run start is $0.005.
❓ Frequently Asked Questions
Q: How is this different from a Trade Me Property scraper? A: Different inventory, not the same listings twice. Trade Me is a general marketplace where private sellers list alongside agencies. realestate.co.nz is the agency portal, owned by the New Zealand real-estate industry, so what you get here is licensed-agency inventory with the salesperson and their agency attached to every row. Most serious NZ market work uses both.
Q: Do I get the sold price of a house? A: Yes — that is the Sold Prices & Valuations operation. It returns the achieved price, the date, the sale method, how many days it took to sell and the whole sale history of the address. Alongside it you get the council capital, land and improvements valuation, and a current estimate with a confidence rating.
Q: Can I get more than 10,000 rows? A: Yes, but not from a single place-and-filter combination. The portal stops paginating at 10,000 rows per query, so a nationwide sweep has to be split — by district, by suburb, or by price band. The run log tells you when it has hit that wall.
Q: Are the agent's email and phone number really included? A: Yes, on the search row itself, for every listing with an agent attached. Name, direct mobile, office line, email, profile link, photo, and how many listings that person currently has. The agency comes with it. No second request, no extra charge.
Q: Does it handle auctions and price-by-negotiation? A: Yes. Roughly a third of NZ sale listings carry no number. Every row keeps the exact wording the agency published, adds a machine-readable price method, and leaves the parsed number empty rather than zero — so an average never quietly includes a free house. Auction listings also carry the date, time and venue.
Q: How current is the data? A: It is read live at the moment your run executes. Listings carry their published date, and each row includes how many days it has been on the market.
Q: Which parts of New Zealand are covered? A: All of it — 21 regions, 85 districts and 1,899 suburbs, from Northland to Southland, including Coromandel, Wairarapa, Nelson & Bays, Central Otago / Lakes District and the West Coast.
Q: What output formats are available? A: JSON, CSV and Excel, exported straight from the Apify dataset, or read over the API.
🐛 Troubleshooting
"No listings matched in
- Widen the price, bedroom or area filters — several narrow filters together cut hard
- Pick a larger place: a district instead of a suburb, or a region instead of a district
- Check the category. Commercial for lease and homes for sale are different sets
"
- A suburb name like Hillcrest exists in more than one district. The message prints the full paths — copy one of them in
Fewer rows than maxResults
- One place-and-filter combination stops at 10,000 rows, and the log says so when it happens. Split the run by district, suburb or price band
- On the FREE tier every run is capped at 25 rows
Unknown property type
- Type slugs differ per category: a house for sale is
house, a warehouse for lease iswarehouse. The error message prints the valid list for the category you chose
⚖️ Is it legal to scrape data?
Our actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.
However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.
You can also read Apify's blog post on the legality of web scraping.
realestate.co.nz is a trademark of Realestate.co.nz Limited. This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Realestate.co.nz Limited.
🤝 Support
Join our active support community
- For issues or questions, open an issue in the actor's repository
- Check SIÁN Agency Store for more automation tools
- 📧 apify@sian-agency.online
Built by SIÁN Agency | More Tools