Business for sale API
Query 14,200+ businesses for sale (SaaS, ecom, content sites, agencies) from 22 marketplaces in a single JSON endpoint. Filter by MRR, asking price, multiple, age, industry.
Data aggregated from
All listings, all marketplaces, one query
Skip writing 22 scrapers. We aggregate Flippa, Empire Flippers, Quiet Light, TrustMRR and 18 more brokers daily and serve them via a single REST endpoint.
- 22 marketplaces aggregated daily — Flippa, Empire Flippers, Quiet Light, TrustMRR, Daltons, Microns and more.
- Broker-aware multiple — premium brokers (Quiet Light, Empire Flippers) report SDE / annual profit, not top-line revenue. We expose both.
-
Standardised schema — same shape regardless of source:
name,type,monthly_revenue,asking_price,multiple,age_years.
Built for
Acquirers and search funds — pull every listing matching your thesis (e.g. SaaS with $5k+ MRR and <3x multiple) into your CRM or screening tool, without scraping 22 broker websites.
M&A advisors — benchmark asking prices and multiples across the entire market when sizing a deal or pricing a sell-side mandate.
Builders & LLM agents — feed the catchbuys MCP server into Claude, Cursor or your own agent so it can answer "show me Amazon FBA brands under $500k with established history" in plain English.
Investors & data products — power your own newsletter, deal-flow tracker or alerting product on top of structured data.
Ready to build? Here is the API.
Standard REST, JSON responses, Bearer token auth. Works with any language. Full reference in the docs.
Try it
Pull SaaS listings with $5k+ MRR — paste this into your terminal.
curl "https://catchbuys.com/api/v1/listings?types[]=saas&mrr_min=5000&per_page=10" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Sample response
{
"data": [
{
"id": 12345,
"source": "flippa",
"name": "Acme CRM",
"url": "https://flippa.com/12345",
"website": "https://acmecrm.io",
"type": "saas",
"industry": "B2B SaaS",
"asking_price": 240000,
"currency": "USD",
"monthly_revenue": 8400,
"annual_revenue": 100800,
"annual_profit": 78000,
"profit_margin": 77.4,
"multiple": 3.07,
"age_years": 4,
"monthly_traffic": 12500,
"thumbnail_url": "https://...",
"created_at": "2026-04-20T08:12:00Z",
"updated_at": "2026-04-26T09:00:00Z"
}
],
"meta": { "total": 142, "page": 1, "per_page": 10, "last_page": 15 }
}
Just want a single listing?
curl "https://catchbuys.com/api/v1/listings/12345" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Filter parameters
Combine any of these on /api/v1/listings.
q
Keyword in listing name (LIKE match)
source
Single marketplace slug (e.g. flippa)
sources[]
Multiple sources (repeat the param)
types[]
saas, ecom, site, agency, other
industries[]
Exact industry match
mrr_min
Minimum monthly revenue (USD)
price_min
Minimum asking price
price_max
Maximum asking price
age_min
Minimum age in years
margin_min
Minimum profit margin (%)
sort
mrr, price, multiple, margin, age, added
dir
asc or desc (default: desc)
per_page
Results per page (max 100, default 25)
page
Page number (1-indexed)
Free during the POC
No paid plans yet — create a free account, generate a Bearer token, hit the endpoint.
Questions
How fresh is the data?
All sources are re-fetched daily via listings:fetch. Listings that disappear from the source are removed within 24 hours, so the API never returns stale records.
Why is the multiple sometimes computed against profit, not revenue?
Premium brokers (Quiet Light, Empire Flippers, Latonas, AcquisitionsDirect) price listings against SDE / annual profit, not top-line revenue. The multiple field uses annual_profit when present, falling back to annual_revenue otherwise. Both raw values are returned, so you can recompute either way.
What's the rate limit?
60 requests per minute per token. Exceeding returns HTTP 429.
Can I use this from Claude or Cursor?
Yes — see the MCP server page. The same Bearer token gets you both the REST API and the MCP server.
How do I authenticate?
Sanctum personal access token. Pass it as Authorization: Bearer YOUR_API_KEY. Manage tokens at /api/access.
Is there a price?
Not during the POC. The API and MCP server are free for any signed-in user. Pricing will be introduced once the POC graduates — existing users get advance notice.
Filter by source= on the API.