Operations
Verification
Debounce email verification, status meanings, and handling failures
What This Does
Verification is the third pipeline stage. It sends filtered contact emails to the Debounce API for validation. This prevents sending campaigns to invalid emails (which would hurt sender reputation).
How It Works
- Filtered contacts are batched and sent to the Debounce API
- Debounce returns a status per email:
deliverable,risky,undeliverable,unknown - Only
deliverableand (optionally)riskycontacts move to batching - Results are stored in the
verified_contactstable
Verification Statuses
| Status | Meaning | Action |
|---|---|---|
deliverable | Valid email, safe to send | Moves to batching |
risky | Email exists but may bounce | Configurable — usually included |
undeliverable | Invalid or non-existent email | Excluded from pipeline |
unknown | Debounce couldn't determine | Excluded by default |
How To Use It
Monitoring Verification
- Go to Contacts → select workspace and month
- The pipeline progress bar shows verified count vs. filtered count
- On the Status Page, check the Celery Workers module for verification queue depth
Manual Recovery (Without list_id)
If Debounce verification fails mid-batch and you have results in a CSV:
Scope by month and status to avoid touching other pipeline rows.
Common Issues
| Symptom | Cause | Fix |
|---|---|---|
| Verification queue > 5K deep | Large batch submitted or Debounce rate-limited | Normal for large batches — Debounce rate limits at ~3K/hour. Check VerificationBacklogSLOBreach alert |
All contacts marked undeliverable | Debounce API key expired or billing issue | Check DEBOUNCE_API_KEY in backend env, verify Debounce account status |
| Verification stuck (no progress) | Worker crashed or Debounce API down | Check Status Page → Logs → celery-verification. Restart: on server, docker restart celery-verification |
| Partial results | Task timed out mid-verification | Re-run the verification stage for the affected batch. Already-verified contacts are skipped (idempotent) |
Related Alerts
- VerificationBacklogSLOBreach: Queue >15K contacts (>4 hours to clear at 3K/hour)
- DebounceAPIHighErrorRate: Debounce returning >10% errors — likely rate limiting