set_topic_attributes¶
Operation¶
set_topic_attributes
async
¶
set_topic_attributes(input: SetTopicAttributesInput, plugins: list[Plugin] | None = None) -> SetTopicAttributesOutput
Allows a topic owner to set an attribute of the topic to a new value.
Note
To remove the ability to change topic permissions, you must deny
permissions to the AddPermission, RemovePermission, and
SetTopicAttributes actions in your IAM policy.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
input
|
SetTopicAttributesInput
|
An instance of |
required |
plugins
|
list[Plugin] | None
|
A list of callables that modify the configuration dynamically. Changes made by these plugins only apply for the duration of the operation execution and will not affect any other operation invocations. |
None
|
Returns:
| Type | Description |
|---|---|
SetTopicAttributesOutput
|
An instance of |
Input¶
SetTopicAttributesInput
dataclass
¶
Input for SetTopicAttributes action.
Attributes¶
attribute_name
class-attribute
instance-attribute
¶
attribute_name: str | None = None
A map of attributes with their corresponding values.
The following lists the names, descriptions, and values of the special
request parameters that the SetTopicAttributes action uses:
-
DeliveryPolicy-- The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints. -
DisplayName-- The display name to use for a topic with SMS,email, andemail-jsonsubscriptions. Foremailandemail-jsonsubscriptions, the display name is used as the sender name for regular notification messages. Subscription confirmation and unsubscribe confirmation emails always use "Amazon Web Services Notifications" as the sender name. -
MaximumMessageSize-- The maximum size, in bytes, of a message that can be published to the topic. Valid values are1024to1048576(1 MiB). The default is262144(256 KiB).
A topic with a MaximumMessageSize above 256 KiB must have 100 or
fewer subscriptions, and each subscription must be an Amazon SQS,
Amazon Data Firehose, or Lambda subscription.
You can increase or decrease this value at any time. If the topic
doesn't meet these requirements when you set a value above 256 KiB,
Amazon SNS returns an InvalidParameter error. For more information,
see Large message
payloads
in the Amazon SNS Developer Guide.
-
Policy-- The policy that defines who can access your topic. By default, only the topic owner can publish or subscribe to the topic. -
TracingConfig-- Tracing mode of an Amazon SNS topic. By defaultTracingConfigis set toPassThrough, and the topic passes through the tracing header it receives from an Amazon SNS publisher to its subscriptions. If set toActive, Amazon SNS will vend X-Ray segment data to topic owner account if the sampled flag in the tracing header is true. This is only supported on standard topics. -
HTTP
-
HTTPSuccessFeedbackRoleArn-- Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an HTTP endpoint. -
HTTPSuccessFeedbackSampleRate-- Indicates percentage of successful messages to sample for an Amazon SNS topic that is subscribed to an HTTP endpoint. -
HTTPFailureFeedbackRoleArn-- Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an HTTP endpoint. -
Amazon Data Firehose
-
FirehoseSuccessFeedbackRoleArn-- Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an Amazon Data Firehose endpoint. -
FirehoseSuccessFeedbackSampleRate-- Indicates percentage of successful messages to sample for an Amazon SNS topic that is subscribed to an Amazon Data Firehose endpoint. -
FirehoseFailureFeedbackRoleArn-- Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an Amazon Data Firehose endpoint. -
Lambda
-
LambdaSuccessFeedbackRoleArn-- Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an Lambda endpoint. -
LambdaSuccessFeedbackSampleRate-- Indicates percentage of successful messages to sample for an Amazon SNS topic that is subscribed to an Lambda endpoint. -
LambdaFailureFeedbackRoleArn-- Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an Lambda endpoint. -
Platform application endpoint
-
ApplicationSuccessFeedbackRoleArn-- Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an platform application endpoint. -
ApplicationSuccessFeedbackSampleRate-- Indicates percentage of successful messages to sample for an Amazon SNS topic that is subscribed to an platform application endpoint. -
ApplicationFailureFeedbackRoleArn-- Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an platform application endpoint.
Note: In addition to being able to configure topic attributes for message delivery status of notification messages sent to Amazon SNS application endpoints, you can also configure application attributes for the delivery status of push notification messages sent to push notification services.
For example, For more information, see [Using Amazon SNS Application
Attributes for Message Delivery
Status](https://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html).
-
Amazon SQS
-
SQSSuccessFeedbackRoleArn-- Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an Amazon SQS endpoint. -
SQSSuccessFeedbackSampleRate-- Indicates percentage of successful messages to sample for an Amazon SNS topic that is subscribed to an Amazon SQS endpoint. -
SQSFailureFeedbackRoleArn-- Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an Amazon SQS endpoint.
Note
The <endpoint>SuccessFeedbackRoleArn and
<endpoint>FailureFeedbackRoleArn attributes are used to give
Amazon SNS write access to use CloudWatch Logs on your behalf. The
<endpoint>SuccessFeedbackSampleRate attribute is for specifying
the sample rate percentage (0-100) of successfully delivered messages.
After you configure the <endpoint>FailureFeedbackRoleArn
attribute, then all failed message deliveries generate CloudWatch Logs.
The following attribute applies only to server-side-encryption:
-
KmsMasterKeyId-- The ID of an Amazon Web Services managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference. -
SignatureVersion-- The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS. By default,SignatureVersionis set to1.
The following attribute applies only to FIFO topics:
-
ArchivePolicy-- The policy that sets the retention period for messages stored in the message archive of an Amazon SNS FIFO topic. -
ContentBasedDeduplication-- Enables content-based deduplication for FIFO topics. -
By default,
ContentBasedDeduplicationis set tofalse. If you create a FIFO topic and this attribute isfalse, you must specify a value for theMessageDeduplicationIdparameter for the Publish action. -
When you set
ContentBasedDeduplicationtotrue, Amazon SNS uses a SHA-256 hash to generate theMessageDeduplicationIdusing the body of the message (but not the attributes of the message).(Optional) To override the generated value, you can specify a value for the
MessageDeduplicationIdparameter for thePublishaction.
-
FifoThroughputScope-- Enables higher throughput for your FIFO topic by adjusting the scope of deduplication. This attribute has two possible values: -
Topic-- The scope of message deduplication is across the entire topic. This is the default value and maintains existing behavior, with a maximum throughput of 3000 messages per second or 20MB per second, whichever comes first. -
MessageGroup-- The scope of deduplication is within each individual message group, which enables higher throughput per topic subject to regional quotas. For more information on quotas or to request an increase, see Amazon SNS service quotas in the Amazon Web Services General Reference.
Output¶
SetTopicAttributesOutput
dataclass
¶
Dataclass for SetTopicAttributesOutput structure.
Attributes¶
response_metadata
class-attribute
instance-attribute
¶
response_metadata: ResponseMetadata = field(default=EMPTY_RESPONSE_METADATA, repr=False, compare=False)
Metadata about the response that produced this output. Use this to recover the request identifiers a service's support team needs in order to investigate a call. Members of the metadata are individually optional.