$ ctc verify <email>
Single deliverability check
0.02 credits per verification
One command answers “can I send to this?” — sub-second, 0.02 credits per address, single or batch, with a status and confidence score your agent can act on.
Mailbox providers do not read your copy. They read your bounce rate, and they read it fast. A few percent of dead addresses in one campaign is enough to push the rest of your mail toward spam — including the transactional mail you actually care about.
Lists decay continuously, so verification has to happen at send time, not at import time. That only works if checking is cheap and scriptable. ContactCTL runs free local syntax and MX checks first, then full deliverability verification — and it is built to sit inside a script, a cron job, or an agent loop.
At 0.02 credits per verification, checking a 5,000-row list costs 100 credits. Skipping the check costs a sending domain.
Verify one address and read the verdict, or pass a CSV and get every row back annotated — verify batch defaults to stdout, so it pipes.
With --json the verdict is machine-readable, so a guard clause is one line. Single-mode verify also exits on its verdict — 0 deliverable, 2 undeliverable, 3 risky — so a bare ctc verify "$EMAIL" && queue_send "$EMAIL" chain works without jq.
if ctc verify "$EMAIL" --json | jq -e '.status == "deliverable"' >/dev/null; then queue_send "$EMAIL" fi
Every command reports its credit cost in the output. Preview any spend with --estimate at zero cost.
$ ctc verify <email>
Single deliverability check
0.02 credits per verification
$ ctc verify <file.csv> [out.csv]
Batch verify, stdout by default
0.02 credits per row
Full datasheet: credit costs in the docs · plan pricing on /pricing.