Skip to content

Latest commit

 

History

History
91 lines (66 loc) · 2.97 KB

overview.mdx

File metadata and controls

91 lines (66 loc) · 2.97 KB
title sidebarTitle description
SMS Channel Overview
Overview
Learn the process of configuring and using sms providers with Novu

Novu can be used to deliver sms messages to your customers using a unified delivery API. You can easily integrate your favorite sms provider using the built-in integration store.

<iframe src="https://www.loom.com/embed/1d12bede8bf5482185ac626c2130cf33" width="100%" height="400px" frameBorder="0" allowFullScreen></iframe>

Configuring SMS providers

When creating a SMS provider integration you will be asked to provide additional fields alongside the provider-specific credentials:

  • From - Will be displayed as the sender of the SMS

Additional credentials can be API key, username, password or other provider specific credentials.

Some countries have strict restriction of using verified `from` sender id (name). Kindly check country and provider specific requirements first.

Sending SMS Overrides

The overrides field supports a sms property and from, to, content field overrides. This allows you to send a message to a different recipient, from a different sender, or with a different content.

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

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

novu.trigger('<WORKFLOW_TRIGGER_IDENTIFIER>', {
  to: {
    subscriberId: '<SUBSCRIBER_ID>',
  }
  overrides: {
    sms: {
      to: '+123012345678',
      from: 'Novu Team',
      content: 'This SMS message is from overrides'
    },
  },
});

Using different SMS integration

In Novu integration store, multiple SMS channel type provider integrations can be active at the same time. But only one provider integration can be primary at a time. This primary integration will be used as a provider to deliver the SMS by default. If you want to use a different active provider integration then you can use the integrationIdentifier sms overrides field.

If there are 4 active SMS integrations with these identifiers:-

  1. twilio-abcdef
  2. twilio-ghijkl
  3. firetext-abcdef
  4. infobip-abcdef

Here, if twilio-abcdef is primary integration and you want to use infobip-abcdef with this trigger then you can use integrationIdentifier sms overrides field as below:-

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

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

novu.trigger('<WORKFLOW_TRIGGER_IDENTIFIER>', { to: { subscriberId: '<SUBSCRIBER_ID>', }, overrides: { sms: { integrationIdentifier: "infobip-abcdef" }, }, });

 </Tab>
</Tabs>

<Info> Integration identifier is similar to Provider identifier but it is different than Provider Id. It is unique for each integration. You can find the `integrationIdentifier` in the integration store page.  </Info>

## Common errors

Common errors and reason for these errors while sending sms messages using Novu.

1. Subscriber does not have a configured channel.
    - if the `from` field is missing / null / undefined.

<Snippet file="missing-provider.mdx" />