Bulk Email Validator (syntax, MX, disposable, role) avatar

Bulk Email Validator (syntax, MX, disposable, role)

Pricing

from $0.30 / 1,000 email verifieds

Go to Apify Store
Bulk Email Validator (syntax, MX, disposable, role)

Bulk Email Validator (syntax, MX, disposable, role)

Cleans an email list without sending mail: RFC syntax, domain MX records, disposable-domain and role-account detection. Does not confirm that a mailbox exists on the Apify cloud (port 25 is blocked). Pay per email. No scraping, no login, no LLM.

Pricing

from $0.30 / 1,000 email verifieds

Rating

0.0

(0)

Developer

Authentic Growth LLC

Authentic Growth LLC

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Security

Limited permissions

Share

Bulk Email Validator (syntax · MX · disposable · role)

Cleans an email list without sending any mail. For each address it checks RFC syntax, resolves the domain's MX (or A) records, and flags disposable domains and role accounts (info@, support@, …).

What it does not do on the Apify cloud: it does not confirm that a mailbox exists, because outbound port 25 is blocked there. A valid result with reason: mx_only means "well-formed, and the domain accepts mail", not "this person's mailbox exists". If you run the Actor on your own infrastructure with smtpCheck: true, it also asks the mail server about the mailbox (RCPT TO, then RSET; nothing is delivered) and detects catch-all domains.

No scraping, no login, no third-party API key, no LLM. Public DNS and SMTP only.

Output (one row per email)

fieldmeaning
statusvalid / invalid / risky / unknown
reasonsyntax, no_mx, smtp_rejected, smtp_accepted, mx_only, disposable, role_account, catch_all, smtp_timeout, smtp_tempfail, …
domain, mxdomain and the MX host that answered
disposable, role_account, catch_allbooleans (catch-all is null when SMTP check is off or inconclusive)
smtp_code, smtp_messageraw SMTP reply for your own rules

A SUMMARY record in the key-value store gives totals per status.

Pricing

Pay per event: one email-verified event per input address. Duplicates are removed before counting. The run stops when your spending limit is reached, and you are never charged beyond it.

Limits and honesty

  • Some providers (Gmail, Outlook, Yahoo) answer RCPT TO for every mailbox or throttle unknown senders. Those come back as catch_all or unknown; that is a property of the provider, not a bug.
  • On the Apify cloud outbound port 25 is blocked, so the SMTP mailbox check cannot run there: smtpCheck is off by default and the Actor returns syntax + MX + disposable + role results (reason: mx_only). Run the Actor locally (apify run) or on your own server with smtpCheck: true for mailbox-level results and catch-all detection.
  • The disposable-domain list is small and built in; it will grow in later versions.

Local run

pip install -r requirements.txt
python -m src.main # reads ./storage/key_value_stores/default/INPUT.json

Published by オーセンティック・グロース合同会社 (Authentic Growth LLC, Japan). Support is handled by an automated agent and answered as such.