aws-sdk 1.5.8 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. data/lib/aws.rb +2 -0
  2. data/lib/aws/api_config/Route53-2012-02-29.yml +348 -0
  3. data/lib/aws/auto_scaling/client.rb +362 -588
  4. data/lib/aws/cloud_formation/client.rb +155 -224
  5. data/lib/aws/cloud_watch/client.rb +156 -229
  6. data/lib/aws/core.rb +67 -52
  7. data/lib/aws/core/client.rb +81 -82
  8. data/lib/aws/core/collection/with_limit_and_next_token.rb +2 -2
  9. data/lib/aws/core/configuration.rb +75 -72
  10. data/lib/aws/core/http/net_http_handler.rb +3 -3
  11. data/lib/aws/core/http/request.rb +107 -138
  12. data/lib/aws/core/inflection.rb +3 -3
  13. data/lib/aws/core/json_client.rb +106 -0
  14. data/lib/aws/core/option_grammar.rb +10 -1
  15. data/lib/aws/core/options/validator.rb +140 -0
  16. data/lib/aws/core/options/xml_serializer.rb +98 -0
  17. data/lib/aws/core/query_client.rb +131 -0
  18. data/lib/aws/core/rest_client.rb +90 -0
  19. data/lib/aws/core/rest_client/input_handler.rb +145 -0
  20. data/lib/aws/core/rest_client/output_handler.rb +43 -0
  21. data/lib/aws/core/signature/version_2.rb +7 -7
  22. data/lib/aws/core/signature/version_3.rb +5 -1
  23. data/lib/aws/core/signature/version_3_https.rb +51 -0
  24. data/lib/aws/core/signature/version_4.rb +5 -22
  25. data/lib/aws/core/signer.rb +1 -1
  26. data/lib/aws/core/uri_escape.rb +2 -0
  27. data/lib/aws/core/xml/frame.rb +8 -8
  28. data/lib/aws/core/xml/grammar.rb +8 -3
  29. data/lib/aws/dynamo_db/client.rb +600 -662
  30. data/lib/aws/ec2/client.rb +2688 -3492
  31. data/lib/aws/ec2/request.rb +0 -1
  32. data/lib/aws/elb/client.rb +280 -407
  33. data/lib/aws/emr/client.rb +7 -7
  34. data/lib/aws/iam/client.rb +822 -1268
  35. data/lib/aws/route_53.rb +71 -0
  36. data/lib/aws/route_53/client.rb +272 -0
  37. data/lib/aws/route_53/config.rb +18 -0
  38. data/lib/aws/route_53/errors.rb +22 -0
  39. data/lib/aws/route_53/request.rb +23 -0
  40. data/lib/aws/s3/object_version_collection.rb +6 -6
  41. data/lib/aws/s3/paginated_collection.rb +1 -1
  42. data/lib/aws/s3/request.rb +10 -5
  43. data/lib/aws/simple_db/client.rb +184 -234
  44. data/lib/aws/simple_email_service/client.rb +147 -238
  45. data/lib/aws/simple_workflow/client.rb +997 -1191
  46. data/lib/aws/sns/client.rb +176 -264
  47. data/lib/aws/sqs/client.rb +162 -253
  48. data/lib/aws/sqs/queue.rb +1 -1
  49. data/lib/aws/sqs/request.rb +4 -0
  50. data/lib/aws/sts/client.rb +57 -66
  51. metadata +95 -71
  52. data/lib/aws/core/client/query_json.rb +0 -112
  53. data/lib/aws/core/client/query_xml.rb +0 -122
@@ -19,7 +19,7 @@ module AWS
19
19
 
20
20
  API_VERSION = '2010-03-31'
21
21
 
22
- extend Core::Client::QueryXML
22
+ extend Core::QueryClient
23
23
 
24
24
  # @private
25
25
  CACHEABLE_REQUESTS = Set[]
@@ -28,340 +28,252 @@ module AWS
28
28
 
29
29
  # Calls the AddPermission API operation.
30
30
  # @method add_permission(options = {})
31
- #
32
- # === Options:
33
- #
34
- # * +:topic_arn+ - *required* - (String) The ARN of the topic whose
35
- # access control policy you wish to modify.
36
- # * +:label+ - *required* - (String) A unique identifier for the new
37
- # policy statement.
38
- # * +:aws_account_id+ - *required* - (Array<String>) The AWS account IDs
39
- # of the users (principals) who will be given access to the specified
40
- # actions. The users must have AWS accounts, but do not need to be
41
- # signed up for this service.
42
- # * +:action_name+ - *required* - (Array<String>) The action you want to
43
- # allow for the specified principal(s). Valid values: any Amazon SNS
44
- # action name.
45
- #
46
- # === Response Structure:
47
- #
48
- # This method returns no response data.
49
- #
31
+ # @param [Hash] options
32
+ # * +:topic_arn+ - *required* - (String) The ARN of the topic whose
33
+ # access control policy you wish to modify.
34
+ # * +:label+ - *required* - (String) A unique identifier for the new
35
+ # policy statement.
36
+ # * +:aws_account_id+ - *required* - (Array<String>) The AWS account
37
+ # IDs of the users (principals) who will be given access to the
38
+ # specified actions. The users must have AWS accounts, but do not
39
+ # need to be signed up for this service.
40
+ # * +:action_name+ - *required* - (Array<String>) The action you want
41
+ # to allow for the specified principal(s). Valid values: any Amazon
42
+ # SNS action name.
50
43
  # @return [Core::Response]
51
- #
52
44
  define_client_method :add_permission, 'AddPermission'
53
45
 
54
46
  # Calls the ConfirmSubscription API operation.
55
47
  # @method confirm_subscription(options = {})
56
- #
57
- # === Options:
58
- #
59
- # * +:topic_arn+ - *required* - (String) The ARN of the topic for which
60
- # you wish to confirm a subscription.
61
- # * +:token+ - *required* - (String) Short-lived token sent to an
62
- # endpoint during the Subscribe action.
63
- # * +:authenticate_on_unsubscribe+ - (String) Disallows unauthenticated
64
- # unsubscribes of the subscription. If the value of this parameter is
65
- # +true+ and the request has an AWS signature, then only the topic
66
- # owner and the subscription owner can unsubscribe the endpoint. The
67
- # unsubscribe action will require AWS authentication.
68
- #
69
- # === Response Structure:
70
- #
71
- # * +:subscription_arn+ - (String)
72
- #
48
+ # @param [Hash] options
49
+ # * +:topic_arn+ - *required* - (String) The ARN of the topic for which
50
+ # you wish to confirm a subscription.
51
+ # * +:token+ - *required* - (String) Short-lived token sent to an
52
+ # endpoint during the Subscribe action.
53
+ # * +:authenticate_on_unsubscribe+ - (String) Disallows unauthenticated
54
+ # unsubscribes of the subscription. If the value of this parameter is
55
+ # +true+ and the request has an AWS signature, then only the topic
56
+ # owner and the subscription owner can unsubscribe the endpoint. The
57
+ # unsubscribe action will require AWS authentication.
73
58
  # @return [Core::Response]
74
- #
59
+ # The #data method of the response object returns
60
+ # a hash with the following structure:
61
+ # * +:subscription_arn+ - (String)
75
62
  define_client_method :confirm_subscription, 'ConfirmSubscription'
76
63
 
77
64
  # Calls the CreateTopic API operation.
78
65
  # @method create_topic(options = {})
79
- #
80
- # === Options:
81
- #
82
- # * +:name+ - *required* - (String) The name of the topic you want to
83
- # create. Constraints: Topic names must be made up of only uppercase
84
- # and lowercase ASCII letters, numbers, and hyphens, and must be
85
- # between 1 and 256 characters long.
86
- #
87
- # === Response Structure:
88
- #
89
- # * +:topic_arn+ - (String)
90
- #
66
+ # @param [Hash] options
67
+ # * +:name+ - *required* - (String) The name of the topic you want to
68
+ # create. Constraints: Topic names must be made up of only uppercase
69
+ # and lowercase ASCII letters, numbers, and hyphens, and must be
70
+ # between 1 and 256 characters long.
91
71
  # @return [Core::Response]
92
- #
72
+ # The #data method of the response object returns
73
+ # a hash with the following structure:
74
+ # * +:topic_arn+ - (String)
93
75
  define_client_method :create_topic, 'CreateTopic'
94
76
 
95
77
  # Calls the DeleteTopic API operation.
96
78
  # @method delete_topic(options = {})
97
- #
98
- # === Options:
99
- #
100
- # * +:topic_arn+ - *required* - (String) The ARN of the topic you want to
101
- # delete. http://sns.us-east-1.amazonaws.com/
102
- # ?TopicArn=arn%3Aaws%3Asns%3Aus-east-1%3A123456789012%3AMy-Topic
103
- # &Action=DeleteTopic &SignatureVersion=2 &SignatureMethod=HmacSHA256
104
- # &Timestamp=2010-03-31T12%3A00%3A00.000Z &AWSAccessKeyId=(AWS Access
105
- # Key ID)
106
- # &Signature=DjHBa%2BbYCKQAzctOPnLP7MbHnrHT3%2FK3kFEZjwcf9%2FU%3D
107
- # <DeleteTopicResponse
108
- # xmlns="http://sns.amazonaws.com/doc/2010-03-31/"> <ResponseMetadata>
109
- # <RequestId>fba800b9-3765-11df-8cf3-c58c53254dfb</RequestId>
110
- # </ResponseMetadata> </DeleteTopicResponse>
111
- #
112
- # === Response Structure:
113
- #
114
- # This method returns no response data.
115
- #
79
+ # @param [Hash] options
80
+ # * +:topic_arn+ - *required* - (String) The ARN of the topic you want
81
+ # to delete. http://sns.us-east-1.amazonaws.com/
82
+ # ?TopicArn=arn%3Aaws%3Asns%3Aus-east-1%3A123456789012%3AMy-Topic
83
+ # &Action=DeleteTopic &SignatureVersion=2 &SignatureMethod=HmacSHA256
84
+ # &Timestamp=2010-03-31T12%3A00%3A00.000Z &AWSAccessKeyId=(AWS Access
85
+ # Key ID)
86
+ # &Signature=DjHBa%2BbYCKQAzctOPnLP7MbHnrHT3%2FK3kFEZjwcf9%2FU%3D
87
+ # <DeleteTopicResponse
88
+ # xmlns="http://sns.amazonaws.com/doc/2010-03-31/">
89
+ # <ResponseMetadata>
90
+ # <RequestId>fba800b9-3765-11df-8cf3-c58c53254dfb</RequestId>
91
+ # </ResponseMetadata> </DeleteTopicResponse>
116
92
  # @return [Core::Response]
117
- #
118
93
  define_client_method :delete_topic, 'DeleteTopic'
119
94
 
120
95
  # Calls the GetSubscriptionAttributes API operation.
121
96
  # @method get_subscription_attributes(options = {})
122
- #
123
- # === Options:
124
- #
125
- # * +:subscription_arn+ - *required* - (String) The ARN of the
126
- # subscription whose properties you want to get.
127
- #
128
- # === Response Structure:
129
- #
130
- # * +:attributes+ - (Hash<String,String>)
131
- #
97
+ # @param [Hash] options
98
+ # * +:subscription_arn+ - *required* - (String) The ARN of the
99
+ # subscription whose properties you want to get.
132
100
  # @return [Core::Response]
133
- #
101
+ # The #data method of the response object returns
102
+ # a hash with the following structure:
103
+ # * +:attributes+ - (Hash<String,String>)
134
104
  define_client_method :get_subscription_attributes, 'GetSubscriptionAttributes'
135
105
 
136
106
  # Calls the GetTopicAttributes API operation.
137
107
  # @method get_topic_attributes(options = {})
138
- #
139
- # === Options:
140
- #
141
- # * +:topic_arn+ - *required* - (String) The ARN of the topic whose
142
- # properties you want to get.
143
- #
144
- # === Response Structure:
145
- #
146
- # * +:attributes+ - (Hash<String,String>)
147
- #
108
+ # @param [Hash] options
109
+ # * +:topic_arn+ - *required* - (String) The ARN of the topic whose
110
+ # properties you want to get.
148
111
  # @return [Core::Response]
149
- #
112
+ # The #data method of the response object returns
113
+ # a hash with the following structure:
114
+ # * +:attributes+ - (Hash<String,String>)
150
115
  define_client_method :get_topic_attributes, 'GetTopicAttributes'
151
116
 
152
117
  # Calls the ListSubscriptions API operation.
153
118
  # @method list_subscriptions(options = {})
154
- #
155
- # === Options:
156
- #
157
- # * +:next_token+ - (String) Token returned by the previous
158
- # ListSubscriptions request.
159
- #
160
- # === Response Structure:
161
- #
162
- # * +:subscriptions+ - (Array<Hash>)
163
- # * +:subscription_arn+ - (String)
164
- # * +:owner+ - (String)
165
- # * +:protocol+ - (String)
166
- # * +:endpoint+ - (String)
167
- # * +:topic_arn+ - (String)
168
- # * +:next_token+ - (String)
169
- #
119
+ # @param [Hash] options
120
+ # * +:next_token+ - (String) Token returned by the previous
121
+ # ListSubscriptions request.
170
122
  # @return [Core::Response]
171
- #
123
+ # The #data method of the response object returns
124
+ # a hash with the following structure:
125
+ # * +:subscriptions+ - (Array<Hash>)
126
+ # * +:subscription_arn+ - (String)
127
+ # * +:owner+ - (String)
128
+ # * +:protocol+ - (String)
129
+ # * +:endpoint+ - (String)
130
+ # * +:topic_arn+ - (String)
131
+ # * +:next_token+ - (String)
172
132
  define_client_method :list_subscriptions, 'ListSubscriptions'
173
133
 
174
134
  # Calls the ListSubscriptionsByTopic API operation.
175
135
  # @method list_subscriptions_by_topic(options = {})
176
- #
177
- # === Options:
178
- #
179
- # * +:topic_arn+ - *required* - (String) The ARN of the topic for which
180
- # you wish to find subscriptions.
181
- # * +:next_token+ - (String) Token returned by the previous
182
- # ListSubscriptionsByTopic request.
183
- #
184
- # === Response Structure:
185
- #
186
- # * +:subscriptions+ - (Array<Hash>)
187
- # * +:subscription_arn+ - (String)
188
- # * +:owner+ - (String)
189
- # * +:protocol+ - (String)
190
- # * +:endpoint+ - (String)
191
- # * +:topic_arn+ - (String)
192
- # * +:next_token+ - (String)
193
- #
136
+ # @param [Hash] options
137
+ # * +:topic_arn+ - *required* - (String) The ARN of the topic for which
138
+ # you wish to find subscriptions.
139
+ # * +:next_token+ - (String) Token returned by the previous
140
+ # ListSubscriptionsByTopic request.
194
141
  # @return [Core::Response]
195
- #
142
+ # The #data method of the response object returns
143
+ # a hash with the following structure:
144
+ # * +:subscriptions+ - (Array<Hash>)
145
+ # * +:subscription_arn+ - (String)
146
+ # * +:owner+ - (String)
147
+ # * +:protocol+ - (String)
148
+ # * +:endpoint+ - (String)
149
+ # * +:topic_arn+ - (String)
150
+ # * +:next_token+ - (String)
196
151
  define_client_method :list_subscriptions_by_topic, 'ListSubscriptionsByTopic'
197
152
 
198
153
  # Calls the ListTopics API operation.
199
154
  # @method list_topics(options = {})
200
- #
201
- # === Options:
202
- #
203
- # * +:next_token+ - (String) Token returned by the previous ListTopics
204
- # request.
205
- #
206
- # === Response Structure:
207
- #
208
- # * +:topics+ - (Array<Hash>)
209
- # * +:topic_arn+ - (String)
210
- # * +:next_token+ - (String)
211
- #
155
+ # @param [Hash] options
156
+ # * +:next_token+ - (String) Token returned by the previous ListTopics
157
+ # request.
212
158
  # @return [Core::Response]
213
- #
159
+ # The #data method of the response object returns
160
+ # a hash with the following structure:
161
+ # * +:topics+ - (Array<Hash>)
162
+ # * +:topic_arn+ - (String)
163
+ # * +:next_token+ - (String)
214
164
  define_client_method :list_topics, 'ListTopics'
215
165
 
216
166
  # Calls the Publish API operation.
217
167
  # @method publish(options = {})
218
- #
219
- # === Options:
220
- #
221
- # * +:topic_arn+ - *required* - (String) The topic you want to publish
222
- # to.
223
- # * +:message+ - *required* - (String) The message you want to send to
224
- # the topic. Constraints: Messages must be UTF-8 encoded strings at
225
- # most 8 KB in size (8192 bytes, not 8192 characters).
226
- # * +:subject+ - (String) Optional parameter to be used as the "Subject"
227
- # line of when the message is delivered to e-mail endpoints. This field
228
- # will also be included, if present, in the standard JSON messages
229
- # delivered to other endpoints. Constraints: Subjects must be ASCII
230
- # text that begins with a letter, number or punctuation mark; must not
231
- # include line breaks or control characters; and must be less than 100
232
- # characters long.
233
- # * +:message_structure+ - (String) Optional parameter. It will have one
234
- # valid value: "json". If this option, Message is present and set to
235
- # "json", the value of Message must: be a syntactically valid JSON
236
- # object. It must contain at least a top level JSON key of "default"
237
- # with a value that is a string. For any other top level key that
238
- # matches one of our transport protocols (e.g. "http"), then the
239
- # corresponding value (if it is a string) will be used for the message
240
- # published for that protocol Constraints: Keys in the JSON object that
241
- # correspond to supported transport protocols must have simple JSON
242
- # string values. The values will be parsed (unescaped) before they are
243
- # used in outgoing messages. Typically, outbound notifications are JSON
244
- # encoded (meaning, the characters will be reescaped for sending). JSON
245
- # strings are UTF-8. Values have a minimum length of 0 (the empty
246
- # string, "", is allowed). Values have a maximum length bounded by the
247
- # overall message size (so, including multiple protocols may limit
248
- # message sizes). Non-string values will cause the key to be ignored.
249
- # Keys that do not correspond to supported transport protocols will be
250
- # ignored. Duplicate keys are not allowed. Failure to parse or validate
251
- # any key or value in the message will cause the Publish call to return
252
- # an error (no partial delivery).
253
- #
254
- # === Response Structure:
255
- #
256
- # * +:message_id+ - (String)
257
- #
168
+ # @param [Hash] options
169
+ # * +:topic_arn+ - *required* - (String) The topic you want to publish
170
+ # to.
171
+ # * +:message+ - *required* - (String) The message you want to send to
172
+ # the topic. Constraints: Messages must be UTF-8 encoded strings at
173
+ # most 8 KB in size (8192 bytes, not 8192 characters).
174
+ # * +:subject+ - (String) Optional parameter to be used as the
175
+ # "Subject" line of when the message is delivered to e-mail
176
+ # endpoints. This field will also be included, if present, in the
177
+ # standard JSON messages delivered to other endpoints. Constraints:
178
+ # Subjects must be ASCII text that begins with a letter, number or
179
+ # punctuation mark; must not include line breaks or control
180
+ # characters; and must be less than 100 characters long.
181
+ # * +:message_structure+ - (String) Optional parameter. It will have
182
+ # one valid value: "json". If this option, Message is present and set
183
+ # to "json", the value of Message must: be a syntactically valid JSON
184
+ # object. It must contain at least a top level JSON key of "default"
185
+ # with a value that is a string. For any other top level key that
186
+ # matches one of our transport protocols (e.g. "http"), then the
187
+ # corresponding value (if it is a string) will be used for the
188
+ # message published for that protocol Constraints: Keys in the JSON
189
+ # object that correspond to supported transport protocols must have
190
+ # simple JSON string values. The values will be parsed (unescaped)
191
+ # before they are used in outgoing messages. Typically, outbound
192
+ # notifications are JSON encoded (meaning, the characters will be
193
+ # reescaped for sending). JSON strings are UTF-8. Values have a
194
+ # minimum length of 0 (the empty string, "", is allowed). Values have
195
+ # a maximum length bounded by the overall message size (so, including
196
+ # multiple protocols may limit message sizes). Non-string values will
197
+ # cause the key to be ignored. Keys that do not correspond to
198
+ # supported transport protocols will be ignored. Duplicate keys are
199
+ # not allowed. Failure to parse or validate any key or value in the
200
+ # message will cause the Publish call to return an error (no partial
201
+ # delivery).
258
202
  # @return [Core::Response]
259
- #
203
+ # The #data method of the response object returns
204
+ # a hash with the following structure:
205
+ # * +:message_id+ - (String)
260
206
  define_client_method :publish, 'Publish'
261
207
 
262
208
  # Calls the RemovePermission API operation.
263
209
  # @method remove_permission(options = {})
264
- #
265
- # === Options:
266
- #
267
- # * +:topic_arn+ - *required* - (String) The ARN of the topic whose
268
- # access control policy you wish to modify.
269
- # * +:label+ - *required* - (String) The unique label of the statement
270
- # you want to remove.
271
- #
272
- # === Response Structure:
273
- #
274
- # This method returns no response data.
275
- #
210
+ # @param [Hash] options
211
+ # * +:topic_arn+ - *required* - (String) The ARN of the topic whose
212
+ # access control policy you wish to modify.
213
+ # * +:label+ - *required* - (String) The unique label of the statement
214
+ # you want to remove.
276
215
  # @return [Core::Response]
277
- #
278
216
  define_client_method :remove_permission, 'RemovePermission'
279
217
 
280
218
  # Calls the SetSubscriptionAttributes API operation.
281
219
  # @method set_subscription_attributes(options = {})
282
- #
283
- # === Options:
284
- #
285
- # * +:subscription_arn+ - *required* - (String) The ARN of the
286
- # subscription to modify.
287
- # * +:attribute_name+ - *required* - (String) The name of the attribute
288
- # you want to set. Only a subset of the subscriptions attributes are
289
- # mutable. Valid values: DeliveryPolicy
290
- # * +:attribute_value+ - *required* - (String) The new value for the
291
- # attribute.
292
- #
293
- # === Response Structure:
294
- #
295
- # This method returns no response data.
296
- #
220
+ # @param [Hash] options
221
+ # * +:subscription_arn+ - *required* - (String) The ARN of the
222
+ # subscription to modify.
223
+ # * +:attribute_name+ - *required* - (String) The name of the attribute
224
+ # you want to set. Only a subset of the subscriptions attributes are
225
+ # mutable. Valid values: DeliveryPolicy
226
+ # * +:attribute_value+ - *required* - (String) The new value for the
227
+ # attribute.
297
228
  # @return [Core::Response]
298
- #
299
229
  define_client_method :set_subscription_attributes, 'SetSubscriptionAttributes'
300
230
 
301
231
  # Calls the SetTopicAttributes API operation.
302
232
  # @method set_topic_attributes(options = {})
303
- #
304
- # === Options:
305
- #
306
- # * +:topic_arn+ - *required* - (String) The ARN of the topic to modify.
307
- # * +:attribute_name+ - *required* - (String) The name of the attribute
308
- # you want to set. Only a subset of the topic's attributes are mutable.
309
- # Valid values: Policy | DisplayName
310
- # * +:attribute_value+ - *required* - (String) The new value for the
311
- # attribute.
312
- #
313
- # === Response Structure:
314
- #
315
- # This method returns no response data.
316
- #
233
+ # @param [Hash] options
234
+ # * +:topic_arn+ - *required* - (String) The ARN of the topic to
235
+ # modify.
236
+ # * +:attribute_name+ - *required* - (String) The name of the attribute
237
+ # you want to set. Only a subset of the topic's attributes are
238
+ # mutable. Valid values: Policy | DisplayName
239
+ # * +:attribute_value+ - *required* - (String) The new value for the
240
+ # attribute.
317
241
  # @return [Core::Response]
318
- #
319
242
  define_client_method :set_topic_attributes, 'SetTopicAttributes'
320
243
 
321
244
  # Calls the Subscribe API operation.
322
245
  # @method subscribe(options = {})
323
- #
324
- # === Options:
325
- #
326
- # * +:topic_arn+ - *required* - (String) The ARN of topic you want to
327
- # subscribe to.
328
- # * +:protocol+ - *required* - (String) The protocol you want to use.
329
- # Supported protocols include: http -- delivery of JSON-encoded message
330
- # via HTTP POST https -- delivery of JSON-encoded message via HTTPS
331
- # POST email -- delivery of message via SMTP email-json -- delivery of
332
- # JSON-encoded message via SMTP sms -- delivery of message via SMS sqs
333
- # -- delivery of JSON-encoded message to an Amazon SQS queue
334
- # * +:endpoint+ - *required* - (String) The endpoint that you want to
335
- # receive notifications. Endpoints vary by protocol: For the http
336
- # protocol, the endpoint is an URL beginning with "http://" For the
337
- # https protocol, the endpoint is a URL beginning with "https://" For
338
- # the email protocol, the endpoint is an e-mail address For the
339
- # email-json protocol, the endpoint is an e-mail address For the sms
340
- # protocol, the endpoint is a phone number of an SMS-enabled device For
341
- # the sqs protocol, the endpoint is the ARN of an Amazon SQS queue
342
- #
343
- # === Response Structure:
344
- #
345
- # * +:subscription_arn+ - (String)
346
- #
246
+ # @param [Hash] options
247
+ # * +:topic_arn+ - *required* - (String) The ARN of topic you want to
248
+ # subscribe to.
249
+ # * +:protocol+ - *required* - (String) The protocol you want to use.
250
+ # Supported protocols include: http -- delivery of JSON-encoded
251
+ # message via HTTP POST https -- delivery of JSON-encoded message via
252
+ # HTTPS POST email -- delivery of message via SMTP email-json --
253
+ # delivery of JSON-encoded message via SMTP sms -- delivery of
254
+ # message via SMS sqs -- delivery of JSON-encoded message to an
255
+ # Amazon SQS queue
256
+ # * +:endpoint+ - *required* - (String) The endpoint that you want to
257
+ # receive notifications. Endpoints vary by protocol: For the http
258
+ # protocol, the endpoint is an URL beginning with "http://" For the
259
+ # https protocol, the endpoint is a URL beginning with "https://" For
260
+ # the email protocol, the endpoint is an e-mail address For the
261
+ # email-json protocol, the endpoint is an e-mail address For the sms
262
+ # protocol, the endpoint is a phone number of an SMS-enabled device
263
+ # For the sqs protocol, the endpoint is the ARN of an Amazon SQS
264
+ # queue
347
265
  # @return [Core::Response]
348
- #
266
+ # The #data method of the response object returns
267
+ # a hash with the following structure:
268
+ # * +:subscription_arn+ - (String)
349
269
  define_client_method :subscribe, 'Subscribe'
350
270
 
351
271
  # Calls the Unsubscribe API operation.
352
272
  # @method unsubscribe(options = {})
353
- #
354
- # === Options:
355
- #
356
- # * +:subscription_arn+ - *required* - (String) The ARN of the
357
- # subscription to be deleted.
358
- #
359
- # === Response Structure:
360
- #
361
- # This method returns no response data.
362
- #
273
+ # @param [Hash] options
274
+ # * +:subscription_arn+ - *required* - (String) The ARN of the
275
+ # subscription to be deleted.
363
276
  # @return [Core::Response]
364
- #
365
277
  define_client_method :unsubscribe, 'Unsubscribe'
366
278
 
367
279
  ## end client methods ##