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_committee

Request

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

FieldTypeDescription
domainstringTarget account domain used for the lookup.
company_namestringCompany name associated with the domain.
company_sizestringEmployee count range — affects expected committee size.
committee_sizeintegerNumber of committee members identified.
membersarrayArray of committee members with role, contact data, and confidence.
members[].roleenumBuying role: economic_buyer, champion, influencer, technical_evaluator, end_user, blocker.
members[].namestringFull name of the committee member.
members[].titlestringCurrent job title, normalized.
members[].emailstringVerified work email address.
members[].email_statusenumEmail verification result: valid, invalid, risky, catch-all.
members[].seniorityenumSeniority level classification.
members[].confidencefloat0.0 to 1.0 confidence that this person is part of the buying committee for your product category.
seniority_mixobjectBreakdown of committee members by seniority level.

Code samples

curl
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"}'
Node.js
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);
Python
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

ABM multi-threaded outreach

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.

Deal acceleration

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.

Expansion 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.

Competitive deal strategy

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

30 credits included. No credit card required. Set up in 5 minutes.