Flask plugin to simplify sending emails through SendGrid.
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
tests
.gitignore
.travis.yml
HISTORY.rst
LICENSE
MANIFEST.in
README.rst
flask_sendgrid.py
requirements-test.txt
setup.cfg
setup.py

README.rst

flask-sendgrid

PyPI version Travis Build Coverage Status

Flask plugin to simplify sending emails through SendGrid. Adapted from Flask-Mandrill to make migrating from Mandrill to SendGrid easier for developers.

Now updated to support SendGrid Web API v3 endpoints, including the new v3 /mail/send. Still maintains backwards compatibility with Flask-Mandrill mail function.

Existing send_email method does not support all functions of the newly updated SendGrid Mail (sendgrid.helpers.mail.Mail). Full support will be updated in a later release.

Installation

pip install flask-sendgrid

Usage

from flask_sendgrid import SendGrid
app = Flask(__name__)
app.config['SENDGRID_API_KEY'] = 'your api key'
app.config['SENDGRID_DEFAULT_FROM'] = 'admin@yourdomain.com'
mail = SendGrid(app)

# send multiple recipients; backwards compatible with Flask-Mandrill
mail.send_email(
    from_email='someone@yourdomain.com',
    to_email=[{'email': 'test1@example.com'}, {'email': 'test2@example.com'}],
    subject='Subject'
    text='Body',
)

# send single recipient; single email as string
mail.send_email(
    from_email='someone@yourdomain.com',
    to_email='test@example.com',
    subject='Subject'
    text='Body',
)

# send single recipient; single email as sendgrid.mail.helpers.Email object
mail.send_email(
    from_email='someone@yourdomain.com',
    to_email=Email('test@example.com'),
    subject='Subject'
    text='Body',
)

# send multiple recipients; list of emails as sendgrid.mail.helpers.Email object
mail.send_email(
    from_email='someone@yourdomain.com',
    to_email=[Email('test1@example.com'), Email('test2@example.com')],
    subject='Subject'
    text='Body',
)

For additional information about mail parameters: SendGrid Web API Mail