aws-sdk-resourcegroupstaggingapi 1.0.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 156619b87453e2a5611ec331c37c66331cee6b2c
4
+ data.tar.gz: 1f77a4a198df36aa71e323e838a5640cbe128f4d
5
+ SHA512:
6
+ metadata.gz: 7817c25a3717ce02b85653352bee9eaea5a418ecf58e64d3b50ef4836414121e806fe9a6cab413bfc7ba29ae14b42ce802e9a0c234bd7eedc599262d6b7b46b2
7
+ data.tar.gz: 9cf2a754c9061669e7cb3a29f58e41c7710b3809030e3778b1be0a490a562b24559b55952815487f382dff1bbed15965ee30ec39c8908ad176c9b52377d6c06f
@@ -0,0 +1,504 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/response_paging.rb'
19
+ require 'aws-sdk-core/plugins/stub_responses.rb'
20
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
22
+ require 'aws-sdk-core/plugins/signature_v4.rb'
23
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
24
+
25
+ Aws::Plugins::GlobalConfiguration.add_identifier(:resourcegroupstaggingapi)
26
+
27
+ module Aws::ResourceGroupsTaggingAPI
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :resourcegroupstaggingapi
33
+
34
+ set_api(ClientApi::API)
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::JsonvalueConverter)
50
+ add_plugin(Aws::Plugins::SignatureV4)
51
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
52
+
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] :simple_json (false)
130
+ # Disables request parameter conversion, validation, and formatting.
131
+ # Also disable response data type conversions. This option is useful
132
+ # when you want to ensure the highest level of performance by
133
+ # avoiding overhead of walking request parameters and response data
134
+ # structures.
135
+ #
136
+ # When `:simple_json` is enabled, the request parameters hash must
137
+ # be formatted exactly as the DynamoDB API expects.
138
+ #
139
+ # @option options [Boolean] :stub_responses (false)
140
+ # Causes the client to return stubbed responses. By default
141
+ # fake responses are generated and returned. You can specify
142
+ # the response data to return or errors to raise by calling
143
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
144
+ #
145
+ # ** Please note ** When response stubbing is enabled, no HTTP
146
+ # requests are made, and retries are disabled.
147
+ #
148
+ # @option options [Boolean] :validate_params (true)
149
+ # When `true`, request parameters are validated before
150
+ # sending the request.
151
+ #
152
+ def initialize(*args)
153
+ super
154
+ end
155
+
156
+ # @!group API Operations
157
+
158
+ # Returns all the tagged resources that are associated with the
159
+ # specified tags (keys and values) located in the specified region for
160
+ # the AWS account. The tags and the resource types that you specify in
161
+ # the request are known as *filters*. The response includes all tags
162
+ # that are associated with the requested resources. If no filter is
163
+ # provided, this action returns a paginated resource list with the
164
+ # associated tags.
165
+ #
166
+ # @option params [String] :pagination_token
167
+ # A string that indicates that additional data is available. Leave this
168
+ # value empty for your initial request. If the response includes a
169
+ # `PaginationToken`, use that string for this value to request an
170
+ # additional page of data.
171
+ #
172
+ # @option params [Array<Types::TagFilter>] :tag_filters
173
+ # A list of tags (keys and values). A request can include up to 50 keys,
174
+ # and each key can include up to 20 values.
175
+ #
176
+ # If you specify multiple filters connected by an AND operator in a
177
+ # single request, the response returns only those resources that are
178
+ # associated with every specified filter.
179
+ #
180
+ # If you specify multiple filters connected by an OR operator in a
181
+ # single request, the response returns all resources that are associated
182
+ # with at least one or possibly more of the specified filters.
183
+ #
184
+ # @option params [required, Integer] :tags_per_page
185
+ # A limit that restricts the number of tags (key and value pairs)
186
+ # returned by GetResources in paginated output. A resource with no tags
187
+ # is counted as having one tag (one key and value pair).
188
+ #
189
+ # `GetResources` does not split a resource and its associated tags
190
+ # across pages. If the specified `TagsPerPage` would cause such a break,
191
+ # a `PaginationToken` is returned in place of the affected resource and
192
+ # its tags. Use that token in another request to get the remaining data.
193
+ # For example, if you specify a `TagsPerPage` of `100` and the account
194
+ # has 22 resources with 10 tags each (meaning that each resource has 10
195
+ # key and value pairs), the output will consist of 3 pages, with the
196
+ # first page displaying the first 10 resources, each with its 10 tags,
197
+ # the second page displaying the next 10 resources each with its 10
198
+ # tags, and the third page displaying the remaining 2 resources, each
199
+ # with its 10 tags.
200
+ #
201
+ #
202
+ #
203
+ # You can set `TagsPerPage` to a minimum of 100 items and the maximum of
204
+ # 500 items.
205
+ #
206
+ # @option params [Array<String>] :resource_type_filters
207
+ # The constraints on the resources that you want returned. The format of
208
+ # each resource type is `service[:resourceType]`. For example,
209
+ # specifying a resource type of `ec2` returns all tagged Amazon EC2
210
+ # resources (which includes tagged EC2 instances). Specifying a resource
211
+ # type of `ec2:instance` returns only EC2 instances.
212
+ #
213
+ # The string for each service name and resource type is the same as that
214
+ # embedded in a resource's Amazon Resource Name (ARN). Consult the *AWS
215
+ # General Reference* for the following:
216
+ #
217
+ # * For a list of service name strings, see [AWS Service Namespaces][1].
218
+ #
219
+ # * For resource type strings, see [Example ARNs][2].
220
+ #
221
+ # * For more information about ARNs, see [Amazon Resource Names (ARNs)
222
+ # and AWS Service Namespaces][3].
223
+ #
224
+ #
225
+ #
226
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
227
+ # [2]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arns-syntax
228
+ # [3]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
229
+ #
230
+ # @return [Types::GetResourcesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
231
+ #
232
+ # * {Types::GetResourcesOutput#pagination_token #pagination_token} => String
233
+ # * {Types::GetResourcesOutput#resource_tag_mapping_list #resource_tag_mapping_list} => Array&lt;Types::ResourceTagMapping&gt;
234
+ #
235
+ # @example Request syntax with placeholder values
236
+ #
237
+ # resp = client.get_resources({
238
+ # pagination_token: "PaginationToken",
239
+ # tag_filters: [
240
+ # {
241
+ # key: "TagKey",
242
+ # values: ["TagValue"],
243
+ # },
244
+ # ],
245
+ # tags_per_page: 1, # required
246
+ # resource_type_filters: ["AmazonResourceType"],
247
+ # })
248
+ #
249
+ # @example Response structure
250
+ #
251
+ # resp.pagination_token #=> String
252
+ # resp.resource_tag_mapping_list #=> Array
253
+ # resp.resource_tag_mapping_list[0].resource_arn #=> String
254
+ # resp.resource_tag_mapping_list[0].tags #=> Array
255
+ # resp.resource_tag_mapping_list[0].tags[0].key #=> String
256
+ # resp.resource_tag_mapping_list[0].tags[0].value #=> String
257
+ #
258
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetResources AWS API Documentation
259
+ #
260
+ # @overload get_resources(params = {})
261
+ # @param [Hash] params ({})
262
+ def get_resources(params = {}, options = {})
263
+ req = build_request(:get_resources, params)
264
+ req.send_request(options)
265
+ end
266
+
267
+ # Returns all tag keys in the specified region for the AWS account.
268
+ #
269
+ # @option params [String] :pagination_token
270
+ # A string that indicates that additional data is available. Leave this
271
+ # value empty for your initial request. If the response includes a
272
+ # PaginationToken, use that string for this value to request an
273
+ # additional page of data.
274
+ #
275
+ # @return [Types::GetTagKeysOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
276
+ #
277
+ # * {Types::GetTagKeysOutput#pagination_token #pagination_token} => String
278
+ # * {Types::GetTagKeysOutput#tag_keys #tag_keys} => Array&lt;String&gt;
279
+ #
280
+ # @example Request syntax with placeholder values
281
+ #
282
+ # resp = client.get_tag_keys({
283
+ # pagination_token: "PaginationToken",
284
+ # })
285
+ #
286
+ # @example Response structure
287
+ #
288
+ # resp.pagination_token #=> String
289
+ # resp.tag_keys #=> Array
290
+ # resp.tag_keys[0] #=> String
291
+ #
292
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagKeys AWS API Documentation
293
+ #
294
+ # @overload get_tag_keys(params = {})
295
+ # @param [Hash] params ({})
296
+ def get_tag_keys(params = {}, options = {})
297
+ req = build_request(:get_tag_keys, params)
298
+ req.send_request(options)
299
+ end
300
+
301
+ # Returns all tag values for the specified key in the specified region
302
+ # for the AWS account.
303
+ #
304
+ # @option params [String] :pagination_token
305
+ # A string that indicates that additional data is available. Leave this
306
+ # value empty for your initial request. If the response includes a
307
+ # PaginationToken, use that string for this value to request an
308
+ # additional page of data.
309
+ #
310
+ # @option params [required, String] :key
311
+ # The key for which you want to list all existing values in the
312
+ # specified region for the AWS account.
313
+ #
314
+ # @return [Types::GetTagValuesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
315
+ #
316
+ # * {Types::GetTagValuesOutput#pagination_token #pagination_token} => String
317
+ # * {Types::GetTagValuesOutput#tag_values #tag_values} => Array&lt;String&gt;
318
+ #
319
+ # @example Request syntax with placeholder values
320
+ #
321
+ # resp = client.get_tag_values({
322
+ # pagination_token: "PaginationToken",
323
+ # key: "TagKey", # required
324
+ # })
325
+ #
326
+ # @example Response structure
327
+ #
328
+ # resp.pagination_token #=> String
329
+ # resp.tag_values #=> Array
330
+ # resp.tag_values[0] #=> String
331
+ #
332
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagValues AWS API Documentation
333
+ #
334
+ # @overload get_tag_values(params = {})
335
+ # @param [Hash] params ({})
336
+ def get_tag_values(params = {}, options = {})
337
+ req = build_request(:get_tag_values, params)
338
+ req.send_request(options)
339
+ end
340
+
341
+ # Applies one or more tags to the specified resources. Note the
342
+ # following:
343
+ #
344
+ # * Not all resources can have tags. For a list of resources that
345
+ # support tagging, see [Supported Resources][1] in the *AWS Resource
346
+ # Groups and Tag Editor User Guide*.
347
+ #
348
+ # * Each resource can have up to 50 tags. For other limits, see [Tag
349
+ # Restrictions][2] in the *Amazon EC2 User Guide for Linux Instances*.
350
+ #
351
+ # * You can only tag resources that are located in the specified region
352
+ # for the AWS account.
353
+ #
354
+ # * To add tags to a resource, you need the necessary permissions for
355
+ # the service that the resource belongs to as well as permissions for
356
+ # adding tags. For more information, see [Obtaining Permissions for
357
+ # Tagging][3] in the *AWS Resource Groups and Tag Editor User Guide*.
358
+ #
359
+ #
360
+ #
361
+ # [1]: http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/supported-resources.html
362
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-restrictions
363
+ # [3]: http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/obtaining-permissions-for-tagging.html
364
+ #
365
+ # @option params [required, Array<String>] :resource_arn_list
366
+ # A list of ARNs. An ARN (Amazon Resource Name) uniquely identifies a
367
+ # resource. You can specify a minimum of 1 and a maximum of 20 ARNs
368
+ # (resources) to tag. An ARN can be set to a maximum of 1600 characters.
369
+ # For more information, see [Amazon Resource Names (ARNs) and AWS
370
+ # Service Namespaces][1] in the *AWS General Reference*.
371
+ #
372
+ #
373
+ #
374
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
375
+ #
376
+ # @option params [required, Hash<String,String>] :tags
377
+ # The tags that you want to add to the specified resources. A tag
378
+ # consists of a key and a value that you define.
379
+ #
380
+ # @return [Types::TagResourcesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
381
+ #
382
+ # * {Types::TagResourcesOutput#failed_resources_map #failed_resources_map} => Hash&lt;String,Types::FailureInfo&gt;
383
+ #
384
+ # @example Request syntax with placeholder values
385
+ #
386
+ # resp = client.tag_resources({
387
+ # resource_arn_list: ["ResourceARN"], # required
388
+ # tags: { # required
389
+ # "TagKey" => "TagValue",
390
+ # },
391
+ # })
392
+ #
393
+ # @example Response structure
394
+ #
395
+ # resp.failed_resources_map #=> Hash
396
+ # resp.failed_resources_map["ResourceARN"].status_code #=> Integer
397
+ # resp.failed_resources_map["ResourceARN"].error_code #=> String, one of "InternalServiceException", "InvalidParameterException"
398
+ # resp.failed_resources_map["ResourceARN"].error_message #=> String
399
+ #
400
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/TagResources AWS API Documentation
401
+ #
402
+ # @overload tag_resources(params = {})
403
+ # @param [Hash] params ({})
404
+ def tag_resources(params = {}, options = {})
405
+ req = build_request(:tag_resources, params)
406
+ req.send_request(options)
407
+ end
408
+
409
+ # Removes the specified tags from the specified resources. When you
410
+ # specify a tag key, the action removes both that key and its associated
411
+ # value. The operation succeeds even if you attempt to remove tags from
412
+ # a resource that were already removed. Note the following:
413
+ #
414
+ # * To remove tags from a resource, you need the necessary permissions
415
+ # for the service that the resource belongs to as well as permissions
416
+ # for removing tags. For more information, see [Obtaining Permissions
417
+ # for Tagging][1] in the *AWS Resource Groups and Tag Editor User
418
+ # Guide*.
419
+ #
420
+ # * You can only tag resources that are located in the specified region
421
+ # for the AWS account.
422
+ #
423
+ #
424
+ #
425
+ # [1]: http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/obtaining-permissions-for-tagging.html
426
+ #
427
+ # @option params [required, Array<String>] :resource_arn_list
428
+ # A list of ARNs. An ARN (Amazon Resource Name) uniquely identifies a
429
+ # resource. You can specify a minimum of 1 and a maximum of 20 ARNs
430
+ # (resources) to untag. An ARN can be set to a maximum of 1600
431
+ # characters. For more information, see [Amazon Resource Names (ARNs)
432
+ # and AWS Service Namespaces][1] in the *AWS General Reference*.
433
+ #
434
+ #
435
+ #
436
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
437
+ #
438
+ # @option params [required, Array<String>] :tag_keys
439
+ # A list of the tag keys that you want to remove from the specified
440
+ # resources.
441
+ #
442
+ # @return [Types::UntagResourcesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
443
+ #
444
+ # * {Types::UntagResourcesOutput#failed_resources_map #failed_resources_map} => Hash&lt;String,Types::FailureInfo&gt;
445
+ #
446
+ # @example Request syntax with placeholder values
447
+ #
448
+ # resp = client.untag_resources({
449
+ # resource_arn_list: ["ResourceARN"], # required
450
+ # tag_keys: ["TagKey"], # required
451
+ # })
452
+ #
453
+ # @example Response structure
454
+ #
455
+ # resp.failed_resources_map #=> Hash
456
+ # resp.failed_resources_map["ResourceARN"].status_code #=> Integer
457
+ # resp.failed_resources_map["ResourceARN"].error_code #=> String, one of "InternalServiceException", "InvalidParameterException"
458
+ # resp.failed_resources_map["ResourceARN"].error_message #=> String
459
+ #
460
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/UntagResources AWS API Documentation
461
+ #
462
+ # @overload untag_resources(params = {})
463
+ # @param [Hash] params ({})
464
+ def untag_resources(params = {}, options = {})
465
+ req = build_request(:untag_resources, params)
466
+ req.send_request(options)
467
+ end
468
+
469
+ # @!endgroup
470
+
471
+ # @param params ({})
472
+ # @api private
473
+ def build_request(operation_name, params = {})
474
+ handlers = @handlers.for(operation_name)
475
+ context = Seahorse::Client::RequestContext.new(
476
+ operation_name: operation_name,
477
+ operation: config.api.operation(operation_name),
478
+ client: self,
479
+ params: params,
480
+ config: config)
481
+ context[:gem_name] = 'aws-sdk-resourcegroupstaggingapi'
482
+ context[:gem_version] = '1.0.0.rc1'
483
+ Seahorse::Client::Request.new(handlers, context)
484
+ end
485
+
486
+ # @api private
487
+ # @deprecated
488
+ def waiter_names
489
+ []
490
+ end
491
+
492
+ class << self
493
+
494
+ # @api private
495
+ attr_reader :identifier
496
+
497
+ # @api private
498
+ def errors_module
499
+ Errors
500
+ end
501
+
502
+ end
503
+ end
504
+ end
@@ -0,0 +1,209 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::ResourceGroupsTaggingAPI
9
+ # @api private
10
+ module ClientApi
11
+
12
+ include Seahorse::Model
13
+
14
+ AmazonResourceType = Shapes::StringShape.new(name: 'AmazonResourceType')
15
+ ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
16
+ ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
17
+ ExceptionMessage = Shapes::StringShape.new(name: 'ExceptionMessage')
18
+ FailedResourcesMap = Shapes::MapShape.new(name: 'FailedResourcesMap')
19
+ FailureInfo = Shapes::StructureShape.new(name: 'FailureInfo')
20
+ GetResourcesInput = Shapes::StructureShape.new(name: 'GetResourcesInput')
21
+ GetResourcesOutput = Shapes::StructureShape.new(name: 'GetResourcesOutput')
22
+ GetTagKeysInput = Shapes::StructureShape.new(name: 'GetTagKeysInput')
23
+ GetTagKeysOutput = Shapes::StructureShape.new(name: 'GetTagKeysOutput')
24
+ GetTagValuesInput = Shapes::StructureShape.new(name: 'GetTagValuesInput')
25
+ GetTagValuesOutput = Shapes::StructureShape.new(name: 'GetTagValuesOutput')
26
+ InternalServiceException = Shapes::StructureShape.new(name: 'InternalServiceException')
27
+ InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
28
+ PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
29
+ PaginationTokenExpiredException = Shapes::StructureShape.new(name: 'PaginationTokenExpiredException')
30
+ ResourceARN = Shapes::StringShape.new(name: 'ResourceARN')
31
+ ResourceARNList = Shapes::ListShape.new(name: 'ResourceARNList')
32
+ ResourceTagMapping = Shapes::StructureShape.new(name: 'ResourceTagMapping')
33
+ ResourceTagMappingList = Shapes::ListShape.new(name: 'ResourceTagMappingList')
34
+ ResourceTypeFilterList = Shapes::ListShape.new(name: 'ResourceTypeFilterList')
35
+ StatusCode = Shapes::IntegerShape.new(name: 'StatusCode')
36
+ Tag = Shapes::StructureShape.new(name: 'Tag')
37
+ TagFilter = Shapes::StructureShape.new(name: 'TagFilter')
38
+ TagFilterList = Shapes::ListShape.new(name: 'TagFilterList')
39
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
40
+ TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
41
+ TagKeyListForUntag = Shapes::ListShape.new(name: 'TagKeyListForUntag')
42
+ TagList = Shapes::ListShape.new(name: 'TagList')
43
+ TagMap = Shapes::MapShape.new(name: 'TagMap')
44
+ TagResourcesInput = Shapes::StructureShape.new(name: 'TagResourcesInput')
45
+ TagResourcesOutput = Shapes::StructureShape.new(name: 'TagResourcesOutput')
46
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
47
+ TagValueList = Shapes::ListShape.new(name: 'TagValueList')
48
+ TagValuesOutputList = Shapes::ListShape.new(name: 'TagValuesOutputList')
49
+ TagsPerPage = Shapes::IntegerShape.new(name: 'TagsPerPage')
50
+ ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException')
51
+ UntagResourcesInput = Shapes::StructureShape.new(name: 'UntagResourcesInput')
52
+ UntagResourcesOutput = Shapes::StructureShape.new(name: 'UntagResourcesOutput')
53
+
54
+ FailedResourcesMap.key = Shapes::ShapeRef.new(shape: ResourceARN)
55
+ FailedResourcesMap.value = Shapes::ShapeRef.new(shape: FailureInfo)
56
+
57
+ FailureInfo.add_member(:status_code, Shapes::ShapeRef.new(shape: StatusCode, location_name: "StatusCode"))
58
+ FailureInfo.add_member(:error_code, Shapes::ShapeRef.new(shape: ErrorCode, location_name: "ErrorCode"))
59
+ FailureInfo.add_member(:error_message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "ErrorMessage"))
60
+ FailureInfo.struct_class = Types::FailureInfo
61
+
62
+ GetResourcesInput.add_member(:pagination_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "PaginationToken"))
63
+ GetResourcesInput.add_member(:tag_filters, Shapes::ShapeRef.new(shape: TagFilterList, location_name: "TagFilters"))
64
+ GetResourcesInput.add_member(:tags_per_page, Shapes::ShapeRef.new(shape: TagsPerPage, required: true, location_name: "TagsPerPage"))
65
+ GetResourcesInput.add_member(:resource_type_filters, Shapes::ShapeRef.new(shape: ResourceTypeFilterList, location_name: "ResourceTypeFilters"))
66
+ GetResourcesInput.struct_class = Types::GetResourcesInput
67
+
68
+ GetResourcesOutput.add_member(:pagination_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "PaginationToken"))
69
+ GetResourcesOutput.add_member(:resource_tag_mapping_list, Shapes::ShapeRef.new(shape: ResourceTagMappingList, location_name: "ResourceTagMappingList"))
70
+ GetResourcesOutput.struct_class = Types::GetResourcesOutput
71
+
72
+ GetTagKeysInput.add_member(:pagination_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "PaginationToken"))
73
+ GetTagKeysInput.struct_class = Types::GetTagKeysInput
74
+
75
+ GetTagKeysOutput.add_member(:pagination_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "PaginationToken"))
76
+ GetTagKeysOutput.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, location_name: "TagKeys"))
77
+ GetTagKeysOutput.struct_class = Types::GetTagKeysOutput
78
+
79
+ GetTagValuesInput.add_member(:pagination_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "PaginationToken"))
80
+ GetTagValuesInput.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
81
+ GetTagValuesInput.struct_class = Types::GetTagValuesInput
82
+
83
+ GetTagValuesOutput.add_member(:pagination_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "PaginationToken"))
84
+ GetTagValuesOutput.add_member(:tag_values, Shapes::ShapeRef.new(shape: TagValuesOutputList, location_name: "TagValues"))
85
+ GetTagValuesOutput.struct_class = Types::GetTagValuesOutput
86
+
87
+ ResourceARNList.member = Shapes::ShapeRef.new(shape: ResourceARN)
88
+
89
+ ResourceTagMapping.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceARN, location_name: "ResourceARN"))
90
+ ResourceTagMapping.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
91
+ ResourceTagMapping.struct_class = Types::ResourceTagMapping
92
+
93
+ ResourceTagMappingList.member = Shapes::ShapeRef.new(shape: ResourceTagMapping)
94
+
95
+ ResourceTypeFilterList.member = Shapes::ShapeRef.new(shape: AmazonResourceType)
96
+
97
+ Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
98
+ Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, required: true, location_name: "Value"))
99
+ Tag.struct_class = Types::Tag
100
+
101
+ TagFilter.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, location_name: "Key"))
102
+ TagFilter.add_member(:values, Shapes::ShapeRef.new(shape: TagValueList, location_name: "Values"))
103
+ TagFilter.struct_class = Types::TagFilter
104
+
105
+ TagFilterList.member = Shapes::ShapeRef.new(shape: TagFilter)
106
+
107
+ TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
108
+
109
+ TagKeyListForUntag.member = Shapes::ShapeRef.new(shape: TagKey)
110
+
111
+ TagList.member = Shapes::ShapeRef.new(shape: Tag)
112
+
113
+ TagMap.key = Shapes::ShapeRef.new(shape: TagKey)
114
+ TagMap.value = Shapes::ShapeRef.new(shape: TagValue)
115
+
116
+ TagResourcesInput.add_member(:resource_arn_list, Shapes::ShapeRef.new(shape: ResourceARNList, required: true, location_name: "ResourceARNList"))
117
+ TagResourcesInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, required: true, location_name: "Tags"))
118
+ TagResourcesInput.struct_class = Types::TagResourcesInput
119
+
120
+ TagResourcesOutput.add_member(:failed_resources_map, Shapes::ShapeRef.new(shape: FailedResourcesMap, location_name: "FailedResourcesMap"))
121
+ TagResourcesOutput.struct_class = Types::TagResourcesOutput
122
+
123
+ TagValueList.member = Shapes::ShapeRef.new(shape: TagValue)
124
+
125
+ TagValuesOutputList.member = Shapes::ShapeRef.new(shape: TagValue)
126
+
127
+ UntagResourcesInput.add_member(:resource_arn_list, Shapes::ShapeRef.new(shape: ResourceARNList, required: true, location_name: "ResourceARNList"))
128
+ UntagResourcesInput.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyListForUntag, required: true, location_name: "TagKeys"))
129
+ UntagResourcesInput.struct_class = Types::UntagResourcesInput
130
+
131
+ UntagResourcesOutput.add_member(:failed_resources_map, Shapes::ShapeRef.new(shape: FailedResourcesMap, location_name: "FailedResourcesMap"))
132
+ UntagResourcesOutput.struct_class = Types::UntagResourcesOutput
133
+
134
+
135
+ # @api private
136
+ API = Seahorse::Model::Api.new.tap do |api|
137
+
138
+ api.version = "2017-01-26"
139
+
140
+ api.metadata = {
141
+ "endpointPrefix" => "tagging",
142
+ "jsonVersion" => "1.1",
143
+ "protocol" => "json",
144
+ "serviceFullName" => "AWS Resource Groups Tagging API",
145
+ "signatureVersion" => "v4",
146
+ "targetPrefix" => "ResourceGroupsTaggingAPI_20170126",
147
+ }
148
+
149
+ api.add_operation(:get_resources, Seahorse::Model::Operation.new.tap do |o|
150
+ o.name = "GetResources"
151
+ o.http_method = "POST"
152
+ o.http_request_uri = "/"
153
+ o.input = Shapes::ShapeRef.new(shape: GetResourcesInput)
154
+ o.output = Shapes::ShapeRef.new(shape: GetResourcesOutput)
155
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
156
+ o.errors << Shapes::ShapeRef.new(shape: ThrottledException)
157
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
158
+ o.errors << Shapes::ShapeRef.new(shape: PaginationTokenExpiredException)
159
+ end)
160
+
161
+ api.add_operation(:get_tag_keys, Seahorse::Model::Operation.new.tap do |o|
162
+ o.name = "GetTagKeys"
163
+ o.http_method = "POST"
164
+ o.http_request_uri = "/"
165
+ o.input = Shapes::ShapeRef.new(shape: GetTagKeysInput)
166
+ o.output = Shapes::ShapeRef.new(shape: GetTagKeysOutput)
167
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
168
+ o.errors << Shapes::ShapeRef.new(shape: ThrottledException)
169
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
170
+ o.errors << Shapes::ShapeRef.new(shape: PaginationTokenExpiredException)
171
+ end)
172
+
173
+ api.add_operation(:get_tag_values, Seahorse::Model::Operation.new.tap do |o|
174
+ o.name = "GetTagValues"
175
+ o.http_method = "POST"
176
+ o.http_request_uri = "/"
177
+ o.input = Shapes::ShapeRef.new(shape: GetTagValuesInput)
178
+ o.output = Shapes::ShapeRef.new(shape: GetTagValuesOutput)
179
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
180
+ o.errors << Shapes::ShapeRef.new(shape: ThrottledException)
181
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
182
+ o.errors << Shapes::ShapeRef.new(shape: PaginationTokenExpiredException)
183
+ end)
184
+
185
+ api.add_operation(:tag_resources, Seahorse::Model::Operation.new.tap do |o|
186
+ o.name = "TagResources"
187
+ o.http_method = "POST"
188
+ o.http_request_uri = "/"
189
+ o.input = Shapes::ShapeRef.new(shape: TagResourcesInput)
190
+ o.output = Shapes::ShapeRef.new(shape: TagResourcesOutput)
191
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
192
+ o.errors << Shapes::ShapeRef.new(shape: ThrottledException)
193
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
194
+ end)
195
+
196
+ api.add_operation(:untag_resources, Seahorse::Model::Operation.new.tap do |o|
197
+ o.name = "UntagResources"
198
+ o.http_method = "POST"
199
+ o.http_request_uri = "/"
200
+ o.input = Shapes::ShapeRef.new(shape: UntagResourcesInput)
201
+ o.output = Shapes::ShapeRef.new(shape: UntagResourcesOutput)
202
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
203
+ o.errors << Shapes::ShapeRef.new(shape: ThrottledException)
204
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
205
+ end)
206
+ end
207
+
208
+ end
209
+ end
@@ -0,0 +1,14 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::ResourceGroupsTaggingAPI
9
+ module Errors
10
+
11
+ extend Aws::Errors::DynamicErrors
12
+
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::ResourceGroupsTaggingAPI
9
+ class Resource
10
+
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
16
+
17
+ # @return [Client]
18
+ def client
19
+ @client
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,407 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::ResourceGroupsTaggingAPI
9
+ module Types
10
+
11
+ # Details of the common errors that all actions return.
12
+ #
13
+ # @!attribute [rw] status_code
14
+ # The HTTP status code of the common error.
15
+ # @return [Integer]
16
+ #
17
+ # @!attribute [rw] error_code
18
+ # The code of the common error. Valid values include
19
+ # `InternalServiceException`, `InvalidParameterException`, and any
20
+ # valid error code returned by the AWS service that hosts the resource
21
+ # that you want to tag.
22
+ # @return [String]
23
+ #
24
+ # @!attribute [rw] error_message
25
+ # The message of the common error.
26
+ # @return [String]
27
+ #
28
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/FailureInfo AWS API Documentation
29
+ #
30
+ class FailureInfo < Struct.new(
31
+ :status_code,
32
+ :error_code,
33
+ :error_message)
34
+ include Aws::Structure
35
+ end
36
+
37
+ # @note When making an API call, you may pass GetResourcesInput
38
+ # data as a hash:
39
+ #
40
+ # {
41
+ # pagination_token: "PaginationToken",
42
+ # tag_filters: [
43
+ # {
44
+ # key: "TagKey",
45
+ # values: ["TagValue"],
46
+ # },
47
+ # ],
48
+ # tags_per_page: 1, # required
49
+ # resource_type_filters: ["AmazonResourceType"],
50
+ # }
51
+ #
52
+ # @!attribute [rw] pagination_token
53
+ # A string that indicates that additional data is available. Leave
54
+ # this value empty for your initial request. If the response includes
55
+ # a `PaginationToken`, use that string for this value to request an
56
+ # additional page of data.
57
+ # @return [String]
58
+ #
59
+ # @!attribute [rw] tag_filters
60
+ # A list of tags (keys and values). A request can include up to 50
61
+ # keys, and each key can include up to 20 values.
62
+ #
63
+ # If you specify multiple filters connected by an AND operator in a
64
+ # single request, the response returns only those resources that are
65
+ # associated with every specified filter.
66
+ #
67
+ # If you specify multiple filters connected by an OR operator in a
68
+ # single request, the response returns all resources that are
69
+ # associated with at least one or possibly more of the specified
70
+ # filters.
71
+ # @return [Array<Types::TagFilter>]
72
+ #
73
+ # @!attribute [rw] tags_per_page
74
+ # A limit that restricts the number of tags (key and value pairs)
75
+ # returned by GetResources in paginated output. A resource with no
76
+ # tags is counted as having one tag (one key and value pair).
77
+ #
78
+ # `GetResources` does not split a resource and its associated tags
79
+ # across pages. If the specified `TagsPerPage` would cause such a
80
+ # break, a `PaginationToken` is returned in place of the affected
81
+ # resource and its tags. Use that token in another request to get the
82
+ # remaining data. For example, if you specify a `TagsPerPage` of `100`
83
+ # and the account has 22 resources with 10 tags each (meaning that
84
+ # each resource has 10 key and value pairs), the output will consist
85
+ # of 3 pages, with the first page displaying the first 10 resources,
86
+ # each with its 10 tags, the second page displaying the next 10
87
+ # resources each with its 10 tags, and the third page displaying the
88
+ # remaining 2 resources, each with its 10 tags.
89
+ #
90
+ #
91
+ #
92
+ # You can set `TagsPerPage` to a minimum of 100 items and the maximum
93
+ # of 500 items.
94
+ # @return [Integer]
95
+ #
96
+ # @!attribute [rw] resource_type_filters
97
+ # The constraints on the resources that you want returned. The format
98
+ # of each resource type is `service[:resourceType]`. For example,
99
+ # specifying a resource type of `ec2` returns all tagged Amazon EC2
100
+ # resources (which includes tagged EC2 instances). Specifying a
101
+ # resource type of `ec2:instance` returns only EC2 instances.
102
+ #
103
+ # The string for each service name and resource type is the same as
104
+ # that embedded in a resource's Amazon Resource Name (ARN). Consult
105
+ # the *AWS General Reference* for the following:
106
+ #
107
+ # * For a list of service name strings, see [AWS Service
108
+ # Namespaces][1].
109
+ #
110
+ # * For resource type strings, see [Example ARNs][2].
111
+ #
112
+ # * For more information about ARNs, see [Amazon Resource Names (ARNs)
113
+ # and AWS Service Namespaces][3].
114
+ #
115
+ #
116
+ #
117
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
118
+ # [2]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arns-syntax
119
+ # [3]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
120
+ # @return [Array<String>]
121
+ #
122
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetResourcesInput AWS API Documentation
123
+ #
124
+ class GetResourcesInput < Struct.new(
125
+ :pagination_token,
126
+ :tag_filters,
127
+ :tags_per_page,
128
+ :resource_type_filters)
129
+ include Aws::Structure
130
+ end
131
+
132
+ # @!attribute [rw] pagination_token
133
+ # A string that indicates that the response contains more data than
134
+ # can be returned in a single response. To receive additional data,
135
+ # specify this string for the `PaginationToken` value in a subsequent
136
+ # request.
137
+ # @return [String]
138
+ #
139
+ # @!attribute [rw] resource_tag_mapping_list
140
+ # A list of resource ARNs and the tags (keys and values) associated
141
+ # with each.
142
+ # @return [Array<Types::ResourceTagMapping>]
143
+ #
144
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetResourcesOutput AWS API Documentation
145
+ #
146
+ class GetResourcesOutput < Struct.new(
147
+ :pagination_token,
148
+ :resource_tag_mapping_list)
149
+ include Aws::Structure
150
+ end
151
+
152
+ # @note When making an API call, you may pass GetTagKeysInput
153
+ # data as a hash:
154
+ #
155
+ # {
156
+ # pagination_token: "PaginationToken",
157
+ # }
158
+ #
159
+ # @!attribute [rw] pagination_token
160
+ # A string that indicates that additional data is available. Leave
161
+ # this value empty for your initial request. If the response includes
162
+ # a PaginationToken, use that string for this value to request an
163
+ # additional page of data.
164
+ # @return [String]
165
+ #
166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagKeysInput AWS API Documentation
167
+ #
168
+ class GetTagKeysInput < Struct.new(
169
+ :pagination_token)
170
+ include Aws::Structure
171
+ end
172
+
173
+ # @!attribute [rw] pagination_token
174
+ # A string that indicates that the response contains more data than
175
+ # can be returned in a single response. To receive additional data,
176
+ # specify this string for the `PaginationToken` value in a subsequent
177
+ # request.
178
+ # @return [String]
179
+ #
180
+ # @!attribute [rw] tag_keys
181
+ # A list of all tag keys in the AWS account.
182
+ # @return [Array<String>]
183
+ #
184
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagKeysOutput AWS API Documentation
185
+ #
186
+ class GetTagKeysOutput < Struct.new(
187
+ :pagination_token,
188
+ :tag_keys)
189
+ include Aws::Structure
190
+ end
191
+
192
+ # @note When making an API call, you may pass GetTagValuesInput
193
+ # data as a hash:
194
+ #
195
+ # {
196
+ # pagination_token: "PaginationToken",
197
+ # key: "TagKey", # required
198
+ # }
199
+ #
200
+ # @!attribute [rw] pagination_token
201
+ # A string that indicates that additional data is available. Leave
202
+ # this value empty for your initial request. If the response includes
203
+ # a PaginationToken, use that string for this value to request an
204
+ # additional page of data.
205
+ # @return [String]
206
+ #
207
+ # @!attribute [rw] key
208
+ # The key for which you want to list all existing values in the
209
+ # specified region for the AWS account.
210
+ # @return [String]
211
+ #
212
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagValuesInput AWS API Documentation
213
+ #
214
+ class GetTagValuesInput < Struct.new(
215
+ :pagination_token,
216
+ :key)
217
+ include Aws::Structure
218
+ end
219
+
220
+ # @!attribute [rw] pagination_token
221
+ # A string that indicates that the response contains more data than
222
+ # can be returned in a single response. To receive additional data,
223
+ # specify this string for the `PaginationToken` value in a subsequent
224
+ # request.
225
+ # @return [String]
226
+ #
227
+ # @!attribute [rw] tag_values
228
+ # A list of all tag values for the specified key in the AWS account.
229
+ # @return [Array<String>]
230
+ #
231
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagValuesOutput AWS API Documentation
232
+ #
233
+ class GetTagValuesOutput < Struct.new(
234
+ :pagination_token,
235
+ :tag_values)
236
+ include Aws::Structure
237
+ end
238
+
239
+ # A list of resource ARNs and the tags (keys and values) that are
240
+ # associated with each.
241
+ #
242
+ # @!attribute [rw] resource_arn
243
+ # An array of resource ARN(s).
244
+ # @return [String]
245
+ #
246
+ # @!attribute [rw] tags
247
+ # The tags that have been applied to one or more AWS resources.
248
+ # @return [Array<Types::Tag>]
249
+ #
250
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/ResourceTagMapping AWS API Documentation
251
+ #
252
+ class ResourceTagMapping < Struct.new(
253
+ :resource_arn,
254
+ :tags)
255
+ include Aws::Structure
256
+ end
257
+
258
+ # The metadata that you apply to AWS resources to help you categorize
259
+ # and organize them. Each tag consists of a key and an optional value,
260
+ # both of which you define. For more information, see [Tag Basics][1] in
261
+ # the *Amazon EC2 User Guide for Linux Instances*.
262
+ #
263
+ #
264
+ #
265
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-basics
266
+ #
267
+ # @!attribute [rw] key
268
+ # One part of a key-value pair that make up a tag. A key is a general
269
+ # label that acts like a category for more specific tag values.
270
+ # @return [String]
271
+ #
272
+ # @!attribute [rw] value
273
+ # The optional part of a key-value pair that make up a tag. A value
274
+ # acts as a descriptor within a tag category (key).
275
+ # @return [String]
276
+ #
277
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/Tag AWS API Documentation
278
+ #
279
+ class Tag < Struct.new(
280
+ :key,
281
+ :value)
282
+ include Aws::Structure
283
+ end
284
+
285
+ # A list of tags (keys and values) that are used to specify the
286
+ # associated resources.
287
+ #
288
+ # @note When making an API call, you may pass TagFilter
289
+ # data as a hash:
290
+ #
291
+ # {
292
+ # key: "TagKey",
293
+ # values: ["TagValue"],
294
+ # }
295
+ #
296
+ # @!attribute [rw] key
297
+ # One part of a key-value pair that make up a tag. A key is a general
298
+ # label that acts like a category for more specific tag values.
299
+ # @return [String]
300
+ #
301
+ # @!attribute [rw] values
302
+ # The optional part of a key-value pair that make up a tag. A value
303
+ # acts as a descriptor within a tag category (key).
304
+ # @return [Array<String>]
305
+ #
306
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/TagFilter AWS API Documentation
307
+ #
308
+ class TagFilter < Struct.new(
309
+ :key,
310
+ :values)
311
+ include Aws::Structure
312
+ end
313
+
314
+ # @note When making an API call, you may pass TagResourcesInput
315
+ # data as a hash:
316
+ #
317
+ # {
318
+ # resource_arn_list: ["ResourceARN"], # required
319
+ # tags: { # required
320
+ # "TagKey" => "TagValue",
321
+ # },
322
+ # }
323
+ #
324
+ # @!attribute [rw] resource_arn_list
325
+ # A list of ARNs. An ARN (Amazon Resource Name) uniquely identifies a
326
+ # resource. You can specify a minimum of 1 and a maximum of 20 ARNs
327
+ # (resources) to tag. An ARN can be set to a maximum of 1600
328
+ # characters. For more information, see [Amazon Resource Names (ARNs)
329
+ # and AWS Service Namespaces][1] in the *AWS General Reference*.
330
+ #
331
+ #
332
+ #
333
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
334
+ # @return [Array<String>]
335
+ #
336
+ # @!attribute [rw] tags
337
+ # The tags that you want to add to the specified resources. A tag
338
+ # consists of a key and a value that you define.
339
+ # @return [Hash<String,String>]
340
+ #
341
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/TagResourcesInput AWS API Documentation
342
+ #
343
+ class TagResourcesInput < Struct.new(
344
+ :resource_arn_list,
345
+ :tags)
346
+ include Aws::Structure
347
+ end
348
+
349
+ # @!attribute [rw] failed_resources_map
350
+ # Details of resources that could not be tagged. An error code, status
351
+ # code, and error message are returned for each failed item.
352
+ # @return [Hash<String,Types::FailureInfo>]
353
+ #
354
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/TagResourcesOutput AWS API Documentation
355
+ #
356
+ class TagResourcesOutput < Struct.new(
357
+ :failed_resources_map)
358
+ include Aws::Structure
359
+ end
360
+
361
+ # @note When making an API call, you may pass UntagResourcesInput
362
+ # data as a hash:
363
+ #
364
+ # {
365
+ # resource_arn_list: ["ResourceARN"], # required
366
+ # tag_keys: ["TagKey"], # required
367
+ # }
368
+ #
369
+ # @!attribute [rw] resource_arn_list
370
+ # A list of ARNs. An ARN (Amazon Resource Name) uniquely identifies a
371
+ # resource. You can specify a minimum of 1 and a maximum of 20 ARNs
372
+ # (resources) to untag. An ARN can be set to a maximum of 1600
373
+ # characters. For more information, see [Amazon Resource Names (ARNs)
374
+ # and AWS Service Namespaces][1] in the *AWS General Reference*.
375
+ #
376
+ #
377
+ #
378
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
379
+ # @return [Array<String>]
380
+ #
381
+ # @!attribute [rw] tag_keys
382
+ # A list of the tag keys that you want to remove from the specified
383
+ # resources.
384
+ # @return [Array<String>]
385
+ #
386
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/UntagResourcesInput AWS API Documentation
387
+ #
388
+ class UntagResourcesInput < Struct.new(
389
+ :resource_arn_list,
390
+ :tag_keys)
391
+ include Aws::Structure
392
+ end
393
+
394
+ # @!attribute [rw] failed_resources_map
395
+ # Details of resources that could not be untagged. An error code,
396
+ # status code, and error message are returned for each failed item.
397
+ # @return [Hash<String,Types::FailureInfo>]
398
+ #
399
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/UntagResourcesOutput AWS API Documentation
400
+ #
401
+ class UntagResourcesOutput < Struct.new(
402
+ :failed_resources_map)
403
+ include Aws::Structure
404
+ end
405
+
406
+ end
407
+ end
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-resourcegroupstaggingapi/types'
12
+ require_relative 'aws-sdk-resourcegroupstaggingapi/client_api'
13
+ require_relative 'aws-sdk-resourcegroupstaggingapi/client'
14
+ require_relative 'aws-sdk-resourcegroupstaggingapi/errors'
15
+ require_relative 'aws-sdk-resourcegroupstaggingapi/resource'
16
+ require_relative 'aws-sdk-resourcegroupstaggingapi/customizations'
17
+
18
+ # This module provides support for AWS Resource Groups Tagging API. This module is available in the
19
+ # `aws-sdk-resourcegroupstaggingapi` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from AWS Resource Groups Tagging API all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::ResourceGroupsTaggingAPI::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::ResourceGroupsTaggingAPI
44
+
45
+ GEM_VERSION = '1.0.0.rc1'
46
+
47
+ end
metadata ADDED
@@ -0,0 +1,80 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: aws-sdk-resourcegroupstaggingapi
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0.rc1
5
+ platform: ruby
6
+ authors:
7
+ - Amazon Web Services
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-04-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: aws-sdk-core
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 3.0.0.rc1
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 3.0.0.rc1
27
+ - !ruby/object:Gem::Dependency
28
+ name: aws-sigv4
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.0'
41
+ description: Official AWS Ruby gem for AWS Resource Groups Tagging API. This gem is
42
+ part of the AWS SDK for Ruby.
43
+ email:
44
+ - trevrowe@amazon.com
45
+ executables: []
46
+ extensions: []
47
+ extra_rdoc_files: []
48
+ files:
49
+ - lib/aws-sdk-resourcegroupstaggingapi.rb
50
+ - lib/aws-sdk-resourcegroupstaggingapi/client.rb
51
+ - lib/aws-sdk-resourcegroupstaggingapi/client_api.rb
52
+ - lib/aws-sdk-resourcegroupstaggingapi/customizations.rb
53
+ - lib/aws-sdk-resourcegroupstaggingapi/errors.rb
54
+ - lib/aws-sdk-resourcegroupstaggingapi/resource.rb
55
+ - lib/aws-sdk-resourcegroupstaggingapi/types.rb
56
+ homepage: http://github.com/aws/aws-sdk-ruby
57
+ licenses:
58
+ - Apache-2.0
59
+ metadata: {}
60
+ post_install_message:
61
+ rdoc_options: []
62
+ require_paths:
63
+ - lib
64
+ required_ruby_version: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ required_rubygems_version: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ">"
72
+ - !ruby/object:Gem::Version
73
+ version: 1.3.1
74
+ requirements: []
75
+ rubyforge_project:
76
+ rubygems_version: 2.5.1
77
+ signing_key:
78
+ specification_version: 4
79
+ summary: AWS SDK for Ruby - AWS Resource Groups Tagging API
80
+ test_files: []