2026/06/29 - Amazon Pinpoint SMS Voice V2 - 3 new10 updated api methods
Changes This launch is an expansion of our Q1 RCS for business launch where we will release an API that supports rich media and interactive messaging elements.
Creates a new RCS message and sends it to a recipient's phone number. RCS messages support rich content including text, files, rich cards, and carousels with interactive suggested actions.
See also: AWS API Documentation
Request Syntax
client.send_rcs_message(
DestinationPhoneNumber='string',
OriginationIdentity='string',
RcsMessageContent={
'Content': {
'TextMessage': {
'Body': 'string'
},
'FileMessage': {
'FileUrl': 'string',
'ThumbnailUrl': 'string'
},
'RichCard': {
'CardOrientation': 'string',
'ThumbnailImageAlignment': 'string',
'CardContent': {
'Title': 'string',
'Description': 'string',
'Media': {
'FileUrl': 'string',
'ThumbnailUrl': 'string',
'Height': 'string'
},
'Suggestions': [
{
'Reply': {
'Text': 'string',
'PostbackData': 'string'
},
'OpenUrl': {
'Text': 'string',
'PostbackData': 'string',
'Url': 'string',
'Application': 'string',
'WebviewViewMode': 'string'
},
'DialPhone': {
'Text': 'string',
'PostbackData': 'string',
'PhoneNumber': 'string'
},
'ShowLocation': {
'Text': 'string',
'PostbackData': 'string',
'Latitude': 123.0,
'Longitude': 123.0,
'Label': 'string'
},
'RequestLocation': {
'Text': 'string',
'PostbackData': 'string'
},
'CreateCalendarEvent': {
'Text': 'string',
'PostbackData': 'string',
'Title': 'string',
'StartTime': datetime(2015, 1, 1),
'EndTime': datetime(2015, 1, 1),
'Description': 'string'
}
},
]
}
},
'Carousel': {
'CardWidth': 'string',
'CardContents': [
{
'Title': 'string',
'Description': 'string',
'Media': {
'FileUrl': 'string',
'ThumbnailUrl': 'string',
'Height': 'string'
},
'Suggestions': [
{
'Reply': {
'Text': 'string',
'PostbackData': 'string'
},
'OpenUrl': {
'Text': 'string',
'PostbackData': 'string',
'Url': 'string',
'Application': 'string',
'WebviewViewMode': 'string'
},
'DialPhone': {
'Text': 'string',
'PostbackData': 'string',
'PhoneNumber': 'string'
},
'ShowLocation': {
'Text': 'string',
'PostbackData': 'string',
'Latitude': 123.0,
'Longitude': 123.0,
'Label': 'string'
},
'RequestLocation': {
'Text': 'string',
'PostbackData': 'string'
},
'CreateCalendarEvent': {
'Text': 'string',
'PostbackData': 'string',
'Title': 'string',
'StartTime': datetime(2015, 1, 1),
'EndTime': datetime(2015, 1, 1),
'Description': 'string'
}
},
]
},
]
}
},
'Suggestions': [
{
'Reply': {
'Text': 'string',
'PostbackData': 'string'
},
'OpenUrl': {
'Text': 'string',
'PostbackData': 'string',
'Url': 'string',
'Application': 'string',
'WebviewViewMode': 'string'
},
'DialPhone': {
'Text': 'string',
'PostbackData': 'string',
'PhoneNumber': 'string'
},
'ShowLocation': {
'Text': 'string',
'PostbackData': 'string',
'Latitude': 123.0,
'Longitude': 123.0,
'Label': 'string'
},
'RequestLocation': {
'Text': 'string',
'PostbackData': 'string'
},
'CreateCalendarEvent': {
'Text': 'string',
'PostbackData': 'string',
'Title': 'string',
'StartTime': datetime(2015, 1, 1),
'EndTime': datetime(2015, 1, 1),
'Description': 'string'
}
},
]
},
TimeToLive=123,
MessageTrafficType='string',
FallbackConfiguration={
'Channel': 'SMS'|'MMS',
'MessageBody': 'string',
'MediaUrls': [
'string',
],
'OriginationIdentity': 'string'
},
ProtectConfigurationId='string',
ConfigurationSetName='string',
MaxPrice='string',
DryRun=True|False,
Context={
'string': 'string'
},
MessageFeedbackEnabled=True|False
)
string
[REQUIRED]
The destination phone number in E.164 format.
string
[REQUIRED]
The origination identity of the message. This can be either the RcsAgentId, RcsAgentArn, PoolId, or PoolArn.
dict
The content of the RCS message. Contains the message content (text, file, rich card, or carousel) and optional message-level suggested actions.
Content (dict) -- [REQUIRED]
The content of the RCS message. Exactly one content type must be specified: TextMessage, FileMessage, RichCard, or Carousel.
TextMessage (dict) --
A plain text RCS message.
Body (string) -- [REQUIRED]
The text body of the RCS message. Maximum 3072 characters.
FileMessage (dict) --
A file message containing a media file (image, video, audio, or PDF) with an optional thumbnail.
FileUrl (string) -- [REQUIRED]
The S3 URI of the media file to send, in the format s3://bucket-name/key. The service downloads the file from your S3 bucket, rehosts it, and generates a presigned URL for the aggregator. Maximum 2000 characters.
ThumbnailUrl (string) --
The S3 URI of an optional thumbnail image for the media file, in the format s3://bucket-name/key. Maximum 2000 characters.
RichCard (dict) --
A standalone rich card with media, title, description, and suggested actions.
CardOrientation (string) -- [REQUIRED]
The orientation of the rich card. Valid values are HORIZONTAL and VERTICAL.
ThumbnailImageAlignment (string) --
The alignment of the thumbnail image in a horizontal card. Valid values are LEFT and RIGHT. Only applicable when CardOrientation is HORIZONTAL.
CardContent (dict) -- [REQUIRED]
The content of the rich card, including title, description, media, and card-level suggested actions.
Title (string) --
The title of the card. Maximum 200 characters.
Description (string) --
The description text of the card. Maximum 2000 characters.
Media (dict) --
The media content of the card, including the file URL, optional thumbnail, and display height.
FileUrl (string) -- [REQUIRED]
The S3 URI of the media file for the card, in the format s3://bucket-name/key. Maximum 2000 characters.
ThumbnailUrl (string) --
The S3 URI of an optional thumbnail image for the card media. Maximum 2000 characters.
Height (string) --
The display height of the media in the card. Valid values are SHORT, MEDIUM, and TALL.
Suggestions (list) --
Card-level suggested actions. Maximum 4 suggestions per card.
(dict) --
A suggested action displayed to the RCS message recipient. Can be a reply, open URL, dial phone, show location, request location, or create calendar event.
Reply (dict) --
A suggested reply that sends predefined text and postback data when tapped.
Text (string) -- [REQUIRED]
The display text of the suggested reply. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this reply. Maximum 2048 characters.
OpenUrl (dict) --
A suggested action that opens a URL in the user's browser or a webview.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
Url (string) -- [REQUIRED]
The URL to open. Must start with https://. Maximum 2048 characters.
Application (string) --
How to open the URL. BROWSER opens in the device's default browser. WEBVIEW opens in an in-app webview.
WebviewViewMode (string) --
The display mode of the webview. Valid values are FULL, HALF, and TALL. Only applicable when Application is WEBVIEW.
DialPhone (dict) --
A suggested action that initiates a phone call to the specified number.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
PhoneNumber (string) -- [REQUIRED]
The phone number to dial in E.164 format.
ShowLocation (dict) --
A suggested action that shows a location on a map.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
Latitude (float) -- [REQUIRED]
The latitude of the location. Valid values are -90 to 90.
Longitude (float) -- [REQUIRED]
The longitude of the location. Valid values are -180 to 180.
Label (string) --
An optional label for the location pin. Maximum 100 characters.
RequestLocation (dict) --
A suggested action that requests the user's current location.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
CreateCalendarEvent (dict) --
A suggested action that creates a calendar event on the user's device.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
Title (string) -- [REQUIRED]
The title of the calendar event. Maximum 100 characters.
StartTime (datetime) -- [REQUIRED]
The start time of the calendar event in ISO 8601 format.
EndTime (datetime) -- [REQUIRED]
The end time of the calendar event in ISO 8601 format.
Description (string) --
An optional description for the calendar event. Maximum 500 characters.
Carousel (dict) --
A carousel of 2 to 10 scrollable cards, each with media, title, description, and suggested actions.
CardWidth (string) -- [REQUIRED]
The width of cards in the carousel. Valid values are SMALL and MEDIUM.
CardContents (list) -- [REQUIRED]
The list of cards in the carousel. Minimum 2, maximum 10 cards.
(dict) --
The content of a carousel card, including title, description, media, and card-level suggested actions. Media height is restricted to SHORT or MEDIUM.
Title (string) --
The title of the carousel card. Maximum 200 characters.
Description (string) --
The description text of the carousel card. Maximum 2000 characters.
Media (dict) --
The media content of the carousel card. Media height is restricted to SHORT or MEDIUM (TALL is not supported in carousels).
FileUrl (string) -- [REQUIRED]
The S3 URI of the media file for the carousel card. Maximum 2000 characters.
ThumbnailUrl (string) --
The S3 URI of an optional thumbnail image for the carousel card media. Maximum 2000 characters.
Height (string) --
The display height of the media in the carousel card. Valid values are SHORT and MEDIUM.
Suggestions (list) --
Card-level suggested actions for this carousel card. Maximum 4 suggestions per card.
(dict) --
A suggested action displayed to the RCS message recipient. Can be a reply, open URL, dial phone, show location, request location, or create calendar event.
Reply (dict) --
A suggested reply that sends predefined text and postback data when tapped.
Text (string) -- [REQUIRED]
The display text of the suggested reply. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this reply. Maximum 2048 characters.
OpenUrl (dict) --
A suggested action that opens a URL in the user's browser or a webview.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
Url (string) -- [REQUIRED]
The URL to open. Must start with https://. Maximum 2048 characters.
Application (string) --
How to open the URL. BROWSER opens in the device's default browser. WEBVIEW opens in an in-app webview.
WebviewViewMode (string) --
The display mode of the webview. Valid values are FULL, HALF, and TALL. Only applicable when Application is WEBVIEW.
DialPhone (dict) --
A suggested action that initiates a phone call to the specified number.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
PhoneNumber (string) -- [REQUIRED]
The phone number to dial in E.164 format.
ShowLocation (dict) --
A suggested action that shows a location on a map.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
Latitude (float) -- [REQUIRED]
The latitude of the location. Valid values are -90 to 90.
Longitude (float) -- [REQUIRED]
The longitude of the location. Valid values are -180 to 180.
Label (string) --
An optional label for the location pin. Maximum 100 characters.
RequestLocation (dict) --
A suggested action that requests the user's current location.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
CreateCalendarEvent (dict) --
A suggested action that creates a calendar event on the user's device.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
Title (string) -- [REQUIRED]
The title of the calendar event. Maximum 100 characters.
StartTime (datetime) -- [REQUIRED]
The start time of the calendar event in ISO 8601 format.
EndTime (datetime) -- [REQUIRED]
The end time of the calendar event in ISO 8601 format.
Description (string) --
An optional description for the calendar event. Maximum 500 characters.
Suggestions (list) --
Message-level suggested actions displayed to the recipient. Maximum 11 suggestions per message.
(dict) --
A suggested action displayed to the RCS message recipient. Can be a reply, open URL, dial phone, show location, request location, or create calendar event.
Reply (dict) --
A suggested reply that sends predefined text and postback data when tapped.
Text (string) -- [REQUIRED]
The display text of the suggested reply. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this reply. Maximum 2048 characters.
OpenUrl (dict) --
A suggested action that opens a URL in the user's browser or a webview.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
Url (string) -- [REQUIRED]
The URL to open. Must start with https://. Maximum 2048 characters.
Application (string) --
How to open the URL. BROWSER opens in the device's default browser. WEBVIEW opens in an in-app webview.
WebviewViewMode (string) --
The display mode of the webview. Valid values are FULL, HALF, and TALL. Only applicable when Application is WEBVIEW.
DialPhone (dict) --
A suggested action that initiates a phone call to the specified number.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
PhoneNumber (string) -- [REQUIRED]
The phone number to dial in E.164 format.
ShowLocation (dict) --
A suggested action that shows a location on a map.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
Latitude (float) -- [REQUIRED]
The latitude of the location. Valid values are -90 to 90.
Longitude (float) -- [REQUIRED]
The longitude of the location. Valid values are -180 to 180.
Label (string) --
An optional label for the location pin. Maximum 100 characters.
RequestLocation (dict) --
A suggested action that requests the user's current location.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
CreateCalendarEvent (dict) --
A suggested action that creates a calendar event on the user's device.
Text (string) -- [REQUIRED]
The display text of the action. Maximum 25 characters.
PostbackData (string) -- [REQUIRED]
The postback data sent to your webhook when the user taps this action. Maximum 2048 characters.
Title (string) -- [REQUIRED]
The title of the calendar event. Maximum 100 characters.
StartTime (datetime) -- [REQUIRED]
The start time of the calendar event in ISO 8601 format.
EndTime (datetime) -- [REQUIRED]
The end time of the calendar event in ISO 8601 format.
Description (string) --
An optional description for the calendar event. Maximum 500 characters.
integer
The duration in seconds that the RCS message is valid for delivery. If the message cannot be delivered within this duration, it is considered expired. Valid values are 1 to 172800 (48 hours). If a FallbackConfiguration is provided, the fallback is triggered when the duration expires without delivery confirmation.
string
The traffic type of the RCS message. Valid values are AUTHENTICATION, TRANSACTION, PROMOTION, SERVICE_REQUEST, and ACKNOWLEDGEMENT. This field is reserved for future use.
dict
Configuration for SMS or MMS fallback when RCS delivery fails. If provided, the service sends a fallback message via the specified channel when the RCS message fails or the TimeToLive expires.
Channel (string) -- [REQUIRED]
The fallback channel to use when RCS delivery fails. Valid values are SMS and MMS. SMS and MMS are mutually exclusive.
MessageBody (string) --
The text body of the fallback message. Required for SMS fallback. For MMS fallback, at least one of MessageBody or MediaUrls must be provided.
MediaUrls (list) --
An array of S3 URIs to media files for MMS fallback. Only valid when Channel is MMS.
(string) --
OriginationIdentity (string) --
The origination identity to use for the fallback message. This can be a PhoneNumber, PhoneNumberId, PhoneNumberArn, SenderId, or SenderIdArn. Pool IDs and pool ARNs are not accepted. If not specified and the original message was sent via a pool, the service selects a suitable number from the pool.
string
The unique identifier of the protect configuration to use.
string
The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.
string
The maximum amount that you want to spend, in US dollars, per each RCS message.
boolean
When set to true, the message is checked and validated, but isn't sent to the end recipient.
dict
You can specify custom data in this field. If you do, that data is logged to the event destination.
(string) --
(string) --
boolean
Set to true to enable message feedback for the message. When a user receives the message you need to update the message status using PutMessageFeedback.
dict
Response Syntax
{
'MessageId': 'string'
}
Response Structure
(dict) --
MessageId (string) --
The unique identifier for the message.
Sets an account level monthly spend limit override for sending RCS messages. The requested spend limit must be less than or equal to the MaxLimit, which is set by Amazon Web Services.
See also: AWS API Documentation
Request Syntax
client.set_rcs_message_spend_limit_override(
MonthlyLimit=123
)
integer
[REQUIRED]
The new monthly limit to enforce on RCS message spending.
dict
Response Syntax
{
'MonthlyLimit': 123
}
Response Structure
(dict) --
MonthlyLimit (integer) --
The current monthly limit to enforce on RCS message spending.
Deletes an account-level monthly spending limit override for sending RCS messages. Deleting a spend limit override sets the EnforcedLimit to equal the MaxLimit, which is set by Amazon Web Services.
See also: AWS API Documentation
Request Syntax
client.delete_rcs_message_spend_limit_override()
dict
Response Syntax
{
'MonthlyLimit': 123
}
Response Structure
(dict) --
MonthlyLimit (integer) --
The current monthly limit to enforce on RCS message spending.
{'MatchingEventTypes': {'RCS_ALL',
'RCS_DELIVERED',
'RCS_FAILED',
'RCS_FALLEN_BACK_TO_SMS',
'RCS_PROTECT_BLOCKED',
'RCS_QUEUED',
'RCS_READ',
'RCS_SENT',
'RCS_TTL_EXPIRED'}}
Response {'EventDestination': {'MatchingEventTypes': {'RCS_ALL',
'RCS_DELIVERED',
'RCS_FAILED',
'RCS_FALLEN_BACK_TO_SMS',
'RCS_PROTECT_BLOCKED',
'RCS_QUEUED',
'RCS_READ',
'RCS_SENT',
'RCS_TTL_EXPIRED'}}}
Creates a new event destination in a configuration set.
An event destination is a location where you send message events. The event options are Amazon CloudWatch, Amazon Data Firehose, or Amazon SNS. For example, when a message is delivered successfully, you can send information about that event to an event destination, or send notifications to endpoints that are subscribed to an Amazon SNS topic.
You can only create one event destination at a time. You must provide a value for a single event destination using either CloudWatchLogsDestination, KinesisFirehoseDestination or SnsDestination. If an event destination isn't provided then an exception is returned.
Each configuration set can contain between 0 and 5 event destinations. Each event destination can contain a reference to a single destination, such as a CloudWatch or Firehose destination.
See also: AWS API Documentation
Request Syntax
client.create_event_destination(
ConfigurationSetName='string',
EventDestinationName='string',
MatchingEventTypes=[
'ALL'|'TEXT_ALL'|'TEXT_SENT'|'TEXT_PENDING'|'TEXT_QUEUED'|'TEXT_SUCCESSFUL'|'TEXT_DELIVERED'|'TEXT_INVALID'|'TEXT_INVALID_MESSAGE'|'TEXT_UNREACHABLE'|'TEXT_CARRIER_UNREACHABLE'|'TEXT_BLOCKED'|'TEXT_CARRIER_BLOCKED'|'TEXT_SPAM'|'TEXT_UNKNOWN'|'TEXT_TTL_EXPIRED'|'TEXT_PROTECT_BLOCKED'|'VOICE_ALL'|'VOICE_INITIATED'|'VOICE_RINGING'|'VOICE_ANSWERED'|'VOICE_COMPLETED'|'VOICE_BUSY'|'VOICE_NO_ANSWER'|'VOICE_FAILED'|'VOICE_TTL_EXPIRED'|'MEDIA_ALL'|'MEDIA_PENDING'|'MEDIA_QUEUED'|'MEDIA_SUCCESSFUL'|'MEDIA_DELIVERED'|'MEDIA_INVALID'|'MEDIA_INVALID_MESSAGE'|'MEDIA_UNREACHABLE'|'MEDIA_CARRIER_UNREACHABLE'|'MEDIA_BLOCKED'|'MEDIA_CARRIER_BLOCKED'|'MEDIA_SPAM'|'MEDIA_UNKNOWN'|'MEDIA_TTL_EXPIRED'|'MEDIA_FILE_INACCESSIBLE'|'MEDIA_FILE_TYPE_UNSUPPORTED'|'MEDIA_FILE_SIZE_EXCEEDED'|'RCS_ALL'|'RCS_QUEUED'|'RCS_SENT'|'RCS_DELIVERED'|'RCS_READ'|'RCS_FAILED'|'RCS_TTL_EXPIRED'|'RCS_PROTECT_BLOCKED'|'RCS_FALLEN_BACK_TO_SMS',
],
CloudWatchLogsDestination={
'IamRoleArn': 'string',
'LogGroupArn': 'string'
},
KinesisFirehoseDestination={
'IamRoleArn': 'string',
'DeliveryStreamArn': 'string'
},
SnsDestination={
'TopicArn': 'string'
},
ClientToken='string'
)
string
[REQUIRED]
Either the name of the configuration set or the configuration set ARN to apply event logging to. The ConfigurateSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.
string
[REQUIRED]
The name that identifies the event destination.
list
[REQUIRED]
An array of event types that determine which events to log. If "ALL" is used, then End User Messaging SMS logs every event type.
(string) --
dict
An object that contains information about an event destination for logging to Amazon CloudWatch Logs.
IamRoleArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of an Identity and Access Management role that is able to write event data to an Amazon CloudWatch destination.
LogGroupArn (string) -- [REQUIRED]
The name of the Amazon CloudWatch log group that you want to record events in.
dict
An object that contains information about an event destination for logging to Amazon Data Firehose.
IamRoleArn (string) -- [REQUIRED]
The ARN of an Identity and Access Management role that is able to write event data to an Amazon Data Firehose destination.
DeliveryStreamArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the delivery stream.
dict
An object that contains information about an event destination for logging to Amazon SNS.
TopicArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.
string
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.
This field is autopopulated if not provided.
dict
Response Syntax
{
'ConfigurationSetArn': 'string',
'ConfigurationSetName': 'string',
'EventDestination': {
'EventDestinationName': 'string',
'Enabled': True|False,
'MatchingEventTypes': [
'ALL'|'TEXT_ALL'|'TEXT_SENT'|'TEXT_PENDING'|'TEXT_QUEUED'|'TEXT_SUCCESSFUL'|'TEXT_DELIVERED'|'TEXT_INVALID'|'TEXT_INVALID_MESSAGE'|'TEXT_UNREACHABLE'|'TEXT_CARRIER_UNREACHABLE'|'TEXT_BLOCKED'|'TEXT_CARRIER_BLOCKED'|'TEXT_SPAM'|'TEXT_UNKNOWN'|'TEXT_TTL_EXPIRED'|'TEXT_PROTECT_BLOCKED'|'VOICE_ALL'|'VOICE_INITIATED'|'VOICE_RINGING'|'VOICE_ANSWERED'|'VOICE_COMPLETED'|'VOICE_BUSY'|'VOICE_NO_ANSWER'|'VOICE_FAILED'|'VOICE_TTL_EXPIRED'|'MEDIA_ALL'|'MEDIA_PENDING'|'MEDIA_QUEUED'|'MEDIA_SUCCESSFUL'|'MEDIA_DELIVERED'|'MEDIA_INVALID'|'MEDIA_INVALID_MESSAGE'|'MEDIA_UNREACHABLE'|'MEDIA_CARRIER_UNREACHABLE'|'MEDIA_BLOCKED'|'MEDIA_CARRIER_BLOCKED'|'MEDIA_SPAM'|'MEDIA_UNKNOWN'|'MEDIA_TTL_EXPIRED'|'MEDIA_FILE_INACCESSIBLE'|'MEDIA_FILE_TYPE_UNSUPPORTED'|'MEDIA_FILE_SIZE_EXCEEDED'|'RCS_ALL'|'RCS_QUEUED'|'RCS_SENT'|'RCS_DELIVERED'|'RCS_READ'|'RCS_FAILED'|'RCS_TTL_EXPIRED'|'RCS_PROTECT_BLOCKED'|'RCS_FALLEN_BACK_TO_SMS',
],
'CloudWatchLogsDestination': {
'IamRoleArn': 'string',
'LogGroupArn': 'string'
},
'KinesisFirehoseDestination': {
'IamRoleArn': 'string',
'DeliveryStreamArn': 'string'
},
'SnsDestination': {
'TopicArn': 'string'
}
}
}
Response Structure
(dict) --
ConfigurationSetArn (string) --
The ARN of the configuration set.
ConfigurationSetName (string) --
The name of the configuration set.
EventDestination (dict) --
The details of the destination where events are logged.
EventDestinationName (string) --
The name of the EventDestination.
Enabled (boolean) --
When set to true events will be logged.
MatchingEventTypes (list) --
An array of event types that determine which events to log.
(string) --
CloudWatchLogsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon CloudWatch logs.
IamRoleArn (string) --
The Amazon Resource Name (ARN) of an Identity and Access Management role that is able to write event data to an Amazon CloudWatch destination.
LogGroupArn (string) --
The name of the Amazon CloudWatch log group that you want to record events in.
KinesisFirehoseDestination (dict) --
An object that contains information about an event destination for logging to Amazon Data Firehose.
IamRoleArn (string) --
The ARN of an Identity and Access Management role that is able to write event data to an Amazon Data Firehose destination.
DeliveryStreamArn (string) --
The Amazon Resource Name (ARN) of the delivery stream.
SnsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon SNS.
TopicArn (string) --
The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.
{'TwoWayMediaS3BucketName': 'string',
'TwoWayMediaS3KeyPrefix': 'string',
'TwoWayMediaS3Role': 'string',
'TwoWayRcsEventsEnabled': ['string']}
Creates a new RCS agent for sending rich messages through the RCS channel. The RCS agent serves as an origination identity for sending RCS messages to your recipients.
See also: AWS API Documentation
Request Syntax
client.create_rcs_agent(
DeletionProtectionEnabled=True|False,
OptOutListName='string',
Tags=[
{
'Key': 'string',
'Value': 'string'
},
],
ClientToken='string'
)
boolean
By default this is set to false. When set to true the RCS agent can't be deleted. You can change this value using the UpdateRcsAgent action.
string
The OptOutList to associate with the RCS agent. Valid values are either OptOutListName or OptOutListArn.
list
An array of tags (key and value pairs) associated with the RCS agent.
(dict) --
The list of tags to be added to the specified topic.
Key (string) -- [REQUIRED]
The key identifier, or name, of the tag.
Value (string) -- [REQUIRED]
The string value associated with the key of the tag.
string
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.
This field is autopopulated if not provided.
dict
Response Syntax
{
'RcsAgentArn': 'string',
'RcsAgentId': 'string',
'Status': 'CREATED'|'PENDING'|'TESTING'|'PARTIAL'|'ACTIVE'|'DELETED',
'DeletionProtectionEnabled': True|False,
'OptOutListName': 'string',
'CreatedTimestamp': datetime(2015, 1, 1),
'SelfManagedOptOutsEnabled': True|False,
'TwoWayChannelArn': 'string',
'TwoWayChannelRole': 'string',
'TwoWayEnabled': True|False,
'TwoWayMediaS3BucketName': 'string',
'TwoWayMediaS3KeyPrefix': 'string',
'TwoWayMediaS3Role': 'string',
'TwoWayRcsEventsEnabled': [
'string',
],
'Tags': [
{
'Key': 'string',
'Value': 'string'
},
]
}
Response Structure
(dict) --
RcsAgentArn (string) --
The Amazon Resource Name (ARN) of the newly created RCS agent.
RcsAgentId (string) --
The unique identifier for the RCS agent.
Status (string) --
The current status of the RCS agent.
DeletionProtectionEnabled (boolean) --
When set to true deletion protection is enabled. By default this is set to false.
OptOutListName (string) --
The name of the OptOutList associated with the RCS agent.
CreatedTimestamp (datetime) --
The time when the RCS agent was created, in UNIX epoch time format.
SelfManagedOptOutsEnabled (boolean) --
By default this is set to false. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.
TwoWayChannelArn (string) --
The Amazon Resource Name (ARN) of the two way channel.
TwoWayChannelRole (string) --
An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.
TwoWayEnabled (boolean) --
By default this is set to false. When set to true you can receive incoming text messages from your end recipients.
TwoWayMediaS3BucketName (string) --
The name of the S3 bucket where inbound RCS media files are stored.
TwoWayMediaS3KeyPrefix (string) --
The key prefix used for inbound RCS media objects in the S3 bucket.
TwoWayMediaS3Role (string) --
The ARN of the IAM role used to write inbound RCS media files to the S3 bucket. The role must have s3:PutObject permission on the bucket and a trust policy allowing sms-voice.amazonaws.com to assume it.
TwoWayRcsEventsEnabled (list) --
The list of RCS event types enabled for two-way messaging on the agent.
(string) --
RCS event type identifier. Validated at the service layer.
Tags (list) --
An array of tags (key and value pairs) associated with the RCS agent.
(dict) --
The list of tags to be added to the specified topic.
Key (string) --
The key identifier, or name, of the tag.
Value (string) --
The string value associated with the key of the tag.
{'EventDestinations': {'MatchingEventTypes': {'RCS_ALL',
'RCS_DELIVERED',
'RCS_FAILED',
'RCS_FALLEN_BACK_TO_SMS',
'RCS_PROTECT_BLOCKED',
'RCS_QUEUED',
'RCS_READ',
'RCS_SENT',
'RCS_TTL_EXPIRED'}}}
Deletes an existing configuration set.
A configuration set is a set of rules that you apply to voice and SMS messages that you send. In a configuration set, you can specify a destination for specific types of events related to voice and SMS messages.
See also: AWS API Documentation
Request Syntax
client.delete_configuration_set(
ConfigurationSetName='string'
)
string
[REQUIRED]
The name of the configuration set or the configuration set ARN that you want to delete. The ConfigurationSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.
dict
Response Syntax
{
'ConfigurationSetArn': 'string',
'ConfigurationSetName': 'string',
'EventDestinations': [
{
'EventDestinationName': 'string',
'Enabled': True|False,
'MatchingEventTypes': [
'ALL'|'TEXT_ALL'|'TEXT_SENT'|'TEXT_PENDING'|'TEXT_QUEUED'|'TEXT_SUCCESSFUL'|'TEXT_DELIVERED'|'TEXT_INVALID'|'TEXT_INVALID_MESSAGE'|'TEXT_UNREACHABLE'|'TEXT_CARRIER_UNREACHABLE'|'TEXT_BLOCKED'|'TEXT_CARRIER_BLOCKED'|'TEXT_SPAM'|'TEXT_UNKNOWN'|'TEXT_TTL_EXPIRED'|'TEXT_PROTECT_BLOCKED'|'VOICE_ALL'|'VOICE_INITIATED'|'VOICE_RINGING'|'VOICE_ANSWERED'|'VOICE_COMPLETED'|'VOICE_BUSY'|'VOICE_NO_ANSWER'|'VOICE_FAILED'|'VOICE_TTL_EXPIRED'|'MEDIA_ALL'|'MEDIA_PENDING'|'MEDIA_QUEUED'|'MEDIA_SUCCESSFUL'|'MEDIA_DELIVERED'|'MEDIA_INVALID'|'MEDIA_INVALID_MESSAGE'|'MEDIA_UNREACHABLE'|'MEDIA_CARRIER_UNREACHABLE'|'MEDIA_BLOCKED'|'MEDIA_CARRIER_BLOCKED'|'MEDIA_SPAM'|'MEDIA_UNKNOWN'|'MEDIA_TTL_EXPIRED'|'MEDIA_FILE_INACCESSIBLE'|'MEDIA_FILE_TYPE_UNSUPPORTED'|'MEDIA_FILE_SIZE_EXCEEDED'|'RCS_ALL'|'RCS_QUEUED'|'RCS_SENT'|'RCS_DELIVERED'|'RCS_READ'|'RCS_FAILED'|'RCS_TTL_EXPIRED'|'RCS_PROTECT_BLOCKED'|'RCS_FALLEN_BACK_TO_SMS',
],
'CloudWatchLogsDestination': {
'IamRoleArn': 'string',
'LogGroupArn': 'string'
},
'KinesisFirehoseDestination': {
'IamRoleArn': 'string',
'DeliveryStreamArn': 'string'
},
'SnsDestination': {
'TopicArn': 'string'
}
},
],
'DefaultMessageType': 'TRANSACTIONAL'|'PROMOTIONAL',
'DefaultSenderId': 'string',
'DefaultMessageFeedbackEnabled': True|False,
'CreatedTimestamp': datetime(2015, 1, 1)
}
Response Structure
(dict) --
ConfigurationSetArn (string) --
The Amazon Resource Name (ARN) of the deleted configuration set.
ConfigurationSetName (string) --
The name of the deleted configuration set.
EventDestinations (list) --
An array of any EventDestination objects that were associated with the deleted configuration set.
(dict) --
Contains information about an event destination.
Event destinations are associated with configuration sets, which enable you to publish message sending events to CloudWatch, Firehose, or Amazon SNS.
EventDestinationName (string) --
The name of the EventDestination.
Enabled (boolean) --
When set to true events will be logged.
MatchingEventTypes (list) --
An array of event types that determine which events to log.
(string) --
CloudWatchLogsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon CloudWatch logs.
IamRoleArn (string) --
The Amazon Resource Name (ARN) of an Identity and Access Management role that is able to write event data to an Amazon CloudWatch destination.
LogGroupArn (string) --
The name of the Amazon CloudWatch log group that you want to record events in.
KinesisFirehoseDestination (dict) --
An object that contains information about an event destination for logging to Amazon Data Firehose.
IamRoleArn (string) --
The ARN of an Identity and Access Management role that is able to write event data to an Amazon Data Firehose destination.
DeliveryStreamArn (string) --
The Amazon Resource Name (ARN) of the delivery stream.
SnsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon SNS.
TopicArn (string) --
The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.
DefaultMessageType (string) --
The default message type of the configuration set that was deleted.
DefaultSenderId (string) --
The default Sender ID of the configuration set that was deleted.
DefaultMessageFeedbackEnabled (boolean) --
True if the configuration set has message feedback enabled. By default this is set to false.
CreatedTimestamp (datetime) --
The time that the deleted configuration set was created in UNIX epoch time format.
{'EventDestination': {'MatchingEventTypes': {'RCS_ALL',
'RCS_DELIVERED',
'RCS_FAILED',
'RCS_FALLEN_BACK_TO_SMS',
'RCS_PROTECT_BLOCKED',
'RCS_QUEUED',
'RCS_READ',
'RCS_SENT',
'RCS_TTL_EXPIRED'}}}
Deletes an existing event destination.
An event destination is a location where you send response information about the messages that you send. For example, when a message is delivered successfully, you can send information about that event to an Amazon CloudWatch destination, or send notifications to endpoints that are subscribed to an Amazon SNS topic.
See also: AWS API Documentation
Request Syntax
client.delete_event_destination(
ConfigurationSetName='string',
EventDestinationName='string'
)
string
[REQUIRED]
The name of the configuration set or the configuration set's Amazon Resource Name (ARN) to remove the event destination from. The ConfigurateSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.
string
[REQUIRED]
The name of the event destination to delete.
dict
Response Syntax
{
'ConfigurationSetArn': 'string',
'ConfigurationSetName': 'string',
'EventDestination': {
'EventDestinationName': 'string',
'Enabled': True|False,
'MatchingEventTypes': [
'ALL'|'TEXT_ALL'|'TEXT_SENT'|'TEXT_PENDING'|'TEXT_QUEUED'|'TEXT_SUCCESSFUL'|'TEXT_DELIVERED'|'TEXT_INVALID'|'TEXT_INVALID_MESSAGE'|'TEXT_UNREACHABLE'|'TEXT_CARRIER_UNREACHABLE'|'TEXT_BLOCKED'|'TEXT_CARRIER_BLOCKED'|'TEXT_SPAM'|'TEXT_UNKNOWN'|'TEXT_TTL_EXPIRED'|'TEXT_PROTECT_BLOCKED'|'VOICE_ALL'|'VOICE_INITIATED'|'VOICE_RINGING'|'VOICE_ANSWERED'|'VOICE_COMPLETED'|'VOICE_BUSY'|'VOICE_NO_ANSWER'|'VOICE_FAILED'|'VOICE_TTL_EXPIRED'|'MEDIA_ALL'|'MEDIA_PENDING'|'MEDIA_QUEUED'|'MEDIA_SUCCESSFUL'|'MEDIA_DELIVERED'|'MEDIA_INVALID'|'MEDIA_INVALID_MESSAGE'|'MEDIA_UNREACHABLE'|'MEDIA_CARRIER_UNREACHABLE'|'MEDIA_BLOCKED'|'MEDIA_CARRIER_BLOCKED'|'MEDIA_SPAM'|'MEDIA_UNKNOWN'|'MEDIA_TTL_EXPIRED'|'MEDIA_FILE_INACCESSIBLE'|'MEDIA_FILE_TYPE_UNSUPPORTED'|'MEDIA_FILE_SIZE_EXCEEDED'|'RCS_ALL'|'RCS_QUEUED'|'RCS_SENT'|'RCS_DELIVERED'|'RCS_READ'|'RCS_FAILED'|'RCS_TTL_EXPIRED'|'RCS_PROTECT_BLOCKED'|'RCS_FALLEN_BACK_TO_SMS',
],
'CloudWatchLogsDestination': {
'IamRoleArn': 'string',
'LogGroupArn': 'string'
},
'KinesisFirehoseDestination': {
'IamRoleArn': 'string',
'DeliveryStreamArn': 'string'
},
'SnsDestination': {
'TopicArn': 'string'
}
}
}
Response Structure
(dict) --
ConfigurationSetArn (string) --
The Amazon Resource Name (ARN) of the configuration set.
ConfigurationSetName (string) --
The name of the configuration set the event destination was deleted from.
EventDestination (dict) --
The event destination object that was deleted.
EventDestinationName (string) --
The name of the EventDestination.
Enabled (boolean) --
When set to true events will be logged.
MatchingEventTypes (list) --
An array of event types that determine which events to log.
(string) --
CloudWatchLogsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon CloudWatch logs.
IamRoleArn (string) --
The Amazon Resource Name (ARN) of an Identity and Access Management role that is able to write event data to an Amazon CloudWatch destination.
LogGroupArn (string) --
The name of the Amazon CloudWatch log group that you want to record events in.
KinesisFirehoseDestination (dict) --
An object that contains information about an event destination for logging to Amazon Data Firehose.
IamRoleArn (string) --
The ARN of an Identity and Access Management role that is able to write event data to an Amazon Data Firehose destination.
DeliveryStreamArn (string) --
The Amazon Resource Name (ARN) of the delivery stream.
SnsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon SNS.
TopicArn (string) --
The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.
{'TwoWayRcsEventsEnabled': ['string']}
Deletes an existing RCS agent. If deletion protection is enabled, an error is returned.
See also: AWS API Documentation
Request Syntax
client.delete_rcs_agent(
RcsAgentId='string'
)
string
[REQUIRED]
The unique identifier of the RCS agent to delete. You can use either the RcsAgentId or RcsAgentArn.
dict
Response Syntax
{
'RcsAgentArn': 'string',
'RcsAgentId': 'string',
'Status': 'CREATED'|'PENDING'|'TESTING'|'PARTIAL'|'ACTIVE'|'DELETED',
'CreatedTimestamp': datetime(2015, 1, 1),
'DeletionProtectionEnabled': True|False,
'OptOutListName': 'string',
'SelfManagedOptOutsEnabled': True|False,
'TwoWayChannelArn': 'string',
'TwoWayChannelRole': 'string',
'TwoWayEnabled': True|False,
'TwoWayRcsEventsEnabled': [
'string',
]
}
Response Structure
(dict) --
RcsAgentArn (string) --
The Amazon Resource Name (ARN) of the deleted RCS agent.
RcsAgentId (string) --
The unique identifier for the deleted RCS agent.
Status (string) --
The current status of the RCS agent.
CreatedTimestamp (datetime) --
The time when the RCS agent was created, in UNIX epoch time format.
DeletionProtectionEnabled (boolean) --
When set to true deletion protection is enabled. By default this is set to false.
OptOutListName (string) --
The name of the OptOutList that was associated with the deleted RCS agent.
SelfManagedOptOutsEnabled (boolean) --
By default this is set to false. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.
TwoWayChannelArn (string) --
The Amazon Resource Name (ARN) of the two way channel.
TwoWayChannelRole (string) --
An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.
TwoWayEnabled (boolean) --
By default this is set to false. When set to true you can receive incoming text messages from your end recipients.
TwoWayRcsEventsEnabled (list) --
The list of RCS event types that were enabled for two-way messaging on the deleted agent.
(string) --
RCS event type identifier. Validated at the service layer.
{'ConfigurationSets': {'EventDestinations': {'MatchingEventTypes': {'RCS_ALL',
'RCS_DELIVERED',
'RCS_FAILED',
'RCS_FALLEN_BACK_TO_SMS',
'RCS_PROTECT_BLOCKED',
'RCS_QUEUED',
'RCS_READ',
'RCS_SENT',
'RCS_TTL_EXPIRED'}}}}
Describes the specified configuration sets or all in your account.
If you specify configuration set names, the output includes information for only the specified configuration sets. If you specify filters, the output includes information for only those configuration sets that meet the filter criteria. If you don't specify configuration set names or filters, the output includes information for all configuration sets.
If you specify a configuration set name that isn't valid, an error is returned.
See also: AWS API Documentation
Request Syntax
client.describe_configuration_sets(
ConfigurationSetNames=[
'string',
],
Filters=[
{
'Name': 'event-destination-name'|'matching-event-types'|'default-message-type'|'default-sender-id'|'default-message-feedback-enabled'|'protect-configuration-id',
'Values': [
'string',
]
},
],
NextToken='string',
MaxResults=123
)
list
An array of strings. Each element can be either a ConfigurationSetName or ConfigurationSetArn.
(string) --
list
An array of filters to apply to the results that are returned.
(dict) --
The information for configuration sets that meet a specified criteria.
Name (string) -- [REQUIRED]
The name of the attribute to filter on.
Values (list) -- [REQUIRED]
An array values to filter for.
(string) --
string
The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.
integer
The maximum number of results to return per each request.
dict
Response Syntax
{
'ConfigurationSets': [
{
'ConfigurationSetArn': 'string',
'ConfigurationSetName': 'string',
'EventDestinations': [
{
'EventDestinationName': 'string',
'Enabled': True|False,
'MatchingEventTypes': [
'ALL'|'TEXT_ALL'|'TEXT_SENT'|'TEXT_PENDING'|'TEXT_QUEUED'|'TEXT_SUCCESSFUL'|'TEXT_DELIVERED'|'TEXT_INVALID'|'TEXT_INVALID_MESSAGE'|'TEXT_UNREACHABLE'|'TEXT_CARRIER_UNREACHABLE'|'TEXT_BLOCKED'|'TEXT_CARRIER_BLOCKED'|'TEXT_SPAM'|'TEXT_UNKNOWN'|'TEXT_TTL_EXPIRED'|'TEXT_PROTECT_BLOCKED'|'VOICE_ALL'|'VOICE_INITIATED'|'VOICE_RINGING'|'VOICE_ANSWERED'|'VOICE_COMPLETED'|'VOICE_BUSY'|'VOICE_NO_ANSWER'|'VOICE_FAILED'|'VOICE_TTL_EXPIRED'|'MEDIA_ALL'|'MEDIA_PENDING'|'MEDIA_QUEUED'|'MEDIA_SUCCESSFUL'|'MEDIA_DELIVERED'|'MEDIA_INVALID'|'MEDIA_INVALID_MESSAGE'|'MEDIA_UNREACHABLE'|'MEDIA_CARRIER_UNREACHABLE'|'MEDIA_BLOCKED'|'MEDIA_CARRIER_BLOCKED'|'MEDIA_SPAM'|'MEDIA_UNKNOWN'|'MEDIA_TTL_EXPIRED'|'MEDIA_FILE_INACCESSIBLE'|'MEDIA_FILE_TYPE_UNSUPPORTED'|'MEDIA_FILE_SIZE_EXCEEDED'|'RCS_ALL'|'RCS_QUEUED'|'RCS_SENT'|'RCS_DELIVERED'|'RCS_READ'|'RCS_FAILED'|'RCS_TTL_EXPIRED'|'RCS_PROTECT_BLOCKED'|'RCS_FALLEN_BACK_TO_SMS',
],
'CloudWatchLogsDestination': {
'IamRoleArn': 'string',
'LogGroupArn': 'string'
},
'KinesisFirehoseDestination': {
'IamRoleArn': 'string',
'DeliveryStreamArn': 'string'
},
'SnsDestination': {
'TopicArn': 'string'
}
},
],
'DefaultMessageType': 'TRANSACTIONAL'|'PROMOTIONAL',
'DefaultSenderId': 'string',
'DefaultMessageFeedbackEnabled': True|False,
'CreatedTimestamp': datetime(2015, 1, 1),
'ProtectConfigurationId': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
ConfigurationSets (list) --
An array of ConfigurationSets objects.
(dict) --
Information related to a given configuration set in your Amazon Web Services account.
ConfigurationSetArn (string) --
The Resource Name (ARN) of the ConfigurationSet.
ConfigurationSetName (string) --
The name of the ConfigurationSet.
EventDestinations (list) --
An array of EventDestination objects that describe any events to log and where to log them.
(dict) --
Contains information about an event destination.
Event destinations are associated with configuration sets, which enable you to publish message sending events to CloudWatch, Firehose, or Amazon SNS.
EventDestinationName (string) --
The name of the EventDestination.
Enabled (boolean) --
When set to true events will be logged.
MatchingEventTypes (list) --
An array of event types that determine which events to log.
(string) --
CloudWatchLogsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon CloudWatch logs.
IamRoleArn (string) --
The Amazon Resource Name (ARN) of an Identity and Access Management role that is able to write event data to an Amazon CloudWatch destination.
LogGroupArn (string) --
The name of the Amazon CloudWatch log group that you want to record events in.
KinesisFirehoseDestination (dict) --
An object that contains information about an event destination for logging to Amazon Data Firehose.
IamRoleArn (string) --
The ARN of an Identity and Access Management role that is able to write event data to an Amazon Data Firehose destination.
DeliveryStreamArn (string) --
The Amazon Resource Name (ARN) of the delivery stream.
SnsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon SNS.
TopicArn (string) --
The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.
DefaultMessageType (string) --
The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.
DefaultSenderId (string) --
The default sender ID used by the ConfigurationSet.
DefaultMessageFeedbackEnabled (boolean) --
True if message feedback is enabled.
CreatedTimestamp (datetime) --
The time when the ConfigurationSet was created, in UNIX epoch time format.
ProtectConfigurationId (string) --
The unique identifier for the protect configuration.
NextToken (string) --
The token to be used for the next set of paginated results. If this field is empty then there are no more results.
{'RcsAgents': {'TwoWayMediaS3BucketName': 'string',
'TwoWayMediaS3KeyPrefix': 'string',
'TwoWayMediaS3Role': 'string',
'TwoWayRcsEventsEnabled': ['string']}}
Retrieves the specified RCS agents or all RCS agents associated with your Amazon Web Services account.
If you specify RCS agent IDs, the output includes information for only the specified RCS agents. If you specify filters, the output includes information for only those RCS agents that meet the filter criteria. If you don't specify RCS agent IDs or filters, the output includes information for all RCS agents.
See also: AWS API Documentation
Request Syntax
client.describe_rcs_agents(
RcsAgentIds=[
'string',
],
Owner='SELF'|'SHARED',
Filters=[
{
'Name': 'status'|'two-way-enabled'|'self-managed-opt-outs-enabled'|'opt-out-list-name'|'deletion-protection-enabled'|'two-way-channel-arn',
'Values': [
'string',
]
},
],
NextToken='string',
MaxResults=123
)
list
An array of unique identifiers for the RCS agents. This is an array of strings that can be either the RcsAgentId or RcsAgentArn.
(string) --
string
Use SELF to filter the list of RCS agents to ones your account owns or use SHARED to filter on RCS agents shared with your account. The Owner and RcsAgentIds parameters can't be used at the same time.
list
An array of RcsAgentFilter objects to filter the results.
(dict) --
The information for an RCS agent that meets a specified criteria.
Name (string) -- [REQUIRED]
The name of the attribute to filter on.
Values (list) -- [REQUIRED]
An array values to filter for.
(string) --
string
The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.
integer
The maximum number of results to return per each request.
dict
Response Syntax
{
'RcsAgents': [
{
'RcsAgentArn': 'string',
'RcsAgentId': 'string',
'Status': 'CREATED'|'PENDING'|'TESTING'|'PARTIAL'|'ACTIVE'|'DELETED',
'CreatedTimestamp': datetime(2015, 1, 1),
'DeletionProtectionEnabled': True|False,
'OptOutListName': 'string',
'SelfManagedOptOutsEnabled': True|False,
'TwoWayChannelArn': 'string',
'TwoWayChannelRole': 'string',
'TwoWayEnabled': True|False,
'PoolId': 'string',
'TwoWayMediaS3BucketName': 'string',
'TwoWayMediaS3KeyPrefix': 'string',
'TwoWayMediaS3Role': 'string',
'TwoWayRcsEventsEnabled': [
'string',
],
'TestingAgent': {
'Status': 'CREATED'|'PENDING'|'ACTIVE',
'TestingAgentId': 'string',
'RegistrationId': 'string'
}
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
RcsAgents (list) --
An array of RcsAgentInformation objects that contain the details for the requested RCS agents.
(dict) --
The information for an RCS agent in an Amazon Web Services account.
RcsAgentArn (string) --
The Amazon Resource Name (ARN) of the RCS agent.
RcsAgentId (string) --
The unique identifier for the RCS agent.
Status (string) --
The current status of the RCS agent.
CreatedTimestamp (datetime) --
The time when the RCS agent was created, in UNIX epoch time format.
DeletionProtectionEnabled (boolean) --
When set to true the RCS agent can't be deleted.
OptOutListName (string) --
The name of the OptOutList associated with the RCS agent.
SelfManagedOptOutsEnabled (boolean) --
When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.
TwoWayChannelArn (string) --
The Amazon Resource Name (ARN) of the two way channel.
TwoWayChannelRole (string) --
An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.
TwoWayEnabled (boolean) --
When set to true you can receive incoming text messages from your end recipients using the TwoWayChannelArn.
PoolId (string) --
The unique identifier of the pool associated with the RCS agent.
TwoWayMediaS3BucketName (string) --
The name of the S3 bucket where inbound RCS media files are stored.
TwoWayMediaS3KeyPrefix (string) --
The key prefix used for inbound RCS media objects in the S3 bucket.
TwoWayMediaS3Role (string) --
The ARN of the IAM role used to write inbound RCS media files to the S3 bucket.
TwoWayRcsEventsEnabled (list) --
The list of RCS event types enabled for two-way messaging on the agent.
(string) --
RCS event type identifier. Validated at the service layer.
TestingAgent (dict) --
The testing agent information associated with the RCS agent.
Status (string) --
The current status of the testing agent.
TestingAgentId (string) --
The unique identifier for the testing agent.
RegistrationId (string) --
The unique identifier of the registration associated with the testing agent.
NextToken (string) --
The token to be used for the next set of paginated results. If this field is empty then there are no more results.
{'SpendLimits': {'Name': {'RCS_MESSAGE_MONTHLY_SPEND_LIMIT'}}}
Describes the current monthly spend limits for sending voice and text messages.
When you establish an Amazon Web Services account, the account has initial monthly spend limit in a given Region. For more information on increasing your monthly spend limit, see Requesting increases to your monthly SMS, MMS, or Voice spending quota in the End User Messaging SMS User Guide.
See also: AWS API Documentation
Request Syntax
client.describe_spend_limits(
NextToken='string',
MaxResults=123
)
string
The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.
integer
The maximum number of results to return per each request.
dict
Response Syntax
{
'SpendLimits': [
{
'Name': 'TEXT_MESSAGE_MONTHLY_SPEND_LIMIT'|'VOICE_MESSAGE_MONTHLY_SPEND_LIMIT'|'MEDIA_MESSAGE_MONTHLY_SPEND_LIMIT'|'NOTIFY_MESSAGE_MONTHLY_SPEND_LIMIT'|'RCS_MESSAGE_MONTHLY_SPEND_LIMIT',
'EnforcedLimit': 123,
'MaxLimit': 123,
'Overridden': True|False
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
SpendLimits (list) --
An array of SpendLimit objects that contain the details for the requested spend limits.
(dict) --
Describes the current monthly spend limits for sending voice and text messages. For more information on increasing your monthly spend limit, see Requesting a spending quota increase in the End User Messaging SMS User Guide.
Name (string) --
The name for the SpendLimit.
EnforcedLimit (integer) --
The maximum amount of money, in US dollars, that you want to be able to spend sending messages each month. This value has to be less than or equal to the amount in MaxLimit. To use this custom limit, Overridden must be set to true.
MaxLimit (integer) --
The maximum amount of money that you are able to spend to send messages each month, in US dollars.
Overridden (boolean) --
When set to True, the value that has been specified in the EnforcedLimit is used to determine the maximum amount in US dollars that can be spent to send messages each month, in US dollars.
NextToken (string) --
The token to be used for the next set of paginated results. If this field is empty then there are no more results.
{'MatchingEventTypes': {'RCS_ALL',
'RCS_DELIVERED',
'RCS_FAILED',
'RCS_FALLEN_BACK_TO_SMS',
'RCS_PROTECT_BLOCKED',
'RCS_QUEUED',
'RCS_READ',
'RCS_SENT',
'RCS_TTL_EXPIRED'}}
Response {'EventDestination': {'MatchingEventTypes': {'RCS_ALL',
'RCS_DELIVERED',
'RCS_FAILED',
'RCS_FALLEN_BACK_TO_SMS',
'RCS_PROTECT_BLOCKED',
'RCS_QUEUED',
'RCS_READ',
'RCS_SENT',
'RCS_TTL_EXPIRED'}}}
Updates an existing event destination in a configuration set. You can update the IAM role ARN for CloudWatch Logs and Firehose. You can also enable or disable the event destination.
You may want to update an event destination to change its matching event types or updating the destination resource ARN. You can't change an event destination's type between CloudWatch Logs, Firehose, and Amazon SNS.
See also: AWS API Documentation
Request Syntax
client.update_event_destination(
ConfigurationSetName='string',
EventDestinationName='string',
Enabled=True|False,
MatchingEventTypes=[
'ALL'|'TEXT_ALL'|'TEXT_SENT'|'TEXT_PENDING'|'TEXT_QUEUED'|'TEXT_SUCCESSFUL'|'TEXT_DELIVERED'|'TEXT_INVALID'|'TEXT_INVALID_MESSAGE'|'TEXT_UNREACHABLE'|'TEXT_CARRIER_UNREACHABLE'|'TEXT_BLOCKED'|'TEXT_CARRIER_BLOCKED'|'TEXT_SPAM'|'TEXT_UNKNOWN'|'TEXT_TTL_EXPIRED'|'TEXT_PROTECT_BLOCKED'|'VOICE_ALL'|'VOICE_INITIATED'|'VOICE_RINGING'|'VOICE_ANSWERED'|'VOICE_COMPLETED'|'VOICE_BUSY'|'VOICE_NO_ANSWER'|'VOICE_FAILED'|'VOICE_TTL_EXPIRED'|'MEDIA_ALL'|'MEDIA_PENDING'|'MEDIA_QUEUED'|'MEDIA_SUCCESSFUL'|'MEDIA_DELIVERED'|'MEDIA_INVALID'|'MEDIA_INVALID_MESSAGE'|'MEDIA_UNREACHABLE'|'MEDIA_CARRIER_UNREACHABLE'|'MEDIA_BLOCKED'|'MEDIA_CARRIER_BLOCKED'|'MEDIA_SPAM'|'MEDIA_UNKNOWN'|'MEDIA_TTL_EXPIRED'|'MEDIA_FILE_INACCESSIBLE'|'MEDIA_FILE_TYPE_UNSUPPORTED'|'MEDIA_FILE_SIZE_EXCEEDED'|'RCS_ALL'|'RCS_QUEUED'|'RCS_SENT'|'RCS_DELIVERED'|'RCS_READ'|'RCS_FAILED'|'RCS_TTL_EXPIRED'|'RCS_PROTECT_BLOCKED'|'RCS_FALLEN_BACK_TO_SMS',
],
CloudWatchLogsDestination={
'IamRoleArn': 'string',
'LogGroupArn': 'string'
},
KinesisFirehoseDestination={
'IamRoleArn': 'string',
'DeliveryStreamArn': 'string'
},
SnsDestination={
'TopicArn': 'string'
}
)
string
[REQUIRED]
The configuration set to update with the new event destination. Valid values for this can be the ConfigurationSetName or ConfigurationSetArn.
string
[REQUIRED]
The name to use for the event destination.
boolean
When set to true logging is enabled.
list
An array of event types that determine which events to log.
(string) --
dict
An object that contains information about an event destination that sends data to CloudWatch Logs.
IamRoleArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of an Identity and Access Management role that is able to write event data to an Amazon CloudWatch destination.
LogGroupArn (string) -- [REQUIRED]
The name of the Amazon CloudWatch log group that you want to record events in.
dict
An object that contains information about an event destination for logging to Firehose.
IamRoleArn (string) -- [REQUIRED]
The ARN of an Identity and Access Management role that is able to write event data to an Amazon Data Firehose destination.
DeliveryStreamArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the delivery stream.
dict
An object that contains information about an event destination that sends data to Amazon SNS.
TopicArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.
dict
Response Syntax
{
'ConfigurationSetArn': 'string',
'ConfigurationSetName': 'string',
'EventDestination': {
'EventDestinationName': 'string',
'Enabled': True|False,
'MatchingEventTypes': [
'ALL'|'TEXT_ALL'|'TEXT_SENT'|'TEXT_PENDING'|'TEXT_QUEUED'|'TEXT_SUCCESSFUL'|'TEXT_DELIVERED'|'TEXT_INVALID'|'TEXT_INVALID_MESSAGE'|'TEXT_UNREACHABLE'|'TEXT_CARRIER_UNREACHABLE'|'TEXT_BLOCKED'|'TEXT_CARRIER_BLOCKED'|'TEXT_SPAM'|'TEXT_UNKNOWN'|'TEXT_TTL_EXPIRED'|'TEXT_PROTECT_BLOCKED'|'VOICE_ALL'|'VOICE_INITIATED'|'VOICE_RINGING'|'VOICE_ANSWERED'|'VOICE_COMPLETED'|'VOICE_BUSY'|'VOICE_NO_ANSWER'|'VOICE_FAILED'|'VOICE_TTL_EXPIRED'|'MEDIA_ALL'|'MEDIA_PENDING'|'MEDIA_QUEUED'|'MEDIA_SUCCESSFUL'|'MEDIA_DELIVERED'|'MEDIA_INVALID'|'MEDIA_INVALID_MESSAGE'|'MEDIA_UNREACHABLE'|'MEDIA_CARRIER_UNREACHABLE'|'MEDIA_BLOCKED'|'MEDIA_CARRIER_BLOCKED'|'MEDIA_SPAM'|'MEDIA_UNKNOWN'|'MEDIA_TTL_EXPIRED'|'MEDIA_FILE_INACCESSIBLE'|'MEDIA_FILE_TYPE_UNSUPPORTED'|'MEDIA_FILE_SIZE_EXCEEDED'|'RCS_ALL'|'RCS_QUEUED'|'RCS_SENT'|'RCS_DELIVERED'|'RCS_READ'|'RCS_FAILED'|'RCS_TTL_EXPIRED'|'RCS_PROTECT_BLOCKED'|'RCS_FALLEN_BACK_TO_SMS',
],
'CloudWatchLogsDestination': {
'IamRoleArn': 'string',
'LogGroupArn': 'string'
},
'KinesisFirehoseDestination': {
'IamRoleArn': 'string',
'DeliveryStreamArn': 'string'
},
'SnsDestination': {
'TopicArn': 'string'
}
}
}
Response Structure
(dict) --
ConfigurationSetArn (string) --
The Amazon Resource Name (ARN) for the ConfigurationSet that was updated.
ConfigurationSetName (string) --
The name of the configuration set.
EventDestination (dict) --
An EventDestination object containing the details of where events will be logged.
EventDestinationName (string) --
The name of the EventDestination.
Enabled (boolean) --
When set to true events will be logged.
MatchingEventTypes (list) --
An array of event types that determine which events to log.
(string) --
CloudWatchLogsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon CloudWatch logs.
IamRoleArn (string) --
The Amazon Resource Name (ARN) of an Identity and Access Management role that is able to write event data to an Amazon CloudWatch destination.
LogGroupArn (string) --
The name of the Amazon CloudWatch log group that you want to record events in.
KinesisFirehoseDestination (dict) --
An object that contains information about an event destination for logging to Amazon Data Firehose.
IamRoleArn (string) --
The ARN of an Identity and Access Management role that is able to write event data to an Amazon Data Firehose destination.
DeliveryStreamArn (string) --
The Amazon Resource Name (ARN) of the delivery stream.
SnsDestination (dict) --
An object that contains information about an event destination that sends logging events to Amazon SNS.
TopicArn (string) --
The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.
{'TwoWayMediaS3BucketName': 'string',
'TwoWayMediaS3KeyPrefix': 'string',
'TwoWayMediaS3Role': 'string',
'TwoWayRcsEventsEnabled': ['string']}
Updates the configuration of an existing RCS agent. You can update the opt-out list, deletion protection, two-way messaging settings, and self-managed opt-outs configuration.
See also: AWS API Documentation
Request Syntax
client.update_rcs_agent(
RcsAgentId='string',
DeletionProtectionEnabled=True|False,
OptOutListName='string',
SelfManagedOptOutsEnabled=True|False,
TwoWayChannelArn='string',
TwoWayChannelRole='string',
TwoWayEnabled=True|False,
TwoWayMediaS3BucketName='string',
TwoWayMediaS3KeyPrefix='string',
TwoWayMediaS3Role='string',
TwoWayRcsEventsEnabled=[
'string',
]
)
string
[REQUIRED]
The unique identifier of the RCS agent to update. You can use either the RcsAgentId or RcsAgentArn.
boolean
By default this is set to false. When set to true the RCS agent can't be deleted.
string
The OptOutList to associate with the RCS agent. Valid values are either OptOutListName or OptOutListArn.
boolean
By default this is set to false. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.
string
The Amazon Resource Name (ARN) of the two way channel.
string
An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.
boolean
By default this is set to false. When set to true you can receive incoming text messages from your end recipients.
string
The name of the S3 bucket where inbound RCS media files are stored. Two-way messaging must be enabled on the agent. To remove the media configuration, pass the sentinel value UNSET_RCS_MEDIA_CONFIGURATION for both this field and TwoWayMediaS3Role.
string
The key prefix used for inbound RCS media objects in the S3 bucket.
string
The ARN of the IAM role used to write inbound RCS media files to the S3 bucket. The role must have s3:PutObject permission on the bucket and a trust policy allowing sms-voice.amazonaws.com to assume it. To remove the media configuration, pass the sentinel value UNSET_RCS_MEDIA_CONFIGURATION for both this field and TwoWayMediaS3BucketName.
list
The list of RCS event types to enable for two-way messaging. Pass an empty list to disable all event types. The special value ALL enables all current and future event types and must be the sole element if used.
(string) --
RCS event type identifier. Validated at the service layer.
dict
Response Syntax
{
'RcsAgentArn': 'string',
'RcsAgentId': 'string',
'Status': 'CREATED'|'PENDING'|'TESTING'|'PARTIAL'|'ACTIVE'|'DELETED',
'CreatedTimestamp': datetime(2015, 1, 1),
'DeletionProtectionEnabled': True|False,
'OptOutListName': 'string',
'SelfManagedOptOutsEnabled': True|False,
'TwoWayChannelArn': 'string',
'TwoWayChannelRole': 'string',
'TwoWayEnabled': True|False,
'TwoWayMediaS3BucketName': 'string',
'TwoWayMediaS3KeyPrefix': 'string',
'TwoWayMediaS3Role': 'string',
'TwoWayRcsEventsEnabled': [
'string',
]
}
Response Structure
(dict) --
RcsAgentArn (string) --
The Amazon Resource Name (ARN) of the updated RCS agent.
RcsAgentId (string) --
The unique identifier for the RCS agent.
Status (string) --
The current status of the RCS agent.
CreatedTimestamp (datetime) --
The time when the RCS agent was created, in UNIX epoch time format.
DeletionProtectionEnabled (boolean) --
When set to true deletion protection is enabled. By default this is set to false.
OptOutListName (string) --
The name of the OptOutList associated with the RCS agent.
SelfManagedOptOutsEnabled (boolean) --
By default this is set to false. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.
TwoWayChannelArn (string) --
The Amazon Resource Name (ARN) of the two way channel.
TwoWayChannelRole (string) --
An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.
TwoWayEnabled (boolean) --
By default this is set to false. When set to true you can receive incoming text messages from your end recipients.
TwoWayMediaS3BucketName (string) --
The name of the S3 bucket where inbound RCS media files are stored.
TwoWayMediaS3KeyPrefix (string) --
The key prefix used for inbound RCS media objects in the S3 bucket.
TwoWayMediaS3Role (string) --
The ARN of the IAM role used to write inbound RCS media files to the S3 bucket.
TwoWayRcsEventsEnabled (list) --
The list of RCS event types enabled for two-way messaging on the agent.
(string) --
RCS event type identifier. Validated at the service layer.