Centris APIcentris.ca ↗
Search and retrieve Quebec real estate listings from Centris.ca. Filter by property type, price range, and location. Get prices, room counts, photos, and more.
What is the Centris API?
The Centris.ca API exposes 7 endpoints for querying Quebec's largest real estate platform, covering residential sales, rentals, plex properties, and intergenerational homes. Endpoints like search_listings and get_listing_details return structured data including price, address, room counts, bedroom and bathroom counts, tax assessments, and photo URLs — giving developers direct access to active MLS-listed inventory across the province.
curl -X GET 'https://api.parse.bot/scraper/3937f45a-c256-4bc2-bc85-6b630ec600a5/search_listings?limit=5' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for residential real estate listings for sale across Quebec. Returns a paginated list of property listing summaries. Each summary includes id, URL, price, address, and a description teaser. Use get_listing_details with an id from the results to fetch full property information.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of listings to return. |
{
"type": "object",
"fields": {
"listings": "array of listing summaries each containing id, url, price, price_value, address, and description_teaser"
},
"sample": {
"data": {
"listings": [
{
"id": "20102820",
"url": "https://www.centris.ca/en/houses~for-sale~laval-sainte-rose/20102820",
"price": "$499,999",
"address": "7035, Rue Galarneau\nLaval (Sainte-Rose)",
"price_value": "499999",
"description_teaser": "House for sale"
}
]
},
"status": "success"
}
}About the Centris API
Search and Filter Listings
The search_listings endpoint returns paginated summaries of residential properties for sale across Quebec, with each result carrying an id, url, price, price_value, address, and description_teaser. The id field feeds directly into get_listing_details to retrieve the full record: property_type, bedrooms, bathrooms, rooms, description, an array of photos, and financial details including tax assessments. The search_rentals endpoint mirrors this flow for rental properties, adding a location filter and min_price/max_price range to narrow results by monthly rent.
Specialized Montreal Searches
Three endpoints target Montreal-specific property categories. search_plex_montreal filters for multiplex properties (duplex through quintuplex) on the Island of Montreal with optional min_price and max_price bounds. search_intergenerational_montreal returns intergenerational homes up to a max_price. search_houses_keywords_montreal goes a step further — it filters single-family houses by a min_rooms count and matches listing descriptions against keywords like "bachelor" or "intergenerational", returning full detail objects rather than summaries for each qualifying result.
Arbitrary Search URL Passthrough
The search_by_url endpoint accepts any Centris.ca search-results page URL — including those with encoded filter parameters — and returns the matching listings with id, url, price (numeric CAD), address, city, property_type, bedrooms, bathrooms, and property_type. Pagination is controlled via page and limit (1–100 per call). The response also includes total_results (the count the site reports for the search) and a has_more boolean, making it straightforward to walk through large result sets.
The Centris API is a managed, monitored endpoint for centris.ca — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when centris.ca changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official centris.ca API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a plex investment screener filtering Montreal duplexes and triplexes by price range using
search_plex_montreal - Aggregate Quebec rental market data by querying
search_rentalsacross cities and collectingprice_valueandproperty_typefields - Automate listing alerts by periodically calling
search_listingsand comparing newidvalues against a stored set - Enrich a property database with photos, room counts, and tax assessments via
get_listing_detailsfor each listing ID - Power a custom map view by extracting
addressandcityfields fromsearch_by_urlresults for arbitrary saved searches - Identify multi-unit or accessory-suite houses in Montreal using
search_houses_keywords_montrealwith keyword andmin_roomsfilters - Track price changes on specific listings by re-fetching
get_listing_detailsfor a set of known Centris IDs over time
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Centris.ca have an official developer API?+
What does `get_listing_details` return that the search endpoints do not?+
get_listing_details returns the full listing record: description (complete text), bedrooms, bathrooms, rooms, an array of photos URLs, property_type, and financial details including tax assessments. The search endpoints return summaries only — id, url, price, address, and description_teaser.Does `search_by_url` work with any Centris search, including rentals and filtered searches?+
total_results and a has_more flag so you can paginate through the full result set using the page parameter.