AWS End User Messaging SMS
MessagingConnect AI agents to AWS End User Messaging SMS, the AWS service formerly branded Amazon Pinpoint SMS. Agents send SMS, MMS, and voice messages and manage phone numbers, sender IDs, opt-out lists, and configuration sets so messaging infrastructure stays under programmatic control.
What This Integration Enables
Almost every other messaging connector in this catalog is a send with some reporting behind it. This one is not. AWS End User Messaging SMS, the service AWS previously branded Amazon Pinpoint SMS and Voice v2, is messaging infrastructure, and the shape of this connector reflects that honestly: three send actions out of forty one. The other thirty eight manage the things that decide whether a send is legitimate. Origination phone numbers and alphanumeric sender IDs, plus the pools that group them so AWS can pick an appropriate originator per destination. The opt-out lists that every number and pool attaches to, and the keywords that answer an inbound HELP or STOP. The configuration sets that carry defaults and telemetry, and the event destinations that stream lifecycle events into CloudWatch Logs, Kinesis Data Firehose or Amazon SNS. Finally the spend limits and service quotas that cap the whole thing.
That is the reason to reach for this connector. If your messaging already runs on AWS, the parts that usually rot are the parts nobody automates. Which numbers are leased and what they cost, which pool a number sits in, whether the opt-out list attached to the sender is the one your compliance team thinks it is, whether the account is still in the SMS sandbox. All of those become steps an agent performs and reports. Every resource is region scoped, and every response is returned in AWS's own shape so it matches the API reference exactly. The sends themselves are unusually careful too. All three accept a Dry Run flag that validates the request and returns the estimated cost without delivering anything. MMS media is referenced as an s3:// URL that the service principal must be able to read, and Send Voice Message reads a script through Amazon Polly with plain text or SSML. AWS publishes message lifecycle events to an SNS topic, a Firehose stream or a log group rather than to an HTTP subscription, so this connector ships no triggers: you configure the event destination with these actions and consume the AWS resource directly.
Without FlowRunner
With FlowRunner
Use Case Scenarios
A one-time password path that proves it worked
An authentication flow sends a code with Send Text Message using the transactional message type, a short time to live so a stale code never lands, and message feedback enabled. The returned AWS message ID is held. When the user completes verification, the agent calls Put Message Feedback and marks the message Received. AWS retains that feedback record for one hour after the send, so the reporting window is tight and the flow has to close the loop promptly or the outcome is recorded as unknown. What this buys is a delivery record grounded in what the user actually did rather than in what a carrier acknowledged.
Consent enforced at the boundary, not in a spreadsheet
A promotional run is prepared. Every phone number and pool attaches to exactly one opt-out list, and AWS blocks sends to numbers on that list unless self-managed opt-outs are switched on. Before the run, the agent calls Describe Opted-Out Numbers with the option that returns only numbers that opted out themselves by replying with a keyword, and reconciles that set against the suppression list in HubSpot. Divergence in either direction is an exception with an owner. Meanwhile Put Keyword keeps the automatic answers current on each origination identity, and the reserved keywords that AWS will not let anyone delete stay exactly where they are.
MMS from assets that are already in the bucket
Marketing publishes campaign creative into an S3 bucket. The agent calls Send Media Message with the s3:// reference rather than uploading anything, having first confirmed through Describe Phone Numbers that the origination identity carries the MMS capability, because a text capable number will not send one. A Dry Run pass validates the request and returns the price before the real send. Delivery events stream to the configuration set's event destination, and the agent correlates them by the AWS message ID it kept.
Human-in-Loop Highlight
Release Phone Number is the operation on this connector that a person should be reading before it runs. It ends the number's monthly lease and makes it permanently unavailable for sending, and AWS is explicit that released numbers cannot be recovered. What makes it worse than an ordinary irreversible delete is everything that travels with the number. It is the sender ID your customers have saved and reply to. It carries the two-way channel that routes those replies. It attaches to an opt-out list, and it holds the keywords that answer HELP and STOP. For a 10DLC or toll-free number it also carries a completed registration, which is not something you get back by leasing another number the next morning.
The safety rails AWS provides are real but they run out exactly where the risk starts. AWS rejects the release when deletion protection is enabled or when the number is still associated with a pool, which means any flow that reaches a successful Release Phone Number call has already turned protection off and already run Disassociate Origination Identity. By that point the platform has stopped objecting. So the agent does the reconnaissance and then stops. It pulls the number's full record from Describe Phone Numbers, checks Get Activity through Describe Keywords for what that line still answers, and asks the messaging owner: "Number +1 555 0142 is scheduled for release. It is a 10DLC number with a completed registration, three keywords configured including a custom START handler, and it is the attached sender on the order notification configuration set. Release is permanent and the registration does not come back. Release, or keep the lease and just remove it from the promotional pool?" Delete Opt-Out List sits on the same footing for a different reason: it deletes every opted-out number the list contains, which destroys the record of who asked you to stop. Note the contrast AWS itself draws, and follow it. A number that opted out by replying with a keyword cannot be removed from a list for thirty days, and AWS rejects earlier attempts outright. When a vendor hard codes a cooling-off period into its own API, that is a strong signal about which operations belong in front of a human. This is what the digital andon cord is for: the agent runs the messaging estate day to day, and pulls the cord on the handful of calls that cannot be taken back.
Agent Capabilities
41 actionsMessaging
4- Send Text Message Sends a single SMS to one recipient. The origination identity may be a phone number ID or ARN, an E.164 number, a sender ID or ARN, or a pool ID or ARN, and can be omitted only when the configuration set carries a default. Supports transactional and promotional message types, a maximum price in USD, a time to live, opaque context pairs echoed back on event records, and India DLT parameters. Dry Run validates the request and returns the price without delivering. Returns the AWS message ID used to correlate delivery events.
- Send Media Message Sends a single MMS to one recipient, with media referenced by an `s3://` URL that the service must be able to read, and an optional text body alongside the attachments. Requires an origination identity that carries the MMS capability. Supports a maximum price, a time to live, context pairs and a dry run that validates without delivering.
- Send Voice Message Places an outbound voice call that reads a script through Amazon Polly, with the body given as plain text or SSML and any supported Polly voice selected. Requires a voice capable origination number. Supports a maximum price per minute, a time to live, context pairs and a dry run that validates the request without placing the call.
- Put Message Feedback Reports the final outcome of a message sent with feedback enabled, marking it Received or Failed. AWS retains the feedback record for one hour after the send, and an outcome not supplied inside that window is reported as unknown. Used after an application level signal confirms the recipient acted, such as a completed one-time password verification.
Phone Numbers
4- Describe Phone Numbers Lists the origination phone numbers in the account and region, or specific ones by ID, narrowable by status, country, message type, capability, number type, two-way state and opt-out list. Each entry reports the E.164 number, its ID and ARN, capabilities, monthly leasing price, two-way settings, opt-out list, deletion protection and pool membership. This is the inventory read that any change should start from.
- Request Phone Number Leases a new origination number, with the number type, country, message type and capabilities all required to be supported in combination. 10DLC and toll-free numbers additionally require a completed registration whose ID is supplied here. The number can be placed straight into a pool and attached to an opt-out list. This provisions a billable resource with a recurring monthly charge.
- Update Phone Number Updates an existing number's opt-out list, two-way channel and IAM role, self-managed opt-out handling, international sending and deletion protection. AWS rejects the request while the number belongs to a pool, because pool level settings take precedence, which is a useful reminder that pool membership changes where a setting actually lives.
- Release Phone Number Releases a number back to AWS, ending its lease and making it permanently unavailable. AWS rejects the request when deletion protection is on or the number is still in a pool. Released numbers cannot be recovered, and the registration, keywords and two-way routing attached to the number go with it, which is why this belongs behind an explicit human approval.
Sender IDs
3- Describe Sender IDs Lists the alphanumeric sender IDs registered to the account and region, narrowable by sender ID, country, message type, deletion protection and registration state. Each entry reports the countries and message types it is valid for, the monthly price and whether it is backed by a completed registration.
- Request Sender ID Requests an alphanumeric sender ID for a specific country. Support, character rules and whether pre-registration is required all vary by country, and some countries charge a recurring monthly fee that is returned in the response. Used to give recipients a sender they recognize where the destination allows it.
- Release Sender ID Releases a sender ID for a given country, ending any recurring charge and removing it as an origination identity. AWS rejects the request when deletion protection is enabled. Like releasing a number, this changes what recipients see and should be treated as a change to customer facing identity.
Pools
7- Create Pool Creates a pool and seeds it with an initial origination identity. A pool groups numbers and sender IDs so AWS picks an appropriate originator per destination, and it centralizes two-way messaging, opt-out and shared route settings across every member. A country code is required when seeding with a sender ID.
- Describe Pools Lists the pools in the account and region, or specific ones by ID, narrowable by status, message type, two-way state, opt-out list, shared routes and deletion protection. Each entry reports the pool's settings and the opt-out list attached to it, which is the fastest way to confirm what suppression a whole group of senders is honoring.
- Update Pool Updates a pool's shared settings: two-way channel and IAM role, self-managed opt-out handling, the attached opt-out list, whether AWS shared routes may be used as a fallback, and deletion protection. These apply to every identity in the pool, so a single call changes the behavior of every number inside it.
- Delete Pool Deletes a pool. Every origination identity must be disassociated first and deletion protection must be off. Deleting a pool does not release the numbers it held; they return to being managed individually, which means the settings they inherited from the pool stop applying.
- Associate Origination Identity Adds a number or sender ID to a pool so AWS can select it when routing through that pool. The identity must not already belong to another pool and must be compatible with the pool's message type. A country code is required for a sender ID.
- Disassociate Origination Identity Removes a number or sender ID from a pool, returning it to individual management and taking it out of the pool's routing. Worth noting that this is the step which clears the way for a release, so it deserves the same attention as the release itself.
- List Pool Origination Identities Lists the numbers and sender IDs currently in a pool, narrowable by country or channel capability, with each entry's capabilities and, for numbers, the E.164 form. The read that answers what a pool will actually send from before a campaign uses it.
Opt-Outs
6- Create Opt-Out List Creates a new opt-out list. A list holds the destination numbers that must not be messaged, every number and pool attaches to exactly one, and AWS blocks sends to numbers on the attached list unless self-managed opt-outs are enabled. Every account starts with a list named Default.
- Describe Opt-Out Lists Lists the opt-out lists in the account and region, or specific ones by name, with each list's ARN and creation time, paginated. Used to confirm that the list a sender is attached to is the list your compliance process actually maintains.
- Delete Opt-Out List Deletes an opt-out list and every opted-out number it contains. AWS rejects the request while the list is attached to a number or pool, and the Default list cannot be deleted. This destroys the record of who asked not to be contacted, which makes it a compliance event rather than a cleanup task.
- Add Opted-Out Number Adds a destination number to an opt-out list so AWS blocks future messages to it. Numbers added this way are recorded as added by the account rather than by the end user, and that distinction is preserved in the record, which matters when someone later asks who initiated the suppression.
- Describe Opted-Out Numbers Lists the numbers on an opt-out list, or checks whether specific numbers are on it, with the option to return only those who opted out themselves by replying with a keyword. Each entry reports when the opt-out happened and whether the end user initiated it.
- Remove Opted-Out Number Removes a number from an opt-out list so messages to it are no longer blocked. Numbers that opted out themselves by replying with a keyword can only be removed thirty days after the opt-out, and AWS rejects earlier attempts outright. Treat that floor as the vendor stating where an integration's authority ends.
Keywords
3- Put Keyword Creates or updates a keyword on an origination identity, so a recipient replying with it receives the configured response and is optionally opted out or back in. Keywords are defined per number, sender ID or pool, and AWS reserves HELP, STOP and their equivalents on most routes.
- Describe Keywords Lists the keywords configured on an origination identity, or looks up specific ones, narrowable by action. Each entry reports the keyword, its response message and whether it opts the recipient in or out. The read that tells you what a line will say when nobody is watching.
- Delete Keyword Removes a keyword from an origination identity so replies containing it are no longer answered automatically. AWS-reserved keywords such as HELP and STOP cannot be deleted, which keeps the floor of recipient rights intact regardless of what a flow attempts.
Configuration Sets
5- Create Configuration Set Creates a named group of rules applied to messages that reference it: default message type, default sender ID, default message feedback behavior, and the event destinations that receive telemetry. Configuration sets are how you keep one application's defaults and delivery data separate from another's.
- Describe Configuration Sets Lists the configuration sets in the account and region, or specific ones by name, narrowable by event destination name, default message type or default sender ID. Each entry reports the configured defaults and the full list of event destinations attached.
- Delete Configuration Set Deletes a configuration set together with every event destination it contains. Messages that reference the deleted set by name will fail until they are updated, so this breaks senders elsewhere rather than only removing a record. Numbers, pools and opt-out lists are unaffected.
- Set Default Message Type Sets the default message type applied when a send through this configuration set does not specify one. Transactional favors reliability for time sensitive content such as one-time passwords, and Promotional favors cost for marketing content, so the default here quietly decides how a whole application's traffic is routed.
- Set Default Sender ID Sets the default alphanumeric sender ID used when a send through this configuration set does not specify an origination identity. The sender ID must already be registered and supported in the destination country, so this is a change to what recipients see and not just to a fallback value.
Event Destinations
3- Create Event Destination Adds an event destination to a configuration set so message lifecycle events stream into AWS infrastructure. Exactly one target must be supplied: a CloudWatch Logs log group, a Kinesis Data Firehose delivery stream, or an SNS topic. The matching event types select which text, voice, media and RCS events are published, and CloudWatch Logs and Firehose targets require an IAM role that grants write permission.
- Update Event Destination Updates an existing event destination: enable or disable it without deleting it, replace its matching event types, or repoint it at a different log group, delivery stream or topic. Omitted fields keep their current values, so a partial update will not silently clear a colleague's configuration.
- Delete Event Destination Removes an event destination from a configuration set. Events stop being published immediately and the underlying log group, delivery stream or topic is not deleted, which means the telemetry goes quiet without anything appearing to break.
Account
3- Describe Account Attributes Returns the account level attributes for the configured region, including the account tier. The tier reports whether the account is still in the SMS sandbox, where only verified destination numbers can be messaged, or has been moved to production. Read this before assuming a delivery failure is a delivery problem.
- Describe Account Limits Returns the service quotas for the configured region and how much of each is currently used, covering phone numbers, pools, configuration sets, opt-out lists, sender IDs, registrations, registration attachments and verified destination numbers. The report to run before a provisioning flow discovers a ceiling the hard way.
- Describe Spend Limits Returns the monthly spend limits for text, voice, media, notify and RCS messaging in the region, each with the maximum AWS allows, the limit currently enforced and whether the enforced value has been set below the maximum. The single most useful number to put in front of a person before a large campaign.
Verified Destination Numbers
3- Create Verified Destination Number Registers a destination number so it can receive messages while the account is in the SMS sandbox. The number is created Pending, AWS sends a verification code to it, and the number becomes usable only once it reaches Verified. Sandbox accounts can message nothing else.
- Describe Verified Destination Numbers Lists the destination numbers registered for sandbox verification, or looks up specific ones by ID or number, narrowable by status. Each entry reports whether it is Pending, Verified or Unsupported, which is how a sandbox flow distinguishes a number waiting on a person from one that will never work.
- Delete Verified Destination Number Removes a destination number from the sandbox verification list. While the account remains in the sandbox, messages can no longer be sent to that number, so removing one during testing turns a working test path into a silent dead end.
Frequently Asked Questions
What can FlowRunner do with AWS End User Messaging SMS?
FlowRunner agents can run Send Text Message, Send Media Message, and Send Voice Message in AWS End User Messaging SMS, plus 38 more actions.
Does connecting AWS End User Messaging SMS to FlowRunner require OAuth?
AWS End User Messaging SMS uses a custom authentication method to connect to FlowRunner.
Can AWS End User Messaging SMS trigger a FlowRunner workflow automatically?
AWS End User Messaging SMS doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.
Start building with AWS End User Messaging SMS
$100 in credits. No card required. Connect in minutes.