# Realtor Canada (`canadesk/realtor-canada`)

Get property listings from realtor.ca! It's fast and costs little.

- **URL**: https://beta-securitybyobscurity.apify.com/canadesk/realtor-canada.md
- **Developed by:** [Canadesk Support](https://beta-securitybyobscurity.apify.com/canadesk) (community)
- **Categories:** Real estate, Lead generation, Social media
- **Stats:** 43 total users, 4 monthly users, 87.5% runs succeeded, 3 bookmarks
- **User rating**: No ratings yet

## Pricing

$10.00/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.
You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#rental-actors

# README

🎯 This actor returns raw data (date descending) from Realtor!

## Cookies

If your runs are being blocked, try the following steps:

- Set the proxy to Residential and the country to Canada.

- Use your own cookies:

  - Install [this Chrome extension](https://chromewebstore.google.com/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc).

  - Navigate to realtor.ca, click the extension icon, set the export format to "Header string", and click Copy.

  - Paste the copied value into the "Cookies" input field.

## Input

```
{
    "city": "Toronto",
    "coordinates: "-79.81293,43.86622,-78.94089,43.56945",  // "city" overrides coordinates
    "country": "Canada",
    "listing_type": "for_sale",
    "bathrooms": "1+", // Range
    "bedrooms": "1+", // Range
    "pricemin": 250000,
    "days": 5,                                              // In the last x days
    "zoom": 10,
    "delay": 3,                                             // In seconds
    "frompage": 4                                           // Starting page
}
```

## Example output

```
{
    "Id": "28684871",
    "MlsNumber": "E12322203",
    "PublicRemarks": "Stunning 770 Sq Ft Tridel Condo Avani At Metrogate, Featuring Top-Tier Amenities And Luxurious Finishes. Located In A Prime Area At Kennedy/ Hwy 401, In A Family-Friendly Neighborhood With Easy Access To Highways, Public Transit, Parks, STC, Grocery Stores, Restaurants and More. A Highly Desirable Corner Unit With A Split Bedroom Layout, Large Windows, And Southwest-Facing Clear Views. The Kitchen Boasts Granite Countertops, Ceramic Tile Backsplash, And Built-In Stainless Steel Appliances. Freshly Painted. Additional Features Include Wi-Fi, A Balcony, Gym, An Extra-Large Parking Space, One Locker, And More. This Location Is Particularly Popular With Working Professionals And Students From Centennial College And UTSC, Making It Ideal For Both Primary Residence Or Income-Generating Potential. (41007074)",
    "Building": {
      "BathroomTotal": "2",
      "Bedrooms": "2",
      "SizeInterior": "65.0316 m2",
      "StoriesTotal": "",
      "Type": "Apartment",
      "Ammenities": "Visitor Parking, Security/Concierge, Exercise Centre, Party Room, Storage - Locker",
      "FloorAreaMeasurements": [
        {
          "Area": "700+ sqft",
          "AreaUnformatted": "700-799 sqft",
          "Type": "Square Footage",
          "Source": "",
          "MeasureUnitId": "1",
          "TypeId": "1",
          "SourceId": "0",
          "SortBy": "1"
        }
      ]
    },
    "Individual": [
      {
        "IndividualID": 1965284,
        "Name": "***",  // Hidden here, available in results
        "Organization": {
          "OrganizationID": 70066,
          "Name": "HOMELIFE LANDMARK REALTY INC.",
          "Logo": "https://cdn.realtor.ca/organization/en-CA/TS638629621800000000/lowres/1132867.jpg",
          "Address": {
            "AddressText": "7240 WOODBINE AVE UNIT 103|MARKHAM, Ontario L3R1A4",
            "PermitShowAddress": true
          },
          "Phones": [
            {
              "PhoneType": "Telephone",
              "PhoneNumber": "***",  // Hidden here, available in results
              "AreaCode": "905",
              "PhoneTypeId": "1"
            },
            {
              "PhoneType": "Fax",
              "PhoneNumber": "***",  // Hidden here, available in results
              "AreaCode": "905",
              "PhoneTypeId": "4"
            }
          ],
          "Emails": [
            {
              "ContactId": "567618385"
            }
          ],
          "Websites": [
            {
              "Website": "http://www.homelifelandmark.com/",
              "WebsiteTypeId": "1"
            }
          ],
          "OrganizationType": "Firm",
          "Designation": "Brokerage",
          "HasEmail": true,
          "PermitFreetextEmail": true,
          "PermitShowListingLink": true,
          "RelativeDetailsURL": "/office/firm/70066/homelife-landmark-realty-inc-7240-woodbine-ave-unit-103-markham-ontario-l3r1a4",
          "PhotoLastupdate": "2024-09-26 3:43:00 PM"
        },
        "Phones": [
          {
            "PhoneType": "Telephone",
            "PhoneNumber": "305-1600",
            "AreaCode": "905",
            "PhoneTypeId": "1"
          }
        ],
        "Emails": [
          {
            "ContactId": "568031341"
          }
        ],
        "Photo": "https://cdn.realtor.ca/individual/TS638851947600000000/lowres/1253739.jpg",
        "Position": "Salesperson",
        "PermitFreetextEmail": true,
        "FirstName": "***",  // Hidden here, available in results
        "LastName": "***",  // Hidden here, available in results
        "CorporationDisplayTypeId": "0",
        "PermitShowListingLink": true,
        "RelativeDetailsURL": "***",  // Hidden here, available in results
        "AgentPhotoLastUpdated": "2025-06-10 23:26:00",
        "PhotoHighRes": "***",  // Hidden here, available in results
        "RankMyAgentKey": "",
        "RealSatisfiedKey": "",
        "TestimonialTreeKey": ""
      }
    ],
    "Property": {
      "Price": "$499,900",
      "Type": "Single Family",
      "Address": {
        "AddressText": "1803 - 255 VILLAGE GREEN SQUARE|Toronto (Agincourt South-Malvern West), Ontario M1S0L7",
        "Longitude": "-79.2827293",
        "Latitude": "43.7796512",
        "PermitShowAddress": true
      },
      "Photo": [
        {
          "SequenceId": "1",
          "HighResPath": "https://cdn.realtor.ca/listings/TS638897586542270000/reb82/highres/3/e12322203_1.jpg",
          "MedResPath": "https://cdn.realtor.ca/listings/TS638897586542270000/reb82/medres/3/e12322203_1.jpg",
          "LowResPath": "https://cdn.realtor.ca/listings/TS638897586542270000/reb82/lowres/3/e12322203_1.jpg",
          "LastUpdated": "2025-08-02 7:10:54 PM",
          "TypeId": "0"
        }
      ],
      "Parking": [
        {
          "Name": "Underground"
        },
        {
          "Name": "Garage"
        }
      ],
      "ParkingSpaceTotal": "1",
      "TypeId": "300",
      "OwnershipType": "Condominium/Strata",
      "OwnershipTypeGroupIds": [
        2
      ],
      "ParkingType": "Underground, Garage",
      "PriceUnformattedValue": "499900",
      "ShortValue": "500K",
      "PriceChangeTimeOnRealtor": "",
      "PriceChangeTagDateUTC": "12:00:00 AM"
    },
    "Business": {},
    "Land": {},
    "AlternateURL": {
      "VideoLink": "https://tour.uniquevtour.com/vtour/255-village-green-square-1803-scarborough"
    },
    "PostalCode": "M1S0L7",
    "HistoricalDataIsCleared": false,
    "ProvinceName": "Ontario",
    "RelativeDetailsURL": "/real-estate/28684871/1803-255-village-green-square-toronto-agincourt-south-malvern-west-agincourt-south-malvern-west",
    "StatusId": "1",
    "PhotoChangeDateUTC": "2025-08-02 11:10:54 PM",
    "HasNewImageUpdate": true,
    "Distance": "",
    "RelativeURLEn": "/real-estate/28684871/1803-255-village-green-square-toronto-agincourt-south-malvern-west-agincourt-south-malvern-west",
    "RelativeURLFr": "/immobilier/28684871/1803-255-village-green-square-toronto-agincourt-south-malvern-west",
    "Media": [
      {
        "MediaCategoryId": "2",
        "MediaCategoryURL": "https://tour.uniquevtour.com/vtour/255-village-green-square-1803-scarborough",
        "Description": "VideoTourWebsite",
        "Order": 1,
        "VideoType": "Other"
      }
    ],
    "InsertedDateUTC": "638897730542200000",
    "TimeOnRealtor": "1 hour ago",
    "Tags": [
      {
        "Label": "1 hour ago",
        "HTMLColorCode": "#23A1C0",
        "ListingTagTypeID": "1"
      }
    ],
    "UploadedBy": 82
  }
```

## Limitations

1. Currently only supports RESIDENTIAL properties.

2. Returns a maximum of 600 results per run.

3. We recommend using fixed coordinates rather than "city".

### Support

Always use a proxy!

Open a new issue or contact support. Please share your Run URL and Input.

Cheers!

# Actor input Schema

## `cookies` (type: `string`):

See Information tab!

## `city` (type: `string`):

E.g., Toronto.

## `coordinates` (type: `string`):

LatitudeMAX,LongitudeMAX,LatitudeMIN,LongitudeMIN

## `country` (type: `string`):

No description

## `listing_type` (type: `string`):

No description

## `bathrooms` (type: `string`):

No description

## `bedrooms` (type: `string`):

No description

## `pricemin` (type: `integer`):

No description

## `days` (type: `integer`):

Filters out results prior to the # of days.

## `zoom` (type: `integer`):

No description

## `frompage` (type: `integer`):

No description

## `delay` (type: `integer`):

Waiting time between requests.

## `process` (type: `string`):

Process to run.

## `proxy` (type: `object`):

Select proxies to be used by your crawler.

## Actor input object example

```json
{
  "coordinates": "43.79042,-79.08273,43.63110,-79.73573",
  "country": "Canada",
  "listing_type": "for_sale",
  "bathrooms": "2-0",
  "bedrooms": "2-0",
  "days": 5,
  "zoom": 12,
  "delay": 3,
  "process": "sl",
  "proxy": {
    "useApifyProxy": true
  }
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "cookies": "",
    "city": "",
    "coordinates": "43.79042,-79.08273,43.63110,-79.73573",
    "proxy": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("canadesk/realtor-canada").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "cookies": "",
    "city": "",
    "coordinates": "43.79042,-79.08273,43.63110,-79.73573",
    "proxy": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("canadesk/realtor-canada").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "cookies": "",
  "city": "",
  "coordinates": "43.79042,-79.08273,43.63110,-79.73573",
  "proxy": {
    "useApifyProxy": true
  }
}' |
apify call canadesk/realtor-canada --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=canadesk/realtor-canada",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Realtor Canada",
        "description": "Get property listings from realtor.ca! It's fast and costs little.",
        "version": "1.4",
        "x-build-id": "Ms73aAi3OmRmNPsgM"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/canadesk~realtor-canada/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-canadesk-realtor-canada",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/canadesk~realtor-canada/runs": {
            "post": {
                "operationId": "runs-sync-canadesk-realtor-canada",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/canadesk~realtor-canada/run-sync": {
            "post": {
                "operationId": "run-sync-canadesk-realtor-canada",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "country"
                ],
                "properties": {
                    "cookies": {
                        "title": "Cookies",
                        "type": "string",
                        "description": "See Information tab!"
                    },
                    "city": {
                        "title": "City",
                        "type": "string",
                        "description": "E.g., Toronto."
                    },
                    "coordinates": {
                        "title": "Coordinates",
                        "type": "string",
                        "description": "LatitudeMAX,LongitudeMAX,LatitudeMIN,LongitudeMIN"
                    },
                    "country": {
                        "title": "Country",
                        "enum": [
                            "Canada"
                        ],
                        "type": "string",
                        "description": "",
                        "default": "Canada"
                    },
                    "listing_type": {
                        "title": "Search type",
                        "enum": [
                            "for_sale",
                            "for_rent"
                        ],
                        "type": "string",
                        "description": "",
                        "default": "for_sale"
                    },
                    "bathrooms": {
                        "title": "Number of bathrooms",
                        "enum": [
                            "1-0",
                            "2-0",
                            "3-0",
                            "4-0"
                        ],
                        "type": "string",
                        "description": "",
                        "default": "2-0"
                    },
                    "bedrooms": {
                        "title": "Number of bedrooms",
                        "enum": [
                            "1-0",
                            "2-0",
                            "3-0",
                            "4-0"
                        ],
                        "type": "string",
                        "description": "",
                        "default": "2-0"
                    },
                    "pricemin": {
                        "title": "Minimum price",
                        "minimum": 10000,
                        "maximum": 100000000,
                        "type": "integer",
                        "description": ""
                    },
                    "days": {
                        "title": "Posted in the last",
                        "minimum": 1,
                        "maximum": 365,
                        "type": "integer",
                        "description": "Filters out results prior to the # of days.",
                        "default": 5
                    },
                    "zoom": {
                        "title": "Zoom level",
                        "minimum": 10,
                        "maximum": 16,
                        "type": "integer",
                        "description": "",
                        "default": 12
                    },
                    "frompage": {
                        "title": "From page",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": ""
                    },
                    "delay": {
                        "title": "Settings - Delay",
                        "minimum": 1,
                        "maximum": 30,
                        "type": "integer",
                        "description": "Waiting time between requests.",
                        "default": 3
                    },
                    "process": {
                        "title": "Process",
                        "enum": [
                            "sl"
                        ],
                        "type": "string",
                        "description": "Process to run.",
                        "default": "sl"
                    },
                    "proxy": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Select proxies to be used by your crawler."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
