How do I troubleshoot mobile text message (SMS) failures in Amazon SNS?

4 minute read
0

My mobile text messages (SMS messages) are failing to send through Amazon Simple Notification Service (Amazon SNS).

Resolution

Turn on and view Amazon CloudWatch Logs for your SMS messages

For more information, see Viewing Amazon CloudWatch metrics and logs for SMS deliveries. Also, see How do I access Amazon SNS topic delivery logs for SMS messages?

Check whether you exceeded your monthly SMS spending quota

1.    Review your delivery status logs for failed SMS message deliveries ("status": "FAILURE").

2.    Check the failed SMS delivery logs for the following value: "providerResponse": "No Quota left for account". If you see this value in the failed SMS delivery logs, then you exceeded your monthly SMS spending quota.

Failed SMS message delivery CloudWatch log event example

{
    "notification": {
        "messageId": "efgh9a7-c68f-abcd-bdbe-21ada245e18f",
        "timestamp": "2020-10-21 16:32:10.981"
    },
    "delivery": {
        "destination": "+1234567890",
        "smsType": "Transactional",
        "providerResponse": "No quota left for account",
        "dwellTimeMs": 145
    },
    "status": "FAILURE"
}

Note: You can also check the SMSMonthToDateSpentUSD metric in your CloudWatch metrics to confirm whether you exceeded your monthly SMS spending quota.

3.    If you exceeded your monthly SMS spending quota, then request a spending limit increase for SMS messages in Amazon SNS. For more information, see Requesting a spending limit increase for SMS messages in Amazon SNS.

Important: After you receive an SMS spending quota increase confirmation, you must also adjust the spending quota for your account on the Amazon SNS console. If you don't update your SMS settings on the Amazon SNS console, then your SMS spend limit doesn't increase.

If you use an AWS SDK to send SMS messages, then check whether you exceeded your maximum message price

1.    Review your delivery status logs for failed SMS message deliveries ("status": "FAILURE").

2.    Check the failed SMS delivery logs for the following value: "providerResponse": "delivery would exceed maxprice". If you see this value in the failed SMS delivery logs, then you exceeded the price limit that's configured in your AWS.SNS.SMS.MaxPrice message attribute.

Note: You can also check the PublishSize metric in your CloudWatch metrics to confirm if you exceeded your message size limit. If Amazon SNS determines that sending the message incurs a cost that exceeds the maximum price that you set, then it doesn't send the message.

3.    If you exceeded your maximum message price limit, then either increase your AWS.SNS.SMS.MaxPrice value or reduce the size of your SMS message. For more information, see Publishing to a mobile phone.

Confirm that your account is approved to send SMS messages

1.    Review your delivery status logs for failed SMS message deliveries ("status": "FAILURE").

2.    Check the failed SMS delivery logs for the following value: "providerResponse": "Your account requires additional review prior to being able to send SMS messages". This value means that the Amazon SNS team doesn't have the necessary information to allow your account to send SMS messages.
Note: To prevent abuse, Amazon SNS requires customers to have their spending limit and use case approved before sending SMS messages.

3.    If your account doesn't have approval to send SMS messages, then open a Service limit increase case in the AWS Support Center.

Confirm that your originating identity is Regionally supported

The country or AWS Region that you're sending messages to must support the originating identities that you're using.

For example, to send messages to US destination phone numbers, you must have a supported US origination number (TFN/10DLC/ShortCode) in your Region. Or, to send messages to CA destination phone numbers, you must have a supported CA origination number (LongCode/ShortCode) in your Region.

For a complete list of countries that support and don't support each type of originating identity, see Supported Regions and countries.

AWS OFFICIAL
AWS OFFICIALUpdated a year ago
2 Comments

Can I get Provider response from SDK

Mohamed
replied 8 months ago

Thank you for your comment. We'll review and update the Knowledge Center article as needed.

profile pictureAWS
MODERATOR
replied 8 months ago