Skip to main content

SendGrid Backend for Django

Project description

Travis CI codecov.io

Simple django backend to send email using SendGrid’s Web API.

Installation

Install the backend from PyPI:

pip install sendgrid-django

Add the following to your project’s settings.py:

EMAIL_BACKEND = "sgbackend.SendGridBackend"
SENDGRID_API_KEY = "Your SendGrid API Key"

Done!

Example

from django.core.mail import send_mail
from django.core.mail import EmailMultiAlternatives

send_mail("Your Subject", "This is a simple text email body.",
  "Yamil Asusta <hello@yamilasusta.com>", ["yamil@sendgrid.com"])

# or
mail = EmailMultiAlternatives(
  subject="Your Subject",
  body="This is a simple text email body.",
  from_email="Yamil Asusta <hello@yamilasusta.com>",
  to=["yamil@sendgrid.com"],
  headers={"Reply-To": "support@sendgrid.com"}
)
# Add template
mail.template_id = 'YOUR TEMPLATE ID FROM SENDGRID ADMIN'

# Replace substitutions in sendgrid template
mail.substitutions = {'%username%': 'elbuo8'}

# Attach file
with open('somefilename.pdf', 'rb') as file:
    mail.attachments = [
        ('somefilename.pdf', file.read(), 'application/pdf')
    ]

# Add categories
mail.categories = [
    'work',
    'urgent',
]

mail.attach_alternative(
    "<p>This is a simple HTML email body</p>", "text/html"
)

mail.send()

To create an instance of a SendGridBackend with an API key other than that provided in settings, pass api_key to the constructor

License

MIT

Enjoy :)

Development

Install dependencies::

pip install -r requirements-dev.txt

Run the tests with coverage::

pytest –cov=sgbackend

If you see the error “No module named sgbackend”, run::

pip install -e .

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

sendgrid-django-4.1.0.tar.gz (4.9 kB view details)

Uploaded Source

File details

Details for the file sendgrid-django-4.1.0.tar.gz.

File metadata

File hashes

Hashes for sendgrid-django-4.1.0.tar.gz
Algorithm Hash digest
SHA256 20a310cd7ee826f0885224c6f34ffdc9f371b27a32bead10e952c051da25fa4d
MD5 1af5dfbf2036981545cae69b87c0f451
BLAKE2b-256 730e115af4664b4ec3cb223c1cc0ae54b3b1039d7b3b416f3f8f0dca4c814627

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