aws-sdk-sns 1.20.0 → 1.25.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/aws-sdk-sns.rb +7 -4
- data/lib/aws-sdk-sns/client.rb +133 -81
- data/lib/aws-sdk-sns/errors.rb +45 -23
- data/lib/aws-sdk-sns/platform_application.rb +5 -3
- data/lib/aws-sdk-sns/platform_endpoint.rb +6 -13
- data/lib/aws-sdk-sns/resource.rb +19 -2
- data/lib/aws-sdk-sns/subscription.rb +16 -0
- data/lib/aws-sdk-sns/topic.rb +55 -42
- data/lib/aws-sdk-sns/types.rb +85 -45
- metadata +5 -5
data/lib/aws-sdk-sns/errors.rb
CHANGED
@@ -6,6 +6,51 @@
|
|
6
6
|
# WARNING ABOUT GENERATED CODE
|
7
7
|
|
8
8
|
module Aws::SNS
|
9
|
+
|
10
|
+
# When SNS returns an error response, the Ruby SDK constructs and raises an error.
|
11
|
+
# These errors all extend Aws::SNS::Errors::ServiceError < {Aws::Errors::ServiceError}
|
12
|
+
#
|
13
|
+
# You can rescue all SNS errors using ServiceError:
|
14
|
+
#
|
15
|
+
# begin
|
16
|
+
# # do stuff
|
17
|
+
# rescue Aws::SNS::Errors::ServiceError
|
18
|
+
# # rescues all SNS API errors
|
19
|
+
# end
|
20
|
+
#
|
21
|
+
#
|
22
|
+
# ## Request Context
|
23
|
+
# ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
|
24
|
+
# information about the request that generated the error.
|
25
|
+
# See {Seahorse::Client::RequestContext} for more information.
|
26
|
+
#
|
27
|
+
# ## Error Classes
|
28
|
+
# * {AuthorizationErrorException}
|
29
|
+
# * {ConcurrentAccessException}
|
30
|
+
# * {EndpointDisabledException}
|
31
|
+
# * {FilterPolicyLimitExceededException}
|
32
|
+
# * {InternalErrorException}
|
33
|
+
# * {InvalidParameterException}
|
34
|
+
# * {InvalidParameterValueException}
|
35
|
+
# * {InvalidSecurityException}
|
36
|
+
# * {KMSAccessDeniedException}
|
37
|
+
# * {KMSDisabledException}
|
38
|
+
# * {KMSInvalidStateException}
|
39
|
+
# * {KMSNotFoundException}
|
40
|
+
# * {KMSOptInRequired}
|
41
|
+
# * {KMSThrottlingException}
|
42
|
+
# * {NotFoundException}
|
43
|
+
# * {PlatformApplicationDisabledException}
|
44
|
+
# * {ResourceNotFoundException}
|
45
|
+
# * {StaleTagException}
|
46
|
+
# * {SubscriptionLimitExceededException}
|
47
|
+
# * {TagLimitExceededException}
|
48
|
+
# * {TagPolicyException}
|
49
|
+
# * {ThrottledException}
|
50
|
+
# * {TopicLimitExceededException}
|
51
|
+
#
|
52
|
+
# Additionally, error classes are dynamically generated for service errors based on the error code
|
53
|
+
# if they are not defined above.
|
9
54
|
module Errors
|
10
55
|
|
11
56
|
extend Aws::Errors::DynamicErrors
|
@@ -23,7 +68,6 @@ module Aws::SNS
|
|
23
68
|
def message
|
24
69
|
@message || @data[:message]
|
25
70
|
end
|
26
|
-
|
27
71
|
end
|
28
72
|
|
29
73
|
class ConcurrentAccessException < ServiceError
|
@@ -39,7 +83,6 @@ module Aws::SNS
|
|
39
83
|
def message
|
40
84
|
@message || @data[:message]
|
41
85
|
end
|
42
|
-
|
43
86
|
end
|
44
87
|
|
45
88
|
class EndpointDisabledException < ServiceError
|
@@ -55,7 +98,6 @@ module Aws::SNS
|
|
55
98
|
def message
|
56
99
|
@message || @data[:message]
|
57
100
|
end
|
58
|
-
|
59
101
|
end
|
60
102
|
|
61
103
|
class FilterPolicyLimitExceededException < ServiceError
|
@@ -71,7 +113,6 @@ module Aws::SNS
|
|
71
113
|
def message
|
72
114
|
@message || @data[:message]
|
73
115
|
end
|
74
|
-
|
75
116
|
end
|
76
117
|
|
77
118
|
class InternalErrorException < ServiceError
|
@@ -87,7 +128,6 @@ module Aws::SNS
|
|
87
128
|
def message
|
88
129
|
@message || @data[:message]
|
89
130
|
end
|
90
|
-
|
91
131
|
end
|
92
132
|
|
93
133
|
class InvalidParameterException < ServiceError
|
@@ -103,7 +143,6 @@ module Aws::SNS
|
|
103
143
|
def message
|
104
144
|
@message || @data[:message]
|
105
145
|
end
|
106
|
-
|
107
146
|
end
|
108
147
|
|
109
148
|
class InvalidParameterValueException < ServiceError
|
@@ -119,7 +158,6 @@ module Aws::SNS
|
|
119
158
|
def message
|
120
159
|
@message || @data[:message]
|
121
160
|
end
|
122
|
-
|
123
161
|
end
|
124
162
|
|
125
163
|
class InvalidSecurityException < ServiceError
|
@@ -135,7 +173,6 @@ module Aws::SNS
|
|
135
173
|
def message
|
136
174
|
@message || @data[:message]
|
137
175
|
end
|
138
|
-
|
139
176
|
end
|
140
177
|
|
141
178
|
class KMSAccessDeniedException < ServiceError
|
@@ -151,7 +188,6 @@ module Aws::SNS
|
|
151
188
|
def message
|
152
189
|
@message || @data[:message]
|
153
190
|
end
|
154
|
-
|
155
191
|
end
|
156
192
|
|
157
193
|
class KMSDisabledException < ServiceError
|
@@ -167,7 +203,6 @@ module Aws::SNS
|
|
167
203
|
def message
|
168
204
|
@message || @data[:message]
|
169
205
|
end
|
170
|
-
|
171
206
|
end
|
172
207
|
|
173
208
|
class KMSInvalidStateException < ServiceError
|
@@ -183,7 +218,6 @@ module Aws::SNS
|
|
183
218
|
def message
|
184
219
|
@message || @data[:message]
|
185
220
|
end
|
186
|
-
|
187
221
|
end
|
188
222
|
|
189
223
|
class KMSNotFoundException < ServiceError
|
@@ -199,7 +233,6 @@ module Aws::SNS
|
|
199
233
|
def message
|
200
234
|
@message || @data[:message]
|
201
235
|
end
|
202
|
-
|
203
236
|
end
|
204
237
|
|
205
238
|
class KMSOptInRequired < ServiceError
|
@@ -215,7 +248,6 @@ module Aws::SNS
|
|
215
248
|
def message
|
216
249
|
@message || @data[:message]
|
217
250
|
end
|
218
|
-
|
219
251
|
end
|
220
252
|
|
221
253
|
class KMSThrottlingException < ServiceError
|
@@ -231,7 +263,6 @@ module Aws::SNS
|
|
231
263
|
def message
|
232
264
|
@message || @data[:message]
|
233
265
|
end
|
234
|
-
|
235
266
|
end
|
236
267
|
|
237
268
|
class NotFoundException < ServiceError
|
@@ -247,7 +278,6 @@ module Aws::SNS
|
|
247
278
|
def message
|
248
279
|
@message || @data[:message]
|
249
280
|
end
|
250
|
-
|
251
281
|
end
|
252
282
|
|
253
283
|
class PlatformApplicationDisabledException < ServiceError
|
@@ -263,7 +293,6 @@ module Aws::SNS
|
|
263
293
|
def message
|
264
294
|
@message || @data[:message]
|
265
295
|
end
|
266
|
-
|
267
296
|
end
|
268
297
|
|
269
298
|
class ResourceNotFoundException < ServiceError
|
@@ -279,7 +308,6 @@ module Aws::SNS
|
|
279
308
|
def message
|
280
309
|
@message || @data[:message]
|
281
310
|
end
|
282
|
-
|
283
311
|
end
|
284
312
|
|
285
313
|
class StaleTagException < ServiceError
|
@@ -295,7 +323,6 @@ module Aws::SNS
|
|
295
323
|
def message
|
296
324
|
@message || @data[:message]
|
297
325
|
end
|
298
|
-
|
299
326
|
end
|
300
327
|
|
301
328
|
class SubscriptionLimitExceededException < ServiceError
|
@@ -311,7 +338,6 @@ module Aws::SNS
|
|
311
338
|
def message
|
312
339
|
@message || @data[:message]
|
313
340
|
end
|
314
|
-
|
315
341
|
end
|
316
342
|
|
317
343
|
class TagLimitExceededException < ServiceError
|
@@ -327,7 +353,6 @@ module Aws::SNS
|
|
327
353
|
def message
|
328
354
|
@message || @data[:message]
|
329
355
|
end
|
330
|
-
|
331
356
|
end
|
332
357
|
|
333
358
|
class TagPolicyException < ServiceError
|
@@ -343,7 +368,6 @@ module Aws::SNS
|
|
343
368
|
def message
|
344
369
|
@message || @data[:message]
|
345
370
|
end
|
346
|
-
|
347
371
|
end
|
348
372
|
|
349
373
|
class ThrottledException < ServiceError
|
@@ -359,7 +383,6 @@ module Aws::SNS
|
|
359
383
|
def message
|
360
384
|
@message || @data[:message]
|
361
385
|
end
|
362
|
-
|
363
386
|
end
|
364
387
|
|
365
388
|
class TopicLimitExceededException < ServiceError
|
@@ -375,7 +398,6 @@ module Aws::SNS
|
|
375
398
|
def message
|
376
399
|
@message || @data[:message]
|
377
400
|
end
|
378
|
-
|
379
401
|
end
|
380
402
|
|
381
403
|
end
|
@@ -6,6 +6,7 @@
|
|
6
6
|
# WARNING ABOUT GENERATED CODE
|
7
7
|
|
8
8
|
module Aws::SNS
|
9
|
+
|
9
10
|
class PlatformApplication
|
10
11
|
|
11
12
|
extend Aws::Deprecations
|
@@ -21,6 +22,7 @@ module Aws::SNS
|
|
21
22
|
@arn = extract_arn(args, options)
|
22
23
|
@data = options.delete(:data)
|
23
24
|
@client = options.delete(:client) || Client.new(options)
|
25
|
+
@waiter_block_warned = false
|
24
26
|
end
|
25
27
|
|
26
28
|
# @!group Read-Only Attributes
|
@@ -101,7 +103,7 @@ module Aws::SNS
|
|
101
103
|
# device. The specific name for Token will vary, depending on which
|
102
104
|
# notification service is being used. For example, when using APNS as
|
103
105
|
# the notification service, you need the device token. Alternatively,
|
104
|
-
# when using
|
106
|
+
# when using FCM or ADM, the device token equivalent is called the
|
105
107
|
# registration ID.
|
106
108
|
# @option options [String] :custom_user_data
|
107
109
|
# Arbitrary user data to associate with the endpoint. Amazon SNS does
|
@@ -147,12 +149,12 @@ module Aws::SNS
|
|
147
149
|
#
|
148
150
|
# * `PlatformCredential` – The credential received from the notification
|
149
151
|
# service. For APNS/APNS\_SANDBOX, PlatformCredential is private key.
|
150
|
-
# For
|
152
|
+
# For FCM, PlatformCredential is "API key". For ADM,
|
151
153
|
# PlatformCredential is "client secret".
|
152
154
|
#
|
153
155
|
# * `PlatformPrincipal` – The principal received from the notification
|
154
156
|
# service. For APNS/APNS\_SANDBOX, PlatformPrincipal is SSL
|
155
|
-
# certificate. For
|
157
|
+
# certificate. For FCM, PlatformPrincipal is not applicable. For ADM,
|
156
158
|
# PlatformPrincipal is "client id".
|
157
159
|
#
|
158
160
|
# * `EventEndpointCreated` – Topic ARN to which EndpointCreated event
|
@@ -6,6 +6,7 @@
|
|
6
6
|
# WARNING ABOUT GENERATED CODE
|
7
7
|
|
8
8
|
module Aws::SNS
|
9
|
+
|
9
10
|
class PlatformEndpoint
|
10
11
|
|
11
12
|
extend Aws::Deprecations
|
@@ -21,6 +22,7 @@ module Aws::SNS
|
|
21
22
|
@arn = extract_arn(args, options)
|
22
23
|
@data = options.delete(:data)
|
23
24
|
@client = options.delete(:client) || Client.new(options)
|
25
|
+
@waiter_block_warned = false
|
24
26
|
end
|
25
27
|
|
26
28
|
# @!group Read-Only Attributes
|
@@ -45,6 +47,10 @@ module Aws::SNS
|
|
45
47
|
# an app and mobile device. This is returned from the notification
|
46
48
|
# service when an app and mobile device are registered with the
|
47
49
|
# notification service.
|
50
|
+
#
|
51
|
+
# <note markdown="1"> The device token for the iOS platform is returned in lowercase.
|
52
|
+
#
|
53
|
+
# </note>
|
48
54
|
# @return [Hash<String,String>]
|
49
55
|
def attributes
|
50
56
|
data[:attributes]
|
@@ -129,10 +135,6 @@ module Aws::SNS
|
|
129
135
|
# @option options [required, String] :message
|
130
136
|
# The message you want to send.
|
131
137
|
#
|
132
|
-
# The `Message` parameter is always a string. If you set
|
133
|
-
# `MessageStructure` to `json`, you must string-encode the `Message`
|
134
|
-
# parameter.
|
135
|
-
#
|
136
138
|
# If you are publishing to a topic and you want to send the same message
|
137
139
|
# to all transport protocols, include the text of the message as a
|
138
140
|
# String value. If you want to send different messages for each
|
@@ -208,16 +210,7 @@ module Aws::SNS
|
|
208
210
|
# You can define other top-level keys that define the message you want
|
209
211
|
# to send to a specific transport protocol (e.g., "http").
|
210
212
|
#
|
211
|
-
# For information about sending different messages for each protocol
|
212
|
-
# using the AWS Management Console, go to [Create Different Messages for
|
213
|
-
# Each Protocol][1] in the *Amazon Simple Notification Service Getting
|
214
|
-
# Started Guide*.
|
215
|
-
#
|
216
213
|
# Valid value: `json`
|
217
|
-
#
|
218
|
-
#
|
219
|
-
#
|
220
|
-
# [1]: https://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
|
221
214
|
# @option options [Hash<String,Types::MessageAttributeValue>] :message_attributes
|
222
215
|
# Message attributes for Publish action.
|
223
216
|
# @return [Types::PublishResponse]
|
data/lib/aws-sdk-sns/resource.rb
CHANGED
@@ -6,6 +6,18 @@
|
|
6
6
|
# WARNING ABOUT GENERATED CODE
|
7
7
|
|
8
8
|
module Aws::SNS
|
9
|
+
|
10
|
+
# This class provides a resource oriented interface for SNS.
|
11
|
+
# To create a resource object:
|
12
|
+
#
|
13
|
+
# resource = Aws::SNS::Resource.new(region: 'us-west-2')
|
14
|
+
#
|
15
|
+
# You can supply a client object with custom configuration that will be used for all resource operations.
|
16
|
+
# If you do not pass `:client`, a default client will be constructed.
|
17
|
+
#
|
18
|
+
# client = Aws::SNS::Client.new(region: 'us-west-2')
|
19
|
+
# resource = Aws::SNS::Resource.new(client: client)
|
20
|
+
#
|
9
21
|
class Resource
|
10
22
|
|
11
23
|
# @param options ({})
|
@@ -37,8 +49,8 @@ module Aws::SNS
|
|
37
49
|
# between 1 and 256 characters long.
|
38
50
|
# @option options [required, String] :platform
|
39
51
|
# The following platforms are supported: ADM (Amazon Device Messaging),
|
40
|
-
# APNS (Apple Push Notification Service), APNS\_SANDBOX, and
|
41
|
-
# Cloud Messaging).
|
52
|
+
# APNS (Apple Push Notification Service), APNS\_SANDBOX, and FCM
|
53
|
+
# (Firebase Cloud Messaging).
|
42
54
|
# @option options [required, Hash<String,String>] :attributes
|
43
55
|
# For a list of attributes, see [SetPlatformApplicationAttributes][1]
|
44
56
|
#
|
@@ -106,6 +118,11 @@ module Aws::SNS
|
|
106
118
|
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
107
119
|
# @option options [Array<Types::Tag>] :tags
|
108
120
|
# The list of tags to add to a new topic.
|
121
|
+
#
|
122
|
+
# <note markdown="1"> To be able to tag a topic on creation, you must have the
|
123
|
+
# `sns:CreateTopic` and `sns:TagResource` permissions.
|
124
|
+
#
|
125
|
+
# </note>
|
109
126
|
# @return [Topic]
|
110
127
|
def create_topic(options = {})
|
111
128
|
resp = @client.create_topic(options)
|
@@ -6,6 +6,7 @@
|
|
6
6
|
# WARNING ABOUT GENERATED CODE
|
7
7
|
|
8
8
|
module Aws::SNS
|
9
|
+
|
9
10
|
class Subscription
|
10
11
|
|
11
12
|
extend Aws::Deprecations
|
@@ -21,6 +22,7 @@ module Aws::SNS
|
|
21
22
|
@arn = extract_arn(args, options)
|
22
23
|
@data = options.delete(:data)
|
23
24
|
@client = options.delete(:client) || Client.new(options)
|
25
|
+
@waiter_block_warned = false
|
24
26
|
end
|
25
27
|
|
26
28
|
# @!group Read-Only Attributes
|
@@ -56,6 +58,13 @@ module Aws::SNS
|
|
56
58
|
# the subscription. Raw messages are free of JSON formatting and can
|
57
59
|
# be sent to HTTP/S and Amazon SQS endpoints.
|
58
60
|
#
|
61
|
+
# * `RedrivePolicy` – When specified, sends undeliverable messages to
|
62
|
+
# the specified Amazon SQS dead-letter queue. Messages that can't be
|
63
|
+
# delivered due to client errors (for example, when the subscribed
|
64
|
+
# endpoint is unreachable) or server errors (for example, when the
|
65
|
+
# service that powers the subscribed endpoint becomes unavailable) are
|
66
|
+
# held in the dead-letter queue for further analysis or reprocessing.
|
67
|
+
#
|
59
68
|
# * `SubscriptionArn` – The subscription's ARN.
|
60
69
|
#
|
61
70
|
# * `TopicArn` – The topic ARN that the subscription is associated with.
|
@@ -136,6 +145,13 @@ module Aws::SNS
|
|
136
145
|
# delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
|
137
146
|
# for the endpoints to process JSON formatting, which is otherwise
|
138
147
|
# created for Amazon SNS metadata.
|
148
|
+
#
|
149
|
+
# * `RedrivePolicy` – When specified, sends undeliverable messages to
|
150
|
+
# the specified Amazon SQS dead-letter queue. Messages that can't be
|
151
|
+
# delivered due to client errors (for example, when the subscribed
|
152
|
+
# endpoint is unreachable) or server errors (for example, when the
|
153
|
+
# service that powers the subscribed endpoint becomes unavailable) are
|
154
|
+
# held in the dead-letter queue for further analysis or reprocessing.
|
139
155
|
# @option options [String] :attribute_value
|
140
156
|
# The new value for the attribute in JSON format.
|
141
157
|
# @return [EmptyStructure]
|
data/lib/aws-sdk-sns/topic.rb
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
# WARNING ABOUT GENERATED CODE
|
7
7
|
|
8
8
|
module Aws::SNS
|
9
|
+
|
9
10
|
class Topic
|
10
11
|
|
11
12
|
extend Aws::Deprecations
|
@@ -21,6 +22,7 @@ module Aws::SNS
|
|
21
22
|
@arn = extract_arn(args, options)
|
22
23
|
@data = options.delete(:data)
|
23
24
|
@client = options.delete(:client) || Client.new(options)
|
25
|
+
@waiter_block_warned = false
|
24
26
|
end
|
25
27
|
|
26
28
|
# @!group Read-Only Attributes
|
@@ -33,30 +35,45 @@ module Aws::SNS
|
|
33
35
|
# A map of the topic's attributes. Attributes in this map include the
|
34
36
|
# following:
|
35
37
|
#
|
36
|
-
# * `
|
38
|
+
# * `DeliveryPolicy` – The JSON serialization of the topic's delivery
|
39
|
+
# policy.
|
40
|
+
#
|
41
|
+
# * `DisplayName` – The human-readable name used in the `From` field for
|
42
|
+
# notifications to `email` and `email-json` endpoints.
|
43
|
+
#
|
44
|
+
# * `Owner` – The AWS account ID of the topic's owner.
|
45
|
+
#
|
46
|
+
# * `Policy` – The JSON serialization of the topic's access control
|
47
|
+
# policy.
|
37
48
|
#
|
38
|
-
# * `
|
49
|
+
# * `SubscriptionsConfirmed` – The number of confirmed subscriptions for
|
50
|
+
# the topic.
|
39
51
|
#
|
40
|
-
# * `
|
41
|
-
#
|
52
|
+
# * `SubscriptionsDeleted` – The number of deleted subscriptions for the
|
53
|
+
# topic.
|
42
54
|
#
|
43
|
-
# * `
|
44
|
-
# for
|
55
|
+
# * `SubscriptionsPending` – The number of subscriptions pending
|
56
|
+
# confirmation for the topic.
|
45
57
|
#
|
46
|
-
# * `
|
47
|
-
# confirmation on this topic
|
58
|
+
# * `TopicArn` – The topic's ARN.
|
48
59
|
#
|
49
|
-
# * `
|
50
|
-
#
|
60
|
+
# * `EffectiveDeliveryPolicy` – Yhe JSON serialization of the effective
|
61
|
+
# delivery policy, taking system defaults into account.
|
51
62
|
#
|
52
|
-
#
|
53
|
-
# topic
|
63
|
+
# The following attribute applies only to [server-side-encryption][1]\:
|
54
64
|
#
|
55
|
-
# * `
|
56
|
-
#
|
65
|
+
# * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
|
66
|
+
# (CMK) for Amazon SNS or a custom CMK. For more information, see [Key
|
67
|
+
# Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
|
68
|
+
# Management Service API Reference*.
|
57
69
|
#
|
58
|
-
#
|
59
|
-
#
|
70
|
+
# ^
|
71
|
+
#
|
72
|
+
#
|
73
|
+
#
|
74
|
+
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
75
|
+
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
76
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
60
77
|
# @return [Hash<String,String>]
|
61
78
|
def attributes
|
62
79
|
data[:attributes]
|
@@ -116,7 +133,7 @@ module Aws::SNS
|
|
116
133
|
# @option options [required, Array<String>] :action_name
|
117
134
|
# The action you want to allow for the specified principal(s).
|
118
135
|
#
|
119
|
-
# Valid values:
|
136
|
+
# Valid values: Any Amazon SNS action name, for example `Publish`.
|
120
137
|
# @return [EmptyStructure]
|
121
138
|
def add_permission(options = {})
|
122
139
|
options = options.merge(topic_arn: @arn)
|
@@ -189,10 +206,6 @@ module Aws::SNS
|
|
189
206
|
# @option options [required, String] :message
|
190
207
|
# The message you want to send.
|
191
208
|
#
|
192
|
-
# The `Message` parameter is always a string. If you set
|
193
|
-
# `MessageStructure` to `json`, you must string-encode the `Message`
|
194
|
-
# parameter.
|
195
|
-
#
|
196
209
|
# If you are publishing to a topic and you want to send the same message
|
197
210
|
# to all transport protocols, include the text of the message as a
|
198
211
|
# String value. If you want to send different messages for each
|
@@ -268,16 +281,7 @@ module Aws::SNS
|
|
268
281
|
# You can define other top-level keys that define the message you want
|
269
282
|
# to send to a specific transport protocol (e.g., "http").
|
270
283
|
#
|
271
|
-
# For information about sending different messages for each protocol
|
272
|
-
# using the AWS Management Console, go to [Create Different Messages for
|
273
|
-
# Each Protocol][1] in the *Amazon Simple Notification Service Getting
|
274
|
-
# Started Guide*.
|
275
|
-
#
|
276
284
|
# Valid value: `json`
|
277
|
-
#
|
278
|
-
#
|
279
|
-
#
|
280
|
-
# [1]: https://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
|
281
285
|
# @option options [Hash<String,Types::MessageAttributeValue>] :message_attributes
|
282
286
|
# Message attributes for Publish action.
|
283
287
|
# @return [Types::PublishResponse]
|
@@ -376,17 +380,17 @@ module Aws::SNS
|
|
376
380
|
# * `application` – delivery of JSON-encoded message to an EndpointArn
|
377
381
|
# for a mobile app and device.
|
378
382
|
#
|
379
|
-
# * `lambda` – delivery of JSON-encoded message to an
|
383
|
+
# * `lambda` – delivery of JSON-encoded message to an Amazon Lambda
|
380
384
|
# function.
|
381
385
|
# @option options [String] :endpoint
|
382
386
|
# The endpoint that you want to receive notifications. Endpoints vary by
|
383
387
|
# protocol:
|
384
388
|
#
|
385
389
|
# * For the `http` protocol, the endpoint is an URL beginning with
|
386
|
-
#
|
390
|
+
# `http://`
|
387
391
|
#
|
388
392
|
# * For the `https` protocol, the endpoint is a URL beginning with
|
389
|
-
#
|
393
|
+
# `https://`
|
390
394
|
#
|
391
395
|
# * For the `email` protocol, the endpoint is an email address
|
392
396
|
#
|
@@ -401,8 +405,8 @@ module Aws::SNS
|
|
401
405
|
# * For the `application` protocol, the endpoint is the EndpointArn of a
|
402
406
|
# mobile app and device.
|
403
407
|
#
|
404
|
-
# * For the `lambda` protocol, the endpoint is the ARN of an
|
405
|
-
# function.
|
408
|
+
# * For the `lambda` protocol, the endpoint is the ARN of an Amazon
|
409
|
+
# Lambda function.
|
406
410
|
# @option options [Hash<String,String>] :attributes
|
407
411
|
# A map of attributes with their corresponding values.
|
408
412
|
#
|
@@ -420,18 +424,27 @@ module Aws::SNS
|
|
420
424
|
# delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
|
421
425
|
# for the endpoints to process JSON formatting, which is otherwise
|
422
426
|
# created for Amazon SNS metadata.
|
427
|
+
#
|
428
|
+
# * `RedrivePolicy` – When specified, sends undeliverable messages to
|
429
|
+
# the specified Amazon SQS dead-letter queue. Messages that can't be
|
430
|
+
# delivered due to client errors (for example, when the subscribed
|
431
|
+
# endpoint is unreachable) or server errors (for example, when the
|
432
|
+
# service that powers the subscribed endpoint becomes unavailable) are
|
433
|
+
# held in the dead-letter queue for further analysis or reprocessing.
|
423
434
|
# @option options [Boolean] :return_subscription_arn
|
424
435
|
# Sets whether the response from the `Subscribe` request includes the
|
425
436
|
# subscription ARN, even if the subscription is not yet confirmed.
|
426
437
|
#
|
427
|
-
# If you
|
428
|
-
#
|
429
|
-
#
|
430
|
-
#
|
431
|
-
#
|
438
|
+
# * If you have the subscription ARN returned, the response includes the
|
439
|
+
# ARN in all cases, even if the subscription is not yet confirmed.
|
440
|
+
#
|
441
|
+
# * If you don't have the subscription ARN returned, in addition to the
|
442
|
+
# ARN for confirmed subscriptions, the response also includes the
|
443
|
+
# `pending subscription` ARN value for subscriptions that aren't yet
|
444
|
+
# confirmed. A subscription becomes confirmed when the subscriber
|
445
|
+
# calls the `ConfirmSubscription` action with a confirmation token.
|
432
446
|
#
|
433
|
-
# If you set this parameter to `true`,
|
434
|
-
# all cases, even if the subscription is not yet confirmed.
|
447
|
+
# If you set this parameter to `true`, .
|
435
448
|
#
|
436
449
|
# The default value is `false`.
|
437
450
|
# @return [Subscription]
|