a list of disposable and temporary email address domains
Go to file
Martin Cech 0231f05853 introduce whitelist
gathers domains that are often on blacklists but should not be
reasoning by @foresto from https://gist.github.com/adamloving/4401361#gistcomment-1493544:

The claim that "sending email to these domains likely will not be opened" is misguided and misleading at best. For example, spamgourmet and its alternative domains allow me to discover which web sites share my email address without my permission, which is one of the few effective defenses against spam. Like many users, I open every single message sent to my spamgourmet addresses unless the sender is has proven to be a spammer (this is exactly spamgourmet's purpose after all) which makes your claim just plain wrong.

Sadly, lists like this one have led some web sites to refuse signups to legitimate users, or worse yet, to silently discard outgoing messages to legitimate addresses. Congratulations. You're encouraging broken web sites, lost information, failed communications, increased spam, and just plain bad user experiences. I suggest you rethink this, or at least do a decent job of keeping legitimate domains off of your list.
2015-08-13 14:00:08 -04:00
disposable_email_blacklist.conf continuation of spamgourmet urls removal 2015-08-13 13:57:19 -04:00
README.md Update README.md 2015-07-13 16:13:26 +02:00
whitelist.conf introduce whitelist 2015-08-13 14:00:08 -04:00

List of disposable email domains

This repo contains a list of disposable and temporary email address domains often used to register dummy users in order to spam/abuse some services. It is also useful for filtering your email list to increase open rates (sending email to these domains is probably useless).

Originally collected to filter new user registration at https://usegalaxy.org and later merged with other lists found online. I cannot guarantee all of these can still be considered disposable but they probably were at one point in time.

Example Usage

Python

blacklist = ('disposable_email_blacklist.conf')
blacklist_content = [line.rstrip() for line in blacklist.readlines()]
if email.split('@')[1] in blacklist_content:
    message = "Please enter your permanent email address."
    return (False, message)
else:
    return True

PHP contributed by @txt3rob

function is_temp_mail($mail) {
    $list = file_get_contents ('disposable_email_blacklist.conf');
    $mail_domains_ko = explode("\n", $list);
    foreach($mail_domains_ko as $ko_mail) {
        list(,$mail_domain) = explode('@',$mail);
        if(strcasecmp($mail_domain, $ko_mail) == 0){
            return true;
        }
    }
    return false;
}

Contributing

Feel free to create PR with additions or request removal of some domain (with reasons).

Use

cat disposable_email_blacklist.conf your_file | sort -f | uniq -i > new_file

to add contents of another file in the same format (domains on new line without @).