If this were possible, spammers worldwide would be singing with joy.
Sorry but no, it's not possible to know whether any given e-mail address exists or not.
In my opinion, this is a feature!
- If you know your correspondents, then you will know their contact information.
- If you don't know your correspondents, then you're a stranger and they will not appreciate getting unsolicited mail from you.
- If you used to know your correspondents and they haven't kept you informed of their address changes, then they've made an (un?)conscious decision to not receive your mail.
The best you can do is to send out an e-mail to your list and then remove those that bounce (= those that could not be delivered).
Be careful! In some countries it is illegal to send unsolicited bulk e-mail to people who haven't explicitly allowed this in advance.
@Arjan I wrote a small python script to automate this https://gist.github.com/arulrajnet/c613bd0fad5de00bab2e
– Arul – 2014-11-26T13:32:25.870First test an address that is unlikely to exist (e.g.
uh57fxetomx7ei5@example.com
), if that returns250
, give up. – Zaz – 2015-10-18T16:20:09.877Try this Perl module here https://metacpan.org/pod/release/ILYAM/Mail-CheckUser-1.19/CheckUser.pm
– Klemen Tušar – 2017-01-24T08:10:53.0601SMTP defines the
VRFY
command for this purpose. – user1686 – 2010-12-20T19:21:56.490@grawity, that might be true in theory, but
– Arjan – 2010-12-20T23:41:12.630VRFY
does NOT work with Gmail. (See my comment at Michael's answer.)2Not all servers respond with a "does not exist" error for missing accounts, so this is not completely reliable. If the server is an proxy (and/or external secondary server) for a number of other servers it might not know which accounts are valid on the next hop so will give "250 OK" for anything, and some servers are set this way in to stop spammers trying to enumerate valid accounts. A quick test of some of our clients mail servers showed 1 of the 5 I tried did not give a 5xx response for an non-existent account. – David Spillett – 2010-12-21T08:40:06.263
(@David, I know. That's why I used the word "some" above... But I've emphasised that a bit.) – Arjan – 2010-12-21T10:22:59.347