SendGrid en Python

Anika Tabassum Era 16 febrero 2024
SendGrid en Python

La organización matriz de SendGrid (una plataforma de comunicación con el cliente para correo electrónico transaccional y de marketing) es Twilio.

Principalmente, la tarea es enviar correos electrónicos de forma dinámica. Esto tiende a minimizar la complejidad y el consumo de tiempo.

Inicialmente, tendremos que configurar los datos personales para iniciar sesión y luego obtendrá un panel con múltiples funciones (después de que su cuenta se verifique por correo electrónico). Puede enviar correos electrónicos fácilmente yendo a la sección Marketing y luego a la sección Remitente.

La mejor experiencia solo se logra si tiene una cuenta autenticada de dos factores. De lo contrario, su cuenta pasa por una fase de revisión, lo que puede llevar mucho tiempo.

En la siguiente sección, indicaremos los pasos para manejar los detalles de creación de la cuenta. Sigue los pasos uno por uno.

  • Vaya a SendGrid.
  • Crea tu cuenta.
  • Se le pedirá que active la Autenticación de dos factores.
  • Una vez que se haya creado y verificado una cuenta, vaya a la pestaña Configuración en el panel de navegación izquierdo.
  • Seleccione la opción Claves API del menú desplegable.
  • Haga clic en la pestaña Crear clave API para crear una Clave API secreta para su aplicación.
  • Establezca un Nombre de clave de API.
  • Elija Acceso completo de los botones de opción.
  • Por último, haga clic en Crear y ver.

Asegúrese de haber guardado la clave API en un lugar seguro. Técnicamente, se muestra explícitamente visto una vez.

En la siguiente parte, configurará el correo electrónico del remitente.

  • Vaya a Marketing y luego haga clic en Remitentes.
  • En la esquina superior derecha de la página Administración de remitentes, haga clic en Crear nuevo remitente.
  • Rellene todos los campos de la página y luego haga clic en Guardar.

Es posible que se envíe un correo de confirmación al correo para asegurar el correo que agregó como remitente.

Para la autenticación, puede utilizar su número de contacto. Si tiene algún problema, puede descargar Google Authy y usar el número de contacto que usará en Authy.

Este proceso pasivo podría salvarte.

Pero en esta fase, si envía un correo electrónico, el remitente tendrá que revisar el correo cada vez que lo confirme. La siguiente sección de codificación mostrará cómo podemos usar la clave API para enviar correos electrónicos a múltiples destinatarios.

Use la clave API SendGrid para enviar múltiples correos electrónicos

Inicialmente, tendremos que crear una carpeta de proyecto en nuestra computadora local. Además, iniciaremos un entorno virtual de Python.

Debe abrir el terminal/cmd en esa carpeta para crearlo. Ingrese los siguientes comandos.

python -m venv YourFolderName
cd YourFolderName

Crearemos un archivo de script en esta carpeta (nombre de la carpeta que usamos: sendgrid). Creamos main.py como nuestro archivo de script. A continuación, instalaremos las dependencias.

Antes de eso, es necesario activar el entorno virtual. Entonces, en la carpeta sendgrid, abriremos la terminal y daremos seguimiento a los comandos.

Scripts\activate
pip install sendgrid
pip install python-dotenv

Ahora cree un archivo .env (el archivo para almacenar la variable de entorno). Y ahí, guardaremos el siguiente fragmento de código.

export API_KEY=YOUR_SENDGRID_API_KEY

Aquí, en la variable API_KEY, mantendremos la clave API previamente guardada del sitio web SendGrid. A continuación, iremos a la sección de codificación.

Fragmento de código:

import os
import dotenv
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail, Email, To, Content

dotenv.load_dotenv()

sgc = SendGridAPIClient(api_key=os.environ.get("API_KEY"))
from_email = Email("sender@example.com")  # Change to your verified sender
# Change to your recipient
to_email = [To("receiver1@example.com"), To("receiver2@example.com")]
subject = "Sending with SendGrid is Fun"
content = Content("text/plain", "and easy to do anywhere, even with Python")
mail = Mail(from_email, to_email, subject, content, is_multiple=True)
# is_multiple is used to specify that the mail has multiple recipients

# Get a JSON-ready representation of the Mail object
mail_json = mail.get()

# Send an HTTP POST request to /mail/send
try:
    response = sgc.client.mail.send.post(request_body=mail_json)
    print(response.status_code)
    print(response.headers)
except Exception as e:
    print(e)

El dotenv importará la clave API como un diccionario, y después de llamarlo, veremos la actualización en el panel del sitio web en cada transmisión. Hemos enviado varios correos electrónicos de una sola vez.

El resultado muestra la vista previa que tendremos en el panel de control y la fuente de actividad SendGrid.

Producción:

Utilice la clave API de SendGrid para enviar varios correos electrónicos 1

Use la clave API de SendGrid para enviar múltiples correos electrónicos 2

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook

Artículo relacionado - Python Email