aws-sdk 1.5.8 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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 ##