AttestClean is a verification API for lead generation teams. Send a lead, get back Accept, Flag, or Reject with the reasons. Prepaid credit, priced per request, no contract.
curl https://api.attestclean.com/v1/email \
-H 'Content-Type: application/json' \
-d '{
"Email": "[email protected]",
"Checks": ["hygiene"],
"ApiKey": "ac_live_..."
}'
{
"Status": "Flag",
"Email": "[email protected]",
"HasMx": true,
"Reasons": ["Role-based address"],
"Hygiene": {
"Category": "Risky",
"Deliverability": "Medium"
},
"ChecksRun": ["validation", "hygiene"],
"Charged": 0.003
}
Every request runs validation. Add hygiene, scoring, or deep enrichment to the same call with the Checks option, and the response gains a section for each one. You set the thresholds.
For batch work and harder calls.
enrich to your checks on email or phone for leads where you need more certainty. On phone it adds line type, carrier, litigator, and SMS flags.One price per request, set by the deepest check you ask for. Prices aren't added together: a request with hygiene and score costs the score price. Deep enrichment is the only add-on. USD, no monthly fee, and bulk rows cost the same.
| Request includes | SKU | Price |
|---|---|---|
| Validation only | email.validation | $0.001 |
| Validation + hygiene | email.hygiene | $0.003 |
| Validation + hygiene + score | email.scoring | $0.0035 |
| Phone | ||
| Validation only | phone.validation | $0.002 |
| Validation + hygiene | phone.hygiene | $0.004 |
| Validation + hygiene + score | phone.scoring | $0.0045 |
Deep enrichment (add enrich to any request) | ||
| Email enrichment | email.enrich | +$0.002 |
| Phone enrichment | phone.enrich | +$0.003 |
| Credit pack | You pay | Credit |
|---|---|---|
| Starter | $25 | $25 |
| Growth | $100 | $105 +5% |
| Scale | $500 | $550 +10% |
| Enterprise | $2,000 | $2,300 +15% |
One-time card payment through Stripe. You can also top up any amount from $10 to $10,000 in the portal.
Two endpoints: one for email, one for phone. JSON in, JSON out. Pass your key as ApiKey in the request body.
Validation always runs. List extra checks in Checks, for example ["hygiene", "score", "enrich"], or send "Hygiene": true, "Score": true, "Enrich": true. Results for each extra check come back in their own section, and every response ends with ChecksRun and Charged.
| Endpoint | Returns |
|---|---|
POST /v1/email | Status, Reasons, DomainExists, HasMx. Adds Hygiene, Score, and Enrichment sections when requested. |
POST /v1/phone | Status, Reasons, NormalizedPhone, StateHint. Adds Hygiene, Score, and Enrichment sections when requested. |
POST /v1/bulk/upload | Job ID for a CSV list, with the same Checks options |
Errors: 401 invalid key, 402 balance too low, 400 missing fields or unknown check. The full reference is in the portal after you sign up.
Create an account, add credit, generate a key, and make your first call.