canada.businessesforsale.com APIcanada.businessesforsale.com ↗
Search and retrieve Canadian business-for-sale listings and franchise opportunities via 3 endpoints. Filter by price, region, category, and keywords.
curl -X GET 'https://api.parse.bot/scraper/34cac26e-45d4-4ffe-9df6-d1f95836ceb5/search_businesses?page=1&keywords=restaurant' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for business listings in Canada with optional filters. Returns paginated results with basic listing information including title, location, pricing, and description.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination |
| sort | string | Sort order. Accepted values: 'Score', 'PriceAsc', 'PriceDesc' |
| keywords | string | Keywords to search for (e.g. 'pizza', 'restaurant') |
| max_price | integer | Maximum asking price in CAD |
| min_price | integer | Minimum asking price in CAD |
| region_id | string | Region/Province ID to filter by |
| category_id | string | Category ID to filter by |
{
"type": "object",
"fields": {
"url": "string, the search URL used",
"page": "integer, current page number",
"results": "array of business listing objects with title, url, location, asking_price, revenue, cash_flow, description, tags"
},
"sample": {
"data": {
"url": "https://canada.businessesforsale.com/canadian/search/businesses-for-sale?Keywords=restaurant&Page=1&IncludeBusinesses=true&CanonicalCountryCode=CA",
"page": 1,
"results": [
{
"url": "https://canada.businessesforsale.com/canadian/pizza-and-donair-restaurant-in-edmonton.aspx",
"tags": [
"New"
],
"title": "Pizza and Donair Restaurant in Edmonton",
"revenue": "$320,000(CAD)",
"location": "Edmonton, Alberta, Canada",
"cash_flow": "On request",
"description": "Pizza and donair restaurant for sale.",
"asking_price": "$135,000(CAD)"
}
]
},
"status": "success"
}
}About the canada.businessesforsale.com API
The Canada BusinessesForSale.com API provides 3 endpoints to search business listings and franchise opportunities across Canada, and to fetch full listing details. The search_businesses endpoint accepts filters including price range, region, category, and keywords, returning fields such as asking price, revenue, cash flow, location, and tags per result. Use get_listing_details to pull broker name, full description, and financials for any individual listing.
What the API covers
Three endpoints cover the two main content types on canada.businessesforsale.com: businesses for sale and franchise opportunities. search_businesses returns paginated arrays of listing objects, each carrying title, url, location, asking_price, revenue, cash_flow, description, and tags. Results can be sorted by relevance (Score), PriceAsc, or PriceDesc, and filtered by keywords, min_price, max_price, region_id, and category_id.
Listing details
get_listing_details takes a full listing URL — typically taken from results[*].url in a search response — and returns the complete record: title, location, asking_price, revenue, cash_flow, description, broker_name, and listing_id. Financial fields return the string 'Undisclosed' when the seller has not published that figure, so callers should handle that value explicitly rather than treating all financial fields as numeric.
Franchise search
search_franchises searches the franchise section of the site and returns title, url, description, and min_investment per result. Keyword filtering is supported but may return an empty results array when no franchises match the supplied term — the endpoint does not error in that case, it simply returns an empty array. Franchise results are paginated using the same page parameter pattern as search_businesses.
- Aggregate Canadian business-for-sale listings by province using
region_idto build a regional deal-flow dashboard - Monitor asking price trends in a specific category by polling
search_businesseswithcategory_idand sorting byPriceAsc - Pull
broker_nameandlisting_idfromget_listing_detailsto build a CRM of active business brokers across Canada - Screen franchise opportunities by
min_investmentto surface options within a defined budget - Enrich an M&A research tool with
revenueandcash_flowfields fromget_listing_detailsfor financial pre-screening - Track new listings matching specific
keywordssuch as 'restaurant' or 'e-commerce' by paginatingsearch_businessesregularly - Compare asking prices and disclosed cash flow across categories to identify sectors with favorable valuation multiples
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does BusinessesForSale.com offer an official developer API?+
How do financial fields behave when sellers do not disclose figures?+
asking_price, revenue, and cash_flow in both search_businesses and get_listing_details return the string 'Undisclosed' rather than null or zero when the seller has not published the value. Applications that aggregate or compare financials need to filter or skip those records before performing numeric operations.Does the API expose contact details such as seller phone numbers or email addresses?+
get_listing_details returns broker_name but does not include phone numbers, email addresses, or other direct contact fields. You can fork this API on Parse and revise it to add an endpoint that retrieves contact information if it becomes accessible on the listing page.Can I filter franchise results by investment range or category the way I can filter business listings?+
search_franchises supports only page and keywords parameters. It does not accept min_investment, max_price, region_id, or category_id filters. Investment filtering would need to be done client-side on the returned min_investment field. You can fork this API on Parse and revise search_franchises to add server-side investment or category filtering if the source supports those parameters.