Skip to main content

Django fields for validating email using the Mailgun API

Project description

This is a Django app that provides fields (for models and forms) that use Mailgun’s validation API for validating email address.

The documentation on Mailgun’s validation API is here:

http://documentation.mailgun.com/api-email-validation.html

See this blog post for more info on why it is a good idea to use this service and not just rely on Django’s built-in email validation:

http://blog.mailgun.com/post/free-email-validation-api-for-web-forms/

Usage:

` pip install django-mailgun-validation `

Alternatively:

` pip install git+git://github.com/gnrfan/django-mailgun-validation.git `

Using the validator:

`python from mailgun_validation.validators import validate_email status = validate_email('john.smith@gmail.com') `

If the result is `None` the email address is OK but if an exception is raised, the validation did not succeded.

Both model and form fields can use Mailgun’s validation API or fall back to using Django’s built-in email validation:

`python >>> from mailgun_validation.db.models.fields import EmailField >>> f = EmailField() >>> f.default_validators [<mailgun_validation.validators.EmailValidator object at 0x10bed3d90>] >>> f = EmailField(use_mailgun=False) >>> f.default_validators [<django.core.validators.EmailValidator object at 0x10bb3a790>] `

The same for the forms field:

`python >>> from mailgun_validation.forms.fields import EmailField >>> f = EmailField() >>> f.default_validators [<mailgun_validation.validators.EmailValidator object at 0x10bed3d90>] >>> f = EmailField(use_mailgun=False) >>> f.default_validators [<django.core.validators.EmailValidator object at 0x10bb3a790>] `

In your Django project settings make sure to add your Mailgun API key:

`python MAILGUN_API_KEY = '<your Mailgun API key goes here>' `

In order for this code to work please install the Mailgun API Python wrapper from this Github repo:

You can do just that by running this command:

` pip install git+git://github.com/gnrfan/mailgun-python-api.git `

  1. 2013 - Antonio Ognio <antonio@ognio.com>

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

django-mailgun-validation-1.0.1.tar.gz (3.0 kB view details)

Uploaded Source

File details

Details for the file django-mailgun-validation-1.0.1.tar.gz.

File metadata

File hashes

Hashes for django-mailgun-validation-1.0.1.tar.gz
Algorithm Hash digest
SHA256 c0f3de67266069a6c62d90c5cb3321e504a7e976dd0a8ffc05b91278aae77895
MD5 b5aa67e3306fc2884ed45faba3ebcab4
BLAKE2b-256 0712562085e051275e1fb347d66dec9a58420f0803a94886a9c6c2e9e863b0e1

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