aws-sdk-sns 1.0.0.rc1 → 1.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c47c6b563e6b9fc2cb7deb4f74d46dbb2837ed73
4
- data.tar.gz: e477dc5753d2df7b781a9922f8bda0d40139c05a
3
+ metadata.gz: 92b5a54b3a700720da744940ef8c300aeaa20fc8
4
+ data.tar.gz: 884e104bbe54d392c76785119ba7bab4a8e22aa0
5
5
  SHA512:
6
- metadata.gz: 888083aafb3c99bdf8f6f26a97c452f730d0dda5c4e1eab83184a22a001c6b68369a0ce71d55eb6aa9c48646b97f9603c3e93df9e8546238390c95413c96c6c4
7
- data.tar.gz: 8dd03e76f55a8aa439335466f3d81e00ea5130bec2898e01f4134da2a793087249d6a9e0f0cca8e3c3f58d850fc1f0603f50b3bf49fcb98e5cfb0d4ed9833977
6
+ metadata.gz: a4274e3400472ca93aa26c2b3c3a4e7935e8b9f38f38e61c17ffb94296576611dae78946ebb0fa8025ccfd12d1ee0413ec049b9d4f099cea1ae88e1f7dba6d60
7
+ data.tar.gz: d1ed72c82fed958955d9561dd558bdacc85a21238fd93e5972b2020e0845ac41088ae224084e6a267fc75caf52d9b80421227960a7e00f726922fa86121fb1c6
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -46,6 +46,6 @@ require_relative 'aws-sdk-sns/customizations'
46
46
  # @service
47
47
  module Aws::SNS
48
48
 
49
- GEM_VERSION = '1.0.0.rc1'
49
+ GEM_VERSION = '1.0.0.rc2'
50
50
 
51
51
  end
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -18,1361 +18,1600 @@ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
18
  require 'aws-sdk-core/plugins/response_paging.rb'
19
19
  require 'aws-sdk-core/plugins/stub_responses.rb'
20
20
  require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
21
22
  require 'aws-sdk-core/plugins/signature_v4.rb'
22
23
  require 'aws-sdk-core/plugins/protocols/query.rb'
23
24
 
24
25
  Aws::Plugins::GlobalConfiguration.add_identifier(:sns)
25
26
 
26
- module Aws
27
- module SNS
28
- class Client < Seahorse::Client::Base
27
+ module Aws::SNS
28
+ class Client < Seahorse::Client::Base
29
29
 
30
- include Aws::ClientStubs
30
+ include Aws::ClientStubs
31
31
 
32
- @identifier = :sns
32
+ @identifier = :sns
33
33
 
34
- set_api(ClientApi::API)
34
+ set_api(ClientApi::API)
35
35
 
36
- add_plugin(Seahorse::Client::Plugins::ContentLength)
37
- add_plugin(Aws::Plugins::CredentialsConfiguration)
38
- add_plugin(Aws::Plugins::Logging)
39
- add_plugin(Aws::Plugins::ParamConverter)
40
- add_plugin(Aws::Plugins::ParamValidator)
41
- add_plugin(Aws::Plugins::UserAgent)
42
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
- add_plugin(Aws::Plugins::RetryErrors)
44
- add_plugin(Aws::Plugins::GlobalConfiguration)
45
- add_plugin(Aws::Plugins::RegionalEndpoint)
46
- add_plugin(Aws::Plugins::ResponsePaging)
47
- add_plugin(Aws::Plugins::StubResponses)
48
- add_plugin(Aws::Plugins::IdempotencyToken)
49
- add_plugin(Aws::Plugins::SignatureV4)
50
- add_plugin(Aws::Plugins::Protocols::Query)
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::JsonvalueConverter)
50
+ add_plugin(Aws::Plugins::SignatureV4)
51
+ add_plugin(Aws::Plugins::Protocols::Query)
51
52
 
52
- # @option options [required, Aws::CredentialProvider] :credentials
53
- # Your AWS credentials. This can be an instance of any one of the
54
- # following classes:
55
- #
56
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
- # credentials.
58
- #
59
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
- # from an EC2 IMDS on an EC2 instance.
61
- #
62
- # * `Aws::SharedCredentials` - Used for loading credentials from a
63
- # shared file, such as `~/.aws/config`.
64
- #
65
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
- #
67
- # When `:credentials` are not configured directly, the following
68
- # locations will be searched for credentials:
69
- #
70
- # * `Aws.config[:credentials]`
71
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
- # * `~/.aws/credentials`
74
- # * `~/.aws/config`
75
- # * EC2 IMDS instance profile - When used by default, the timeouts are
76
- # very aggressive. Construct and pass an instance of
77
- # `Aws::InstanceProfileCredentails` to enable retries and extended
78
- # timeouts.
79
- # @option options [required, String] :region
80
- # The AWS region to connect to. The configured `:region` is
81
- # used to determine the service `:endpoint`. When not passed,
82
- # a default `:region` is search for in the following locations:
83
- #
84
- # * `Aws.config[:region]`
85
- # * `ENV['AWS_REGION']`
86
- # * `ENV['AMAZON_REGION']`
87
- # * `ENV['AWS_DEFAULT_REGION']`
88
- # * `~/.aws/credentials`
89
- # * `~/.aws/config`
90
- # @option options [String] :access_key_id
91
- # @option options [Boolean] :convert_params (true)
92
- # When `true`, an attempt is made to coerce request parameters into
93
- # the required types.
94
- # @option options [String] :endpoint
95
- # The client endpoint is normally constructed from the `:region`
96
- # option. You should only configure an `:endpoint` when connecting
97
- # to test endpoints. This should be avalid HTTP(S) URI.
98
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
- # The log formatter.
100
- # @option options [Symbol] :log_level (:info)
101
- # The log level to send messages to the `:logger` at.
102
- # @option options [Logger] :logger
103
- # The Logger instance to send log messages to. If this option
104
- # is not set, logging will be disabled.
105
- # @option options [String] :profile ("default")
106
- # Used when loading credentials from the shared credentials file
107
- # at HOME/.aws/credentials. When not specified, 'default' is used.
108
- # @option options [Integer] :retry_limit (3)
109
- # The maximum number of times to retry failed requests. Only
110
- # ~ 500 level server errors and certain ~ 400 level client errors
111
- # are retried. Generally, these are throttling errors, data
112
- # checksum errors, networking errors, timeout errors and auth
113
- # errors from expired credentials.
114
- # @option options [String] :secret_access_key
115
- # @option options [String] :session_token
116
- # @option options [Boolean] :stub_responses (false)
117
- # Causes the client to return stubbed responses. By default
118
- # fake responses are generated and returned. You can specify
119
- # the response data to return or errors to raise by calling
120
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
121
- #
122
- # ** Please note ** When response stubbing is enabled, no HTTP
123
- # requests are made, and retries are disabled.
124
- # @option options [Boolean] :validate_params (true)
125
- # When `true`, request parameters are validated before
126
- # sending the request.
127
- def initialize(*args)
128
- super
129
- end
53
+ # @option options [required, Aws::CredentialProvider] :credentials
54
+ # Your AWS credentials. This can be an instance of any one of the
55
+ # following classes:
56
+ #
57
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
58
+ # credentials.
59
+ #
60
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
61
+ # from an EC2 IMDS on an EC2 instance.
62
+ #
63
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
64
+ # shared file, such as `~/.aws/config`.
65
+ #
66
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
67
+ #
68
+ # When `:credentials` are not configured directly, the following
69
+ # locations will be searched for credentials:
70
+ #
71
+ # * `Aws.config[:credentials]`
72
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
73
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
74
+ # * `~/.aws/credentials`
75
+ # * `~/.aws/config`
76
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
77
+ # very aggressive. Construct and pass an instance of
78
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
79
+ # timeouts.
80
+ #
81
+ # @option options [required, String] :region
82
+ # The AWS region to connect to. The configured `:region` is
83
+ # used to determine the service `:endpoint`. When not passed,
84
+ # a default `:region` is search for in the following locations:
85
+ #
86
+ # * `Aws.config[:region]`
87
+ # * `ENV['AWS_REGION']`
88
+ # * `ENV['AMAZON_REGION']`
89
+ # * `ENV['AWS_DEFAULT_REGION']`
90
+ # * `~/.aws/credentials`
91
+ # * `~/.aws/config`
92
+ #
93
+ # @option options [String] :access_key_id
94
+ #
95
+ # @option options [Boolean] :convert_params (true)
96
+ # When `true`, an attempt is made to coerce request parameters into
97
+ # the required types.
98
+ #
99
+ # @option options [String] :endpoint
100
+ # The client endpoint is normally constructed from the `:region`
101
+ # option. You should only configure an `:endpoint` when connecting
102
+ # to test endpoints. This should be avalid HTTP(S) URI.
103
+ #
104
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
105
+ # The log formatter.
106
+ #
107
+ # @option options [Symbol] :log_level (:info)
108
+ # The log level to send messages to the `:logger` at.
109
+ #
110
+ # @option options [Logger] :logger
111
+ # The Logger instance to send log messages to. If this option
112
+ # is not set, logging will be disabled.
113
+ #
114
+ # @option options [String] :profile ("default")
115
+ # Used when loading credentials from the shared credentials file
116
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
117
+ #
118
+ # @option options [Integer] :retry_limit (3)
119
+ # The maximum number of times to retry failed requests. Only
120
+ # ~ 500 level server errors and certain ~ 400 level client errors
121
+ # are retried. Generally, these are throttling errors, data
122
+ # checksum errors, networking errors, timeout errors and auth
123
+ # errors from expired credentials.
124
+ #
125
+ # @option options [String] :secret_access_key
126
+ #
127
+ # @option options [String] :session_token
128
+ #
129
+ # @option options [Boolean] :stub_responses (false)
130
+ # Causes the client to return stubbed responses. By default
131
+ # fake responses are generated and returned. You can specify
132
+ # the response data to return or errors to raise by calling
133
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
134
+ #
135
+ # ** Please note ** When response stubbing is enabled, no HTTP
136
+ # requests are made, and retries are disabled.
137
+ #
138
+ # @option options [Boolean] :validate_params (true)
139
+ # When `true`, request parameters are validated before
140
+ # sending the request.
141
+ #
142
+ def initialize(*args)
143
+ super
144
+ end
130
145
 
131
- # @!group API Operations
146
+ # @!group API Operations
132
147
 
133
- # Adds a statement to a topic's access control policy, granting access
134
- # for the specified AWS accounts to the specified actions.
135
- # @option params [required, String] :topic_arn
136
- # The ARN of the topic whose access control policy you wish to modify.
137
- # @option params [required, String] :label
138
- # A unique identifier for the new policy statement.
139
- # @option params [required, Array<String>] :aws_account_id
140
- # The AWS account IDs of the users (principals) who will be given access
141
- # to the specified actions. The users must have AWS accounts, but do not
142
- # need to be signed up for this service.
143
- # @option params [required, Array<String>] :action_name
144
- # The action you want to allow for the specified principal(s).
145
- #
146
- # Valid values: any Amazon SNS action name.
147
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
148
- #
149
- # @example Request syntax with placeholder values
150
- # resp = client.add_permission({
151
- # topic_arn: "topicARN", # required
152
- # label: "label", # required
153
- # aws_account_id: ["delegate"], # required
154
- # action_name: ["action"], # required
155
- # })
156
- # @overload add_permission(params = {})
157
- # @param [Hash] params ({})
158
- def add_permission(params = {}, options = {})
159
- req = build_request(:add_permission, params)
160
- req.send_request(options)
161
- end
162
-
163
- # Accepts a phone number and indicates whether the phone holder has
164
- # opted out of receiving SMS messages from your account. You cannot send
165
- # SMS messages to a number that is opted out.
166
- #
167
- # To resume sending messages, you can opt in the number by using the
168
- # `OptInPhoneNumber` action.
169
- # @option params [required, String] :phone_number
170
- # The phone number for which you want to check the opt out status.
171
- # @return [Types::CheckIfPhoneNumberIsOptedOutResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
172
- #
173
- # * {Types::CheckIfPhoneNumberIsOptedOutResponse#is_opted_out #isOptedOut} => Boolean
174
- #
175
- # @example Request syntax with placeholder values
176
- # resp = client.check_if_phone_number_is_opted_out({
177
- # phone_number: "PhoneNumber", # required
178
- # })
179
- #
180
- # @example Response structure
181
- # resp.is_opted_out #=> Boolean
182
- # @overload check_if_phone_number_is_opted_out(params = {})
183
- # @param [Hash] params ({})
184
- def check_if_phone_number_is_opted_out(params = {}, options = {})
185
- req = build_request(:check_if_phone_number_is_opted_out, params)
186
- req.send_request(options)
187
- end
148
+ # Adds a statement to a topic's access control policy, granting access
149
+ # for the specified AWS accounts to the specified actions.
150
+ #
151
+ # @option params [required, String] :topic_arn
152
+ # The ARN of the topic whose access control policy you wish to modify.
153
+ #
154
+ # @option params [required, String] :label
155
+ # A unique identifier for the new policy statement.
156
+ #
157
+ # @option params [required, Array<String>] :aws_account_id
158
+ # The AWS account IDs of the users (principals) who will be given access
159
+ # to the specified actions. The users must have AWS accounts, but do not
160
+ # need to be signed up for this service.
161
+ #
162
+ # @option params [required, Array<String>] :action_name
163
+ # The action you want to allow for the specified principal(s).
164
+ #
165
+ # Valid values: any Amazon SNS action name.
166
+ #
167
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
168
+ #
169
+ # @example Request syntax with placeholder values
170
+ #
171
+ # resp = client.add_permission({
172
+ # topic_arn: "topicARN", # required
173
+ # label: "label", # required
174
+ # aws_account_id: ["delegate"], # required
175
+ # action_name: ["action"], # required
176
+ # })
177
+ #
178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/AddPermission AWS API Documentation
179
+ #
180
+ # @overload add_permission(params = {})
181
+ # @param [Hash] params ({})
182
+ def add_permission(params = {}, options = {})
183
+ req = build_request(:add_permission, params)
184
+ req.send_request(options)
185
+ end
188
186
 
189
- # Verifies an endpoint owner's intent to receive messages by validating
190
- # the token sent to the endpoint by an earlier `Subscribe` action. If
191
- # the token is valid, the action creates a new subscription and returns
192
- # its Amazon Resource Name (ARN). This call requires an AWS signature
193
- # only when the `AuthenticateOnUnsubscribe` flag is set to "true".
194
- # @option params [required, String] :topic_arn
195
- # The ARN of the topic for which you wish to confirm a subscription.
196
- # @option params [required, String] :token
197
- # Short-lived token sent to an endpoint during the `Subscribe` action.
198
- # @option params [String] :authenticate_on_unsubscribe
199
- # Disallows unauthenticated unsubscribes of the subscription. If the
200
- # value of this parameter is `true` and the request has an AWS
201
- # signature, then only the topic owner and the subscription owner can
202
- # unsubscribe the endpoint. The unsubscribe action requires AWS
203
- # authentication.
204
- # @return [Types::ConfirmSubscriptionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
205
- #
206
- # * {Types::ConfirmSubscriptionResponse#subscription_arn #SubscriptionArn} => String
207
- #
208
- # @example Request syntax with placeholder values
209
- # resp = client.confirm_subscription({
210
- # topic_arn: "topicARN", # required
211
- # token: "token", # required
212
- # authenticate_on_unsubscribe: "authenticateOnUnsubscribe",
213
- # })
214
- #
215
- # @example Response structure
216
- # resp.subscription_arn #=> String
217
- # @overload confirm_subscription(params = {})
218
- # @param [Hash] params ({})
219
- def confirm_subscription(params = {}, options = {})
220
- req = build_request(:confirm_subscription, params)
221
- req.send_request(options)
222
- end
187
+ # Accepts a phone number and indicates whether the phone holder has
188
+ # opted out of receiving SMS messages from your account. You cannot send
189
+ # SMS messages to a number that is opted out.
190
+ #
191
+ # To resume sending messages, you can opt in the number by using the
192
+ # `OptInPhoneNumber` action.
193
+ #
194
+ # @option params [required, String] :phone_number
195
+ # The phone number for which you want to check the opt out status.
196
+ #
197
+ # @return [Types::CheckIfPhoneNumberIsOptedOutResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
198
+ #
199
+ # * {Types::CheckIfPhoneNumberIsOptedOutResponse#is_opted_out #is_opted_out} => Boolean
200
+ #
201
+ # @example Request syntax with placeholder values
202
+ #
203
+ # resp = client.check_if_phone_number_is_opted_out({
204
+ # phone_number: "PhoneNumber", # required
205
+ # })
206
+ #
207
+ # @example Response structure
208
+ #
209
+ # resp.is_opted_out #=> Boolean
210
+ #
211
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CheckIfPhoneNumberIsOptedOut AWS API Documentation
212
+ #
213
+ # @overload check_if_phone_number_is_opted_out(params = {})
214
+ # @param [Hash] params ({})
215
+ def check_if_phone_number_is_opted_out(params = {}, options = {})
216
+ req = build_request(:check_if_phone_number_is_opted_out, params)
217
+ req.send_request(options)
218
+ end
223
219
 
224
- # Creates a platform application object for one of the supported push
225
- # notification services, such as APNS and GCM, to which devices and
226
- # mobile apps may register. You must specify PlatformPrincipal and
227
- # PlatformCredential attributes when using the
228
- # `CreatePlatformApplication` action. The PlatformPrincipal is received
229
- # from the notification service. For APNS/APNS\_SANDBOX,
230
- # PlatformPrincipal is "SSL certificate". For GCM, PlatformPrincipal
231
- # is not applicable. For ADM, PlatformPrincipal is "client id". The
232
- # PlatformCredential is also received from the notification service. For
233
- # WNS, PlatformPrincipal is "Package Security Identifier". For MPNS,
234
- # PlatformPrincipal is "TLS certificate". For Baidu, PlatformPrincipal
235
- # is "API key".
236
- #
237
- # For APNS/APNS\_SANDBOX, PlatformCredential is "private key". For
238
- # GCM, PlatformCredential is "API key". For ADM, PlatformCredential is
239
- # "client secret". For WNS, PlatformCredential is "secret key". For
240
- # MPNS, PlatformCredential is "private key". For Baidu,
241
- # PlatformCredential is "secret key". The PlatformApplicationArn that
242
- # is returned when using `CreatePlatformApplication` is then used as an
243
- # attribute for the `CreatePlatformEndpoint` action. For more
244
- # information, see [Using Amazon SNS Mobile Push Notifications][1]. For
245
- # more information about obtaining the PlatformPrincipal and
246
- # PlatformCredential for each of the supported push notification
247
- # services, see [Getting Started with Apple Push Notification
248
- # Service][2], [Getting Started with Amazon Device Messaging][3],
249
- # [Getting Started with Baidu Cloud Push][4], [Getting Started with
250
- # Google Cloud Messaging for Android][5], [Getting Started with
251
- # MPNS][6], or [Getting Started with WNS][7].
252
- #
253
- #
254
- #
255
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
256
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-apns.html
257
- # [3]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-adm.html
258
- # [4]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-baidu.html
259
- # [5]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-gcm.html
260
- # [6]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-mpns.html
261
- # [7]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-wns.html
262
- # @option params [required, String] :name
263
- # Application names must be made up of only uppercase and lowercase
264
- # ASCII letters, numbers, underscores, hyphens, and periods, and must be
265
- # between 1 and 256 characters long.
266
- # @option params [required, String] :platform
267
- # The following platforms are supported: ADM (Amazon Device Messaging),
268
- # APNS (Apple Push Notification Service), APNS\_SANDBOX, and GCM (Google
269
- # Cloud Messaging).
270
- # @option params [required, Hash<String,String>] :attributes
271
- # For a list of attributes, see [SetPlatformApplicationAttributes][1]
272
- #
273
- #
274
- #
275
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetPlatformApplicationAttributes.html
276
- # @return [Types::CreatePlatformApplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
277
- #
278
- # * {Types::CreatePlatformApplicationResponse#platform_application_arn #PlatformApplicationArn} => String
279
- #
280
- # @example Request syntax with placeholder values
281
- # resp = client.create_platform_application({
282
- # name: "String", # required
283
- # platform: "String", # required
284
- # attributes: { # required
285
- # "String" => "String",
286
- # },
287
- # })
288
- #
289
- # @example Response structure
290
- # resp.platform_application_arn #=> String
291
- # @overload create_platform_application(params = {})
292
- # @param [Hash] params ({})
293
- def create_platform_application(params = {}, options = {})
294
- req = build_request(:create_platform_application, params)
295
- req.send_request(options)
296
- end
220
+ # Verifies an endpoint owner's intent to receive messages by validating
221
+ # the token sent to the endpoint by an earlier `Subscribe` action. If
222
+ # the token is valid, the action creates a new subscription and returns
223
+ # its Amazon Resource Name (ARN). This call requires an AWS signature
224
+ # only when the `AuthenticateOnUnsubscribe` flag is set to "true".
225
+ #
226
+ # @option params [required, String] :topic_arn
227
+ # The ARN of the topic for which you wish to confirm a subscription.
228
+ #
229
+ # @option params [required, String] :token
230
+ # Short-lived token sent to an endpoint during the `Subscribe` action.
231
+ #
232
+ # @option params [String] :authenticate_on_unsubscribe
233
+ # Disallows unauthenticated unsubscribes of the subscription. If the
234
+ # value of this parameter is `true` and the request has an AWS
235
+ # signature, then only the topic owner and the subscription owner can
236
+ # unsubscribe the endpoint. The unsubscribe action requires AWS
237
+ # authentication.
238
+ #
239
+ # @return [Types::ConfirmSubscriptionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
240
+ #
241
+ # * {Types::ConfirmSubscriptionResponse#subscription_arn #subscription_arn} => String
242
+ #
243
+ # @example Request syntax with placeholder values
244
+ #
245
+ # resp = client.confirm_subscription({
246
+ # topic_arn: "topicARN", # required
247
+ # token: "token", # required
248
+ # authenticate_on_unsubscribe: "authenticateOnUnsubscribe",
249
+ # })
250
+ #
251
+ # @example Response structure
252
+ #
253
+ # resp.subscription_arn #=> String
254
+ #
255
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ConfirmSubscription AWS API Documentation
256
+ #
257
+ # @overload confirm_subscription(params = {})
258
+ # @param [Hash] params ({})
259
+ def confirm_subscription(params = {}, options = {})
260
+ req = build_request(:confirm_subscription, params)
261
+ req.send_request(options)
262
+ end
297
263
 
298
- # Creates an endpoint for a device and mobile app on one of the
299
- # supported push notification services, such as GCM and APNS.
300
- # `CreatePlatformEndpoint` requires the PlatformApplicationArn that is
301
- # returned from `CreatePlatformApplication`. The EndpointArn that is
302
- # returned when using `CreatePlatformEndpoint` can then be used by the
303
- # `Publish` action to send a message to a mobile app or by the
304
- # `Subscribe` action for subscription to a topic. The
305
- # `CreatePlatformEndpoint` action is idempotent, so if the requester
306
- # already owns an endpoint with the same device token and attributes,
307
- # that endpoint's ARN is returned without creating a new endpoint. For
308
- # more information, see [Using Amazon SNS Mobile Push Notifications][1].
309
- #
310
- # When using `CreatePlatformEndpoint` with Baidu, two attributes must be
311
- # provided: ChannelId and UserId. The token field must also contain the
312
- # ChannelId. For more information, see [Creating an Amazon SNS Endpoint
313
- # for Baidu][2].
314
- #
315
- #
316
- #
317
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
318
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePushBaiduEndpoint.html
319
- # @option params [required, String] :platform_application_arn
320
- # PlatformApplicationArn returned from CreatePlatformApplication is used
321
- # to create a an endpoint.
322
- # @option params [required, String] :token
323
- # Unique identifier created by the notification service for an app on a
324
- # device. The specific name for Token will vary, depending on which
325
- # notification service is being used. For example, when using APNS as
326
- # the notification service, you need the device token. Alternatively,
327
- # when using GCM or ADM, the device token equivalent is called the
328
- # registration ID.
329
- # @option params [String] :custom_user_data
330
- # Arbitrary user data to associate with the endpoint. Amazon SNS does
331
- # not use this data. The data must be in UTF-8 format and less than 2KB.
332
- # @option params [Hash<String,String>] :attributes
333
- # For a list of attributes, see [SetEndpointAttributes][1].
334
- #
335
- #
336
- #
337
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetEndpointAttributes.html
338
- # @return [Types::CreateEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
339
- #
340
- # * {Types::CreateEndpointResponse#endpoint_arn #EndpointArn} => String
341
- #
342
- # @example Request syntax with placeholder values
343
- # resp = client.create_platform_endpoint({
344
- # platform_application_arn: "String", # required
345
- # token: "String", # required
346
- # custom_user_data: "String",
347
- # attributes: {
348
- # "String" => "String",
349
- # },
350
- # })
351
- #
352
- # @example Response structure
353
- # resp.endpoint_arn #=> String
354
- # @overload create_platform_endpoint(params = {})
355
- # @param [Hash] params ({})
356
- def create_platform_endpoint(params = {}, options = {})
357
- req = build_request(:create_platform_endpoint, params)
358
- req.send_request(options)
359
- end
264
+ # Creates a platform application object for one of the supported push
265
+ # notification services, such as APNS and GCM, to which devices and
266
+ # mobile apps may register. You must specify PlatformPrincipal and
267
+ # PlatformCredential attributes when using the
268
+ # `CreatePlatformApplication` action. The PlatformPrincipal is received
269
+ # from the notification service. For APNS/APNS\_SANDBOX,
270
+ # PlatformPrincipal is "SSL certificate". For GCM, PlatformPrincipal
271
+ # is not applicable. For ADM, PlatformPrincipal is "client id". The
272
+ # PlatformCredential is also received from the notification service. For
273
+ # WNS, PlatformPrincipal is "Package Security Identifier". For MPNS,
274
+ # PlatformPrincipal is "TLS certificate". For Baidu, PlatformPrincipal
275
+ # is "API key".
276
+ #
277
+ # For APNS/APNS\_SANDBOX, PlatformCredential is "private key". For
278
+ # GCM, PlatformCredential is "API key". For ADM, PlatformCredential is
279
+ # "client secret". For WNS, PlatformCredential is "secret key". For
280
+ # MPNS, PlatformCredential is "private key". For Baidu,
281
+ # PlatformCredential is "secret key". The PlatformApplicationArn that
282
+ # is returned when using `CreatePlatformApplication` is then used as an
283
+ # attribute for the `CreatePlatformEndpoint` action. For more
284
+ # information, see [Using Amazon SNS Mobile Push Notifications][1]. For
285
+ # more information about obtaining the PlatformPrincipal and
286
+ # PlatformCredential for each of the supported push notification
287
+ # services, see [Getting Started with Apple Push Notification
288
+ # Service][2], [Getting Started with Amazon Device Messaging][3],
289
+ # [Getting Started with Baidu Cloud Push][4], [Getting Started with
290
+ # Google Cloud Messaging for Android][5], [Getting Started with
291
+ # MPNS][6], or [Getting Started with WNS][7].
292
+ #
293
+ #
294
+ #
295
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
296
+ # [2]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-apns.html
297
+ # [3]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-adm.html
298
+ # [4]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-baidu.html
299
+ # [5]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-gcm.html
300
+ # [6]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-mpns.html
301
+ # [7]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-wns.html
302
+ #
303
+ # @option params [required, String] :name
304
+ # Application names must be made up of only uppercase and lowercase
305
+ # ASCII letters, numbers, underscores, hyphens, and periods, and must be
306
+ # between 1 and 256 characters long.
307
+ #
308
+ # @option params [required, String] :platform
309
+ # The following platforms are supported: ADM (Amazon Device Messaging),
310
+ # APNS (Apple Push Notification Service), APNS\_SANDBOX, and GCM (Google
311
+ # Cloud Messaging).
312
+ #
313
+ # @option params [required, Hash<String,String>] :attributes
314
+ # For a list of attributes, see [SetPlatformApplicationAttributes][1]
315
+ #
316
+ #
317
+ #
318
+ # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetPlatformApplicationAttributes.html
319
+ #
320
+ # @return [Types::CreatePlatformApplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
321
+ #
322
+ # * {Types::CreatePlatformApplicationResponse#platform_application_arn #platform_application_arn} => String
323
+ #
324
+ # @example Request syntax with placeholder values
325
+ #
326
+ # resp = client.create_platform_application({
327
+ # name: "String", # required
328
+ # platform: "String", # required
329
+ # attributes: { # required
330
+ # "String" => "String",
331
+ # },
332
+ # })
333
+ #
334
+ # @example Response structure
335
+ #
336
+ # resp.platform_application_arn #=> String
337
+ #
338
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CreatePlatformApplication AWS API Documentation
339
+ #
340
+ # @overload create_platform_application(params = {})
341
+ # @param [Hash] params ({})
342
+ def create_platform_application(params = {}, options = {})
343
+ req = build_request(:create_platform_application, params)
344
+ req.send_request(options)
345
+ end
360
346
 
361
- # Creates a topic to which notifications can be published. Users can
362
- # create at most 100,000 topics. For more information, see
363
- # [http://aws.amazon.com/sns][1]. This action is idempotent, so if the
364
- # requester already owns a topic with the specified name, that topic's
365
- # ARN is returned without creating a new topic.
366
- #
367
- #
368
- #
369
- # [1]: http://aws.amazon.com/sns/
370
- # @option params [required, String] :name
371
- # The name of the topic you want to create.
372
- #
373
- # Constraints: Topic names must be made up of only uppercase and
374
- # lowercase ASCII letters, numbers, underscores, and hyphens, and must
375
- # be between 1 and 256 characters long.
376
- # @return [Types::CreateTopicResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
377
- #
378
- # * {Types::CreateTopicResponse#topic_arn #TopicArn} => String
379
- #
380
- # @example Request syntax with placeholder values
381
- # resp = client.create_topic({
382
- # name: "topicName", # required
383
- # })
384
- #
385
- # @example Response structure
386
- # resp.topic_arn #=> String
387
- # @overload create_topic(params = {})
388
- # @param [Hash] params ({})
389
- def create_topic(params = {}, options = {})
390
- req = build_request(:create_topic, params)
391
- req.send_request(options)
392
- end
347
+ # Creates an endpoint for a device and mobile app on one of the
348
+ # supported push notification services, such as GCM and APNS.
349
+ # `CreatePlatformEndpoint` requires the PlatformApplicationArn that is
350
+ # returned from `CreatePlatformApplication`. The EndpointArn that is
351
+ # returned when using `CreatePlatformEndpoint` can then be used by the
352
+ # `Publish` action to send a message to a mobile app or by the
353
+ # `Subscribe` action for subscription to a topic. The
354
+ # `CreatePlatformEndpoint` action is idempotent, so if the requester
355
+ # already owns an endpoint with the same device token and attributes,
356
+ # that endpoint's ARN is returned without creating a new endpoint. For
357
+ # more information, see [Using Amazon SNS Mobile Push Notifications][1].
358
+ #
359
+ # When using `CreatePlatformEndpoint` with Baidu, two attributes must be
360
+ # provided: ChannelId and UserId. The token field must also contain the
361
+ # ChannelId. For more information, see [Creating an Amazon SNS Endpoint
362
+ # for Baidu][2].
363
+ #
364
+ #
365
+ #
366
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
367
+ # [2]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePushBaiduEndpoint.html
368
+ #
369
+ # @option params [required, String] :platform_application_arn
370
+ # PlatformApplicationArn returned from CreatePlatformApplication is used
371
+ # to create a an endpoint.
372
+ #
373
+ # @option params [required, String] :token
374
+ # Unique identifier created by the notification service for an app on a
375
+ # device. The specific name for Token will vary, depending on which
376
+ # notification service is being used. For example, when using APNS as
377
+ # the notification service, you need the device token. Alternatively,
378
+ # when using GCM or ADM, the device token equivalent is called the
379
+ # registration ID.
380
+ #
381
+ # @option params [String] :custom_user_data
382
+ # Arbitrary user data to associate with the endpoint. Amazon SNS does
383
+ # not use this data. The data must be in UTF-8 format and less than 2KB.
384
+ #
385
+ # @option params [Hash<String,String>] :attributes
386
+ # For a list of attributes, see [SetEndpointAttributes][1].
387
+ #
388
+ #
389
+ #
390
+ # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetEndpointAttributes.html
391
+ #
392
+ # @return [Types::CreateEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
393
+ #
394
+ # * {Types::CreateEndpointResponse#endpoint_arn #endpoint_arn} => String
395
+ #
396
+ # @example Request syntax with placeholder values
397
+ #
398
+ # resp = client.create_platform_endpoint({
399
+ # platform_application_arn: "String", # required
400
+ # token: "String", # required
401
+ # custom_user_data: "String",
402
+ # attributes: {
403
+ # "String" => "String",
404
+ # },
405
+ # })
406
+ #
407
+ # @example Response structure
408
+ #
409
+ # resp.endpoint_arn #=> String
410
+ #
411
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CreatePlatformEndpoint AWS API Documentation
412
+ #
413
+ # @overload create_platform_endpoint(params = {})
414
+ # @param [Hash] params ({})
415
+ def create_platform_endpoint(params = {}, options = {})
416
+ req = build_request(:create_platform_endpoint, params)
417
+ req.send_request(options)
418
+ end
393
419
 
394
- # Deletes the endpoint for a device and mobile app from Amazon SNS. This
395
- # action is idempotent. For more information, see [Using Amazon SNS
396
- # Mobile Push Notifications][1].
397
- #
398
- # When you delete an endpoint that is also subscribed to a topic, then
399
- # you must also unsubscribe the endpoint from the topic.
400
- #
401
- #
402
- #
403
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
404
- # @option params [required, String] :endpoint_arn
405
- # EndpointArn of endpoint to delete.
406
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
407
- #
408
- # @example Request syntax with placeholder values
409
- # resp = client.delete_endpoint({
410
- # endpoint_arn: "String", # required
411
- # })
412
- # @overload delete_endpoint(params = {})
413
- # @param [Hash] params ({})
414
- def delete_endpoint(params = {}, options = {})
415
- req = build_request(:delete_endpoint, params)
416
- req.send_request(options)
417
- end
420
+ # Creates a topic to which notifications can be published. Users can
421
+ # create at most 100,000 topics. For more information, see
422
+ # [http://aws.amazon.com/sns][1]. This action is idempotent, so if the
423
+ # requester already owns a topic with the specified name, that topic's
424
+ # ARN is returned without creating a new topic.
425
+ #
426
+ #
427
+ #
428
+ # [1]: http://aws.amazon.com/sns/
429
+ #
430
+ # @option params [required, String] :name
431
+ # The name of the topic you want to create.
432
+ #
433
+ # Constraints: Topic names must be made up of only uppercase and
434
+ # lowercase ASCII letters, numbers, underscores, and hyphens, and must
435
+ # be between 1 and 256 characters long.
436
+ #
437
+ # @return [Types::CreateTopicResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
438
+ #
439
+ # * {Types::CreateTopicResponse#topic_arn #topic_arn} => String
440
+ #
441
+ # @example Request syntax with placeholder values
442
+ #
443
+ # resp = client.create_topic({
444
+ # name: "topicName", # required
445
+ # })
446
+ #
447
+ # @example Response structure
448
+ #
449
+ # resp.topic_arn #=> String
450
+ #
451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CreateTopic AWS API Documentation
452
+ #
453
+ # @overload create_topic(params = {})
454
+ # @param [Hash] params ({})
455
+ def create_topic(params = {}, options = {})
456
+ req = build_request(:create_topic, params)
457
+ req.send_request(options)
458
+ end
418
459
 
419
- # Deletes a platform application object for one of the supported push
420
- # notification services, such as APNS and GCM. For more information, see
421
- # [Using Amazon SNS Mobile Push Notifications][1].
422
- #
423
- #
424
- #
425
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
426
- # @option params [required, String] :platform_application_arn
427
- # PlatformApplicationArn of platform application object to delete.
428
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
429
- #
430
- # @example Request syntax with placeholder values
431
- # resp = client.delete_platform_application({
432
- # platform_application_arn: "String", # required
433
- # })
434
- # @overload delete_platform_application(params = {})
435
- # @param [Hash] params ({})
436
- def delete_platform_application(params = {}, options = {})
437
- req = build_request(:delete_platform_application, params)
438
- req.send_request(options)
439
- end
460
+ # Deletes the endpoint for a device and mobile app from Amazon SNS. This
461
+ # action is idempotent. For more information, see [Using Amazon SNS
462
+ # Mobile Push Notifications][1].
463
+ #
464
+ # When you delete an endpoint that is also subscribed to a topic, then
465
+ # you must also unsubscribe the endpoint from the topic.
466
+ #
467
+ #
468
+ #
469
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
470
+ #
471
+ # @option params [required, String] :endpoint_arn
472
+ # EndpointArn of endpoint to delete.
473
+ #
474
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
475
+ #
476
+ # @example Request syntax with placeholder values
477
+ #
478
+ # resp = client.delete_endpoint({
479
+ # endpoint_arn: "String", # required
480
+ # })
481
+ #
482
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/DeleteEndpoint AWS API Documentation
483
+ #
484
+ # @overload delete_endpoint(params = {})
485
+ # @param [Hash] params ({})
486
+ def delete_endpoint(params = {}, options = {})
487
+ req = build_request(:delete_endpoint, params)
488
+ req.send_request(options)
489
+ end
440
490
 
441
- # Deletes a topic and all its subscriptions. Deleting a topic might
442
- # prevent some messages previously sent to the topic from being
443
- # delivered to subscribers. This action is idempotent, so deleting a
444
- # topic that does not exist does not result in an error.
445
- # @option params [required, String] :topic_arn
446
- # The ARN of the topic you want to delete.
447
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
448
- #
449
- # @example Request syntax with placeholder values
450
- # resp = client.delete_topic({
451
- # topic_arn: "topicARN", # required
452
- # })
453
- # @overload delete_topic(params = {})
454
- # @param [Hash] params ({})
455
- def delete_topic(params = {}, options = {})
456
- req = build_request(:delete_topic, params)
457
- req.send_request(options)
458
- end
491
+ # Deletes a platform application object for one of the supported push
492
+ # notification services, such as APNS and GCM. For more information, see
493
+ # [Using Amazon SNS Mobile Push Notifications][1].
494
+ #
495
+ #
496
+ #
497
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
498
+ #
499
+ # @option params [required, String] :platform_application_arn
500
+ # PlatformApplicationArn of platform application object to delete.
501
+ #
502
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
503
+ #
504
+ # @example Request syntax with placeholder values
505
+ #
506
+ # resp = client.delete_platform_application({
507
+ # platform_application_arn: "String", # required
508
+ # })
509
+ #
510
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/DeletePlatformApplication AWS API Documentation
511
+ #
512
+ # @overload delete_platform_application(params = {})
513
+ # @param [Hash] params ({})
514
+ def delete_platform_application(params = {}, options = {})
515
+ req = build_request(:delete_platform_application, params)
516
+ req.send_request(options)
517
+ end
459
518
 
460
- # Retrieves the endpoint attributes for a device on one of the supported
461
- # push notification services, such as GCM and APNS. For more
462
- # information, see [Using Amazon SNS Mobile Push Notifications][1].
463
- #
464
- #
465
- #
466
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
467
- # @option params [required, String] :endpoint_arn
468
- # EndpointArn for GetEndpointAttributes input.
469
- # @return [Types::GetEndpointAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
470
- #
471
- # * {Types::GetEndpointAttributesResponse#attributes #Attributes} => Hash&lt;String,String&gt;
472
- #
473
- # @example Request syntax with placeholder values
474
- # resp = client.get_endpoint_attributes({
475
- # endpoint_arn: "String", # required
476
- # })
477
- #
478
- # @example Response structure
479
- # resp.attributes #=> Hash
480
- # resp.attributes["String"] #=> String
481
- # @overload get_endpoint_attributes(params = {})
482
- # @param [Hash] params ({})
483
- def get_endpoint_attributes(params = {}, options = {})
484
- req = build_request(:get_endpoint_attributes, params)
485
- req.send_request(options)
486
- end
519
+ # Deletes a topic and all its subscriptions. Deleting a topic might
520
+ # prevent some messages previously sent to the topic from being
521
+ # delivered to subscribers. This action is idempotent, so deleting a
522
+ # topic that does not exist does not result in an error.
523
+ #
524
+ # @option params [required, String] :topic_arn
525
+ # The ARN of the topic you want to delete.
526
+ #
527
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
528
+ #
529
+ # @example Request syntax with placeholder values
530
+ #
531
+ # resp = client.delete_topic({
532
+ # topic_arn: "topicARN", # required
533
+ # })
534
+ #
535
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/DeleteTopic AWS API Documentation
536
+ #
537
+ # @overload delete_topic(params = {})
538
+ # @param [Hash] params ({})
539
+ def delete_topic(params = {}, options = {})
540
+ req = build_request(:delete_topic, params)
541
+ req.send_request(options)
542
+ end
487
543
 
488
- # Retrieves the attributes of the platform application object for the
489
- # supported push notification services, such as APNS and GCM. For more
490
- # information, see [Using Amazon SNS Mobile Push Notifications][1].
491
- #
492
- #
493
- #
494
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
495
- # @option params [required, String] :platform_application_arn
496
- # PlatformApplicationArn for GetPlatformApplicationAttributesInput.
497
- # @return [Types::GetPlatformApplicationAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
498
- #
499
- # * {Types::GetPlatformApplicationAttributesResponse#attributes #Attributes} => Hash&lt;String,String&gt;
500
- #
501
- # @example Request syntax with placeholder values
502
- # resp = client.get_platform_application_attributes({
503
- # platform_application_arn: "String", # required
504
- # })
505
- #
506
- # @example Response structure
507
- # resp.attributes #=> Hash
508
- # resp.attributes["String"] #=> String
509
- # @overload get_platform_application_attributes(params = {})
510
- # @param [Hash] params ({})
511
- def get_platform_application_attributes(params = {}, options = {})
512
- req = build_request(:get_platform_application_attributes, params)
513
- req.send_request(options)
514
- end
544
+ # Retrieves the endpoint attributes for a device on one of the supported
545
+ # push notification services, such as GCM and APNS. For more
546
+ # information, see [Using Amazon SNS Mobile Push Notifications][1].
547
+ #
548
+ #
549
+ #
550
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
551
+ #
552
+ # @option params [required, String] :endpoint_arn
553
+ # EndpointArn for GetEndpointAttributes input.
554
+ #
555
+ # @return [Types::GetEndpointAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
556
+ #
557
+ # * {Types::GetEndpointAttributesResponse#attributes #attributes} => Hash&lt;String,String&gt;
558
+ #
559
+ # @example Request syntax with placeholder values
560
+ #
561
+ # resp = client.get_endpoint_attributes({
562
+ # endpoint_arn: "String", # required
563
+ # })
564
+ #
565
+ # @example Response structure
566
+ #
567
+ # resp.attributes #=> Hash
568
+ # resp.attributes["String"] #=> String
569
+ #
570
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetEndpointAttributes AWS API Documentation
571
+ #
572
+ # @overload get_endpoint_attributes(params = {})
573
+ # @param [Hash] params ({})
574
+ def get_endpoint_attributes(params = {}, options = {})
575
+ req = build_request(:get_endpoint_attributes, params)
576
+ req.send_request(options)
577
+ end
515
578
 
516
- # Returns the settings for sending SMS messages from your account.
517
- #
518
- # These settings are set with the `SetSMSAttributes` action.
519
- # @option params [Array<String>] :attributes
520
- # A list of the individual attribute names, such as `MonthlySpendLimit`,
521
- # for which you want values.
522
- #
523
- # For all attribute names, see [SetSMSAttributes][1].
524
- #
525
- # If you don't use this parameter, Amazon SNS returns all SMS
526
- # attributes.
527
- #
528
- #
529
- #
530
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetSMSAttributes.html
531
- # @return [Types::GetSMSAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
532
- #
533
- # * {Types::GetSMSAttributesResponse#attributes #attributes} => Hash&lt;String,String&gt;
534
- #
535
- # @example Request syntax with placeholder values
536
- # resp = client.get_sms_attributes({
537
- # attributes: ["String"],
538
- # })
539
- #
540
- # @example Response structure
541
- # resp.attributes #=> Hash
542
- # resp.attributes["String"] #=> String
543
- # @overload get_sms_attributes(params = {})
544
- # @param [Hash] params ({})
545
- def get_sms_attributes(params = {}, options = {})
546
- req = build_request(:get_sms_attributes, params)
547
- req.send_request(options)
548
- end
579
+ # Retrieves the attributes of the platform application object for the
580
+ # supported push notification services, such as APNS and GCM. For more
581
+ # information, see [Using Amazon SNS Mobile Push Notifications][1].
582
+ #
583
+ #
584
+ #
585
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
586
+ #
587
+ # @option params [required, String] :platform_application_arn
588
+ # PlatformApplicationArn for GetPlatformApplicationAttributesInput.
589
+ #
590
+ # @return [Types::GetPlatformApplicationAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
591
+ #
592
+ # * {Types::GetPlatformApplicationAttributesResponse#attributes #attributes} => Hash&lt;String,String&gt;
593
+ #
594
+ # @example Request syntax with placeholder values
595
+ #
596
+ # resp = client.get_platform_application_attributes({
597
+ # platform_application_arn: "String", # required
598
+ # })
599
+ #
600
+ # @example Response structure
601
+ #
602
+ # resp.attributes #=> Hash
603
+ # resp.attributes["String"] #=> String
604
+ #
605
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetPlatformApplicationAttributes AWS API Documentation
606
+ #
607
+ # @overload get_platform_application_attributes(params = {})
608
+ # @param [Hash] params ({})
609
+ def get_platform_application_attributes(params = {}, options = {})
610
+ req = build_request(:get_platform_application_attributes, params)
611
+ req.send_request(options)
612
+ end
549
613
 
550
- # Returns all of the properties of a subscription.
551
- # @option params [required, String] :subscription_arn
552
- # The ARN of the subscription whose properties you want to get.
553
- # @return [Types::GetSubscriptionAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
554
- #
555
- # * {Types::GetSubscriptionAttributesResponse#attributes #Attributes} => Hash&lt;String,String&gt;
556
- #
557
- # @example Request syntax with placeholder values
558
- # resp = client.get_subscription_attributes({
559
- # subscription_arn: "subscriptionARN", # required
560
- # })
561
- #
562
- # @example Response structure
563
- # resp.attributes #=> Hash
564
- # resp.attributes["attributeName"] #=> String
565
- # @overload get_subscription_attributes(params = {})
566
- # @param [Hash] params ({})
567
- def get_subscription_attributes(params = {}, options = {})
568
- req = build_request(:get_subscription_attributes, params)
569
- req.send_request(options)
570
- end
614
+ # Returns the settings for sending SMS messages from your account.
615
+ #
616
+ # These settings are set with the `SetSMSAttributes` action.
617
+ #
618
+ # @option params [Array<String>] :attributes
619
+ # A list of the individual attribute names, such as `MonthlySpendLimit`,
620
+ # for which you want values.
621
+ #
622
+ # For all attribute names, see [SetSMSAttributes][1].
623
+ #
624
+ # If you don't use this parameter, Amazon SNS returns all SMS
625
+ # attributes.
626
+ #
627
+ #
628
+ #
629
+ # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetSMSAttributes.html
630
+ #
631
+ # @return [Types::GetSMSAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
632
+ #
633
+ # * {Types::GetSMSAttributesResponse#attributes #attributes} => Hash&lt;String,String&gt;
634
+ #
635
+ # @example Request syntax with placeholder values
636
+ #
637
+ # resp = client.get_sms_attributes({
638
+ # attributes: ["String"],
639
+ # })
640
+ #
641
+ # @example Response structure
642
+ #
643
+ # resp.attributes #=> Hash
644
+ # resp.attributes["String"] #=> String
645
+ #
646
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetSMSAttributes AWS API Documentation
647
+ #
648
+ # @overload get_sms_attributes(params = {})
649
+ # @param [Hash] params ({})
650
+ def get_sms_attributes(params = {}, options = {})
651
+ req = build_request(:get_sms_attributes, params)
652
+ req.send_request(options)
653
+ end
571
654
 
572
- # Returns all of the properties of a topic. Topic properties returned
573
- # might differ based on the authorization of the user.
574
- # @option params [required, String] :topic_arn
575
- # The ARN of the topic whose properties you want to get.
576
- # @return [Types::GetTopicAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
577
- #
578
- # * {Types::GetTopicAttributesResponse#attributes #Attributes} => Hash&lt;String,String&gt;
579
- #
580
- # @example Request syntax with placeholder values
581
- # resp = client.get_topic_attributes({
582
- # topic_arn: "topicARN", # required
583
- # })
584
- #
585
- # @example Response structure
586
- # resp.attributes #=> Hash
587
- # resp.attributes["attributeName"] #=> String
588
- # @overload get_topic_attributes(params = {})
589
- # @param [Hash] params ({})
590
- def get_topic_attributes(params = {}, options = {})
591
- req = build_request(:get_topic_attributes, params)
592
- req.send_request(options)
593
- end
655
+ # Returns all of the properties of a subscription.
656
+ #
657
+ # @option params [required, String] :subscription_arn
658
+ # The ARN of the subscription whose properties you want to get.
659
+ #
660
+ # @return [Types::GetSubscriptionAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
661
+ #
662
+ # * {Types::GetSubscriptionAttributesResponse#attributes #attributes} => Hash&lt;String,String&gt;
663
+ #
664
+ # @example Request syntax with placeholder values
665
+ #
666
+ # resp = client.get_subscription_attributes({
667
+ # subscription_arn: "subscriptionARN", # required
668
+ # })
669
+ #
670
+ # @example Response structure
671
+ #
672
+ # resp.attributes #=> Hash
673
+ # resp.attributes["attributeName"] #=> String
674
+ #
675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetSubscriptionAttributes AWS API Documentation
676
+ #
677
+ # @overload get_subscription_attributes(params = {})
678
+ # @param [Hash] params ({})
679
+ def get_subscription_attributes(params = {}, options = {})
680
+ req = build_request(:get_subscription_attributes, params)
681
+ req.send_request(options)
682
+ end
594
683
 
595
- # Lists the endpoints and endpoint attributes for devices in a supported
596
- # push notification service, such as GCM and APNS. The results for
597
- # `ListEndpointsByPlatformApplication` are paginated and return a
598
- # limited list of endpoints, up to 100. If additional records are
599
- # available after the first page results, then a NextToken string will
600
- # be returned. To receive the next page, you call
601
- # `ListEndpointsByPlatformApplication` again using the NextToken string
602
- # received from the previous call. When there are no more records to
603
- # return, NextToken will be null. For more information, see [Using
604
- # Amazon SNS Mobile Push Notifications][1].
605
- #
606
- #
607
- #
608
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
609
- # @option params [required, String] :platform_application_arn
610
- # PlatformApplicationArn for ListEndpointsByPlatformApplicationInput
611
- # action.
612
- # @option params [String] :next_token
613
- # NextToken string is used when calling
614
- # ListEndpointsByPlatformApplication action to retrieve additional
615
- # records that are available after the first page results.
616
- # @return [Types::ListEndpointsByPlatformApplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
617
- #
618
- # * {Types::ListEndpointsByPlatformApplicationResponse#endpoints #Endpoints} => Array&lt;Types::Endpoint&gt;
619
- # * {Types::ListEndpointsByPlatformApplicationResponse#next_token #NextToken} => String
620
- #
621
- # @example Request syntax with placeholder values
622
- # resp = client.list_endpoints_by_platform_application({
623
- # platform_application_arn: "String", # required
624
- # next_token: "String",
625
- # })
626
- #
627
- # @example Response structure
628
- # resp.endpoints #=> Array
629
- # resp.endpoints[0].endpoint_arn #=> String
630
- # resp.endpoints[0].attributes #=> Hash
631
- # resp.endpoints[0].attributes["String"] #=> String
632
- # resp.next_token #=> String
633
- # @overload list_endpoints_by_platform_application(params = {})
634
- # @param [Hash] params ({})
635
- def list_endpoints_by_platform_application(params = {}, options = {})
636
- req = build_request(:list_endpoints_by_platform_application, params)
637
- req.send_request(options)
638
- end
684
+ # Returns all of the properties of a topic. Topic properties returned
685
+ # might differ based on the authorization of the user.
686
+ #
687
+ # @option params [required, String] :topic_arn
688
+ # The ARN of the topic whose properties you want to get.
689
+ #
690
+ # @return [Types::GetTopicAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
691
+ #
692
+ # * {Types::GetTopicAttributesResponse#attributes #attributes} => Hash&lt;String,String&gt;
693
+ #
694
+ # @example Request syntax with placeholder values
695
+ #
696
+ # resp = client.get_topic_attributes({
697
+ # topic_arn: "topicARN", # required
698
+ # })
699
+ #
700
+ # @example Response structure
701
+ #
702
+ # resp.attributes #=> Hash
703
+ # resp.attributes["attributeName"] #=> String
704
+ #
705
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetTopicAttributes AWS API Documentation
706
+ #
707
+ # @overload get_topic_attributes(params = {})
708
+ # @param [Hash] params ({})
709
+ def get_topic_attributes(params = {}, options = {})
710
+ req = build_request(:get_topic_attributes, params)
711
+ req.send_request(options)
712
+ end
639
713
 
640
- # Returns a list of phone numbers that are opted out, meaning you cannot
641
- # send SMS messages to them.
642
- #
643
- # The results for `ListPhoneNumbersOptedOut` are paginated, and each
644
- # page returns up to 100 phone numbers. If additional phone numbers are
645
- # available after the first page of results, then a `NextToken` string
646
- # will be returned. To receive the next page, you call
647
- # `ListPhoneNumbersOptedOut` again using the `NextToken` string received
648
- # from the previous call. When there are no more records to return,
649
- # `NextToken` will be null.
650
- # @option params [String] :next_token
651
- # A `NextToken` string is used when you call the
652
- # `ListPhoneNumbersOptedOut` action to retrieve additional records that
653
- # are available after the first page of results.
654
- # @return [Types::ListPhoneNumbersOptedOutResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
655
- #
656
- # * {Types::ListPhoneNumbersOptedOutResponse#phone_numbers #phoneNumbers} => Array&lt;String&gt;
657
- # * {Types::ListPhoneNumbersOptedOutResponse#next_token #nextToken} => String
658
- #
659
- # @example Request syntax with placeholder values
660
- # resp = client.list_phone_numbers_opted_out({
661
- # next_token: "string",
662
- # })
663
- #
664
- # @example Response structure
665
- # resp.phone_numbers #=> Array
666
- # resp.phone_numbers[0] #=> String
667
- # resp.next_token #=> String
668
- # @overload list_phone_numbers_opted_out(params = {})
669
- # @param [Hash] params ({})
670
- def list_phone_numbers_opted_out(params = {}, options = {})
671
- req = build_request(:list_phone_numbers_opted_out, params)
672
- req.send_request(options)
673
- end
714
+ # Lists the endpoints and endpoint attributes for devices in a supported
715
+ # push notification service, such as GCM and APNS. The results for
716
+ # `ListEndpointsByPlatformApplication` are paginated and return a
717
+ # limited list of endpoints, up to 100. If additional records are
718
+ # available after the first page results, then a NextToken string will
719
+ # be returned. To receive the next page, you call
720
+ # `ListEndpointsByPlatformApplication` again using the NextToken string
721
+ # received from the previous call. When there are no more records to
722
+ # return, NextToken will be null. For more information, see [Using
723
+ # Amazon SNS Mobile Push Notifications][1].
724
+ #
725
+ #
726
+ #
727
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
728
+ #
729
+ # @option params [required, String] :platform_application_arn
730
+ # PlatformApplicationArn for ListEndpointsByPlatformApplicationInput
731
+ # action.
732
+ #
733
+ # @option params [String] :next_token
734
+ # NextToken string is used when calling
735
+ # ListEndpointsByPlatformApplication action to retrieve additional
736
+ # records that are available after the first page results.
737
+ #
738
+ # @return [Types::ListEndpointsByPlatformApplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
739
+ #
740
+ # * {Types::ListEndpointsByPlatformApplicationResponse#endpoints #endpoints} => Array&lt;Types::Endpoint&gt;
741
+ # * {Types::ListEndpointsByPlatformApplicationResponse#next_token #next_token} => String
742
+ #
743
+ # @example Request syntax with placeholder values
744
+ #
745
+ # resp = client.list_endpoints_by_platform_application({
746
+ # platform_application_arn: "String", # required
747
+ # next_token: "String",
748
+ # })
749
+ #
750
+ # @example Response structure
751
+ #
752
+ # resp.endpoints #=> Array
753
+ # resp.endpoints[0].endpoint_arn #=> String
754
+ # resp.endpoints[0].attributes #=> Hash
755
+ # resp.endpoints[0].attributes["String"] #=> String
756
+ # resp.next_token #=> String
757
+ #
758
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListEndpointsByPlatformApplication AWS API Documentation
759
+ #
760
+ # @overload list_endpoints_by_platform_application(params = {})
761
+ # @param [Hash] params ({})
762
+ def list_endpoints_by_platform_application(params = {}, options = {})
763
+ req = build_request(:list_endpoints_by_platform_application, params)
764
+ req.send_request(options)
765
+ end
674
766
 
675
- # Lists the platform application objects for the supported push
676
- # notification services, such as APNS and GCM. The results for
677
- # `ListPlatformApplications` are paginated and return a limited list of
678
- # applications, up to 100. If additional records are available after the
679
- # first page results, then a NextToken string will be returned. To
680
- # receive the next page, you call `ListPlatformApplications` using the
681
- # NextToken string received from the previous call. When there are no
682
- # more records to return, NextToken will be null. For more information,
683
- # see [Using Amazon SNS Mobile Push Notifications][1].
684
- #
685
- #
686
- #
687
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
688
- # @option params [String] :next_token
689
- # NextToken string is used when calling ListPlatformApplications action
690
- # to retrieve additional records that are available after the first page
691
- # results.
692
- # @return [Types::ListPlatformApplicationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
693
- #
694
- # * {Types::ListPlatformApplicationsResponse#platform_applications #PlatformApplications} => Array&lt;Types::PlatformApplication&gt;
695
- # * {Types::ListPlatformApplicationsResponse#next_token #NextToken} => String
696
- #
697
- # @example Request syntax with placeholder values
698
- # resp = client.list_platform_applications({
699
- # next_token: "String",
700
- # })
701
- #
702
- # @example Response structure
703
- # resp.platform_applications #=> Array
704
- # resp.platform_applications[0].platform_application_arn #=> String
705
- # resp.platform_applications[0].attributes #=> Hash
706
- # resp.platform_applications[0].attributes["String"] #=> String
707
- # resp.next_token #=> String
708
- # @overload list_platform_applications(params = {})
709
- # @param [Hash] params ({})
710
- def list_platform_applications(params = {}, options = {})
711
- req = build_request(:list_platform_applications, params)
712
- req.send_request(options)
713
- end
767
+ # Returns a list of phone numbers that are opted out, meaning you cannot
768
+ # send SMS messages to them.
769
+ #
770
+ # The results for `ListPhoneNumbersOptedOut` are paginated, and each
771
+ # page returns up to 100 phone numbers. If additional phone numbers are
772
+ # available after the first page of results, then a `NextToken` string
773
+ # will be returned. To receive the next page, you call
774
+ # `ListPhoneNumbersOptedOut` again using the `NextToken` string received
775
+ # from the previous call. When there are no more records to return,
776
+ # `NextToken` will be null.
777
+ #
778
+ # @option params [String] :next_token
779
+ # A `NextToken` string is used when you call the
780
+ # `ListPhoneNumbersOptedOut` action to retrieve additional records that
781
+ # are available after the first page of results.
782
+ #
783
+ # @return [Types::ListPhoneNumbersOptedOutResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
784
+ #
785
+ # * {Types::ListPhoneNumbersOptedOutResponse#phone_numbers #phone_numbers} => Array&lt;String&gt;
786
+ # * {Types::ListPhoneNumbersOptedOutResponse#next_token #next_token} => String
787
+ #
788
+ # @example Request syntax with placeholder values
789
+ #
790
+ # resp = client.list_phone_numbers_opted_out({
791
+ # next_token: "string",
792
+ # })
793
+ #
794
+ # @example Response structure
795
+ #
796
+ # resp.phone_numbers #=> Array
797
+ # resp.phone_numbers[0] #=> String
798
+ # resp.next_token #=> String
799
+ #
800
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListPhoneNumbersOptedOut AWS API Documentation
801
+ #
802
+ # @overload list_phone_numbers_opted_out(params = {})
803
+ # @param [Hash] params ({})
804
+ def list_phone_numbers_opted_out(params = {}, options = {})
805
+ req = build_request(:list_phone_numbers_opted_out, params)
806
+ req.send_request(options)
807
+ end
714
808
 
715
- # Returns a list of the requester's subscriptions. Each call returns a
716
- # limited list of subscriptions, up to 100. If there are more
717
- # subscriptions, a `NextToken` is also returned. Use the `NextToken`
718
- # parameter in a new `ListSubscriptions` call to get further results.
719
- # @option params [String] :next_token
720
- # Token returned by the previous `ListSubscriptions` request.
721
- # @return [Types::ListSubscriptionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
722
- #
723
- # * {Types::ListSubscriptionsResponse#subscriptions #Subscriptions} => Array&lt;Types::Subscription&gt;
724
- # * {Types::ListSubscriptionsResponse#next_token #NextToken} => String
725
- #
726
- # @example Request syntax with placeholder values
727
- # resp = client.list_subscriptions({
728
- # next_token: "nextToken",
729
- # })
730
- #
731
- # @example Response structure
732
- # resp.subscriptions #=> Array
733
- # resp.subscriptions[0].subscription_arn #=> String
734
- # resp.subscriptions[0].owner #=> String
735
- # resp.subscriptions[0].protocol #=> String
736
- # resp.subscriptions[0].endpoint #=> String
737
- # resp.subscriptions[0].topic_arn #=> String
738
- # resp.next_token #=> String
739
- # @overload list_subscriptions(params = {})
740
- # @param [Hash] params ({})
741
- def list_subscriptions(params = {}, options = {})
742
- req = build_request(:list_subscriptions, params)
743
- req.send_request(options)
744
- end
809
+ # Lists the platform application objects for the supported push
810
+ # notification services, such as APNS and GCM. The results for
811
+ # `ListPlatformApplications` are paginated and return a limited list of
812
+ # applications, up to 100. If additional records are available after the
813
+ # first page results, then a NextToken string will be returned. To
814
+ # receive the next page, you call `ListPlatformApplications` using the
815
+ # NextToken string received from the previous call. When there are no
816
+ # more records to return, NextToken will be null. For more information,
817
+ # see [Using Amazon SNS Mobile Push Notifications][1].
818
+ #
819
+ #
820
+ #
821
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
822
+ #
823
+ # @option params [String] :next_token
824
+ # NextToken string is used when calling ListPlatformApplications action
825
+ # to retrieve additional records that are available after the first page
826
+ # results.
827
+ #
828
+ # @return [Types::ListPlatformApplicationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
829
+ #
830
+ # * {Types::ListPlatformApplicationsResponse#platform_applications #platform_applications} => Array&lt;Types::PlatformApplication&gt;
831
+ # * {Types::ListPlatformApplicationsResponse#next_token #next_token} => String
832
+ #
833
+ # @example Request syntax with placeholder values
834
+ #
835
+ # resp = client.list_platform_applications({
836
+ # next_token: "String",
837
+ # })
838
+ #
839
+ # @example Response structure
840
+ #
841
+ # resp.platform_applications #=> Array
842
+ # resp.platform_applications[0].platform_application_arn #=> String
843
+ # resp.platform_applications[0].attributes #=> Hash
844
+ # resp.platform_applications[0].attributes["String"] #=> String
845
+ # resp.next_token #=> String
846
+ #
847
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListPlatformApplications AWS API Documentation
848
+ #
849
+ # @overload list_platform_applications(params = {})
850
+ # @param [Hash] params ({})
851
+ def list_platform_applications(params = {}, options = {})
852
+ req = build_request(:list_platform_applications, params)
853
+ req.send_request(options)
854
+ end
745
855
 
746
- # Returns a list of the subscriptions to a specific topic. Each call
747
- # returns a limited list of subscriptions, up to 100. If there are more
748
- # subscriptions, a `NextToken` is also returned. Use the `NextToken`
749
- # parameter in a new `ListSubscriptionsByTopic` call to get further
750
- # results.
751
- # @option params [required, String] :topic_arn
752
- # The ARN of the topic for which you wish to find subscriptions.
753
- # @option params [String] :next_token
754
- # Token returned by the previous `ListSubscriptionsByTopic` request.
755
- # @return [Types::ListSubscriptionsByTopicResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
756
- #
757
- # * {Types::ListSubscriptionsByTopicResponse#subscriptions #Subscriptions} => Array&lt;Types::Subscription&gt;
758
- # * {Types::ListSubscriptionsByTopicResponse#next_token #NextToken} => String
759
- #
760
- # @example Request syntax with placeholder values
761
- # resp = client.list_subscriptions_by_topic({
762
- # topic_arn: "topicARN", # required
763
- # next_token: "nextToken",
764
- # })
765
- #
766
- # @example Response structure
767
- # resp.subscriptions #=> Array
768
- # resp.subscriptions[0].subscription_arn #=> String
769
- # resp.subscriptions[0].owner #=> String
770
- # resp.subscriptions[0].protocol #=> String
771
- # resp.subscriptions[0].endpoint #=> String
772
- # resp.subscriptions[0].topic_arn #=> String
773
- # resp.next_token #=> String
774
- # @overload list_subscriptions_by_topic(params = {})
775
- # @param [Hash] params ({})
776
- def list_subscriptions_by_topic(params = {}, options = {})
777
- req = build_request(:list_subscriptions_by_topic, params)
778
- req.send_request(options)
779
- end
856
+ # Returns a list of the requester's subscriptions. Each call returns a
857
+ # limited list of subscriptions, up to 100. If there are more
858
+ # subscriptions, a `NextToken` is also returned. Use the `NextToken`
859
+ # parameter in a new `ListSubscriptions` call to get further results.
860
+ #
861
+ # @option params [String] :next_token
862
+ # Token returned by the previous `ListSubscriptions` request.
863
+ #
864
+ # @return [Types::ListSubscriptionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
865
+ #
866
+ # * {Types::ListSubscriptionsResponse#subscriptions #subscriptions} => Array&lt;Types::Subscription&gt;
867
+ # * {Types::ListSubscriptionsResponse#next_token #next_token} => String
868
+ #
869
+ # @example Request syntax with placeholder values
870
+ #
871
+ # resp = client.list_subscriptions({
872
+ # next_token: "nextToken",
873
+ # })
874
+ #
875
+ # @example Response structure
876
+ #
877
+ # resp.subscriptions #=> Array
878
+ # resp.subscriptions[0].subscription_arn #=> String
879
+ # resp.subscriptions[0].owner #=> String
880
+ # resp.subscriptions[0].protocol #=> String
881
+ # resp.subscriptions[0].endpoint #=> String
882
+ # resp.subscriptions[0].topic_arn #=> String
883
+ # resp.next_token #=> String
884
+ #
885
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListSubscriptions AWS API Documentation
886
+ #
887
+ # @overload list_subscriptions(params = {})
888
+ # @param [Hash] params ({})
889
+ def list_subscriptions(params = {}, options = {})
890
+ req = build_request(:list_subscriptions, params)
891
+ req.send_request(options)
892
+ end
780
893
 
781
- # Returns a list of the requester's topics. Each call returns a limited
782
- # list of topics, up to 100. If there are more topics, a `NextToken` is
783
- # also returned. Use the `NextToken` parameter in a new `ListTopics`
784
- # call to get further results.
785
- # @option params [String] :next_token
786
- # Token returned by the previous `ListTopics` request.
787
- # @return [Types::ListTopicsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
788
- #
789
- # * {Types::ListTopicsResponse#topics #Topics} => Array&lt;Types::Topic&gt;
790
- # * {Types::ListTopicsResponse#next_token #NextToken} => String
791
- #
792
- # @example Request syntax with placeholder values
793
- # resp = client.list_topics({
794
- # next_token: "nextToken",
795
- # })
796
- #
797
- # @example Response structure
798
- # resp.topics #=> Array
799
- # resp.topics[0].topic_arn #=> String
800
- # resp.next_token #=> String
801
- # @overload list_topics(params = {})
802
- # @param [Hash] params ({})
803
- def list_topics(params = {}, options = {})
804
- req = build_request(:list_topics, params)
805
- req.send_request(options)
806
- end
894
+ # Returns a list of the subscriptions to a specific topic. Each call
895
+ # returns a limited list of subscriptions, up to 100. If there are more
896
+ # subscriptions, a `NextToken` is also returned. Use the `NextToken`
897
+ # parameter in a new `ListSubscriptionsByTopic` call to get further
898
+ # results.
899
+ #
900
+ # @option params [required, String] :topic_arn
901
+ # The ARN of the topic for which you wish to find subscriptions.
902
+ #
903
+ # @option params [String] :next_token
904
+ # Token returned by the previous `ListSubscriptionsByTopic` request.
905
+ #
906
+ # @return [Types::ListSubscriptionsByTopicResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
907
+ #
908
+ # * {Types::ListSubscriptionsByTopicResponse#subscriptions #subscriptions} => Array&lt;Types::Subscription&gt;
909
+ # * {Types::ListSubscriptionsByTopicResponse#next_token #next_token} => String
910
+ #
911
+ # @example Request syntax with placeholder values
912
+ #
913
+ # resp = client.list_subscriptions_by_topic({
914
+ # topic_arn: "topicARN", # required
915
+ # next_token: "nextToken",
916
+ # })
917
+ #
918
+ # @example Response structure
919
+ #
920
+ # resp.subscriptions #=> Array
921
+ # resp.subscriptions[0].subscription_arn #=> String
922
+ # resp.subscriptions[0].owner #=> String
923
+ # resp.subscriptions[0].protocol #=> String
924
+ # resp.subscriptions[0].endpoint #=> String
925
+ # resp.subscriptions[0].topic_arn #=> String
926
+ # resp.next_token #=> String
927
+ #
928
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListSubscriptionsByTopic AWS API Documentation
929
+ #
930
+ # @overload list_subscriptions_by_topic(params = {})
931
+ # @param [Hash] params ({})
932
+ def list_subscriptions_by_topic(params = {}, options = {})
933
+ req = build_request(:list_subscriptions_by_topic, params)
934
+ req.send_request(options)
935
+ end
807
936
 
808
- # Use this request to opt in a phone number that is opted out, which
809
- # enables you to resume sending SMS messages to the number.
810
- #
811
- # You can opt in a phone number only once every 30 days.
812
- # @option params [required, String] :phone_number
813
- # The phone number to opt in.
814
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
815
- #
816
- # @example Request syntax with placeholder values
817
- # resp = client.opt_in_phone_number({
818
- # phone_number: "PhoneNumber", # required
819
- # })
820
- # @overload opt_in_phone_number(params = {})
821
- # @param [Hash] params ({})
822
- def opt_in_phone_number(params = {}, options = {})
823
- req = build_request(:opt_in_phone_number, params)
824
- req.send_request(options)
825
- end
937
+ # Returns a list of the requester's topics. Each call returns a limited
938
+ # list of topics, up to 100. If there are more topics, a `NextToken` is
939
+ # also returned. Use the `NextToken` parameter in a new `ListTopics`
940
+ # call to get further results.
941
+ #
942
+ # @option params [String] :next_token
943
+ # Token returned by the previous `ListTopics` request.
944
+ #
945
+ # @return [Types::ListTopicsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
946
+ #
947
+ # * {Types::ListTopicsResponse#topics #topics} => Array&lt;Types::Topic&gt;
948
+ # * {Types::ListTopicsResponse#next_token #next_token} => String
949
+ #
950
+ # @example Request syntax with placeholder values
951
+ #
952
+ # resp = client.list_topics({
953
+ # next_token: "nextToken",
954
+ # })
955
+ #
956
+ # @example Response structure
957
+ #
958
+ # resp.topics #=> Array
959
+ # resp.topics[0].topic_arn #=> String
960
+ # resp.next_token #=> String
961
+ #
962
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListTopics AWS API Documentation
963
+ #
964
+ # @overload list_topics(params = {})
965
+ # @param [Hash] params ({})
966
+ def list_topics(params = {}, options = {})
967
+ req = build_request(:list_topics, params)
968
+ req.send_request(options)
969
+ end
826
970
 
827
- # Sends a message to all of a topic's subscribed endpoints. When a
828
- # `messageId` is returned, the message has been saved and Amazon SNS
829
- # will attempt to deliver it to the topic's subscribers shortly. The
830
- # format of the outgoing message to each subscribed endpoint depends on
831
- # the notification protocol.
832
- #
833
- # To use the `Publish` action for sending a message to a mobile
834
- # endpoint, such as an app on a Kindle device or mobile phone, you must
835
- # specify the EndpointArn for the TargetArn parameter. The EndpointArn
836
- # is returned when making a call with the `CreatePlatformEndpoint`
837
- # action.
838
- #
839
- # For more information about formatting messages, see [Send Custom
840
- # Platform-Specific Payloads in Messages to Mobile Devices][1].
841
- #
842
- #
843
- #
844
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-send-custommessage.html
845
- # @option params [String] :topic_arn
846
- # The topic you want to publish to.
847
- #
848
- # If you don't specify a value for the `TopicArn` parameter, you must
849
- # specify a value for the `PhoneNumber` or `TargetArn` parameters.
850
- # @option params [String] :target_arn
851
- # Either TopicArn or EndpointArn, but not both.
852
- #
853
- # If you don't specify a value for the `TargetArn` parameter, you must
854
- # specify a value for the `PhoneNumber` or `TopicArn` parameters.
855
- # @option params [String] :phone_number
856
- # The phone number to which you want to deliver an SMS message. Use
857
- # E.164 format.
858
- #
859
- # If you don't specify a value for the `PhoneNumber` parameter, you
860
- # must specify a value for the `TargetArn` or `TopicArn` parameters.
861
- # @option params [required, String] :message
862
- # The message you want to send to the topic.
863
- #
864
- # If you want to send the same message to all transport protocols,
865
- # include the text of the message as a String value.
866
- #
867
- # If you want to send different messages for each transport protocol,
868
- # set the value of the `MessageStructure` parameter to `json` and use a
869
- # JSON object for the `Message` parameter.
870
- #
871
- # Constraints: Messages must be UTF-8 encoded strings at most 256 KB in
872
- # size (262144 bytes, not 262144 characters).
873
- #
874
- # JSON-specific constraints:
875
- #
876
- # * Keys in the JSON object that correspond to supported transport
877
- # protocols must have simple JSON string values.
878
- #
879
- # * The values will be parsed (unescaped) before they are used in
880
- # outgoing messages.
881
- #
882
- # * Outbound notifications are JSON encoded (meaning that the characters
883
- # will be reescaped for sending).
884
- #
885
- # * Values have a minimum length of 0 (the empty string, "", is
886
- # allowed).
887
- #
888
- # * Values have a maximum length bounded by the overall message size
889
- # (so, including multiple protocols may limit message sizes).
890
- #
891
- # * Non-string values will cause the key to be ignored.
892
- #
893
- # * Keys that do not correspond to supported transport protocols are
894
- # ignored.
895
- #
896
- # * Duplicate keys are not allowed.
897
- #
898
- # * Failure to parse or validate any key or value in the message will
899
- # cause the `Publish` call to return an error (no partial delivery).
900
- # @option params [String] :subject
901
- # Optional parameter to be used as the "Subject" line when the message
902
- # is delivered to email endpoints. This field will also be included, if
903
- # present, in the standard JSON messages delivered to other endpoints.
904
- #
905
- # Constraints: Subjects must be ASCII text that begins with a letter,
906
- # number, or punctuation mark; must not include line breaks or control
907
- # characters; and must be less than 100 characters long.
908
- # @option params [String] :message_structure
909
- # Set `MessageStructure` to `json` if you want to send a different
910
- # message for each protocol. For example, using one publish action, you
911
- # can send a short message to your SMS subscribers and a longer message
912
- # to your email subscribers. If you set `MessageStructure` to `json`,
913
- # the value of the `Message` parameter must:
914
- #
915
- # * be a syntactically valid JSON object; and
916
- #
917
- # * contain at least a top-level JSON key of "default" with a value
918
- # that is a string.
919
- #
920
- # You can define other top-level keys that define the message you want
921
- # to send to a specific transport protocol (e.g., "http").
922
- #
923
- # For information about sending different messages for each protocol
924
- # using the AWS Management Console, go to [Create Different Messages for
925
- # Each Protocol][1] in the *Amazon Simple Notification Service Getting
926
- # Started Guide*.
927
- #
928
- # Valid value: `json`
929
- #
930
- #
931
- #
932
- # [1]: http://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
933
- # @option params [Hash<String,Types::MessageAttributeValue>] :message_attributes
934
- # Message attributes for Publish action.
935
- # @return [Types::PublishResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
936
- #
937
- # * {Types::PublishResponse#message_id #MessageId} => String
938
- #
939
- # @example Request syntax with placeholder values
940
- # resp = client.publish({
941
- # topic_arn: "topicARN",
942
- # target_arn: "String",
943
- # phone_number: "String",
944
- # message: "message", # required
945
- # subject: "subject",
946
- # message_structure: "messageStructure",
947
- # message_attributes: {
948
- # "String" => {
949
- # data_type: "String", # required
950
- # string_value: "String",
951
- # binary_value: "data",
952
- # },
953
- # },
954
- # })
955
- #
956
- # @example Response structure
957
- # resp.message_id #=> String
958
- # @overload publish(params = {})
959
- # @param [Hash] params ({})
960
- def publish(params = {}, options = {})
961
- req = build_request(:publish, params)
962
- req.send_request(options)
963
- end
971
+ # Use this request to opt in a phone number that is opted out, which
972
+ # enables you to resume sending SMS messages to the number.
973
+ #
974
+ # You can opt in a phone number only once every 30 days.
975
+ #
976
+ # @option params [required, String] :phone_number
977
+ # The phone number to opt in.
978
+ #
979
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
980
+ #
981
+ # @example Request syntax with placeholder values
982
+ #
983
+ # resp = client.opt_in_phone_number({
984
+ # phone_number: "PhoneNumber", # required
985
+ # })
986
+ #
987
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/OptInPhoneNumber AWS API Documentation
988
+ #
989
+ # @overload opt_in_phone_number(params = {})
990
+ # @param [Hash] params ({})
991
+ def opt_in_phone_number(params = {}, options = {})
992
+ req = build_request(:opt_in_phone_number, params)
993
+ req.send_request(options)
994
+ end
964
995
 
965
- # Removes a statement from a topic's access control policy.
966
- # @option params [required, String] :topic_arn
967
- # The ARN of the topic whose access control policy you wish to modify.
968
- # @option params [required, String] :label
969
- # The unique label of the statement you want to remove.
970
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
971
- #
972
- # @example Request syntax with placeholder values
973
- # resp = client.remove_permission({
974
- # topic_arn: "topicARN", # required
975
- # label: "label", # required
976
- # })
977
- # @overload remove_permission(params = {})
978
- # @param [Hash] params ({})
979
- def remove_permission(params = {}, options = {})
980
- req = build_request(:remove_permission, params)
981
- req.send_request(options)
982
- end
996
+ # Sends a message to all of a topic's subscribed endpoints. When a
997
+ # `messageId` is returned, the message has been saved and Amazon SNS
998
+ # will attempt to deliver it to the topic's subscribers shortly. The
999
+ # format of the outgoing message to each subscribed endpoint depends on
1000
+ # the notification protocol.
1001
+ #
1002
+ # To use the `Publish` action for sending a message to a mobile
1003
+ # endpoint, such as an app on a Kindle device or mobile phone, you must
1004
+ # specify the EndpointArn for the TargetArn parameter. The EndpointArn
1005
+ # is returned when making a call with the `CreatePlatformEndpoint`
1006
+ # action.
1007
+ #
1008
+ # For more information about formatting messages, see [Send Custom
1009
+ # Platform-Specific Payloads in Messages to Mobile Devices][1].
1010
+ #
1011
+ #
1012
+ #
1013
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-send-custommessage.html
1014
+ #
1015
+ # @option params [String] :topic_arn
1016
+ # The topic you want to publish to.
1017
+ #
1018
+ # If you don't specify a value for the `TopicArn` parameter, you must
1019
+ # specify a value for the `PhoneNumber` or `TargetArn` parameters.
1020
+ #
1021
+ # @option params [String] :target_arn
1022
+ # Either TopicArn or EndpointArn, but not both.
1023
+ #
1024
+ # If you don't specify a value for the `TargetArn` parameter, you must
1025
+ # specify a value for the `PhoneNumber` or `TopicArn` parameters.
1026
+ #
1027
+ # @option params [String] :phone_number
1028
+ # The phone number to which you want to deliver an SMS message. Use
1029
+ # E.164 format.
1030
+ #
1031
+ # If you don't specify a value for the `PhoneNumber` parameter, you
1032
+ # must specify a value for the `TargetArn` or `TopicArn` parameters.
1033
+ #
1034
+ # @option params [required, String] :message
1035
+ # The message you want to send to the topic.
1036
+ #
1037
+ # If you want to send the same message to all transport protocols,
1038
+ # include the text of the message as a String value.
1039
+ #
1040
+ # If you want to send different messages for each transport protocol,
1041
+ # set the value of the `MessageStructure` parameter to `json` and use a
1042
+ # JSON object for the `Message` parameter.
1043
+ #
1044
+ # Constraints: Messages must be UTF-8 encoded strings at most 256 KB in
1045
+ # size (262144 bytes, not 262144 characters).
1046
+ #
1047
+ # JSON-specific constraints:
1048
+ #
1049
+ # * Keys in the JSON object that correspond to supported transport
1050
+ # protocols must have simple JSON string values.
1051
+ #
1052
+ # * The values will be parsed (unescaped) before they are used in
1053
+ # outgoing messages.
1054
+ #
1055
+ # * Outbound notifications are JSON encoded (meaning that the characters
1056
+ # will be reescaped for sending).
1057
+ #
1058
+ # * Values have a minimum length of 0 (the empty string, "", is
1059
+ # allowed).
1060
+ #
1061
+ # * Values have a maximum length bounded by the overall message size
1062
+ # (so, including multiple protocols may limit message sizes).
1063
+ #
1064
+ # * Non-string values will cause the key to be ignored.
1065
+ #
1066
+ # * Keys that do not correspond to supported transport protocols are
1067
+ # ignored.
1068
+ #
1069
+ # * Duplicate keys are not allowed.
1070
+ #
1071
+ # * Failure to parse or validate any key or value in the message will
1072
+ # cause the `Publish` call to return an error (no partial delivery).
1073
+ #
1074
+ # @option params [String] :subject
1075
+ # Optional parameter to be used as the "Subject" line when the message
1076
+ # is delivered to email endpoints. This field will also be included, if
1077
+ # present, in the standard JSON messages delivered to other endpoints.
1078
+ #
1079
+ # Constraints: Subjects must be ASCII text that begins with a letter,
1080
+ # number, or punctuation mark; must not include line breaks or control
1081
+ # characters; and must be less than 100 characters long.
1082
+ #
1083
+ # @option params [String] :message_structure
1084
+ # Set `MessageStructure` to `json` if you want to send a different
1085
+ # message for each protocol. For example, using one publish action, you
1086
+ # can send a short message to your SMS subscribers and a longer message
1087
+ # to your email subscribers. If you set `MessageStructure` to `json`,
1088
+ # the value of the `Message` parameter must:
1089
+ #
1090
+ # * be a syntactically valid JSON object; and
1091
+ #
1092
+ # * contain at least a top-level JSON key of "default" with a value
1093
+ # that is a string.
1094
+ #
1095
+ # You can define other top-level keys that define the message you want
1096
+ # to send to a specific transport protocol (e.g., "http").
1097
+ #
1098
+ # For information about sending different messages for each protocol
1099
+ # using the AWS Management Console, go to [Create Different Messages for
1100
+ # Each Protocol][1] in the *Amazon Simple Notification Service Getting
1101
+ # Started Guide*.
1102
+ #
1103
+ # Valid value: `json`
1104
+ #
1105
+ #
1106
+ #
1107
+ # [1]: http://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
1108
+ #
1109
+ # @option params [Hash<String,Types::MessageAttributeValue>] :message_attributes
1110
+ # Message attributes for Publish action.
1111
+ #
1112
+ # @return [Types::PublishResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1113
+ #
1114
+ # * {Types::PublishResponse#message_id #message_id} => String
1115
+ #
1116
+ # @example Request syntax with placeholder values
1117
+ #
1118
+ # resp = client.publish({
1119
+ # topic_arn: "topicARN",
1120
+ # target_arn: "String",
1121
+ # phone_number: "String",
1122
+ # message: "message", # required
1123
+ # subject: "subject",
1124
+ # message_structure: "messageStructure",
1125
+ # message_attributes: {
1126
+ # "String" => {
1127
+ # data_type: "String", # required
1128
+ # string_value: "String",
1129
+ # binary_value: "data",
1130
+ # },
1131
+ # },
1132
+ # })
1133
+ #
1134
+ # @example Response structure
1135
+ #
1136
+ # resp.message_id #=> String
1137
+ #
1138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/Publish AWS API Documentation
1139
+ #
1140
+ # @overload publish(params = {})
1141
+ # @param [Hash] params ({})
1142
+ def publish(params = {}, options = {})
1143
+ req = build_request(:publish, params)
1144
+ req.send_request(options)
1145
+ end
983
1146
 
984
- # Sets the attributes for an endpoint for a device on one of the
985
- # supported push notification services, such as GCM and APNS. For more
986
- # information, see [Using Amazon SNS Mobile Push Notifications][1].
987
- #
988
- #
989
- #
990
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
991
- # @option params [required, String] :endpoint_arn
992
- # EndpointArn used for SetEndpointAttributes action.
993
- # @option params [required, Hash<String,String>] :attributes
994
- # A map of the endpoint attributes. Attributes in this map include the
995
- # following:
996
- #
997
- # * `CustomUserData` -- arbitrary user data to associate with the
998
- # endpoint. Amazon SNS does not use this data. The data must be in
999
- # UTF-8 format and less than 2KB.
1000
- #
1001
- # * `Enabled` -- flag that enables/disables delivery to the endpoint.
1002
- # Amazon SNS will set this to false when a notification service
1003
- # indicates to Amazon SNS that the endpoint is invalid. Users can set
1004
- # it back to true, typically after updating Token.
1005
- #
1006
- # * `Token` -- device token, also referred to as a registration id, for
1007
- # an app and mobile device. This is returned from the notification
1008
- # service when an app and mobile device are registered with the
1009
- # notification service.
1010
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1011
- #
1012
- # @example Request syntax with placeholder values
1013
- # resp = client.set_endpoint_attributes({
1014
- # endpoint_arn: "String", # required
1015
- # attributes: { # required
1016
- # "String" => "String",
1017
- # },
1018
- # })
1019
- # @overload set_endpoint_attributes(params = {})
1020
- # @param [Hash] params ({})
1021
- def set_endpoint_attributes(params = {}, options = {})
1022
- req = build_request(:set_endpoint_attributes, params)
1023
- req.send_request(options)
1024
- end
1147
+ # Removes a statement from a topic's access control policy.
1148
+ #
1149
+ # @option params [required, String] :topic_arn
1150
+ # The ARN of the topic whose access control policy you wish to modify.
1151
+ #
1152
+ # @option params [required, String] :label
1153
+ # The unique label of the statement you want to remove.
1154
+ #
1155
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1156
+ #
1157
+ # @example Request syntax with placeholder values
1158
+ #
1159
+ # resp = client.remove_permission({
1160
+ # topic_arn: "topicARN", # required
1161
+ # label: "label", # required
1162
+ # })
1163
+ #
1164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/RemovePermission AWS API Documentation
1165
+ #
1166
+ # @overload remove_permission(params = {})
1167
+ # @param [Hash] params ({})
1168
+ def remove_permission(params = {}, options = {})
1169
+ req = build_request(:remove_permission, params)
1170
+ req.send_request(options)
1171
+ end
1025
1172
 
1026
- # Sets the attributes of the platform application object for the
1027
- # supported push notification services, such as APNS and GCM. For more
1028
- # information, see [Using Amazon SNS Mobile Push Notifications][1]. For
1029
- # information on configuring attributes for message delivery status, see
1030
- # [Using Amazon SNS Application Attributes for Message Delivery
1031
- # Status][2].
1032
- #
1033
- #
1034
- #
1035
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1036
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html
1037
- # @option params [required, String] :platform_application_arn
1038
- # PlatformApplicationArn for SetPlatformApplicationAttributes action.
1039
- # @option params [required, Hash<String,String>] :attributes
1040
- # A map of the platform application attributes. Attributes in this map
1041
- # include the following:
1042
- #
1043
- # * `PlatformCredential` -- The credential received from the
1044
- # notification service. For APNS/APNS\_SANDBOX, PlatformCredential is
1045
- # private key. For GCM, PlatformCredential is "API key". For ADM,
1046
- # PlatformCredential is "client secret".
1047
- #
1048
- # * `PlatformPrincipal` -- The principal received from the notification
1049
- # service. For APNS/APNS\_SANDBOX, PlatformPrincipal is SSL
1050
- # certificate. For GCM, PlatformPrincipal is not applicable. For ADM,
1051
- # PlatformPrincipal is "client id".
1052
- #
1053
- # * `EventEndpointCreated` -- Topic ARN to which EndpointCreated event
1054
- # notifications should be sent.
1055
- #
1056
- # * `EventEndpointDeleted` -- Topic ARN to which EndpointDeleted event
1057
- # notifications should be sent.
1058
- #
1059
- # * `EventEndpointUpdated` -- Topic ARN to which EndpointUpdate event
1060
- # notifications should be sent.
1061
- #
1062
- # * `EventDeliveryFailure` -- Topic ARN to which DeliveryFailure event
1063
- # notifications should be sent upon Direct Publish delivery failure
1064
- # (permanent) to one of the application's endpoints.
1065
- #
1066
- # * `SuccessFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
1067
- # write access to use CloudWatch Logs on your behalf.
1068
- #
1069
- # * `FailureFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
1070
- # write access to use CloudWatch Logs on your behalf.
1071
- #
1072
- # * `SuccessFeedbackSampleRate` -- Sample rate percentage (0-100) of
1073
- # successfully delivered messages.
1074
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1075
- #
1076
- # @example Request syntax with placeholder values
1077
- # resp = client.set_platform_application_attributes({
1078
- # platform_application_arn: "String", # required
1079
- # attributes: { # required
1080
- # "String" => "String",
1081
- # },
1082
- # })
1083
- # @overload set_platform_application_attributes(params = {})
1084
- # @param [Hash] params ({})
1085
- def set_platform_application_attributes(params = {}, options = {})
1086
- req = build_request(:set_platform_application_attributes, params)
1087
- req.send_request(options)
1088
- end
1173
+ # Sets the attributes for an endpoint for a device on one of the
1174
+ # supported push notification services, such as GCM and APNS. For more
1175
+ # information, see [Using Amazon SNS Mobile Push Notifications][1].
1176
+ #
1177
+ #
1178
+ #
1179
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1180
+ #
1181
+ # @option params [required, String] :endpoint_arn
1182
+ # EndpointArn used for SetEndpointAttributes action.
1183
+ #
1184
+ # @option params [required, Hash<String,String>] :attributes
1185
+ # A map of the endpoint attributes. Attributes in this map include the
1186
+ # following:
1187
+ #
1188
+ # * `CustomUserData` -- arbitrary user data to associate with the
1189
+ # endpoint. Amazon SNS does not use this data. The data must be in
1190
+ # UTF-8 format and less than 2KB.
1191
+ #
1192
+ # * `Enabled` -- flag that enables/disables delivery to the endpoint.
1193
+ # Amazon SNS will set this to false when a notification service
1194
+ # indicates to Amazon SNS that the endpoint is invalid. Users can set
1195
+ # it back to true, typically after updating Token.
1196
+ #
1197
+ # * `Token` -- device token, also referred to as a registration id, for
1198
+ # an app and mobile device. This is returned from the notification
1199
+ # service when an app and mobile device are registered with the
1200
+ # notification service.
1201
+ #
1202
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1203
+ #
1204
+ # @example Request syntax with placeholder values
1205
+ #
1206
+ # resp = client.set_endpoint_attributes({
1207
+ # endpoint_arn: "String", # required
1208
+ # attributes: { # required
1209
+ # "String" => "String",
1210
+ # },
1211
+ # })
1212
+ #
1213
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/SetEndpointAttributes AWS API Documentation
1214
+ #
1215
+ # @overload set_endpoint_attributes(params = {})
1216
+ # @param [Hash] params ({})
1217
+ def set_endpoint_attributes(params = {}, options = {})
1218
+ req = build_request(:set_endpoint_attributes, params)
1219
+ req.send_request(options)
1220
+ end
1089
1221
 
1090
- # Use this request to set the default settings for sending SMS messages
1091
- # and receiving daily SMS usage reports.
1092
- #
1093
- # You can override some of these settings for a single message when you
1094
- # use the `Publish` action with the `MessageAttributes.entry.N`
1095
- # parameter. For more information, see [Sending an SMS Message][1] in
1096
- # the *Amazon SNS Developer Guide*.
1097
- #
1098
- #
1099
- #
1100
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html
1101
- # @option params [required, Hash<String,String>] :attributes
1102
- # The default settings for sending SMS messages from your account. You
1103
- # can set values for the following attribute names:
1104
- #
1105
- # `MonthlySpendLimit` The maximum amount in USD that you are willing
1106
- # to spend each month to send SMS messages. When Amazon SNS determines
1107
- # that sending an SMS message would incur a cost that exceeds this
1108
- # limit, it stops sending SMS messages within minutes.
1109
- #
1110
- # Amazon SNS stops sending SMS messages within minutes of the limit
1111
- # being crossed. During that interval, if you continue to send SMS
1112
- # messages, you will incur costs that exceed your limit.
1113
- #
1114
- # By default, the spend limit is set to the maximum allowed by Amazon
1115
- # SNS. If you want to exceed the maximum, contact [AWS Support][1] or
1116
- # your AWS sales representative for a service limit increase.
1117
- #
1118
- # `DeliveryStatusIAMRole` – The ARN of the IAM role that allows Amazon
1119
- # SNS to write logs about SMS deliveries in CloudWatch Logs. For each
1120
- # SMS message that you send, Amazon SNS writes a log that includes the
1121
- # message price, the success or failure status, the reason for failure
1122
- # (if the message failed), the message dwell time, and other
1123
- # information.
1124
- #
1125
- # `DeliveryStatusSuccessSamplingRate` The percentage of successful SMS
1126
- # deliveries for which Amazon SNS will write logs in CloudWatch Logs.
1127
- # The value can be an integer from 0 - 100. For example, to write logs
1128
- # only for failed deliveries, set this value to `0`. To write logs for
1129
- # 10% of your successful deliveries, set it to `10`.
1130
- #
1131
- # `DefaultSenderID` – A string, such as your business brand, that is
1132
- # displayed as the sender on the receiving device. Support for sender
1133
- # IDs varies by country. The sender ID can be 1 - 11 alphanumeric
1134
- # characters, and it must contain at least one letter.
1135
- #
1136
- # `DefaultSMSType` The type of SMS message that you will send by
1137
- # default. You can assign the following values:
1138
- #
1139
- # * `Promotional` – (Default) Noncritical messages, such as marketing
1140
- # messages. Amazon SNS optimizes the message delivery to incur the
1141
- # lowest cost.
1142
- #
1143
- # * `Transactional` Critical messages that support customer
1144
- # transactions, such as one-time passcodes for multi-factor
1145
- # authentication. Amazon SNS optimizes the message delivery to achieve
1146
- # the highest reliability.
1147
- #
1148
- # `UsageReportS3Bucket` The name of the Amazon S3 bucket to receive
1149
- # daily SMS usage reports from Amazon SNS. Each day, Amazon SNS will
1150
- # deliver a usage report as a CSV file to the bucket. The report
1151
- # includes the following information for each SMS message that was
1152
- # successfully delivered by your account:
1153
- #
1154
- # * Time that the message was published (in UTC)
1155
- #
1156
- # * Message ID
1157
- #
1158
- # * Destination phone number
1159
- #
1160
- # * Message type
1161
- #
1162
- # * Delivery status
1163
- #
1164
- # * Message price (in USD)
1165
- #
1166
- # * Part number (a message is split into multiple parts if it is too
1167
- # long for a single message)
1168
- #
1169
- # * Total number of parts
1170
- #
1171
- # To receive the report, the bucket must have a policy that allows the
1172
- # Amazon SNS service principle to perform the `s3:PutObject` and
1173
- # `s3:GetBucketLocation` actions.
1174
- #
1175
- # For an example bucket policy and usage report, see [Monitoring SMS
1176
- # Activity][2] in the *Amazon SNS Developer Guide*.
1177
- #
1178
- #
1179
- #
1180
- # [1]: https://aws.amazon.com/premiumsupport/
1181
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/sms_stats.html
1182
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1183
- #
1184
- # @example Request syntax with placeholder values
1185
- # resp = client.set_sms_attributes({
1186
- # attributes: { # required
1187
- # "String" => "String",
1188
- # },
1189
- # })
1190
- # @overload set_sms_attributes(params = {})
1191
- # @param [Hash] params ({})
1192
- def set_sms_attributes(params = {}, options = {})
1193
- req = build_request(:set_sms_attributes, params)
1194
- req.send_request(options)
1195
- end
1222
+ # Sets the attributes of the platform application object for the
1223
+ # supported push notification services, such as APNS and GCM. For more
1224
+ # information, see [Using Amazon SNS Mobile Push Notifications][1]. For
1225
+ # information on configuring attributes for message delivery status, see
1226
+ # [Using Amazon SNS Application Attributes for Message Delivery
1227
+ # Status][2].
1228
+ #
1229
+ #
1230
+ #
1231
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1232
+ # [2]: http://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html
1233
+ #
1234
+ # @option params [required, String] :platform_application_arn
1235
+ # PlatformApplicationArn for SetPlatformApplicationAttributes action.
1236
+ #
1237
+ # @option params [required, Hash<String,String>] :attributes
1238
+ # A map of the platform application attributes. Attributes in this map
1239
+ # include the following:
1240
+ #
1241
+ # * `PlatformCredential` -- The credential received from the
1242
+ # notification service. For APNS/APNS\_SANDBOX, PlatformCredential is
1243
+ # private key. For GCM, PlatformCredential is "API key". For ADM,
1244
+ # PlatformCredential is "client secret".
1245
+ #
1246
+ # * `PlatformPrincipal` -- The principal received from the notification
1247
+ # service. For APNS/APNS\_SANDBOX, PlatformPrincipal is SSL
1248
+ # certificate. For GCM, PlatformPrincipal is not applicable. For ADM,
1249
+ # PlatformPrincipal is "client id".
1250
+ #
1251
+ # * `EventEndpointCreated` -- Topic ARN to which EndpointCreated event
1252
+ # notifications should be sent.
1253
+ #
1254
+ # * `EventEndpointDeleted` -- Topic ARN to which EndpointDeleted event
1255
+ # notifications should be sent.
1256
+ #
1257
+ # * `EventEndpointUpdated` -- Topic ARN to which EndpointUpdate event
1258
+ # notifications should be sent.
1259
+ #
1260
+ # * `EventDeliveryFailure` -- Topic ARN to which DeliveryFailure event
1261
+ # notifications should be sent upon Direct Publish delivery failure
1262
+ # (permanent) to one of the application's endpoints.
1263
+ #
1264
+ # * `SuccessFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
1265
+ # write access to use CloudWatch Logs on your behalf.
1266
+ #
1267
+ # * `FailureFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
1268
+ # write access to use CloudWatch Logs on your behalf.
1269
+ #
1270
+ # * `SuccessFeedbackSampleRate` -- Sample rate percentage (0-100) of
1271
+ # successfully delivered messages.
1272
+ #
1273
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1274
+ #
1275
+ # @example Request syntax with placeholder values
1276
+ #
1277
+ # resp = client.set_platform_application_attributes({
1278
+ # platform_application_arn: "String", # required
1279
+ # attributes: { # required
1280
+ # "String" => "String",
1281
+ # },
1282
+ # })
1283
+ #
1284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/SetPlatformApplicationAttributes AWS API Documentation
1285
+ #
1286
+ # @overload set_platform_application_attributes(params = {})
1287
+ # @param [Hash] params ({})
1288
+ def set_platform_application_attributes(params = {}, options = {})
1289
+ req = build_request(:set_platform_application_attributes, params)
1290
+ req.send_request(options)
1291
+ end
1196
1292
 
1197
- # Allows a subscription owner to set an attribute of the topic to a new
1198
- # value.
1199
- # @option params [required, String] :subscription_arn
1200
- # The ARN of the subscription to modify.
1201
- # @option params [required, String] :attribute_name
1202
- # The name of the attribute you want to set. Only a subset of the
1203
- # subscriptions attributes are mutable.
1204
- #
1205
- # Valid values: `DeliveryPolicy` \| `RawMessageDelivery`
1206
- # @option params [String] :attribute_value
1207
- # The new value for the attribute in JSON format.
1208
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1209
- #
1210
- # @example Request syntax with placeholder values
1211
- # resp = client.set_subscription_attributes({
1212
- # subscription_arn: "subscriptionARN", # required
1213
- # attribute_name: "attributeName", # required
1214
- # attribute_value: "attributeValue",
1215
- # })
1216
- # @overload set_subscription_attributes(params = {})
1217
- # @param [Hash] params ({})
1218
- def set_subscription_attributes(params = {}, options = {})
1219
- req = build_request(:set_subscription_attributes, params)
1220
- req.send_request(options)
1221
- end
1293
+ # Use this request to set the default settings for sending SMS messages
1294
+ # and receiving daily SMS usage reports.
1295
+ #
1296
+ # You can override some of these settings for a single message when you
1297
+ # use the `Publish` action with the `MessageAttributes.entry.N`
1298
+ # parameter. For more information, see [Sending an SMS Message][1] in
1299
+ # the *Amazon SNS Developer Guide*.
1300
+ #
1301
+ #
1302
+ #
1303
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html
1304
+ #
1305
+ # @option params [required, Hash<String,String>] :attributes
1306
+ # The default settings for sending SMS messages from your account. You
1307
+ # can set values for the following attribute names:
1308
+ #
1309
+ # `MonthlySpendLimit` The maximum amount in USD that you are willing
1310
+ # to spend each month to send SMS messages. When Amazon SNS determines
1311
+ # that sending an SMS message would incur a cost that exceeds this
1312
+ # limit, it stops sending SMS messages within minutes.
1313
+ #
1314
+ # Amazon SNS stops sending SMS messages within minutes of the limit
1315
+ # being crossed. During that interval, if you continue to send SMS
1316
+ # messages, you will incur costs that exceed your limit.
1317
+ #
1318
+ # By default, the spend limit is set to the maximum allowed by Amazon
1319
+ # SNS. If you want to exceed the maximum, contact [AWS Support][1] or
1320
+ # your AWS sales representative for a service limit increase.
1321
+ #
1322
+ # `DeliveryStatusIAMRole` – The ARN of the IAM role that allows Amazon
1323
+ # SNS to write logs about SMS deliveries in CloudWatch Logs. For each
1324
+ # SMS message that you send, Amazon SNS writes a log that includes the
1325
+ # message price, the success or failure status, the reason for failure
1326
+ # (if the message failed), the message dwell time, and other
1327
+ # information.
1328
+ #
1329
+ # `DeliveryStatusSuccessSamplingRate` – The percentage of successful SMS
1330
+ # deliveries for which Amazon SNS will write logs in CloudWatch Logs.
1331
+ # The value can be an integer from 0 - 100. For example, to write logs
1332
+ # only for failed deliveries, set this value to `0`. To write logs for
1333
+ # 10% of your successful deliveries, set it to `10`.
1334
+ #
1335
+ # `DefaultSenderID` – A string, such as your business brand, that is
1336
+ # displayed as the sender on the receiving device. Support for sender
1337
+ # IDs varies by country. The sender ID can be 1 - 11 alphanumeric
1338
+ # characters, and it must contain at least one letter.
1339
+ #
1340
+ # `DefaultSMSType` – The type of SMS message that you will send by
1341
+ # default. You can assign the following values:
1342
+ #
1343
+ # * `Promotional` – (Default) Noncritical messages, such as marketing
1344
+ # messages. Amazon SNS optimizes the message delivery to incur the
1345
+ # lowest cost.
1346
+ #
1347
+ # * `Transactional` – Critical messages that support customer
1348
+ # transactions, such as one-time passcodes for multi-factor
1349
+ # authentication. Amazon SNS optimizes the message delivery to achieve
1350
+ # the highest reliability.
1351
+ #
1352
+ # `UsageReportS3Bucket` – The name of the Amazon S3 bucket to receive
1353
+ # daily SMS usage reports from Amazon SNS. Each day, Amazon SNS will
1354
+ # deliver a usage report as a CSV file to the bucket. The report
1355
+ # includes the following information for each SMS message that was
1356
+ # successfully delivered by your account:
1357
+ #
1358
+ # * Time that the message was published (in UTC)
1359
+ #
1360
+ # * Message ID
1361
+ #
1362
+ # * Destination phone number
1363
+ #
1364
+ # * Message type
1365
+ #
1366
+ # * Delivery status
1367
+ #
1368
+ # * Message price (in USD)
1369
+ #
1370
+ # * Part number (a message is split into multiple parts if it is too
1371
+ # long for a single message)
1372
+ #
1373
+ # * Total number of parts
1374
+ #
1375
+ # To receive the report, the bucket must have a policy that allows the
1376
+ # Amazon SNS service principle to perform the `s3:PutObject` and
1377
+ # `s3:GetBucketLocation` actions.
1378
+ #
1379
+ # For an example bucket policy and usage report, see [Monitoring SMS
1380
+ # Activity][2] in the *Amazon SNS Developer Guide*.
1381
+ #
1382
+ #
1383
+ #
1384
+ # [1]: https://aws.amazon.com/premiumsupport/
1385
+ # [2]: http://docs.aws.amazon.com/sns/latest/dg/sms_stats.html
1386
+ #
1387
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1388
+ #
1389
+ # @example Request syntax with placeholder values
1390
+ #
1391
+ # resp = client.set_sms_attributes({
1392
+ # attributes: { # required
1393
+ # "String" => "String",
1394
+ # },
1395
+ # })
1396
+ #
1397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/SetSMSAttributes AWS API Documentation
1398
+ #
1399
+ # @overload set_sms_attributes(params = {})
1400
+ # @param [Hash] params ({})
1401
+ def set_sms_attributes(params = {}, options = {})
1402
+ req = build_request(:set_sms_attributes, params)
1403
+ req.send_request(options)
1404
+ end
1222
1405
 
1223
- # Allows a topic owner to set an attribute of the topic to a new value.
1224
- # @option params [required, String] :topic_arn
1225
- # The ARN of the topic to modify.
1226
- # @option params [required, String] :attribute_name
1227
- # The name of the attribute you want to set. Only a subset of the
1228
- # topic's attributes are mutable.
1229
- #
1230
- # Valid values: `Policy` \| `DisplayName` \| `DeliveryPolicy`
1231
- # @option params [String] :attribute_value
1232
- # The new value for the attribute.
1233
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1234
- #
1235
- # @example Request syntax with placeholder values
1236
- # resp = client.set_topic_attributes({
1237
- # topic_arn: "topicARN", # required
1238
- # attribute_name: "attributeName", # required
1239
- # attribute_value: "attributeValue",
1240
- # })
1241
- # @overload set_topic_attributes(params = {})
1242
- # @param [Hash] params ({})
1243
- def set_topic_attributes(params = {}, options = {})
1244
- req = build_request(:set_topic_attributes, params)
1245
- req.send_request(options)
1246
- end
1406
+ # Allows a subscription owner to set an attribute of the topic to a new
1407
+ # value.
1408
+ #
1409
+ # @option params [required, String] :subscription_arn
1410
+ # The ARN of the subscription to modify.
1411
+ #
1412
+ # @option params [required, String] :attribute_name
1413
+ # The name of the attribute you want to set. Only a subset of the
1414
+ # subscriptions attributes are mutable.
1415
+ #
1416
+ # Valid values: `DeliveryPolicy` \| `RawMessageDelivery`
1417
+ #
1418
+ # @option params [String] :attribute_value
1419
+ # The new value for the attribute in JSON format.
1420
+ #
1421
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1422
+ #
1423
+ # @example Request syntax with placeholder values
1424
+ #
1425
+ # resp = client.set_subscription_attributes({
1426
+ # subscription_arn: "subscriptionARN", # required
1427
+ # attribute_name: "attributeName", # required
1428
+ # attribute_value: "attributeValue",
1429
+ # })
1430
+ #
1431
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/SetSubscriptionAttributes AWS API Documentation
1432
+ #
1433
+ # @overload set_subscription_attributes(params = {})
1434
+ # @param [Hash] params ({})
1435
+ def set_subscription_attributes(params = {}, options = {})
1436
+ req = build_request(:set_subscription_attributes, params)
1437
+ req.send_request(options)
1438
+ end
1247
1439
 
1248
- # Prepares to subscribe an endpoint by sending the endpoint a
1249
- # confirmation message. To actually create a subscription, the endpoint
1250
- # owner must call the `ConfirmSubscription` action with the token from
1251
- # the confirmation message. Confirmation tokens are valid for three
1252
- # days.
1253
- # @option params [required, String] :topic_arn
1254
- # The ARN of the topic you want to subscribe to.
1255
- # @option params [required, String] :protocol
1256
- # The protocol you want to use. Supported protocols include:
1257
- #
1258
- # * `http` -- delivery of JSON-encoded message via HTTP POST
1259
- #
1260
- # * `https` -- delivery of JSON-encoded message via HTTPS POST
1261
- #
1262
- # * `email` -- delivery of message via SMTP
1263
- #
1264
- # * `email-json` -- delivery of JSON-encoded message via SMTP
1265
- #
1266
- # * `sms` -- delivery of message via SMS
1267
- #
1268
- # * `sqs` -- delivery of JSON-encoded message to an Amazon SQS queue
1269
- #
1270
- # * `application` -- delivery of JSON-encoded message to an EndpointArn
1271
- # for a mobile app and device.
1272
- #
1273
- # * `lambda` -- delivery of JSON-encoded message to an AWS Lambda
1274
- # function.
1275
- # @option params [String] :endpoint
1276
- # The endpoint that you want to receive notifications. Endpoints vary by
1277
- # protocol:
1278
- #
1279
- # * For the `http` protocol, the endpoint is an URL beginning with
1280
- # "http://"
1281
- #
1282
- # * For the `https` protocol, the endpoint is a URL beginning with
1283
- # "https://"
1284
- #
1285
- # * For the `email` protocol, the endpoint is an email address
1286
- #
1287
- # * For the `email-json` protocol, the endpoint is an email address
1288
- #
1289
- # * For the `sms` protocol, the endpoint is a phone number of an
1290
- # SMS-enabled device
1291
- #
1292
- # * For the `sqs` protocol, the endpoint is the ARN of an Amazon SQS
1293
- # queue
1294
- #
1295
- # * For the `application` protocol, the endpoint is the EndpointArn of a
1296
- # mobile app and device.
1297
- #
1298
- # * For the `lambda` protocol, the endpoint is the ARN of an AWS Lambda
1299
- # function.
1300
- # @return [Types::SubscribeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1301
- #
1302
- # * {Types::SubscribeResponse#subscription_arn #SubscriptionArn} => String
1303
- #
1304
- # @example Request syntax with placeholder values
1305
- # resp = client.subscribe({
1306
- # topic_arn: "topicARN", # required
1307
- # protocol: "protocol", # required
1308
- # endpoint: "endpoint",
1309
- # })
1310
- #
1311
- # @example Response structure
1312
- # resp.subscription_arn #=> String
1313
- # @overload subscribe(params = {})
1314
- # @param [Hash] params ({})
1315
- def subscribe(params = {}, options = {})
1316
- req = build_request(:subscribe, params)
1317
- req.send_request(options)
1318
- end
1440
+ # Allows a topic owner to set an attribute of the topic to a new value.
1441
+ #
1442
+ # @option params [required, String] :topic_arn
1443
+ # The ARN of the topic to modify.
1444
+ #
1445
+ # @option params [required, String] :attribute_name
1446
+ # The name of the attribute you want to set. Only a subset of the
1447
+ # topic's attributes are mutable.
1448
+ #
1449
+ # Valid values: `Policy` \| `DisplayName` \| `DeliveryPolicy`
1450
+ #
1451
+ # @option params [String] :attribute_value
1452
+ # The new value for the attribute.
1453
+ #
1454
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1455
+ #
1456
+ # @example Request syntax with placeholder values
1457
+ #
1458
+ # resp = client.set_topic_attributes({
1459
+ # topic_arn: "topicARN", # required
1460
+ # attribute_name: "attributeName", # required
1461
+ # attribute_value: "attributeValue",
1462
+ # })
1463
+ #
1464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/SetTopicAttributes AWS API Documentation
1465
+ #
1466
+ # @overload set_topic_attributes(params = {})
1467
+ # @param [Hash] params ({})
1468
+ def set_topic_attributes(params = {}, options = {})
1469
+ req = build_request(:set_topic_attributes, params)
1470
+ req.send_request(options)
1471
+ end
1319
1472
 
1320
- # Deletes a subscription. If the subscription requires authentication
1321
- # for deletion, only the owner of the subscription or the topic's owner
1322
- # can unsubscribe, and an AWS signature is required. If the
1323
- # `Unsubscribe` call does not require authentication and the requester
1324
- # is not the subscription owner, a final cancellation message is
1325
- # delivered to the endpoint, so that the endpoint owner can easily
1326
- # resubscribe to the topic if the `Unsubscribe` request was unintended.
1327
- # @option params [required, String] :subscription_arn
1328
- # The ARN of the subscription to be deleted.
1329
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1330
- #
1331
- # @example Request syntax with placeholder values
1332
- # resp = client.unsubscribe({
1333
- # subscription_arn: "subscriptionARN", # required
1334
- # })
1335
- # @overload unsubscribe(params = {})
1336
- # @param [Hash] params ({})
1337
- def unsubscribe(params = {}, options = {})
1338
- req = build_request(:unsubscribe, params)
1339
- req.send_request(options)
1340
- end
1473
+ # Prepares to subscribe an endpoint by sending the endpoint a
1474
+ # confirmation message. To actually create a subscription, the endpoint
1475
+ # owner must call the `ConfirmSubscription` action with the token from
1476
+ # the confirmation message. Confirmation tokens are valid for three
1477
+ # days.
1478
+ #
1479
+ # @option params [required, String] :topic_arn
1480
+ # The ARN of the topic you want to subscribe to.
1481
+ #
1482
+ # @option params [required, String] :protocol
1483
+ # The protocol you want to use. Supported protocols include:
1484
+ #
1485
+ # * `http` -- delivery of JSON-encoded message via HTTP POST
1486
+ #
1487
+ # * `https` -- delivery of JSON-encoded message via HTTPS POST
1488
+ #
1489
+ # * `email` -- delivery of message via SMTP
1490
+ #
1491
+ # * `email-json` -- delivery of JSON-encoded message via SMTP
1492
+ #
1493
+ # * `sms` -- delivery of message via SMS
1494
+ #
1495
+ # * `sqs` -- delivery of JSON-encoded message to an Amazon SQS queue
1496
+ #
1497
+ # * `application` -- delivery of JSON-encoded message to an EndpointArn
1498
+ # for a mobile app and device.
1499
+ #
1500
+ # * `lambda` -- delivery of JSON-encoded message to an AWS Lambda
1501
+ # function.
1502
+ #
1503
+ # @option params [String] :endpoint
1504
+ # The endpoint that you want to receive notifications. Endpoints vary by
1505
+ # protocol:
1506
+ #
1507
+ # * For the `http` protocol, the endpoint is an URL beginning with
1508
+ # "http://"
1509
+ #
1510
+ # * For the `https` protocol, the endpoint is a URL beginning with
1511
+ # "https://"
1512
+ #
1513
+ # * For the `email` protocol, the endpoint is an email address
1514
+ #
1515
+ # * For the `email-json` protocol, the endpoint is an email address
1516
+ #
1517
+ # * For the `sms` protocol, the endpoint is a phone number of an
1518
+ # SMS-enabled device
1519
+ #
1520
+ # * For the `sqs` protocol, the endpoint is the ARN of an Amazon SQS
1521
+ # queue
1522
+ #
1523
+ # * For the `application` protocol, the endpoint is the EndpointArn of a
1524
+ # mobile app and device.
1525
+ #
1526
+ # * For the `lambda` protocol, the endpoint is the ARN of an AWS Lambda
1527
+ # function.
1528
+ #
1529
+ # @return [Types::SubscribeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1530
+ #
1531
+ # * {Types::SubscribeResponse#subscription_arn #subscription_arn} => String
1532
+ #
1533
+ # @example Request syntax with placeholder values
1534
+ #
1535
+ # resp = client.subscribe({
1536
+ # topic_arn: "topicARN", # required
1537
+ # protocol: "protocol", # required
1538
+ # endpoint: "endpoint",
1539
+ # })
1540
+ #
1541
+ # @example Response structure
1542
+ #
1543
+ # resp.subscription_arn #=> String
1544
+ #
1545
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/Subscribe AWS API Documentation
1546
+ #
1547
+ # @overload subscribe(params = {})
1548
+ # @param [Hash] params ({})
1549
+ def subscribe(params = {}, options = {})
1550
+ req = build_request(:subscribe, params)
1551
+ req.send_request(options)
1552
+ end
1341
1553
 
1342
- # @!endgroup
1554
+ # Deletes a subscription. If the subscription requires authentication
1555
+ # for deletion, only the owner of the subscription or the topic's owner
1556
+ # can unsubscribe, and an AWS signature is required. If the
1557
+ # `Unsubscribe` call does not require authentication and the requester
1558
+ # is not the subscription owner, a final cancellation message is
1559
+ # delivered to the endpoint, so that the endpoint owner can easily
1560
+ # resubscribe to the topic if the `Unsubscribe` request was unintended.
1561
+ #
1562
+ # @option params [required, String] :subscription_arn
1563
+ # The ARN of the subscription to be deleted.
1564
+ #
1565
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1566
+ #
1567
+ # @example Request syntax with placeholder values
1568
+ #
1569
+ # resp = client.unsubscribe({
1570
+ # subscription_arn: "subscriptionARN", # required
1571
+ # })
1572
+ #
1573
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/Unsubscribe AWS API Documentation
1574
+ #
1575
+ # @overload unsubscribe(params = {})
1576
+ # @param [Hash] params ({})
1577
+ def unsubscribe(params = {}, options = {})
1578
+ req = build_request(:unsubscribe, params)
1579
+ req.send_request(options)
1580
+ end
1343
1581
 
1344
- # @param params ({})
1345
- # @api private
1346
- def build_request(operation_name, params = {})
1347
- handlers = @handlers.for(operation_name)
1348
- context = Seahorse::Client::RequestContext.new(
1349
- operation_name: operation_name,
1350
- operation: config.api.operation(operation_name),
1351
- client: self,
1352
- params: params,
1353
- config: config)
1354
- context[:gem_name] = 'aws-sdk-sns'
1355
- context[:gem_version] = '1.0.0.rc1'
1356
- Seahorse::Client::Request.new(handlers, context)
1357
- end
1582
+ # @!endgroup
1358
1583
 
1359
- # @api private
1360
- # @deprecated
1361
- def waiter_names
1362
- []
1363
- end
1584
+ # @param params ({})
1585
+ # @api private
1586
+ def build_request(operation_name, params = {})
1587
+ handlers = @handlers.for(operation_name)
1588
+ context = Seahorse::Client::RequestContext.new(
1589
+ operation_name: operation_name,
1590
+ operation: config.api.operation(operation_name),
1591
+ client: self,
1592
+ params: params,
1593
+ config: config)
1594
+ context[:gem_name] = 'aws-sdk-sns'
1595
+ context[:gem_version] = '1.0.0.rc2'
1596
+ Seahorse::Client::Request.new(handlers, context)
1597
+ end
1364
1598
 
1365
- class << self
1599
+ # @api private
1600
+ # @deprecated
1601
+ def waiter_names
1602
+ []
1603
+ end
1366
1604
 
1367
- # @api private
1368
- attr_reader :identifier
1605
+ class << self
1369
1606
 
1370
- # @api private
1371
- def errors_module
1372
- Errors
1373
- end
1607
+ # @api private
1608
+ attr_reader :identifier
1374
1609
 
1610
+ # @api private
1611
+ def errors_module
1612
+ Errors
1375
1613
  end
1614
+
1376
1615
  end
1377
1616
  end
1378
1617
  end