aws-sdk-cleanrooms 1.1.0 → 1.2.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: 8a02a5c9d66486070f74e2d618cfba27382ea98982aaebf0f4eb02dd81d85c96
4
- data.tar.gz: 1ef28a3e388354b6e0c7ed884b7bb34dee44e330fa7a879e996570f6f3be4cda
3
+ metadata.gz: d52e093072f749e31d4cfeaa4285aa418ba41e2cd305d3c75518fa0f36e8a37d
4
+ data.tar.gz: eefbe0826fd2c7e877a987bea2b928c5c419a271c1e78315ab8781fb445f294a
5
5
  SHA512:
6
- metadata.gz: fadaceb36b36c35dd31da11dfb22ebf947bf28af66405c7ea74671b88b5b6de47e1f181b64b1f57a9d5ca41f813141d7be6c0a02a704a41f56ce4f1324c28a67
7
- data.tar.gz: 352febed9e126733fbb08dda30f5b404ea69fa34c1130da46aaa778ae7225f6fec12409d4563d56eeeb8af3e2fc2ee2e33295b5070e61b58db6536e12a520f49
6
+ metadata.gz: b4e4474bff138cdd4f4cdff68627caa11d244bdb84799d83af55efc8e0d718df6bd83310a7d5e894f14340807f6f8ec64281f774ccdc2a2c98062023f3847bb0
7
+ data.tar.gz: '082f95aa0812d811670a6eab8dee108015b07439b51d5940c206eb4dff4866c160445901df41ece019cc39cf588fd31ac20883e5d3d58091f9f7e1e501e578e6'
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.2.0 (2023-03-21)
5
+ ------------------
6
+
7
+ * Feature - GA Release of AWS Clean Rooms, Added Tagging Functionality
8
+
4
9
  1.1.0 (2023-01-18)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.0
1
+ 1.2.0
@@ -450,6 +450,12 @@ module Aws::CleanRooms
450
450
  # An indicator as to whether query logging has been enabled or disabled
451
451
  # for the collaboration.
452
452
  #
453
+ # @option params [Hash<String,String>] :tags
454
+ # An optional label that you can assign to a resource when you create
455
+ # it. Each tag consists of a key and an optional value, both of which
456
+ # you define. When you use tagging, you can also use tag-based access
457
+ # control in IAM policies to control access to this resource.
458
+ #
453
459
  # @return [Types::CreateCollaborationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
454
460
  #
455
461
  # * {Types::CreateCollaborationOutput#collaboration #collaboration} => Types::Collaboration
@@ -475,6 +481,9 @@ module Aws::CleanRooms
475
481
  # preserve_nulls: false, # required
476
482
  # },
477
483
  # query_log_status: "ENABLED", # required, accepts ENABLED, DISABLED
484
+ # tags: {
485
+ # "TagKey" => "TagValue",
486
+ # },
478
487
  # })
479
488
  #
480
489
  # @example Response structure
@@ -524,6 +533,12 @@ module Aws::CleanRooms
524
533
  # The analysis method for the configured tables. The only valid value is
525
534
  # currently `DIRECT\_QUERY`.
526
535
  #
536
+ # @option params [Hash<String,String>] :tags
537
+ # An optional label that you can assign to a resource when you create
538
+ # it. Each tag consists of a key and an optional value, both of which
539
+ # you define. When you use tagging, you can also use tag-based access
540
+ # control in IAM policies to control access to this resource.
541
+ #
527
542
  # @return [Types::CreateConfiguredTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
528
543
  #
529
544
  # * {Types::CreateConfiguredTableOutput#configured_table #configured_table} => Types::ConfiguredTable
@@ -541,6 +556,9 @@ module Aws::CleanRooms
541
556
  # },
542
557
  # allowed_columns: ["ColumnName"], # required
543
558
  # analysis_method: "DIRECT_QUERY", # required, accepts DIRECT_QUERY
559
+ # tags: {
560
+ # "TagKey" => "TagValue",
561
+ # },
544
562
  # })
545
563
  #
546
564
  # @example Response structure
@@ -678,6 +696,12 @@ module Aws::CleanRooms
678
696
  # The service will assume this role to access catalog metadata and query
679
697
  # the table.
680
698
  #
699
+ # @option params [Hash<String,String>] :tags
700
+ # An optional label that you can assign to a resource when you create
701
+ # it. Each tag consists of a key and an optional value, both of which
702
+ # you define. When you use tagging, you can also use tag-based access
703
+ # control in IAM policies to control access to this resource.
704
+ #
681
705
  # @return [Types::CreateConfiguredTableAssociationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
682
706
  #
683
707
  # * {Types::CreateConfiguredTableAssociationOutput#configured_table_association #configured_table_association} => Types::ConfiguredTableAssociation
@@ -690,6 +714,9 @@ module Aws::CleanRooms
690
714
  # membership_identifier: "MembershipIdentifier", # required
691
715
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
692
716
  # role_arn: "RoleArn", # required
717
+ # tags: {
718
+ # "TagKey" => "TagValue",
719
+ # },
693
720
  # })
694
721
  #
695
722
  # @example Response structure
@@ -725,6 +752,12 @@ module Aws::CleanRooms
725
752
  # An indicator as to whether query logging has been enabled or disabled
726
753
  # for the collaboration.
727
754
  #
755
+ # @option params [Hash<String,String>] :tags
756
+ # An optional label that you can assign to a resource when you create
757
+ # it. Each tag consists of a key and an optional value, both of which
758
+ # you define. When you use tagging, you can also use tag-based access
759
+ # control in IAM policies to control access to this resource.
760
+ #
728
761
  # @return [Types::CreateMembershipOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
729
762
  #
730
763
  # * {Types::CreateMembershipOutput#membership #membership} => Types::Membership
@@ -734,6 +767,9 @@ module Aws::CleanRooms
734
767
  # resp = client.create_membership({
735
768
  # collaboration_identifier: "CollaborationIdentifier", # required
736
769
  # query_log_status: "ENABLED", # required, accepts ENABLED, DISABLED
770
+ # tags: {
771
+ # "TagKey" => "TagValue",
772
+ # },
737
773
  # })
738
774
  #
739
775
  # @example Response structure
@@ -1656,6 +1692,36 @@ module Aws::CleanRooms
1656
1692
  req.send_request(options)
1657
1693
  end
1658
1694
 
1695
+ # Lists all of the tags that have been added to a resource.
1696
+ #
1697
+ # @option params [required, String] :resource_arn
1698
+ # The Amazon Resource Name (ARN) associated with the resource you want
1699
+ # to list tags on.
1700
+ #
1701
+ # @return [Types::ListTagsForResourceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1702
+ #
1703
+ # * {Types::ListTagsForResourceOutput#tags #tags} => Hash&lt;String,String&gt;
1704
+ #
1705
+ # @example Request syntax with placeholder values
1706
+ #
1707
+ # resp = client.list_tags_for_resource({
1708
+ # resource_arn: "CleanroomsArn", # required
1709
+ # })
1710
+ #
1711
+ # @example Response structure
1712
+ #
1713
+ # resp.tags #=> Hash
1714
+ # resp.tags["TagKey"] #=> String
1715
+ #
1716
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListTagsForResource AWS API Documentation
1717
+ #
1718
+ # @overload list_tags_for_resource(params = {})
1719
+ # @param [Hash] params ({})
1720
+ def list_tags_for_resource(params = {}, options = {})
1721
+ req = build_request(:list_tags_for_resource, params)
1722
+ req.send_request(options)
1723
+ end
1724
+
1659
1725
  # Creates a protected query that is started by AWS Clean Rooms.
1660
1726
  #
1661
1727
  # @option params [required, String] :type
@@ -1719,6 +1785,62 @@ module Aws::CleanRooms
1719
1785
  req.send_request(options)
1720
1786
  end
1721
1787
 
1788
+ # Tags a resource.
1789
+ #
1790
+ # @option params [required, String] :resource_arn
1791
+ # The Amazon Resource Name (ARN) associated with the resource you want
1792
+ # to tag.
1793
+ #
1794
+ # @option params [required, Hash<String,String>] :tags
1795
+ # A map of objects specifying each key name and value.
1796
+ #
1797
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1798
+ #
1799
+ # @example Request syntax with placeholder values
1800
+ #
1801
+ # resp = client.tag_resource({
1802
+ # resource_arn: "CleanroomsArn", # required
1803
+ # tags: { # required
1804
+ # "TagKey" => "TagValue",
1805
+ # },
1806
+ # })
1807
+ #
1808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/TagResource AWS API Documentation
1809
+ #
1810
+ # @overload tag_resource(params = {})
1811
+ # @param [Hash] params ({})
1812
+ def tag_resource(params = {}, options = {})
1813
+ req = build_request(:tag_resource, params)
1814
+ req.send_request(options)
1815
+ end
1816
+
1817
+ # Removes a tag or list of tags from a resource.
1818
+ #
1819
+ # @option params [required, String] :resource_arn
1820
+ # The Amazon Resource Name (ARN) associated with the resource you want
1821
+ # to remove the tag from.
1822
+ #
1823
+ # @option params [required, Array<String>] :tag_keys
1824
+ # A list of key names of tags to be removed.
1825
+ #
1826
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1827
+ #
1828
+ # @example Request syntax with placeholder values
1829
+ #
1830
+ # resp = client.untag_resource({
1831
+ # resource_arn: "CleanroomsArn", # required
1832
+ # tag_keys: ["TagKey"], # required
1833
+ # })
1834
+ #
1835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UntagResource AWS API Documentation
1836
+ #
1837
+ # @overload untag_resource(params = {})
1838
+ # @param [Hash] params ({})
1839
+ def untag_resource(params = {}, options = {})
1840
+ req = build_request(:untag_resource, params)
1841
+ req.send_request(options)
1842
+ end
1843
+
1722
1844
  # Updates collaboration metadata and can only be called by the
1723
1845
  # collaboration owner.
1724
1846
  #
@@ -2069,7 +2191,7 @@ module Aws::CleanRooms
2069
2191
  params: params,
2070
2192
  config: config)
2071
2193
  context[:gem_name] = 'aws-sdk-cleanrooms'
2072
- context[:gem_version] = '1.1.0'
2194
+ context[:gem_version] = '1.2.0'
2073
2195
  Seahorse::Client::Request.new(handlers, context)
2074
2196
  end
2075
2197
 
@@ -41,6 +41,7 @@ module Aws::CleanRooms
41
41
  BatchGetSchemaInput = Shapes::StructureShape.new(name: 'BatchGetSchemaInput')
42
42
  BatchGetSchemaOutput = Shapes::StructureShape.new(name: 'BatchGetSchemaOutput')
43
43
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
44
+ CleanroomsArn = Shapes::StringShape.new(name: 'CleanroomsArn')
44
45
  Collaboration = Shapes::StructureShape.new(name: 'Collaboration')
45
46
  CollaborationArn = Shapes::StringShape.new(name: 'CollaborationArn')
46
47
  CollaborationDescription = Shapes::StringShape.new(name: 'CollaborationDescription')
@@ -131,6 +132,8 @@ module Aws::CleanRooms
131
132
  ListProtectedQueriesOutput = Shapes::StructureShape.new(name: 'ListProtectedQueriesOutput')
132
133
  ListSchemasInput = Shapes::StructureShape.new(name: 'ListSchemasInput')
133
134
  ListSchemasOutput = Shapes::StructureShape.new(name: 'ListSchemasOutput')
135
+ ListTagsForResourceInput = Shapes::StructureShape.new(name: 'ListTagsForResourceInput')
136
+ ListTagsForResourceOutput = Shapes::StructureShape.new(name: 'ListTagsForResourceOutput')
134
137
  Long = Shapes::IntegerShape.new(name: 'Long')
135
138
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
136
139
  MemberAbilities = Shapes::ListShape.new(name: 'MemberAbilities')
@@ -184,10 +187,18 @@ module Aws::CleanRooms
184
187
  TableAliasList = Shapes::ListShape.new(name: 'TableAliasList')
185
188
  TableDescription = Shapes::StringShape.new(name: 'TableDescription')
186
189
  TableReference = Shapes::UnionShape.new(name: 'TableReference')
190
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
191
+ TagKeys = Shapes::ListShape.new(name: 'TagKeys')
192
+ TagMap = Shapes::MapShape.new(name: 'TagMap')
193
+ TagResourceInput = Shapes::StructureShape.new(name: 'TagResourceInput')
194
+ TagResourceOutput = Shapes::StructureShape.new(name: 'TagResourceOutput')
195
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
187
196
  TargetProtectedQueryStatus = Shapes::StringShape.new(name: 'TargetProtectedQueryStatus')
188
197
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
189
198
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
190
199
  UUID = Shapes::StringShape.new(name: 'UUID')
200
+ UntagResourceInput = Shapes::StructureShape.new(name: 'UntagResourceInput')
201
+ UntagResourceOutput = Shapes::StructureShape.new(name: 'UntagResourceOutput')
191
202
  UpdateCollaborationInput = Shapes::StructureShape.new(name: 'UpdateCollaborationInput')
192
203
  UpdateCollaborationOutput = Shapes::StructureShape.new(name: 'UpdateCollaborationOutput')
193
204
  UpdateConfiguredTableAnalysisRuleInput = Shapes::StructureShape.new(name: 'UpdateConfiguredTableAnalysisRuleInput')
@@ -401,6 +412,7 @@ module Aws::CleanRooms
401
412
  CreateCollaborationInput.add_member(:creator_display_name, Shapes::ShapeRef.new(shape: DisplayName, required: true, location_name: "creatorDisplayName"))
402
413
  CreateCollaborationInput.add_member(:data_encryption_metadata, Shapes::ShapeRef.new(shape: DataEncryptionMetadata, location_name: "dataEncryptionMetadata"))
403
414
  CreateCollaborationInput.add_member(:query_log_status, Shapes::ShapeRef.new(shape: CollaborationQueryLogStatus, required: true, location_name: "queryLogStatus"))
415
+ CreateCollaborationInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
404
416
  CreateCollaborationInput.struct_class = Types::CreateCollaborationInput
405
417
 
406
418
  CreateCollaborationOutput.add_member(:collaboration, Shapes::ShapeRef.new(shape: Collaboration, required: true, location_name: "collaboration"))
@@ -419,6 +431,7 @@ module Aws::CleanRooms
419
431
  CreateConfiguredTableAssociationInput.add_member(:membership_identifier, Shapes::ShapeRef.new(shape: MembershipIdentifier, required: true, location: "uri", location_name: "membershipIdentifier"))
420
432
  CreateConfiguredTableAssociationInput.add_member(:configured_table_identifier, Shapes::ShapeRef.new(shape: ConfiguredTableIdentifier, required: true, location_name: "configuredTableIdentifier"))
421
433
  CreateConfiguredTableAssociationInput.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
434
+ CreateConfiguredTableAssociationInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
422
435
  CreateConfiguredTableAssociationInput.struct_class = Types::CreateConfiguredTableAssociationInput
423
436
 
424
437
  CreateConfiguredTableAssociationOutput.add_member(:configured_table_association, Shapes::ShapeRef.new(shape: ConfiguredTableAssociation, required: true, location_name: "configuredTableAssociation"))
@@ -429,6 +442,7 @@ module Aws::CleanRooms
429
442
  CreateConfiguredTableInput.add_member(:table_reference, Shapes::ShapeRef.new(shape: TableReference, required: true, location_name: "tableReference"))
430
443
  CreateConfiguredTableInput.add_member(:allowed_columns, Shapes::ShapeRef.new(shape: AllowedColumnList, required: true, location_name: "allowedColumns"))
431
444
  CreateConfiguredTableInput.add_member(:analysis_method, Shapes::ShapeRef.new(shape: AnalysisMethod, required: true, location_name: "analysisMethod"))
445
+ CreateConfiguredTableInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
432
446
  CreateConfiguredTableInput.struct_class = Types::CreateConfiguredTableInput
433
447
 
434
448
  CreateConfiguredTableOutput.add_member(:configured_table, Shapes::ShapeRef.new(shape: ConfiguredTable, required: true, location_name: "configuredTable"))
@@ -436,6 +450,7 @@ module Aws::CleanRooms
436
450
 
437
451
  CreateMembershipInput.add_member(:collaboration_identifier, Shapes::ShapeRef.new(shape: CollaborationIdentifier, required: true, location_name: "collaborationIdentifier"))
438
452
  CreateMembershipInput.add_member(:query_log_status, Shapes::ShapeRef.new(shape: MembershipQueryLogStatus, required: true, location_name: "queryLogStatus"))
453
+ CreateMembershipInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
439
454
  CreateMembershipInput.struct_class = Types::CreateMembershipInput
440
455
 
441
456
  CreateMembershipOutput.add_member(:membership, Shapes::ShapeRef.new(shape: Membership, required: true, location_name: "membership"))
@@ -605,6 +620,12 @@ module Aws::CleanRooms
605
620
  ListSchemasOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
606
621
  ListSchemasOutput.struct_class = Types::ListSchemasOutput
607
622
 
623
+ ListTagsForResourceInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: CleanroomsArn, required: true, location: "uri", location_name: "resourceArn"))
624
+ ListTagsForResourceInput.struct_class = Types::ListTagsForResourceInput
625
+
626
+ ListTagsForResourceOutput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, required: true, location_name: "tags"))
627
+ ListTagsForResourceOutput.struct_class = Types::ListTagsForResourceOutput
628
+
608
629
  MemberAbilities.member = Shapes::ShapeRef.new(shape: MemberAbility)
609
630
 
610
631
  MemberList.member = Shapes::ShapeRef.new(shape: MemberSpecification)
@@ -770,9 +791,26 @@ module Aws::CleanRooms
770
791
  TableReference.add_member_subclass(:unknown, Types::TableReference::Unknown)
771
792
  TableReference.struct_class = Types::TableReference
772
793
 
794
+ TagKeys.member = Shapes::ShapeRef.new(shape: TagKey)
795
+
796
+ TagMap.key = Shapes::ShapeRef.new(shape: TagKey)
797
+ TagMap.value = Shapes::ShapeRef.new(shape: TagValue)
798
+
799
+ TagResourceInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: CleanroomsArn, required: true, location: "uri", location_name: "resourceArn"))
800
+ TagResourceInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, required: true, location_name: "tags"))
801
+ TagResourceInput.struct_class = Types::TagResourceInput
802
+
803
+ TagResourceOutput.struct_class = Types::TagResourceOutput
804
+
773
805
  ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
774
806
  ThrottlingException.struct_class = Types::ThrottlingException
775
807
 
808
+ UntagResourceInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: CleanroomsArn, required: true, location: "uri", location_name: "resourceArn"))
809
+ UntagResourceInput.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeys, required: true, location: "querystring", location_name: "tagKeys"))
810
+ UntagResourceInput.struct_class = Types::UntagResourceInput
811
+
812
+ UntagResourceOutput.struct_class = Types::UntagResourceOutput
813
+
776
814
  UpdateCollaborationInput.add_member(:collaboration_identifier, Shapes::ShapeRef.new(shape: CollaborationIdentifier, required: true, location: "uri", location_name: "collaborationIdentifier"))
777
815
  UpdateCollaborationInput.add_member(:name, Shapes::ShapeRef.new(shape: CollaborationName, location_name: "name"))
778
816
  UpdateCollaborationInput.add_member(:description, Shapes::ShapeRef.new(shape: CollaborationDescription, location_name: "description"))
@@ -1144,6 +1182,7 @@ module Aws::CleanRooms
1144
1182
  o.http_request_uri = "/memberships/{membershipIdentifier}/configuredTableAssociations"
1145
1183
  o.input = Shapes::ShapeRef.new(shape: ListConfiguredTableAssociationsInput)
1146
1184
  o.output = Shapes::ShapeRef.new(shape: ListConfiguredTableAssociationsOutput)
1185
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1147
1186
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1148
1187
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1149
1188
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
@@ -1217,6 +1256,7 @@ module Aws::CleanRooms
1217
1256
  o.http_request_uri = "/memberships/{membershipIdentifier}/protectedQueries"
1218
1257
  o.input = Shapes::ShapeRef.new(shape: ListProtectedQueriesInput)
1219
1258
  o.output = Shapes::ShapeRef.new(shape: ListProtectedQueriesOutput)
1259
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1220
1260
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1221
1261
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1222
1262
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
@@ -1248,6 +1288,16 @@ module Aws::CleanRooms
1248
1288
  )
1249
1289
  end)
1250
1290
 
1291
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
1292
+ o.name = "ListTagsForResource"
1293
+ o.http_method = "GET"
1294
+ o.http_request_uri = "/tags/{resourceArn}"
1295
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceInput)
1296
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceOutput)
1297
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1298
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1299
+ end)
1300
+
1251
1301
  api.add_operation(:start_protected_query, Seahorse::Model::Operation.new.tap do |o|
1252
1302
  o.name = "StartProtectedQuery"
1253
1303
  o.http_method = "POST"
@@ -1262,6 +1312,26 @@ module Aws::CleanRooms
1262
1312
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1263
1313
  end)
1264
1314
 
1315
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
1316
+ o.name = "TagResource"
1317
+ o.http_method = "POST"
1318
+ o.http_request_uri = "/tags/{resourceArn}"
1319
+ o.input = Shapes::ShapeRef.new(shape: TagResourceInput)
1320
+ o.output = Shapes::ShapeRef.new(shape: TagResourceOutput)
1321
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1322
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1323
+ end)
1324
+
1325
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
1326
+ o.name = "UntagResource"
1327
+ o.http_method = "DELETE"
1328
+ o.http_request_uri = "/tags/{resourceArn}"
1329
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceInput)
1330
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceOutput)
1331
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1332
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1333
+ end)
1334
+
1265
1335
  api.add_operation(:update_collaboration, Seahorse::Model::Operation.new.tap do |o|
1266
1336
  o.name = "UpdateCollaboration"
1267
1337
  o.http_method = "PATCH"
@@ -50,9 +50,6 @@ module Aws::CleanRooms
50
50
 
51
51
  def initialize(options = {})
52
52
  self[:region] = options[:region]
53
- if self[:region].nil?
54
- raise ArgumentError, "Missing required EndpointParameter: :region"
55
- end
56
53
  self[:use_dual_stack] = options[:use_dual_stack]
57
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
55
  if self[:use_dual_stack].nil?
@@ -14,36 +14,39 @@ module Aws::CleanRooms
14
14
  use_dual_stack = parameters.use_dual_stack
15
15
  use_fips = parameters.use_fips
16
16
  endpoint = parameters.endpoint
17
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
- if Aws::Endpoints::Matchers.set?(endpoint)
19
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
- raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
- end
22
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
- raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
- end
25
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
- end
27
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
- return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
- end
31
- raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
- end
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
33
18
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
- return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
36
- end
37
- raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
38
20
  end
39
21
  if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
40
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
41
- return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
+ end
38
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
39
+ end
40
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
41
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
+ return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
42
45
  end
43
- raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
46
+ return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
44
47
  end
45
- return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
46
48
  end
49
+ raise ArgumentError, "Invalid Configuration: Missing Region"
47
50
  raise ArgumentError, 'No endpoint could be resolved'
48
51
 
49
52
  end
@@ -389,6 +389,20 @@ module Aws::CleanRooms
389
389
  end
390
390
  end
391
391
 
392
+ class ListTagsForResource
393
+ def self.build(context)
394
+ unless context.config.regional_endpoint
395
+ endpoint = context.config.endpoint.to_s
396
+ end
397
+ Aws::CleanRooms::EndpointParameters.new(
398
+ region: context.config.region,
399
+ use_dual_stack: context.config.use_dualstack_endpoint,
400
+ use_fips: context.config.use_fips_endpoint,
401
+ endpoint: endpoint,
402
+ )
403
+ end
404
+ end
405
+
392
406
  class StartProtectedQuery
393
407
  def self.build(context)
394
408
  unless context.config.regional_endpoint
@@ -403,6 +417,34 @@ module Aws::CleanRooms
403
417
  end
404
418
  end
405
419
 
420
+ class TagResource
421
+ def self.build(context)
422
+ unless context.config.regional_endpoint
423
+ endpoint = context.config.endpoint.to_s
424
+ end
425
+ Aws::CleanRooms::EndpointParameters.new(
426
+ region: context.config.region,
427
+ use_dual_stack: context.config.use_dualstack_endpoint,
428
+ use_fips: context.config.use_fips_endpoint,
429
+ endpoint: endpoint,
430
+ )
431
+ end
432
+ end
433
+
434
+ class UntagResource
435
+ def self.build(context)
436
+ unless context.config.regional_endpoint
437
+ endpoint = context.config.endpoint.to_s
438
+ end
439
+ Aws::CleanRooms::EndpointParameters.new(
440
+ region: context.config.region,
441
+ use_dual_stack: context.config.use_dualstack_endpoint,
442
+ use_fips: context.config.use_fips_endpoint,
443
+ endpoint: endpoint,
444
+ )
445
+ end
446
+ end
447
+
406
448
  class UpdateCollaboration
407
449
  def self.build(context)
408
450
  unless context.config.regional_endpoint
@@ -110,8 +110,14 @@ module Aws::CleanRooms
110
110
  Aws::CleanRooms::Endpoints::ListProtectedQueries.build(context)
111
111
  when :list_schemas
112
112
  Aws::CleanRooms::Endpoints::ListSchemas.build(context)
113
+ when :list_tags_for_resource
114
+ Aws::CleanRooms::Endpoints::ListTagsForResource.build(context)
113
115
  when :start_protected_query
114
116
  Aws::CleanRooms::Endpoints::StartProtectedQuery.build(context)
117
+ when :tag_resource
118
+ Aws::CleanRooms::Endpoints::TagResource.build(context)
119
+ when :untag_resource
120
+ Aws::CleanRooms::Endpoints::UntagResource.build(context)
115
121
  when :update_collaboration
116
122
  Aws::CleanRooms::Endpoints::UpdateCollaboration.build(context)
117
123
  when :update_configured_table
@@ -854,6 +854,13 @@ module Aws::CleanRooms
854
854
  # disabled for the collaboration.
855
855
  # @return [String]
856
856
  #
857
+ # @!attribute [rw] tags
858
+ # An optional label that you can assign to a resource when you create
859
+ # it. Each tag consists of a key and an optional value, both of which
860
+ # you define. When you use tagging, you can also use tag-based access
861
+ # control in IAM policies to control access to this resource.
862
+ # @return [Hash<String,String>]
863
+ #
857
864
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateCollaborationInput AWS API Documentation
858
865
  #
859
866
  class CreateCollaborationInput < Struct.new(
@@ -863,7 +870,8 @@ module Aws::CleanRooms
863
870
  :creator_member_abilities,
864
871
  :creator_display_name,
865
872
  :data_encryption_metadata,
866
- :query_log_status)
873
+ :query_log_status,
874
+ :tags)
867
875
  SENSITIVE = []
868
876
  include Aws::Structure
869
877
  end
@@ -940,6 +948,13 @@ module Aws::CleanRooms
940
948
  # query the table.
941
949
  # @return [String]
942
950
  #
951
+ # @!attribute [rw] tags
952
+ # An optional label that you can assign to a resource when you create
953
+ # it. Each tag consists of a key and an optional value, both of which
954
+ # you define. When you use tagging, you can also use tag-based access
955
+ # control in IAM policies to control access to this resource.
956
+ # @return [Hash<String,String>]
957
+ #
943
958
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateConfiguredTableAssociationInput AWS API Documentation
944
959
  #
945
960
  class CreateConfiguredTableAssociationInput < Struct.new(
@@ -947,7 +962,8 @@ module Aws::CleanRooms
947
962
  :description,
948
963
  :membership_identifier,
949
964
  :configured_table_identifier,
950
- :role_arn)
965
+ :role_arn,
966
+ :tags)
951
967
  SENSITIVE = []
952
968
  include Aws::Structure
953
969
  end
@@ -986,6 +1002,13 @@ module Aws::CleanRooms
986
1002
  # is currently `DIRECT\_QUERY`.
987
1003
  # @return [String]
988
1004
  #
1005
+ # @!attribute [rw] tags
1006
+ # An optional label that you can assign to a resource when you create
1007
+ # it. Each tag consists of a key and an optional value, both of which
1008
+ # you define. When you use tagging, you can also use tag-based access
1009
+ # control in IAM policies to control access to this resource.
1010
+ # @return [Hash<String,String>]
1011
+ #
989
1012
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateConfiguredTableInput AWS API Documentation
990
1013
  #
991
1014
  class CreateConfiguredTableInput < Struct.new(
@@ -993,7 +1016,8 @@ module Aws::CleanRooms
993
1016
  :description,
994
1017
  :table_reference,
995
1018
  :allowed_columns,
996
- :analysis_method)
1019
+ :analysis_method,
1020
+ :tags)
997
1021
  SENSITIVE = []
998
1022
  include Aws::Structure
999
1023
  end
@@ -1019,11 +1043,19 @@ module Aws::CleanRooms
1019
1043
  # disabled for the collaboration.
1020
1044
  # @return [String]
1021
1045
  #
1046
+ # @!attribute [rw] tags
1047
+ # An optional label that you can assign to a resource when you create
1048
+ # it. Each tag consists of a key and an optional value, both of which
1049
+ # you define. When you use tagging, you can also use tag-based access
1050
+ # control in IAM policies to control access to this resource.
1051
+ # @return [Hash<String,String>]
1052
+ #
1022
1053
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateMembershipInput AWS API Documentation
1023
1054
  #
1024
1055
  class CreateMembershipInput < Struct.new(
1025
1056
  :collaboration_identifier,
1026
- :query_log_status)
1057
+ :query_log_status,
1058
+ :tags)
1027
1059
  SENSITIVE = []
1028
1060
  include Aws::Structure
1029
1061
  end
@@ -1757,6 +1789,31 @@ module Aws::CleanRooms
1757
1789
  include Aws::Structure
1758
1790
  end
1759
1791
 
1792
+ # @!attribute [rw] resource_arn
1793
+ # The Amazon Resource Name (ARN) associated with the resource you want
1794
+ # to list tags on.
1795
+ # @return [String]
1796
+ #
1797
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListTagsForResourceInput AWS API Documentation
1798
+ #
1799
+ class ListTagsForResourceInput < Struct.new(
1800
+ :resource_arn)
1801
+ SENSITIVE = []
1802
+ include Aws::Structure
1803
+ end
1804
+
1805
+ # @!attribute [rw] tags
1806
+ # A map of objects specifying each key name and value.
1807
+ # @return [Hash<String,String>]
1808
+ #
1809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListTagsForResourceOutput AWS API Documentation
1810
+ #
1811
+ class ListTagsForResourceOutput < Struct.new(
1812
+ :tags)
1813
+ SENSITIVE = []
1814
+ include Aws::Structure
1815
+ end
1816
+
1760
1817
  # Basic metadata used to construct a new member.
1761
1818
  #
1762
1819
  # @!attribute [rw] account_id
@@ -2258,7 +2315,7 @@ module Aws::CleanRooms
2258
2315
  # @return [Array<Types::Column>]
2259
2316
  #
2260
2317
  # @!attribute [rw] partition_keys
2261
- # The partition keys for the data set underlying this schema.
2318
+ # The partition keys for the dataset underlying this schema.
2262
2319
  # @return [Array<Types::Column>]
2263
2320
  #
2264
2321
  # @!attribute [rw] analysis_rule_types
@@ -2443,7 +2500,7 @@ module Aws::CleanRooms
2443
2500
  include Aws::Structure
2444
2501
  end
2445
2502
 
2446
- # A pointer to the data set that underlies this table. Currently, this
2503
+ # A pointer to the dataset that underlies this table. Currently, this
2447
2504
  # can only be an AWS Glue table.
2448
2505
  #
2449
2506
  # @note TableReference is a union - when making an API calls you must set exactly one of the members.
@@ -2468,6 +2525,28 @@ module Aws::CleanRooms
2468
2525
  class Unknown < TableReference; end
2469
2526
  end
2470
2527
 
2528
+ # @!attribute [rw] resource_arn
2529
+ # The Amazon Resource Name (ARN) associated with the resource you want
2530
+ # to tag.
2531
+ # @return [String]
2532
+ #
2533
+ # @!attribute [rw] tags
2534
+ # A map of objects specifying each key name and value.
2535
+ # @return [Hash<String,String>]
2536
+ #
2537
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/TagResourceInput AWS API Documentation
2538
+ #
2539
+ class TagResourceInput < Struct.new(
2540
+ :resource_arn,
2541
+ :tags)
2542
+ SENSITIVE = []
2543
+ include Aws::Structure
2544
+ end
2545
+
2546
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/TagResourceOutput AWS API Documentation
2547
+ #
2548
+ class TagResourceOutput < Aws::EmptyStructure; end
2549
+
2471
2550
  # Request was denied due to request throttling.
2472
2551
  #
2473
2552
  # @!attribute [rw] message
@@ -2481,6 +2560,28 @@ module Aws::CleanRooms
2481
2560
  include Aws::Structure
2482
2561
  end
2483
2562
 
2563
+ # @!attribute [rw] resource_arn
2564
+ # The Amazon Resource Name (ARN) associated with the resource you want
2565
+ # to remove the tag from.
2566
+ # @return [String]
2567
+ #
2568
+ # @!attribute [rw] tag_keys
2569
+ # A list of key names of tags to be removed.
2570
+ # @return [Array<String>]
2571
+ #
2572
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UntagResourceInput AWS API Documentation
2573
+ #
2574
+ class UntagResourceInput < Struct.new(
2575
+ :resource_arn,
2576
+ :tag_keys)
2577
+ SENSITIVE = []
2578
+ include Aws::Structure
2579
+ end
2580
+
2581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UntagResourceOutput AWS API Documentation
2582
+ #
2583
+ class UntagResourceOutput < Aws::EmptyStructure; end
2584
+
2484
2585
  # @!attribute [rw] collaboration_identifier
2485
2586
  # The identifier for the collaboration.
2486
2587
  # @return [String]
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-cleanrooms/customizations'
53
53
  # @!group service
54
54
  module Aws::CleanRooms
55
55
 
56
- GEM_VERSION = '1.1.0'
56
+ GEM_VERSION = '1.2.0'
57
57
 
58
58
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-cleanrooms
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-18 00:00:00.000000000 Z
11
+ date: 2023-03-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core