API Reference · core
Enrich records with technographic research via API
Cleanlist does not sell technographic data. There is no technologies field on a Cleanlist record and no tech-stack filter in People Search or Company Search: a live probe of the Cleanlist Company Search API on August 7, 2026 sent a technologies key and the backend rejected it with a validation error. What Cleanlist does have is AI columns, also called Smart Agents. You write a research question in plain English and an agent researches that one row on the open web at run time, for 1 credit per row on the Custom AI column. It can tell you what a company appears to run. It cannot hand you every company running Salesforce. Last updated August 7, 2026.
Endpoint
POST https://api.cleanlist.ai/v1/enrich/smart_agentRequest
POST https://api.cleanlist.ai/v1/enrich/smart_agent
Authorization: Bearer clnl_live_...
Content-Type: application/json
{
"email": "jane@acme.com"
}Response
{
"task_id": "tsk_3f9a21c4",
"status": "completed",
"agent": "custom_ai",
"real_endpoint": "POST https://api.cleanlist.ai/api/v2/smart-agents/run",
"lead_id": "ld_88213",
"input": {
"company_domain": "acme.com",
"prompt": "Does this company appear to use Salesforce? Answer yes, no or unknown, and cite the page you used."
},
"output": {
"answer": "unknown",
"reasoning": "No page on acme.com names a CRM. A 2026 revenue operations job posting mentions HubSpot, which is marketing automation and does not confirm a CRM.",
"sources": [
"https://acme.com/careers/revenue-operations-manager"
],
"confidence": "low"
},
"credits_charged": 1,
"note": "Per-row research computed at query time. Cleanlist stores no technographic field, so this answer is not filterable, not sortable across a market, and not a list-building input."
}Field reference
| Field | Type | Description |
|---|---|---|
| task_id | string | Smart agent run id. Poll GET /api/v2/smart-agents/{id} until status is completed. Cleanlist API v2 has no webhooks. |
| agent | string | Which AI column ran. Custom AI is 1 credit per row, Title Normalizer 0.5, Company Intel 2, Pain Point Hypothesis 2, Cold Intro Email 3. |
| input.prompt | string | Your research question in plain English. This is the entire interface. There is no technology taxonomy to pick from and no category list. |
| output.answer | string | What the agent concluded for this one row. Free text shaped by your prompt, not a normalized technology identifier. |
| output.sources | string[] | The URLs the agent actually read. Spot-check these on a sample. Open-web research can be stale or wrong. |
| output.confidence | string | The agent self-report. Not a calibrated probability and not comparable row to row. |
| credits_charged | integer | Credits actually billed for the run. Enrichment on Cleanlist is pay-for-results. |
| technologies | not available | Cleanlist returns no technologies array. The Company Search backend rejected a technologies filter key with a validation error on 2026-08-07. |
| detected_at / first_detected | not available | Cleanlist keeps no detection history, so you cannot diff a stack over time or fire an adoption trigger. |
| categories | not available | There is no technology category taxonomy on any Cleanlist surface. Categories are something an indexed technographic vendor maintains. |
Code samples
curl -X POST https://api.cleanlist.ai/v1/enrich/smart_agent \
-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.smart_agent({
email: "jane@acme.com",
});
console.log(result.smart_agent.title);from cleanlist import Cleanlist
client = Cleanlist(api_key=os.environ["CLEANLIST_API_KEY"])
result = client.enrich.smart_agent(email="jane@acme.com")
print(result["smart_agent"]["title"])Common use cases
Take 200 accounts you already built from industry, headcount and HQ filters, then run one AI column asking whether each appears to run a given tool. Search cost 0 credits. The research costs 1 credit per row on the Custom AI column, so 200 rows is 200 credits.
Sample 30 accounts on the free tier (30 credits per month, no card) and see how often the question is even answerable from public pages. If the hit rate is poor, you have learned that this signal is not published and no amount of budget fixes it.
The run returns the URLs it read in the sources array. A rep can open the careers page or case study the agent used and reference it directly, which an indexed boolean field cannot give you.
When a form submission lands, enrich the record and run one research question on it. One row, one credit, seconds. This is the shape per-row research is actually good at.
Pricing
Credit-based, no per-seat fees. This endpoint uses the standard enrichment rate:
- Email only: 1 credit per enriched smart_agent.
- Email + phone: 11 credits per enriched smart_agent.
- Free tier: 30 credits/mo. See all pricing.
FAQ
Does Cleanlist have technographic data?
No. Cleanlist has no technographic data field and no tech-stack filter. A live probe of the Cleanlist Company Search API on August 7, 2026 sent a technologies filter key and the backend returned a validation error and rejected the key. The company filter dimensions that do work are company name, domain, industry, headcount band, HQ location, company type and year founded, plus two funding keys (funding stage and last funding round type) that the API accepts but that return nothing today because the underlying column is empty. Cleanlist is an orchestration layer over external contact-data providers rather than a data owner, and no provider on the current contract supplies a technology graph.
Can I filter or search companies by the technology they use in Cleanlist?
No. Cleanlist Company Search and Cleanlist People Search both reject a technology filter, so there is no way to ask Cleanlist for every company running Salesforce, HubSpot, Shopify or anything else. People Search exposes about 24 distinct filter fields covering title, seniority, years in role, location, skills, education, past titles and companies, industry and headcount. Company Search exposes 9 dimensions. Neither set includes technology, revenue or intent. If technology is the first filter in your list-building brief, Cleanlist is not the tool that builds that list. It is the tool that enriches and verifies the list once you have it. Search costs 0 credits, so you can confirm this yourself before spending anything.
What is the difference between an indexed technographic field and a Cleanlist AI column?
An indexed technographic field is precomputed for millions of domains and stored, so you can query it in reverse: give me every company running Salesforce. A Cleanlist AI column is computed at run time for one row, so you can only ask it forward: does this company appear to run Salesforce. The consequences are practical. The AI column bills per row (1 credit on Custom AI), it takes seconds per row rather than milliseconds, it cannot build a list, it cannot be sorted or segmented across a market, and the same question can return a different answer next month because the open web changed underneath it.
How much does a Cleanlist AI column cost per row?
Cleanlist AI columns are priced per row: Custom AI is 1 credit, Title Normalizer 0.5, Company Intel 2, Pain Point Hypothesis 2 and Cold Intro Email 3. A tech-stack question across 1,000 accounts on the Custom AI column is therefore 1,000 credits. Credits come from your plan: 30 per month on the free tier with no card, 1,500 on Starter at $79 per month, 5,000 on Pro at $229 and 15,000 on Scale at $599, with 25% off when billed annually. Search costs 0 credits, so you can define and redefine the cohort for free and only pay on the research step. Until August 31, 2026 the code 33FOREVER takes 33% off for life for new customers.
How accurate is AI-researched tech stack data?
Cleanlist publishes no accuracy figure for AI-column research, because the answer depends on your prompt and on what the target company has chosen to publish. Treat it as a research assistant reading the open web, not as a measured dataset. It can see a public case study, a careers page naming a tool, a partner directory listing, an integration page or a press release. It cannot see anything behind a login, anything unpublished, or anything its crawler could not reach in that moment. Every run returns the URLs it used, so the correct workflow is to spot-check the sources on a sample before trusting the column across a whole list. The 98% verified email and 85% direct dial figures Cleanlist publishes are product specs for contact data and do not apply here.
Can Cleanlist tell me when a company adopts or drops a technology?
No. Cleanlist stores no detection history, so there is no first-detected date, no change log and no adoption trigger. Change detection requires a vendor that snapshots the same domains repeatedly and diffs them. You could approximate it by rerunning the same AI column on the same list on a schedule and diffing the answers yourself, but each run bills again at 1 credit per row and the output is free text rather than a stable technology identifier, so the diff is noisy. Cleanlist API v2 also has no webhooks, so any scheduled job polls for its own results. If adoption triggers are the point of the project, use a dedicated technographic vendor.
Where does real technographic data come from?
Real technographic data comes from vendors that crawl and index the web at scale. BuiltWith states it tracks "125,238+ internet technologies which include analytics, advertising, hosting, CMS and many more", and on the ecommerce side "2 billion unique eCommerce products across over 26 million eCommerce websites" (builtwith.com, retrieved August 7, 2026). HG Insights, Datanyze and Wappalyzer sell comparable indexes. Detection generally combines page-source signals such as script tags, meta tags and DNS records with job-posting text and published vendor customer lists. That crawl-and-index model is what makes a reverse query possible, and it is exactly the asset Cleanlist does not own.
How much does real technographic data cost?
BuiltWith publishes list pricing of $295 per month for Basic, $495 for Pro and $995 for Team (builtwith.com/plans, retrieved August 7, 2026). Enterprise technographic vendors such as HG Insights price by annual contract rather than a public rate card. Set against that, Cleanlist per-row research costs 1 credit per account on the Custom AI column, so researching 500 accounts once is 500 credits, which sits inside a Starter plan at $79 per month. These are different products at different prices. Pay for the index when you need to find companies by technology. Pay per row when you already know the companies and want a researched note on each one.
Can I build a list of every company running Salesforce with Cleanlist?
No. Cleanlist cannot build a list from a technology, because there is no technology field to query and the Company Search API rejects a technologies filter. The workable pattern runs in the other order: build the list from a dimension Cleanlist does support (industry, headcount band, HQ location, title, seniority), save it, run an AI column across the saved rows to research the stack question, then filter your own sheet or CRM on the answer. Search costs 0 credits and the research costs 1 credit per row. That works for hundreds or a few thousand accounts. It does not work for scanning a market of a million domains.
What is the API endpoint for running a Cleanlist AI column?
AI columns run through the Smart Agents group on Cleanlist REST API v2: POST https://api.cleanlist.ai/api/v2/smart-agents/run to dispatch, GET /api/v2/smart-agents/{id} to poll. Authentication is a Bearer key with the clapi_ prefix. API v2 has no webhooks, so results are polled. Quote paid bulk work first with POST /api/v2/credits/estimate, which returns a signed quote the server enforces, so a job cannot exceed the price you were quoted. Rate limits are 60 requests per minute per organization and 30 per minute per API key. REST API access requires a Pro plan or above. There is no technographic enrichment endpoint on any version of the Cleanlist API.
Does Cleanlist ICP scoring use technographic data?
No. Cleanlist ICP scoring rates a row 0 to 100 from firmographic attributes and AI-researched signals. Technographic attributes are not an input, because there is no technographic field to feed it. What you can do is run an AI column that asks your stack question, write the answer back onto the row, and use it as your own qualifier alongside the ICP score. That is weighting you apply on your side rather than a scoring input on the Cleanlist side, and it costs 1 credit per row researched on the Custom AI column.
Should I use Cleanlist for technographics at all?
Use Cleanlist here only when the account list already exists and you want a researched note per row with its sources attached. Cleanlist is strongest at the step after: taking a defined cohort and returning verified contact data, at 1 credit for a verified email, 10 for a phone, 11 for both, with search at 0 credits and enrichment charged only on a match. If your project starts with a technology and needs a list out the other end, buy an indexed technographic dataset first and bring the resulting domains to Cleanlist for the contacts. The Cleanlist free tier is 30 credits per month with no card, which is enough to test the AI column on 30 accounts before committing.
Next steps
- Full REST reference: /product/api.
- Related glossary: data enrichment, waterfall enrichment.
- Ready to ship? Start free with 30 credits.