Enrich Salesforce leads via API
Enrich Salesforce leads directly via API or managed sync — fill missing emails, phones, titles, and firmographics without a Data.com subscription or ZoomInfo annual contract. Credit-based pricing, no seat fees.
AuthorizationBearer clnl_live_…
Content-Typeapplication/json
{
"email": "jane@acme.com"
}- 1 creditA verified work email, however many providers it took to find it.
- 11 creditsEmail and direct dial together, on the same call.
- 25+ providersQueried in cost order. The first source that returns wins, and a miss costs nothing.
- 98% / 85%Verified work email and direct dial, measured on a 500-lead stratified test.
One call in.13 fields back.
The payload for a single salesforce lead lookup, and every field the record can carry. Same shape on every plan.
{
"id": "ev_sf3k9p7",
"status": "completed",
"salesforce_lead": {
"sf_lead_id": "00Q5e000009XyZaEAK",
"email": "david.kim@enterprise.com",
"email_status": "valid",
"title": "Senior Director of Sales Operations",
"seniority": "director",
"phone": "+1-212-555-0189",
"mobile": "+1-917-555-0234",
"company": "Enterprise Solutions Inc.",
"industry": "Information Technology",
"employee_count": "501-1000",
"revenue": "$100M-$250M",
"icp_score": 91,
"enrichment_delta": {
"fields_added": [
"phone",
"mobile",
"seniority",
"revenue"
],
"fields_updated": [
"title",
"employee_count"
]
}
},
"meta": {
"credits_used": 11,
"providers_queried": 25,
"providers_matched": 9,
"confidence": 0.95,
"enriched_at": "2026-04-15T08:22:17Z"
}
}- sf_lead_idstringSalesforce Lead record ID. Used to match enrichment results back to the correct record.
- emailstringVerified work email. If the existing Salesforce email is invalid, a new verified email is returned.
- email_statusenumVerification result for the email: valid, invalid, risky, catch-all, disposable, role-based.
- titlestringCurrent job title, normalized. Updates the Salesforce Title field if changed.
- seniorityenumSeniority level derived from title normalization.
- phonestringDirect dial phone number for the lead.
- mobilestringMobile phone number.
- companystringCurrent company name, cross-verified against Salesforce Company field.
- industrystringIndustry classification, mapped to Salesforce picklist values when possible.
- employee_countstringCompany size range.
- revenuestringEstimated annual revenue range.
- icp_scoreintegerICP fit score (0-100) based on your configured criteria.
- enrichment_deltaobjectShows which fields were added (previously empty) and which were updated (value changed). Useful for audit trails.
Call it from anything.Pay for what comes back.
One POST from curl, Node or Python. Credits are drawn from one wallet the whole team shares, and a call that finds nothing is never charged.
curl -X POST https://api.cleanlist.ai/v1/enrich/salesforce_lead \
-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.salesforce_lead({
email: "jane@acme.com",
});
console.log(result.salesforce_lead.title);from cleanlist import Cleanlist client = Cleanlist(api_key=os.environ["CLEANLIST_API_KEY"]) result = client.enrich.salesforce_lead(email="jane@acme.com") print(result["salesforce_lead"]["title"])
- SearchFree, unlimited
- Verified work email1 credit
- Direct dial10 credits
- Email and direct dial11 credits
- Validation0.5 credits
- AI qualification5 credits
- A call that finds nothing0
One shared wallet across the team. The Free plan runs on 30 credits a month.
What teams do with it, and what they ask first.
New lead enrichment trigger
Set up a Salesforce flow to call Cleanlist when a new lead is created. Automatically fill title, phone, and firmographics before routing to the assigned rep — so they never work an incomplete record.
Replace Data.com / ZoomInfo
Switch from annual contract enrichment providers to Cleanlist's credit-based model. Pay per enrichment, not per seat. No minimums, no annual lock-in. Most teams save 40-60% on enrichment costs.
Pre-campaign list enrichment
Before launching a Salesforce campaign, run the target leads through enrichment. Verify emails, fill phone numbers, and score against ICP. Only include leads with valid emails and high ICP scores in the campaign.
Stale lead re-enrichment
Run leads that have been untouched for 6+ months through re-enrichment. Catch job changes, update titles, and find new email addresses for contacts who moved companies.
Does Cleanlist write enrichment data back to Salesforce automatically?
Yes, with the managed sync option. Connect your Salesforce org through the Cleanlist dashboard, configure field mapping, and enriched data writes directly to your Lead records. You control which fields get updated and can set rules to prevent overwriting existing data. The API option returns JSON for teams that prefer to handle the write-back themselves.
How does Cleanlist compare to Salesforce Data.com for lead enrichment?
Data.com (now retired and replaced by limited Salesforce data features) was a single-source database. Cleanlist queries 15+ independent providers in sequence, so coverage is substantially higher — especially for phone numbers and mid-market companies. Pricing is credit-based (no annual contract) and typically 40-60% cheaper than what teams were paying for Data.com or ZoomInfo Salesforce integrations.
What Salesforce editions are supported?
Cleanlist works with all Salesforce editions that support REST API access: Professional (with API add-on), Enterprise, Unlimited, and Developer editions. The managed sync uses OAuth 2.0 for authentication and respects Salesforce field-level security and sharing rules.
Can I enrich Salesforce Contacts and Accounts too?
Yes. Cleanlist has separate endpoints for Salesforce Leads, Contacts, and Accounts. Each endpoint is optimized for the specific object type: Lead enrichment focuses on qualification, Contact enrichment on data accuracy, and Account enrichment on firmographics and buying committee mapping.
Enrich Salesforce leads in production.
The public API is on Pro and Scale. Search costs nothing on every plan, and a call that returns nothing is never charged.
Related reading: data enrichment and waterfall enrichment. Plans and credit rates are on pricing.