aws-sdk-sns 1.19.0 → 1.24.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.
- checksums.yaml +5 -5
- data/lib/aws-sdk-sns.rb +7 -4
- data/lib/aws-sdk-sns/client.rb +131 -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]
|