aws-sdk-sns 1.42.0 → 1.77.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.
@@ -10,16 +10,6 @@
10
10
  module Aws::SNS
11
11
  module Types
12
12
 
13
- # @note When making an API call, you may pass AddPermissionInput
14
- # data as a hash:
15
- #
16
- # {
17
- # topic_arn: "topicARN", # required
18
- # label: "label", # required
19
- # aws_account_id: ["delegate"], # required
20
- # action_name: ["action"], # required
21
- # }
22
- #
23
13
  # @!attribute [rw] topic_arn
24
14
  # The ARN of the topic whose access control policy you wish to modify.
25
15
  # @return [String]
@@ -29,9 +19,10 @@ module Aws::SNS
29
19
  # @return [String]
30
20
  #
31
21
  # @!attribute [rw] aws_account_id
32
- # The account IDs of the users (principals) who will be given access
33
- # to the specified actions. The users must have account, but do not
34
- # need to be signed up for this service.
22
+ # The Amazon Web Services account IDs of the users (principals) who
23
+ # will be given access to the specified actions. The users must have
24
+ # Amazon Web Services account, but do not need to be signed up for
25
+ # this service.
35
26
  # @return [Array<String>]
36
27
  #
37
28
  # @!attribute [rw] action_name
@@ -65,14 +56,64 @@ module Aws::SNS
65
56
  include Aws::Structure
66
57
  end
67
58
 
68
- # The input for the `CheckIfPhoneNumberIsOptedOut` action.
59
+ # Two or more batch entries in the request have the same `Id`.
60
+ #
61
+ # @!attribute [rw] message
62
+ # @return [String]
63
+ #
64
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/BatchEntryIdsNotDistinctException AWS API Documentation
65
+ #
66
+ class BatchEntryIdsNotDistinctException < Struct.new(
67
+ :message)
68
+ SENSITIVE = []
69
+ include Aws::Structure
70
+ end
71
+
72
+ # The length of all the batch messages put together is more than the
73
+ # limit.
74
+ #
75
+ # @!attribute [rw] message
76
+ # @return [String]
77
+ #
78
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/BatchRequestTooLongException AWS API Documentation
79
+ #
80
+ class BatchRequestTooLongException < Struct.new(
81
+ :message)
82
+ SENSITIVE = []
83
+ include Aws::Structure
84
+ end
85
+
86
+ # Gives a detailed description of failed messages in the batch.
87
+ #
88
+ # @!attribute [rw] id
89
+ # The `Id` of an entry in a batch request
90
+ # @return [String]
91
+ #
92
+ # @!attribute [rw] code
93
+ # An error code representing why the action failed on this entry.
94
+ # @return [String]
69
95
  #
70
- # @note When making an API call, you may pass CheckIfPhoneNumberIsOptedOutInput
71
- # data as a hash:
96
+ # @!attribute [rw] message
97
+ # A message explaining why the action failed on this entry.
98
+ # @return [String]
72
99
  #
73
- # {
74
- # phone_number: "PhoneNumber", # required
75
- # }
100
+ # @!attribute [rw] sender_fault
101
+ # Specifies whether the error happened due to the caller of the batch
102
+ # API action.
103
+ # @return [Boolean]
104
+ #
105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/BatchResultErrorEntry AWS API Documentation
106
+ #
107
+ class BatchResultErrorEntry < Struct.new(
108
+ :id,
109
+ :code,
110
+ :message,
111
+ :sender_fault)
112
+ SENSITIVE = []
113
+ include Aws::Structure
114
+ end
115
+
116
+ # The input for the `CheckIfPhoneNumberIsOptedOut` action.
76
117
  #
77
118
  # @!attribute [rw] phone_number
78
119
  # The phone number for which you want to check the opt out status.
@@ -82,7 +123,7 @@ module Aws::SNS
82
123
  #
83
124
  class CheckIfPhoneNumberIsOptedOutInput < Struct.new(
84
125
  :phone_number)
85
- SENSITIVE = []
126
+ SENSITIVE = [:phone_number]
86
127
  include Aws::Structure
87
128
  end
88
129
 
@@ -122,15 +163,6 @@ module Aws::SNS
122
163
 
123
164
  # Input for ConfirmSubscription action.
124
165
  #
125
- # @note When making an API call, you may pass ConfirmSubscriptionInput
126
- # data as a hash:
127
- #
128
- # {
129
- # topic_arn: "topicARN", # required
130
- # token: "token", # required
131
- # authenticate_on_unsubscribe: "authenticateOnUnsubscribe",
132
- # }
133
- #
134
166
  # @!attribute [rw] topic_arn
135
167
  # The ARN of the topic for which you wish to confirm a subscription.
136
168
  # @return [String]
@@ -187,17 +219,6 @@ module Aws::SNS
187
219
 
188
220
  # Input for CreatePlatformApplication action.
189
221
  #
190
- # @note When making an API call, you may pass CreatePlatformApplicationInput
191
- # data as a hash:
192
- #
193
- # {
194
- # name: "String", # required
195
- # platform: "String", # required
196
- # attributes: { # required
197
- # "String" => "String",
198
- # },
199
- # }
200
- #
201
222
  # @!attribute [rw] name
202
223
  # Application names must be made up of only uppercase and lowercase
203
224
  # ASCII letters, numbers, underscores, hyphens, and periods, and must
@@ -211,7 +232,8 @@ module Aws::SNS
211
232
  # @return [String]
212
233
  #
213
234
  # @!attribute [rw] attributes
214
- # For a list of attributes, see [SetPlatformApplicationAttributes][1].
235
+ # For a list of attributes, see [ `SetPlatformApplicationAttributes`
236
+ # ][1].
215
237
  #
216
238
  #
217
239
  #
@@ -231,7 +253,7 @@ module Aws::SNS
231
253
  # Response from CreatePlatformApplication action.
232
254
  #
233
255
  # @!attribute [rw] platform_application_arn
234
- # PlatformApplicationArn is returned.
256
+ # `PlatformApplicationArn` is returned.
235
257
  # @return [String]
236
258
  #
237
259
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CreatePlatformApplicationResponse AWS API Documentation
@@ -244,20 +266,8 @@ module Aws::SNS
244
266
 
245
267
  # Input for CreatePlatformEndpoint action.
246
268
  #
247
- # @note When making an API call, you may pass CreatePlatformEndpointInput
248
- # data as a hash:
249
- #
250
- # {
251
- # platform_application_arn: "String", # required
252
- # token: "String", # required
253
- # custom_user_data: "String",
254
- # attributes: {
255
- # "String" => "String",
256
- # },
257
- # }
258
- #
259
269
  # @!attribute [rw] platform_application_arn
260
- # PlatformApplicationArn returned from CreatePlatformApplication is
270
+ # `PlatformApplicationArn` returned from CreatePlatformApplication is
261
271
  # used to create a an endpoint.
262
272
  # @return [String]
263
273
  #
@@ -277,7 +287,7 @@ module Aws::SNS
277
287
  # @return [String]
278
288
  #
279
289
  # @!attribute [rw] attributes
280
- # For a list of attributes, see [SetEndpointAttributes][1].
290
+ # For a list of attributes, see [ `SetEndpointAttributes` ][1].
281
291
  #
282
292
  #
283
293
  #
@@ -295,14 +305,6 @@ module Aws::SNS
295
305
  include Aws::Structure
296
306
  end
297
307
 
298
- # @note When making an API call, you may pass CreateSMSSandboxPhoneNumberInput
299
- # data as a hash:
300
- #
301
- # {
302
- # phone_number: "PhoneNumberString", # required
303
- # language_code: "en-US", # accepts en-US, en-GB, es-419, es-ES, de-DE, fr-CA, fr-FR, it-IT, ja-JP, pt-BR, kr-KR, zh-CN, zh-TW
304
- # }
305
- #
306
308
  # @!attribute [rw] phone_number
307
309
  # The destination phone number to verify. On verification, Amazon SNS
308
310
  # adds this phone number to the list of verified phone numbers that
@@ -319,7 +321,7 @@ module Aws::SNS
319
321
  class CreateSMSSandboxPhoneNumberInput < Struct.new(
320
322
  :phone_number,
321
323
  :language_code)
322
- SENSITIVE = []
324
+ SENSITIVE = [:phone_number]
323
325
  include Aws::Structure
324
326
  end
325
327
 
@@ -329,22 +331,6 @@ module Aws::SNS
329
331
 
330
332
  # Input for CreateTopic action.
331
333
  #
332
- # @note When making an API call, you may pass CreateTopicInput
333
- # data as a hash:
334
- #
335
- # {
336
- # name: "topicName", # required
337
- # attributes: {
338
- # "attributeName" => "attributeValue",
339
- # },
340
- # tags: [
341
- # {
342
- # key: "TagKey", # required
343
- # value: "TagValue", # required
344
- # },
345
- # ],
346
- # }
347
- #
348
334
  # @!attribute [rw] name
349
335
  # The name of the topic you want to create.
350
336
  #
@@ -359,8 +345,8 @@ module Aws::SNS
359
345
  # @!attribute [rw] attributes
360
346
  # A map of attributes with their corresponding values.
361
347
  #
362
- # The following lists the names, descriptions, and values of the
363
- # special request parameters that the `CreateTopic` action uses:
348
+ # The following lists names, descriptions, and values of the special
349
+ # request parameters that the `CreateTopic` action uses:
364
350
  #
365
351
  # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
366
352
  # failed deliveries to HTTP/S endpoints.
@@ -374,8 +360,21 @@ module Aws::SNS
374
360
  # default, only the topic owner can publish or subscribe to the
375
361
  # topic.
376
362
  #
377
- # The following attribute applies only to [server-side
378
- # encryption][1]\:
363
+ # * `SignatureVersion` – The signature version corresponds to the
364
+ # hashing algorithm used while creating the signature of the
365
+ # notifications, subscription confirmations, or unsubscribe
366
+ # confirmation messages sent by Amazon SNS. By default,
367
+ # `SignatureVersion` is set to `1`.
368
+ #
369
+ # * `TracingConfig` – Tracing mode of an Amazon SNS topic. By default
370
+ # `TracingConfig` is set to `PassThrough`, and the topic passes
371
+ # through the tracing header it receives from an Amazon SNS
372
+ # publisher to its subscriptions. If set to `Active`, Amazon SNS
373
+ # will vend X-Ray segment data to topic owner account if the sampled
374
+ # flag in the tracing header is true. This is only supported on
375
+ # standard topics.
376
+ #
377
+ # The following attribute applies only to [server-side encryption][1]:
379
378
  #
380
379
  # * `KmsMasterKeyId` – The ID of an Amazon Web Services managed
381
380
  # customer master key (CMK) for Amazon SNS or a custom CMK. For more
@@ -384,9 +383,15 @@ module Aws::SNS
384
383
  #
385
384
  # ^
386
385
  #
387
- # The following attributes apply only to [FIFO topics][4]\:
386
+ # The following attributes apply only to [FIFO topics][4]:
388
387
  #
389
- # * `FifoTopic` – When this is set to `true`, a FIFO topic is created.
388
+ # * `ArchivePolicy` – Adds or updates an inline policy document to
389
+ # archive messages stored in the specified Amazon SNS topic.
390
+ #
391
+ # * `BeginningArchiveTime` – The earliest starting point at which a
392
+ # message in the topic’s archive can be replayed from. This point in
393
+ # time is based on the configured message retention period set by
394
+ # the topic’s message archiving policy.
390
395
  #
391
396
  # * `ContentBasedDeduplication` – Enables content-based deduplication
392
397
  # for FIFO topics.
@@ -423,12 +428,23 @@ module Aws::SNS
423
428
  # </note>
424
429
  # @return [Array<Types::Tag>]
425
430
  #
431
+ # @!attribute [rw] data_protection_policy
432
+ # The body of the policy document you want to use for this topic.
433
+ #
434
+ # You can only add one policy per topic.
435
+ #
436
+ # The policy must be in JSON string format.
437
+ #
438
+ # Length Constraints: Maximum length of 30,720.
439
+ # @return [String]
440
+ #
426
441
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CreateTopicInput AWS API Documentation
427
442
  #
428
443
  class CreateTopicInput < Struct.new(
429
444
  :name,
430
445
  :attributes,
431
- :tags)
446
+ :tags,
447
+ :data_protection_policy)
432
448
  SENSITIVE = []
433
449
  include Aws::Structure
434
450
  end
@@ -447,17 +463,10 @@ module Aws::SNS
447
463
  include Aws::Structure
448
464
  end
449
465
 
450
- # Input for DeleteEndpoint action.
451
- #
452
- # @note When making an API call, you may pass DeleteEndpointInput
453
- # data as a hash:
454
- #
455
- # {
456
- # endpoint_arn: "String", # required
457
- # }
466
+ # Input for `DeleteEndpoint` action.
458
467
  #
459
468
  # @!attribute [rw] endpoint_arn
460
- # EndpointArn of endpoint to delete.
469
+ # `EndpointArn` of endpoint to delete.
461
470
  # @return [String]
462
471
  #
463
472
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/DeleteEndpointInput AWS API Documentation
@@ -468,17 +477,10 @@ module Aws::SNS
468
477
  include Aws::Structure
469
478
  end
470
479
 
471
- # Input for DeletePlatformApplication action.
472
- #
473
- # @note When making an API call, you may pass DeletePlatformApplicationInput
474
- # data as a hash:
475
- #
476
- # {
477
- # platform_application_arn: "String", # required
478
- # }
480
+ # Input for `DeletePlatformApplication` action.
479
481
  #
480
482
  # @!attribute [rw] platform_application_arn
481
- # PlatformApplicationArn of platform application object to delete.
483
+ # `PlatformApplicationArn` of platform application object to delete.
482
484
  # @return [String]
483
485
  #
484
486
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/DeletePlatformApplicationInput AWS API Documentation
@@ -489,13 +491,6 @@ module Aws::SNS
489
491
  include Aws::Structure
490
492
  end
491
493
 
492
- # @note When making an API call, you may pass DeleteSMSSandboxPhoneNumberInput
493
- # data as a hash:
494
- #
495
- # {
496
- # phone_number: "PhoneNumberString", # required
497
- # }
498
- #
499
494
  # @!attribute [rw] phone_number
500
495
  # The destination phone number to delete.
501
496
  # @return [String]
@@ -504,7 +499,7 @@ module Aws::SNS
504
499
  #
505
500
  class DeleteSMSSandboxPhoneNumberInput < Struct.new(
506
501
  :phone_number)
507
- SENSITIVE = []
502
+ SENSITIVE = [:phone_number]
508
503
  include Aws::Structure
509
504
  end
510
505
 
@@ -512,13 +507,6 @@ module Aws::SNS
512
507
  #
513
508
  class DeleteSMSSandboxPhoneNumberResult < Aws::EmptyStructure; end
514
509
 
515
- # @note When making an API call, you may pass DeleteTopicInput
516
- # data as a hash:
517
- #
518
- # {
519
- # topic_arn: "topicARN", # required
520
- # }
521
- #
522
510
  # @!attribute [rw] topic_arn
523
511
  # The ARN of the topic you want to delete.
524
512
  # @return [String]
@@ -531,10 +519,23 @@ module Aws::SNS
531
519
  include Aws::Structure
532
520
  end
533
521
 
534
- # Endpoint for mobile app and device.
522
+ # The batch request doesn't contain any entries.
523
+ #
524
+ # @!attribute [rw] message
525
+ # @return [String]
526
+ #
527
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/EmptyBatchRequestException AWS API Documentation
528
+ #
529
+ class EmptyBatchRequestException < Struct.new(
530
+ :message)
531
+ SENSITIVE = []
532
+ include Aws::Structure
533
+ end
534
+
535
+ # The endpoint for mobile app and device.
535
536
  #
536
537
  # @!attribute [rw] endpoint_arn
537
- # EndpointArn for mobile app and device.
538
+ # The `EndpointArn` for mobile app and device.
538
539
  # @return [String]
539
540
  #
540
541
  # @!attribute [rw] attributes
@@ -564,9 +565,10 @@ module Aws::SNS
564
565
  include Aws::Structure
565
566
  end
566
567
 
567
- # Indicates that the number of filter polices in your account exceeds
568
- # the limit. To add more filter polices, submit an SNS Limit Increase
569
- # case in the Amazon Web Services Support Center.
568
+ # Indicates that the number of filter polices in your Amazon Web
569
+ # Services account exceeds the limit. To add more filter polices, submit
570
+ # an Amazon SNS Limit Increase case in the Amazon Web Services Support
571
+ # Center.
570
572
  #
571
573
  # @!attribute [rw] message
572
574
  # @return [String]
@@ -579,17 +581,41 @@ module Aws::SNS
579
581
  include Aws::Structure
580
582
  end
581
583
 
582
- # Input for GetEndpointAttributes action.
584
+ # @!attribute [rw] resource_arn
585
+ # The ARN of the topic whose `DataProtectionPolicy` you want to get.
586
+ #
587
+ # For more information about ARNs, see [Amazon Resource Names
588
+ # (ARNs)][1] in the Amazon Web Services General Reference.
589
+ #
590
+ #
591
+ #
592
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
593
+ # @return [String]
594
+ #
595
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetDataProtectionPolicyInput AWS API Documentation
596
+ #
597
+ class GetDataProtectionPolicyInput < Struct.new(
598
+ :resource_arn)
599
+ SENSITIVE = []
600
+ include Aws::Structure
601
+ end
602
+
603
+ # @!attribute [rw] data_protection_policy
604
+ # Retrieves the `DataProtectionPolicy` in JSON string format.
605
+ # @return [String]
583
606
  #
584
- # @note When making an API call, you may pass GetEndpointAttributesInput
585
- # data as a hash:
607
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetDataProtectionPolicyResponse AWS API Documentation
586
608
  #
587
- # {
588
- # endpoint_arn: "String", # required
589
- # }
609
+ class GetDataProtectionPolicyResponse < Struct.new(
610
+ :data_protection_policy)
611
+ SENSITIVE = []
612
+ include Aws::Structure
613
+ end
614
+
615
+ # Input for `GetEndpointAttributes` action.
590
616
  #
591
617
  # @!attribute [rw] endpoint_arn
592
- # EndpointArn for GetEndpointAttributes input.
618
+ # `EndpointArn` for `GetEndpointAttributes` input.
593
619
  # @return [String]
594
620
  #
595
621
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetEndpointAttributesInput AWS API Documentation
@@ -600,7 +626,7 @@ module Aws::SNS
600
626
  include Aws::Structure
601
627
  end
602
628
 
603
- # Response from GetEndpointAttributes of the EndpointArn.
629
+ # Response from `GetEndpointAttributes` of the `EndpointArn`.
604
630
  #
605
631
  # @!attribute [rw] attributes
606
632
  # Attributes include the following:
@@ -632,17 +658,10 @@ module Aws::SNS
632
658
  include Aws::Structure
633
659
  end
634
660
 
635
- # Input for GetPlatformApplicationAttributes action.
636
- #
637
- # @note When making an API call, you may pass GetPlatformApplicationAttributesInput
638
- # data as a hash:
639
- #
640
- # {
641
- # platform_application_arn: "String", # required
642
- # }
661
+ # Input for `GetPlatformApplicationAttributes` action.
643
662
  #
644
663
  # @!attribute [rw] platform_application_arn
645
- # PlatformApplicationArn for GetPlatformApplicationAttributesInput.
664
+ # `PlatformApplicationArn` for GetPlatformApplicationAttributesInput.
646
665
  # @return [String]
647
666
  #
648
667
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetPlatformApplicationAttributesInput AWS API Documentation
@@ -653,11 +672,28 @@ module Aws::SNS
653
672
  include Aws::Structure
654
673
  end
655
674
 
656
- # Response for GetPlatformApplicationAttributes action.
675
+ # Response for `GetPlatformApplicationAttributes` action.
657
676
  #
658
677
  # @!attribute [rw] attributes
659
678
  # Attributes include the following:
660
679
  #
680
+ # * `AppleCertificateExpiryDate` – The expiry date of the SSL
681
+ # certificate used to configure certificate-based authentication.
682
+ #
683
+ # * `ApplePlatformTeamID` – The Apple developer account ID used to
684
+ # configure token-based authentication.
685
+ #
686
+ # * `ApplePlatformBundleID` – The app identifier used to configure
687
+ # token-based authentication.
688
+ #
689
+ # * `AuthenticationMethod` – Returns the credential type used when
690
+ # sending push notifications from application to APNS/APNS\_Sandbox,
691
+ # or application to GCM.
692
+ #
693
+ # * APNS – Returns the token or certificate.
694
+ #
695
+ # * GCM – Returns the token or key.
696
+ #
661
697
  # * `EventEndpointCreated` – Topic ARN to which EndpointCreated event
662
698
  # notifications should be sent.
663
699
  #
@@ -682,13 +718,6 @@ module Aws::SNS
682
718
 
683
719
  # The input for the `GetSMSAttributes` request.
684
720
  #
685
- # @note When making an API call, you may pass GetSMSAttributesInput
686
- # data as a hash:
687
- #
688
- # {
689
- # attributes: ["String"],
690
- # }
691
- #
692
721
  # @!attribute [rw] attributes
693
722
  # A list of the individual attribute names, such as
694
723
  # `MonthlySpendLimit`, for which you want values.
@@ -732,7 +761,8 @@ module Aws::SNS
732
761
  class GetSMSSandboxAccountStatusInput < Aws::EmptyStructure; end
733
762
 
734
763
  # @!attribute [rw] is_in_sandbox
735
- # Indicates whether the calling account is in the SMS sandbox.
764
+ # Indicates whether the calling Amazon Web Services account is in the
765
+ # SMS sandbox.
736
766
  # @return [Boolean]
737
767
  #
738
768
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetSMSSandboxAccountStatusResult AWS API Documentation
@@ -745,13 +775,6 @@ module Aws::SNS
745
775
 
746
776
  # Input for GetSubscriptionAttributes.
747
777
  #
748
- # @note When making an API call, you may pass GetSubscriptionAttributesInput
749
- # data as a hash:
750
- #
751
- # {
752
- # subscription_arn: "subscriptionARN", # required
753
- # }
754
- #
755
778
  # @!attribute [rw] subscription_arn
756
779
  # The ARN of the subscription whose properties you want to get.
757
780
  # @return [String]
@@ -784,7 +807,16 @@ module Aws::SNS
784
807
  # subscription. For more information, see [Amazon SNS Message
785
808
  # Filtering][1] in the *Amazon SNS Developer Guide*.
786
809
  #
787
- # * `Owner` – The account ID of the subscription's owner.
810
+ # * `FilterPolicyScope` – This attribute lets you choose the filtering
811
+ # scope by using one of the following string value types:
812
+ #
813
+ # * `MessageAttributes` (default) – The filter is applied on the
814
+ # message attributes.
815
+ #
816
+ # * `MessageBody` – The filter is applied on the message body.
817
+ #
818
+ # * `Owner` – The Amazon Web Services account ID of the
819
+ # subscription's owner.
788
820
  #
789
821
  # * `PendingConfirmation` – `true` if the subscription hasn't been
790
822
  # confirmed. To confirm a pending subscription, call the
@@ -807,20 +839,20 @@ module Aws::SNS
807
839
  # * `TopicArn` – The topic ARN that the subscription is associated
808
840
  # with.
809
841
  #
810
- # The following attribute applies only to Amazon Kinesis Data Firehose
842
+ # The following attribute applies only to Amazon Data Firehose
811
843
  # delivery stream subscriptions:
812
844
  #
813
845
  # * `SubscriptionRoleArn` – The ARN of the IAM role that has the
814
846
  # following:
815
847
  #
816
- # * Permission to write to the Kinesis Data Firehose delivery stream
848
+ # * Permission to write to the Firehose delivery stream
817
849
  #
818
850
  # * Amazon SNS listed as a trusted entity
819
851
  #
820
- # Specifying a valid ARN for this attribute is required for Kinesis
821
- # Data Firehose delivery stream subscriptions. For more information,
822
- # see [Fanout to Kinesis Data Firehose delivery streams][2] in the
823
- # *Amazon SNS Developer Guide*.
852
+ # Specifying a valid ARN for this attribute is required for Firehose
853
+ # delivery stream subscriptions. For more information, see [Fanout
854
+ # to Firehose delivery streams][2] in the *Amazon SNS Developer
855
+ # Guide*.
824
856
  #
825
857
  #
826
858
  #
@@ -838,13 +870,6 @@ module Aws::SNS
838
870
 
839
871
  # Input for GetTopicAttributes action.
840
872
  #
841
- # @note When making an API call, you may pass GetTopicAttributesInput
842
- # data as a hash:
843
- #
844
- # {
845
- # topic_arn: "topicARN", # required
846
- # }
847
- #
848
873
  # @!attribute [rw] topic_arn
849
874
  # The ARN of the topic whose properties you want to get.
850
875
  # @return [String]
@@ -869,11 +894,32 @@ module Aws::SNS
869
894
  # * `DisplayName` – The human-readable name used in the `From` field
870
895
  # for notifications to `email` and `email-json` endpoints.
871
896
  #
872
- # * `Owner` – The account ID of the topic's owner.
897
+ # * `EffectiveDeliveryPolicy` – The JSON serialization of the
898
+ # effective delivery policy, taking system defaults into account.
899
+ #
900
+ # * `Owner` – The Amazon Web Services account ID of the topic's
901
+ # owner.
873
902
  #
874
903
  # * `Policy` – The JSON serialization of the topic's access control
875
904
  # policy.
876
905
  #
906
+ # * `SignatureVersion` – The signature version corresponds to the
907
+ # hashing algorithm used while creating the signature of the
908
+ # notifications, subscription confirmations, or unsubscribe
909
+ # confirmation messages sent by Amazon SNS.
910
+ #
911
+ # * By default, `SignatureVersion` is set to **1**. The signature is
912
+ # a Base64-encoded **SHA1withRSA** signature.
913
+ #
914
+ # * When you set `SignatureVersion` to **2**. Amazon SNS uses a
915
+ # Base64-encoded **SHA256withRSA** signature.
916
+ #
917
+ # <note markdown="1"> If the API response does not include the `SignatureVersion`
918
+ # attribute, it means that the `SignatureVersion` for the topic
919
+ # has value **1**.
920
+ #
921
+ # </note>
922
+ #
877
923
  # * `SubscriptionsConfirmed` – The number of confirmed subscriptions
878
924
  # for the topic.
879
925
  #
@@ -885,11 +931,15 @@ module Aws::SNS
885
931
  #
886
932
  # * `TopicArn` – The topic's ARN.
887
933
  #
888
- # * `EffectiveDeliveryPolicy` – The JSON serialization of the
889
- # effective delivery policy, taking system defaults into account.
934
+ # * `TracingConfig` – Tracing mode of an Amazon SNS topic. By default
935
+ # `TracingConfig` is set to `PassThrough`, and the topic passes
936
+ # through the tracing header it receives from an Amazon SNS
937
+ # publisher to its subscriptions. If set to `Active`, Amazon SNS
938
+ # will vend X-Ray segment data to topic owner account if the sampled
939
+ # flag in the tracing header is true. This is only supported on
940
+ # standard topics.
890
941
  #
891
- # The following attribute applies only to
892
- # [server-side-encryption][1]\:
942
+ # The following attribute applies only to [server-side-encryption][1]:
893
943
  #
894
944
  # * `KmsMasterKeyId` - The ID of an Amazon Web Services managed
895
945
  # customer master key (CMK) for Amazon SNS or a custom CMK. For more
@@ -898,7 +948,7 @@ module Aws::SNS
898
948
  #
899
949
  # ^
900
950
  #
901
- # The following attributes apply only to [FIFO topics][4]\:
951
+ # The following attributes apply only to [FIFO topics][4]:
902
952
  #
903
953
  # * `FifoTopic` – When this is set to `true`, a FIFO topic is created.
904
954
  #
@@ -949,6 +999,20 @@ module Aws::SNS
949
999
  include Aws::Structure
950
1000
  end
951
1001
 
1002
+ # The `Id` of a batch entry in a batch request doesn't abide by the
1003
+ # specification.
1004
+ #
1005
+ # @!attribute [rw] message
1006
+ # @return [String]
1007
+ #
1008
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/InvalidBatchEntryIdException AWS API Documentation
1009
+ #
1010
+ class InvalidBatchEntryIdException < Struct.new(
1011
+ :message)
1012
+ SENSITIVE = []
1013
+ include Aws::Structure
1014
+ end
1015
+
952
1016
  # Indicates that a request parameter does not comply with the associated
953
1017
  # constraints.
954
1018
  #
@@ -967,7 +1031,8 @@ module Aws::SNS
967
1031
  # constraints.
968
1032
  #
969
1033
  # @!attribute [rw] message
970
- # The parameter value is invalid.
1034
+ # The parameter of an entry in a request doesn't abide by the
1035
+ # specification.
971
1036
  # @return [String]
972
1037
  #
973
1038
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/InvalidParameterValueException AWS API Documentation
@@ -992,6 +1057,20 @@ module Aws::SNS
992
1057
  include Aws::Structure
993
1058
  end
994
1059
 
1060
+ # Indicates that the specified state is not a valid state for an event
1061
+ # source.
1062
+ #
1063
+ # @!attribute [rw] message
1064
+ # @return [String]
1065
+ #
1066
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/InvalidStateException AWS API Documentation
1067
+ #
1068
+ class InvalidStateException < Struct.new(
1069
+ :message)
1070
+ SENSITIVE = []
1071
+ include Aws::Structure
1072
+ end
1073
+
995
1074
  # The ciphertext references a key that doesn't exist or that you don't
996
1075
  # have access to.
997
1076
  #
@@ -1006,8 +1085,8 @@ module Aws::SNS
1006
1085
  include Aws::Structure
1007
1086
  end
1008
1087
 
1009
- # The request was rejected because the specified customer master key
1010
- # (CMK) isn't enabled.
1088
+ # The request was rejected because the specified Amazon Web Services KMS
1089
+ # key isn't enabled.
1011
1090
  #
1012
1091
  # @!attribute [rw] message
1013
1092
  # @return [String]
@@ -1021,9 +1100,9 @@ module Aws::SNS
1021
1100
  end
1022
1101
 
1023
1102
  # The request was rejected because the state of the specified resource
1024
- # isn't valid for this request. For more information, see [How Key
1025
- # State Affects Use of a Customer Master Key][1] in the *Key Management
1026
- # Service Developer Guide*.
1103
+ # isn't valid for this request. For more information, see [Key states
1104
+ # of Amazon Web Services KMS keys][1] in the *Key Management Service
1105
+ # Developer Guide*.
1027
1106
  #
1028
1107
  #
1029
1108
  #
@@ -1087,24 +1166,16 @@ module Aws::SNS
1087
1166
  include Aws::Structure
1088
1167
  end
1089
1168
 
1090
- # Input for ListEndpointsByPlatformApplication action.
1091
- #
1092
- # @note When making an API call, you may pass ListEndpointsByPlatformApplicationInput
1093
- # data as a hash:
1094
- #
1095
- # {
1096
- # platform_application_arn: "String", # required
1097
- # next_token: "String",
1098
- # }
1169
+ # Input for `ListEndpointsByPlatformApplication` action.
1099
1170
  #
1100
1171
  # @!attribute [rw] platform_application_arn
1101
- # PlatformApplicationArn for ListEndpointsByPlatformApplicationInput
1102
- # action.
1172
+ # `PlatformApplicationArn` for
1173
+ # `ListEndpointsByPlatformApplicationInput` action.
1103
1174
  # @return [String]
1104
1175
  #
1105
1176
  # @!attribute [rw] next_token
1106
- # NextToken string is used when calling
1107
- # ListEndpointsByPlatformApplication action to retrieve additional
1177
+ # `NextToken` string is used when calling
1178
+ # `ListEndpointsByPlatformApplication` action to retrieve additional
1108
1179
  # records that are available after the first page results.
1109
1180
  # @return [String]
1110
1181
  #
@@ -1117,16 +1188,16 @@ module Aws::SNS
1117
1188
  include Aws::Structure
1118
1189
  end
1119
1190
 
1120
- # Response for ListEndpointsByPlatformApplication action.
1191
+ # Response for `ListEndpointsByPlatformApplication` action.
1121
1192
  #
1122
1193
  # @!attribute [rw] endpoints
1123
- # Endpoints returned for ListEndpointsByPlatformApplication action.
1194
+ # Endpoints returned for `ListEndpointsByPlatformApplication` action.
1124
1195
  # @return [Array<Types::Endpoint>]
1125
1196
  #
1126
1197
  # @!attribute [rw] next_token
1127
- # NextToken string is returned when calling
1128
- # ListEndpointsByPlatformApplication action if additional records are
1129
- # available after the first page results.
1198
+ # `NextToken` string is returned when calling
1199
+ # `ListEndpointsByPlatformApplication` action if additional records
1200
+ # are available after the first page results.
1130
1201
  # @return [String]
1131
1202
  #
1132
1203
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListEndpointsByPlatformApplicationResponse AWS API Documentation
@@ -1138,14 +1209,6 @@ module Aws::SNS
1138
1209
  include Aws::Structure
1139
1210
  end
1140
1211
 
1141
- # @note When making an API call, you may pass ListOriginationNumbersRequest
1142
- # data as a hash:
1143
- #
1144
- # {
1145
- # next_token: "nextToken",
1146
- # max_results: 1,
1147
- # }
1148
- #
1149
1212
  # @!attribute [rw] next_token
1150
1213
  # Token that the previous `ListOriginationNumbers` request returns.
1151
1214
  # @return [String]
@@ -1185,13 +1248,6 @@ module Aws::SNS
1185
1248
 
1186
1249
  # The input for the `ListPhoneNumbersOptedOut` action.
1187
1250
  #
1188
- # @note When making an API call, you may pass ListPhoneNumbersOptedOutInput
1189
- # data as a hash:
1190
- #
1191
- # {
1192
- # next_token: "string",
1193
- # }
1194
- #
1195
1251
  # @!attribute [rw] next_token
1196
1252
  # A `NextToken` string is used when you call the
1197
1253
  # `ListPhoneNumbersOptedOut` action to retrieve additional records
@@ -1229,17 +1285,10 @@ module Aws::SNS
1229
1285
  include Aws::Structure
1230
1286
  end
1231
1287
 
1232
- # Input for ListPlatformApplications action.
1233
- #
1234
- # @note When making an API call, you may pass ListPlatformApplicationsInput
1235
- # data as a hash:
1236
- #
1237
- # {
1238
- # next_token: "String",
1239
- # }
1288
+ # Input for `ListPlatformApplications` action.
1240
1289
  #
1241
1290
  # @!attribute [rw] next_token
1242
- # NextToken string is used when calling ListPlatformApplications
1291
+ # `NextToken` string is used when calling `ListPlatformApplications`
1243
1292
  # action to retrieve additional records that are available after the
1244
1293
  # first page results.
1245
1294
  # @return [String]
@@ -1252,17 +1301,17 @@ module Aws::SNS
1252
1301
  include Aws::Structure
1253
1302
  end
1254
1303
 
1255
- # Response for ListPlatformApplications action.
1304
+ # Response for `ListPlatformApplications` action.
1256
1305
  #
1257
1306
  # @!attribute [rw] platform_applications
1258
- # Platform applications returned when calling ListPlatformApplications
1259
- # action.
1307
+ # Platform applications returned when calling
1308
+ # `ListPlatformApplications` action.
1260
1309
  # @return [Array<Types::PlatformApplication>]
1261
1310
  #
1262
1311
  # @!attribute [rw] next_token
1263
- # NextToken string is returned when calling ListPlatformApplications
1264
- # action if additional records are available after the first page
1265
- # results.
1312
+ # `NextToken` string is returned when calling
1313
+ # `ListPlatformApplications` action if additional records are
1314
+ # available after the first page results.
1266
1315
  # @return [String]
1267
1316
  #
1268
1317
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListPlatformApplicationsResponse AWS API Documentation
@@ -1274,14 +1323,6 @@ module Aws::SNS
1274
1323
  include Aws::Structure
1275
1324
  end
1276
1325
 
1277
- # @note When making an API call, you may pass ListSMSSandboxPhoneNumbersInput
1278
- # data as a hash:
1279
- #
1280
- # {
1281
- # next_token: "nextToken",
1282
- # max_results: 1,
1283
- # }
1284
- #
1285
1326
  # @!attribute [rw] next_token
1286
1327
  # Token that the previous `ListSMSSandboxPhoneNumbersInput` request
1287
1328
  # returns.
@@ -1321,14 +1362,6 @@ module Aws::SNS
1321
1362
 
1322
1363
  # Input for ListSubscriptionsByTopic action.
1323
1364
  #
1324
- # @note When making an API call, you may pass ListSubscriptionsByTopicInput
1325
- # data as a hash:
1326
- #
1327
- # {
1328
- # topic_arn: "topicARN", # required
1329
- # next_token: "nextToken",
1330
- # }
1331
- #
1332
1365
  # @!attribute [rw] topic_arn
1333
1366
  # The ARN of the topic for which you wish to find subscriptions.
1334
1367
  # @return [String]
@@ -1369,13 +1402,6 @@ module Aws::SNS
1369
1402
 
1370
1403
  # Input for ListSubscriptions action.
1371
1404
  #
1372
- # @note When making an API call, you may pass ListSubscriptionsInput
1373
- # data as a hash:
1374
- #
1375
- # {
1376
- # next_token: "nextToken",
1377
- # }
1378
- #
1379
1405
  # @!attribute [rw] next_token
1380
1406
  # Token returned by the previous `ListSubscriptions` request.
1381
1407
  # @return [String]
@@ -1408,13 +1434,6 @@ module Aws::SNS
1408
1434
  include Aws::Structure
1409
1435
  end
1410
1436
 
1411
- # @note When making an API call, you may pass ListTagsForResourceRequest
1412
- # data as a hash:
1413
- #
1414
- # {
1415
- # resource_arn: "AmazonResourceName", # required
1416
- # }
1417
- #
1418
1437
  # @!attribute [rw] resource_arn
1419
1438
  # The ARN of the topic for which to list tags.
1420
1439
  # @return [String]
@@ -1439,13 +1458,6 @@ module Aws::SNS
1439
1458
  include Aws::Structure
1440
1459
  end
1441
1460
 
1442
- # @note When making an API call, you may pass ListTopicsInput
1443
- # data as a hash:
1444
- #
1445
- # {
1446
- # next_token: "nextToken",
1447
- # }
1448
- #
1449
1461
  # @!attribute [rw] next_token
1450
1462
  # Token returned by the previous `ListTopics` request.
1451
1463
  # @return [String]
@@ -1495,15 +1507,6 @@ module Aws::SNS
1495
1507
  # [2]: https://docs.aws.amazon.com/sns/latest/dg/SNSMessageAttributes.html
1496
1508
  # [3]: https://docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html
1497
1509
  #
1498
- # @note When making an API call, you may pass MessageAttributeValue
1499
- # data as a hash:
1500
- #
1501
- # {
1502
- # data_type: "String", # required
1503
- # string_value: "String",
1504
- # binary_value: "data",
1505
- # }
1506
- #
1507
1510
  # @!attribute [rw] data_type
1508
1511
  # Amazon SNS supports the following logical data types: String,
1509
1512
  # String.Array, Number, and Binary. For more information, see [Message
@@ -1553,13 +1556,6 @@ module Aws::SNS
1553
1556
 
1554
1557
  # Input for the OptInPhoneNumber action.
1555
1558
  #
1556
- # @note When making an API call, you may pass OptInPhoneNumberInput
1557
- # data as a hash:
1558
- #
1559
- # {
1560
- # phone_number: "PhoneNumber", # required
1561
- # }
1562
- #
1563
1559
  # @!attribute [rw] phone_number
1564
1560
  # The phone number to opt in. Use E.164 format.
1565
1561
  # @return [String]
@@ -1568,7 +1564,7 @@ module Aws::SNS
1568
1564
  #
1569
1565
  class OptInPhoneNumberInput < Struct.new(
1570
1566
  :phone_number)
1571
- SENSITIVE = []
1567
+ SENSITIVE = [:phone_number]
1572
1568
  include Aws::Structure
1573
1569
  end
1574
1570
 
@@ -1579,8 +1575,8 @@ module Aws::SNS
1579
1575
  class OptInPhoneNumberResponse < Aws::EmptyStructure; end
1580
1576
 
1581
1577
  # Indicates that the specified phone number opted out of receiving SMS
1582
- # messages from your account. You can't send SMS messages to phone
1583
- # numbers that opt out.
1578
+ # messages from your Amazon Web Services account. You can't send SMS
1579
+ # messages to phone numbers that opt out.
1584
1580
  #
1585
1581
  # @!attribute [rw] message
1586
1582
  # @return [String]
@@ -1629,7 +1625,7 @@ module Aws::SNS
1629
1625
  :iso_2_country_code,
1630
1626
  :route_type,
1631
1627
  :number_capabilities)
1632
- SENSITIVE = []
1628
+ SENSITIVE = [:phone_number]
1633
1629
  include Aws::Structure
1634
1630
  end
1635
1631
 
@@ -1666,28 +1662,218 @@ module Aws::SNS
1666
1662
  include Aws::Structure
1667
1663
  end
1668
1664
 
1669
- # Input for Publish action.
1665
+ # @!attribute [rw] topic_arn
1666
+ # The Amazon resource name (ARN) of the topic you want to batch
1667
+ # publish to.
1668
+ # @return [String]
1669
+ #
1670
+ # @!attribute [rw] publish_batch_request_entries
1671
+ # A list of `PublishBatch` request entries to be sent to the SNS
1672
+ # topic.
1673
+ # @return [Array<Types::PublishBatchRequestEntry>]
1670
1674
  #
1671
- # @note When making an API call, you may pass PublishInput
1672
- # data as a hash:
1673
- #
1674
- # {
1675
- # topic_arn: "topicARN",
1676
- # target_arn: "String",
1677
- # phone_number: "String",
1678
- # message: "message", # required
1679
- # subject: "subject",
1680
- # message_structure: "messageStructure",
1681
- # message_attributes: {
1682
- # "String" => {
1683
- # data_type: "String", # required
1684
- # string_value: "String",
1685
- # binary_value: "data",
1686
- # },
1687
- # },
1688
- # message_deduplication_id: "String",
1689
- # message_group_id: "String",
1690
- # }
1675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/PublishBatchInput AWS API Documentation
1676
+ #
1677
+ class PublishBatchInput < Struct.new(
1678
+ :topic_arn,
1679
+ :publish_batch_request_entries)
1680
+ SENSITIVE = []
1681
+ include Aws::Structure
1682
+ end
1683
+
1684
+ # Contains the details of a single Amazon SNS message along with an `Id`
1685
+ # that identifies a message within the batch.
1686
+ #
1687
+ # @!attribute [rw] id
1688
+ # An identifier for the message in this batch.
1689
+ #
1690
+ # <note markdown="1"> The `Ids` of a batch request must be unique within a request.
1691
+ #
1692
+ # This identifier can have up to 80 characters. The following
1693
+ # characters are accepted: alphanumeric characters, hyphens(-), and
1694
+ # underscores (\_).
1695
+ #
1696
+ # </note>
1697
+ # @return [String]
1698
+ #
1699
+ # @!attribute [rw] message
1700
+ # The body of the message.
1701
+ # @return [String]
1702
+ #
1703
+ # @!attribute [rw] subject
1704
+ # The subject of the batch message.
1705
+ # @return [String]
1706
+ #
1707
+ # @!attribute [rw] message_structure
1708
+ # Set `MessageStructure` to `json` if you want to send a different
1709
+ # message for each protocol. For example, using one publish action,
1710
+ # you can send a short message to your SMS subscribers and a longer
1711
+ # message to your email subscribers. If you set `MessageStructure` to
1712
+ # `json`, the value of the `Message` parameter must:
1713
+ #
1714
+ # * be a syntactically valid JSON object; and
1715
+ #
1716
+ # * contain at least a top-level JSON key of "default" with a value
1717
+ # that is a string.
1718
+ #
1719
+ # You can define other top-level keys that define the message you want
1720
+ # to send to a specific transport protocol (e.g. http).
1721
+ # @return [String]
1722
+ #
1723
+ # @!attribute [rw] message_attributes
1724
+ # Each message attribute consists of a `Name`, `Type`, and `Value`.
1725
+ # For more information, see [Amazon SNS message attributes][1] in the
1726
+ # Amazon SNS Developer Guide.
1727
+ #
1728
+ #
1729
+ #
1730
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-message-attributes.html
1731
+ # @return [Hash<String,Types::MessageAttributeValue>]
1732
+ #
1733
+ # @!attribute [rw] message_deduplication_id
1734
+ # This parameter applies only to FIFO (first-in-first-out) topics.
1735
+ #
1736
+ # The token used for deduplication of messages within a 5-minute
1737
+ # minimum deduplication interval. If a message with a particular
1738
+ # `MessageDeduplicationId` is sent successfully, subsequent messages
1739
+ # with the same `MessageDeduplicationId` are accepted successfully but
1740
+ # aren't delivered.
1741
+ #
1742
+ # * Every message must have a unique `MessageDeduplicationId`.
1743
+ #
1744
+ # * You may provide a `MessageDeduplicationId` explicitly.
1745
+ #
1746
+ # * If you aren't able to provide a `MessageDeduplicationId` and
1747
+ # you enable `ContentBasedDeduplication` for your topic, Amazon
1748
+ # SNS uses a SHA-256 hash to generate the `MessageDeduplicationId`
1749
+ # using the body of the message (but not the attributes of the
1750
+ # message).
1751
+ #
1752
+ # * If you don't provide a `MessageDeduplicationId` and the topic
1753
+ # doesn't have `ContentBasedDeduplication` set, the action fails
1754
+ # with an error.
1755
+ #
1756
+ # * If the topic has a `ContentBasedDeduplication` set, your
1757
+ # `MessageDeduplicationId` overrides the generated one.
1758
+ #
1759
+ # * When `ContentBasedDeduplication` is in effect, messages with
1760
+ # identical content sent within the deduplication interval are
1761
+ # treated as duplicates and only one copy of the message is
1762
+ # delivered.
1763
+ #
1764
+ # * If you send one message with `ContentBasedDeduplication` enabled,
1765
+ # and then another message with a `MessageDeduplicationId` that is
1766
+ # the same as the one generated for the first
1767
+ # `MessageDeduplicationId`, the two messages are treated as
1768
+ # duplicates and only one copy of the message is delivered.
1769
+ #
1770
+ # <note markdown="1"> The `MessageDeduplicationId` is available to the consumer of the
1771
+ # message (this can be useful for troubleshooting delivery issues).
1772
+ #
1773
+ # If a message is sent successfully but the acknowledgement is lost
1774
+ # and the message is resent with the same `MessageDeduplicationId`
1775
+ # after the deduplication interval, Amazon SNS can't detect duplicate
1776
+ # messages.
1777
+ #
1778
+ # Amazon SNS continues to keep track of the message deduplication ID
1779
+ # even after the message is received and deleted.
1780
+ #
1781
+ # </note>
1782
+ #
1783
+ # The length of `MessageDeduplicationId` is 128 characters.
1784
+ #
1785
+ # `MessageDeduplicationId` can contain alphanumeric characters `(a-z,
1786
+ # A-Z, 0-9)` and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~)
1787
+ # ``.
1788
+ # @return [String]
1789
+ #
1790
+ # @!attribute [rw] message_group_id
1791
+ # This parameter applies only to FIFO (first-in-first-out) topics.
1792
+ #
1793
+ # The tag that specifies that a message belongs to a specific message
1794
+ # group. Messages that belong to the same message group are processed
1795
+ # in a FIFO manner (however, messages in different message groups
1796
+ # might be processed out of order). To interleave multiple ordered
1797
+ # streams within a single topic, use `MessageGroupId` values (for
1798
+ # example, session data for multiple users). In this scenario,
1799
+ # multiple consumers can process the topic, but the session data of
1800
+ # each user is processed in a FIFO fashion.
1801
+ #
1802
+ # You must associate a non-empty `MessageGroupId` with a message. If
1803
+ # you don't provide a `MessageGroupId`, the action fails.
1804
+ #
1805
+ # The length of `MessageGroupId` is 128 characters.
1806
+ #
1807
+ # `MessageGroupId` can contain alphanumeric characters `(a-z, A-Z,
1808
+ # 0-9)` and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1809
+ #
1810
+ # `MessageGroupId` is required for FIFO topics. You can't use it for
1811
+ # standard topics.
1812
+ # @return [String]
1813
+ #
1814
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/PublishBatchRequestEntry AWS API Documentation
1815
+ #
1816
+ class PublishBatchRequestEntry < Struct.new(
1817
+ :id,
1818
+ :message,
1819
+ :subject,
1820
+ :message_structure,
1821
+ :message_attributes,
1822
+ :message_deduplication_id,
1823
+ :message_group_id)
1824
+ SENSITIVE = []
1825
+ include Aws::Structure
1826
+ end
1827
+
1828
+ # @!attribute [rw] successful
1829
+ # A list of successful `PublishBatch` responses.
1830
+ # @return [Array<Types::PublishBatchResultEntry>]
1831
+ #
1832
+ # @!attribute [rw] failed
1833
+ # A list of failed `PublishBatch` responses.
1834
+ # @return [Array<Types::BatchResultErrorEntry>]
1835
+ #
1836
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/PublishBatchResponse AWS API Documentation
1837
+ #
1838
+ class PublishBatchResponse < Struct.new(
1839
+ :successful,
1840
+ :failed)
1841
+ SENSITIVE = []
1842
+ include Aws::Structure
1843
+ end
1844
+
1845
+ # Encloses data related to a successful message in a batch request for
1846
+ # topic.
1847
+ #
1848
+ # @!attribute [rw] id
1849
+ # The `Id` of an entry in a batch request.
1850
+ # @return [String]
1851
+ #
1852
+ # @!attribute [rw] message_id
1853
+ # An identifier for the message.
1854
+ # @return [String]
1855
+ #
1856
+ # @!attribute [rw] sequence_number
1857
+ # This parameter applies only to FIFO (first-in-first-out) topics.
1858
+ #
1859
+ # The large, non-consecutive number that Amazon SNS assigns to each
1860
+ # message.
1861
+ #
1862
+ # The length of `SequenceNumber` is 128 bits. `SequenceNumber`
1863
+ # continues to increase for a particular `MessageGroupId`.
1864
+ # @return [String]
1865
+ #
1866
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/PublishBatchResultEntry AWS API Documentation
1867
+ #
1868
+ class PublishBatchResultEntry < Struct.new(
1869
+ :id,
1870
+ :message_id,
1871
+ :sequence_number)
1872
+ SENSITIVE = []
1873
+ include Aws::Structure
1874
+ end
1875
+
1876
+ # Input for Publish action.
1691
1877
  #
1692
1878
  # @!attribute [rw] topic_arn
1693
1879
  # The topic you want to publish to.
@@ -1774,9 +1960,8 @@ module Aws::SNS
1774
1960
  # included, if present, in the standard JSON messages delivered to
1775
1961
  # other endpoints.
1776
1962
  #
1777
- # Constraints: Subjects must be ASCII text that begins with a letter,
1778
- # number, or punctuation mark; must not include line breaks or control
1779
- # characters; and must be less than 100 characters long.
1963
+ # Constraints: Subjects must be UTF-8 text with no line breaks or
1964
+ # control characters, and less than 100 characters long.
1780
1965
  # @return [String]
1781
1966
  #
1782
1967
  # @!attribute [rw] message_structure
@@ -1804,7 +1989,7 @@ module Aws::SNS
1804
1989
  # @!attribute [rw] message_deduplication_id
1805
1990
  # This parameter applies only to FIFO (first-in-first-out) topics. The
1806
1991
  # `MessageDeduplicationId` can contain up to 128 alphanumeric
1807
- # characters (a-z, A-Z, 0-9) and punctuation ``
1992
+ # characters `(a-z, A-Z, 0-9)` and punctuation ``
1808
1993
  # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1809
1994
  #
1810
1995
  # Every message must have a unique `MessageDeduplicationId`, which is
@@ -1820,9 +2005,9 @@ module Aws::SNS
1820
2005
  #
1821
2006
  # @!attribute [rw] message_group_id
1822
2007
  # This parameter applies only to FIFO (first-in-first-out) topics. The
1823
- # `MessageGroupId` can contain up to 128 alphanumeric characters (a-z,
1824
- # A-Z, 0-9) and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~)
1825
- # ``.
2008
+ # `MessageGroupId` can contain up to 128 alphanumeric characters
2009
+ # `(a-z, A-Z, 0-9)` and punctuation ``
2010
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1826
2011
  #
1827
2012
  # The `MessageGroupId` is a tag that specifies that a message belongs
1828
2013
  # to a specific message group. Messages that belong to the same
@@ -1843,7 +2028,7 @@ module Aws::SNS
1843
2028
  :message_attributes,
1844
2029
  :message_deduplication_id,
1845
2030
  :message_group_id)
1846
- SENSITIVE = []
2031
+ SENSITIVE = [:phone_number]
1847
2032
  include Aws::Structure
1848
2033
  end
1849
2034
 
@@ -1874,15 +2059,36 @@ module Aws::SNS
1874
2059
  include Aws::Structure
1875
2060
  end
1876
2061
 
1877
- # Input for RemovePermission action.
2062
+ # @!attribute [rw] resource_arn
2063
+ # The ARN of the topic whose `DataProtectionPolicy` you want to add or
2064
+ # update.
2065
+ #
2066
+ # For more information about ARNs, see [Amazon Resource Names
2067
+ # (ARNs)][1] in the Amazon Web Services General Reference.
2068
+ #
2069
+ #
2070
+ #
2071
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
2072
+ # @return [String]
1878
2073
  #
1879
- # @note When making an API call, you may pass RemovePermissionInput
1880
- # data as a hash:
2074
+ # @!attribute [rw] data_protection_policy
2075
+ # The JSON serialization of the topic's `DataProtectionPolicy`.
1881
2076
  #
1882
- # {
1883
- # topic_arn: "topicARN", # required
1884
- # label: "label", # required
1885
- # }
2077
+ # The `DataProtectionPolicy` must be in JSON string format.
2078
+ #
2079
+ # Length Constraints: Maximum length of 30,720.
2080
+ # @return [String]
2081
+ #
2082
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/PutDataProtectionPolicyInput AWS API Documentation
2083
+ #
2084
+ class PutDataProtectionPolicyInput < Struct.new(
2085
+ :resource_arn,
2086
+ :data_protection_policy)
2087
+ SENSITIVE = []
2088
+ include Aws::Structure
2089
+ end
2090
+
2091
+ # Input for RemovePermission action.
1886
2092
  #
1887
2093
  # @!attribute [rw] topic_arn
1888
2094
  # The ARN of the topic whose access control policy you wish to modify.
@@ -1901,6 +2107,20 @@ module Aws::SNS
1901
2107
  include Aws::Structure
1902
2108
  end
1903
2109
 
2110
+ # Indicates that the request parameter has exceeded the maximum number
2111
+ # of concurrent message replays.
2112
+ #
2113
+ # @!attribute [rw] message
2114
+ # @return [String]
2115
+ #
2116
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ReplayLimitExceededException AWS API Documentation
2117
+ #
2118
+ class ReplayLimitExceededException < Struct.new(
2119
+ :message)
2120
+ SENSITIVE = []
2121
+ include Aws::Structure
2122
+ end
2123
+
1904
2124
  # Can’t perform the action on the specified resource. Make sure that the
1905
2125
  # resource exists.
1906
2126
  #
@@ -1917,14 +2137,15 @@ module Aws::SNS
1917
2137
 
1918
2138
  # A verified or pending destination phone number in the SMS sandbox.
1919
2139
  #
1920
- # When you start using Amazon SNS to send SMS messages, your account is
1921
- # in the *SMS sandbox*. The SMS sandbox provides a safe environment for
1922
- # you to try Amazon SNS features without risking your reputation as an
1923
- # SMS sender. While your account is in the SMS sandbox, you can use all
1924
- # of the features of Amazon SNS. However, you can send SMS messages only
1925
- # to verified destination phone numbers. For more information, including
1926
- # how to move out of the sandbox to send messages without restrictions,
1927
- # see [SMS sandbox][1] in the *Amazon SNS Developer Guide*.
2140
+ # When you start using Amazon SNS to send SMS messages, your Amazon Web
2141
+ # Services account is in the *SMS sandbox*. The SMS sandbox provides a
2142
+ # safe environment for you to try Amazon SNS features without risking
2143
+ # your reputation as an SMS sender. While your Amazon Web Services
2144
+ # account is in the SMS sandbox, you can use all of the features of
2145
+ # Amazon SNS. However, you can send SMS messages only to verified
2146
+ # destination phone numbers. For more information, including how to move
2147
+ # out of the sandbox to send messages without restrictions, see [SMS
2148
+ # sandbox][1] in the *Amazon SNS Developer Guide*.
1928
2149
  #
1929
2150
  #
1930
2151
  #
@@ -1943,24 +2164,14 @@ module Aws::SNS
1943
2164
  class SMSSandboxPhoneNumber < Struct.new(
1944
2165
  :phone_number,
1945
2166
  :status)
1946
- SENSITIVE = []
2167
+ SENSITIVE = [:phone_number]
1947
2168
  include Aws::Structure
1948
2169
  end
1949
2170
 
1950
- # Input for SetEndpointAttributes action.
1951
- #
1952
- # @note When making an API call, you may pass SetEndpointAttributesInput
1953
- # data as a hash:
1954
- #
1955
- # {
1956
- # endpoint_arn: "String", # required
1957
- # attributes: { # required
1958
- # "String" => "String",
1959
- # },
1960
- # }
2171
+ # Input for `SetEndpointAttributes` action.
1961
2172
  #
1962
2173
  # @!attribute [rw] endpoint_arn
1963
- # EndpointArn used for SetEndpointAttributes action.
2174
+ # EndpointArn used for `SetEndpointAttributes` action.
1964
2175
  # @return [String]
1965
2176
  #
1966
2177
  # @!attribute [rw] attributes
@@ -1991,20 +2202,11 @@ module Aws::SNS
1991
2202
  include Aws::Structure
1992
2203
  end
1993
2204
 
1994
- # Input for SetPlatformApplicationAttributes action.
1995
- #
1996
- # @note When making an API call, you may pass SetPlatformApplicationAttributesInput
1997
- # data as a hash:
1998
- #
1999
- # {
2000
- # platform_application_arn: "String", # required
2001
- # attributes: { # required
2002
- # "String" => "String",
2003
- # },
2004
- # }
2205
+ # Input for `SetPlatformApplicationAttributes` action.
2005
2206
  #
2006
2207
  # @!attribute [rw] platform_application_arn
2007
- # PlatformApplicationArn for SetPlatformApplicationAttributes action.
2208
+ # `PlatformApplicationArn` for `SetPlatformApplicationAttributes`
2209
+ # action.
2008
2210
  # @return [String]
2009
2211
  #
2010
2212
  # @!attribute [rw] attributes
@@ -2012,16 +2214,43 @@ module Aws::SNS
2012
2214
  # include the following:
2013
2215
  #
2014
2216
  # * `PlatformCredential` – The credential received from the
2015
- # notification service. For `APNS` and `APNS_SANDBOX`,
2016
- # `PlatformCredential` is `private key`. For `GCM` (Firebase Cloud
2017
- # Messaging), `PlatformCredential` is `API key`. For `ADM`,
2018
- # `PlatformCredential` is `client secret`.
2217
+ # notification service.
2218
+ #
2219
+ # * For ADM, `PlatformCredential`is client secret.
2220
+ #
2221
+ # * For Apple Services using certificate credentials,
2222
+ # `PlatformCredential` is private key.
2223
+ #
2224
+ # * For Apple Services using token credentials, `PlatformCredential`
2225
+ # is signing key.
2226
+ #
2227
+ # * For GCM (Firebase Cloud Messaging) using key credentials, there
2228
+ # is no `PlatformPrincipal`. The `PlatformCredential` is `API
2229
+ # key`.
2230
+ #
2231
+ # * For GCM (Firebase Cloud Messaging) using token credentials,
2232
+ # there is no `PlatformPrincipal`. The `PlatformCredential` is a
2233
+ # JSON formatted private key file. When using the Amazon Web
2234
+ # Services CLI, the file must be in string format and special
2235
+ # characters must be ignored. To format the file correctly, Amazon
2236
+ # SNS recommends using the following command: `` SERVICE_JSON=`jq
2237
+ # @json <<< cat service.json` ``.
2238
+ # ^
2019
2239
  #
2020
2240
  # * `PlatformPrincipal` – The principal received from the notification
2021
- # service. For `APNS` and `APNS_SANDBOX`, `PlatformPrincipal` is
2022
- # `SSL certificate`. For `GCM` (Firebase Cloud Messaging), there is
2023
- # no `PlatformPrincipal`. For `ADM`, `PlatformPrincipal` is `client
2024
- # id`.
2241
+ # service.
2242
+ #
2243
+ # * For ADM, `PlatformPrincipal`is client id.
2244
+ #
2245
+ # * For Apple Services using certificate credentials,
2246
+ # `PlatformPrincipal` is SSL certificate.
2247
+ #
2248
+ # * For Apple Services using token credentials, `PlatformPrincipal`
2249
+ # is signing key ID.
2250
+ #
2251
+ # * For GCM (Firebase Cloud Messaging), there is no
2252
+ # `PlatformPrincipal`.
2253
+ # ^
2025
2254
  #
2026
2255
  # * `EventEndpointCreated` – Topic ARN to which `EndpointCreated`
2027
2256
  # event notifications are sent.
@@ -2044,6 +2273,15 @@ module Aws::SNS
2044
2273
  #
2045
2274
  # * `SuccessFeedbackSampleRate` – Sample rate percentage (0-100) of
2046
2275
  # successfully delivered messages.
2276
+ #
2277
+ # The following attributes only apply to `APNs` token-based
2278
+ # authentication:
2279
+ #
2280
+ # * `ApplePlatformTeamID` – The identifier that's assigned to your
2281
+ # Apple developer account team.
2282
+ #
2283
+ # * `ApplePlatformBundleID` – The bundle identifier that's assigned
2284
+ # to your iOS app.
2047
2285
  # @return [Hash<String,String>]
2048
2286
  #
2049
2287
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/SetPlatformApplicationAttributesInput AWS API Documentation
@@ -2057,18 +2295,10 @@ module Aws::SNS
2057
2295
 
2058
2296
  # The input for the SetSMSAttributes action.
2059
2297
  #
2060
- # @note When making an API call, you may pass SetSMSAttributesInput
2061
- # data as a hash:
2062
- #
2063
- # {
2064
- # attributes: { # required
2065
- # "String" => "String",
2066
- # },
2067
- # }
2068
- #
2069
2298
  # @!attribute [rw] attributes
2070
- # The default settings for sending SMS messages from your account. You
2071
- # can set values for the following attribute names:
2299
+ # The default settings for sending SMS messages from your Amazon Web
2300
+ # Services account. You can set values for the following attribute
2301
+ # names:
2072
2302
  #
2073
2303
  # `MonthlySpendLimit` – The maximum amount in USD that you are willing
2074
2304
  # to spend each month to send SMS messages. When Amazon SNS determines
@@ -2119,7 +2349,7 @@ module Aws::SNS
2119
2349
  # daily SMS usage reports from Amazon SNS. Each day, Amazon SNS will
2120
2350
  # deliver a usage report as a CSV file to the bucket. The report
2121
2351
  # includes the following information for each SMS message that was
2122
- # successfully delivered by your account:
2352
+ # successfully delivered by your Amazon Web Services account:
2123
2353
  #
2124
2354
  # * Time that the message was published (in UTC)
2125
2355
  #
@@ -2167,15 +2397,6 @@ module Aws::SNS
2167
2397
 
2168
2398
  # Input for SetSubscriptionAttributes action.
2169
2399
  #
2170
- # @note When making an API call, you may pass SetSubscriptionAttributesInput
2171
- # data as a hash:
2172
- #
2173
- # {
2174
- # subscription_arn: "subscriptionARN", # required
2175
- # attribute_name: "attributeName", # required
2176
- # attribute_value: "attributeValue",
2177
- # }
2178
- #
2179
2400
  # @!attribute [rw] subscription_arn
2180
2401
  # The ARN of the subscription to modify.
2181
2402
  # @return [String]
@@ -2193,6 +2414,14 @@ module Aws::SNS
2193
2414
  # receive only a subset of messages, rather than receiving every
2194
2415
  # message published to the topic.
2195
2416
  #
2417
+ # * `FilterPolicyScope` – This attribute lets you choose the filtering
2418
+ # scope by using one of the following string value types:
2419
+ #
2420
+ # * `MessageAttributes` (default) – The filter is applied on the
2421
+ # message attributes.
2422
+ #
2423
+ # * `MessageBody` – The filter is applied on the message body.
2424
+ #
2196
2425
  # * `RawMessageDelivery` – When set to `true`, enables raw message
2197
2426
  # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the
2198
2427
  # need for the endpoints to process JSON formatting, which is
@@ -2206,20 +2435,20 @@ module Aws::SNS
2206
2435
  # unavailable) are held in the dead-letter queue for further
2207
2436
  # analysis or reprocessing.
2208
2437
  #
2209
- # The following attribute applies only to Amazon Kinesis Data Firehose
2438
+ # The following attribute applies only to Amazon Data Firehose
2210
2439
  # delivery stream subscriptions:
2211
2440
  #
2212
2441
  # * `SubscriptionRoleArn` – The ARN of the IAM role that has the
2213
2442
  # following:
2214
2443
  #
2215
- # * Permission to write to the Kinesis Data Firehose delivery stream
2444
+ # * Permission to write to the Firehose delivery stream
2216
2445
  #
2217
2446
  # * Amazon SNS listed as a trusted entity
2218
2447
  #
2219
- # Specifying a valid ARN for this attribute is required for Kinesis
2220
- # Data Firehose delivery stream subscriptions. For more information,
2221
- # see [Fanout to Kinesis Data Firehose delivery streams][1] in the
2222
- # *Amazon SNS Developer Guide*.
2448
+ # Specifying a valid ARN for this attribute is required for Firehose
2449
+ # delivery stream subscriptions. For more information, see [Fanout
2450
+ # to Firehose delivery streams][1] in the *Amazon SNS Developer
2451
+ # Guide*.
2223
2452
  #
2224
2453
  #
2225
2454
  #
@@ -2242,15 +2471,6 @@ module Aws::SNS
2242
2471
 
2243
2472
  # Input for SetTopicAttributes action.
2244
2473
  #
2245
- # @note When making an API call, you may pass SetTopicAttributesInput
2246
- # data as a hash:
2247
- #
2248
- # {
2249
- # topic_arn: "topicARN", # required
2250
- # attribute_name: "attributeName", # required
2251
- # attribute_value: "attributeValue",
2252
- # }
2253
- #
2254
2474
  # @!attribute [rw] topic_arn
2255
2475
  # The ARN of the topic to modify.
2256
2476
  # @return [String]
@@ -2262,6 +2482,10 @@ module Aws::SNS
2262
2482
  # special request parameters that the `SetTopicAttributes` action
2263
2483
  # uses:
2264
2484
  #
2485
+ # * `ApplicationSuccessFeedbackRoleArn` – Indicates failed message
2486
+ # delivery status for an Amazon SNS topic that is subscribed to a
2487
+ # platform application endpoint.
2488
+ #
2265
2489
  # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
2266
2490
  # failed deliveries to HTTP/S endpoints.
2267
2491
  #
@@ -2272,17 +2496,120 @@ module Aws::SNS
2272
2496
  # default, only the topic owner can publish or subscribe to the
2273
2497
  # topic.
2274
2498
  #
2275
- # The following attribute applies only to
2276
- # [server-side-encryption][1]\:
2499
+ # * `TracingConfig` Tracing mode of an Amazon SNS topic. By default
2500
+ # `TracingConfig` is set to `PassThrough`, and the topic passes
2501
+ # through the tracing header it receives from an Amazon SNS
2502
+ # publisher to its subscriptions. If set to `Active`, Amazon SNS
2503
+ # will vend X-Ray segment data to topic owner account if the sampled
2504
+ # flag in the tracing header is true. This is only supported on
2505
+ # standard topics.
2506
+ #
2507
+ # * HTTP
2508
+ #
2509
+ # * `HTTPSuccessFeedbackRoleArn` – Indicates successful message
2510
+ # delivery status for an Amazon SNS topic that is subscribed to an
2511
+ # HTTP endpoint.
2512
+ #
2513
+ # * `HTTPSuccessFeedbackSampleRate` – Indicates percentage of
2514
+ # successful messages to sample for an Amazon SNS topic that is
2515
+ # subscribed to an HTTP endpoint.
2516
+ #
2517
+ # * `HTTPFailureFeedbackRoleArn` – Indicates failed message delivery
2518
+ # status for an Amazon SNS topic that is subscribed to an HTTP
2519
+ # endpoint.
2520
+ #
2521
+ # * Amazon Kinesis Data Firehose
2522
+ #
2523
+ # * `FirehoseSuccessFeedbackRoleArn` – Indicates successful message
2524
+ # delivery status for an Amazon SNS topic that is subscribed to an
2525
+ # Amazon Kinesis Data Firehose endpoint.
2526
+ #
2527
+ # * `FirehoseSuccessFeedbackSampleRate` – Indicates percentage of
2528
+ # successful messages to sample for an Amazon SNS topic that is
2529
+ # subscribed to an Amazon Kinesis Data Firehose endpoint.
2530
+ #
2531
+ # * `FirehoseFailureFeedbackRoleArn` – Indicates failed message
2532
+ # delivery status for an Amazon SNS topic that is subscribed to an
2533
+ # Amazon Kinesis Data Firehose endpoint.
2534
+ #
2535
+ # * Lambda
2536
+ #
2537
+ # * `LambdaSuccessFeedbackRoleArn` – Indicates successful message
2538
+ # delivery status for an Amazon SNS topic that is subscribed to an
2539
+ # Lambda endpoint.
2540
+ #
2541
+ # * `LambdaSuccessFeedbackSampleRate` – Indicates percentage of
2542
+ # successful messages to sample for an Amazon SNS topic that is
2543
+ # subscribed to an Lambda endpoint.
2544
+ #
2545
+ # * `LambdaFailureFeedbackRoleArn` – Indicates failed message
2546
+ # delivery status for an Amazon SNS topic that is subscribed to an
2547
+ # Lambda endpoint.
2548
+ #
2549
+ # * Platform application endpoint
2550
+ #
2551
+ # * `ApplicationSuccessFeedbackRoleArn` – Indicates successful
2552
+ # message delivery status for an Amazon SNS topic that is
2553
+ # subscribed to an Amazon Web Services application endpoint.
2554
+ #
2555
+ # * `ApplicationSuccessFeedbackSampleRate` – Indicates percentage of
2556
+ # successful messages to sample for an Amazon SNS topic that is
2557
+ # subscribed to an Amazon Web Services application endpoint.
2558
+ #
2559
+ # * `ApplicationFailureFeedbackRoleArn` – Indicates failed message
2560
+ # delivery status for an Amazon SNS topic that is subscribed to an
2561
+ # Amazon Web Services application endpoint.
2562
+ #
2563
+ # <note markdown="1"> In addition to being able to configure topic attributes for
2564
+ # message delivery status of notification messages sent to Amazon
2565
+ # SNS application endpoints, you can also configure application
2566
+ # attributes for the delivery status of push notification messages
2567
+ # sent to push notification services.
2568
+ #
2569
+ # For example, For more information, see [Using Amazon SNS
2570
+ # Application Attributes for Message Delivery Status][1].
2571
+ #
2572
+ # </note>
2573
+ #
2574
+ # * Amazon SQS
2575
+ #
2576
+ # * `SQSSuccessFeedbackRoleArn` – Indicates successful message
2577
+ # delivery status for an Amazon SNS topic that is subscribed to an
2578
+ # Amazon SQS endpoint.
2579
+ #
2580
+ # * `SQSSuccessFeedbackSampleRate` – Indicates percentage of
2581
+ # successful messages to sample for an Amazon SNS topic that is
2582
+ # subscribed to an Amazon SQS endpoint.
2583
+ #
2584
+ # * `SQSFailureFeedbackRoleArn` – Indicates failed message delivery
2585
+ # status for an Amazon SNS topic that is subscribed to an Amazon
2586
+ # SQS endpoint.
2587
+ #
2588
+ # <note markdown="1"> The &lt;ENDPOINT&gt;SuccessFeedbackRoleArn and
2589
+ # &lt;ENDPOINT&gt;FailureFeedbackRoleArn attributes are used to give
2590
+ # Amazon SNS write access to use CloudWatch Logs on your behalf. The
2591
+ # &lt;ENDPOINT&gt;SuccessFeedbackSampleRate attribute is for
2592
+ # specifying the sample rate percentage (0-100) of successfully
2593
+ # delivered messages. After you configure the
2594
+ # &lt;ENDPOINT&gt;FailureFeedbackRoleArn attribute, then all failed
2595
+ # message deliveries generate CloudWatch Logs.
2596
+ #
2597
+ # </note>
2598
+ #
2599
+ # The following attribute applies only to [server-side-encryption][2]:
2277
2600
  #
2278
2601
  # * `KmsMasterKeyId` – The ID of an Amazon Web Services managed
2279
2602
  # customer master key (CMK) for Amazon SNS or a custom CMK. For more
2280
- # information, see [Key Terms][2]. For more examples, see [KeyId][3]
2603
+ # information, see [Key Terms][3]. For more examples, see [KeyId][4]
2281
2604
  # in the *Key Management Service API Reference*.
2282
2605
  #
2283
- # ^
2606
+ # * `SignatureVersion` – The signature version corresponds to the
2607
+ # hashing algorithm used while creating the signature of the
2608
+ # notifications, subscription confirmations, or unsubscribe
2609
+ # confirmation messages sent by Amazon SNS. By default,
2610
+ # `SignatureVersion` is set to `1`.
2284
2611
  #
2285
- # The following attribute applies only to [FIFO topics][4]\:
2612
+ # The following attribute applies only to [FIFO topics][5]:
2286
2613
  #
2287
2614
  # * `ContentBasedDeduplication` – Enables content-based deduplication
2288
2615
  # for FIFO topics.
@@ -2290,7 +2617,7 @@ module Aws::SNS
2290
2617
  # * By default, `ContentBasedDeduplication` is set to `false`. If
2291
2618
  # you create a FIFO topic and this attribute is `false`, you must
2292
2619
  # specify a value for the `MessageDeduplicationId` parameter for
2293
- # the [Publish][5] action.
2620
+ # the [Publish][6] action.
2294
2621
  #
2295
2622
  # * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
2296
2623
  # uses a SHA-256 hash to generate the `MessageDeduplicationId`
@@ -2303,11 +2630,12 @@ module Aws::SNS
2303
2630
  #
2304
2631
  #
2305
2632
  #
2306
- # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
2307
- # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
2308
- # [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
2309
- # [4]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
2310
- # [5]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
2633
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html
2634
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
2635
+ # [3]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
2636
+ # [4]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
2637
+ # [5]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
2638
+ # [6]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
2311
2639
  # @return [String]
2312
2640
  #
2313
2641
  # @!attribute [rw] attribute_value
@@ -2340,19 +2668,6 @@ module Aws::SNS
2340
2668
 
2341
2669
  # Input for Subscribe action.
2342
2670
  #
2343
- # @note When making an API call, you may pass SubscribeInput
2344
- # data as a hash:
2345
- #
2346
- # {
2347
- # topic_arn: "topicARN", # required
2348
- # protocol: "protocol", # required
2349
- # endpoint: "endpoint",
2350
- # attributes: {
2351
- # "attributeName" => "attributeValue",
2352
- # },
2353
- # return_subscription_arn: false,
2354
- # }
2355
- #
2356
2671
  # @!attribute [rw] topic_arn
2357
2672
  # The ARN of the topic you want to subscribe to.
2358
2673
  # @return [String]
@@ -2424,6 +2739,14 @@ module Aws::SNS
2424
2739
  # receive only a subset of messages, rather than receiving every
2425
2740
  # message published to the topic.
2426
2741
  #
2742
+ # * `FilterPolicyScope` – This attribute lets you choose the filtering
2743
+ # scope by using one of the following string value types:
2744
+ #
2745
+ # * `MessageAttributes` (default) – The filter is applied on the
2746
+ # message attributes.
2747
+ #
2748
+ # * `MessageBody` – The filter is applied on the message body.
2749
+ #
2427
2750
  # * `RawMessageDelivery` – When set to `true`, enables raw message
2428
2751
  # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the
2429
2752
  # need for the endpoints to process JSON formatting, which is
@@ -2437,24 +2760,46 @@ module Aws::SNS
2437
2760
  # unavailable) are held in the dead-letter queue for further
2438
2761
  # analysis or reprocessing.
2439
2762
  #
2440
- # The following attribute applies only to Amazon Kinesis Data Firehose
2763
+ # The following attribute applies only to Amazon Data Firehose
2441
2764
  # delivery stream subscriptions:
2442
2765
  #
2443
2766
  # * `SubscriptionRoleArn` – The ARN of the IAM role that has the
2444
2767
  # following:
2445
2768
  #
2446
- # * Permission to write to the Kinesis Data Firehose delivery stream
2769
+ # * Permission to write to the Firehose delivery stream
2447
2770
  #
2448
2771
  # * Amazon SNS listed as a trusted entity
2449
2772
  #
2450
- # Specifying a valid ARN for this attribute is required for Kinesis
2451
- # Data Firehose delivery stream subscriptions. For more information,
2452
- # see [Fanout to Kinesis Data Firehose delivery streams][1] in the
2453
- # *Amazon SNS Developer Guide*.
2773
+ # Specifying a valid ARN for this attribute is required for Firehose
2774
+ # delivery stream subscriptions. For more information, see [Fanout
2775
+ # to Firehose delivery streams][1] in the *Amazon SNS Developer
2776
+ # Guide*.
2777
+ #
2778
+ # The following attributes apply only to [FIFO topics][2]:
2779
+ #
2780
+ # * `ReplayPolicy` – Adds or updates an inline policy document for a
2781
+ # subscription to replay messages stored in the specified Amazon SNS
2782
+ # topic.
2783
+ #
2784
+ # * `ReplayStatus` – Retrieves the status of the subscription message
2785
+ # replay, which can be one of the following:
2786
+ #
2787
+ # * `Completed` – The replay has successfully redelivered all
2788
+ # messages, and is now delivering newly published messages. If an
2789
+ # ending point was specified in the `ReplayPolicy` then the
2790
+ # subscription will no longer receive newly published messages.
2791
+ #
2792
+ # * `In progress` – The replay is currently replaying the selected
2793
+ # messages.
2794
+ #
2795
+ # * `Failed` – The replay was unable to complete.
2796
+ #
2797
+ # * `Pending` – The default state while the replay initiates.
2454
2798
  #
2455
2799
  #
2456
2800
  #
2457
2801
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-firehose-as-subscriber.html
2802
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
2458
2803
  # @return [Hash<String,String>]
2459
2804
  #
2460
2805
  # @!attribute [rw] return_subscription_arn
@@ -2554,14 +2899,6 @@ module Aws::SNS
2554
2899
 
2555
2900
  # The list of tags to be added to the specified topic.
2556
2901
  #
2557
- # @note When making an API call, you may pass Tag
2558
- # data as a hash:
2559
- #
2560
- # {
2561
- # key: "TagKey", # required
2562
- # value: "TagValue", # required
2563
- # }
2564
- #
2565
2902
  # @!attribute [rw] key
2566
2903
  # The required key portion of the tag.
2567
2904
  # @return [String]
@@ -2606,19 +2943,6 @@ module Aws::SNS
2606
2943
  include Aws::Structure
2607
2944
  end
2608
2945
 
2609
- # @note When making an API call, you may pass TagResourceRequest
2610
- # data as a hash:
2611
- #
2612
- # {
2613
- # resource_arn: "AmazonResourceName", # required
2614
- # tags: [ # required
2615
- # {
2616
- # key: "TagKey", # required
2617
- # value: "TagValue", # required
2618
- # },
2619
- # ],
2620
- # }
2621
- #
2622
2946
  # @!attribute [rw] resource_arn
2623
2947
  # The ARN of the topic to which to add tags.
2624
2948
  # @return [String]
@@ -2642,7 +2966,7 @@ module Aws::SNS
2642
2966
  class TagResourceResponse < Aws::EmptyStructure; end
2643
2967
 
2644
2968
  # Indicates that the rate at which requests have been submitted for this
2645
- # action exceeds the limit for your account.
2969
+ # action exceeds the limit for your Amazon Web Services account.
2646
2970
  #
2647
2971
  # @!attribute [rw] message
2648
2972
  # Throttled request.
@@ -2656,6 +2980,19 @@ module Aws::SNS
2656
2980
  include Aws::Structure
2657
2981
  end
2658
2982
 
2983
+ # The batch request contains more entries than permissible.
2984
+ #
2985
+ # @!attribute [rw] message
2986
+ # @return [String]
2987
+ #
2988
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/TooManyEntriesInBatchRequestException AWS API Documentation
2989
+ #
2990
+ class TooManyEntriesInBatchRequestException < Struct.new(
2991
+ :message)
2992
+ SENSITIVE = []
2993
+ include Aws::Structure
2994
+ end
2995
+
2659
2996
  # A wrapper type for the topic's Amazon Resource Name (ARN). To
2660
2997
  # retrieve a topic's attributes, use `GetTopicAttributes`.
2661
2998
  #
@@ -2687,13 +3024,6 @@ module Aws::SNS
2687
3024
 
2688
3025
  # Input for Unsubscribe action.
2689
3026
  #
2690
- # @note When making an API call, you may pass UnsubscribeInput
2691
- # data as a hash:
2692
- #
2693
- # {
2694
- # subscription_arn: "subscriptionARN", # required
2695
- # }
2696
- #
2697
3027
  # @!attribute [rw] subscription_arn
2698
3028
  # The ARN of the subscription to be deleted.
2699
3029
  # @return [String]
@@ -2706,14 +3036,6 @@ module Aws::SNS
2706
3036
  include Aws::Structure
2707
3037
  end
2708
3038
 
2709
- # @note When making an API call, you may pass UntagResourceRequest
2710
- # data as a hash:
2711
- #
2712
- # {
2713
- # resource_arn: "AmazonResourceName", # required
2714
- # tag_keys: ["TagKey"], # required
2715
- # }
2716
- #
2717
3039
  # @!attribute [rw] resource_arn
2718
3040
  # The ARN of the topic from which to remove tags.
2719
3041
  # @return [String]
@@ -2781,14 +3103,6 @@ module Aws::SNS
2781
3103
  include Aws::Structure
2782
3104
  end
2783
3105
 
2784
- # @note When making an API call, you may pass VerifySMSSandboxPhoneNumberInput
2785
- # data as a hash:
2786
- #
2787
- # {
2788
- # phone_number: "PhoneNumberString", # required
2789
- # one_time_password: "OTPCode", # required
2790
- # }
2791
- #
2792
3106
  # @!attribute [rw] phone_number
2793
3107
  # The destination phone number to verify.
2794
3108
  # @return [String]
@@ -2803,7 +3117,7 @@ module Aws::SNS
2803
3117
  class VerifySMSSandboxPhoneNumberInput < Struct.new(
2804
3118
  :phone_number,
2805
3119
  :one_time_password)
2806
- SENSITIVE = []
3120
+ SENSITIVE = [:phone_number]
2807
3121
  include Aws::Structure
2808
3122
  end
2809
3123