Skip to content
14 days of Pro, free.Sign up with your work email for 100 extra credits.Start free trial

Enrich webhook payloads via API

POST any webhook payload to Cleanlist AI and get an enriched version back.

An example call: POST to the webhook_payload endpoint with a work email, the waterfall tries providers in cost order, and the response returns 3 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 fromZoomInfo
  • Case study
  • HackerOneSwitched fromApollo
  • Switched fromClay
  • Case study
  • Sumo LogicSwitched fromClay
  • Switched fromApollo
  • Case study
  • Switched fromZoomInfo
  • Switched fromZoomInfo

What one call returns. Up to 3 fields.

A sample response for one webhook payload lookup, beside every field the record can carry.

Response200 OK · webhook_payload
{
  "id": "ev_abc123",
  "webhook_payload": {
    "event_id": "<event_id>",
    "input_payload": "<input_payload>",
    "enriched_payload": "<enriched_payload>"
  },
  "meta": {
    "credits_used": 11,
    "providers_queried": 25
  }
}
Field reference3 fields
  • event_idstring
  • input_payloadstring
  • enriched_payloadstring

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.

RequestPOST · webhook_payload

curl

curl -X POST https://api.cleanlist.ai/v1/enrich/webhook_payload \
  -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/webhook_payload", {
  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/webhook_payload",
    headers={"Authorization": f"Bearer {os.environ['CLEANLIST_API_KEY']}"},
    json={"email": "jane@acme.com"},
)
response.raise_for_status()
print(response.json())
What a call costsper webhook_payload
  • 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

Enrich webhook payloads in production.

The public API starts on Pro, and a call that returns nothing is never charged.

14 days of Pro, free.