Install
openclaw skills install @smtping/smtping-email-verificationVerify email addresses with the SMTPing API before sending, importing or storing them. Use when the user asks to verify, validate, check or clean one email address or a list (CSV, pasted text, CRM export), wants to know which contacts are safe to email, asks about bounces, disposable, spamtrap, spambot or complainer addresses, or asks for their SMTPing credit balance.
openclaw skills install @smtping/smtping-email-verificationVerify email addresses through SMTPing and turn the results into a clear decision for the user: send, remove, or review.
An API key must be available in the SMTPING_API_KEY environment variable.
If it is missing, ask the user to create a key at https://app.smtping.com (free account, 25 free credits per day) and set it. Never invent or guess a key, and never print the key back in full.
verify_email, verify_list, get_bulk_job, check_threat, get_credits): use them. They handle retries and bulk polling.curl as shown below.npx -y @smtping/mcp, see https://smtping.com/email-verification-mcp) or give them the curl command to run.get_credits and job status are free.Base URL: https://api.smtping.com/api/v1
Auth header on every request: X-API-Key: $SMTPING_API_KEY
curl -s -X POST https://api.smtping.com/api/v1/verify/single \
-H "X-API-Key: $SMTPING_API_KEY" \
-H "Content-Type: application/json" \
-d '{"email": "someone@example.com"}'
For 10 addresses or fewer, call the single endpoint for each. Above that, create a bulk job:
curl -s -X POST https://api.smtping.com/api/v1/verify/bulk \
-H "X-API-Key: $SMTPING_API_KEY" \
-H "Content-Type: application/json" \
-d '{"emails": ["a@example.com", "b@example.com"]}'
# returns { "jobId": "...", "status": "Queued" }
Poll the job every 5 to 30 seconds (increase the interval as you go):
curl -s https://api.smtping.com/api/v1/verify/bulk/JOB_ID \
-H "X-API-Key: $SMTPING_API_KEY"
# status: Queued | Processing | Succeeded | Failed | Cancelled
When status is Succeeded, fetch the results:
curl -s https://api.smtping.com/api/v1/verify/bulk/JOB_ID/result \
-H "X-API-Key: $SMTPING_API_KEY"
Large jobs can take minutes. If the user does not want to wait, give them the job id so they can come back to it.
curl -s -X POST https://api.smtping.com/api/v1/checks/spamtrap \
-H "X-API-Key: $SMTPING_API_KEY" \
-H "Content-Type: application/json" \
-d '{"email": "someone@example.com"}'
# also: /checks/disposable, /checks/spambot, /checks/complainer
curl -s https://api.smtping.com/api/v1/credits -H "X-API-Key: $SMTPING_API_KEY"
SMTPING_API_KEY.Map every status to one of three bands and report by band:
| band | statuses | what to tell the user |
|---|---|---|
| safe | valid, alias | Send. |
| avoid | invalid, spamtrap, disposable, blacklisted, complainer, spambot, inbox_full | Remove before sending. |
| judgement | catch_all, unknown, role and anything else | Review. Send only to engaged or high-value contacts, in small batches. |
Explain the risky ones in one line each when they appear:
email,status,band when the list is longer than about 20 rows.More: https://smtping.com/docs and the verdict guide at https://smtping.com/13-verdict-types-guide