Realtor CA Scraper avatar

Realtor CA Scraper

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Realtor CA Scraper

Realtor CA Scraper

Extract property listings from realtor.ca, get full listing data: prices, descriptions, images, agent contacts with brokerage details, coordinates, open house times, building features, and more.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

AbotAPI

AbotAPI

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

7 days ago

Last modified

Share

Extract property listings from realtor.ca, Canada's largest real estate marketplace. Get full listing data: prices, descriptions, images, agent contacts with brokerage details, coordinates, open house times, building features, and more.

Why this scraper?

  • Fast: ~66 listings/min with smart cookie-based session reuse
  • Rich data: 30+ fields per listing including full agent/brokerage details
  • All property types: Residential, Commercial, Condo, Multi-Family, Vacant Land, and more
  • All provinces: Supports all 13 Canadian provinces and territories
  • Reliable: Checkpoint resume, automatic session refresh, retry on failure
  • Full filters: Price, bedrooms, bathrooms, building type, open house, keywords
  • Cost effective: Works with datacenter proxy (cheapest option)

Quick Start

{
"mode": "location",
"locations": [
{ "city": "Toronto", "province": "ON" }
],
"listingType": "buy",
"maxListings": 100
}

Search Modes

Search by Location

Search one or more cities across any province. Filters (price, beds, baths, building type) are applied server-side for efficient scraping.

{
"mode": "location",
"locations": [
{ "city": "Toronto", "province": "ON" },
{ "city": "Vancouver", "province": "BC" }
],
"listingType": "buy",
"propertySearchCategory": "residential",
"buildingTypeFilter": "house",
"priceMin": 500000,
"priceMax": 1500000,
"bedroomsMin": 3,
"bathroomsMin": 2
}

Direct URLs

Pass realtor.ca search URLs directly. Useful for reproducing specific search results.

{
"mode": "url",
"urls": [
"https://www.realtor.ca/map#ZoomLevel=11&LatitudeMax=43.85&LongitudeMax=-79.18&LatitudeMin=43.58&LongitudeMin=-79.64&Sort=6-D&PropertySearchTypeId=1&TransactionTypeId=2&Currency=CAD"
]
}

Listing Types

  • buy: Properties currently for sale
  • rent: Properties available for rent
  • sold: Recently sold properties (supports date range filter)

Input Parameters

ParameterTypeDefaultDescription
modestringlocationSearch mode: location or url
locationsarray[{"city":"Toronto","province":"ON"}]Cities to search
urlsarrayrealtor.ca map/search URLs (for url mode)
listingTypestringbuybuy, rent, or sold
propertySearchCategorystringresidentialProperty category (see table below)
buildingTypeFilterstringFilter: house, row-townhouse, or apartment
priceMinintegerMinimum price (CAD)
priceMaxintegerMaximum price (CAD)
bedroomsMinintegerMinimum bedrooms (0-10)
bedroomsMaxintegerMaximum bedrooms (0-10)
bathroomsMinintegerMinimum bathrooms (0-10)
soldWithinDaysstring1yearSold date range: 7days, 14days, 30days, 90days, 6months, 1year
openHouseOnlybooleanfalseOnly listings with upcoming open houses
keywordsstringSearch keywords (e.g. pool, waterfront)
maxListingsinteger20Stop after this many listings
maxPagesinteger20Max pages per location (~12 results each)
proxyConfigurationobjectApify ProxyProxy settings
resumeFromCheckpointbooleantrueResume from last checkpoint on failure

Property Search Categories

CategoryDescriptionExample Building Types
residentialHouses, apartments, townhousesHouse, Apartment, Row / Townhouse, Modular
commercialBusiness, industrial, retailResidential Commercial Mix
condoCondominium/Strata ownershipApartment (Condo)
multi-familyInvestment propertiesDuplex, Triplex, Fourplex, Multi-Family
vacant-landEmpty lots
recreationalCottages, cabins
agricultureFarms, rural land
parkingParking spots/garagesParking

Output

Each listing includes 30+ fields. Example:

{
"propertyId": "12345678",
"mlsNumber": "C1234567",
"url": "https://www.realtor.ca/real-estate/12345678/100-example-street-toronto",
"listingType": "buy",
"propertyType": "condo",
"buildingType": "Apartment",
"ownershipType": "Condominium/Strata",
"description": "Bright and spacious 2-bedroom corner suite...",
"dateListed": "639094911981800000",
"timeOnRealtor": "2 hours ago",
"tags": ["2 hours ago"],
"address": {
"full": "100 - 200 EXAMPLE STREET|Toronto, Ontario M5A1B2",
"street": "100 - 200 EXAMPLE STREET",
"city": "Toronto",
"province": "Ontario",
"postalCode": "M5A1B2"
},
"coordinates": {
"latitude": 43.65,
"longitude": -79.37
},
"price": {
"display": "$850,000",
"value": 850000
},
"features": {
"bedrooms": 2,
"bathrooms": 2,
"parkingSpaces": 1,
"parkingType": "Underground, Garage",
"buildingSize": "90 m2"
},
"propertyFeatures": [
"Storage - Locker",
"Floor Area: 900+ sqft",
"Parking: Underground, Garage"
],
"media": {
"imageCount": 1,
"images": [
"https://cdn.realtor.ca/listings/.../highres/1/c1234567_1.jpg"
]
},
"agents": [
{
"name": "Jane Smith",
"phone": "(416) 555-1234",
"position": "Broker of Record",
"profileUrl": "https://www.realtor.ca/agent/100001/jane-smith-...",
"organization": "EXAMPLE REALTY INC.",
"organizationLogo": "https://cdn.realtor.ca/organization/.../logo.jpg",
"organizationDesignation": "Brokerage",
"organizationWebsite": "http://www.example-realty.ca/",
"organizationPhone": "(416) 555-5678"
}
],
"scrapedAt": "2026-03-19T12:00:00.000Z"
}

Proxy Configuration

Datacenter proxy works and is the cheapest option (default). Use residential proxy if you experience blocks.

Datacenter (default, cheapest):

{
"proxyConfiguration": {
"useApifyProxy": true
}
}

Supported Cities

Pre-configured bounding boxes for fast, accurate results in 30+ major Canadian cities including Toronto, Vancouver, Montreal, Calgary, Edmonton, Ottawa, Winnipeg, Halifax, and more. Any city can be searched by name, but pre-configured cities skip the geocoding step.

Tips

  • Start with a small maxListings (20-50) to test your filters before running large scrapes
  • Use propertySearchCategory and buildingTypeFilter together for precise results
  • The sold listing type shows recently sold properties with price history
  • Multiple locations are scraped sequentially, reusing the same browser session
  • If a run fails, set resumeFromCheckpoint to true to continue where it left off