Azure SendGrid

Son muchas las situaciones en las que necesitaremos enviar correos electrónicos de forma automatizada y para esto necesitaremos un servidor SMTP (Simple Mail Transfer Protocol). Azure SendGrid nos ofrece esta funcionalidad y podemos empezar con la opción gratuita que nos permite el envío de hasta 25.000 correos al mes.

Como vemos en la introducción, es usado por empresas como Airbnb, Uber o Walmart para el envío de correos de marketing.

Veamos de qué forma podemos hacer uso de este servicio. Para esto empezamos creando una cuenta gratuita de SendGrid:

Con un simple script en PowerShell podemos hacer uso de la cuenta de SendGrid:

$Username ="<aquí_viene_el_username_de_nuestra_cuenta_de_SendGrid>"
$Password = ConvertTo-SecureString '<contraseña_creada_con_la_cuenta_SendGrid>' -AsPlainText -Force
$credenciales = New-Object System.Management.Automation.PSCredential $Username, $Password
$SMTPServer = "smtp.sendgrid.net"
$REMITENTE = "<correo_del_remitente>"
[string[]]$DESTINATARIO = "<correo_del_destinatario>"
$ASUNTO = "Prueba de envío de un correo electrónico usando SendGrid desde PowerShell"
$CUERPO = "Este es un correo de prueba enviado usando una cuenta de SendGrid creada en Azure."
Send-MailMessage -smtpServer $SMTPServer -Credential $credenciales -Usessl -Port 587 -from $REMITENTE -to $DESTINATARIO -subject $ASUNTO -Body $CUERPO -BodyAsHtml
Write-Output "Email enviado con éxito."

Para usar este script solo tenemos que utilizar el nombre de usuario que se habrá creado con nuestra cuenta y la contraseña que hemos definido durante la creación, así como especificar el correo del remitente y del destinatario, que pueden ser cualesquiera:

Y basta con ejecutar el script y esperar unos segundos para recibir el correo: