REST API
Deals API Reference
Complete reference for buyer-perspective deal discovery. API IDs are resource-prefixed with dl_.
Overview
Search live lower middle market M&A deal listings from the buyer perspective. Filter by industry, location, and financials, paginate results, and pull full deal detail including seller contact info.
Who can access
Available to all buyers with a paid subscription.
List deals
/v1/buyer/deals
Returns a paginated list of live deals from the buyer perspective. Supports natural language filtering by industry and location, plus financial filters and sorting.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
industry
|
string | Natural language industry filter. Example: "healthcare" or "SaaS". |
location
|
string | Natural language location filter. Example: "Northeast" or "Texas". |
revenue_min
|
integer | Minimum annual revenue in dollars. |
revenue_max
|
integer | Maximum annual revenue in dollars. |
ebitda_min
|
integer | Minimum EBITDA in dollars. |
ebitda_max
|
integer | Maximum EBITDA in dollars. |
margin_percent_min
|
integer | Minimum margin percentage from 0 to 100. |
margin_percent_max
|
integer | Maximum margin percentage from 0 to 100. |
deal_type
|
enum | Deal type filter. Defaults to both. |
sort
|
enum | Sort order. Default: date_added_desc. |
page
|
integer | Page number. |
per_page
|
integer | Results per page. Maximum 100. |
Code Sample
curl "https://api.privsource.com/v1/buyer/deals?industry=healthcare&revenue_min=1000000&sort=revenue_desc&per_page=10" \ -H "Authorization: Bearer YOUR_API_TOKEN"
Example Response
{
"deals": [
{
"id": "dl_gkqMKZ9x",
"name": "Healthcare Services Company",
"privsource_link": "https://privsource.com/buyer/deals/dl_gkqMKZ9x",
"teaser_link": "https://privsource.com/buyer/deals/dl_gkqMKZ9x/view",
"date_added": "2025-01-15",
"revenue": 5000000,
"ebitda": 1200000,
"margin_percent": 24,
"deal_type": "buyout",
"outreach_available": true,
"primary_industry": "Healthcare",
"sub_industry": "Outpatient Services",
"secondary_industry": "Business Services",
"industries": [
"Healthcare",
"Business Services"
],
"location": "Northeast"
}
],
"meta": {
"current_page": 1,
"total_pages": 5,
"total_count": 47,
"per_page": 10,
"filters": {
"industries": [
"Healthcare"
],
"revenue_min": 1000000
}
}
}Response Codes
Get a deal
/v1/buyer/deals/:id
Returns full details for a single live deal from the buyer perspective.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id
required
|
string | Deal ID with a dl_ prefix. |
Code Sample
curl "https://api.privsource.com/v1/buyer/deals/dl_gkqMKZ9x" \ -H "Authorization: Bearer YOUR_API_TOKEN"
Example Response
{
"deal": {
"id": "dl_gkqMKZ9x",
"name": "Healthcare Services Company",
"privsource_link": "https://privsource.com/buyer/deals/dl_gkqMKZ9x",
"teaser_link": "https://privsource.com/buyer/deals/dl_gkqMKZ9x/view",
"date_added": "2025-01-15",
"revenue": 5000000,
"ebitda": 1200000,
"margin_percent": 24,
"deal_type": "buyout",
"outreach_available": true,
"primary_industry": "Healthcare",
"sub_industry": "Outpatient Services",
"secondary_industry": "Business Services",
"industries": [
"Healthcare",
"Business Services"
],
"location": "Northeast",
"description": "Full-service healthcare company specializing in outpatient care.",
"reason_for_sale": "Owner retirement",
"growth_opportunities": "Expand into adjacent markets and acquire smaller clinics.",
"deal_link": "https://example.com/deal-profile",
"nda_link": "https://example.com/nda",
"contacts": [
{
"name": "John Smith",
"email": "[email protected]",
"phone": "555-123-4567",
"title": "Managing Director"
}
]
}
}Response Codes
Schemas
Contact
Deal contact details.
| Field | Type | Description |
|---|---|---|
name
required
|
string | Contact name. |
email
required
|
string | Contact email. |
phone
|
string | Phone number when available. |
title
|
string | Job title when available. |
DealDetailResponse
Single-deal response for the deal detail endpoint.
| Field | Type | Description |
|---|---|---|
deal
|
DealFull |
DealFull
Full deal shape returned by the deal detail endpoint.
| Field | Type | Description |
|---|---|---|
id
|
string | Deal ID with a dl_ prefix. |
name
|
string | Deal name. |
privsource_link
|
string | Authenticated PrivSource buyer deal URL using the deal hashid. |
teaser_link
|
string? | Authenticated PrivSource buyer teaser URL using the deal hashid. Redirects to the teaser document or external material when available and visible. |
date_added
|
string | Date the deal was added. |
revenue
|
integer? | Annual revenue in dollars when available. |
ebitda
|
integer? | EBITDA in dollars when available. |
margin_percent
|
integer? | Margin percentage from 0 to 100 when available. |
deal_type
|
enum | Deal type. |
outreach_available
|
boolean | Whether this deal currently has recipients available for buyer outreach. |
primary_industry
|
string? | Primary industry label when available. |
sub_industry
|
string? | Sub-industry label when available. |
secondary_industry
|
string? | Secondary industry label when available. |
industries
|
string[] | Matched industry labels for the deal. |
location
|
string? | Location label when available. |
description
|
string | Long-form deal description. |
reason_for_sale
|
string | Seller's reason for sale when available. |
growth_opportunities
|
string | Growth opportunities when available. |
deal_link
|
string? | URL to the teaser or external deal material when available and visible. |
nda_link
|
string? | URL to the NDA document when available. |
contacts
|
Contact[] | Deal contacts. Empty array if contacts are not available for this deal. |
DealListResponse
Paginated list response for the deals index endpoint.
| Field | Type | Description |
|---|---|---|
deals
|
DealSummary[] | Deal summaries for the current page. |
meta
|
PaginationMeta |
DealSummary
Summary shape returned in the deals index response.
| Field | Type | Description |
|---|---|---|
id
|
string | Deal ID with a dl_ prefix. |
name
|
string | Deal name. |
privsource_link
|
string | Authenticated PrivSource buyer deal URL using the deal hashid. |
teaser_link
|
string? | Authenticated PrivSource buyer teaser URL using the deal hashid. Redirects to the teaser document or external material when available and visible. |
date_added
|
string | Date the deal was added. |
revenue
|
integer? | Annual revenue in dollars when available. |
ebitda
|
integer? | EBITDA in dollars when available. |
margin_percent
|
integer? | Margin percentage from 0 to 100 when available. |
deal_type
|
enum | Deal type. |
outreach_available
|
boolean | Whether this deal currently has recipients available for buyer outreach. |
primary_industry
|
string? | Primary industry label when available. |
sub_industry
|
string? | Sub-industry label when available. |
secondary_industry
|
string? | Secondary industry label when available. |
industries
|
string[] | Matched industry labels for the deal. |
location
|
string? | Location label when available. |
ErrorResponse
Error response returned by authenticated API endpoints.
| Field | Type | Description |
|---|---|---|
errors
required
|
string[] | One or more human-readable error messages. |
PaginationMeta
Pagination metadata returned by list endpoints.
| Field | Type | Description |
|---|---|---|
current_page
|
integer | Current page number. |
total_pages
|
integer | Total number of pages. |
total_count
|
integer | Total matching record count. |
per_page
|
integer | Results returned per page. |
filters
|
object | Applied filters. Only present when filters are active. |