aws-sdk-sns 1.88.0 → 1.112.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +120 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-sns/client.rb +309 -133
- data/lib/aws-sdk-sns/client_api.rb +33 -33
- data/lib/aws-sdk-sns/customizations.rb +0 -1
- data/lib/aws-sdk-sns/endpoint_parameters.rb +13 -10
- data/lib/aws-sdk-sns/endpoint_provider.rb +15 -19
- data/lib/aws-sdk-sns/endpoints.rb +2 -460
- data/lib/aws-sdk-sns/errors.rb +93 -0
- data/lib/aws-sdk-sns/platform_application.rb +0 -1
- data/lib/aws-sdk-sns/platform_endpoint.rb +61 -21
- data/lib/aws-sdk-sns/plugins/endpoints.rb +1 -90
- data/lib/aws-sdk-sns/resource.rb +117 -24
- data/lib/aws-sdk-sns/subscription.rb +0 -4
- data/lib/aws-sdk-sns/topic.rb +99 -43
- data/lib/aws-sdk-sns/types.rb +264 -105
- data/lib/aws-sdk-sns.rb +1 -1
- data/sig/client.rbs +3 -0
- data/sig/resource.rbs +3 -0
- metadata +6 -9
data/lib/aws-sdk-sns/client.rb
CHANGED
|
@@ -7,34 +7,34 @@
|
|
|
7
7
|
#
|
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
|
9
9
|
|
|
10
|
-
require 'seahorse/client/plugins/content_length
|
|
11
|
-
require 'aws-sdk-core/plugins/credentials_configuration
|
|
12
|
-
require 'aws-sdk-core/plugins/logging
|
|
13
|
-
require 'aws-sdk-core/plugins/param_converter
|
|
14
|
-
require 'aws-sdk-core/plugins/param_validator
|
|
15
|
-
require 'aws-sdk-core/plugins/user_agent
|
|
16
|
-
require 'aws-sdk-core/plugins/helpful_socket_errors
|
|
17
|
-
require 'aws-sdk-core/plugins/retry_errors
|
|
18
|
-
require 'aws-sdk-core/plugins/global_configuration
|
|
19
|
-
require 'aws-sdk-core/plugins/regional_endpoint
|
|
20
|
-
require 'aws-sdk-core/plugins/endpoint_discovery
|
|
21
|
-
require 'aws-sdk-core/plugins/endpoint_pattern
|
|
22
|
-
require 'aws-sdk-core/plugins/response_paging
|
|
23
|
-
require 'aws-sdk-core/plugins/stub_responses
|
|
24
|
-
require 'aws-sdk-core/plugins/idempotency_token
|
|
25
|
-
require 'aws-sdk-core/plugins/invocation_id
|
|
26
|
-
require 'aws-sdk-core/plugins/jsonvalue_converter
|
|
27
|
-
require 'aws-sdk-core/plugins/client_metrics_plugin
|
|
28
|
-
require 'aws-sdk-core/plugins/client_metrics_send_plugin
|
|
29
|
-
require 'aws-sdk-core/plugins/transfer_encoding
|
|
30
|
-
require 'aws-sdk-core/plugins/http_checksum
|
|
31
|
-
require 'aws-sdk-core/plugins/checksum_algorithm
|
|
32
|
-
require 'aws-sdk-core/plugins/request_compression
|
|
33
|
-
require 'aws-sdk-core/plugins/defaults_mode
|
|
34
|
-
require 'aws-sdk-core/plugins/recursion_detection
|
|
35
|
-
require 'aws-sdk-core/plugins/telemetry
|
|
36
|
-
require 'aws-sdk-core/plugins/sign
|
|
37
|
-
require 'aws-sdk-core/plugins/protocols/query
|
|
10
|
+
require 'seahorse/client/plugins/content_length'
|
|
11
|
+
require 'aws-sdk-core/plugins/credentials_configuration'
|
|
12
|
+
require 'aws-sdk-core/plugins/logging'
|
|
13
|
+
require 'aws-sdk-core/plugins/param_converter'
|
|
14
|
+
require 'aws-sdk-core/plugins/param_validator'
|
|
15
|
+
require 'aws-sdk-core/plugins/user_agent'
|
|
16
|
+
require 'aws-sdk-core/plugins/helpful_socket_errors'
|
|
17
|
+
require 'aws-sdk-core/plugins/retry_errors'
|
|
18
|
+
require 'aws-sdk-core/plugins/global_configuration'
|
|
19
|
+
require 'aws-sdk-core/plugins/regional_endpoint'
|
|
20
|
+
require 'aws-sdk-core/plugins/endpoint_discovery'
|
|
21
|
+
require 'aws-sdk-core/plugins/endpoint_pattern'
|
|
22
|
+
require 'aws-sdk-core/plugins/response_paging'
|
|
23
|
+
require 'aws-sdk-core/plugins/stub_responses'
|
|
24
|
+
require 'aws-sdk-core/plugins/idempotency_token'
|
|
25
|
+
require 'aws-sdk-core/plugins/invocation_id'
|
|
26
|
+
require 'aws-sdk-core/plugins/jsonvalue_converter'
|
|
27
|
+
require 'aws-sdk-core/plugins/client_metrics_plugin'
|
|
28
|
+
require 'aws-sdk-core/plugins/client_metrics_send_plugin'
|
|
29
|
+
require 'aws-sdk-core/plugins/transfer_encoding'
|
|
30
|
+
require 'aws-sdk-core/plugins/http_checksum'
|
|
31
|
+
require 'aws-sdk-core/plugins/checksum_algorithm'
|
|
32
|
+
require 'aws-sdk-core/plugins/request_compression'
|
|
33
|
+
require 'aws-sdk-core/plugins/defaults_mode'
|
|
34
|
+
require 'aws-sdk-core/plugins/recursion_detection'
|
|
35
|
+
require 'aws-sdk-core/plugins/telemetry'
|
|
36
|
+
require 'aws-sdk-core/plugins/sign'
|
|
37
|
+
require 'aws-sdk-core/plugins/protocols/query'
|
|
38
38
|
|
|
39
39
|
module Aws::SNS
|
|
40
40
|
# An API client for SNS. To construct a client, you need to configure a `:region` and `:credentials`.
|
|
@@ -95,8 +95,8 @@ module Aws::SNS
|
|
|
95
95
|
# class name or an instance of a plugin class.
|
|
96
96
|
#
|
|
97
97
|
# @option options [required, Aws::CredentialProvider] :credentials
|
|
98
|
-
# Your AWS credentials. This can be
|
|
99
|
-
# following classes:
|
|
98
|
+
# Your AWS credentials used for authentication. This can be any class that includes and implements
|
|
99
|
+
# `Aws::CredentialProvider`, or instance of any one of the following classes:
|
|
100
100
|
#
|
|
101
101
|
# * `Aws::Credentials` - Used for configuring static, non-refreshing
|
|
102
102
|
# credentials.
|
|
@@ -124,22 +124,24 @@ module Aws::SNS
|
|
|
124
124
|
# * `Aws::CognitoIdentityCredentials` - Used for loading credentials
|
|
125
125
|
# from the Cognito Identity service.
|
|
126
126
|
#
|
|
127
|
-
# When `:credentials` are not configured directly, the following
|
|
128
|
-
# locations will be searched for credentials:
|
|
127
|
+
# When `:credentials` are not configured directly, the following locations will be searched for credentials:
|
|
129
128
|
#
|
|
130
129
|
# * `Aws.config[:credentials]`
|
|
130
|
+
#
|
|
131
131
|
# * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
|
|
132
132
|
# `:account_id` options.
|
|
133
|
-
#
|
|
134
|
-
#
|
|
133
|
+
#
|
|
134
|
+
# * `ENV['AWS_ACCESS_KEY_ID']`, `ENV['AWS_SECRET_ACCESS_KEY']`,
|
|
135
|
+
# `ENV['AWS_SESSION_TOKEN']`, and `ENV['AWS_ACCOUNT_ID']`.
|
|
136
|
+
#
|
|
135
137
|
# * `~/.aws/credentials`
|
|
138
|
+
#
|
|
136
139
|
# * `~/.aws/config`
|
|
137
|
-
#
|
|
138
|
-
#
|
|
139
|
-
# `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
|
|
140
|
-
# enable retries and extended timeouts. Instance profile credential
|
|
141
|
-
#
|
|
142
|
-
# to true.
|
|
140
|
+
#
|
|
141
|
+
# * EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive.
|
|
142
|
+
# Construct and pass an instance of `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
|
|
143
|
+
# enable retries and extended timeouts. Instance profile credential fetching can be disabled by
|
|
144
|
+
# setting `ENV['AWS_EC2_METADATA_DISABLED']` to `true`.
|
|
143
145
|
#
|
|
144
146
|
# @option options [required, String] :region
|
|
145
147
|
# The AWS region to connect to. The configured `:region` is
|
|
@@ -167,6 +169,11 @@ module Aws::SNS
|
|
|
167
169
|
# When false, the request will raise a `RetryCapacityNotAvailableError` and will
|
|
168
170
|
# not retry instead of sleeping.
|
|
169
171
|
#
|
|
172
|
+
# @option options [Array<String>] :auth_scheme_preference
|
|
173
|
+
# A list of preferred authentication schemes to use when making a request. Supported values are:
|
|
174
|
+
# `sigv4`, `sigv4a`, `httpBearerAuth`, and `noAuth`. When set using `ENV['AWS_AUTH_SCHEME_PREFERENCE']` or in
|
|
175
|
+
# shared config as `auth_scheme_preference`, the value should be a comma-separated list.
|
|
176
|
+
#
|
|
170
177
|
# @option options [Boolean] :client_side_monitoring (false)
|
|
171
178
|
# When `true`, client-side metrics will be collected for all API requests from
|
|
172
179
|
# this client.
|
|
@@ -200,8 +207,7 @@ module Aws::SNS
|
|
|
200
207
|
# accepted modes and the configuration defaults that are included.
|
|
201
208
|
#
|
|
202
209
|
# @option options [Boolean] :disable_host_prefix_injection (false)
|
|
203
|
-
#
|
|
204
|
-
# to default service endpoint when available.
|
|
210
|
+
# When `true`, the SDK will not prepend the modeled host prefix to the endpoint.
|
|
205
211
|
#
|
|
206
212
|
# @option options [Boolean] :disable_request_compression (false)
|
|
207
213
|
# When set to 'true' the request body will not be compressed
|
|
@@ -254,14 +260,37 @@ module Aws::SNS
|
|
|
254
260
|
# 4 times. Used in `standard` and `adaptive` retry modes.
|
|
255
261
|
#
|
|
256
262
|
# @option options [String] :profile ("default")
|
|
257
|
-
# Used when loading credentials from the shared credentials file
|
|
258
|
-
#
|
|
263
|
+
# Used when loading credentials from the shared credentials file at `HOME/.aws/credentials`.
|
|
264
|
+
# When not specified, 'default' is used.
|
|
265
|
+
#
|
|
266
|
+
# @option options [String] :request_checksum_calculation ("when_supported")
|
|
267
|
+
# Determines when a checksum will be calculated for request payloads. Values are:
|
|
268
|
+
#
|
|
269
|
+
# * `when_supported` - (default) When set, a checksum will be
|
|
270
|
+
# calculated for all request payloads of operations modeled with the
|
|
271
|
+
# `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
|
|
272
|
+
# `requestAlgorithmMember` is modeled.
|
|
273
|
+
# * `when_required` - When set, a checksum will only be calculated for
|
|
274
|
+
# request payloads of operations modeled with the `httpChecksum` trait where
|
|
275
|
+
# `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
|
|
276
|
+
# is modeled and supplied.
|
|
259
277
|
#
|
|
260
278
|
# @option options [Integer] :request_min_compression_size_bytes (10240)
|
|
261
279
|
# The minimum size in bytes that triggers compression for request
|
|
262
280
|
# bodies. The value must be non-negative integer value between 0
|
|
263
281
|
# and 10485780 bytes inclusive.
|
|
264
282
|
#
|
|
283
|
+
# @option options [String] :response_checksum_validation ("when_supported")
|
|
284
|
+
# Determines when checksum validation will be performed on response payloads. Values are:
|
|
285
|
+
#
|
|
286
|
+
# * `when_supported` - (default) When set, checksum validation is performed on all
|
|
287
|
+
# response payloads of operations modeled with the `httpChecksum` trait where
|
|
288
|
+
# `responseAlgorithms` is modeled, except when no modeled checksum algorithms
|
|
289
|
+
# are supported.
|
|
290
|
+
# * `when_required` - When set, checksum validation is not performed on
|
|
291
|
+
# response payloads of operations unless the checksum algorithm is supported and
|
|
292
|
+
# the `requestValidationModeMember` member is set to `ENABLED`.
|
|
293
|
+
#
|
|
265
294
|
# @option options [Proc] :retry_backoff
|
|
266
295
|
# A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
|
|
267
296
|
# This option is only used in the `legacy` retry mode.
|
|
@@ -345,8 +374,8 @@ module Aws::SNS
|
|
|
345
374
|
# `Aws::Telemetry::OTelProvider` for telemetry provider.
|
|
346
375
|
#
|
|
347
376
|
# @option options [Aws::TokenProvider] :token_provider
|
|
348
|
-
#
|
|
349
|
-
# following classes:
|
|
377
|
+
# Your Bearer token used for authentication. This can be any class that includes and implements
|
|
378
|
+
# `Aws::TokenProvider`, or instance of any one of the following classes:
|
|
350
379
|
#
|
|
351
380
|
# * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
|
|
352
381
|
# tokens.
|
|
@@ -599,10 +628,11 @@ module Aws::SNS
|
|
|
599
628
|
#
|
|
600
629
|
# * For GCM (Firebase Cloud Messaging) using token credentials, there is
|
|
601
630
|
# no `PlatformPrincipal`. The `PlatformCredential` is a JSON formatted
|
|
602
|
-
# private key file. When using the Amazon Web Services CLI
|
|
603
|
-
# must be in string format and special
|
|
604
|
-
# format the file correctly, Amazon SNS
|
|
605
|
-
# command:
|
|
631
|
+
# private key file. When using the Amazon Web Services CLI or Amazon
|
|
632
|
+
# Web Services SDKs, the file must be in string format and special
|
|
633
|
+
# characters must be ignored. To format the file correctly, Amazon SNS
|
|
634
|
+
# recommends using the following command: `SERVICE_JSON=$(jq @json <
|
|
635
|
+
# service.json)`.
|
|
606
636
|
#
|
|
607
637
|
# * For MPNS, `PlatformPrincipal` is `TLS certificate` and
|
|
608
638
|
# `PlatformCredential` is `private key`.
|
|
@@ -808,17 +838,9 @@ module Aws::SNS
|
|
|
808
838
|
# * `DisplayName` – The display name to use for a topic with SMS
|
|
809
839
|
# subscriptions.
|
|
810
840
|
#
|
|
811
|
-
# * `FifoTopic` – Set to true to create a FIFO topic.
|
|
812
|
-
#
|
|
813
841
|
# * `Policy` – The policy that defines who can access your topic. By
|
|
814
842
|
# default, only the topic owner can publish or subscribe to the topic.
|
|
815
843
|
#
|
|
816
|
-
# * `SignatureVersion` – The signature version corresponds to the
|
|
817
|
-
# hashing algorithm used while creating the signature of the
|
|
818
|
-
# notifications, subscription confirmations, or unsubscribe
|
|
819
|
-
# confirmation messages sent by Amazon SNS. By default,
|
|
820
|
-
# `SignatureVersion` is set to `1`.
|
|
821
|
-
#
|
|
822
844
|
# * `TracingConfig` – Tracing mode of an Amazon SNS topic. By default
|
|
823
845
|
# `TracingConfig` is set to `PassThrough`, and the topic passes
|
|
824
846
|
# through the tracing header it receives from an Amazon SNS publisher
|
|
@@ -826,24 +848,107 @@ module Aws::SNS
|
|
|
826
848
|
# segment data to topic owner account if the sampled flag in the
|
|
827
849
|
# tracing header is true. This is only supported on standard topics.
|
|
828
850
|
#
|
|
829
|
-
#
|
|
851
|
+
# * HTTP
|
|
852
|
+
#
|
|
853
|
+
# * `HTTPSuccessFeedbackRoleArn` – Indicates successful message
|
|
854
|
+
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
855
|
+
# HTTP endpoint.
|
|
856
|
+
#
|
|
857
|
+
# * `HTTPSuccessFeedbackSampleRate` – Indicates percentage of
|
|
858
|
+
# successful messages to sample for an Amazon SNS topic that is
|
|
859
|
+
# subscribed to an HTTP endpoint.
|
|
860
|
+
#
|
|
861
|
+
# * `HTTPFailureFeedbackRoleArn` – Indicates failed message delivery
|
|
862
|
+
# status for an Amazon SNS topic that is subscribed to an HTTP
|
|
863
|
+
# endpoint.
|
|
864
|
+
# * Amazon Data Firehose
|
|
865
|
+
#
|
|
866
|
+
# * `FirehoseSuccessFeedbackRoleArn` – Indicates successful message
|
|
867
|
+
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
868
|
+
# Amazon Data Firehose endpoint.
|
|
869
|
+
#
|
|
870
|
+
# * `FirehoseSuccessFeedbackSampleRate` – Indicates percentage of
|
|
871
|
+
# successful messages to sample for an Amazon SNS topic that is
|
|
872
|
+
# subscribed to an Amazon Data Firehose endpoint.
|
|
873
|
+
#
|
|
874
|
+
# * `FirehoseFailureFeedbackRoleArn` – Indicates failed message
|
|
875
|
+
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
876
|
+
# Amazon Data Firehose endpoint.
|
|
877
|
+
# * Lambda
|
|
878
|
+
#
|
|
879
|
+
# * `LambdaSuccessFeedbackRoleArn` – Indicates successful message
|
|
880
|
+
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
881
|
+
# Lambda endpoint.
|
|
882
|
+
#
|
|
883
|
+
# * `LambdaSuccessFeedbackSampleRate` – Indicates percentage of
|
|
884
|
+
# successful messages to sample for an Amazon SNS topic that is
|
|
885
|
+
# subscribed to an Lambda endpoint.
|
|
886
|
+
#
|
|
887
|
+
# * `LambdaFailureFeedbackRoleArn` – Indicates failed message delivery
|
|
888
|
+
# status for an Amazon SNS topic that is subscribed to an Lambda
|
|
889
|
+
# endpoint.
|
|
890
|
+
# * Platform application endpoint
|
|
891
|
+
#
|
|
892
|
+
# * `ApplicationSuccessFeedbackRoleArn` – Indicates successful message
|
|
893
|
+
# delivery status for an Amazon SNS topic that is subscribed to a
|
|
894
|
+
# platform application endpoint.
|
|
895
|
+
#
|
|
896
|
+
# * `ApplicationSuccessFeedbackSampleRate` – Indicates percentage of
|
|
897
|
+
# successful messages to sample for an Amazon SNS topic that is
|
|
898
|
+
# subscribed to an platform application endpoint.
|
|
899
|
+
#
|
|
900
|
+
# * `ApplicationFailureFeedbackRoleArn` – Indicates failed message
|
|
901
|
+
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
902
|
+
# platform application endpoint.
|
|
903
|
+
# <note markdown="1"> In addition to being able to configure topic attributes for message
|
|
904
|
+
# delivery status of notification messages sent to Amazon SNS
|
|
905
|
+
# application endpoints, you can also configure application attributes
|
|
906
|
+
# for the delivery status of push notification messages sent to push
|
|
907
|
+
# notification services.
|
|
908
|
+
#
|
|
909
|
+
# For example, For more information, see [Using Amazon SNS Application
|
|
910
|
+
# Attributes for Message Delivery Status][1].
|
|
911
|
+
#
|
|
912
|
+
# </note>
|
|
913
|
+
#
|
|
914
|
+
# * Amazon SQS
|
|
915
|
+
#
|
|
916
|
+
# * `SQSSuccessFeedbackRoleArn` – Indicates successful message
|
|
917
|
+
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
918
|
+
# Amazon SQS endpoint.
|
|
919
|
+
#
|
|
920
|
+
# * `SQSSuccessFeedbackSampleRate` – Indicates percentage of
|
|
921
|
+
# successful messages to sample for an Amazon SNS topic that is
|
|
922
|
+
# subscribed to an Amazon SQS endpoint.
|
|
923
|
+
#
|
|
924
|
+
# * `SQSFailureFeedbackRoleArn` – Indicates failed message delivery
|
|
925
|
+
# status for an Amazon SNS topic that is subscribed to an Amazon SQS
|
|
926
|
+
# endpoint.
|
|
927
|
+
#
|
|
928
|
+
# <note markdown="1"> The <ENDPOINT>SuccessFeedbackRoleArn and
|
|
929
|
+
# <ENDPOINT>FailureFeedbackRoleArn attributes are used to give
|
|
930
|
+
# Amazon SNS write access to use CloudWatch Logs on your behalf. The
|
|
931
|
+
# <ENDPOINT>SuccessFeedbackSampleRate attribute is for specifying
|
|
932
|
+
# the sample rate percentage (0-100) of successfully delivered messages.
|
|
933
|
+
# After you configure the <ENDPOINT>FailureFeedbackRoleArn
|
|
934
|
+
# attribute, then all failed message deliveries generate CloudWatch
|
|
935
|
+
# Logs.
|
|
936
|
+
#
|
|
937
|
+
# </note>
|
|
938
|
+
#
|
|
939
|
+
# The following attribute applies only to [server-side encryption][2]:
|
|
830
940
|
#
|
|
831
941
|
# * `KmsMasterKeyId` – The ID of an Amazon Web Services managed customer
|
|
832
942
|
# master key (CMK) for Amazon SNS or a custom CMK. For more
|
|
833
|
-
# information, see [Key Terms][
|
|
943
|
+
# information, see [Key Terms][3]. For more examples, see [KeyId][4]
|
|
834
944
|
# in the *Key Management Service API Reference*.
|
|
835
945
|
#
|
|
836
946
|
# ^
|
|
837
947
|
#
|
|
838
|
-
# The following attributes apply only to [FIFO topics][
|
|
948
|
+
# The following attributes apply only to [FIFO topics][5]:
|
|
839
949
|
#
|
|
840
|
-
# * `ArchivePolicy` –
|
|
841
|
-
#
|
|
842
|
-
#
|
|
843
|
-
# * `BeginningArchiveTime` – The earliest starting point at which a
|
|
844
|
-
# message in the topic’s archive can be replayed from. This point in
|
|
845
|
-
# time is based on the configured message retention period set by the
|
|
846
|
-
# topic’s message archiving policy.
|
|
950
|
+
# * `ArchivePolicy` – The policy that sets the retention period for
|
|
951
|
+
# messages stored in the message archive of an Amazon SNS FIFO topic.
|
|
847
952
|
#
|
|
848
953
|
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
|
849
954
|
# for FIFO topics.
|
|
@@ -851,7 +956,7 @@ module Aws::SNS
|
|
|
851
956
|
# * By default, `ContentBasedDeduplication` is set to `false`. If you
|
|
852
957
|
# create a FIFO topic and this attribute is `false`, you must
|
|
853
958
|
# specify a value for the `MessageDeduplicationId` parameter for the
|
|
854
|
-
# [Publish][
|
|
959
|
+
# [Publish][6] action.
|
|
855
960
|
#
|
|
856
961
|
# * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
|
|
857
962
|
# uses a SHA-256 hash to generate the `MessageDeduplicationId` using
|
|
@@ -860,14 +965,32 @@ module Aws::SNS
|
|
|
860
965
|
# (Optional) To override the generated value, you can specify a
|
|
861
966
|
# value for the `MessageDeduplicationId` parameter for the `Publish`
|
|
862
967
|
# action.
|
|
968
|
+
# ^
|
|
969
|
+
#
|
|
970
|
+
# * `FifoThroughputScope` – Enables higher throughput for your FIFO
|
|
971
|
+
# topic by adjusting the scope of deduplication. This attribute has
|
|
972
|
+
# two possible values:
|
|
863
973
|
#
|
|
974
|
+
# * `Topic` – The scope of message deduplication is across the entire
|
|
975
|
+
# topic. This is the default value and maintains existing behavior,
|
|
976
|
+
# with a maximum throughput of 3000 messages per second or 20MB per
|
|
977
|
+
# second, whichever comes first.
|
|
864
978
|
#
|
|
979
|
+
# * `MessageGroup` – The scope of deduplication is within each
|
|
980
|
+
# individual message group, which enables higher throughput per
|
|
981
|
+
# topic subject to regional quotas. For more information on quotas
|
|
982
|
+
# or to request an increase, see [Amazon SNS service quotas][7] in
|
|
983
|
+
# the Amazon Web Services General Reference.
|
|
865
984
|
#
|
|
866
|
-
#
|
|
867
|
-
#
|
|
868
|
-
# [
|
|
869
|
-
# [
|
|
870
|
-
# [
|
|
985
|
+
#
|
|
986
|
+
#
|
|
987
|
+
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html
|
|
988
|
+
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
|
989
|
+
# [3]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
|
990
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
|
991
|
+
# [5]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
|
992
|
+
# [6]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
|
993
|
+
# [7]: https://docs.aws.amazon.com/general/latest/gr/sns.html
|
|
871
994
|
#
|
|
872
995
|
# @option params [Array<Types::Tag>] :tags
|
|
873
996
|
# The list of tags to add to a new topic.
|
|
@@ -1859,31 +1982,71 @@ module Aws::SNS
|
|
|
1859
1982
|
# Message attributes for Publish action.
|
|
1860
1983
|
#
|
|
1861
1984
|
# @option params [String] :message_deduplication_id
|
|
1862
|
-
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
|
1863
|
-
#
|
|
1985
|
+
# * This parameter applies only to FIFO (first-in-first-out) topics. The
|
|
1986
|
+
# `MessageDeduplicationId` can contain up to 128 alphanumeric
|
|
1987
|
+
# characters `(a-z, A-Z, 0-9)` and punctuation ``
|
|
1988
|
+
# (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
|
|
1989
|
+
#
|
|
1990
|
+
# * Every message must have a unique `MessageDeduplicationId`, which is
|
|
1991
|
+
# a token used for deduplication of sent messages within the 5 minute
|
|
1992
|
+
# minimum deduplication interval.
|
|
1993
|
+
#
|
|
1994
|
+
# * The scope of deduplication depends on the `FifoThroughputScope`
|
|
1995
|
+
# attribute, when set to `Topic` the message deduplication scope is
|
|
1996
|
+
# across the entire topic, when set to `MessageGroup` the message
|
|
1997
|
+
# deduplication scope is within each individual message group.
|
|
1998
|
+
#
|
|
1999
|
+
# * If a message with a particular `MessageDeduplicationId` is sent
|
|
2000
|
+
# successfully, subsequent messages within the deduplication scope and
|
|
2001
|
+
# interval, with the same `MessageDeduplicationId`, are accepted
|
|
2002
|
+
# successfully but aren't delivered.
|
|
2003
|
+
#
|
|
2004
|
+
# * Every message must have a unique `MessageDeduplicationId`:
|
|
2005
|
+
#
|
|
2006
|
+
# * You may provide a `MessageDeduplicationId` explicitly.
|
|
2007
|
+
#
|
|
2008
|
+
# * If you aren't able to provide a `MessageDeduplicationId` and you
|
|
2009
|
+
# enable `ContentBasedDeduplication` for your topic, Amazon SNS uses
|
|
2010
|
+
# a SHA-256 hash to generate the `MessageDeduplicationId` using the
|
|
2011
|
+
# body of the message (but not the attributes of the message).
|
|
2012
|
+
#
|
|
2013
|
+
# * If you don't provide a `MessageDeduplicationId` and the topic
|
|
2014
|
+
# doesn't have `ContentBasedDeduplication` set, the action fails
|
|
2015
|
+
# with an error.
|
|
2016
|
+
#
|
|
2017
|
+
# * If the topic has a `ContentBasedDeduplication` set, your
|
|
2018
|
+
# `MessageDeduplicationId` overrides the generated one.
|
|
2019
|
+
# * When `ContentBasedDeduplication` is in effect, messages with
|
|
2020
|
+
# identical content sent within the deduplication scope and interval
|
|
2021
|
+
# are treated as duplicates and only one copy of the message is
|
|
2022
|
+
# delivered.
|
|
2023
|
+
#
|
|
2024
|
+
# * If you send one message with `ContentBasedDeduplication` enabled,
|
|
2025
|
+
# and then another message with a `MessageDeduplicationId` that is the
|
|
2026
|
+
# same as the one generated for the first `MessageDeduplicationId`,
|
|
2027
|
+
# the two messages are treated as duplicates, within the deduplication
|
|
2028
|
+
# scope and interval, and only one copy of the message is delivered.
|
|
2029
|
+
#
|
|
2030
|
+
# @option params [String] :message_group_id
|
|
2031
|
+
# The `MessageGroupId` can contain up to 128 alphanumeric characters
|
|
1864
2032
|
# `(a-z, A-Z, 0-9)` and punctuation ``
|
|
1865
|
-
# (!"#$%&'()*+,-./:;<=>?@[\]^_
|
|
2033
|
+
# (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
|
|
1866
2034
|
#
|
|
1867
|
-
#
|
|
1868
|
-
#
|
|
1869
|
-
#
|
|
1870
|
-
#
|
|
1871
|
-
#
|
|
2035
|
+
# For FIFO topics: The `MessageGroupId` is a tag that specifies that a
|
|
2036
|
+
# message belongs to a specific message group. Messages that belong to
|
|
2037
|
+
# the same message group are processed in a FIFO manner (however,
|
|
2038
|
+
# messages in different message groups might be processed out of order).
|
|
2039
|
+
# Every message must include a `MessageGroupId`.
|
|
1872
2040
|
#
|
|
1873
|
-
#
|
|
1874
|
-
#
|
|
1875
|
-
# `
|
|
2041
|
+
# For standard topics: The `MessageGroupId` is optional and is forwarded
|
|
2042
|
+
# only to Amazon SQS standard subscriptions to activate [fair
|
|
2043
|
+
# queues][1]. The `MessageGroupId` is not used for, or sent to, any
|
|
2044
|
+
# other endpoint types. When provided, the same validation rules apply
|
|
2045
|
+
# as for FIFO topics.
|
|
1876
2046
|
#
|
|
1877
|
-
# @option params [String] :message_group_id
|
|
1878
|
-
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
|
1879
|
-
# `MessageGroupId` can contain up to 128 alphanumeric characters `(a-z,
|
|
1880
|
-
# A-Z, 0-9)` and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
|
1881
2047
|
#
|
|
1882
|
-
#
|
|
1883
|
-
#
|
|
1884
|
-
# group are processed in a FIFO manner (however, messages in different
|
|
1885
|
-
# message groups might be processed out of order). Every message must
|
|
1886
|
-
# include a `MessageGroupId`.
|
|
2048
|
+
#
|
|
2049
|
+
# [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-fair-queues.html
|
|
1887
2050
|
#
|
|
1888
2051
|
# @return [Types::PublishResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
1889
2052
|
#
|
|
@@ -1924,34 +2087,45 @@ module Aws::SNS
|
|
|
1924
2087
|
req.send_request(options)
|
|
1925
2088
|
end
|
|
1926
2089
|
|
|
1927
|
-
# Publishes up to
|
|
1928
|
-
# version of `Publish
|
|
1929
|
-
#
|
|
1930
|
-
#
|
|
2090
|
+
# Publishes up to 10 messages to the specified topic in a single batch.
|
|
2091
|
+
# This is a batch version of the `Publish` API. If you try to send more
|
|
2092
|
+
# than 10 messages in a single batch request, you will receive a
|
|
2093
|
+
# `TooManyEntriesInBatchRequest` exception.
|
|
2094
|
+
#
|
|
2095
|
+
# For FIFO topics, multiple messages within a single batch are published
|
|
2096
|
+
# in the order they are sent, and messages are deduplicated within the
|
|
2097
|
+
# batch and across batches for five minutes.
|
|
1931
2098
|
#
|
|
1932
2099
|
# The result of publishing each message is reported individually in the
|
|
1933
2100
|
# response. Because the batch request can result in a combination of
|
|
1934
2101
|
# successful and unsuccessful actions, you should check for batch errors
|
|
1935
|
-
# even when the call returns an HTTP status code of
|
|
2102
|
+
# even when the call returns an HTTP status code of 200.
|
|
1936
2103
|
#
|
|
1937
2104
|
# The maximum allowed individual message size and the maximum total
|
|
1938
2105
|
# payload size (the sum of the individual lengths of all of the batched
|
|
1939
2106
|
# messages) are both 256 KB (262,144 bytes).
|
|
1940
2107
|
#
|
|
2108
|
+
# The `PublishBatch` API can send up to 10 messages at a time. If you
|
|
2109
|
+
# attempt to send more than 10 messages in one request, you will
|
|
2110
|
+
# encounter a `TooManyEntriesInBatchRequest` exception. In such cases,
|
|
2111
|
+
# split your messages into multiple requests, each containing no more
|
|
2112
|
+
# than 10 messages.
|
|
2113
|
+
#
|
|
1941
2114
|
# Some actions take lists of parameters. These lists are specified using
|
|
1942
|
-
# the `param.n` notation. Values of `n` are integers starting from
|
|
1943
|
-
# For example, a parameter list with two elements looks like
|
|
2115
|
+
# the `param.n` notation. Values of `n` are integers starting from
|
|
2116
|
+
# **1**. For example, a parameter list with two elements looks like
|
|
2117
|
+
# this:
|
|
1944
2118
|
#
|
|
1945
|
-
#
|
|
2119
|
+
# `&AttributeName.1=first`
|
|
1946
2120
|
#
|
|
1947
|
-
#
|
|
2121
|
+
# `&AttributeName.2=second`
|
|
1948
2122
|
#
|
|
1949
2123
|
# If you send a batch message to a topic, Amazon SNS publishes the batch
|
|
1950
2124
|
# message to each endpoint that is subscribed to the topic. The format
|
|
1951
2125
|
# of the batch message depends on the notification protocol for each
|
|
1952
2126
|
# subscribed endpoint.
|
|
1953
2127
|
#
|
|
1954
|
-
# When a `messageId` is returned, the batch message is saved and Amazon
|
|
2128
|
+
# When a `messageId` is returned, the batch message is saved, and Amazon
|
|
1955
2129
|
# SNS immediately delivers the message to subscribers.
|
|
1956
2130
|
#
|
|
1957
2131
|
# @option params [required, String] :topic_arn
|
|
@@ -2388,7 +2562,6 @@ module Aws::SNS
|
|
|
2388
2562
|
# message attributes.
|
|
2389
2563
|
#
|
|
2390
2564
|
# * `MessageBody` – The filter is applied on the message body.
|
|
2391
|
-
#
|
|
2392
2565
|
# * `RawMessageDelivery` – When set to `true`, enables raw message
|
|
2393
2566
|
# delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
|
|
2394
2567
|
# for the endpoints to process JSON formatting, which is otherwise
|
|
@@ -2410,7 +2583,6 @@ module Aws::SNS
|
|
|
2410
2583
|
# * Permission to write to the Firehose delivery stream
|
|
2411
2584
|
#
|
|
2412
2585
|
# * Amazon SNS listed as a trusted entity
|
|
2413
|
-
#
|
|
2414
2586
|
# Specifying a valid ARN for this attribute is required for Firehose
|
|
2415
2587
|
# delivery stream subscriptions. For more information, see [Fanout to
|
|
2416
2588
|
# Firehose delivery streams][1] in the *Amazon SNS Developer Guide*.
|
|
@@ -2458,10 +2630,6 @@ module Aws::SNS
|
|
|
2458
2630
|
# The following lists the names, descriptions, and values of the special
|
|
2459
2631
|
# request parameters that the `SetTopicAttributes` action uses:
|
|
2460
2632
|
#
|
|
2461
|
-
# * `ApplicationSuccessFeedbackRoleArn` – Indicates failed message
|
|
2462
|
-
# delivery status for an Amazon SNS topic that is subscribed to a
|
|
2463
|
-
# platform application endpoint.
|
|
2464
|
-
#
|
|
2465
2633
|
# * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
|
|
2466
2634
|
# failed deliveries to HTTP/S endpoints.
|
|
2467
2635
|
#
|
|
@@ -2491,21 +2659,19 @@ module Aws::SNS
|
|
|
2491
2659
|
# * `HTTPFailureFeedbackRoleArn` – Indicates failed message delivery
|
|
2492
2660
|
# status for an Amazon SNS topic that is subscribed to an HTTP
|
|
2493
2661
|
# endpoint.
|
|
2494
|
-
#
|
|
2495
|
-
# * Amazon Kinesis Data Firehose
|
|
2662
|
+
# * Amazon Data Firehose
|
|
2496
2663
|
#
|
|
2497
2664
|
# * `FirehoseSuccessFeedbackRoleArn` – Indicates successful message
|
|
2498
2665
|
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
2499
|
-
# Amazon
|
|
2666
|
+
# Amazon Data Firehose endpoint.
|
|
2500
2667
|
#
|
|
2501
2668
|
# * `FirehoseSuccessFeedbackSampleRate` – Indicates percentage of
|
|
2502
2669
|
# successful messages to sample for an Amazon SNS topic that is
|
|
2503
|
-
# subscribed to an Amazon
|
|
2670
|
+
# subscribed to an Amazon Data Firehose endpoint.
|
|
2504
2671
|
#
|
|
2505
2672
|
# * `FirehoseFailureFeedbackRoleArn` – Indicates failed message
|
|
2506
2673
|
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
2507
|
-
# Amazon
|
|
2508
|
-
#
|
|
2674
|
+
# Amazon Data Firehose endpoint.
|
|
2509
2675
|
# * Lambda
|
|
2510
2676
|
#
|
|
2511
2677
|
# * `LambdaSuccessFeedbackRoleArn` – Indicates successful message
|
|
@@ -2519,21 +2685,19 @@ module Aws::SNS
|
|
|
2519
2685
|
# * `LambdaFailureFeedbackRoleArn` – Indicates failed message delivery
|
|
2520
2686
|
# status for an Amazon SNS topic that is subscribed to an Lambda
|
|
2521
2687
|
# endpoint.
|
|
2522
|
-
#
|
|
2523
2688
|
# * Platform application endpoint
|
|
2524
2689
|
#
|
|
2525
2690
|
# * `ApplicationSuccessFeedbackRoleArn` – Indicates successful message
|
|
2526
2691
|
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
2527
|
-
#
|
|
2692
|
+
# platform application endpoint.
|
|
2528
2693
|
#
|
|
2529
2694
|
# * `ApplicationSuccessFeedbackSampleRate` – Indicates percentage of
|
|
2530
2695
|
# successful messages to sample for an Amazon SNS topic that is
|
|
2531
|
-
# subscribed to an
|
|
2696
|
+
# subscribed to an platform application endpoint.
|
|
2532
2697
|
#
|
|
2533
2698
|
# * `ApplicationFailureFeedbackRoleArn` – Indicates failed message
|
|
2534
2699
|
# delivery status for an Amazon SNS topic that is subscribed to an
|
|
2535
|
-
#
|
|
2536
|
-
#
|
|
2700
|
+
# platform application endpoint.
|
|
2537
2701
|
# <note markdown="1"> In addition to being able to configure topic attributes for message
|
|
2538
2702
|
# delivery status of notification messages sent to Amazon SNS
|
|
2539
2703
|
# application endpoints, you can also configure application attributes
|
|
@@ -2585,6 +2749,9 @@ module Aws::SNS
|
|
|
2585
2749
|
#
|
|
2586
2750
|
# The following attribute applies only to [FIFO topics][5]:
|
|
2587
2751
|
#
|
|
2752
|
+
# * `ArchivePolicy` – The policy that sets the retention period for
|
|
2753
|
+
# messages stored in the message archive of an Amazon SNS FIFO topic.
|
|
2754
|
+
#
|
|
2588
2755
|
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
|
2589
2756
|
# for FIFO topics.
|
|
2590
2757
|
#
|
|
@@ -2600,6 +2767,22 @@ module Aws::SNS
|
|
|
2600
2767
|
# (Optional) To override the generated value, you can specify a
|
|
2601
2768
|
# value for the `MessageDeduplicationId` parameter for the `Publish`
|
|
2602
2769
|
# action.
|
|
2770
|
+
# ^
|
|
2771
|
+
#
|
|
2772
|
+
# * `FifoThroughputScope` – Enables higher throughput for your FIFO
|
|
2773
|
+
# topic by adjusting the scope of deduplication. This attribute has
|
|
2774
|
+
# two possible values:
|
|
2775
|
+
#
|
|
2776
|
+
# * `Topic` – The scope of message deduplication is across the entire
|
|
2777
|
+
# topic. This is the default value and maintains existing behavior,
|
|
2778
|
+
# with a maximum throughput of 3000 messages per second or 20MB per
|
|
2779
|
+
# second, whichever comes first.
|
|
2780
|
+
#
|
|
2781
|
+
# * `MessageGroup` – The scope of deduplication is within each
|
|
2782
|
+
# individual message group, which enables higher throughput per
|
|
2783
|
+
# topic subject to regional quotas. For more information on quotas
|
|
2784
|
+
# or to request an increase, see [Amazon SNS service quotas][7] in
|
|
2785
|
+
# the Amazon Web Services General Reference.
|
|
2603
2786
|
#
|
|
2604
2787
|
#
|
|
2605
2788
|
#
|
|
@@ -2609,6 +2792,7 @@ module Aws::SNS
|
|
|
2609
2792
|
# [4]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
|
2610
2793
|
# [5]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
|
2611
2794
|
# [6]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
|
2795
|
+
# [7]: https://docs.aws.amazon.com/general/latest/gr/sns.html
|
|
2612
2796
|
#
|
|
2613
2797
|
# @option params [String] :attribute_value
|
|
2614
2798
|
# The new value for the attribute.
|
|
@@ -2665,8 +2849,8 @@ module Aws::SNS
|
|
|
2665
2849
|
#
|
|
2666
2850
|
# * `lambda` – delivery of JSON-encoded message to an Lambda function
|
|
2667
2851
|
#
|
|
2668
|
-
# * `firehose` – delivery of JSON-encoded message to an Amazon
|
|
2669
|
-
#
|
|
2852
|
+
# * `firehose` – delivery of JSON-encoded message to an Amazon Data
|
|
2853
|
+
# Firehose delivery stream.
|
|
2670
2854
|
#
|
|
2671
2855
|
# @option params [String] :endpoint
|
|
2672
2856
|
# The endpoint that you want to receive notifications. Endpoints vary by
|
|
@@ -2695,7 +2879,7 @@ module Aws::SNS
|
|
|
2695
2879
|
# function.
|
|
2696
2880
|
#
|
|
2697
2881
|
# * For the `firehose` protocol, the endpoint is the ARN of an Amazon
|
|
2698
|
-
#
|
|
2882
|
+
# Data Firehose delivery stream.
|
|
2699
2883
|
#
|
|
2700
2884
|
# @option params [Hash<String,String>] :attributes
|
|
2701
2885
|
# A map of attributes with their corresponding values.
|
|
@@ -2717,7 +2901,6 @@ module Aws::SNS
|
|
|
2717
2901
|
# message attributes.
|
|
2718
2902
|
#
|
|
2719
2903
|
# * `MessageBody` – The filter is applied on the message body.
|
|
2720
|
-
#
|
|
2721
2904
|
# * `RawMessageDelivery` – When set to `true`, enables raw message
|
|
2722
2905
|
# delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
|
|
2723
2906
|
# for the endpoints to process JSON formatting, which is otherwise
|
|
@@ -2739,7 +2922,6 @@ module Aws::SNS
|
|
|
2739
2922
|
# * Permission to write to the Firehose delivery stream
|
|
2740
2923
|
#
|
|
2741
2924
|
# * Amazon SNS listed as a trusted entity
|
|
2742
|
-
#
|
|
2743
2925
|
# Specifying a valid ARN for this attribute is required for Firehose
|
|
2744
2926
|
# delivery stream subscriptions. For more information, see [Fanout to
|
|
2745
2927
|
# Firehose delivery streams][1] in the *Amazon SNS Developer Guide*.
|
|
@@ -2876,12 +3058,6 @@ module Aws::SNS
|
|
|
2876
3058
|
# is delivered to the endpoint, so that the endpoint owner can easily
|
|
2877
3059
|
# resubscribe to the topic if the `Unsubscribe` request was unintended.
|
|
2878
3060
|
#
|
|
2879
|
-
# <note markdown="1"> Amazon SQS queue subscriptions require authentication for deletion.
|
|
2880
|
-
# Only the owner of the subscription, or the owner of the topic can
|
|
2881
|
-
# unsubscribe using the required Amazon Web Services signature.
|
|
2882
|
-
#
|
|
2883
|
-
# </note>
|
|
2884
|
-
#
|
|
2885
3061
|
# This action is throttled at 100 transactions per second (TPS).
|
|
2886
3062
|
#
|
|
2887
3063
|
# @option params [required, String] :subscription_arn
|
|
@@ -2995,7 +3171,7 @@ module Aws::SNS
|
|
|
2995
3171
|
tracer: tracer
|
|
2996
3172
|
)
|
|
2997
3173
|
context[:gem_name] = 'aws-sdk-sns'
|
|
2998
|
-
context[:gem_version] = '1.
|
|
3174
|
+
context[:gem_version] = '1.112.0'
|
|
2999
3175
|
Seahorse::Client::Request.new(handlers, context)
|
|
3000
3176
|
end
|
|
3001
3177
|
|