MailerSend is an email delivery service that allows you to send emails from your application.

Getting Started

To use the MailerSend provider in the email channel, you will need to create a MailerSend account and add your API key to the MailerSend integration on the Novu platform. To generate the API token go visit the MailerSend API Tokens page.

Creating the MailerSend integration with Novu

  • Visit the Integrations page on Novu.
  • Click on Add a Provider.
  • Select MailerSend service.
  • Enter the API key.
  • Click on the Disabled button and mark it as Active.
  • Click on the Update button.
  • You should now be able to send notifications using MailerSend in Novu.

Using MailerSend template

Novu has its own email editor for writing email template. If you want to use pre made template from MailerSend, you can use customData filed of email overrides to send template details. Make sure your Api Key has enough permission to read and process the template.

import {
  Novu
} from '@novu/node';

const novu = new Novu('<NOVU_API_KEY>');

await novu.subscribers.trigger("workflowIdentifier", {
  to: "subscriberId",
  payload: {},
  overrides: {
    email: {
      customData: {
        // mailersend template templateId
        templateId: 'mailersend-template-id',
        // mailersend template variables
        personalization: [{
          email: 'recipient@email.com',
          data: {
            items: {
              price: '',
              product: '',
              quantity: '',
            },
            order: {
              date: '',
              order_number: '',
              billing_address: '',
              customer_message: '',
            },
            store: {
              name: '',
            },
            invoice: {
              total: '',
              subtotal: '',
              pay_method: '',
            },
            customer: {
              name: '',
              email: '',
              phone: '',
            },
          },
        }, ],
      },
    }
  },
  // actorId is subscriberId of actor
  actor: "actorId"
  tenant: "tenantIdentifier"
});