Bulk Email Verifier
Under maintenancePricing
$1.00 / 1,000 email verifieds
Bulk Email Verifier
Under maintenanceBulk email verifier for syntax, MX, disposable and role checks. Return deliverability signals and a 0–100 score; pay only for successfully verified emails.
Pricing
$1.00 / 1,000 email verifieds
Rating
0.0
(0)
Developer
PROOFNEXA
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
18 days ago
Last modified
Categories
Share
Verify up to 500 email addresses for syntax, MX, disposable, and role-based risk signals.
Get one structured Dataset record per unique input address, with a 0–100 score and valid / risky / invalid status.
Pay only for saved, syntax-valid results that complete the email-verified event; failed, duplicate, syntax-invalid, and no-MX results are not charged.
Input
emails is required and accepts either a JSON string array or CSV/newline-delimited text. timeoutMs is optional and applies to the DNS MX check.
{"emails": ["person@gmail.com","alerts@mailinator.com","not-an-email"],"timeoutMs": 1500}
CSV text is also accepted:
person@gmail.comalerts@mailinator.comnot-an-email
The maximum is 500 unique addresses. Duplicate inputs are emitted once and are not charged.
Output
Each unique input address produces at most one Dataset record:
| Field | Meaning |
|---|---|
email | Trimmed input address |
isValidSyntax | Conservative syntax check |
hasMx | Whether the domain returned at least one MX record |
isDisposable | Match against the built-in disposable-domain baseline |
isRoleBased | Common role mailbox prefix such as support@ or sales@ |
score | 0–100 heuristic score, not a delivery guarantee |
status | valid, risky, or invalid |
checkedAt | ISO-8601 check timestamp |
smtpReachable | Always null; retained for schema compatibility, because this Actor never probes SMTP |
Verification and billing boundaries
- DNS MX lookup uses Node.js built-in DNS resolution. No paid enrichment API is used.
- The Actor never opens an SMTP connection, sends
RCPT TO, sends an email, or attempts mailbox discovery. This keeps the check read-only and avoids provider-side connection blocks. validmeans the syntax and domain-level signals passed; it is not proof that the individual mailbox exists or can receive mail.- A Dataset write happens before
Actor.charge({ eventName: "email-verified", count: 1 }). - The implementation checks
chargedCount. If the event is unavailable, partially fulfilled, or the run limit is reached, processing stops safely to avoid continuing with uncharged billable results. - The code constant is
EVENT_PRICE_USD = 0.001($1.00 / 1,000billable results). Keep the Apify PPE event aligned with this value.
Local checks
npm installnpm run checknpm test
For a local integration run without Apify PPE configuration, set EMAIL_VERIFIER_LOCAL_TEST=1. This test-only flag simulates one successful charge response; it is not set by the Actor in production.
Scope
This Actor contains no SEC, filing-monitor, social-network, LinkedIn, Finder, or dashboard code. The disposable-domain and role-prefix lists are deliberately small baselines; valid is not an SMTP delivery guarantee.
Operational stop lines
- Success line: within 7 days after human-approved publication, at least one external paid run occurs and the result is net profitable.
- Withdrawal line: if paid runs remain 0 after 14 days, stop candidate.
- Until those observations exist, do not infer product demand or expand the feature set from local test runs.