aws-sdk-sns 1.67.0 → 1.92.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,6 +22,7 @@ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
22
  require 'aws-sdk-core/plugins/response_paging.rb'
23
23
  require 'aws-sdk-core/plugins/stub_responses.rb'
24
24
  require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/invocation_id.rb'
25
26
  require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
27
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
28
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
@@ -31,11 +32,10 @@ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
32
  require 'aws-sdk-core/plugins/request_compression.rb'
32
33
  require 'aws-sdk-core/plugins/defaults_mode.rb'
33
34
  require 'aws-sdk-core/plugins/recursion_detection.rb'
35
+ require 'aws-sdk-core/plugins/telemetry.rb'
34
36
  require 'aws-sdk-core/plugins/sign.rb'
35
37
  require 'aws-sdk-core/plugins/protocols/query.rb'
36
38
 
37
- Aws::Plugins::GlobalConfiguration.add_identifier(:sns)
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`.
41
41
  #
@@ -72,6 +72,7 @@ module Aws::SNS
72
72
  add_plugin(Aws::Plugins::ResponsePaging)
73
73
  add_plugin(Aws::Plugins::StubResponses)
74
74
  add_plugin(Aws::Plugins::IdempotencyToken)
75
+ add_plugin(Aws::Plugins::InvocationId)
75
76
  add_plugin(Aws::Plugins::JsonvalueConverter)
76
77
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
77
78
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
@@ -81,12 +82,18 @@ module Aws::SNS
81
82
  add_plugin(Aws::Plugins::RequestCompression)
82
83
  add_plugin(Aws::Plugins::DefaultsMode)
83
84
  add_plugin(Aws::Plugins::RecursionDetection)
85
+ add_plugin(Aws::Plugins::Telemetry)
84
86
  add_plugin(Aws::Plugins::Sign)
85
87
  add_plugin(Aws::Plugins::Protocols::Query)
86
88
  add_plugin(Aws::SNS::Plugins::Endpoints)
87
89
 
88
90
  # @overload initialize(options)
89
91
  # @param [Hash] options
92
+ #
93
+ # @option options [Array<Seahorse::Client::Plugin>] :plugins ([]])
94
+ # A list of plugins to apply to the client. Each plugin is either a
95
+ # class name or an instance of a plugin class.
96
+ #
90
97
  # @option options [required, Aws::CredentialProvider] :credentials
91
98
  # Your AWS credentials. This can be an instance of any one of the
92
99
  # following classes:
@@ -121,13 +128,15 @@ module Aws::SNS
121
128
  # locations will be searched for credentials:
122
129
  #
123
130
  # * `Aws.config[:credentials]`
124
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
125
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
131
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
132
+ # `:account_id` options.
133
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
134
+ # ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
126
135
  # * `~/.aws/credentials`
127
136
  # * `~/.aws/config`
128
137
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
129
138
  # are very aggressive. Construct and pass an instance of
130
- # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
139
+ # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
131
140
  # enable retries and extended timeouts. Instance profile credential
132
141
  # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
133
142
  # to true.
@@ -146,6 +155,8 @@ module Aws::SNS
146
155
  #
147
156
  # @option options [String] :access_key_id
148
157
  #
158
+ # @option options [String] :account_id
159
+ #
149
160
  # @option options [Boolean] :active_endpoint_cache (false)
150
161
  # When set to `true`, a thread polling for endpoints will be running in
151
162
  # the background every 60 secs (default). Defaults to `false`.
@@ -196,10 +207,16 @@ module Aws::SNS
196
207
  # When set to 'true' the request body will not be compressed
197
208
  # for supported operations.
198
209
  #
199
- # @option options [String] :endpoint
200
- # The client endpoint is normally constructed from the `:region`
201
- # option. You should only configure an `:endpoint` when connecting
202
- # to test or custom endpoints. This should be a valid HTTP(S) URI.
210
+ # @option options [String, URI::HTTPS, URI::HTTP] :endpoint
211
+ # Normally you should not configure the `:endpoint` option
212
+ # directly. This is normally constructed from the `:region`
213
+ # option. Configuring `:endpoint` is normally reserved for
214
+ # connecting to test or custom endpoints. The endpoint should
215
+ # be a URI formatted like:
216
+ #
217
+ # 'http://example.com'
218
+ # 'https://example.com'
219
+ # 'http://example.com:123'
203
220
  #
204
221
  # @option options [Integer] :endpoint_cache_max_entries (1000)
205
222
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -289,16 +306,25 @@ module Aws::SNS
289
306
  # throttling. This is a provisional mode that may change behavior
290
307
  # in the future.
291
308
  #
292
- #
293
309
  # @option options [String] :sdk_ua_app_id
294
310
  # A unique and opaque application ID that is appended to the
295
- # User-Agent header as app/<sdk_ua_app_id>. It should have a
296
- # maximum length of 50.
311
+ # User-Agent header as app/sdk_ua_app_id. It should have a
312
+ # maximum length of 50. This variable is sourced from environment
313
+ # variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.
297
314
  #
298
315
  # @option options [String] :secret_access_key
299
316
  #
300
317
  # @option options [String] :session_token
301
318
  #
319
+ # @option options [Array] :sigv4a_signing_region_set
320
+ # A list of regions that should be signed with SigV4a signing. When
321
+ # not passed, a default `:sigv4a_signing_region_set` is searched for
322
+ # in the following locations:
323
+ #
324
+ # * `Aws.config[:sigv4a_signing_region_set]`
325
+ # * `ENV['AWS_SIGV4A_SIGNING_REGION_SET']`
326
+ # * `~/.aws/config`
327
+ #
302
328
  # @option options [Boolean] :stub_responses (false)
303
329
  # Causes the client to return stubbed responses. By default
304
330
  # fake responses are generated and returned. You can specify
@@ -308,6 +334,16 @@ module Aws::SNS
308
334
  # ** Please note ** When response stubbing is enabled, no HTTP
309
335
  # requests are made, and retries are disabled.
310
336
  #
337
+ # @option options [Aws::Telemetry::TelemetryProviderBase] :telemetry_provider (Aws::Telemetry::NoOpTelemetryProvider)
338
+ # Allows you to provide a telemetry provider, which is used to
339
+ # emit telemetry data. By default, uses `NoOpTelemetryProvider` which
340
+ # will not record or emit any telemetry data. The SDK supports the
341
+ # following telemetry providers:
342
+ #
343
+ # * OpenTelemetry (OTel) - To use the OTel provider, install and require the
344
+ # `opentelemetry-sdk` gem and then, pass in an instance of a
345
+ # `Aws::Telemetry::OTelProvider` for telemetry provider.
346
+ #
311
347
  # @option options [Aws::TokenProvider] :token_provider
312
348
  # A Bearer Token Provider. This can be an instance of any one of the
313
349
  # following classes:
@@ -335,52 +371,75 @@ module Aws::SNS
335
371
  # sending the request.
336
372
  #
337
373
  # @option options [Aws::SNS::EndpointProvider] :endpoint_provider
338
- # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::SNS::EndpointParameters`
339
- #
340
- # @option options [URI::HTTP,String] :http_proxy A proxy to send
341
- # requests through. Formatted like 'http://proxy.com:123'.
342
- #
343
- # @option options [Float] :http_open_timeout (15) The number of
344
- # seconds to wait when opening a HTTP session before raising a
345
- # `Timeout::Error`.
346
- #
347
- # @option options [Float] :http_read_timeout (60) The default
348
- # number of seconds to wait for response data. This value can
349
- # safely be set per-request on the session.
350
- #
351
- # @option options [Float] :http_idle_timeout (5) The number of
352
- # seconds a connection is allowed to sit idle before it is
353
- # considered stale. Stale connections are closed and removed
354
- # from the pool before making a request.
374
+ # The endpoint provider used to resolve endpoints. Any object that responds to
375
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
376
+ # `Aws::SNS::EndpointParameters`.
377
+ #
378
+ # @option options [Float] :http_continue_timeout (1)
379
+ # The number of seconds to wait for a 100-continue response before sending the
380
+ # request body. This option has no effect unless the request has "Expect"
381
+ # header set to "100-continue". Defaults to `nil` which disables this
382
+ # behaviour. This value can safely be set per request on the session.
383
+ #
384
+ # @option options [Float] :http_idle_timeout (5)
385
+ # The number of seconds a connection is allowed to sit idle before it
386
+ # is considered stale. Stale connections are closed and removed from the
387
+ # pool before making a request.
388
+ #
389
+ # @option options [Float] :http_open_timeout (15)
390
+ # The default number of seconds to wait for response data.
391
+ # This value can safely be set per-request on the session.
392
+ #
393
+ # @option options [URI::HTTP,String] :http_proxy
394
+ # A proxy to send requests through. Formatted like 'http://proxy.com:123'.
395
+ #
396
+ # @option options [Float] :http_read_timeout (60)
397
+ # The default number of seconds to wait for response data.
398
+ # This value can safely be set per-request on the session.
399
+ #
400
+ # @option options [Boolean] :http_wire_trace (false)
401
+ # When `true`, HTTP debug output will be sent to the `:logger`.
402
+ #
403
+ # @option options [Proc] :on_chunk_received
404
+ # When a Proc object is provided, it will be used as callback when each chunk
405
+ # of the response body is received. It provides three arguments: the chunk,
406
+ # the number of bytes received, and the total number of
407
+ # bytes in the response (or nil if the server did not send a `content-length`).
408
+ #
409
+ # @option options [Proc] :on_chunk_sent
410
+ # When a Proc object is provided, it will be used as callback when each chunk
411
+ # of the request body is sent. It provides three arguments: the chunk,
412
+ # the number of bytes read from the body, and the total number of
413
+ # bytes in the body.
414
+ #
415
+ # @option options [Boolean] :raise_response_errors (true)
416
+ # When `true`, response errors are raised.
417
+ #
418
+ # @option options [String] :ssl_ca_bundle
419
+ # Full path to the SSL certificate authority bundle file that should be used when
420
+ # verifying peer certificates. If you do not pass `:ssl_ca_bundle` or
421
+ # `:ssl_ca_directory` the the system default will be used if available.
422
+ #
423
+ # @option options [String] :ssl_ca_directory
424
+ # Full path of the directory that contains the unbundled SSL certificate
425
+ # authority files for verifying peer certificates. If you do
426
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the system
427
+ # default will be used if available.
355
428
  #
356
- # @option options [Float] :http_continue_timeout (1) The number of
357
- # seconds to wait for a 100-continue response before sending the
358
- # request body. This option has no effect unless the request has
359
- # "Expect" header set to "100-continue". Defaults to `nil` which
360
- # disables this behaviour. This value can safely be set per
361
- # request on the session.
429
+ # @option options [String] :ssl_ca_store
430
+ # Sets the X509::Store to verify peer certificate.
362
431
  #
363
- # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
364
- # in seconds.
432
+ # @option options [OpenSSL::X509::Certificate] :ssl_cert
433
+ # Sets a client certificate when creating http connections.
365
434
  #
366
- # @option options [Boolean] :http_wire_trace (false) When `true`,
367
- # HTTP debug output will be sent to the `:logger`.
435
+ # @option options [OpenSSL::PKey] :ssl_key
436
+ # Sets a client key when creating http connections.
368
437
  #
369
- # @option options [Boolean] :ssl_verify_peer (true) When `true`,
370
- # SSL peer certificates are verified when establishing a
371
- # connection.
438
+ # @option options [Float] :ssl_timeout
439
+ # Sets the SSL timeout in seconds
372
440
  #
373
- # @option options [String] :ssl_ca_bundle Full path to the SSL
374
- # certificate authority bundle file that should be used when
375
- # verifying peer certificates. If you do not pass
376
- # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
377
- # will be used if available.
378
- #
379
- # @option options [String] :ssl_ca_directory Full path of the
380
- # directory that contains the unbundled SSL certificate
381
- # authority files for verifying peer certificates. If you do
382
- # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
383
- # system default will be used if available.
441
+ # @option options [Boolean] :ssl_verify_peer (true)
442
+ # When `true`, SSL peer certificates are verified when establishing a connection.
384
443
  #
385
444
  def initialize(*args)
386
445
  super
@@ -521,27 +580,34 @@ module Aws::SNS
521
580
  # `PlatformPrincipal` and `PlatformCredential` are received from the
522
581
  # notification service.
523
582
  #
524
- # * For `ADM`, `PlatformPrincipal` is `client id` and
525
- # `PlatformCredential` is `client secret`.
526
- #
527
- # * For `Baidu`, `PlatformPrincipal` is `API key` and
528
- # `PlatformCredential` is `secret key`.
583
+ # * For ADM, `PlatformPrincipal` is `client id` and `PlatformCredential`
584
+ # is `client secret`.
529
585
  #
530
- # * For `APNS` and `APNS_SANDBOX` using certificate credentials,
586
+ # * For APNS and `APNS_SANDBOX` using certificate credentials,
531
587
  # `PlatformPrincipal` is `SSL certificate` and `PlatformCredential` is
532
588
  # `private key`.
533
589
  #
534
- # * For `APNS` and `APNS_SANDBOX` using token credentials,
590
+ # * For APNS and `APNS_SANDBOX` using token credentials,
535
591
  # `PlatformPrincipal` is `signing key ID` and `PlatformCredential` is
536
592
  # `signing key`.
537
593
  #
538
- # * For `GCM` (Firebase Cloud Messaging), there is no
539
- # `PlatformPrincipal` and the `PlatformCredential` is `API key`.
594
+ # * For Baidu, `PlatformPrincipal` is `API key` and `PlatformCredential`
595
+ # is `secret key`.
596
+ #
597
+ # * For GCM (Firebase Cloud Messaging) using key credentials, there is
598
+ # no `PlatformPrincipal`. The `PlatformCredential` is `API key`.
599
+ #
600
+ # * For GCM (Firebase Cloud Messaging) using token credentials, there is
601
+ # no `PlatformPrincipal`. The `PlatformCredential` is a JSON formatted
602
+ # private key file. When using the Amazon Web Services CLI, the file
603
+ # must be in string format and special characters must be ignored. To
604
+ # format the file correctly, Amazon SNS recommends using the following
605
+ # command: `` SERVICE_JSON=`jq @json <<< cat service.json` ``.
540
606
  #
541
- # * For `MPNS`, `PlatformPrincipal` is `TLS certificate` and
607
+ # * For MPNS, `PlatformPrincipal` is `TLS certificate` and
542
608
  # `PlatformCredential` is `private key`.
543
609
  #
544
- # * For `WNS`, `PlatformPrincipal` is `Package Security Identifier` and
610
+ # * For WNS, `PlatformPrincipal` is `Package Security Identifier` and
545
611
  # `PlatformCredential` is `secret key`.
546
612
  #
547
613
  # You can use the returned `PlatformApplicationArn` as an attribute for
@@ -558,7 +624,8 @@ module Aws::SNS
558
624
  # (Firebase Cloud Messaging).
559
625
  #
560
626
  # @option params [required, Hash<String,String>] :attributes
561
- # For a list of attributes, see [SetPlatformApplicationAttributes][1].
627
+ # For a list of attributes, see [ `SetPlatformApplicationAttributes`
628
+ # ][1].
562
629
  #
563
630
  #
564
631
  #
@@ -614,8 +681,8 @@ module Aws::SNS
614
681
  # [2]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePushBaiduEndpoint.html
615
682
  #
616
683
  # @option params [required, String] :platform_application_arn
617
- # PlatformApplicationArn returned from CreatePlatformApplication is used
618
- # to create a an endpoint.
684
+ # `PlatformApplicationArn` returned from CreatePlatformApplication is
685
+ # used to create a an endpoint.
619
686
  #
620
687
  # @option params [required, String] :token
621
688
  # Unique identifier created by the notification service for an app on a
@@ -630,7 +697,7 @@ module Aws::SNS
630
697
  # not use this data. The data must be in UTF-8 format and less than 2KB.
631
698
  #
632
699
  # @option params [Hash<String,String>] :attributes
633
- # For a list of attributes, see [SetEndpointAttributes][1].
700
+ # For a list of attributes, see [ `SetEndpointAttributes` ][1].
634
701
  #
635
702
  #
636
703
  #
@@ -732,7 +799,7 @@ module Aws::SNS
732
799
  # @option params [Hash<String,String>] :attributes
733
800
  # A map of attributes with their corresponding values.
734
801
  #
735
- # The following lists the names, descriptions, and values of the special
802
+ # The following lists names, descriptions, and values of the special
736
803
  # request parameters that the `CreateTopic` action uses:
737
804
  #
738
805
  # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
@@ -770,7 +837,8 @@ module Aws::SNS
770
837
  #
771
838
  # The following attributes apply only to [FIFO topics][4]:
772
839
  #
773
- # * `FifoTopic` – When this is set to `true`, a FIFO topic is created.
840
+ # * `ArchivePolicy` – The policy that sets the retention period for
841
+ # messages stored in the message archive of an Amazon SNS FIFO topic.
774
842
  #
775
843
  # * `ContentBasedDeduplication` – Enables content-based deduplication
776
844
  # for FIFO topics.
@@ -858,7 +926,7 @@ module Aws::SNS
858
926
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
859
927
  #
860
928
  # @option params [required, String] :endpoint_arn
861
- # EndpointArn of endpoint to delete.
929
+ # `EndpointArn` of endpoint to delete.
862
930
  #
863
931
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
864
932
  #
@@ -887,7 +955,7 @@ module Aws::SNS
887
955
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
888
956
  #
889
957
  # @option params [required, String] :platform_application_arn
890
- # PlatformApplicationArn of platform application object to delete.
958
+ # `PlatformApplicationArn` of platform application object to delete.
891
959
  #
892
960
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
893
961
  #
@@ -1014,7 +1082,7 @@ module Aws::SNS
1014
1082
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1015
1083
  #
1016
1084
  # @option params [required, String] :endpoint_arn
1017
- # EndpointArn for GetEndpointAttributes input.
1085
+ # `EndpointArn` for `GetEndpointAttributes` input.
1018
1086
  #
1019
1087
  # @return [Types::GetEndpointAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1020
1088
  #
@@ -1050,7 +1118,7 @@ module Aws::SNS
1050
1118
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1051
1119
  #
1052
1120
  # @option params [required, String] :platform_application_arn
1053
- # PlatformApplicationArn for GetPlatformApplicationAttributesInput.
1121
+ # `PlatformApplicationArn` for GetPlatformApplicationAttributesInput.
1054
1122
  #
1055
1123
  # @return [Types::GetPlatformApplicationAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1056
1124
  #
@@ -1229,12 +1297,12 @@ module Aws::SNS
1229
1297
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1230
1298
  #
1231
1299
  # @option params [required, String] :platform_application_arn
1232
- # PlatformApplicationArn for ListEndpointsByPlatformApplicationInput
1300
+ # `PlatformApplicationArn` for `ListEndpointsByPlatformApplicationInput`
1233
1301
  # action.
1234
1302
  #
1235
1303
  # @option params [String] :next_token
1236
- # NextToken string is used when calling
1237
- # ListEndpointsByPlatformApplication action to retrieve additional
1304
+ # `NextToken` string is used when calling
1305
+ # `ListEndpointsByPlatformApplication` action to retrieve additional
1238
1306
  # records that are available after the first page results.
1239
1307
  #
1240
1308
  # @return [Types::ListEndpointsByPlatformApplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -1380,9 +1448,9 @@ module Aws::SNS
1380
1448
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1381
1449
  #
1382
1450
  # @option params [String] :next_token
1383
- # NextToken string is used when calling ListPlatformApplications action
1384
- # to retrieve additional records that are available after the first page
1385
- # results.
1451
+ # `NextToken` string is used when calling `ListPlatformApplications`
1452
+ # action to retrieve additional records that are available after the
1453
+ # first page results.
1386
1454
  #
1387
1455
  # @return [Types::ListPlatformApplicationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1388
1456
  #
@@ -1762,9 +1830,8 @@ module Aws::SNS
1762
1830
  # is delivered to email endpoints. This field will also be included, if
1763
1831
  # present, in the standard JSON messages delivered to other endpoints.
1764
1832
  #
1765
- # Constraints: Subjects must be ASCII text that begins with a letter,
1766
- # number, or punctuation mark; must not include line breaks or control
1767
- # characters; and must be less than 100 characters long.
1833
+ # Constraints: Subjects must be UTF-8 text with no line breaks or
1834
+ # control characters, and less than 100 characters long.
1768
1835
  #
1769
1836
  # @option params [String] :message_structure
1770
1837
  # Set `MessageStructure` to `json` if you want to send a different
@@ -1790,7 +1857,7 @@ module Aws::SNS
1790
1857
  # This parameter applies only to FIFO (first-in-first-out) topics. The
1791
1858
  # `MessageDeduplicationId` can contain up to 128 alphanumeric characters
1792
1859
  # `(a-z, A-Z, 0-9)` and punctuation ``
1793
- # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1860
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
1794
1861
  #
1795
1862
  # Every message must have a unique `MessageDeduplicationId`, which is a
1796
1863
  # token used for deduplication of sent messages. If a message with a
@@ -1805,7 +1872,7 @@ module Aws::SNS
1805
1872
  # @option params [String] :message_group_id
1806
1873
  # This parameter applies only to FIFO (first-in-first-out) topics. The
1807
1874
  # `MessageGroupId` can contain up to 128 alphanumeric characters `(a-z,
1808
- # A-Z, 0-9)` and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1875
+ # A-Z, 0-9)` and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
1809
1876
  #
1810
1877
  # The `MessageGroupId` is a tag that specifies that a message belongs to
1811
1878
  # a specific message group. Messages that belong to the same message
@@ -1823,7 +1890,7 @@ module Aws::SNS
1823
1890
  # resp = client.publish({
1824
1891
  # topic_arn: "topicARN",
1825
1892
  # target_arn: "String",
1826
- # phone_number: "String",
1893
+ # phone_number: "PhoneNumber",
1827
1894
  # message: "message", # required
1828
1895
  # subject: "subject",
1829
1896
  # message_structure: "messageStructure",
@@ -2019,7 +2086,7 @@ module Aws::SNS
2019
2086
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
2020
2087
  #
2021
2088
  # @option params [required, String] :endpoint_arn
2022
- # EndpointArn used for SetEndpointAttributes action.
2089
+ # EndpointArn used for `SetEndpointAttributes` action.
2023
2090
  #
2024
2091
  # @option params [required, Hash<String,String>] :attributes
2025
2092
  # A map of the endpoint attributes. Attributes in this map include the
@@ -2072,7 +2139,8 @@ module Aws::SNS
2072
2139
  # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html
2073
2140
  #
2074
2141
  # @option params [required, String] :platform_application_arn
2075
- # PlatformApplicationArn for SetPlatformApplicationAttributes action.
2142
+ # `PlatformApplicationArn` for `SetPlatformApplicationAttributes`
2143
+ # action.
2076
2144
  #
2077
2145
  # @option params [required, Hash<String,String>] :attributes
2078
2146
  # A map of the platform application attributes. Attributes in this map
@@ -2089,8 +2157,16 @@ module Aws::SNS
2089
2157
  # * For Apple Services using token credentials, `PlatformCredential`
2090
2158
  # is signing key.
2091
2159
  #
2092
- # * For GCM (Firebase Cloud Messaging), `PlatformCredential` is API
2093
- # key.
2160
+ # * For GCM (Firebase Cloud Messaging) using key credentials, there is
2161
+ # no `PlatformPrincipal`. The `PlatformCredential` is `API key`.
2162
+ #
2163
+ # * For GCM (Firebase Cloud Messaging) using token credentials, there
2164
+ # is no `PlatformPrincipal`. The `PlatformCredential` is a JSON
2165
+ # formatted private key file. When using the Amazon Web Services
2166
+ # CLI, the file must be in string format and special characters must
2167
+ # be ignored. To format the file correctly, Amazon SNS recommends
2168
+ # using the following command: `` SERVICE_JSON=`jq @json <<< cat
2169
+ # service.json` ``.
2094
2170
  # ^
2095
2171
  #
2096
2172
  # * `PlatformPrincipal` – The principal received from the notification
@@ -2307,7 +2383,6 @@ module Aws::SNS
2307
2383
  # message attributes.
2308
2384
  #
2309
2385
  # * `MessageBody` – The filter is applied on the message body.
2310
- #
2311
2386
  # * `RawMessageDelivery` – When set to `true`, enables raw message
2312
2387
  # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
2313
2388
  # for the endpoints to process JSON formatting, which is otherwise
@@ -2320,20 +2395,18 @@ module Aws::SNS
2320
2395
  # service that powers the subscribed endpoint becomes unavailable) are
2321
2396
  # held in the dead-letter queue for further analysis or reprocessing.
2322
2397
  #
2323
- # The following attribute applies only to Amazon Kinesis Data Firehose
2324
- # delivery stream subscriptions:
2398
+ # The following attribute applies only to Amazon Data Firehose delivery
2399
+ # stream subscriptions:
2325
2400
  #
2326
2401
  # * `SubscriptionRoleArn` – The ARN of the IAM role that has the
2327
2402
  # following:
2328
2403
  #
2329
- # * Permission to write to the Kinesis Data Firehose delivery stream
2404
+ # * Permission to write to the Firehose delivery stream
2330
2405
  #
2331
2406
  # * Amazon SNS listed as a trusted entity
2332
- #
2333
- # Specifying a valid ARN for this attribute is required for Kinesis
2334
- # Data Firehose delivery stream subscriptions. For more information,
2335
- # see [Fanout to Kinesis Data Firehose delivery streams][1] in the
2336
- # *Amazon SNS Developer Guide*.
2407
+ # Specifying a valid ARN for this attribute is required for Firehose
2408
+ # delivery stream subscriptions. For more information, see [Fanout to
2409
+ # Firehose delivery streams][1] in the *Amazon SNS Developer Guide*.
2337
2410
  #
2338
2411
  #
2339
2412
  #
@@ -2411,7 +2484,6 @@ module Aws::SNS
2411
2484
  # * `HTTPFailureFeedbackRoleArn` – Indicates failed message delivery
2412
2485
  # status for an Amazon SNS topic that is subscribed to an HTTP
2413
2486
  # endpoint.
2414
- #
2415
2487
  # * Amazon Kinesis Data Firehose
2416
2488
  #
2417
2489
  # * `FirehoseSuccessFeedbackRoleArn` – Indicates successful message
@@ -2425,7 +2497,6 @@ module Aws::SNS
2425
2497
  # * `FirehoseFailureFeedbackRoleArn` – Indicates failed message
2426
2498
  # delivery status for an Amazon SNS topic that is subscribed to an
2427
2499
  # Amazon Kinesis Data Firehose endpoint.
2428
- #
2429
2500
  # * Lambda
2430
2501
  #
2431
2502
  # * `LambdaSuccessFeedbackRoleArn` – Indicates successful message
@@ -2439,7 +2510,6 @@ module Aws::SNS
2439
2510
  # * `LambdaFailureFeedbackRoleArn` – Indicates failed message delivery
2440
2511
  # status for an Amazon SNS topic that is subscribed to an Lambda
2441
2512
  # endpoint.
2442
- #
2443
2513
  # * Platform application endpoint
2444
2514
  #
2445
2515
  # * `ApplicationSuccessFeedbackRoleArn` – Indicates successful message
@@ -2453,7 +2523,6 @@ module Aws::SNS
2453
2523
  # * `ApplicationFailureFeedbackRoleArn` – Indicates failed message
2454
2524
  # delivery status for an Amazon SNS topic that is subscribed to an
2455
2525
  # Amazon Web Services application endpoint.
2456
- #
2457
2526
  # <note markdown="1"> In addition to being able to configure topic attributes for message
2458
2527
  # delivery status of notification messages sent to Amazon SNS
2459
2528
  # application endpoints, you can also configure application attributes
@@ -2505,6 +2574,9 @@ module Aws::SNS
2505
2574
  #
2506
2575
  # The following attribute applies only to [FIFO topics][5]:
2507
2576
  #
2577
+ # * `ArchivePolicy` – The policy that sets the retention period for
2578
+ # messages stored in the message archive of an Amazon SNS FIFO topic.
2579
+ #
2508
2580
  # * `ContentBasedDeduplication` – Enables content-based deduplication
2509
2581
  # for FIFO topics.
2510
2582
  #
@@ -2558,7 +2630,7 @@ module Aws::SNS
2558
2630
  # `ConfirmSubscription` action to confirm the subscription.
2559
2631
  #
2560
2632
  # You call the `ConfirmSubscription` action with the token from the
2561
- # subscription response. Confirmation tokens are valid for three days.
2633
+ # subscription response. Confirmation tokens are valid for two days.
2562
2634
  #
2563
2635
  # This action is throttled at 100 transactions per second (TPS).
2564
2636
  #
@@ -2637,7 +2709,6 @@ module Aws::SNS
2637
2709
  # message attributes.
2638
2710
  #
2639
2711
  # * `MessageBody` – The filter is applied on the message body.
2640
- #
2641
2712
  # * `RawMessageDelivery` – When set to `true`, enables raw message
2642
2713
  # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
2643
2714
  # for the endpoints to process JSON formatting, which is otherwise
@@ -2650,24 +2721,44 @@ module Aws::SNS
2650
2721
  # service that powers the subscribed endpoint becomes unavailable) are
2651
2722
  # held in the dead-letter queue for further analysis or reprocessing.
2652
2723
  #
2653
- # The following attribute applies only to Amazon Kinesis Data Firehose
2654
- # delivery stream subscriptions:
2724
+ # The following attribute applies only to Amazon Data Firehose delivery
2725
+ # stream subscriptions:
2655
2726
  #
2656
2727
  # * `SubscriptionRoleArn` – The ARN of the IAM role that has the
2657
2728
  # following:
2658
2729
  #
2659
- # * Permission to write to the Kinesis Data Firehose delivery stream
2730
+ # * Permission to write to the Firehose delivery stream
2660
2731
  #
2661
2732
  # * Amazon SNS listed as a trusted entity
2733
+ # Specifying a valid ARN for this attribute is required for Firehose
2734
+ # delivery stream subscriptions. For more information, see [Fanout to
2735
+ # Firehose delivery streams][1] in the *Amazon SNS Developer Guide*.
2736
+ #
2737
+ # The following attributes apply only to [FIFO topics][2]:
2738
+ #
2739
+ # * `ReplayPolicy` – Adds or updates an inline policy document for a
2740
+ # subscription to replay messages stored in the specified Amazon SNS
2741
+ # topic.
2742
+ #
2743
+ # * `ReplayStatus` – Retrieves the status of the subscription message
2744
+ # replay, which can be one of the following:
2745
+ #
2746
+ # * `Completed` – The replay has successfully redelivered all
2747
+ # messages, and is now delivering newly published messages. If an
2748
+ # ending point was specified in the `ReplayPolicy` then the
2749
+ # subscription will no longer receive newly published messages.
2750
+ #
2751
+ # * `In progress` – The replay is currently replaying the selected
2752
+ # messages.
2753
+ #
2754
+ # * `Failed` – The replay was unable to complete.
2662
2755
  #
2663
- # Specifying a valid ARN for this attribute is required for Kinesis
2664
- # Data Firehose delivery stream subscriptions. For more information,
2665
- # see [Fanout to Kinesis Data Firehose delivery streams][1] in the
2666
- # *Amazon SNS Developer Guide*.
2756
+ # * `Pending` The default state while the replay initiates.
2667
2757
  #
2668
2758
  #
2669
2759
  #
2670
2760
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-firehose-as-subscriber.html
2761
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
2671
2762
  #
2672
2763
  # @option params [Boolean] :return_subscription_arn
2673
2764
  # Sets whether the response from the `Subscribe` request includes the
@@ -2882,14 +2973,19 @@ module Aws::SNS
2882
2973
  # @api private
2883
2974
  def build_request(operation_name, params = {})
2884
2975
  handlers = @handlers.for(operation_name)
2976
+ tracer = config.telemetry_provider.tracer_provider.tracer(
2977
+ Aws::Telemetry.module_to_tracer_name('Aws::SNS')
2978
+ )
2885
2979
  context = Seahorse::Client::RequestContext.new(
2886
2980
  operation_name: operation_name,
2887
2981
  operation: config.api.operation(operation_name),
2888
2982
  client: self,
2889
2983
  params: params,
2890
- config: config)
2984
+ config: config,
2985
+ tracer: tracer
2986
+ )
2891
2987
  context[:gem_name] = 'aws-sdk-sns'
2892
- context[:gem_version] = '1.67.0'
2988
+ context[:gem_version] = '1.92.0'
2893
2989
  Seahorse::Client::Request.new(handlers, context)
2894
2990
  end
2895
2991