Edits history of script submission #22512 for ' Send Email Multiple Recipients (sendgrid)'

  • bun
    One script reply has been approved by the moderators
    Ap­pro­ved
    import sendgrid from "@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.
     */
    type Sendgrid = {
      token: string;
    };
    export async function main(
      api_token: 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 hugo989 3 days ago