aws-sdk-sns 1.66.0 → 1.75.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +45 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-sns/client.rb +141 -71
- data/lib/aws-sdk-sns/client_api.rb +45 -33
- data/lib/aws-sdk-sns/endpoint_provider.rb +1 -1
- data/lib/aws-sdk-sns/errors.rb +32 -0
- data/lib/aws-sdk-sns/platform_application.rb +19 -3
- data/lib/aws-sdk-sns/platform_endpoint.rb +1 -1
- data/lib/aws-sdk-sns/plugins/endpoints.rb +4 -2
- data/lib/aws-sdk-sns/resource.rb +9 -2
- data/lib/aws-sdk-sns/topic.rb +23 -1
- data/lib/aws-sdk-sns/types.rb +127 -52
- data/lib/aws-sdk-sns.rb +1 -1
- data/sig/client.rbs +525 -0
- data/sig/errors.rbs +119 -0
- data/sig/platform_application.rbs +64 -0
- data/sig/platform_endpoint.rbs +68 -0
- data/sig/resource.rbs +128 -0
- data/sig/subscription.rbs +52 -0
- data/sig/topic.rbs +104 -0
- data/sig/types.rbs +664 -0
- data/sig/waiters.rbs +13 -0
- metadata +18 -9
@@ -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
|
-
|
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:
|
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:
|
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?(
|
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
|
data/lib/aws-sdk-sns/errors.rb
CHANGED
@@ -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),
|
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: "
|
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
|
|
data/lib/aws-sdk-sns/resource.rb
CHANGED
@@ -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
|
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
|
-
# * `
|
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.
|
data/lib/aws-sdk-sns/topic.rb
CHANGED
@@ -238,7 +238,7 @@ module Aws::SNS
|
|
238
238
|
#
|
239
239
|
# topic.publish({
|
240
240
|
# target_arn: "String",
|
241
|
-
# phone_number: "
|
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.
|