Verified work emails, found by an AI agent.
An AI agent descends a five-tier waterfall — free signals first, paid vendors only when nothing cheaper resolves. The AI judges weak signals, ranks LinkedIn sources, and learns every domain pattern so the next call is cheaper.
from waterfallreach import Client client = Client(api_key="wr_live_…") result = client.enrich( linkedin_url="linkedin.com/in/jane-doe", # or: name, company, domain, email, phone tier_ceiling=3, # skip Tier 4 risk_ceiling="T2", # compliance cap ) print(result.email, result.verified)
// exited at tier 0 — free signals only { "email": "jane.doe@acme.com", "verified": true, "title": "VP Engineering", "company": "Acme Inc", "domain": "acme.com", "source": "tier_0_permutation", "risk_class": "T0", "tier_exited": 0, "cache_hit": true }
Three outcomes that compound.
Each tier of the waterfall optimizes a different axis. Together they make the system cheaper, more accurate, and less risky as you use it.
Skip the vendor lock-in
Replace three single-vendor enrichment tools with one waterfall. Cost-per-verified-contact drops because cheaper tiers run first.
Bypass gateway false-positives
MX fingerprinting detects Proofpoint, Mimecast, Barracuda, and Cisco. Catch-all probes walk the MX priority chain.
T0–T3 source-risk class
Every email arrives with a legal-risk class. Customers cap the ceiling. GDPR posture without code changes.
Five tiers. Independently bypassable.
Set a tier ceiling. Cap the compliance class. Early exit on the first verified match. The cascade descends only as far as it needs to.
Free signals
POST /v1/enrich?ceiling=020+ public-records modules. An LLM fuses them into a ranked candidate.
Self-hosted SMTP
POST /v1/verify-smtpMX fingerprinting detects gateways. Catch-all probe walks the chain.
LinkedIn router
POST /v1/enrich/linkedinMulti-source router. An LLM ranker picks the best candidate.
Paid finders
POST /v1/enrich?ceiling=3Premium vendors. Only fired when cheaper tiers cannot resolve.
Three ways to call it.
One core. Three integration surfaces — pick whatever fits your stack.
FastAPI service
Docker container. Health checks, structured logs, idempotency keys, SHA-256 row fingerprints.
docker pull ghcr.io/.../waterfallreach
pip install
Drop-in client for batch pipelines. Async-friendly. Streaming results over large lists.
pip install waterfallreach
Workflow templates
Pre-built nodes for orchestration. Bulk enrich, verify, and reconciliation flows.
n8n import wr-bulk-enrich
Pilot access is open.
Bring a list of LinkedIn URLs, domains, or names. We'll run the cascade and show you exactly which tier each row exits on — and what it would cost.