aws-sdk-s3tables 1.18.0 → 1.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0d75240d10f13ae1abee00e33cf26ee91012dac10ffbc05e4e18adf08a6f8c75
4
- data.tar.gz: 07aef9a2896a5cc5004b05386aceae17506fc61302fe20ae10d049cc882b0ac9
3
+ metadata.gz: c8cb4fa8333e865b18d017f89cfa6db76400167b845545750aa2aa683f0db4d4
4
+ data.tar.gz: 8f0dff3351850afbe666b4fc2cc2b1a5b2c93f4a4d0482535e99e191665cc21d
5
5
  SHA512:
6
- metadata.gz: e4b22ca5cb4a3b0c760c03660765cd5175b892b7b00d1835d58f511218ae21f52651d715ee076c900532068b04679b41556bc5fa165d1fd8d37aa2be6fe07ec8
7
- data.tar.gz: bd13b44dd0772b1dfbf7844172aed2a389a53a21e1c37045cd610e60525244554cd39ccac4935323e9cafe7cf8aeeb208e7e0118dc2cbcbff58ad0117c88d7dc
6
+ metadata.gz: 6e919add207daa7dbb116785cee82ccbe3a091d049d222fa2dbf7b3ab80a4aa2c9d0168213af8b561d5b42853c087c90a508f86cd6480532638f9a53bc8f44c4
7
+ data.tar.gz: bb317a46e82ebb5d00c08bf671e6b856f4b9768992e5fb0935f8c1cf553e2324b67ac205bea25106ac61b3c89583c958f28b3e7237d13fa0f4f45d051cab7965
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.19.0 (2025-11-06)
5
+ ------------------
6
+
7
+ * Feature - Adds support for tagging APIs for S3 Tables
8
+
4
9
  1.18.0 (2025-10-24)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.18.0
1
+ 1.19.0
@@ -539,6 +539,9 @@ module Aws::S3Tables
539
539
  # `encryptionConfiguration` request parameter you must have the
540
540
  # `s3tables:PutTableEncryption` permission.
541
541
  #
542
+ # * You must have the `s3tables:TagResource` permission in addition to
543
+ # `s3tables:CreateTable` permission to create a table with tags.
544
+ #
542
545
  # <note markdown="1"> Additionally, If you choose SSE-KMS encryption you must grant the S3
543
546
  # Tables maintenance principal access to your KMS key. For more
544
547
  # information, see [Permissions requirements for S3 Tables SSE-KMS
@@ -582,6 +585,22 @@ module Aws::S3Tables
582
585
  #
583
586
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-kms-permissions.html
584
587
  #
588
+ # @option params [Hash<String,String>] :tags
589
+ # A map of user-defined tags that you would like to apply to the table
590
+ # that you are creating. A tag is a key-value pair that you apply to
591
+ # your resources. Tags can help you organize, track costs for, and
592
+ # control access to resources. For more information, see [Tagging for
593
+ # cost allocation or attribute-based access control (ABAC)][1].
594
+ #
595
+ # <note markdown="1"> You must have the `s3tables:TagResource` permission in addition to
596
+ # `s3tables:CreateTable` permission to create a table with tags.
597
+ #
598
+ # </note>
599
+ #
600
+ #
601
+ #
602
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html
603
+ #
585
604
  # @return [Types::CreateTableResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
586
605
  #
587
606
  # * {Types::CreateTableResponse#table_arn #table_arn} => String
@@ -611,6 +630,9 @@ module Aws::S3Tables
611
630
  # sse_algorithm: "AES256", # required, accepts AES256, aws:kms
612
631
  # kms_key_arn: "EncryptionConfigurationKmsKeyArnString",
613
632
  # },
633
+ # tags: {
634
+ # "TagKey" => "TagValue",
635
+ # },
614
636
  # })
615
637
  #
616
638
  # @example Response structure
@@ -638,6 +660,10 @@ module Aws::S3Tables
638
660
  # `encryptionConfiguration` parameter you must have the
639
661
  # `s3tables:PutTableBucketEncryption` permission.
640
662
  #
663
+ # * You must have the `s3tables:TagResource` permission in addition to
664
+ # `s3tables:CreateTableBucket` permission to create a table bucket
665
+ # with tags.
666
+ #
641
667
  #
642
668
  #
643
669
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-buckets-create.html
@@ -652,6 +678,23 @@ module Aws::S3Tables
652
678
  # table level. The configuration includes the encryption algorithm and,
653
679
  # if using SSE-KMS, the KMS key to use.
654
680
  #
681
+ # @option params [Hash<String,String>] :tags
682
+ # A map of user-defined tags that you would like to apply to the table
683
+ # bucket that you are creating. A tag is a key-value pair that you apply
684
+ # to your resources. Tags can help you organize and control access to
685
+ # resources. For more information, see [Tagging for cost allocation or
686
+ # attribute-based access control (ABAC)][1].
687
+ #
688
+ # <note markdown="1"> You must have the `s3tables:TagResource` permission in addition to
689
+ # `s3tables:CreateTableBucket` permisson to create a table bucket with
690
+ # tags.
691
+ #
692
+ # </note>
693
+ #
694
+ #
695
+ #
696
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html
697
+ #
655
698
  # @return [Types::CreateTableBucketResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
656
699
  #
657
700
  # * {Types::CreateTableBucketResponse#arn #arn} => String
@@ -664,6 +707,9 @@ module Aws::S3Tables
664
707
  # sse_algorithm: "AES256", # required, accepts AES256, aws:kms
665
708
  # kms_key_arn: "EncryptionConfigurationKmsKeyArnString",
666
709
  # },
710
+ # tags: {
711
+ # "TagKey" => "TagValue",
712
+ # },
667
713
  # })
668
714
  #
669
715
  # @example Response structure
@@ -1315,7 +1361,8 @@ module Aws::S3Tables
1315
1361
  # The name of the namespace the table is associated with.
1316
1362
  #
1317
1363
  # @option params [required, String] :name
1318
- # The name of the maintenance job.
1364
+ # The name of the table containing the maintenance job status you want
1365
+ # to check.
1319
1366
  #
1320
1367
  # @return [Types::GetTableMaintenanceJobStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1321
1368
  #
@@ -1637,6 +1684,59 @@ module Aws::S3Tables
1637
1684
  req.send_request(options)
1638
1685
  end
1639
1686
 
1687
+ # Lists all of the tags applied to a specified Amazon S3 Tables
1688
+ # resource. Each tag is a label consisting of a key and value pair. Tags
1689
+ # can help you organize, track costs for, and control access to
1690
+ # resources.
1691
+ #
1692
+ # <note markdown="1"> For a list of S3 resources that support tagging, see [Managing tags
1693
+ # for Amazon S3 resources][1].
1694
+ #
1695
+ # </note>
1696
+ #
1697
+ # Permissions
1698
+ #
1699
+ # : For tables and table buckets, you must have the
1700
+ # `s3tables:ListTagsForResource` permission to use this operation.
1701
+ #
1702
+ #
1703
+ #
1704
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#manage-tags
1705
+ #
1706
+ # @option params [required, String] :resource_arn
1707
+ # The Amazon Resource Name (ARN) of the Amazon S3 Tables resource that
1708
+ # you want to list tags for. The tagged resource can be a table bucket
1709
+ # or a table. For a list of all S3 resources that support tagging, see
1710
+ # [Managing tags for Amazon S3 resources][1].
1711
+ #
1712
+ #
1713
+ #
1714
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#manage-tags
1715
+ #
1716
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1717
+ #
1718
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
1719
+ #
1720
+ # @example Request syntax with placeholder values
1721
+ #
1722
+ # resp = client.list_tags_for_resource({
1723
+ # resource_arn: "ResourceArn", # required
1724
+ # })
1725
+ #
1726
+ # @example Response structure
1727
+ #
1728
+ # resp.tags #=> Hash
1729
+ # resp.tags["TagKey"] #=> String
1730
+ #
1731
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/ListTagsForResource AWS API Documentation
1732
+ #
1733
+ # @overload list_tags_for_resource(params = {})
1734
+ # @param [Hash] params ({})
1735
+ def list_tags_for_resource(params = {}, options = {})
1736
+ req = build_request(:list_tags_for_resource, params)
1737
+ req.send_request(options)
1738
+ end
1739
+
1640
1740
  # Sets the encryption configuration for a table bucket.
1641
1741
  #
1642
1742
  # Permissions
@@ -1734,10 +1834,9 @@ module Aws::S3Tables
1734
1834
  req.send_request(options)
1735
1835
  end
1736
1836
 
1737
- # Creates a new maintenance configuration or replaces an existing table
1738
- # bucket policy for a table bucket. For more information, see [Adding a
1739
- # table bucket policy][1] in the *Amazon Simple Storage Service User
1740
- # Guide*.
1837
+ # Creates a new table bucket policy or replaces an existing table bucket
1838
+ # policy for a table bucket. For more information, see [Adding a table
1839
+ # bucket policy][1] in the *Amazon Simple Storage Service User Guide*.
1741
1840
  #
1742
1841
  # Permissions
1743
1842
  #
@@ -1794,7 +1893,7 @@ module Aws::S3Tables
1794
1893
  # The namespace of the table.
1795
1894
  #
1796
1895
  # @option params [required, String] :name
1797
- # The name of the maintenance configuration.
1896
+ # The name of the table.
1798
1897
  #
1799
1898
  # @option params [required, String] :type
1800
1899
  # The type of the maintenance configuration.
@@ -1835,9 +1934,9 @@ module Aws::S3Tables
1835
1934
  req.send_request(options)
1836
1935
  end
1837
1936
 
1838
- # Creates a new maintenance configuration or replaces an existing table
1839
- # policy for a table. For more information, see [Adding a table
1840
- # policy][1] in the *Amazon Simple Storage Service User Guide*.
1937
+ # Creates a new table policy or replaces an existing table policy for a
1938
+ # table. For more information, see [Adding a table policy][1] in the
1939
+ # *Amazon Simple Storage Service User Guide*.
1841
1940
  #
1842
1941
  # Permissions
1843
1942
  #
@@ -1933,6 +2032,119 @@ module Aws::S3Tables
1933
2032
  req.send_request(options)
1934
2033
  end
1935
2034
 
2035
+ # Applies one or more user-defined tags to an Amazon S3 Tables resource
2036
+ # or updates existing tags. Each tag is a label consisting of a key and
2037
+ # value pair. Tags can help you organize, track costs for, and control
2038
+ # access to your resources. You can add up to 50 tags for each S3
2039
+ # resource.
2040
+ #
2041
+ # <note markdown="1"> For a list of S3 resources that support tagging, see [Managing tags
2042
+ # for Amazon S3 resources][1].
2043
+ #
2044
+ # </note>
2045
+ #
2046
+ # Permissions
2047
+ #
2048
+ # : For tables and table buckets, you must have the
2049
+ # `s3tables:TagResource` permission to use this operation.
2050
+ #
2051
+ #
2052
+ #
2053
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#manage-tags
2054
+ #
2055
+ # @option params [required, String] :resource_arn
2056
+ # The Amazon Resource Name (ARN) of the Amazon S3 Tables resource that
2057
+ # you're applying tags to. The tagged resource can be a table bucket or
2058
+ # a table. For a list of all S3 resources that support tagging, see
2059
+ # [Managing tags for Amazon S3 resources][1].
2060
+ #
2061
+ #
2062
+ #
2063
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#manage-tags
2064
+ #
2065
+ # @option params [required, Hash<String,String>] :tags
2066
+ # The user-defined tag that you want to add to the specified S3 Tables
2067
+ # resource. For more information, see [Tagging for cost allocation or
2068
+ # attribute-based access control (ABAC)][1].
2069
+ #
2070
+ #
2071
+ #
2072
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html
2073
+ #
2074
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2075
+ #
2076
+ # @example Request syntax with placeholder values
2077
+ #
2078
+ # resp = client.tag_resource({
2079
+ # resource_arn: "ResourceArn", # required
2080
+ # tags: { # required
2081
+ # "TagKey" => "TagValue",
2082
+ # },
2083
+ # })
2084
+ #
2085
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/TagResource AWS API Documentation
2086
+ #
2087
+ # @overload tag_resource(params = {})
2088
+ # @param [Hash] params ({})
2089
+ def tag_resource(params = {}, options = {})
2090
+ req = build_request(:tag_resource, params)
2091
+ req.send_request(options)
2092
+ end
2093
+
2094
+ # Removes the specified user-defined tags from an Amazon S3 Tables
2095
+ # resource. You can pass one or more tag keys.
2096
+ #
2097
+ # <note markdown="1"> For a list of S3 resources that support tagging, see [Managing tags
2098
+ # for Amazon S3 resources][1].
2099
+ #
2100
+ # </note>
2101
+ #
2102
+ # Permissions
2103
+ #
2104
+ # : For tables and table buckets, you must have the
2105
+ # `s3tables:UntagResource` permission to use this operation.
2106
+ #
2107
+ #
2108
+ #
2109
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#manage-tags
2110
+ #
2111
+ # @option params [required, String] :resource_arn
2112
+ # The Amazon Resource Name (ARN) of the Amazon S3 Tables resource that
2113
+ # you're removing tags from. The tagged resource can be a table bucket
2114
+ # or a table. For a list of all S3 resources that support tagging, see
2115
+ # [Managing tags for Amazon S3 resources][1].
2116
+ #
2117
+ #
2118
+ #
2119
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#manage-tags
2120
+ #
2121
+ # @option params [required, Array<String>] :tag_keys
2122
+ # The array of tag keys that you're removing from the S3 Tables
2123
+ # resource. For more information, see [Tagging for cost allocation or
2124
+ # attribute-based access control (ABAC)][1].
2125
+ #
2126
+ #
2127
+ #
2128
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html
2129
+ #
2130
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2131
+ #
2132
+ # @example Request syntax with placeholder values
2133
+ #
2134
+ # resp = client.untag_resource({
2135
+ # resource_arn: "ResourceArn", # required
2136
+ # tag_keys: ["TagKey"], # required
2137
+ # })
2138
+ #
2139
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/UntagResource AWS API Documentation
2140
+ #
2141
+ # @overload untag_resource(params = {})
2142
+ # @param [Hash] params ({})
2143
+ def untag_resource(params = {}, options = {})
2144
+ req = build_request(:untag_resource, params)
2145
+ req.send_request(options)
2146
+ end
2147
+
1936
2148
  # Updates the metadata location for a table. The metadata location of a
1937
2149
  # table must be an S3 URI that begins with the table's warehouse
1938
2150
  # location. The metadata location for an Apache Iceberg table must end
@@ -2013,7 +2225,7 @@ module Aws::S3Tables
2013
2225
  tracer: tracer
2014
2226
  )
2015
2227
  context[:gem_name] = 'aws-sdk-s3tables'
2016
- context[:gem_version] = '1.18.0'
2228
+ context[:gem_version] = '1.19.0'
2017
2229
  Seahorse::Client::Request.new(handlers, context)
2018
2230
  end
2019
2231
 
@@ -78,6 +78,8 @@ module Aws::S3Tables
78
78
  ListTablesRequest = Shapes::StructureShape.new(name: 'ListTablesRequest')
79
79
  ListTablesRequestPrefixString = Shapes::StringShape.new(name: 'ListTablesRequestPrefixString')
80
80
  ListTablesResponse = Shapes::StructureShape.new(name: 'ListTablesResponse')
81
+ ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
82
+ ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
81
83
  MaintenanceStatus = Shapes::StringShape.new(name: 'MaintenanceStatus')
82
84
  MetadataLocation = Shapes::StringShape.new(name: 'MetadataLocation')
83
85
  NamespaceId = Shapes::StringShape.new(name: 'NamespaceId')
@@ -95,6 +97,7 @@ module Aws::S3Tables
95
97
  PutTableMaintenanceConfigurationRequest = Shapes::StructureShape.new(name: 'PutTableMaintenanceConfigurationRequest')
96
98
  PutTablePolicyRequest = Shapes::StructureShape.new(name: 'PutTablePolicyRequest')
97
99
  RenameTableRequest = Shapes::StructureShape.new(name: 'RenameTableRequest')
100
+ ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
98
101
  ResourcePolicy = Shapes::StringShape.new(name: 'ResourcePolicy')
99
102
  SSEAlgorithm = Shapes::StringShape.new(name: 'SSEAlgorithm')
100
103
  SchemaField = Shapes::StructureShape.new(name: 'SchemaField')
@@ -124,7 +127,15 @@ module Aws::S3Tables
124
127
  TableSummary = Shapes::StructureShape.new(name: 'TableSummary')
125
128
  TableSummaryList = Shapes::ListShape.new(name: 'TableSummaryList')
126
129
  TableType = Shapes::StringShape.new(name: 'TableType')
130
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
131
+ TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
132
+ TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
133
+ TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
134
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
135
+ Tags = Shapes::MapShape.new(name: 'Tags')
127
136
  TooManyRequestsException = Shapes::StructureShape.new(name: 'TooManyRequestsException')
137
+ UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
138
+ UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
128
139
  UpdateTableMetadataLocationRequest = Shapes::StructureShape.new(name: 'UpdateTableMetadataLocationRequest')
129
140
  UpdateTableMetadataLocationResponse = Shapes::StructureShape.new(name: 'UpdateTableMetadataLocationResponse')
130
141
  VersionToken = Shapes::StringShape.new(name: 'VersionToken')
@@ -151,6 +162,7 @@ module Aws::S3Tables
151
162
 
152
163
  CreateTableBucketRequest.add_member(:name, Shapes::ShapeRef.new(shape: TableBucketName, required: true, location_name: "name"))
153
164
  CreateTableBucketRequest.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "encryptionConfiguration"))
165
+ CreateTableBucketRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
154
166
  CreateTableBucketRequest.struct_class = Types::CreateTableBucketRequest
155
167
 
156
168
  CreateTableBucketResponse.add_member(:arn, Shapes::ShapeRef.new(shape: TableBucketARN, required: true, location_name: "arn"))
@@ -162,6 +174,7 @@ module Aws::S3Tables
162
174
  CreateTableRequest.add_member(:format, Shapes::ShapeRef.new(shape: OpenTableFormat, required: true, location_name: "format"))
163
175
  CreateTableRequest.add_member(:metadata, Shapes::ShapeRef.new(shape: TableMetadata, location_name: "metadata"))
164
176
  CreateTableRequest.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "encryptionConfiguration"))
177
+ CreateTableRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
165
178
  CreateTableRequest.struct_class = Types::CreateTableRequest
166
179
 
167
180
  CreateTableResponse.add_member(:table_arn, Shapes::ShapeRef.new(shape: TableARN, required: true, location_name: "tableARN"))
@@ -361,6 +374,12 @@ module Aws::S3Tables
361
374
  ListTablesResponse.add_member(:continuation_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "continuationToken"))
362
375
  ListTablesResponse.struct_class = Types::ListTablesResponse
363
376
 
377
+ ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location: "uri", location_name: "resourceArn"))
378
+ ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
379
+
380
+ ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
381
+ ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
382
+
364
383
  NamespaceList.member = Shapes::ShapeRef.new(shape: NamespaceName)
365
384
 
366
385
  NamespaceSummary.add_member(:namespace, Shapes::ShapeRef.new(shape: NamespaceList, required: true, location_name: "namespace"))
@@ -481,9 +500,26 @@ module Aws::S3Tables
481
500
 
482
501
  TableSummaryList.member = Shapes::ShapeRef.new(shape: TableSummary)
483
502
 
503
+ TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
504
+
505
+ TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location: "uri", location_name: "resourceArn"))
506
+ TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, required: true, location_name: "tags"))
507
+ TagResourceRequest.struct_class = Types::TagResourceRequest
508
+
509
+ TagResourceResponse.struct_class = Types::TagResourceResponse
510
+
511
+ Tags.key = Shapes::ShapeRef.new(shape: TagKey)
512
+ Tags.value = Shapes::ShapeRef.new(shape: TagValue)
513
+
484
514
  TooManyRequestsException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
485
515
  TooManyRequestsException.struct_class = Types::TooManyRequestsException
486
516
 
517
+ UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location: "uri", location_name: "resourceArn"))
518
+ UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location: "querystring", location_name: "tagKeys"))
519
+ UntagResourceRequest.struct_class = Types::UntagResourceRequest
520
+
521
+ UntagResourceResponse.struct_class = Types::UntagResourceResponse
522
+
487
523
  UpdateTableMetadataLocationRequest.add_member(:table_bucket_arn, Shapes::ShapeRef.new(shape: TableBucketARN, required: true, location: "uri", location_name: "tableBucketARN"))
488
524
  UpdateTableMetadataLocationRequest.add_member(:namespace, Shapes::ShapeRef.new(shape: NamespaceName, required: true, location: "uri", location_name: "namespace"))
489
525
  UpdateTableMetadataLocationRequest.add_member(:name, Shapes::ShapeRef.new(shape: TableName, required: true, location: "uri", location_name: "name"))
@@ -862,6 +898,20 @@ module Aws::S3Tables
862
898
  )
863
899
  end)
864
900
 
901
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
902
+ o.name = "ListTagsForResource"
903
+ o.http_method = "GET"
904
+ o.http_request_uri = "/tag/{resourceArn}"
905
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
906
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
907
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
908
+ o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
909
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
910
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
911
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
912
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
913
+ end)
914
+
865
915
  api.add_operation(:put_table_bucket_encryption, Seahorse::Model::Operation.new.tap do |o|
866
916
  o.name = "PutTableBucketEncryption"
867
917
  o.http_method = "PUT"
@@ -946,6 +996,34 @@ module Aws::S3Tables
946
996
  o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
947
997
  end)
948
998
 
999
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
1000
+ o.name = "TagResource"
1001
+ o.http_method = "POST"
1002
+ o.http_request_uri = "/tag/{resourceArn}"
1003
+ o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
1004
+ o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
1005
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1006
+ o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
1007
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1008
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1009
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1010
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1011
+ end)
1012
+
1013
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
1014
+ o.name = "UntagResource"
1015
+ o.http_method = "DELETE"
1016
+ o.http_request_uri = "/tag/{resourceArn}"
1017
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
1018
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
1019
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1020
+ o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
1021
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1022
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1023
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1024
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1025
+ end)
1026
+
949
1027
  api.add_operation(:update_table_metadata_location, Seahorse::Model::Operation.new.tap do |o|
950
1028
  o.name = "UpdateTableMetadataLocation"
951
1029
  o.http_method = "PUT"
@@ -99,11 +99,30 @@ module Aws::S3Tables
99
99
  # and, if using SSE-KMS, the KMS key to use.
100
100
  # @return [Types::EncryptionConfiguration]
101
101
  #
102
+ # @!attribute [rw] tags
103
+ # A map of user-defined tags that you would like to apply to the table
104
+ # bucket that you are creating. A tag is a key-value pair that you
105
+ # apply to your resources. Tags can help you organize and control
106
+ # access to resources. For more information, see [Tagging for cost
107
+ # allocation or attribute-based access control (ABAC)][1].
108
+ #
109
+ # <note markdown="1"> You must have the `s3tables:TagResource` permission in addition to
110
+ # `s3tables:CreateTableBucket` permisson to create a table bucket with
111
+ # tags.
112
+ #
113
+ # </note>
114
+ #
115
+ #
116
+ #
117
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html
118
+ # @return [Hash<String,String>]
119
+ #
102
120
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/CreateTableBucketRequest AWS API Documentation
103
121
  #
104
122
  class CreateTableBucketRequest < Struct.new(
105
123
  :name,
106
- :encryption_configuration)
124
+ :encryption_configuration,
125
+ :tags)
107
126
  SENSITIVE = []
108
127
  include Aws::Structure
109
128
  end
@@ -157,6 +176,23 @@ module Aws::S3Tables
157
176
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-kms-permissions.html
158
177
  # @return [Types::EncryptionConfiguration]
159
178
  #
179
+ # @!attribute [rw] tags
180
+ # A map of user-defined tags that you would like to apply to the table
181
+ # that you are creating. A tag is a key-value pair that you apply to
182
+ # your resources. Tags can help you organize, track costs for, and
183
+ # control access to resources. For more information, see [Tagging for
184
+ # cost allocation or attribute-based access control (ABAC)][1].
185
+ #
186
+ # <note markdown="1"> You must have the `s3tables:TagResource` permission in addition to
187
+ # `s3tables:CreateTable` permission to create a table with tags.
188
+ #
189
+ # </note>
190
+ #
191
+ #
192
+ #
193
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html
194
+ # @return [Hash<String,String>]
195
+ #
160
196
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/CreateTableRequest AWS API Documentation
161
197
  #
162
198
  class CreateTableRequest < Struct.new(
@@ -165,7 +201,8 @@ module Aws::S3Tables
165
201
  :name,
166
202
  :format,
167
203
  :metadata,
168
- :encryption_configuration)
204
+ :encryption_configuration,
205
+ :tags)
169
206
  SENSITIVE = []
170
207
  include Aws::Structure
171
208
  end
@@ -601,7 +638,8 @@ module Aws::S3Tables
601
638
  # @return [String]
602
639
  #
603
640
  # @!attribute [rw] name
604
- # The name of the maintenance job.
641
+ # The name of the table containing the maintenance job status you want
642
+ # to check.
605
643
  # @return [String]
606
644
  #
607
645
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/GetTableMaintenanceJobStatusRequest AWS API Documentation
@@ -1079,6 +1117,43 @@ module Aws::S3Tables
1079
1117
  include Aws::Structure
1080
1118
  end
1081
1119
 
1120
+ # @!attribute [rw] resource_arn
1121
+ # The Amazon Resource Name (ARN) of the Amazon S3 Tables resource that
1122
+ # you want to list tags for. The tagged resource can be a table bucket
1123
+ # or a table. For a list of all S3 resources that support tagging, see
1124
+ # [Managing tags for Amazon S3 resources][1].
1125
+ #
1126
+ #
1127
+ #
1128
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#manage-tags
1129
+ # @return [String]
1130
+ #
1131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/ListTagsForResourceRequest AWS API Documentation
1132
+ #
1133
+ class ListTagsForResourceRequest < Struct.new(
1134
+ :resource_arn)
1135
+ SENSITIVE = []
1136
+ include Aws::Structure
1137
+ end
1138
+
1139
+ # @!attribute [rw] tags
1140
+ # The user-defined tags that are applied to the resource. For more
1141
+ # information, see [Tagging for cost allocation or attribute-based
1142
+ # access control (ABAC)][1].
1143
+ #
1144
+ #
1145
+ #
1146
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html
1147
+ # @return [Hash<String,String>]
1148
+ #
1149
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/ListTagsForResourceResponse AWS API Documentation
1150
+ #
1151
+ class ListTagsForResourceResponse < Struct.new(
1152
+ :tags)
1153
+ SENSITIVE = []
1154
+ include Aws::Structure
1155
+ end
1156
+
1082
1157
  # Contains details about a namespace.
1083
1158
  #
1084
1159
  # @!attribute [rw] namespace
@@ -1201,7 +1276,7 @@ module Aws::S3Tables
1201
1276
  # @return [String]
1202
1277
  #
1203
1278
  # @!attribute [rw] name
1204
- # The name of the maintenance configuration.
1279
+ # The name of the table.
1205
1280
  # @return [String]
1206
1281
  #
1207
1282
  # @!attribute [rw] type
@@ -1551,6 +1626,40 @@ module Aws::S3Tables
1551
1626
  include Aws::Structure
1552
1627
  end
1553
1628
 
1629
+ # @!attribute [rw] resource_arn
1630
+ # The Amazon Resource Name (ARN) of the Amazon S3 Tables resource that
1631
+ # you're applying tags to. The tagged resource can be a table bucket
1632
+ # or a table. For a list of all S3 resources that support tagging, see
1633
+ # [Managing tags for Amazon S3 resources][1].
1634
+ #
1635
+ #
1636
+ #
1637
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#manage-tags
1638
+ # @return [String]
1639
+ #
1640
+ # @!attribute [rw] tags
1641
+ # The user-defined tag that you want to add to the specified S3 Tables
1642
+ # resource. For more information, see [Tagging for cost allocation or
1643
+ # attribute-based access control (ABAC)][1].
1644
+ #
1645
+ #
1646
+ #
1647
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html
1648
+ # @return [Hash<String,String>]
1649
+ #
1650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/TagResourceRequest AWS API Documentation
1651
+ #
1652
+ class TagResourceRequest < Struct.new(
1653
+ :resource_arn,
1654
+ :tags)
1655
+ SENSITIVE = []
1656
+ include Aws::Structure
1657
+ end
1658
+
1659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/TagResourceResponse AWS API Documentation
1660
+ #
1661
+ class TagResourceResponse < Aws::EmptyStructure; end
1662
+
1554
1663
  # The limit on the number of requests per second was exceeded.
1555
1664
  #
1556
1665
  # @!attribute [rw] message
@@ -1564,6 +1673,40 @@ module Aws::S3Tables
1564
1673
  include Aws::Structure
1565
1674
  end
1566
1675
 
1676
+ # @!attribute [rw] resource_arn
1677
+ # The Amazon Resource Name (ARN) of the Amazon S3 Tables resource that
1678
+ # you're removing tags from. The tagged resource can be a table
1679
+ # bucket or a table. For a list of all S3 resources that support
1680
+ # tagging, see [Managing tags for Amazon S3 resources][1].
1681
+ #
1682
+ #
1683
+ #
1684
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#manage-tags
1685
+ # @return [String]
1686
+ #
1687
+ # @!attribute [rw] tag_keys
1688
+ # The array of tag keys that you're removing from the S3 Tables
1689
+ # resource. For more information, see [Tagging for cost allocation or
1690
+ # attribute-based access control (ABAC)][1].
1691
+ #
1692
+ #
1693
+ #
1694
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html
1695
+ # @return [Array<String>]
1696
+ #
1697
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/UntagResourceRequest AWS API Documentation
1698
+ #
1699
+ class UntagResourceRequest < Struct.new(
1700
+ :resource_arn,
1701
+ :tag_keys)
1702
+ SENSITIVE = []
1703
+ include Aws::Structure
1704
+ end
1705
+
1706
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/UntagResourceResponse AWS API Documentation
1707
+ #
1708
+ class UntagResourceResponse < Aws::EmptyStructure; end
1709
+
1567
1710
  # @!attribute [rw] table_bucket_arn
1568
1711
  # The Amazon Resource Name (ARN) of the table bucket.
1569
1712
  # @return [String]
@@ -55,7 +55,7 @@ module Aws::S3Tables
55
55
  autoload :EndpointProvider, 'aws-sdk-s3tables/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-s3tables/endpoints'
57
57
 
58
- GEM_VERSION = '1.18.0'
58
+ GEM_VERSION = '1.19.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -117,7 +117,8 @@ module Aws
117
117
  ?encryption_configuration: {
118
118
  sse_algorithm: ("AES256" | "aws:kms"),
119
119
  kms_key_arn: ::String?
120
- }
120
+ },
121
+ ?tags: Hash[::String, ::String]
121
122
  ) -> _CreateTableResponseSuccess
122
123
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateTableResponseSuccess
123
124
 
@@ -131,7 +132,8 @@ module Aws
131
132
  ?encryption_configuration: {
132
133
  sse_algorithm: ("AES256" | "aws:kms"),
133
134
  kms_key_arn: ::String?
134
- }
135
+ },
136
+ ?tags: Hash[::String, ::String]
135
137
  ) -> _CreateTableBucketResponseSuccess
136
138
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateTableBucketResponseSuccess
137
139
 
@@ -374,6 +376,16 @@ module Aws
374
376
  ) -> _ListTablesResponseSuccess
375
377
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListTablesResponseSuccess
376
378
 
379
+ interface _ListTagsForResourceResponseSuccess
380
+ include ::Seahorse::Client::_ResponseSuccess[Types::ListTagsForResourceResponse]
381
+ def tags: () -> ::Hash[::String, ::String]
382
+ end
383
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3Tables/Client.html#list_tags_for_resource-instance_method
384
+ def list_tags_for_resource: (
385
+ resource_arn: ::String
386
+ ) -> _ListTagsForResourceResponseSuccess
387
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListTagsForResourceResponseSuccess
388
+
377
389
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3Tables/Client.html#put_table_bucket_encryption-instance_method
378
390
  def put_table_bucket_encryption: (
379
391
  table_bucket_arn: ::String,
@@ -449,6 +461,26 @@ module Aws
449
461
  ) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
450
462
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
451
463
 
464
+ interface _TagResourceResponseSuccess
465
+ include ::Seahorse::Client::_ResponseSuccess[Types::TagResourceResponse]
466
+ end
467
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3Tables/Client.html#tag_resource-instance_method
468
+ def tag_resource: (
469
+ resource_arn: ::String,
470
+ tags: Hash[::String, ::String]
471
+ ) -> _TagResourceResponseSuccess
472
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _TagResourceResponseSuccess
473
+
474
+ interface _UntagResourceResponseSuccess
475
+ include ::Seahorse::Client::_ResponseSuccess[Types::UntagResourceResponse]
476
+ end
477
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3Tables/Client.html#untag_resource-instance_method
478
+ def untag_resource: (
479
+ resource_arn: ::String,
480
+ tag_keys: Array[::String]
481
+ ) -> _UntagResourceResponseSuccess
482
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UntagResourceResponseSuccess
483
+
452
484
  interface _UpdateTableMetadataLocationResponseSuccess
453
485
  include ::Seahorse::Client::_ResponseSuccess[Types::UpdateTableMetadataLocationResponse]
454
486
  def name: () -> ::String
data/sig/types.rbs CHANGED
@@ -38,6 +38,7 @@ module Aws::S3Tables
38
38
  class CreateTableBucketRequest
39
39
  attr_accessor name: ::String
40
40
  attr_accessor encryption_configuration: Types::EncryptionConfiguration
41
+ attr_accessor tags: ::Hash[::String, ::String]
41
42
  SENSITIVE: []
42
43
  end
43
44
 
@@ -53,6 +54,7 @@ module Aws::S3Tables
53
54
  attr_accessor format: ("ICEBERG")
54
55
  attr_accessor metadata: Types::TableMetadata
55
56
  attr_accessor encryption_configuration: Types::EncryptionConfiguration
57
+ attr_accessor tags: ::Hash[::String, ::String]
56
58
  SENSITIVE: []
57
59
  end
58
60
 
@@ -339,6 +341,16 @@ module Aws::S3Tables
339
341
  SENSITIVE: []
340
342
  end
341
343
 
344
+ class ListTagsForResourceRequest
345
+ attr_accessor resource_arn: ::String
346
+ SENSITIVE: []
347
+ end
348
+
349
+ class ListTagsForResourceResponse
350
+ attr_accessor tags: ::Hash[::String, ::String]
351
+ SENSITIVE: []
352
+ end
353
+
342
354
  class NamespaceSummary
343
355
  attr_accessor namespace: ::Array[::String]
344
356
  attr_accessor created_at: ::Time
@@ -484,11 +496,29 @@ module Aws::S3Tables
484
496
  SENSITIVE: []
485
497
  end
486
498
 
499
+ class TagResourceRequest
500
+ attr_accessor resource_arn: ::String
501
+ attr_accessor tags: ::Hash[::String, ::String]
502
+ SENSITIVE: []
503
+ end
504
+
505
+ class TagResourceResponse < Aws::EmptyStructure
506
+ end
507
+
487
508
  class TooManyRequestsException
488
509
  attr_accessor message: ::String
489
510
  SENSITIVE: []
490
511
  end
491
512
 
513
+ class UntagResourceRequest
514
+ attr_accessor resource_arn: ::String
515
+ attr_accessor tag_keys: ::Array[::String]
516
+ SENSITIVE: []
517
+ end
518
+
519
+ class UntagResourceResponse < Aws::EmptyStructure
520
+ end
521
+
492
522
  class UpdateTableMetadataLocationRequest
493
523
  attr_accessor table_bucket_arn: ::String
494
524
  attr_accessor namespace: ::String
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-s3tables
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.18.0
4
+ version: 1.19.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services