Skip to content

SendGrid simple async client based on httpx.

License

Notifications You must be signed in to change notification settings

EM51641/async-sendgrid

 
 

Repository files navigation

Python Python
Package PyPI Latest Release PyPI Downloads
Meta License - MIT

Async-Sendgrid

Sendgrid-Async is a simple asynchronous client built upon the httpx library.

Installation

You can install Sendgrid-Async using pip with the following command:

pip install sendgrid-async

Usage

Here is a brief script demonstrating how to send an email using Async-Sendgrid:

First, import the SendgridAPI from the sendgrid-async package. Then, create a SendgridAPI object using your API key.

from async_sendgrid import SendgridAPI
import os

API_KEY = os.environ.get('SECRET_API_KEY')
sendgrid = SendgridAPI(API_KEY)

Next, we can create an email using the original sendgrid library as follows:

from sendgrid.helpers.mail import Content, Email, Mail, To

from_email = Email("test@example.com")
to_email = To("test@example.com")
subject = "Lorem ipsum dolor sit amet, consectetur adipiscing elit"
content = Content("text/plain", "Sed varius ligula ac urna vehicula ultrices. Nunc ut dolor sem.")

mail = Mail(
    from_email=from_email,
    to_email=to_email,
    subject=subject,
    content=content
    )

An email can be sent to sendgrid servers with the send API of the SendgridAPI instance:

async with sendgrid as client:
    response = await client.send(data)

For testing purposes, you can modify the API endpoint as follows:

sendgrid = SendgridAPI(api_key="SECRET_API_KEY", endpoint="https://localhost:3000/v3/mail/send")

About

SendGrid simple async client based on httpx.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 69.8%
  • Jupyter Notebook 26.9%
  • Dockerfile 3.3%