Enrich companies via API
Company enrichment turns a single domain, company name, or LinkedIn company URL into a firmographic profile: name, industry, employee count, headquarters location and LinkedIn URL. Cleanlist's API sources every field from 25+ providers and returns it as clean JSON. There is no technographic field on a Cleanlist company record, so a tech-stack question goes to an AI column that researches that one company on the open web for 1 credit.
REST · JSON in, JSON out15 fieldsPublic API from Pro
An example call: POST to the company endpoint with a work email, the waterfall tries providers in cost order, and the response returns 15 fields.
- 1 creditA verified work email, however many providers it took to find it.
- 11 creditsEmail and phone number together, on the same call.
- 25+ providersQueried in cost order. The waterfall stops at the first deliverable result.
- 98% / 85%Verified work emails and phone numbers found on our 500-lead benchmark.
10,000+ users, from founders to full sales teams
- Switched from
ZoomInfo - Case study
HackerOneSwitched from
Apollo- Switched from
Clay - Case study
Sumo LogicSwitched from
Clay- Switched from
Apollo - Case study
- Switched from
ZoomInfo - Switched from
ZoomInfo
What one call returns. Up to 15 fields.
A sample response for one company lookup, beside every field the record can carry.
{
"id": "ev_k7r3wq1",
"status": "completed",
"company": {
"name": "Acme Corp",
"domain": "acme.com",
"industry": "Computer Software",
"sub_industry": "SaaS / Cloud Computing",
"size": "201-500",
"employee_count": 340,
"revenue": "$50M-$100M",
"funding_total": "$45M",
"last_funding_round": "Series B",
"last_funding_date": "2025-06-15",
"founded_year": 2019,
"hq_location": "San Francisco, CA, USA",
"technologies": [
"Salesforce",
"HubSpot",
"AWS",
"Segment",
"Snowflake"
],
"linkedin_url": "https://linkedin.com/company/acmecorp",
"description": "Enterprise workflow automation platform for operations teams."
},
"meta": {
"credits_used": 1,
"providers_queried": 25,
"providers_matched": 11,
"confidence": 0.98,
"enriched_at": "2026-04-15T11:05:22Z"
}
}
namestringRegistered company name, matched against corporate databases.domainstringPrimary company website domain.industrystringPrimary industry classification.sub_industrystringMore specific industry vertical.sizestringEmployee count range bucket.employee_countintegerEstimated total employee count from LinkedIn and corporate filings.revenuestringEstimated annual revenue range.funding_totalstringTotal venture funding raised, if applicable.last_funding_roundstringMost recent funding round type: Seed, Series A, B, C, etc.last_funding_datestringDate of most recent funding round (ISO 8601).founded_yearintegerYear the company was founded.hq_locationstringHeadquarters city, state, country.technologiesstring[]Detected tech stack: CRM, marketing automation, cloud, analytics, and more.linkedin_urlstringLinkedIn company page URL.descriptionstringBrief company description from corporate profiles.
Call it from curl, Node or Python. Pay for what comes back.
It's one POST request. Credits come out of one wallet the whole team shares, and a call that finds nothing costs nothing.
curl
curl -X POST https://api.cleanlist.ai/v1/enrich/company \
-H "Authorization: Bearer $CLEANLIST_API_KEY" \
-H "Content-Type: application/json" \
-d '{"email": "jane@acme.com"}'Node.js
const response = await fetch("https://api.cleanlist.ai/v1/enrich/company", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.CLEANLIST_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ email: "jane@acme.com" }),
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
console.log(await response.json());Python
import os
import requests
response = requests.post(
"https://api.cleanlist.ai/v1/enrich/company",
headers={"Authorization": f"Bearer {os.environ['CLEANLIST_API_KEY']}"},
json={"email": "jane@acme.com"},
)
response.raise_for_status()
print(response.json())- SearchFree, unlimited
- Verified work email1 credit
- Phone number10 credits
- Email and phone number11 credits
- Validation0.5 credits
- AI qualification5 credits
- A call that finds nothing0
What teams do with it.
ABM account research
Enrich your target account list with firmographics, tech stack, and funding data to prioritize accounts and personalize outreach without manual research.
Market segmentation
Enrich a list of domains to segment by industry, size, and location, then build targeted campaigns for each segment.
Competitive intelligence
Monitor competitor customer domains to track their tech stack changes, funding events, and growth signals.
Lead-to-account matching
Match incoming leads to enriched company records for account-based routing. Attach firmographics to every lead automatically.
The questions that come up first.
What input does the company enrichment endpoint accept?
You can pass a domain name, company name, or LinkedIn company URL. Domain is the most reliable identifier with a 98%+ match rate. Company name matching works best when you also include a country or domain hint to disambiguate common names.
How accurate is the revenue estimate?
Revenue estimates are sourced from public filings, funding databases, employee count models, and third-party data providers. For public companies, accuracy is within 5%. For private companies, estimates are range-based (e.g., '$10M-$25M') and are accurate within one range bucket for approximately 80% of companies.
How many technologies can be detected per company?
Cleanlist detects technologies across 200+ categories including CRM, marketing automation, analytics, cloud infrastructure, development tools, and more. A typical mid-market SaaS company returns 15-40 detected technologies. Detection is based on website scanning, job posting analysis, and third-party technology databases.
Does company enrichment cost the same as contact enrichment?
Company enrichment costs 1 credit per lookup and returns firmographics. It returns no technographic field, because Cleanlist carries none. If you also need contact data for people at the company, use the contacts or buying-committees endpoint, which costs 11 credits per record with phone numbers.
Enrich companies in production.
The public API starts on Pro, and a call that returns nothing is never charged.
14 days of Pro, free.
