{"id":4543,"library":"free-email-domains","title":"Free Email Domains List","description":"The `free-email-domains` package provides a comprehensive, curated list of free email domains from around the world, designed to simplify checking if an email address belongs to a free email provider. The current version, 1.0.2, was released on February 23, 2026, and is actively maintained with updates based on data from sources like HubSpot.","status":"active","version":"1.0.2","language":"python","source_language":"en","source_url":"https://github.com/LukeRenton/free-email-domain-list","tags":["email","domain-validation","free-email","whitelist","email-verification"],"install":[{"cmd":"pip install free-email-domains","lang":"bash","label":"Install with pip"}],"dependencies":[],"imports":[{"note":"The primary data structure is 'whitelist', a set of free email domains.","symbol":"whitelist","correct":"from free_email_domains import whitelist"}],"quickstart":{"code":"from free_email_domains import whitelist\n\ndef check_email_domain(email_address):\n    try:\n        domain = email_address.split('@')[1]\n        if domain in whitelist:\n            print(f\"'{domain}' is a free email domain.\")\n        else:\n            print(f\"'{domain}' is NOT a free email domain.\")\n    except IndexError:\n        print(f\"Invalid email address format: {email_address}\")\n\ncheck_email_domain(\"user@gmail.com\")\ncheck_email_domain(\"info@example.com\")\ncheck_email_domain(\"invalid-email\")","lang":"python","description":"Import the `whitelist` set and check if a given email's domain exists within it."},"warnings":[{"fix":"Combine with a dedicated email validation library for robust checks, and consider a separate disposable email domain list if that functionality is required.","message":"This library only provides a list of common free email domains. It does NOT perform email address validation (e.g., checking for valid format, existence of domain, or deliverability) nor does it detect disposable/temporary email addresses, which are a different category of service.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Review the source list if absolute comprehensiveness is critical. Contributions to update the list are welcomed by the maintainers.","message":"The `whitelist` is a curated list, primarily leveraging data from HubSpot. While comprehensive, it may not include every single free email provider globally, and new providers may emerge faster than the list is updated.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Implement multi-factor authentication (MFA) and consider additional security measures like verifying email deliverability or restricting registration from certain domains, regardless of their 'free' status.","message":"For applications with high security requirements (e.g., user account systems), simply identifying a domain as 'not free' is insufficient for security. Domains can expire and be re-registered by malicious actors ('domain resurrection attacks'), potentially leading to account takeovers, as highlighted by PyPI's own security measures.","severity":"gotcha","affected_versions":"All versions"}],"env_vars":null,"search_vec":"'1.0.2':41 '2026':47 '23':46 'activ':50 'address':31 'around':21 'base':54 'belong':32 'check':27 'comprehens':13 'curat':14 'current':39 'data':56 'design':24 'domain':3,9,19,63 'domain-valid':62 'email':2,8,18,30,36,61,67,70 'email-verif':69 'februari':45 'free':1,7,17,35,66 'free-email':65 'free-email-domain':6 'hubspot':60 'like':59 'list':4,15 'maintain':51 'packag':10 'provid':11,37 'releas':43 'simplifi':26 'sourc':58 'updat':53 'valid':64 'verif':71 'version':40 'whitelist':68 'world':23","created_at":"2026-04-12T13:57:08.749138+00:00","updated_at":"2026-04-17T14:08:03.035204+00:00","problems":[{"fix":"Install the package using pip: 'pip install free-email-domains'.","cause":"The 'free_email_domains' package is not installed in the Python environment.","error":"ModuleNotFoundError: No module named 'free_email_domains'"},{"fix":"Use the correct import statement: 'from free_email_domains import free_email_domains'.","cause":"The 'whitelist' attribute does not exist in the 'free_email_domains' package.","error":"ImportError: cannot import name 'whitelist' from 'free_email_domains'"},{"fix":"Access the list of domains correctly: 'from free_email_domains import free_email_domains; domains = free_email_domains.free_email_domains'.","cause":"Attempting to iterate over the 'free_email_domains' module instead of its contents.","error":"TypeError: 'module' object is not iterable"},{"fix":"Manually check if a domain is in the list: 'if domain in free_email_domains.free_email_domains:'.","cause":"The 'free_email_domains' package does not have an 'is_free' function.","error":"AttributeError: module 'free_email_domains' has no attribute 'is_free'"},{"fix":"Ensure correct syntax: 'from free_email_domains import free_email_domains'.","cause":"Using incorrect syntax when importing or accessing the 'free_email_domains' package.","error":"SyntaxError: invalid syntax"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"1.0.2","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/LukeRenton/free-email-domain-list","docs":null,"changelog":null,"pypi":"https://pypi.org/project/free-email-domains/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-28","last_verified":"2026-08-30","next_check":"2026-07-28","install_tag":null}}