Send Email Multiple Recipients ( sendgrid)
One script reply has been approved by the moderators Verified

Created by stephanebooop 296 days ago Viewed 52 times 0 Points

No comments yet

Login to be able to comment
Points: 0
deno
One script reply has been approved by the moderators
Ap­pro­ved
import * as wmill from "https://deno.land/x/windmill@v1.70.1/mod.ts"
import sendgrid from "npm:@sendgrid/mail@^7.7.0"

/** 
 * @param is_message_html If `true` then the message will be sent and parsed as HTML, 
 * otherwise it will be sent as plain text.
 */
export async function main(
  api_token: wmill.Resource<"sendgrid">,
  from: string,
  to: string[],
  subject: string,
  message: string,
  is_message_html: boolean
) {
  sendgrid.setApiKey(api_token.token);
  const messageObject: Record<string, string | string[]> = {
    to,
    from,
    subject
  }
  messageObject[is_message_html ? 'html' : 'text'] = message

  try {
    return await sendgrid.send(messageObject, true)
  } catch (error) {
    throw Error('\n' + (JSON.stringify(error?.response?.body || error)))
  }
}

Submitted by adam186 118 days ago

Edited 29 days ago

No comments yet

Login to be able to comment