Skip to main content

AbstractEmailValidation - Wrapper to quickly start using the powerful AbstractAPI's email validation service in your projects.

Project description

AbstractAPI python-email-validation library

Integrate the powerful email validation API from Abstract in your Python project in a few lines of code.

Abstract's Email Validation and Verification API is a fast, lightweight, modern, and RESTful JSON API for determining the validity and other details of email addresses.

It's very simple to use: you only need to submit your API key and an email address, and the API will respond an assessment of its validity, as well as additional details like quality score if it's a disposable email, a catchall address, and more.

Validating and verifying email addresses is a critical step to reducing the chances of low-quality data and fraudulent or risky users in your website or application.

Documentation

Supported Python Versions

This library supports the Python version 3.6 and higher.

Installation

You can install python-email-validation via PyPi or by downloading the source.

Via PyPi:

python-email-validation is available on PyPi as the abstract-python-email-validation package:

pip install abstract-python-email-validation

API key

Get your API key for free and without hassle from the Abstact website.

Quickstart

Verify email

# Verify email using Abstract's Email Validation and Verification API and Python
from python_email_validation import AbstractEmailValidation

EMAIL_VAL_API_KEY =  "YYYYYY"; # Get your API Key from https://app.abstractapi.com/api/email-validation/documentation

AbstractEmailValidation.configure(EMAIL_VAL_API_KEY)
AbstractEmailValidation.verify("contact.email@gmail.com")

API response

The API response is returned in a EmailValidationData object.

PARAMETER TYPE DETAILS
email String The value for "email" that was entered into the request.
auto_correct String If a typo has been detected then this parameter returns a suggestion of the correct email (e.g., johnsmith@gmial.com => johnsmith@gmail.com). If no typo is detected then this is empty.
deliverability String Abstract's evaluation of the deliverability of the email. Possible values are: DELIVERABLE, UNDELIVERABLE, RISKY, and UNKNOWN
quality_score Number An internal decimal score between 0.01 and 0.99 reflecting Abstract's confidence in the quality and deliverability of the submitted email.
is_valid_format Boolean Is true if the email follows the format of "address @ domain . TLD". If any of those elements are missing or if they contain extra or incorrect special characters, then it returns false.
is_free_email Boolean Is true if the email's domain is found among Abstract's list of free email providers (e.g., Gmail, Yahoo, etc).
is_disposable_email Boolean Is true if the email's domain is found among Abstract's list of disposable email providers (e.g., Mailinator, Yopmail, etc).
is_role_email Boolean Is true if the email's local part (e.g., the "to" part) appears to be for a role rather than individual. Examples of this include "team@", "sales@", info@", etc.
is_catchall_email Boolean Is true if the domain is configured to catch all email.
is_mx_found Boolean Is true if MX Records for the domain can be found. Only available on paid plans. Will return null and UNKNOWN on free plans.
is_smtp_valid Boolean Is true is the SMTP check of the domain was successful. Only available on paid plans. Will return null and UNKNOWN on free plans.

Detailed documentation

You will find additional information and request examples in the Abstract help page.

Getting help

If you need help installing or using the library, please contact Abstract's Support.

For bug report and feature suggestion, please use this repository issues page.

Contribution

Contributions are always welcome, as they improve the quality of the libraries we provide to the community.

Please provide your changes covered by the appropriate unit tests, and post them in the pull requests page.

Setup

To install the requirements, run:

python3 setup.py install --user

Once you implementer all your changes and the unit tests, run the following command to run the tests:

EMAIL_VAL_API_KEY=YYYYYY python3 tests/test_python_email_validation.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distributions

File details

Details for the file abstract_python_email_validation-1.0.0.tar.gz.

File metadata

  • Download URL: abstract_python_email_validation-1.0.0.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for abstract_python_email_validation-1.0.0.tar.gz
Algorithm Hash digest
SHA256 b5edcce66f22ccc7678bbde97f362e373e3cba3a4ec390f621b43d73694441fb
MD5 5465d239448a71cddad946b8f19da4dd
BLAKE2b-256 efa08d2cae8367a7d58d1bebedbe5ac7f33faf07cbb17f1d8f15d0ca8f347e6f

See more details on using hashes here.

File details

Details for the file abstract_python_email_validation-1.0.0-py3.9.egg.

File metadata

  • Download URL: abstract_python_email_validation-1.0.0-py3.9.egg
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for abstract_python_email_validation-1.0.0-py3.9.egg
Algorithm Hash digest
SHA256 365b1acad8f2b92ebb66ca3ed2ab47b4840973ecc4c3176bfd9f2a7a5fe96a4e
MD5 3171ae958e549afaac4c18f45973c7dc
BLAKE2b-256 c1f69bc3569e6ba00aa61f9ee9b80a375aec5406e837c9b346498e268defde0a

See more details on using hashes here.

File details

Details for the file abstract_python_email_validation-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: abstract_python_email_validation-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for abstract_python_email_validation-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 006c510c515ff3d35b33c043b216835d48fd0a35ea30fc35b68f5ccc899dd81f
MD5 16d55e7e72b0a1ebdc23c8015771dac4
BLAKE2b-256 766d7f692fb92bf0e386a088f997a602b62a600c01f67eb1635b5520910541d3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page