APIs and SDKs
AWS End User Messaging is a family of APIs rather than a single API. Each channel group has its own API, and you choose the one that matches the service and features you want to use. The channel-level APIs give you direct control over sending and managing resources for a specific channel, and a top-level AWS End User Messaging API lets you orchestrate across channels, so you can manage shared resources such as brand profiles and coordinate how your brand sends across SMS, RCS, and the other channels from one place. You can call every AWS End User Messaging API through the AWS Management Console, the AWS AWS CLI, the AWS SDKs for your programming language, and the AWS Tools for PowerShell.
The AWS End User Messaging APIs
The following table lists the AWS End User Messaging APIs and what each one manages.
API |
AWS CLI command |
What it manages |
API reference |
|---|---|---|---|
AWS End User Messaging SMS and Voice, version 2 |
|
Phone numbers, sender IDs, phone pools, opt-out lists, and configuration sets, and sending SMS, MMS, voice, and RCS messages. Also manages Notify configurations. |
|
AWS End User Messaging Social |
|
WhatsApp, including linking a WhatsApp Business Account, managing message templates, and sending WhatsApp messages. |
|
AWS End User Messaging Push |
|
Push notifications through Apple Push Notification service (APNs), Firebase Cloud Messaging (FCM), Amazon Device Messaging (ADM), and Baidu Cloud Push, including applications, channels, and endpoints. |
|
AWS End User Messaging |
|
Brand profiles and Notify code configurations, and syncing brand profile data with SMS and RCS registrations. |
Using each service programmatically
Use the following API for each service and its features.
SMS, MMS, voice, and RCS
Use the pinpoint-sms-voice-v2 APIs to provision and manage the identities you send from and to send messages. This API covers phone numbers, sender IDs, phone pools, opt-out lists, and configuration sets, and the operations that send SMS, MMS, voice, and RCS messages. For example, you send a text message with send-text-message and send an RCS message with send-text-message using an RCS-capable phone pool.
Notify
Notify spans two APIs that play different roles. The Notify configuration is the shared resource that holds the origination identities and settings Notify sends from, and you manage it with the pinpoint-sms-voice-v2 API using create-notify-configuration. The Notify code configuration is where you set the policy for how passcodes are generated and validated, such as code length and validity period. You manage it, and send and validate passcodes, with the endusermessaging API using operations such as create-notify-code-configuration, send-notify-code-verification, and validate-notify-code-verification.
Brand profiles
Use the endusermessaging APIs to create and manage brand profiles and their attributes, and to sync brand profile data with registrations. For example, you create a brand profile with create-brand-profile and create registrations from a profile with create-registrations-from-brand-profile.
Use the socialmessaging APIs to link a WhatsApp Business Account, manage message templates, and send WhatsApp messages. For example, you send a message with send-whatsapp-message.
Push notifications
Use the pinpoint API to send push notifications through APNs, FCM, ADM, and Baidu Cloud Push. You create an application, configure the push channels you use, register device endpoints, and send messages to those endpoints.
Accessing the APIs with SDKs, the AWS CLI, and PowerShell
You can call any of the AWS End User Messaging APIs in the following ways:
-
AWS SDKs – Use an AWS SDK to call the APIs from your application in a supported programming language, such as Java, Python, JavaScript, .NET, Go, and others. The SDK handles request signing, retries, and error handling for you. For the list of available SDKs, see Tools to Build on AWS
. -
AWS AWS CLI – Use the AWS CLI to call the APIs from the command line or from scripts. For more information, see the AWSAWS CLI Command Reference.
-
AWS Tools for PowerShell – Use the Tools for PowerShell to call the APIs from PowerShell scripts. For more information, see the AWS Tools for PowerShell Cmdlet Reference.