API Reference · core
Enrich buying committees via API
Pass a target account domain and get back the likely buying committee — mapped by role (economic buyer, champion, influencer, technical evaluator, end user), with verified contact data for each member. Built for ABM teams running multi-threaded outreach.
Endpoint
POST https://api.cleanlist.ai/v1/enrich/buying_committeeRequest
POST https://api.cleanlist.ai/v1/enrich/buying_committee
Authorization: Bearer clnl_live_...
Content-Type: application/json
{
"email": "jane@acme.com"
}Response
{
"id": "ev_bc4w8h3",
"status": "completed",
"buying_committee": {
"domain": "midmarket.io",
"company_name": "MidMarket Solutions",
"company_size": "201-500",
"committee_size": 7,
"members": [
{
"role": "economic_buyer",
"name": "Lisa Tran",
"title": "VP of Sales",
"email": "lisa.tran@midmarket.io",
"email_status": "valid",
"seniority": "vp",
"confidence": 0.94
},
{
"role": "champion",
"name": "Ryan O'Brien",
"title": "Director of Sales Operations",
"email": "ryan.obrien@midmarket.io",
"email_status": "valid",
"seniority": "director",
"confidence": 0.91
},
{
"role": "influencer",
"name": "Priya Sharma",
"title": "Head of Revenue Operations",
"email": "priya.sharma@midmarket.io",
"email_status": "valid",
"seniority": "director",
"confidence": 0.88
},
{
"role": "technical_evaluator",
"name": "Jake Morrison",
"title": "Salesforce Administrator",
"email": "jake.morrison@midmarket.io",
"email_status": "valid",
"seniority": "individual_contributor",
"confidence": 0.85
},
{
"role": "end_user",
"name": "Aisha Patel",
"title": "Senior SDR",
"email": "aisha.patel@midmarket.io",
"email_status": "valid",
"seniority": "individual_contributor",
"confidence": 0.82
}
],
"seniority_mix": {
"vp": 1,
"director": 2,
"individual_contributor": 2,
"manager": 2
}
},
"meta": {
"credits_used": 77,
"providers_queried": 15,
"providers_matched": 8,
"confidence": 0.89,
"enriched_at": "2026-04-15T10:48:55Z"
}
}Field reference
| Field | Type | Description |
|---|---|---|
| domain | string | Target account domain used for the lookup. |
| company_name | string | Company name associated with the domain. |
| company_size | string | Employee count range — affects expected committee size. |
| committee_size | integer | Number of committee members identified. |
| members | array | Array of committee members with role, contact data, and confidence. |
| members[].role | enum | Buying role: economic_buyer, champion, influencer, technical_evaluator, end_user, blocker. |
| members[].name | string | Full name of the committee member. |
| members[].title | string | Current job title, normalized. |
| members[].email | string | Verified work email address. |
| members[].email_status | enum | Email verification result: valid, invalid, risky, catch-all. |
| members[].seniority | enum | Seniority level classification. |
| members[].confidence | float | 0.0 to 1.0 confidence that this person is part of the buying committee for your product category. |
| seniority_mix | object | Breakdown of committee members by seniority level. |
Code samples
curl -X POST https://api.cleanlist.ai/v1/enrich/buying_committee \
-H "Authorization: Bearer $CLEANLIST_API_KEY" \
-H "Content-Type: application/json" \
-d '{"email": "jane@acme.com"}'import Cleanlist from "cleanlist";
const client = new Cleanlist(process.env.CLEANLIST_API_KEY);
const result = await client.enrich.buying_committee({
email: "jane@acme.com",
});
console.log(result.buying_committee.title);from cleanlist import Cleanlist
client = Cleanlist(api_key=os.environ["CLEANLIST_API_KEY"])
result = client.enrich.buying_committee(email="jane@acme.com")
print(result["buying_committee"]["title"])Common use cases
Map the full buying committee at each target account, then run personalized sequences to every stakeholder simultaneously. Economic buyers get ROI messaging, champions get product value, technical evaluators get integration details.
When a deal stalls at a single contact, use buying committee mapping to identify and engage other stakeholders. Multi-threading increases win rates by 30-50% compared to single-thread selling.
Map the buying committee in adjacent departments at existing customer accounts. Identify new champions for cross-sell opportunities without starting from scratch on account research.
When you learn a target account is evaluating a competitor, map the full committee and engage stakeholders who may not be involved in the competitor evaluation yet.
Pricing
Credit-based, no per-seat fees. This endpoint uses the standard enrichment rate:
- Email only: 1 credit per enriched buying_committee.
- Email + phone: 11 credits per enriched buying_committee.
- Free tier: 30 credits/mo. See all pricing.
FAQ
How does Cleanlist identify buying committee members?
Cleanlist analyzes the target company's org structure using LinkedIn data, corporate profiles, and historical deal patterns. It identifies contacts whose titles and departments match typical buying committee roles for your product category. You can configure your product category (e.g., 'sales engagement software') to improve role mapping accuracy.
How many committee members are typically returned?
Committee size depends on company size. Companies with 50-200 employees typically return 3-5 members. Mid-market companies (200-1000) return 5-8 members. Enterprise companies (1000+) can return 8-15 members. The endpoint returns all identified members — you can filter by confidence score to focus on the most likely participants.
What does the confidence score represent for committee members?
The confidence score reflects how likely each person is to be involved in a purchase decision for your product category. Scores above 0.9 indicate a strong match (title and department clearly align with buying authority). Scores between 0.7 and 0.9 indicate a probable match. Scores below 0.7 are included for completeness but may be adjacent stakeholders rather than core committee members.
How are credits calculated for buying committee lookups?
Buying committee enrichment charges 11 credits per committee member returned (since each member includes verified contact data with phone numbers). A typical 7-person committee costs 77 credits. Unmatched lookups where no committee can be identified are not charged. You can set a max_members parameter to control costs.
Next steps
- Full REST reference: /product/api.
- Related glossary: data enrichment, waterfall enrichment.
- Ready to ship? Start free with 30 credits.