Domain.com.au Scraper With Agents | $1 / 1k avatar

Domain.com.au Scraper With Agents | $1 / 1k

Pricing

from $0.70 / 1,000 results

Go to Apify Store
Domain.com.au Scraper With Agents | $1 / 1k

Domain.com.au Scraper With Agents | $1 / 1k

Extract Australia real estate listings from Domain.com.au with agent details. Use suburb/search URLs to get structured data: address, price, beds/baths, property type, images, agent infos and more. Ideal for market analysis & lead generation.

Pricing

from $0.70 / 1,000 results

Rating

5.0

(1)

Developer

Fatih Tahta

Fatih Tahta

Maintained by Community

Actor stats

3

Bookmarked

131

Total users

40

Monthly active users

4.9 days

Issues response

15 days ago

Last modified

Share

Domain.com.au Scraper With Agents

Slug: fatihtahta/domain-com-au-scraper

Overview

Domain.com.au Scraper With Agents collects structured property listing records together with agent and agency information from Domain pages. Output can include listing identity, address and location fields, pricing text, property attributes, media links, inspection timing, and contact-related fields when available. Domain.com.au is a major Australian property marketplace, so this data is useful for market intelligence, pipeline enrichment, and suburb-level trend analysis. The actor automates recurring collection workflows from direct URLs and filter-based searches, helping teams avoid manual collection work. Runs are consistent and repeatable, which reduces operational overhead and saves time.

Why Use This Actor

  • Market research / analytics teams: Build recurring datasets for pricing, inventory mix, listing velocity, and suburb-level market comparisons.
  • Product & content teams: Power property dashboards, editorial snapshots, comparison pages, and location insights with structured listing data.
  • Developers / data engineering teams: Feed JSON records into ETL jobs, data warehouses, BI tools, and downstream APIs with minimal transformation.
  • Lead generation / enrichment teams: Enrich account and opportunity records with listing context, agency details, and agent-level metadata.
  • Monitoring / competitive tracking teams: Track listing changes, promotional status, inspections, and availability signals over time.

Input Parameters

Provide direct URLs, free-text queries, or query-builder filters to collect the records you need. When startUrls is present, it overrides the query builder inputs.

ParameterTypeDescriptionDefault
startUrlsarray<string>One or more Domain page URLs to scrape directly. Supports search result pages and individual listing pages. When provided, these override all query builder inputs.-
locationstringFree-text location or Domain location slug used by the query builder (for example: Sydney or elizabeth-bay-nsw-2011). Required when startUrls is not provided. The actor resolves free-text to the first Domain location suggestion before building the search URL.-
saleTypestringMarket segment to collect. Allowed values: buy, rent, sold.buy
priceMinintegerMinimum price filter for generated searches. Leave empty for no lower bound.-
priceMaxintegerMaximum price filter for generated searches. Leave empty for no upper bound.-
bedroomsstringMinimum bedrooms filter. Allowed values: any, 1+, 2+, 3+, 4+, 5+.any
bathroomsstringMinimum bathrooms filter. Allowed values: any, 1+, 2+, 3+, 4+, 5+.any
parkingstringMinimum parking spaces filter. Allowed values: any, 1+, 2+, 3+, 4+, 5+.any
propertySizeMinstringMinimum property or land size in m2. Allowed values: any, 50, 75, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1250, 1500, 2000, 3000, 4000, 5000, 6000, 7000, 8000, 9000, 10000.any
propertySizeMaxstringMaximum property or land size in m2. Allowed values: any, 50, 75, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1250, 1500, 2000, 3000, 4000, 5000, 6000, 7000, 8000, 9000, 10000.any
featuresarray<string>Optional feature filters. Allowed values: Pets allowed, Built in wardrobes, Gas, Garden / courtyard, Balcony / deck, Internal laundry, Study, Swimming pool, Air conditioning.-
newEstablishedstringProperty age segment filter. Allowed values: any, new, established.any
excludeUnderOfferbooleanFor buy searches, exclude listings marked under offer.false
propertyTypesarray<string>Property categories to include. Allowed values: All, House, Apartment, Townhouse, Retirement.-
enrich_databooleanCollect richer listing details for each saved search result. When disabled, the actor saves the lightweight listing record available from search results without enrichment-only detail requests.false
limitintegerMaximum listings to save per query or per start URL. Use smaller values for sampling and larger values for broader coverage.50000

Example Input

{
"location": "Sydney",
"saleType": "buy",
"bedrooms": "2+",
"propertyTypes": ["Apartment"],
"excludeUnderOffer": true,
"limit": 500
}

When startUrls is empty, the actor resolves location through Domain's location suggestions API and uses the first returned nameSlug to build the search URL. When startUrls is present, the actor skips query building and ignores the query-builder fields.

Agent Directory Mode

Set get_agents to true to crawl Domain's agent or agency directory instead of property listings.

ParameterTypeDescriptionDefault
get_agentsbooleanSwitches the actor from listing search mode to Domain's agent directory mode.false
agents_locationstringFree-text suburb/postcode or Domain location slug used to build the agent directory URL. This controls the directory location context. If omitted, the actor falls back to location.-
agent_typestringDirectory variant to scrape. Allowed values: Sales Agents, Property Managers, Agencies.Sales Agents
agent_keywordstringOptional Domain keyword filter appended as keywordName and interpreted by Domain as agentNameKeyword in the directory payload. This is a name/keyword search term, not a replacement for agents_location, so numeric values such as 2000 can legitimately return zero matches.-

Agent Mode Example Input

{
"get_agents": true,
"agents_location": "Sydney",
"agent_type": "Sales Agents",
"agent_keyword": "bryn fowler",
"limit": 500
}

Output

Output destination

The actor writes normalized JSON records to the default Apify dataset. The output is organized for ETL, warehousing, analytics, CRM enrichment, and API ingestion.

Top-level structure

Every record includes:

  • record_type: property_listing, agent, or agency
  • record_id: stable source identifier for the listing, agent, or agency
  • source_context: shared provenance metadata for all record types
  • entity: primary display identity, URL, and source external IDs
  • semantic groups such as listing, pricing, property, location, media, contact_details, reviews, performance, relationships, and attributes

source_context contains:

  • source_url: the search, directory, or detail page that discovered the record
  • source_domain: source hostname
  • seed_type: url or query_builder
  • seed_value: the original seed value used by the run
  • seed_id and parent_seed_id when present
  • scraped_at: UTC timestamp for when the record was produced
  • search_context or directory when the record came from a results page

Listing example

Arrays are shortened in this example for readability. With enrich_data disabled, property records still include search-card fields such as project name, child listing IDs, price text, keywords, images, contacts, and search context. With enrich_data enabled, the actor keeps those fields and adds detail-page fields such as headline, description, gallery, inspection, documents, richer location data, and agency/contact details when available.

{
"record_type": "property_listing",
"record_id": "2020301768",
"source_context": {
"source_url": "https://www.domain.com.au/project/4839/111-castlereagh-sydney-nsw/",
"source_domain": "www.domain.com.au",
"seed_type": "url",
"seed_value": "https://www.domain.com.au/project/4839/111-castlereagh-sydney-nsw/",
"scraped_at": "2026-04-29T11:52:35Z",
"search_context": {
"discovery_url": "https://www.domain.com.au/sale/sydney-nsw-2000/",
"listing_type": "project",
"result_position": 1,
"result_id": "2020301768",
"search_page_number": 1,
"search_total_pages": 12,
"mode": "sale",
"product_segment": "sale"
}
},
"entity": {
"title": "Castlereagh, Sydney NSW 2000",
"url": "https://www.domain.com.au/castlereagh-sydney-nsw-2000-2020301768",
"headline": "City Energy, Everyday Luxury",
"external_ids": {
"listing_id": "2020301768"
}
},
"listing": {
"listing_id": "2020301768",
"project_name": "111 Castlereagh",
"child_listing_ids": [2020301768],
"listing_category": "listing",
"category": "project",
"mode": "buy",
"status": "newDevelopment",
"dates": {
"listed_at": "2025-09-29T10:45:43+10:00"
}
},
"pricing": {
"price_text": "Contact Agent",
"price": 4700000,
"can_display_price": false
},
"property": {
"primary_property_type": "New Developments",
"secondary_property_type": "New Apartments / Off the Plan",
"bedrooms": 2,
"bathrooms": 2,
"parking_spaces": 1,
"keywords": ["Sydney CBD", "Luxury apartments"],
"features": "Air conditioning, Dishwasher, Intercom"
},
"location": {
"full_address": "Castlereagh, Sydney NSW 2000",
"suburb": "Sydney",
"state": "NSW",
"postal_code": "2000",
"latitude": -33.8710578,
"longitude": 151.2092956
},
"media": {
"image_urls": ["https://images.example.com/card.jpg"],
"skeleton_images": [
{
"images": {
"original": {
"url": "https://images.example.com/original.jpg",
"width": 1440,
"height": 1080
}
},
"media_type": "image"
}
],
"banner_url": "https://images.example.com/banner.jpg",
"logo_url": "https://images.example.com/project-logo.jpg",
"hero_images": {
"small": "https://images.example.com/hero-small.jpg"
},
"gallery_count": 16
},
"contact_details": {
"agency": {
"name": "Cbus Property",
"phone": "03 96390131",
"profile_url": "https://www.domain.com.au/real-estate-agencies/cbusproperty-39330/"
}
}
}

Agent example

{
"record_type": "agent",
"record_id": "900362",
"source_context": {
"source_url": "https://www.domain.com.au/real-estate-agents/sydney-nsw-2000/",
"source_domain": "www.domain.com.au",
"seed_type": "query_builder",
"seed_value": "https://www.domain.com.au/real-estate-agents/sydney-nsw-2000/",
"scraped_at": "2026-04-29T11:52:35Z",
"directory": {
"type": "Sales Agents"
},
"search_context": {
"page_number": 1,
"total_pages": 1,
"total_results": 1
}
},
"entity": {
"name": "Bryn Fowler",
"url": "https://www.domain.com.au/real-estate-agent/bryn-fowler-900362/",
"external_ids": {
"agent_id": "900362",
"agent_secondary_id": "A31461"
}
},
"agent": {
"profile_tier": "platinum"
},
"brokerage": {
"agency_id": 6877,
"agency_name": "Sydney Cove Property"
},
"contact_details": {
"telephone": "02 8259 3333",
"mobile": "0423 663 663"
},
"performance": {
"total_for_sale": 19
},
"reviews": {
"number_of_reviews": 7,
"overall_star_rating": 5
}
}

Agency example

{
"record_type": "agency",
"record_id": "6877",
"source_context": {
"source_url": "https://www.domain.com.au/real-estate-agencies/sydney-nsw-2000/",
"source_domain": "www.domain.com.au",
"seed_type": "query_builder",
"seed_value": "https://www.domain.com.au/real-estate-agencies/sydney-nsw-2000/",
"scraped_at": "2026-04-29T11:52:35Z",
"directory": {
"type": "Agencies"
}
},
"entity": {
"name": "Sydney Cove Property",
"url": "https://www.domain.com.au/real-estate-agencies/sydneycoveproperty-6877/",
"external_ids": {
"agency_id": "6877"
}
},
"agency": {
"display_address": "Level 1 / 111 George St, The Rocks NSW 2000"
},
"contact_details": {
"telephone": "02 92411288",
"email": "info@sydneycoveproperty.com"
},
"relationships": {
"agents": []
}
}

Field reference

Common fields

  • record_type (string, required): Output entity type: property_listing, agent, or agency.
  • record_id (string, required): Stable source identifier for the entity.
  • entity.url (string, optional): Primary URL for the listing, agent, or agency.
  • entity.title / entity.name (string, optional): Primary display label for the entity.
  • entity.external_ids.* (object, optional): Source IDs such as listing ID, property ID, agent ID, secondary agent ID, or agency ID.
  • source_context.source_url (string, required): Page that discovered or loaded the entity.
  • source_context.source_domain (string, optional): Source hostname.
  • source_context.seed_type (string, required): Input mode used for the seed.
  • source_context.seed_value (string, required): Original seed value.
  • source_context.scraped_at (string, required): UTC scrape timestamp.
  • source_context.search_context.* (object, optional): Search-card or directory pagination context discovered before detail enrichment.
  • source_context.directory.* (object, optional): Directory type context for agent and agency rows.

Listing fields

  • record_id and listing.listing_id (string, required for property listings): Stable listing identifier.
  • entity.headline and entity.description (string/array, optional): Main listing marketing text.
  • listing.* (object, optional): Tagline, category, mode, status, timestamps, sale method, project URL, development details, child listings, related projects, suburb profile, auction info, sold info, and other listing-specific details.
  • pricing.* (object, optional): Price text, exact/min/max raw price values, display eligibility, and bond when present.
  • property.* (object, optional): Property types, bedrooms, bathrooms, parking spaces, IDs, features, structured features, land/building data, and sale or rental attributes.
  • location.* (object, optional): Coordinates, full address parts, display/viewing address objects, map metadata, school catchment, suburb insights, and related location profile data.
  • media.image_urls, media.skeleton_images, media.thumbnails, media.banner_url, and media.logo_url (optional): Search-card media and responsive image metadata collected without requiring detail enrichment.
  • media.hero_images (object, optional): Hero image variants keyed by small, medium, large, and xLarge.
  • media.gallery (array