Skip to main content

The simplest library for email verification for Flask.

Project description

The easiest way to verify emails in your Flask application.

Meta

Prerequisites

To use this library, you’ll need to create a free Email Verification API account: https://emailverification.whoisxmlapi.com/

If you haven’t done this yet, please do so now.

Installation

To install Flask-EmailVerifier using pypi, simply run:

$ pip install Flask-EmailVerifier

In the root of your project directory.

Usage

Once you have Flask-EmailVerifier installed, you can use it to easily verify an email address.

This library gives you access to the Email Verification API that you can use in your application in any number of ways.

Here’s a simple Flask app that makes use of the email address verification and returns an email address information:

from flask import Flask, make_response
from flask_email_verifier import EmailVerifier
from json import dumps, loads

app = Flask(__name__)
# Initialize the extension
verifier = EmailVerifier(app)

@app.route('/email/<email>')
def email(email):
    # Retrieve an info for the given email address
    email_address_info = verifier.verify(email)
    if email_address_info is not None:
        data = dumps(loads(email_address_info.json_string), indent=4)
        resp = make_response(data, 200)
        resp.headers['Content-Type'] = 'application/json'
    else:
        resp = make_response('None', 404)
    return resp

Don’t forget to specify your API key:

$ export EMAIL_VERIFIER_KEY='your-key'

Here’s the sort of data you might get back when performing a email verification request:

{
    "emailAddress": "test.email@gmail.com",
    "formatCheck": "true",
    "smtpCheck": "false",
    "dnsCheck": "true",
    "freeCheck": "true",
    "disposableCheck": "false",
    "catchAllCheck": "false",
    "mxRecords": [
        "alt3.gmail-smtp-in.l.google.com",
        "alt1.gmail-smtp-in.l.google.com",
        "alt2.gmail-smtp-in.l.google.com",
        "alt4.gmail-smtp-in.l.google.com",
        "gmail-smtp-in.l.google.com"
    ],
    "audit": {
        "auditCreatedDate": "2018-11-14 13:05:09.000 UTC",
        "auditUpdatedDate": "2018-11-14 13:05:09.000 UTC"
    }
}

In the event an email verification request can’t finish successfully, the data returned will be None. This library will never throw an exception. This decision was made strategically: if you cannot verify user’s email, it doesn’t mean that this user is bad.

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

Flask-EmailVerifier-0.1.0.tar.gz (3.1 kB view hashes)

Uploaded Source

Built Distribution

Flask_EmailVerifier-0.1.0-py3-none-any.whl (3.9 kB view hashes)

Uploaded Python 3

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