Domain.com.au Australia Real Estate & Agent Contacts Scraper avatar

Domain.com.au Australia Real Estate & Agent Contacts Scraper

Pricing

from $17.00 / 1,000 results

Go to Apify Store
Domain.com.au Australia Real Estate & Agent Contacts Scraper

Domain.com.au Australia Real Estate & Agent Contacts Scraper

Scrape Domain.com.au property listings for buy, rent and sold across Australia: price, property type, bedrooms, bathrooms, parking, land size, full address with suburb, state, postcode and geo coordinates, plus agent name, phone, email and agency contact leads. Export to JSON, CSV or Excel.

Pricing

from $17.00 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 days ago

Last modified

Share

Domain.com.au Australia Real Estate & Agent Contacts Scraper

Domain.com.au Australia Real Estate & Agent Contacts Scraper

Here is one real result, with every field the actor returns:

{
"listingId": 2020377626,
"listingType": "buy",
"title": "4804/93 Liverpool Street",
"priceDisplay": "Buyer Guide $1,750,000",
"priceAmount": 1750000,
"propertyType": "Apartment / Unit / Flat",
"bedrooms": 2,
"bathrooms": 2,
"parking": 1,
"landSizeM2": 127,
"address": "4804/93 Liverpool Street",
"suburb": "Sydney",
"state": "NSW",
"postcode": "2000",
"latitude": -33.876835,
"longitude": 151.20671,
"projectName": null,
"agencyName": "Metro Realty",
"agentName": "John Tsironis",
"agentPhone": "0402 696 497",
"agentMobile": "0402 696 497",
"agentEmail": null,
"agentProfileUrl": "https://www.domain.com.au/real-estate-agent/john-tsironis-2013312",
"agentCount": 2,
"agencyPhone": "02 9260 7100",
"agencyProfileUrl": "https://www.domain.com.au/real-estate-agencies/metrorealty-17692/",
"features": [],
"imageUrl": "https://rimh2.domainstatic.com.au/AyC0wP36_MH8j7swuAzwGDP3eEA=/720x540/filters:format(webp):quality(85)/2020377626_1_1_260327_052919-w3840-h2560",
"listingUrl": "https://www.domain.com.au/4804-93-liverpool-street-sydney-nsw-2000-2020377626",
"source": "domain.com.au",
"observedAt": "2026-08-10T14:33:25.381Z"
}

The most complete Domain.com.au scraper available. It returns every field Domain exposes for each listing (price, property type, beds, baths, parking, land size, full address with suburb, state, postcode and geo coordinates), plus agent and agency contact leads (name, phone, mobile, email, profile URLs), and gives you search-URL, suburb and listing-type filters to target exactly the properties you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor scrapes Domain.com.au property search results for buy, rent or sold across Australia. It paginates each search automatically and writes one record per listing with price, property type, beds, baths, parking, land size, the full address (suburb, state, postcode and geo coordinates), listing image and URL. With fetchAgentContacts enabled (the default), it opens each listing to add agent and agency contact leads. Optional AI add-ons write a buyer/renter summary and extract structured feature tags. Missing source values are returned as null, never invented.

Give it full Domain search URLs, or list suburb slugs plus a listing type and it builds the searches for you.

Quickstart

Open the actor, paste this into the input, and press Run. It returns 10 for-sale listings in Sydney with agent contacts.

{
"searchUrls": [
"https://www.domain.com.au/sale/sydney-nsw-2000/"
],
"fetchAgentContacts": true,
"maxListings": 10
}

Or search by suburb slug instead of a URL:

{
"suburbs": ["bondi-nsw-2026", "melbourne-vic-3000"],
"listingType": "rent",
"maxListings": 10
}

Input reference

FieldTypeRequiredDefaultDescription
searchUrlsstring[]noSydney sale searchOne or more Domain.com.au search-results URLs (buy, rent or sold). Each URL is paginated automatically.
suburbsstring[]no(empty)Alternative to URLs: suburb slugs like sydney-nsw-2000, bondi-nsw-2026. Combined with listingType.
listingTypeenumnobuyMarket to search when using suburbs: buy, rent, or sold.
fetchAgentContactsbooleannotrueVisit each listing to capture agent name, phone, mobile, email and agency contacts. Turn off for faster, listing-only runs.
withSummarybooleannofalsePaid add-on. AI writes a concise buyer/renter summary of each listing. Billed per summarised listing. Paid plans only.
withFeaturesbooleannofalsePaid add-on. AI extracts structured beds/baths/size/amenities/condition tags. Billed per processed listing. Paid plans only.
maxListingsintegerno10Maximum listings to collect across all searches. Free plans are capped at 10.

Output reference

One dataset item per listing. Types: string, integer, number, string[], or null when the source value is absent.

FieldTypeDescription
listingIdintegerDomain listing ID (unique per listing).
listingTypestringbuy, rent, or sold.
titlestringListing headline, usually the street address.
priceDisplaystringPrice text as shown on Domain, for example Buyer Guide $1,750,000.
priceAmountintegerParsed numeric price, or null when the price is undisclosed.
propertyTypestringProperty type, for example Apartment / Unit / Flat, House.
bedroomsintegerNumber of bedrooms, or null.
bathroomsintegerNumber of bathrooms, or null.
parkingintegerNumber of parking spaces, or null.
landSizeM2numberLand or internal size in square metres, or null.
addressstringStreet address.
suburbstringSuburb.
statestringState code, for example NSW, VIC.
postcodestringPostcode.
latitudenumberLatitude, or null.
longitudenumberLongitude, or null.
projectNamestringDevelopment/project name for off-the-plan listings, or null.
agencyNamestringListing agency name.
agentNamestringPrimary agent name (with fetchAgentContacts).
agentPhonestringAgent phone, or null.
agentMobilestringAgent mobile, or null.
agentEmailstringAgent email, or null when not published.
agentProfileUrlstringAgent profile URL on Domain.
agentCountintegerNumber of agents on the listing.
agencyPhonestringAgency phone.
agencyProfileUrlstringAgency profile URL on Domain.
featuresstring[]Feature tags from the listing (or AI feature tags with the add-on).
imageUrlstringPrimary listing image URL.
listingUrlstringFull listing URL on Domain.
sourcestringData source. Always domain.com.au.
observedAtstringISO 8601 timestamp of when the record was collected.
errorstringPresent only on a failed run: a single item with a populated error field is written instead.

Example output record

Real record from a live run (input {"searchUrls":["https://www.domain.com.au/sale/sydney-nsw-2000/"],"fetchAgentContacts":true,"maxListings":10}):

{
"listingId": 2020377626,
"listingType": "buy",
"priceDisplay": "Buyer Guide $1,750,000",
"priceAmount": 1750000,
"propertyType": "Apartment / Unit / Flat",
"bedrooms": 2,
"bathrooms": 2,
"parking": 1,
"landSizeM2": 127,
"address": "4804/93 Liverpool Street",
"suburb": "Sydney",
"state": "NSW",
"postcode": "2000",
"latitude": -33.876835,
"longitude": 151.20671,
"agencyName": "Metro Realty",
"agentName": "John Tsironis",
"agentPhone": "0402 696 497",
"agentProfileUrl": "https://www.domain.com.au/real-estate-agent/john-tsironis-2013312",
"listingUrl": "https://www.domain.com.au/4804-93-liverpool-street-sydney-nsw-2000-2020377626",
"source": "domain.com.au",
"observedAt": "2026-08-10T14:33:25.381Z"
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~domain-australia-realestate-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"searchUrls":["https://www.domain.com.au/sale/sydney-nsw-2000/"],"maxListings":10}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~domain-australia-realestate-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"suburbs":["bondi-nsw-2026"],"listingType":"rent","maxListings":100}'

Apify CLI:

apify call scrapers_lat/domain-australia-realestate-scraper \
--input '{"searchUrls":["https://www.domain.com.au/sold-listings/bondi-nsw-2026/"],"maxListings":10}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per listing returned (result event). See the pricing tab for the current per-result price.
  • AI add-ons. withSummary and withFeatures each bill per listing enriched, only on success. They are disabled by default and require a paid plan.
  • No charge on failure. If a run errors before any listing is collected, the actor writes a single item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 listings per run. Upgrade for higher maxListings.

FAQ and troubleshooting

A run returned 0 records. Why? The search URL or suburb matched no listings. Confirm the URL works on domain.com.au, or try a different suburb. Zero-result runs are not charged.

Why is agentEmail null? Domain does not publish an email for every agent. When it is missing, agentEmail is returned as null; the agent phone, mobile and profile URL are still captured when available.

How do I search sold listings? Use a sold-listings URL in searchUrls, or set listingType to sold when using suburbs.

Why is priceAmount null while priceDisplay has text? Some listings show a non-numeric price (for example Contact Agent or Auction). The display text is kept and the numeric field is null, never invented.

Can I turn off contact lookups for speed? Yes. Set fetchAgentContacts to false for faster, listing-only runs.

Is this an official Domain tool? No. This actor is independent and has no affiliation with Domain Holdings Australia. It reads only data that is publicly available on domain.com.au. Use it in accordance with the Domain terms of service.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with Domain Holdings Australia. Accesses only publicly available domain.com.au data. Use in accordance with the Domain terms of service.