aws-sdk-sns 1.66.0 → 1.75.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.
@@ -16,15 +16,15 @@ module Aws::SNS
16
16
  ActionsList = Shapes::ListShape.new(name: 'ActionsList')
17
17
  AddPermissionInput = Shapes::StructureShape.new(name: 'AddPermissionInput')
18
18
  AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
19
- AuthorizationErrorException = Shapes::StructureShape.new(name: 'AuthorizationErrorException')
20
- BatchEntryIdsNotDistinctException = Shapes::StructureShape.new(name: 'BatchEntryIdsNotDistinctException')
21
- BatchRequestTooLongException = Shapes::StructureShape.new(name: 'BatchRequestTooLongException')
19
+ AuthorizationErrorException = Shapes::StructureShape.new(name: 'AuthorizationErrorException', error: {"code"=>"AuthorizationError", "httpStatusCode"=>403, "senderFault"=>true})
20
+ BatchEntryIdsNotDistinctException = Shapes::StructureShape.new(name: 'BatchEntryIdsNotDistinctException', error: {"code"=>"BatchEntryIdsNotDistinct", "httpStatusCode"=>400, "senderFault"=>true})
21
+ BatchRequestTooLongException = Shapes::StructureShape.new(name: 'BatchRequestTooLongException', error: {"code"=>"BatchRequestTooLong", "httpStatusCode"=>400, "senderFault"=>true})
22
22
  BatchResultErrorEntry = Shapes::StructureShape.new(name: 'BatchResultErrorEntry')
23
23
  BatchResultErrorEntryList = Shapes::ListShape.new(name: 'BatchResultErrorEntryList')
24
24
  Binary = Shapes::BlobShape.new(name: 'Binary')
25
25
  CheckIfPhoneNumberIsOptedOutInput = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutInput')
26
26
  CheckIfPhoneNumberIsOptedOutResponse = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutResponse')
27
- ConcurrentAccessException = Shapes::StructureShape.new(name: 'ConcurrentAccessException')
27
+ ConcurrentAccessException = Shapes::StructureShape.new(name: 'ConcurrentAccessException', error: {"code"=>"ConcurrentAccess", "httpStatusCode"=>400, "senderFault"=>true})
28
28
  ConfirmSubscriptionInput = Shapes::StructureShape.new(name: 'ConfirmSubscriptionInput')
29
29
  ConfirmSubscriptionResponse = Shapes::StructureShape.new(name: 'ConfirmSubscriptionResponse')
30
30
  CreateEndpointResponse = Shapes::StructureShape.new(name: 'CreateEndpointResponse')
@@ -41,10 +41,10 @@ module Aws::SNS
41
41
  DeleteSMSSandboxPhoneNumberInput = Shapes::StructureShape.new(name: 'DeleteSMSSandboxPhoneNumberInput')
42
42
  DeleteSMSSandboxPhoneNumberResult = Shapes::StructureShape.new(name: 'DeleteSMSSandboxPhoneNumberResult')
43
43
  DeleteTopicInput = Shapes::StructureShape.new(name: 'DeleteTopicInput')
44
- EmptyBatchRequestException = Shapes::StructureShape.new(name: 'EmptyBatchRequestException')
44
+ EmptyBatchRequestException = Shapes::StructureShape.new(name: 'EmptyBatchRequestException', error: {"code"=>"EmptyBatchRequest", "httpStatusCode"=>400, "senderFault"=>true})
45
45
  Endpoint = Shapes::StructureShape.new(name: 'Endpoint')
46
- EndpointDisabledException = Shapes::StructureShape.new(name: 'EndpointDisabledException')
47
- FilterPolicyLimitExceededException = Shapes::StructureShape.new(name: 'FilterPolicyLimitExceededException')
46
+ EndpointDisabledException = Shapes::StructureShape.new(name: 'EndpointDisabledException', error: {"code"=>"EndpointDisabled", "httpStatusCode"=>400, "senderFault"=>true})
47
+ FilterPolicyLimitExceededException = Shapes::StructureShape.new(name: 'FilterPolicyLimitExceededException', error: {"code"=>"FilterPolicyLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
48
48
  GetDataProtectionPolicyInput = Shapes::StructureShape.new(name: 'GetDataProtectionPolicyInput')
49
49
  GetDataProtectionPolicyResponse = Shapes::StructureShape.new(name: 'GetDataProtectionPolicyResponse')
50
50
  GetEndpointAttributesInput = Shapes::StructureShape.new(name: 'GetEndpointAttributesInput')
@@ -59,18 +59,19 @@ module Aws::SNS
59
59
  GetSubscriptionAttributesResponse = Shapes::StructureShape.new(name: 'GetSubscriptionAttributesResponse')
60
60
  GetTopicAttributesInput = Shapes::StructureShape.new(name: 'GetTopicAttributesInput')
61
61
  GetTopicAttributesResponse = Shapes::StructureShape.new(name: 'GetTopicAttributesResponse')
62
- InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException')
63
- InvalidBatchEntryIdException = Shapes::StructureShape.new(name: 'InvalidBatchEntryIdException')
64
- InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
65
- InvalidParameterValueException = Shapes::StructureShape.new(name: 'InvalidParameterValueException')
66
- InvalidSecurityException = Shapes::StructureShape.new(name: 'InvalidSecurityException')
62
+ InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException', error: {"code"=>"InternalError", "httpStatusCode"=>500})
63
+ InvalidBatchEntryIdException = Shapes::StructureShape.new(name: 'InvalidBatchEntryIdException', error: {"code"=>"InvalidBatchEntryId", "httpStatusCode"=>400, "senderFault"=>true})
64
+ InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException', error: {"code"=>"InvalidParameter", "httpStatusCode"=>400, "senderFault"=>true})
65
+ InvalidParameterValueException = Shapes::StructureShape.new(name: 'InvalidParameterValueException', error: {"code"=>"ParameterValueInvalid", "httpStatusCode"=>400, "senderFault"=>true})
66
+ InvalidSecurityException = Shapes::StructureShape.new(name: 'InvalidSecurityException', error: {"code"=>"InvalidSecurity", "httpStatusCode"=>403, "senderFault"=>true})
67
+ InvalidStateException = Shapes::StructureShape.new(name: 'InvalidStateException', error: {"code"=>"InvalidState", "httpStatusCode"=>400, "senderFault"=>true})
67
68
  Iso2CountryCode = Shapes::StringShape.new(name: 'Iso2CountryCode')
68
- KMSAccessDeniedException = Shapes::StructureShape.new(name: 'KMSAccessDeniedException')
69
- KMSDisabledException = Shapes::StructureShape.new(name: 'KMSDisabledException')
70
- KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException')
71
- KMSNotFoundException = Shapes::StructureShape.new(name: 'KMSNotFoundException')
72
- KMSOptInRequired = Shapes::StructureShape.new(name: 'KMSOptInRequired')
73
- KMSThrottlingException = Shapes::StructureShape.new(name: 'KMSThrottlingException')
69
+ KMSAccessDeniedException = Shapes::StructureShape.new(name: 'KMSAccessDeniedException', error: {"code"=>"KMSAccessDenied", "httpStatusCode"=>400, "senderFault"=>true})
70
+ KMSDisabledException = Shapes::StructureShape.new(name: 'KMSDisabledException', error: {"code"=>"KMSDisabled", "httpStatusCode"=>400, "senderFault"=>true})
71
+ KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException', error: {"code"=>"KMSInvalidState", "httpStatusCode"=>400, "senderFault"=>true})
72
+ KMSNotFoundException = Shapes::StructureShape.new(name: 'KMSNotFoundException', error: {"code"=>"KMSNotFound", "httpStatusCode"=>400, "senderFault"=>true})
73
+ KMSOptInRequired = Shapes::StructureShape.new(name: 'KMSOptInRequired', error: {"code"=>"KMSOptInRequired", "httpStatusCode"=>403, "senderFault"=>true})
74
+ KMSThrottlingException = Shapes::StructureShape.new(name: 'KMSThrottlingException', error: {"code"=>"KMSThrottling", "httpStatusCode"=>400, "senderFault"=>true})
74
75
  LanguageCodeString = Shapes::StringShape.new(name: 'LanguageCodeString')
75
76
  ListEndpointsByPlatformApplicationInput = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationInput')
76
77
  ListEndpointsByPlatformApplicationResponse = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationResponse')
@@ -98,20 +99,20 @@ module Aws::SNS
98
99
  MaxItemsListOriginationNumbers = Shapes::IntegerShape.new(name: 'MaxItemsListOriginationNumbers')
99
100
  MessageAttributeMap = Shapes::MapShape.new(name: 'MessageAttributeMap')
100
101
  MessageAttributeValue = Shapes::StructureShape.new(name: 'MessageAttributeValue')
101
- NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
102
+ NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException', error: {"code"=>"NotFound", "httpStatusCode"=>404, "senderFault"=>true})
102
103
  NumberCapability = Shapes::StringShape.new(name: 'NumberCapability')
103
104
  NumberCapabilityList = Shapes::ListShape.new(name: 'NumberCapabilityList')
104
105
  OTPCode = Shapes::StringShape.new(name: 'OTPCode')
105
106
  OptInPhoneNumberInput = Shapes::StructureShape.new(name: 'OptInPhoneNumberInput')
106
107
  OptInPhoneNumberResponse = Shapes::StructureShape.new(name: 'OptInPhoneNumberResponse')
107
- OptedOutException = Shapes::StructureShape.new(name: 'OptedOutException')
108
+ OptedOutException = Shapes::StructureShape.new(name: 'OptedOutException', error: {"code"=>"OptedOut", "httpStatusCode"=>400, "senderFault"=>true})
108
109
  PhoneNumber = Shapes::StringShape.new(name: 'PhoneNumber')
109
110
  PhoneNumberInformation = Shapes::StructureShape.new(name: 'PhoneNumberInformation')
110
111
  PhoneNumberInformationList = Shapes::ListShape.new(name: 'PhoneNumberInformationList')
111
112
  PhoneNumberList = Shapes::ListShape.new(name: 'PhoneNumberList')
112
113
  PhoneNumberString = Shapes::StringShape.new(name: 'PhoneNumberString')
113
114
  PlatformApplication = Shapes::StructureShape.new(name: 'PlatformApplication')
114
- PlatformApplicationDisabledException = Shapes::StructureShape.new(name: 'PlatformApplicationDisabledException')
115
+ PlatformApplicationDisabledException = Shapes::StructureShape.new(name: 'PlatformApplicationDisabledException', error: {"code"=>"PlatformApplicationDisabled", "httpStatusCode"=>400, "senderFault"=>true})
115
116
  PublishBatchInput = Shapes::StructureShape.new(name: 'PublishBatchInput')
116
117
  PublishBatchRequestEntry = Shapes::StructureShape.new(name: 'PublishBatchRequestEntry')
117
118
  PublishBatchRequestEntryList = Shapes::ListShape.new(name: 'PublishBatchRequestEntryList')
@@ -122,7 +123,8 @@ module Aws::SNS
122
123
  PublishResponse = Shapes::StructureShape.new(name: 'PublishResponse')
123
124
  PutDataProtectionPolicyInput = Shapes::StructureShape.new(name: 'PutDataProtectionPolicyInput')
124
125
  RemovePermissionInput = Shapes::StructureShape.new(name: 'RemovePermissionInput')
125
- ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
126
+ ReplayLimitExceededException = Shapes::StructureShape.new(name: 'ReplayLimitExceededException', error: {"code"=>"ReplayLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
127
+ ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException', error: {"code"=>"ResourceNotFound", "httpStatusCode"=>404, "senderFault"=>true})
126
128
  RouteType = Shapes::StringShape.new(name: 'RouteType')
127
129
  SMSSandboxPhoneNumber = Shapes::StructureShape.new(name: 'SMSSandboxPhoneNumber')
128
130
  SMSSandboxPhoneNumberList = Shapes::ListShape.new(name: 'SMSSandboxPhoneNumberList')
@@ -133,35 +135,35 @@ module Aws::SNS
133
135
  SetSMSAttributesResponse = Shapes::StructureShape.new(name: 'SetSMSAttributesResponse')
134
136
  SetSubscriptionAttributesInput = Shapes::StructureShape.new(name: 'SetSubscriptionAttributesInput')
135
137
  SetTopicAttributesInput = Shapes::StructureShape.new(name: 'SetTopicAttributesInput')
136
- StaleTagException = Shapes::StructureShape.new(name: 'StaleTagException')
138
+ StaleTagException = Shapes::StructureShape.new(name: 'StaleTagException', error: {"code"=>"StaleTag", "httpStatusCode"=>400, "senderFault"=>true})
137
139
  String = Shapes::StringShape.new(name: 'String')
138
140
  SubscribeInput = Shapes::StructureShape.new(name: 'SubscribeInput')
139
141
  SubscribeResponse = Shapes::StructureShape.new(name: 'SubscribeResponse')
140
142
  Subscription = Shapes::StructureShape.new(name: 'Subscription')
141
143
  SubscriptionAttributesMap = Shapes::MapShape.new(name: 'SubscriptionAttributesMap')
142
- SubscriptionLimitExceededException = Shapes::StructureShape.new(name: 'SubscriptionLimitExceededException')
144
+ SubscriptionLimitExceededException = Shapes::StructureShape.new(name: 'SubscriptionLimitExceededException', error: {"code"=>"SubscriptionLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
143
145
  SubscriptionsList = Shapes::ListShape.new(name: 'SubscriptionsList')
144
146
  Tag = Shapes::StructureShape.new(name: 'Tag')
145
147
  TagKey = Shapes::StringShape.new(name: 'TagKey')
146
148
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
147
- TagLimitExceededException = Shapes::StructureShape.new(name: 'TagLimitExceededException')
149
+ TagLimitExceededException = Shapes::StructureShape.new(name: 'TagLimitExceededException', error: {"code"=>"TagLimitExceeded", "httpStatusCode"=>400, "senderFault"=>true})
148
150
  TagList = Shapes::ListShape.new(name: 'TagList')
149
- TagPolicyException = Shapes::StructureShape.new(name: 'TagPolicyException')
151
+ TagPolicyException = Shapes::StructureShape.new(name: 'TagPolicyException', error: {"code"=>"TagPolicy", "httpStatusCode"=>400, "senderFault"=>true})
150
152
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
151
153
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
152
154
  TagValue = Shapes::StringShape.new(name: 'TagValue')
153
- ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException')
155
+ ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException', error: {"code"=>"Throttled", "httpStatusCode"=>429, "senderFault"=>true})
154
156
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
155
- TooManyEntriesInBatchRequestException = Shapes::StructureShape.new(name: 'TooManyEntriesInBatchRequestException')
157
+ TooManyEntriesInBatchRequestException = Shapes::StructureShape.new(name: 'TooManyEntriesInBatchRequestException', error: {"code"=>"TooManyEntriesInBatchRequest", "httpStatusCode"=>400, "senderFault"=>true})
156
158
  Topic = Shapes::StructureShape.new(name: 'Topic')
157
159
  TopicAttributesMap = Shapes::MapShape.new(name: 'TopicAttributesMap')
158
- TopicLimitExceededException = Shapes::StructureShape.new(name: 'TopicLimitExceededException')
160
+ TopicLimitExceededException = Shapes::StructureShape.new(name: 'TopicLimitExceededException', error: {"code"=>"TopicLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
159
161
  TopicsList = Shapes::ListShape.new(name: 'TopicsList')
160
162
  UnsubscribeInput = Shapes::StructureShape.new(name: 'UnsubscribeInput')
161
163
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
162
164
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
163
- UserErrorException = Shapes::StructureShape.new(name: 'UserErrorException')
164
- ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
165
+ UserErrorException = Shapes::StructureShape.new(name: 'UserErrorException', error: {"code"=>"UserError", "httpStatusCode"=>400, "senderFault"=>true})
166
+ ValidationException = Shapes::StructureShape.new(name: 'ValidationException', error: {"code"=>"ValidationException", "httpStatusCode"=>400, "senderFault"=>true})
165
167
  VerificationException = Shapes::StructureShape.new(name: 'VerificationException')
166
168
  VerifySMSSandboxPhoneNumberInput = Shapes::StructureShape.new(name: 'VerifySMSSandboxPhoneNumberInput')
167
169
  VerifySMSSandboxPhoneNumberResult = Shapes::StructureShape.new(name: 'VerifySMSSandboxPhoneNumberResult')
@@ -345,6 +347,9 @@ module Aws::SNS
345
347
  InvalidSecurityException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
346
348
  InvalidSecurityException.struct_class = Types::InvalidSecurityException
347
349
 
350
+ InvalidStateException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
351
+ InvalidStateException.struct_class = Types::InvalidStateException
352
+
348
353
  KMSAccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
349
354
  KMSAccessDeniedException.struct_class = Types::KMSAccessDeniedException
350
355
 
@@ -460,7 +465,7 @@ module Aws::SNS
460
465
  OptedOutException.struct_class = Types::OptedOutException
461
466
 
462
467
  PhoneNumberInformation.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedAt"))
463
- PhoneNumberInformation.add_member(:phone_number, Shapes::ShapeRef.new(shape: String, location_name: "PhoneNumber"))
468
+ PhoneNumberInformation.add_member(:phone_number, Shapes::ShapeRef.new(shape: PhoneNumber, location_name: "PhoneNumber"))
464
469
  PhoneNumberInformation.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "Status"))
465
470
  PhoneNumberInformation.add_member(:iso_2_country_code, Shapes::ShapeRef.new(shape: Iso2CountryCode, location_name: "Iso2CountryCode"))
466
471
  PhoneNumberInformation.add_member(:route_type, Shapes::ShapeRef.new(shape: RouteType, location_name: "RouteType"))
@@ -506,7 +511,7 @@ module Aws::SNS
506
511
 
507
512
  PublishInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
508
513
  PublishInput.add_member(:target_arn, Shapes::ShapeRef.new(shape: String, location_name: "TargetArn"))
509
- PublishInput.add_member(:phone_number, Shapes::ShapeRef.new(shape: String, location_name: "PhoneNumber"))
514
+ PublishInput.add_member(:phone_number, Shapes::ShapeRef.new(shape: PhoneNumber, location_name: "PhoneNumber"))
510
515
  PublishInput.add_member(:message, Shapes::ShapeRef.new(shape: message, required: true, location_name: "Message"))
511
516
  PublishInput.add_member(:subject, Shapes::ShapeRef.new(shape: subject, location_name: "Subject"))
512
517
  PublishInput.add_member(:message_structure, Shapes::ShapeRef.new(shape: messageStructure, location_name: "MessageStructure"))
@@ -527,6 +532,9 @@ module Aws::SNS
527
532
  RemovePermissionInput.add_member(:label, Shapes::ShapeRef.new(shape: label, required: true, location_name: "Label"))
528
533
  RemovePermissionInput.struct_class = Types::RemovePermissionInput
529
534
 
535
+ ReplayLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
536
+ ReplayLimitExceededException.struct_class = Types::ReplayLimitExceededException
537
+
530
538
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
531
539
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
532
540
 
@@ -703,6 +711,7 @@ module Aws::SNS
703
711
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
704
712
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
705
713
  o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
714
+ o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
706
715
  end)
707
716
 
708
717
  api.add_operation(:create_platform_application, Seahorse::Model::Operation.new.tap do |o|
@@ -802,6 +811,7 @@ module Aws::SNS
802
811
  o.input = Shapes::ShapeRef.new(shape: DeleteTopicInput)
803
812
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
804
813
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
814
+ o.errors << Shapes::ShapeRef.new(shape: InvalidStateException)
805
815
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
806
816
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
807
817
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
@@ -1177,6 +1187,7 @@ module Aws::SNS
1177
1187
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1178
1188
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1179
1189
  o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
1190
+ o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
1180
1191
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1181
1192
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1182
1193
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
@@ -1203,6 +1214,7 @@ module Aws::SNS
1203
1214
  o.output = Shapes::ShapeRef.new(shape: SubscribeResponse)
1204
1215
  o.errors << Shapes::ShapeRef.new(shape: SubscriptionLimitExceededException)
1205
1216
  o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
1217
+ o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
1206
1218
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1207
1219
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1208
1220
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
@@ -32,7 +32,7 @@ module Aws::SNS
32
32
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
33
  end
34
34
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
36
  if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-east-1")
37
37
  return Aws::Endpoints::Endpoint.new(url: "https://sns.us-gov-east-1.amazonaws.com", headers: {}, properties: {})
38
38
  end
@@ -39,6 +39,7 @@ module Aws::SNS
39
39
  # * {InvalidParameterException}
40
40
  # * {InvalidParameterValueException}
41
41
  # * {InvalidSecurityException}
42
+ # * {InvalidStateException}
42
43
  # * {KMSAccessDeniedException}
43
44
  # * {KMSDisabledException}
44
45
  # * {KMSInvalidStateException}
@@ -48,6 +49,7 @@ module Aws::SNS
48
49
  # * {NotFoundException}
49
50
  # * {OptedOutException}
50
51
  # * {PlatformApplicationDisabledException}
52
+ # * {ReplayLimitExceededException}
51
53
  # * {ResourceNotFoundException}
52
54
  # * {StaleTagException}
53
55
  # * {SubscriptionLimitExceededException}
@@ -246,6 +248,21 @@ module Aws::SNS
246
248
  end
247
249
  end
248
250
 
251
+ class InvalidStateException < ServiceError
252
+
253
+ # @param [Seahorse::Client::RequestContext] context
254
+ # @param [String] message
255
+ # @param [Aws::SNS::Types::InvalidStateException] data
256
+ def initialize(context, message, data = Aws::EmptyStructure.new)
257
+ super(context, message, data)
258
+ end
259
+
260
+ # @return [String]
261
+ def message
262
+ @message || @data[:message]
263
+ end
264
+ end
265
+
249
266
  class KMSAccessDeniedException < ServiceError
250
267
 
251
268
  # @param [Seahorse::Client::RequestContext] context
@@ -381,6 +398,21 @@ module Aws::SNS
381
398
  end
382
399
  end
383
400
 
401
+ class ReplayLimitExceededException < ServiceError
402
+
403
+ # @param [Seahorse::Client::RequestContext] context
404
+ # @param [String] message
405
+ # @param [Aws::SNS::Types::ReplayLimitExceededException] data
406
+ def initialize(context, message, data = Aws::EmptyStructure.new)
407
+ super(context, message, data)
408
+ end
409
+
410
+ # @return [String]
411
+ def message
412
+ @message || @data[:message]
413
+ end
414
+ end
415
+
384
416
  class ResourceNotFoundException < ServiceError
385
417
 
386
418
  # @param [Seahorse::Client::RequestContext] context
@@ -45,6 +45,14 @@ module Aws::SNS
45
45
  # * `ApplePlatformBundleID` – The app identifier used to configure
46
46
  # token-based authentication.
47
47
  #
48
+ # * `AuthenticationMethod` – Returns the credential type used when
49
+ # sending push notifications from application to APNS/APNS\_Sandbox,
50
+ # or application to GCM.
51
+ #
52
+ # * APNS – Returns the token or certificate.
53
+ #
54
+ # * GCM – Returns the token or key.
55
+ #
48
56
  # * `EventEndpointCreated` – Topic ARN to which EndpointCreated event
49
57
  # notifications should be sent.
50
58
  #
@@ -122,7 +130,7 @@ module Aws::SNS
122
130
  # Arbitrary user data to associate with the endpoint. Amazon SNS does
123
131
  # not use this data. The data must be in UTF-8 format and less than 2KB.
124
132
  # @option options [Hash<String,String>] :attributes
125
- # For a list of attributes, see [SetEndpointAttributes][1].
133
+ # For a list of attributes, see [ `SetEndpointAttributes` ][1].
126
134
  #
127
135
  #
128
136
  #
@@ -175,8 +183,16 @@ module Aws::SNS
175
183
  # * For Apple Services using token credentials, `PlatformCredential`
176
184
  # is signing key.
177
185
  #
178
- # * For GCM (Firebase Cloud Messaging), `PlatformCredential` is API
179
- # key.
186
+ # * For GCM (Firebase Cloud Messaging) using key credentials, there is
187
+ # no `PlatformPrincipal`. The `PlatformCredential` is `API key`.
188
+ #
189
+ # * For GCM (Firebase Cloud Messaging) using token credentials, there
190
+ # is no `PlatformPrincipal`. The `PlatformCredential` is a JSON
191
+ # formatted private key file. When using the Amazon Web Services
192
+ # CLI, the file must be in string format and special characters must
193
+ # be ignored. To format the file correctly, Amazon SNS recommends
194
+ # using the following command: `` SERVICE_JSON=`jq @json <<< cat
195
+ # service.json` ``.
180
196
  # ^
181
197
  #
182
198
  # * `PlatformPrincipal` – The principal received from the notification
@@ -114,7 +114,7 @@ module Aws::SNS
114
114
  #
115
115
  # platform_endpoint.publish({
116
116
  # topic_arn: "topicARN",
117
- # phone_number: "String",
117
+ # phone_number: "PhoneNumber",
118
118
  # message: "message", # required
119
119
  # subject: "subject",
120
120
  # message_structure: "messageStructure",
@@ -14,6 +14,7 @@ module Aws::SNS
14
14
  option(
15
15
  :endpoint_provider,
16
16
  doc_type: 'Aws::SNS::EndpointProvider',
17
+ rbs_type: 'untyped',
17
18
  docstring: 'The endpoint provider used to resolve endpoints. Any '\
18
19
  'object that responds to `#resolve_endpoint(parameters)` '\
19
20
  'where `parameters` is a Struct similar to '\
@@ -25,16 +26,17 @@ module Aws::SNS
25
26
  # @api private
26
27
  class Handler < Seahorse::Client::Handler
27
28
  def call(context)
28
- # If endpoint was discovered, do not resolve or apply the endpoint.
29
29
  unless context[:discovered_endpoint]
30
30
  params = parameters_for_operation(context)
31
31
  endpoint = context.config.endpoint_provider.resolve_endpoint(params)
32
32
 
33
33
  context.http_request.endpoint = endpoint.url
34
34
  apply_endpoint_headers(context, endpoint.headers)
35
+
36
+ context[:endpoint_params] = params
37
+ context[:endpoint_properties] = endpoint.properties
35
38
  end
36
39
 
37
- context[:endpoint_params] = params
38
40
  context[:auth_scheme] =
39
41
  Aws::Endpoints.resolve_auth_scheme(context, endpoint)
40
42
 
@@ -54,7 +54,8 @@ module Aws::SNS
54
54
  # APNS (Apple Push Notification Service), APNS\_SANDBOX, and GCM
55
55
  # (Firebase Cloud Messaging).
56
56
  # @option options [required, Hash<String,String>] :attributes
57
- # For a list of attributes, see [SetPlatformApplicationAttributes][1].
57
+ # For a list of attributes, see [ `SetPlatformApplicationAttributes`
58
+ # ][1].
58
59
  #
59
60
  #
60
61
  #
@@ -136,7 +137,13 @@ module Aws::SNS
136
137
  #
137
138
  # The following attributes apply only to [FIFO topics][4]:
138
139
  #
139
- # * `FifoTopic` – When this is set to `true`, a FIFO topic is created.
140
+ # * `ArchivePolicy` – Adds or updates an inline policy document to
141
+ # archive messages stored in the specified Amazon SNS topic.
142
+ #
143
+ # * `BeginningArchiveTime` – The earliest starting point at which a
144
+ # message in the topic’s archive can be replayed from. This point in
145
+ # time is based on the configured message retention period set by the
146
+ # topic’s message archiving policy.
140
147
  #
141
148
  # * `ContentBasedDeduplication` – Enables content-based deduplication
142
149
  # for FIFO topics.
@@ -238,7 +238,7 @@ module Aws::SNS
238
238
  #
239
239
  # topic.publish({
240
240
  # target_arn: "String",
241
- # phone_number: "String",
241
+ # phone_number: "PhoneNumber",
242
242
  # message: "message", # required
243
243
  # subject: "subject",
244
244
  # message_structure: "messageStructure",
@@ -678,9 +678,31 @@ module Aws::SNS
678
678
  # see [Fanout to Kinesis Data Firehose delivery streams][1] in the
679
679
  # *Amazon SNS Developer Guide*.
680
680
  #
681
+ # The following attributes apply only to [FIFO topics][2]:
682
+ #
683
+ # * `ReplayPolicy` – Adds or updates an inline policy document for a
684
+ # subscription to replay messages stored in the specified Amazon SNS
685
+ # topic.
686
+ #
687
+ # * `ReplayStatus` – Retrieves the status of the subscription message
688
+ # replay, which can be one of the following:
689
+ #
690
+ # * `Completed` – The replay has successfully redelivered all
691
+ # messages, and is now delivering newly published messages. If an
692
+ # ending point was specified in the `ReplayPolicy` then the
693
+ # subscription will no longer receive newly published messages.
694
+ #
695
+ # * `In progress` – The replay is currently replaying the selected
696
+ # messages.
697
+ #
698
+ # * `Failed` – The replay was unable to complete.
699
+ #
700
+ # * `Pending` – The default state while the replay initiates.
701
+ #
681
702
  #
682
703
  #
683
704
  # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-firehose-as-subscriber.html
705
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
684
706
  # @option options [Boolean] :return_subscription_arn
685
707
  # Sets whether the response from the `Subscribe` request includes the
686
708
  # subscription ARN, even if the subscription is not yet confirmed.