The job
You have a contact or company list and need verified contact fields. A single provider can leave gaps, while a custom fallback script is difficult to inspect and reuse. Deepline represents the route as a maintained or owned Play.
Read the work email and phone lookup feature page for supported inputs, outputs, validation rules, and failure behavior. This page covers the workflow for a contact list.
Step 1: Prepare a representative input
first_name,last_name,company,domain
Jane,Smith,Acme Corp,acme.com
John,Doe,Widget Inc,widget.io
Step 2: Inspect the maintained Play
deepline plays search "verified work email waterfall" --json
deepline plays describe prebuilt/name-and-domain-to-email-waterfall-batch --json
Confirm that the input contract matches your CSV and review the current output fields and workflow identity.
Step 3: Run a pilot
awk 'NR <= 4' leads.csv > leads-pilot.csv
deepline plays run prebuilt/name-and-domain-to-email-waterfall-batch --csv leads-pilot.csv --watch
Review accepted values, no-result rows, provider provenance, usage, and errors. Match-rate lift and cost depend on your input, geography, provider route, validation policy, and billing mode.
Step 4: Run the full list
deepline plays run prebuilt/name-and-domain-to-email-waterfall-batch --csv leads.csv --watch
Step 5: Add reviewed activation
If the result should write to a CRM or sequencer, keep enrichment, review, and activation in an owned Play:
deepline tools search "add verified contacts to Instantly campaign" --json
# Your agent authors verified-outreach.play.ts from the inspected contracts.
deepline plays check verified-outreach.play.ts
deepline plays run --file verified-outreach.play.ts --csv leads-pilot.csv --watch
deepline plays publish verified-outreach.play.ts
deepline plays describe verified-outreach --json
deepline plays versions --name verified-outreach --json
Billing
- BYOK: Deepline charges no platform fee for provider requests. Your provider contracts control their own charges.
- Managed billing: Some stages charge for a returned result; others charge per request or page. A no-result row can still carry usage from attempted calls.
- Estimate from evidence: Use a representative pilot and the live pricing contract. Do not assume one fixed per-row waterfall price.
Common questions
1What if no provider finds an email?+
The Play returns its defined no-result output with run status and usage available for review. In BYOK mode Deepline does not charge for provider requests; in managed mode an attempted provider call may still be billable.
2Can I customize provider order?+
Yes. Start from the inspected maintained contract, create an owned .play.ts workflow, edit its provider stages, and run deepline plays check before executing it.
3What match rate should I expect?+
Waterfall enrichment can fill gaps by trying multiple providers in sequence. The lift varies by ICP, region, input quality, field, provider route, and validation policy, so test it on representative records.