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.
@@ -16,11 +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')
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
+ BatchResultErrorEntry = Shapes::StructureShape.new(name: 'BatchResultErrorEntry')
23
+ BatchResultErrorEntryList = Shapes::ListShape.new(name: 'BatchResultErrorEntryList')
20
24
  Binary = Shapes::BlobShape.new(name: 'Binary')
21
25
  CheckIfPhoneNumberIsOptedOutInput = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutInput')
22
26
  CheckIfPhoneNumberIsOptedOutResponse = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutResponse')
23
- ConcurrentAccessException = Shapes::StructureShape.new(name: 'ConcurrentAccessException')
27
+ ConcurrentAccessException = Shapes::StructureShape.new(name: 'ConcurrentAccessException', error: {"code"=>"ConcurrentAccess", "httpStatusCode"=>400, "senderFault"=>true})
24
28
  ConfirmSubscriptionInput = Shapes::StructureShape.new(name: 'ConfirmSubscriptionInput')
25
29
  ConfirmSubscriptionResponse = Shapes::StructureShape.new(name: 'ConfirmSubscriptionResponse')
26
30
  CreateEndpointResponse = Shapes::StructureShape.new(name: 'CreateEndpointResponse')
@@ -37,9 +41,12 @@ module Aws::SNS
37
41
  DeleteSMSSandboxPhoneNumberInput = Shapes::StructureShape.new(name: 'DeleteSMSSandboxPhoneNumberInput')
38
42
  DeleteSMSSandboxPhoneNumberResult = Shapes::StructureShape.new(name: 'DeleteSMSSandboxPhoneNumberResult')
39
43
  DeleteTopicInput = Shapes::StructureShape.new(name: 'DeleteTopicInput')
44
+ EmptyBatchRequestException = Shapes::StructureShape.new(name: 'EmptyBatchRequestException', error: {"code"=>"EmptyBatchRequest", "httpStatusCode"=>400, "senderFault"=>true})
40
45
  Endpoint = Shapes::StructureShape.new(name: 'Endpoint')
41
- EndpointDisabledException = Shapes::StructureShape.new(name: 'EndpointDisabledException')
42
- 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
+ GetDataProtectionPolicyInput = Shapes::StructureShape.new(name: 'GetDataProtectionPolicyInput')
49
+ GetDataProtectionPolicyResponse = Shapes::StructureShape.new(name: 'GetDataProtectionPolicyResponse')
43
50
  GetEndpointAttributesInput = Shapes::StructureShape.new(name: 'GetEndpointAttributesInput')
44
51
  GetEndpointAttributesResponse = Shapes::StructureShape.new(name: 'GetEndpointAttributesResponse')
45
52
  GetPlatformApplicationAttributesInput = Shapes::StructureShape.new(name: 'GetPlatformApplicationAttributesInput')
@@ -52,17 +59,19 @@ module Aws::SNS
52
59
  GetSubscriptionAttributesResponse = Shapes::StructureShape.new(name: 'GetSubscriptionAttributesResponse')
53
60
  GetTopicAttributesInput = Shapes::StructureShape.new(name: 'GetTopicAttributesInput')
54
61
  GetTopicAttributesResponse = Shapes::StructureShape.new(name: 'GetTopicAttributesResponse')
55
- InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException')
56
- InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
57
- InvalidParameterValueException = Shapes::StructureShape.new(name: 'InvalidParameterValueException')
58
- 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})
59
68
  Iso2CountryCode = Shapes::StringShape.new(name: 'Iso2CountryCode')
60
- KMSAccessDeniedException = Shapes::StructureShape.new(name: 'KMSAccessDeniedException')
61
- KMSDisabledException = Shapes::StructureShape.new(name: 'KMSDisabledException')
62
- KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException')
63
- KMSNotFoundException = Shapes::StructureShape.new(name: 'KMSNotFoundException')
64
- KMSOptInRequired = Shapes::StructureShape.new(name: 'KMSOptInRequired')
65
- 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})
66
75
  LanguageCodeString = Shapes::StringShape.new(name: 'LanguageCodeString')
67
76
  ListEndpointsByPlatformApplicationInput = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationInput')
68
77
  ListEndpointsByPlatformApplicationResponse = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationResponse')
@@ -90,24 +99,32 @@ module Aws::SNS
90
99
  MaxItemsListOriginationNumbers = Shapes::IntegerShape.new(name: 'MaxItemsListOriginationNumbers')
91
100
  MessageAttributeMap = Shapes::MapShape.new(name: 'MessageAttributeMap')
92
101
  MessageAttributeValue = Shapes::StructureShape.new(name: 'MessageAttributeValue')
93
- NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
102
+ NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException', error: {"code"=>"NotFound", "httpStatusCode"=>404, "senderFault"=>true})
94
103
  NumberCapability = Shapes::StringShape.new(name: 'NumberCapability')
95
104
  NumberCapabilityList = Shapes::ListShape.new(name: 'NumberCapabilityList')
96
105
  OTPCode = Shapes::StringShape.new(name: 'OTPCode')
97
106
  OptInPhoneNumberInput = Shapes::StructureShape.new(name: 'OptInPhoneNumberInput')
98
107
  OptInPhoneNumberResponse = Shapes::StructureShape.new(name: 'OptInPhoneNumberResponse')
99
- OptedOutException = Shapes::StructureShape.new(name: 'OptedOutException')
108
+ OptedOutException = Shapes::StructureShape.new(name: 'OptedOutException', error: {"code"=>"OptedOut", "httpStatusCode"=>400, "senderFault"=>true})
100
109
  PhoneNumber = Shapes::StringShape.new(name: 'PhoneNumber')
101
110
  PhoneNumberInformation = Shapes::StructureShape.new(name: 'PhoneNumberInformation')
102
111
  PhoneNumberInformationList = Shapes::ListShape.new(name: 'PhoneNumberInformationList')
103
112
  PhoneNumberList = Shapes::ListShape.new(name: 'PhoneNumberList')
104
113
  PhoneNumberString = Shapes::StringShape.new(name: 'PhoneNumberString')
105
114
  PlatformApplication = Shapes::StructureShape.new(name: 'PlatformApplication')
106
- PlatformApplicationDisabledException = Shapes::StructureShape.new(name: 'PlatformApplicationDisabledException')
115
+ PlatformApplicationDisabledException = Shapes::StructureShape.new(name: 'PlatformApplicationDisabledException', error: {"code"=>"PlatformApplicationDisabled", "httpStatusCode"=>400, "senderFault"=>true})
116
+ PublishBatchInput = Shapes::StructureShape.new(name: 'PublishBatchInput')
117
+ PublishBatchRequestEntry = Shapes::StructureShape.new(name: 'PublishBatchRequestEntry')
118
+ PublishBatchRequestEntryList = Shapes::ListShape.new(name: 'PublishBatchRequestEntryList')
119
+ PublishBatchResponse = Shapes::StructureShape.new(name: 'PublishBatchResponse')
120
+ PublishBatchResultEntry = Shapes::StructureShape.new(name: 'PublishBatchResultEntry')
121
+ PublishBatchResultEntryList = Shapes::ListShape.new(name: 'PublishBatchResultEntryList')
107
122
  PublishInput = Shapes::StructureShape.new(name: 'PublishInput')
108
123
  PublishResponse = Shapes::StructureShape.new(name: 'PublishResponse')
124
+ PutDataProtectionPolicyInput = Shapes::StructureShape.new(name: 'PutDataProtectionPolicyInput')
109
125
  RemovePermissionInput = Shapes::StructureShape.new(name: 'RemovePermissionInput')
110
- 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})
111
128
  RouteType = Shapes::StringShape.new(name: 'RouteType')
112
129
  SMSSandboxPhoneNumber = Shapes::StructureShape.new(name: 'SMSSandboxPhoneNumber')
113
130
  SMSSandboxPhoneNumberList = Shapes::ListShape.new(name: 'SMSSandboxPhoneNumberList')
@@ -118,34 +135,35 @@ module Aws::SNS
118
135
  SetSMSAttributesResponse = Shapes::StructureShape.new(name: 'SetSMSAttributesResponse')
119
136
  SetSubscriptionAttributesInput = Shapes::StructureShape.new(name: 'SetSubscriptionAttributesInput')
120
137
  SetTopicAttributesInput = Shapes::StructureShape.new(name: 'SetTopicAttributesInput')
121
- StaleTagException = Shapes::StructureShape.new(name: 'StaleTagException')
138
+ StaleTagException = Shapes::StructureShape.new(name: 'StaleTagException', error: {"code"=>"StaleTag", "httpStatusCode"=>400, "senderFault"=>true})
122
139
  String = Shapes::StringShape.new(name: 'String')
123
140
  SubscribeInput = Shapes::StructureShape.new(name: 'SubscribeInput')
124
141
  SubscribeResponse = Shapes::StructureShape.new(name: 'SubscribeResponse')
125
142
  Subscription = Shapes::StructureShape.new(name: 'Subscription')
126
143
  SubscriptionAttributesMap = Shapes::MapShape.new(name: 'SubscriptionAttributesMap')
127
- SubscriptionLimitExceededException = Shapes::StructureShape.new(name: 'SubscriptionLimitExceededException')
144
+ SubscriptionLimitExceededException = Shapes::StructureShape.new(name: 'SubscriptionLimitExceededException', error: {"code"=>"SubscriptionLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
128
145
  SubscriptionsList = Shapes::ListShape.new(name: 'SubscriptionsList')
129
146
  Tag = Shapes::StructureShape.new(name: 'Tag')
130
147
  TagKey = Shapes::StringShape.new(name: 'TagKey')
131
148
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
132
- TagLimitExceededException = Shapes::StructureShape.new(name: 'TagLimitExceededException')
149
+ TagLimitExceededException = Shapes::StructureShape.new(name: 'TagLimitExceededException', error: {"code"=>"TagLimitExceeded", "httpStatusCode"=>400, "senderFault"=>true})
133
150
  TagList = Shapes::ListShape.new(name: 'TagList')
134
- TagPolicyException = Shapes::StructureShape.new(name: 'TagPolicyException')
151
+ TagPolicyException = Shapes::StructureShape.new(name: 'TagPolicyException', error: {"code"=>"TagPolicy", "httpStatusCode"=>400, "senderFault"=>true})
135
152
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
136
153
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
137
154
  TagValue = Shapes::StringShape.new(name: 'TagValue')
138
- ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException')
155
+ ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException', error: {"code"=>"Throttled", "httpStatusCode"=>429, "senderFault"=>true})
139
156
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
157
+ TooManyEntriesInBatchRequestException = Shapes::StructureShape.new(name: 'TooManyEntriesInBatchRequestException', error: {"code"=>"TooManyEntriesInBatchRequest", "httpStatusCode"=>400, "senderFault"=>true})
140
158
  Topic = Shapes::StructureShape.new(name: 'Topic')
141
159
  TopicAttributesMap = Shapes::MapShape.new(name: 'TopicAttributesMap')
142
- TopicLimitExceededException = Shapes::StructureShape.new(name: 'TopicLimitExceededException')
160
+ TopicLimitExceededException = Shapes::StructureShape.new(name: 'TopicLimitExceededException', error: {"code"=>"TopicLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
143
161
  TopicsList = Shapes::ListShape.new(name: 'TopicsList')
144
162
  UnsubscribeInput = Shapes::StructureShape.new(name: 'UnsubscribeInput')
145
163
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
146
164
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
147
- UserErrorException = Shapes::StructureShape.new(name: 'UserErrorException')
148
- 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})
149
167
  VerificationException = Shapes::StructureShape.new(name: 'VerificationException')
150
168
  VerifySMSSandboxPhoneNumberInput = Shapes::StructureShape.new(name: 'VerifySMSSandboxPhoneNumberInput')
151
169
  VerifySMSSandboxPhoneNumberResult = Shapes::StructureShape.new(name: 'VerifySMSSandboxPhoneNumberResult')
@@ -181,6 +199,20 @@ module Aws::SNS
181
199
  AuthorizationErrorException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
182
200
  AuthorizationErrorException.struct_class = Types::AuthorizationErrorException
183
201
 
202
+ BatchEntryIdsNotDistinctException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
203
+ BatchEntryIdsNotDistinctException.struct_class = Types::BatchEntryIdsNotDistinctException
204
+
205
+ BatchRequestTooLongException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
206
+ BatchRequestTooLongException.struct_class = Types::BatchRequestTooLongException
207
+
208
+ BatchResultErrorEntry.add_member(:id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Id"))
209
+ BatchResultErrorEntry.add_member(:code, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Code"))
210
+ BatchResultErrorEntry.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
211
+ BatchResultErrorEntry.add_member(:sender_fault, Shapes::ShapeRef.new(shape: boolean, required: true, location_name: "SenderFault"))
212
+ BatchResultErrorEntry.struct_class = Types::BatchResultErrorEntry
213
+
214
+ BatchResultErrorEntryList.member = Shapes::ShapeRef.new(shape: BatchResultErrorEntry)
215
+
184
216
  CheckIfPhoneNumberIsOptedOutInput.add_member(:phone_number, Shapes::ShapeRef.new(shape: PhoneNumber, required: true, location_name: "phoneNumber"))
185
217
  CheckIfPhoneNumberIsOptedOutInput.struct_class = Types::CheckIfPhoneNumberIsOptedOutInput
186
218
 
@@ -224,6 +256,7 @@ module Aws::SNS
224
256
  CreateTopicInput.add_member(:name, Shapes::ShapeRef.new(shape: topicName, required: true, location_name: "Name"))
225
257
  CreateTopicInput.add_member(:attributes, Shapes::ShapeRef.new(shape: TopicAttributesMap, location_name: "Attributes"))
226
258
  CreateTopicInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
259
+ CreateTopicInput.add_member(:data_protection_policy, Shapes::ShapeRef.new(shape: attributeValue, location_name: "DataProtectionPolicy"))
227
260
  CreateTopicInput.struct_class = Types::CreateTopicInput
228
261
 
229
262
  CreateTopicResponse.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
@@ -245,6 +278,9 @@ module Aws::SNS
245
278
  DeleteTopicInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "TopicArn"))
246
279
  DeleteTopicInput.struct_class = Types::DeleteTopicInput
247
280
 
281
+ EmptyBatchRequestException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
282
+ EmptyBatchRequestException.struct_class = Types::EmptyBatchRequestException
283
+
248
284
  Endpoint.add_member(:endpoint_arn, Shapes::ShapeRef.new(shape: String, location_name: "EndpointArn"))
249
285
  Endpoint.add_member(:attributes, Shapes::ShapeRef.new(shape: MapStringToString, location_name: "Attributes"))
250
286
  Endpoint.struct_class = Types::Endpoint
@@ -255,6 +291,12 @@ module Aws::SNS
255
291
  FilterPolicyLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
256
292
  FilterPolicyLimitExceededException.struct_class = Types::FilterPolicyLimitExceededException
257
293
 
294
+ GetDataProtectionPolicyInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "ResourceArn"))
295
+ GetDataProtectionPolicyInput.struct_class = Types::GetDataProtectionPolicyInput
296
+
297
+ GetDataProtectionPolicyResponse.add_member(:data_protection_policy, Shapes::ShapeRef.new(shape: attributeValue, location_name: "DataProtectionPolicy"))
298
+ GetDataProtectionPolicyResponse.struct_class = Types::GetDataProtectionPolicyResponse
299
+
258
300
  GetEndpointAttributesInput.add_member(:endpoint_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "EndpointArn"))
259
301
  GetEndpointAttributesInput.struct_class = Types::GetEndpointAttributesInput
260
302
 
@@ -293,6 +335,9 @@ module Aws::SNS
293
335
  InternalErrorException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
294
336
  InternalErrorException.struct_class = Types::InternalErrorException
295
337
 
338
+ InvalidBatchEntryIdException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
339
+ InvalidBatchEntryIdException.struct_class = Types::InvalidBatchEntryIdException
340
+
296
341
  InvalidParameterException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
297
342
  InvalidParameterException.struct_class = Types::InvalidParameterException
298
343
 
@@ -302,6 +347,9 @@ module Aws::SNS
302
347
  InvalidSecurityException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
303
348
  InvalidSecurityException.struct_class = Types::InvalidSecurityException
304
349
 
350
+ InvalidStateException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
351
+ InvalidStateException.struct_class = Types::InvalidStateException
352
+
305
353
  KMSAccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
306
354
  KMSAccessDeniedException.struct_class = Types::KMSAccessDeniedException
307
355
 
@@ -417,7 +465,7 @@ module Aws::SNS
417
465
  OptedOutException.struct_class = Types::OptedOutException
418
466
 
419
467
  PhoneNumberInformation.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedAt"))
420
- 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"))
421
469
  PhoneNumberInformation.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "Status"))
422
470
  PhoneNumberInformation.add_member(:iso_2_country_code, Shapes::ShapeRef.new(shape: Iso2CountryCode, location_name: "Iso2CountryCode"))
423
471
  PhoneNumberInformation.add_member(:route_type, Shapes::ShapeRef.new(shape: RouteType, location_name: "RouteType"))
@@ -435,9 +483,35 @@ module Aws::SNS
435
483
  PlatformApplicationDisabledException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
436
484
  PlatformApplicationDisabledException.struct_class = Types::PlatformApplicationDisabledException
437
485
 
486
+ PublishBatchInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "TopicArn"))
487
+ PublishBatchInput.add_member(:publish_batch_request_entries, Shapes::ShapeRef.new(shape: PublishBatchRequestEntryList, required: true, location_name: "PublishBatchRequestEntries"))
488
+ PublishBatchInput.struct_class = Types::PublishBatchInput
489
+
490
+ PublishBatchRequestEntry.add_member(:id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Id"))
491
+ PublishBatchRequestEntry.add_member(:message, Shapes::ShapeRef.new(shape: message, required: true, location_name: "Message"))
492
+ PublishBatchRequestEntry.add_member(:subject, Shapes::ShapeRef.new(shape: subject, location_name: "Subject"))
493
+ PublishBatchRequestEntry.add_member(:message_structure, Shapes::ShapeRef.new(shape: messageStructure, location_name: "MessageStructure"))
494
+ PublishBatchRequestEntry.add_member(:message_attributes, Shapes::ShapeRef.new(shape: MessageAttributeMap, location_name: "MessageAttributes"))
495
+ PublishBatchRequestEntry.add_member(:message_deduplication_id, Shapes::ShapeRef.new(shape: String, location_name: "MessageDeduplicationId"))
496
+ PublishBatchRequestEntry.add_member(:message_group_id, Shapes::ShapeRef.new(shape: String, location_name: "MessageGroupId"))
497
+ PublishBatchRequestEntry.struct_class = Types::PublishBatchRequestEntry
498
+
499
+ PublishBatchRequestEntryList.member = Shapes::ShapeRef.new(shape: PublishBatchRequestEntry)
500
+
501
+ PublishBatchResponse.add_member(:successful, Shapes::ShapeRef.new(shape: PublishBatchResultEntryList, location_name: "Successful"))
502
+ PublishBatchResponse.add_member(:failed, Shapes::ShapeRef.new(shape: BatchResultErrorEntryList, location_name: "Failed"))
503
+ PublishBatchResponse.struct_class = Types::PublishBatchResponse
504
+
505
+ PublishBatchResultEntry.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "Id"))
506
+ PublishBatchResultEntry.add_member(:message_id, Shapes::ShapeRef.new(shape: messageId, location_name: "MessageId"))
507
+ PublishBatchResultEntry.add_member(:sequence_number, Shapes::ShapeRef.new(shape: String, location_name: "SequenceNumber"))
508
+ PublishBatchResultEntry.struct_class = Types::PublishBatchResultEntry
509
+
510
+ PublishBatchResultEntryList.member = Shapes::ShapeRef.new(shape: PublishBatchResultEntry)
511
+
438
512
  PublishInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
439
513
  PublishInput.add_member(:target_arn, Shapes::ShapeRef.new(shape: String, location_name: "TargetArn"))
440
- 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"))
441
515
  PublishInput.add_member(:message, Shapes::ShapeRef.new(shape: message, required: true, location_name: "Message"))
442
516
  PublishInput.add_member(:subject, Shapes::ShapeRef.new(shape: subject, location_name: "Subject"))
443
517
  PublishInput.add_member(:message_structure, Shapes::ShapeRef.new(shape: messageStructure, location_name: "MessageStructure"))
@@ -450,10 +524,17 @@ module Aws::SNS
450
524
  PublishResponse.add_member(:sequence_number, Shapes::ShapeRef.new(shape: String, location_name: "SequenceNumber"))
451
525
  PublishResponse.struct_class = Types::PublishResponse
452
526
 
527
+ PutDataProtectionPolicyInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "ResourceArn"))
528
+ PutDataProtectionPolicyInput.add_member(:data_protection_policy, Shapes::ShapeRef.new(shape: attributeValue, required: true, location_name: "DataProtectionPolicy"))
529
+ PutDataProtectionPolicyInput.struct_class = Types::PutDataProtectionPolicyInput
530
+
453
531
  RemovePermissionInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "TopicArn"))
454
532
  RemovePermissionInput.add_member(:label, Shapes::ShapeRef.new(shape: label, required: true, location_name: "Label"))
455
533
  RemovePermissionInput.struct_class = Types::RemovePermissionInput
456
534
 
535
+ ReplayLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
536
+ ReplayLimitExceededException.struct_class = Types::ReplayLimitExceededException
537
+
457
538
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
458
539
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
459
540
 
@@ -537,6 +618,9 @@ module Aws::SNS
537
618
  ThrottledException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
538
619
  ThrottledException.struct_class = Types::ThrottledException
539
620
 
621
+ TooManyEntriesInBatchRequestException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
622
+ TooManyEntriesInBatchRequestException.struct_class = Types::TooManyEntriesInBatchRequestException
623
+
540
624
  Topic.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
541
625
  Topic.struct_class = Types::Topic
542
626
 
@@ -581,8 +665,10 @@ module Aws::SNS
581
665
 
582
666
  api.metadata = {
583
667
  "apiVersion" => "2010-03-31",
668
+ "auth" => ["aws.auth#sigv4"],
584
669
  "endpointPrefix" => "sns",
585
670
  "protocol" => "query",
671
+ "protocols" => ["query"],
586
672
  "serviceAbbreviation" => "Amazon SNS",
587
673
  "serviceFullName" => "Amazon Simple Notification Service",
588
674
  "serviceId" => "SNS",
@@ -627,6 +713,7 @@ module Aws::SNS
627
713
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
628
714
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
629
715
  o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
716
+ o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
630
717
  end)
631
718
 
632
719
  api.add_operation(:create_platform_application, Seahorse::Model::Operation.new.tap do |o|
@@ -726,6 +813,7 @@ module Aws::SNS
726
813
  o.input = Shapes::ShapeRef.new(shape: DeleteTopicInput)
727
814
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
728
815
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
816
+ o.errors << Shapes::ShapeRef.new(shape: InvalidStateException)
729
817
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
730
818
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
731
819
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
@@ -734,6 +822,19 @@ module Aws::SNS
734
822
  o.errors << Shapes::ShapeRef.new(shape: ConcurrentAccessException)
735
823
  end)
736
824
 
825
+ api.add_operation(:get_data_protection_policy, Seahorse::Model::Operation.new.tap do |o|
826
+ o.name = "GetDataProtectionPolicy"
827
+ o.http_method = "POST"
828
+ o.http_request_uri = "/"
829
+ o.input = Shapes::ShapeRef.new(shape: GetDataProtectionPolicyInput)
830
+ o.output = Shapes::ShapeRef.new(shape: GetDataProtectionPolicyResponse)
831
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
832
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
833
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
834
+ o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
835
+ o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
836
+ end)
837
+
737
838
  api.add_operation(:get_endpoint_attributes, Seahorse::Model::Operation.new.tap do |o|
738
839
  o.name = "GetEndpointAttributes"
739
840
  o.http_method = "POST"
@@ -988,6 +1089,48 @@ module Aws::SNS
988
1089
  o.errors << Shapes::ShapeRef.new(shape: KMSThrottlingException)
989
1090
  o.errors << Shapes::ShapeRef.new(shape: KMSAccessDeniedException)
990
1091
  o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
1092
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1093
+ end)
1094
+
1095
+ api.add_operation(:publish_batch, Seahorse::Model::Operation.new.tap do |o|
1096
+ o.name = "PublishBatch"
1097
+ o.http_method = "POST"
1098
+ o.http_request_uri = "/"
1099
+ o.input = Shapes::ShapeRef.new(shape: PublishBatchInput)
1100
+ o.output = Shapes::ShapeRef.new(shape: PublishBatchResponse)
1101
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1102
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1103
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1104
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1105
+ o.errors << Shapes::ShapeRef.new(shape: EndpointDisabledException)
1106
+ o.errors << Shapes::ShapeRef.new(shape: PlatformApplicationDisabledException)
1107
+ o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
1108
+ o.errors << Shapes::ShapeRef.new(shape: BatchEntryIdsNotDistinctException)
1109
+ o.errors << Shapes::ShapeRef.new(shape: BatchRequestTooLongException)
1110
+ o.errors << Shapes::ShapeRef.new(shape: EmptyBatchRequestException)
1111
+ o.errors << Shapes::ShapeRef.new(shape: InvalidBatchEntryIdException)
1112
+ o.errors << Shapes::ShapeRef.new(shape: TooManyEntriesInBatchRequestException)
1113
+ o.errors << Shapes::ShapeRef.new(shape: KMSDisabledException)
1114
+ o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
1115
+ o.errors << Shapes::ShapeRef.new(shape: KMSNotFoundException)
1116
+ o.errors << Shapes::ShapeRef.new(shape: KMSOptInRequired)
1117
+ o.errors << Shapes::ShapeRef.new(shape: KMSThrottlingException)
1118
+ o.errors << Shapes::ShapeRef.new(shape: KMSAccessDeniedException)
1119
+ o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
1120
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1121
+ end)
1122
+
1123
+ api.add_operation(:put_data_protection_policy, Seahorse::Model::Operation.new.tap do |o|
1124
+ o.name = "PutDataProtectionPolicy"
1125
+ o.http_method = "POST"
1126
+ o.http_request_uri = "/"
1127
+ o.input = Shapes::ShapeRef.new(shape: PutDataProtectionPolicyInput)
1128
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1129
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1130
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1131
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1132
+ o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
1133
+ o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
991
1134
  end)
992
1135
 
993
1136
  api.add_operation(:remove_permission, Seahorse::Model::Operation.new.tap do |o|
@@ -1046,6 +1189,7 @@ module Aws::SNS
1046
1189
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1047
1190
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1048
1191
  o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
1192
+ o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
1049
1193
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1050
1194
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1051
1195
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
@@ -1072,6 +1216,7 @@ module Aws::SNS
1072
1216
  o.output = Shapes::ShapeRef.new(shape: SubscribeResponse)
1073
1217
  o.errors << Shapes::ShapeRef.new(shape: SubscriptionLimitExceededException)
1074
1218
  o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
1219
+ o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
1075
1220
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1076
1221
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1077
1222
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::SNS
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::SNS
11
+ class EndpointProvider
12
+ def resolve_endpoint(parameters)
13
+ region = parameters.region
14
+ use_dual_stack = parameters.use_dual_stack
15
+ use_fips = parameters.use_fips
16
+ endpoint = parameters.endpoint
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
18
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
+ end
21
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://sns-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
+ if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-east-1")
37
+ return Aws::Endpoints::Endpoint.new(url: "https://sns.us-gov-east-1.amazonaws.com", headers: {}, properties: {})
38
+ end
39
+ if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-west-1")
40
+ return Aws::Endpoints::Endpoint.new(url: "https://sns.us-gov-west-1.amazonaws.com", headers: {}, properties: {})
41
+ end
42
+ return Aws::Endpoints::Endpoint.new(url: "https://sns-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
45
+ end
46
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
47
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
48
+ return Aws::Endpoints::Endpoint.new(url: "https://sns.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
49
+ end
50
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
51
+ end
52
+ return Aws::Endpoints::Endpoint.new(url: "https://sns.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
53
+ end
54
+ end
55
+ raise ArgumentError, "Invalid Configuration: Missing Region"
56
+ raise ArgumentError, 'No endpoint could be resolved'
57
+
58
+ end
59
+ end
60
+ end