UNPKG

digri-email-sender

Version:

Lightweight utility to send HTML emails using AWS SES, with optional tenant tracking and configuration set support.

31 lines (30 loc) 947 B
import { SESClient, SendRawEmailCommand } from "@aws-sdk/client-ses"; export async function sendDigriMail(user, aws) { const { fromEmail, toEmail, message, subject, tenantId } = user; const client = new SESClient({ region: aws.REGION, credentials: { accessKeyId: aws.ACCESS_KEY_ID, secretAccessKey: aws.SECRET_ACCESS_KEY, }, }); const rawMessage = [ `From: ${fromEmail}`, `To: ${toEmail}`, `Subject: ${subject}`, `MIME-Version: 1.0`, `Content-Type: text/html; charset=UTF-8`, tenantId ? `X-Tenant-ID: ${tenantId}` : null, `X-SES-Configuration-Set: ses-email-event-config`, ``, message, ] .filter(Boolean) .join('\r\n'); const command = new SendRawEmailCommand({ RawMessage: { Data: Buffer.from(rawMessage), }, }); return await client.send(command); }