Domain.com.au Scraper — AU Sale, Rent & Sold Listings avatar

Domain.com.au Scraper — AU Sale, Rent & Sold Listings

Pricing

from $1.50 / 1,000 listings

Go to Apify Store
Domain.com.au Scraper — AU Sale, Rent & Sold 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

Andrej Kiva

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

20 days ago

Last modified

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.

ActorRole
Domain.com.au Scraper ◄── you are hereAU sale, rent, and sold listings
realestate.com.au ScraperAU sold comps, postcode, and for-sale on the other major portal
Rightmove ScraperUK Rightmove listings (sale and rent)
ImmobilienScout24 ScraperGermany IS24 rent and buy
Subito Real Estate ScraperItaly property: sale, rent, private vs agency
Yad2 ScraperIsrael Yad2 listings
Airbnb Occupancy ScraperShort-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

FieldRequiredDefaultWhat it does
Suburb or postcodeYes, unless Start URLs is setBondi NSWSuburb, region, or postcode
Sale, rent, or soldNosaleChannel. Ignored when Start URLs is set
Property typesNoallHouse, Apartment, Townhouse, Villa, Land, and the other types in the field description
Minimum / maximum priceNononeAUD bounds
Minimum / maximum bedroomsNononeBedroom bounds
Start URLsNoemptySearch or listing URLs. When set, the fields above are ignored
Max listingsNo25Cap across the whole run (1–500)
Include description and agent namesNooffOpens each listing record
Monitor modeNooffSave only new listing ids
ProxyNoAU residentialRequired. 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.

FieldMeaning
listingIdDomain listing id
urlPublic listing URL
channelsale, rent, sold, or share
headlineListing headline
priceDisplayPrice text, including auction and contact-agent labels
priceNumber when the text includes a dollar amount
pricePeriodweek or month on rental amounts
bedrooms, bathrooms, carspacesCounts from the card
propertyTypePrimary type
address, suburb, state, postcodeAddress parts
agencyAgency name
agentNamesPublic agent names when a listing record is opened
soldDateSold date when Domain publishes one
descriptionPublic description when a listing record is opened
imagePrimary photo
scrapedAtUTC 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 os
from apify_client import ApifyClient
client = 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().items
print(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.