Domain.com.au Scraper — AU Sale, Rent & Sold Listings
Pricing
from $1.50 / 1,000 listings
Domain.com.au Scraper — AU Sale, Rent & Sold Listings
Scrape Domain.com.au sale, rent, and sold listings by suburb or postcode. Each row includes price, beds, address, agency, and a photo for comps and monitors.
Pricing
from $1.50 / 1,000 listings
Rating
0.0
(0)
Developer
Andrej Kiva
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 days ago
Last modified
Categories
Share
Disclaimer: Unofficial tool — not affiliated with, sponsored by, or endorsed by Domain Group or its affiliates. Data is read from publicly accessible listing search results only. No login. You are responsible for complying with applicable law (including GDPR where personal data appears) and the site’s terms. No warranty on accuracy or availability. Provided for informational and research use.
Domain.com.au scraper for Australian sale, rent, and sold listings. Each dataset row has the display price, beds, baths, car spaces, address, suburb, postcode, agency, property type, and a photo. Export JSON or CSV. Use it as a Domain.com.au API alternative from Python, Node.js, cURL, or Apify MCP.
Paste a suburb such as Bondi NSW, a postcode, or a search URL. A quiet monitor run writes zero rows when nothing new is on the first unseen page.
Best for: suburb stock checks, sold-listing comps, rental lead lists, and a scheduled new-listing monitor. For the other major Australian portal, use the realestate.com.au Actor after this one.
| Actor | Role |
|---|---|
| Domain.com.au Scraper ◄── you are here | AU sale, rent, and sold listings |
| realestate.com.au Scraper | AU sold comps, postcode, and for-sale on the other major portal |
| Rightmove Scraper | UK Rightmove listings (sale and rent) |
| ImmobilienScout24 Scraper | Germany IS24 rent and buy |
| Subito Real Estate Scraper | Italy property: sale, rent, private vs agency |
| Yad2 Scraper | Israel Yad2 listings |
| Airbnb Occupancy Scraper | Short-stay calendars next to long-term comps |
When to use this Actor
- Suburb or postcode pull — Bondi, a region, or a postcode, for sale, rent, or sold.
- Filters already in a search URL — Beds, price, and property type on a sale, rent, or sold search link are kept.
- One listing — Paste a listing URL to save that record, including the public description and agent names.
- Scheduled monitoring — Re-run the same suburb and save only listing ids that were not stored last time.
- Portal pair — Run this for Domain, then the realestate.com.au Actor for the same suburb on the other board.
When not to use this Actor
- Agent email databases or agency roster stats — This Actor saves the agency name on the card, and agent names only when you open a listing. It does not build a contact database.
- Logged-in enquiry or saved-search feeds — No login.
- realestate.com.au comps — Use the sibling Actor for that portal.
Key features
- Search cards by default — Price, beds, address, agency, features, and the first photos come from the search result. One saved listing is one row.
- Optional listing record — Turn on description and agent names when you need the public write-up. Price, beds, address, and agency are already on the search card.
- Sale, rent, sold, and share — Set the channel, or paste the search URL.
- Monitor — Listing ids already seen for that same search are skipped. A quiet tick saves nothing.
- HTTP only — 256 MB. AU residential proxy is required because datacenter addresses are blocked before listings load.
Input
| Field | Required | Default | What it does |
|---|---|---|---|
| Suburb or postcode | Yes, unless Start URLs is set | Bondi NSW | Suburb, region, or postcode |
| Sale, rent, or sold | No | sale | Channel. Ignored when Start URLs is set |
| Property types | No | all | House, Apartment, Townhouse, Villa, Land, and the other types in the field description |
| Minimum / maximum price | No | none | AUD bounds |
| Minimum / maximum bedrooms | No | none | Bedroom bounds |
| Start URLs | No | empty | Search or listing URLs. When set, the fields above are ignored |
| Max listings | No | 25 | Cap across the whole run (1–500) |
| Include description and agent names | No | off | Opens each listing record |
| Monitor mode | No | off | Save only new listing ids |
| Proxy | No | AU residential | Required. Do not turn proxy off |
{"location": "Bondi NSW","listingType": "sale","maxItems": 25,"includeDetails": false,"monitorMode": false}
A search URL keeps the filters in the link:
{"startUrls": [{ "url": "https://www.domain.com.au/sale/bondi-nsw-2026/?bedrooms=2-any&price=0-800000" }],"maxItems": 50}
Output
One listing per dataset row.
| Field | Meaning |
|---|---|
listingId | Domain listing id |
url | Public listing URL |
channel | sale, rent, sold, or share |
headline | Listing headline |
priceDisplay | Price text, including auction and contact-agent labels |
price | Number when the text includes a dollar amount |
pricePeriod | week or month on rental amounts |
bedrooms, bathrooms, carspaces | Counts from the card |
propertyType | Primary type |
address, suburb, state, postcode | Address parts |
agency | Agency name |
agentNames | Public agent names when a listing record is opened |
soldDate | Sold date when Domain publishes one |
description | Public description when a listing record is opened |
image | Primary photo |
scrapedAt | UTC timestamp |
{"listingId": "2021208039","url": "https://www.domain.com.au/4-4-glen-street-bondi-nsw-2026-2021208039","channel": "sale","headline": "Sunlit Beachside Sanctuary Moments from Bondi and Tamarama","priceDisplay": "Auction 24th October","bedrooms": 2,"bathrooms": 1,"carspaces": 1,"propertyType": "Apartment","address": "4/4 Glen Street, Bondi","suburb": "Bondi","state": "NSW","postcode": "2026","agency": "Example Agency","image": "https://rimh2.domainstatic.com.au/example/photo.png","scrapedAt": "2026-10-04T12:00:00Z"}
Use cases
- Pull for-sale apartments in one suburb for a weekly stock check.
- Export sold rows with display price and sold date for a comparable set.
- Watch a rental postcode and keep only listings that were not in the last run.
- Open one listing URL when you need the public description and agent names beside the card fields.
- Pair the same suburb with realestate.com.au when the brief covers both Australian portals.
Integration examples
Node.js
import { ApifyClient } from "apify-client";const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor("crawloop/domain-com-au-scraper").call({location: "Bondi NSW",listingType: "sale",maxItems: 25,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
import osfrom apify_client import ApifyClientclient = ApifyClient(os.environ["APIFY_TOKEN"])run = client.actor("crawloop/domain-com-au-scraper").call(run_input={"location": "Bondi NSW","listingType": "sold","maxItems": 25,})items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(items)
cURL
curl -X POST "https://api.apify.com/v2/acts/crawloop~domain-com-au-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"location":"Bondi NSW","listingType":"rent","maxItems":10}'
MCP and AI assistants
Use this Actor from AI tools via Apify MCP.
Connect your Apify account, then call this Actor by its Store name crawloop/domain-com-au-scraper.
Example prompts:
- "Run Domain.com.au Scraper for Bondi NSW for-sale apartments and return the top 20 rows as JSON"
- "Scrape Domain.com.au sold listings in postcode 2026 and summarize price, beds, and agency"
- "Run Domain.com.au Scraper in monitor mode for Sydney rentals, then use realestate.com.au Scraper for the same suburb"
Suite next step
This Actor covers Domain sale, rent, and sold cards. For sold comps and for-sale listings on the other major Australian portal, run realestate.com.au Scraper.
FAQ
Does a search row include the description and agent names? The search card includes price, beds, address, and agency. Turn on Include description and agent names, or paste a listing URL, when you need the public description and agent names.
Are agent emails or phone numbers included? No. Agent names are the public names on the listing record. Email and phone are not requested.
What does monitor mode skip? Listing ids already stored for that same suburb, channel, and filters. Change the suburb or the channel and it is a new cursor. A run with no new ids writes zero rows.
Why does the run need a residential proxy? Datacenter addresses are blocked before listing data loads. The default proxy is AU residential. Leave it on.
What if a sold listing has no dollar price?
priceDisplay still has the text Domain shows, such as an auction label. price is set only when that text contains a dollar amount. soldDate is set when Domain publishes a date.
Can I scrape Domain.com.au sold listings by suburb? Yes. Set the channel to sold, or paste a sold search URL, and pass a suburb or postcode. Each row keeps the display price, beds, address, agency, and sold date when Domain publishes one.
Can I scrape Domain.com.au rentals?
Yes. Set the channel to rent. Weekly amounts stay in priceDisplay, with price as the number and pricePeriod set to week when the text says per week.
Is this a Domain.com.au API alternative? Yes. You do not need a Domain developer key. Call the Actor from Python, Node.js, cURL, or an AI assistant through Apify MCP and read the dataset as JSON.