This section is a step-by-step guide to setting up AWS SNS as your SMS service provider.
Pre-Requisites
You'll need a AWS account to complete this tutorial. You can use your existing AWS account to integrate, or Create an AWS account
Amazon SNS integration on SuprSend account
Follow below steps to integrate your Amazon SNS account with SuprSend
Step 1. Create AWS IAM user
To send email through SNS, you need an IAM user (Access-Key-ID and Secret-Access-Key) with necessary permission. To ceate an IAM user, refer to this documentation
- Create an IAM user (with Programmatic access).
- Attach Policy
AmazonSNSFullAccess
to this user. - Copy and save the
Access-key-ID
andSecret-Access-Key
securely. You'll need to add this information on SuprSend vendor integration page
An AWS SNS resource resides in a particular region. Make a note of which aws-region you are going to use for sending SMS. In this guide, we'll assume aws-region :ap-south-1
for all illustrative purposes.
Step 2. Adding phone number in your SNS account
Before moving into configuration steps, here are a few other things to keep in mind:
-
SNS sandbox mode If you are creating a new SNS account. Your account will be in SNS sandbox. AWS adds all new accounts in the SNS sandbox by default. In sandbox mode, you'll be able to send messages to only verified destination phone numbers. Once you're done testing, you can move out of the SNS sandbox. Refer next section for the steps to configure SNS sandbox and how to move your account out of it.
-
Delivery tracking. We cannot currently track delivery for SMS sent through AWS SNS. This means that messages sent through SNS will always show on triggered state in logs.
Follow below Steps to add phone number and set tracking in your SNS account:
Step 1. Provision phone numbers on SNS dashboard
Go to AWS SNS console -> Mobile -> Text Messaging (SMS). Select origination numbers either from top right or from left side menu and Click on "Provision number in Pinpoint"
This will open pinpoint console. Click on "Request Phone Number" on this screen and provision a phone number from a country where SMS channel is enabled.
Phone Number Registration required for USA numbers
If you’re provisioning numbers from USA, you need to complete your phone number registration to send messages successfully across the USA. Read more about phone number registration here
You can also register for Sender ID if you want to send messages with an alphanumeric code. Sender IDs is not supported in all countries. To see if it is supported in your region, see Supported Regions and Countries
Step 2. Testing in Sandbox mode
By default, your account will be in sandbox mode where you’ll only be able to send messages to added destination numbers. Add few phone numbers here to test out the integration.
Once the numbers are added, scroll up the screen and click on "Publish Text Message" to send one test message from the console itself to test out the integration.
If the message is successful, we recommend you to exit sandbox before integrating with SuprSend.
- Click on Exit SMS Sandbox from console.
- A prompt will open to raise an AWS support case to exit sandbox and increase spending limits.
- Add relevant information and in the new limit add 100 USD (recommended) or higher if needed.
The account will be production ready within 24 hours of raising this request
Step 3. Setup tracking inside AWS dasboard
Remember that this setup is just to see the delivery reports within AWS dashboard. It doesn't enable delivery tracking in SuprSend logs.
Follow below steps to setup tracking:
- Go to Text Messaging Preferences in SNS console and click edit.
- Add relevant configuration and expand Delivery status logging.
- Create a new IAM role on this screen. It will ask for permission to send delivery logs to cloudwatch, allow that and save changes.
Once configured, you’ll be able to see delivery logs of your sent messages on this console. You can also access it from cloudwatch console.
You’ll also be able to view message analytics on SNS console.
Step 3. Add SNS Vendor settings on Suprsend dashboard
On the SuprSend dashboard, select Vendors from the left panel.
- Select 'SMS' channel from the list.
- Select the communication category from the list - System, Transactional, Promotional
- Click on 'Amazon SNS' from the list of Vendors
On the Vendor Settings page, add relevant details in the vendor form and Save
Form Field | Description |
---|---|
Nickname | You can give any name which may help you to identify this account easily. For example - AWS SNS [Production] |
AWS region | aws-region you are going to use for sending messages. |
Access Key ID | This is the key ID linked to your IAM user. This is used to send messages on your behalf from your SNS account. Refer above section to get access key |
Secret Access Key | This is the secret access key linked to your IAM user. This is used to send messages on your behalf from your SNS account. Refer above section to get access key |
Origination Phone Number | Number through which your messages will be sent. Origination number is mandatory if you are sending to the USA; otherwise, you can leave this field empty |
Sender ID | You can add your registered Sender ID here if you want to send messages with an alphanumeric code. Read more about Sender ID |
Price per notification | This is the amount you pay per email notification to SNS. It helps us to calculate, estimate and optimise your cost spent on notifications. |
Updated 9 months ago
Create SMS template and add a workflow to start sending your SMS notifications