Skip to content

Latest commit

 

History

History
executable file
·
84 lines (65 loc) · 2.79 KB

README.rst

File metadata and controls

executable file
·
84 lines (65 loc) · 2.79 KB

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