aws-sdk-cleanrooms 1.8.0 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -388,6 +388,63 @@ module Aws::CleanRooms
388
388
 
389
389
  # @!group API Operations
390
390
 
391
+ # Retrieves multiple analysis templates within a collaboration by their
392
+ # Amazon Resource Names (ARNs).
393
+ #
394
+ # @option params [required, String] :collaboration_identifier
395
+ # A unique identifier for the collaboration that the analysis templates
396
+ # belong to. Currently accepts collaboration ID.
397
+ #
398
+ # @option params [required, Array<String>] :analysis_template_arns
399
+ # The Amazon Resource Name (ARN) associated with the analysis template
400
+ # within a collaboration.
401
+ #
402
+ # @return [Types::BatchGetCollaborationAnalysisTemplateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
403
+ #
404
+ # * {Types::BatchGetCollaborationAnalysisTemplateOutput#collaboration_analysis_templates #collaboration_analysis_templates} => Array&lt;Types::CollaborationAnalysisTemplate&gt;
405
+ # * {Types::BatchGetCollaborationAnalysisTemplateOutput#errors #errors} => Array&lt;Types::BatchGetCollaborationAnalysisTemplateError&gt;
406
+ #
407
+ # @example Request syntax with placeholder values
408
+ #
409
+ # resp = client.batch_get_collaboration_analysis_template({
410
+ # collaboration_identifier: "CollaborationIdentifier", # required
411
+ # analysis_template_arns: ["AnalysisTemplateArn"], # required
412
+ # })
413
+ #
414
+ # @example Response structure
415
+ #
416
+ # resp.collaboration_analysis_templates #=> Array
417
+ # resp.collaboration_analysis_templates[0].id #=> String
418
+ # resp.collaboration_analysis_templates[0].arn #=> String
419
+ # resp.collaboration_analysis_templates[0].collaboration_id #=> String
420
+ # resp.collaboration_analysis_templates[0].collaboration_arn #=> String
421
+ # resp.collaboration_analysis_templates[0].description #=> String
422
+ # resp.collaboration_analysis_templates[0].creator_account_id #=> String
423
+ # resp.collaboration_analysis_templates[0].name #=> String
424
+ # resp.collaboration_analysis_templates[0].create_time #=> Time
425
+ # resp.collaboration_analysis_templates[0].update_time #=> Time
426
+ # resp.collaboration_analysis_templates[0].schema.referenced_tables #=> Array
427
+ # resp.collaboration_analysis_templates[0].schema.referenced_tables[0] #=> String
428
+ # resp.collaboration_analysis_templates[0].format #=> String, one of "SQL"
429
+ # resp.collaboration_analysis_templates[0].source.text #=> String
430
+ # resp.collaboration_analysis_templates[0].analysis_parameters #=> Array
431
+ # resp.collaboration_analysis_templates[0].analysis_parameters[0].name #=> String
432
+ # resp.collaboration_analysis_templates[0].analysis_parameters[0].type #=> String, one of "SMALLINT", "INTEGER", "BIGINT", "DECIMAL", "REAL", "DOUBLE_PRECISION", "BOOLEAN", "CHAR", "VARCHAR", "DATE", "TIMESTAMP", "TIMESTAMPTZ", "TIME", "TIMETZ", "VARBYTE"
433
+ # resp.collaboration_analysis_templates[0].analysis_parameters[0].default_value #=> String
434
+ # resp.errors #=> Array
435
+ # resp.errors[0].arn #=> String
436
+ # resp.errors[0].code #=> String
437
+ # resp.errors[0].message #=> String
438
+ #
439
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/BatchGetCollaborationAnalysisTemplate AWS API Documentation
440
+ #
441
+ # @overload batch_get_collaboration_analysis_template(params = {})
442
+ # @param [Hash] params ({})
443
+ def batch_get_collaboration_analysis_template(params = {}, options = {})
444
+ req = build_request(:batch_get_collaboration_analysis_template, params)
445
+ req.send_request(options)
446
+ end
447
+
391
448
  # Retrieves multiple schemas by their identifiers.
392
449
  #
393
450
  # @option params [required, String] :collaboration_identifier
@@ -419,7 +476,7 @@ module Aws::CleanRooms
419
476
  # resp.schemas[0].partition_keys[0].name #=> String
420
477
  # resp.schemas[0].partition_keys[0].type #=> String
421
478
  # resp.schemas[0].analysis_rule_types #=> Array
422
- # resp.schemas[0].analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
479
+ # resp.schemas[0].analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
423
480
  # resp.schemas[0].analysis_method #=> String, one of "DIRECT_QUERY"
424
481
  # resp.schemas[0].creator_account_id #=> String
425
482
  # resp.schemas[0].name #=> String
@@ -443,6 +500,89 @@ module Aws::CleanRooms
443
500
  req.send_request(options)
444
501
  end
445
502
 
503
+ # Creates a new analysis template.
504
+ #
505
+ # @option params [String] :description
506
+ # The description of the analysis template.
507
+ #
508
+ # @option params [required, String] :membership_identifier
509
+ # The identifier for a membership resource.
510
+ #
511
+ # @option params [required, String] :name
512
+ # The name of the analysis template.
513
+ #
514
+ # @option params [required, String] :format
515
+ # The format of the analysis template.
516
+ #
517
+ # @option params [required, Types::AnalysisSource] :source
518
+ # The information in the analysis template. Currently supports `text`,
519
+ # the query text for the analysis template.
520
+ #
521
+ # @option params [Hash<String,String>] :tags
522
+ # An optional label that you can assign to a resource when you create
523
+ # it. Each tag consists of a key and an optional value, both of which
524
+ # you define. When you use tagging, you can also use tag-based access
525
+ # control in IAM policies to control access to this resource.
526
+ #
527
+ # @option params [Array<Types::AnalysisParameter>] :analysis_parameters
528
+ # The parameters of the analysis template.
529
+ #
530
+ # @return [Types::CreateAnalysisTemplateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
531
+ #
532
+ # * {Types::CreateAnalysisTemplateOutput#analysis_template #analysis_template} => Types::AnalysisTemplate
533
+ #
534
+ # @example Request syntax with placeholder values
535
+ #
536
+ # resp = client.create_analysis_template({
537
+ # description: "ResourceDescription",
538
+ # membership_identifier: "MembershipIdentifier", # required
539
+ # name: "TableAlias", # required
540
+ # format: "SQL", # required, accepts SQL
541
+ # source: { # required
542
+ # text: "AnalysisTemplateText",
543
+ # },
544
+ # tags: {
545
+ # "TagKey" => "TagValue",
546
+ # },
547
+ # analysis_parameters: [
548
+ # {
549
+ # name: "ParameterName", # required
550
+ # type: "SMALLINT", # required, accepts SMALLINT, INTEGER, BIGINT, DECIMAL, REAL, DOUBLE_PRECISION, BOOLEAN, CHAR, VARCHAR, DATE, TIMESTAMP, TIMESTAMPTZ, TIME, TIMETZ, VARBYTE
551
+ # default_value: "ParameterValue",
552
+ # },
553
+ # ],
554
+ # })
555
+ #
556
+ # @example Response structure
557
+ #
558
+ # resp.analysis_template.id #=> String
559
+ # resp.analysis_template.arn #=> String
560
+ # resp.analysis_template.collaboration_id #=> String
561
+ # resp.analysis_template.collaboration_arn #=> String
562
+ # resp.analysis_template.membership_id #=> String
563
+ # resp.analysis_template.membership_arn #=> String
564
+ # resp.analysis_template.description #=> String
565
+ # resp.analysis_template.name #=> String
566
+ # resp.analysis_template.create_time #=> Time
567
+ # resp.analysis_template.update_time #=> Time
568
+ # resp.analysis_template.schema.referenced_tables #=> Array
569
+ # resp.analysis_template.schema.referenced_tables[0] #=> String
570
+ # resp.analysis_template.format #=> String, one of "SQL"
571
+ # resp.analysis_template.source.text #=> String
572
+ # resp.analysis_template.analysis_parameters #=> Array
573
+ # resp.analysis_template.analysis_parameters[0].name #=> String
574
+ # resp.analysis_template.analysis_parameters[0].type #=> String, one of "SMALLINT", "INTEGER", "BIGINT", "DECIMAL", "REAL", "DOUBLE_PRECISION", "BOOLEAN", "CHAR", "VARCHAR", "DATE", "TIMESTAMP", "TIMESTAMPTZ", "TIME", "TIMETZ", "VARBYTE"
575
+ # resp.analysis_template.analysis_parameters[0].default_value #=> String
576
+ #
577
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateAnalysisTemplate AWS API Documentation
578
+ #
579
+ # @overload create_analysis_template(params = {})
580
+ # @param [Hash] params ({})
581
+ def create_analysis_template(params = {}, options = {})
582
+ req = build_request(:create_analysis_template, params)
583
+ req.send_request(options)
584
+ end
585
+
446
586
  # Creates a new collaboration.
447
587
  #
448
588
  # @option params [required, Array<Types::MemberSpecification>] :members
@@ -592,7 +732,7 @@ module Aws::CleanRooms
592
732
  # resp.configured_table.create_time #=> Time
593
733
  # resp.configured_table.update_time #=> Time
594
734
  # resp.configured_table.analysis_rule_types #=> Array
595
- # resp.configured_table.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
735
+ # resp.configured_table.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
596
736
  # resp.configured_table.analysis_method #=> String, one of "DIRECT_QUERY"
597
737
  # resp.configured_table.allowed_columns #=> Array
598
738
  # resp.configured_table.allowed_columns[0] #=> String
@@ -614,7 +754,7 @@ module Aws::CleanRooms
614
754
  # for. Currently accepts the configured table ID.
615
755
  #
616
756
  # @option params [required, String] :analysis_rule_type
617
- # The type of analysis rule. Valid values are AGGREGATION and LIST.
757
+ # The type of analysis rule.
618
758
  #
619
759
  # @option params [required, Types::ConfiguredTableAnalysisRulePolicy] :analysis_rule_policy
620
760
  # The entire created configured table analysis rule object.
@@ -627,7 +767,7 @@ module Aws::CleanRooms
627
767
  #
628
768
  # resp = client.create_configured_table_analysis_rule({
629
769
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
630
- # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
770
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
631
771
  # analysis_rule_policy: { # required
632
772
  # v1: {
633
773
  # list: {
@@ -655,6 +795,10 @@ module Aws::CleanRooms
655
795
  # },
656
796
  # ],
657
797
  # },
798
+ # custom: {
799
+ # allowed_analyses: ["AnalysisTemplateArnOrQueryWildcard"], # required
800
+ # allowed_analysis_providers: ["AccountId"],
801
+ # },
658
802
  # },
659
803
  # },
660
804
  # })
@@ -686,7 +830,11 @@ module Aws::CleanRooms
686
830
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
687
831
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
688
832
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
689
- # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST"
833
+ # resp.analysis_rule.policy.v1.custom.allowed_analyses #=> Array
834
+ # resp.analysis_rule.policy.v1.custom.allowed_analyses[0] #=> String
835
+ # resp.analysis_rule.policy.v1.custom.allowed_analysis_providers #=> Array
836
+ # resp.analysis_rule.policy.v1.custom.allowed_analysis_providers[0] #=> String
837
+ # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
690
838
  # resp.analysis_rule.create_time #=> Time
691
839
  # resp.analysis_rule.update_time #=> Time
692
840
  #
@@ -823,6 +971,32 @@ module Aws::CleanRooms
823
971
  req.send_request(options)
824
972
  end
825
973
 
974
+ # Deletes an analysis template.
975
+ #
976
+ # @option params [required, String] :membership_identifier
977
+ # The identifier for a membership resource.
978
+ #
979
+ # @option params [required, String] :analysis_template_identifier
980
+ # The identifier for the analysis template resource.
981
+ #
982
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
983
+ #
984
+ # @example Request syntax with placeholder values
985
+ #
986
+ # resp = client.delete_analysis_template({
987
+ # membership_identifier: "MembershipIdentifier", # required
988
+ # analysis_template_identifier: "AnalysisTemplateIdentifier", # required
989
+ # })
990
+ #
991
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteAnalysisTemplate AWS API Documentation
992
+ #
993
+ # @overload delete_analysis_template(params = {})
994
+ # @param [Hash] params ({})
995
+ def delete_analysis_template(params = {}, options = {})
996
+ req = build_request(:delete_analysis_template, params)
997
+ req.send_request(options)
998
+ end
999
+
826
1000
  # Deletes a collaboration. It can only be called by the collaboration
827
1001
  # owner.
828
1002
  #
@@ -885,7 +1059,7 @@ module Aws::CleanRooms
885
1059
  #
886
1060
  # resp = client.delete_configured_table_analysis_rule({
887
1061
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
888
- # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
1062
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
889
1063
  # })
890
1064
  #
891
1065
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteConfiguredTableAnalysisRule AWS API Documentation
@@ -977,6 +1151,55 @@ module Aws::CleanRooms
977
1151
  req.send_request(options)
978
1152
  end
979
1153
 
1154
+ # Retrieves an analysis template.
1155
+ #
1156
+ # @option params [required, String] :membership_identifier
1157
+ # The identifier for a membership resource.
1158
+ #
1159
+ # @option params [required, String] :analysis_template_identifier
1160
+ # The identifier for the analysis template resource.
1161
+ #
1162
+ # @return [Types::GetAnalysisTemplateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1163
+ #
1164
+ # * {Types::GetAnalysisTemplateOutput#analysis_template #analysis_template} => Types::AnalysisTemplate
1165
+ #
1166
+ # @example Request syntax with placeholder values
1167
+ #
1168
+ # resp = client.get_analysis_template({
1169
+ # membership_identifier: "MembershipIdentifier", # required
1170
+ # analysis_template_identifier: "AnalysisTemplateIdentifier", # required
1171
+ # })
1172
+ #
1173
+ # @example Response structure
1174
+ #
1175
+ # resp.analysis_template.id #=> String
1176
+ # resp.analysis_template.arn #=> String
1177
+ # resp.analysis_template.collaboration_id #=> String
1178
+ # resp.analysis_template.collaboration_arn #=> String
1179
+ # resp.analysis_template.membership_id #=> String
1180
+ # resp.analysis_template.membership_arn #=> String
1181
+ # resp.analysis_template.description #=> String
1182
+ # resp.analysis_template.name #=> String
1183
+ # resp.analysis_template.create_time #=> Time
1184
+ # resp.analysis_template.update_time #=> Time
1185
+ # resp.analysis_template.schema.referenced_tables #=> Array
1186
+ # resp.analysis_template.schema.referenced_tables[0] #=> String
1187
+ # resp.analysis_template.format #=> String, one of "SQL"
1188
+ # resp.analysis_template.source.text #=> String
1189
+ # resp.analysis_template.analysis_parameters #=> Array
1190
+ # resp.analysis_template.analysis_parameters[0].name #=> String
1191
+ # resp.analysis_template.analysis_parameters[0].type #=> String, one of "SMALLINT", "INTEGER", "BIGINT", "DECIMAL", "REAL", "DOUBLE_PRECISION", "BOOLEAN", "CHAR", "VARCHAR", "DATE", "TIMESTAMP", "TIMESTAMPTZ", "TIME", "TIMETZ", "VARBYTE"
1192
+ # resp.analysis_template.analysis_parameters[0].default_value #=> String
1193
+ #
1194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetAnalysisTemplate AWS API Documentation
1195
+ #
1196
+ # @overload get_analysis_template(params = {})
1197
+ # @param [Hash] params ({})
1198
+ def get_analysis_template(params = {}, options = {})
1199
+ req = build_request(:get_analysis_template, params)
1200
+ req.send_request(options)
1201
+ end
1202
+
980
1203
  # Returns metadata about a collaboration.
981
1204
  #
982
1205
  # @option params [required, String] :collaboration_identifier
@@ -1020,6 +1243,56 @@ module Aws::CleanRooms
1020
1243
  req.send_request(options)
1021
1244
  end
1022
1245
 
1246
+ # Retrieves an analysis template within a collaboration.
1247
+ #
1248
+ # @option params [required, String] :collaboration_identifier
1249
+ # A unique identifier for the collaboration that the analysis templates
1250
+ # belong to. Currently accepts collaboration ID.
1251
+ #
1252
+ # @option params [required, String] :analysis_template_arn
1253
+ # The Amazon Resource Name (ARN) associated with the analysis template
1254
+ # within a collaboration.
1255
+ #
1256
+ # @return [Types::GetCollaborationAnalysisTemplateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1257
+ #
1258
+ # * {Types::GetCollaborationAnalysisTemplateOutput#collaboration_analysis_template #collaboration_analysis_template} => Types::CollaborationAnalysisTemplate
1259
+ #
1260
+ # @example Request syntax with placeholder values
1261
+ #
1262
+ # resp = client.get_collaboration_analysis_template({
1263
+ # collaboration_identifier: "CollaborationIdentifier", # required
1264
+ # analysis_template_arn: "AnalysisTemplateArn", # required
1265
+ # })
1266
+ #
1267
+ # @example Response structure
1268
+ #
1269
+ # resp.collaboration_analysis_template.id #=> String
1270
+ # resp.collaboration_analysis_template.arn #=> String
1271
+ # resp.collaboration_analysis_template.collaboration_id #=> String
1272
+ # resp.collaboration_analysis_template.collaboration_arn #=> String
1273
+ # resp.collaboration_analysis_template.description #=> String
1274
+ # resp.collaboration_analysis_template.creator_account_id #=> String
1275
+ # resp.collaboration_analysis_template.name #=> String
1276
+ # resp.collaboration_analysis_template.create_time #=> Time
1277
+ # resp.collaboration_analysis_template.update_time #=> Time
1278
+ # resp.collaboration_analysis_template.schema.referenced_tables #=> Array
1279
+ # resp.collaboration_analysis_template.schema.referenced_tables[0] #=> String
1280
+ # resp.collaboration_analysis_template.format #=> String, one of "SQL"
1281
+ # resp.collaboration_analysis_template.source.text #=> String
1282
+ # resp.collaboration_analysis_template.analysis_parameters #=> Array
1283
+ # resp.collaboration_analysis_template.analysis_parameters[0].name #=> String
1284
+ # resp.collaboration_analysis_template.analysis_parameters[0].type #=> String, one of "SMALLINT", "INTEGER", "BIGINT", "DECIMAL", "REAL", "DOUBLE_PRECISION", "BOOLEAN", "CHAR", "VARCHAR", "DATE", "TIMESTAMP", "TIMESTAMPTZ", "TIME", "TIMETZ", "VARBYTE"
1285
+ # resp.collaboration_analysis_template.analysis_parameters[0].default_value #=> String
1286
+ #
1287
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetCollaborationAnalysisTemplate AWS API Documentation
1288
+ #
1289
+ # @overload get_collaboration_analysis_template(params = {})
1290
+ # @param [Hash] params ({})
1291
+ def get_collaboration_analysis_template(params = {}, options = {})
1292
+ req = build_request(:get_collaboration_analysis_template, params)
1293
+ req.send_request(options)
1294
+ end
1295
+
1023
1296
  # Retrieves a configured table.
1024
1297
  #
1025
1298
  # @option params [required, String] :configured_table_identifier
@@ -1046,7 +1319,7 @@ module Aws::CleanRooms
1046
1319
  # resp.configured_table.create_time #=> Time
1047
1320
  # resp.configured_table.update_time #=> Time
1048
1321
  # resp.configured_table.analysis_rule_types #=> Array
1049
- # resp.configured_table.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
1322
+ # resp.configured_table.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
1050
1323
  # resp.configured_table.analysis_method #=> String, one of "DIRECT_QUERY"
1051
1324
  # resp.configured_table.allowed_columns #=> Array
1052
1325
  # resp.configured_table.allowed_columns[0] #=> String
@@ -1079,7 +1352,7 @@ module Aws::CleanRooms
1079
1352
  #
1080
1353
  # resp = client.get_configured_table_analysis_rule({
1081
1354
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
1082
- # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
1355
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
1083
1356
  # })
1084
1357
  #
1085
1358
  # @example Response structure
@@ -1109,7 +1382,11 @@ module Aws::CleanRooms
1109
1382
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
1110
1383
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
1111
1384
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
1112
- # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST"
1385
+ # resp.analysis_rule.policy.v1.custom.allowed_analyses #=> Array
1386
+ # resp.analysis_rule.policy.v1.custom.allowed_analyses[0] #=> String
1387
+ # resp.analysis_rule.policy.v1.custom.allowed_analysis_providers #=> Array
1388
+ # resp.analysis_rule.policy.v1.custom.allowed_analysis_providers[0] #=> String
1389
+ # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
1113
1390
  # resp.analysis_rule.create_time #=> Time
1114
1391
  # resp.analysis_rule.update_time #=> Time
1115
1392
  #
@@ -1232,6 +1509,9 @@ module Aws::CleanRooms
1232
1509
  # resp.protected_query.membership_arn #=> String
1233
1510
  # resp.protected_query.create_time #=> Time
1234
1511
  # resp.protected_query.sql_parameters.query_string #=> String
1512
+ # resp.protected_query.sql_parameters.analysis_template_arn #=> String
1513
+ # resp.protected_query.sql_parameters.parameters #=> Hash
1514
+ # resp.protected_query.sql_parameters.parameters["ParameterName"] #=> String
1235
1515
  # resp.protected_query.status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
1236
1516
  # resp.protected_query.result_configuration.output_configuration.s3.result_format #=> String, one of "CSV", "PARQUET"
1237
1517
  # resp.protected_query.result_configuration.output_configuration.s3.bucket #=> String
@@ -1279,7 +1559,7 @@ module Aws::CleanRooms
1279
1559
  # resp.schema.partition_keys[0].name #=> String
1280
1560
  # resp.schema.partition_keys[0].type #=> String
1281
1561
  # resp.schema.analysis_rule_types #=> Array
1282
- # resp.schema.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
1562
+ # resp.schema.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
1283
1563
  # resp.schema.analysis_method #=> String, one of "DIRECT_QUERY"
1284
1564
  # resp.schema.creator_account_id #=> String
1285
1565
  # resp.schema.name #=> String
@@ -1322,13 +1602,13 @@ module Aws::CleanRooms
1322
1602
  # resp = client.get_schema_analysis_rule({
1323
1603
  # collaboration_identifier: "CollaborationIdentifier", # required
1324
1604
  # name: "TableAlias", # required
1325
- # type: "AGGREGATION", # required, accepts AGGREGATION, LIST
1605
+ # type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
1326
1606
  # })
1327
1607
  #
1328
1608
  # @example Response structure
1329
1609
  #
1330
1610
  # resp.analysis_rule.collaboration_id #=> String
1331
- # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST"
1611
+ # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
1332
1612
  # resp.analysis_rule.name #=> String
1333
1613
  # resp.analysis_rule.create_time #=> Time
1334
1614
  # resp.analysis_rule.update_time #=> Time
@@ -1355,6 +1635,10 @@ module Aws::CleanRooms
1355
1635
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
1356
1636
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
1357
1637
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
1638
+ # resp.analysis_rule.policy.v1.custom.allowed_analyses #=> Array
1639
+ # resp.analysis_rule.policy.v1.custom.allowed_analyses[0] #=> String
1640
+ # resp.analysis_rule.policy.v1.custom.allowed_analysis_providers #=> Array
1641
+ # resp.analysis_rule.policy.v1.custom.allowed_analysis_providers[0] #=> String
1358
1642
  #
1359
1643
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetSchemaAnalysisRule AWS API Documentation
1360
1644
  #
@@ -1365,6 +1649,108 @@ module Aws::CleanRooms
1365
1649
  req.send_request(options)
1366
1650
  end
1367
1651
 
1652
+ # Lists analysis templates that the caller owns.
1653
+ #
1654
+ # @option params [required, String] :membership_identifier
1655
+ # The identifier for a membership resource.
1656
+ #
1657
+ # @option params [String] :next_token
1658
+ # The token value retrieved from a previous call to access the next page
1659
+ # of results.
1660
+ #
1661
+ # @option params [Integer] :max_results
1662
+ # The maximum size of the results that is returned per call.
1663
+ #
1664
+ # @return [Types::ListAnalysisTemplatesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1665
+ #
1666
+ # * {Types::ListAnalysisTemplatesOutput#next_token #next_token} => String
1667
+ # * {Types::ListAnalysisTemplatesOutput#analysis_template_summaries #analysis_template_summaries} => Array&lt;Types::AnalysisTemplateSummary&gt;
1668
+ #
1669
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1670
+ #
1671
+ # @example Request syntax with placeholder values
1672
+ #
1673
+ # resp = client.list_analysis_templates({
1674
+ # membership_identifier: "MembershipIdentifier", # required
1675
+ # next_token: "PaginationToken",
1676
+ # max_results: 1,
1677
+ # })
1678
+ #
1679
+ # @example Response structure
1680
+ #
1681
+ # resp.next_token #=> String
1682
+ # resp.analysis_template_summaries #=> Array
1683
+ # resp.analysis_template_summaries[0].arn #=> String
1684
+ # resp.analysis_template_summaries[0].create_time #=> Time
1685
+ # resp.analysis_template_summaries[0].id #=> String
1686
+ # resp.analysis_template_summaries[0].name #=> String
1687
+ # resp.analysis_template_summaries[0].update_time #=> Time
1688
+ # resp.analysis_template_summaries[0].membership_arn #=> String
1689
+ # resp.analysis_template_summaries[0].membership_id #=> String
1690
+ # resp.analysis_template_summaries[0].collaboration_arn #=> String
1691
+ # resp.analysis_template_summaries[0].collaboration_id #=> String
1692
+ # resp.analysis_template_summaries[0].description #=> String
1693
+ #
1694
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListAnalysisTemplates AWS API Documentation
1695
+ #
1696
+ # @overload list_analysis_templates(params = {})
1697
+ # @param [Hash] params ({})
1698
+ def list_analysis_templates(params = {}, options = {})
1699
+ req = build_request(:list_analysis_templates, params)
1700
+ req.send_request(options)
1701
+ end
1702
+
1703
+ # Lists analysis templates within a collaboration.
1704
+ #
1705
+ # @option params [required, String] :collaboration_identifier
1706
+ # A unique identifier for the collaboration that the analysis templates
1707
+ # belong to. Currently accepts collaboration ID.
1708
+ #
1709
+ # @option params [String] :next_token
1710
+ # The token value retrieved from a previous call to access the next page
1711
+ # of results.
1712
+ #
1713
+ # @option params [Integer] :max_results
1714
+ # The maximum size of the results that is returned per call.
1715
+ #
1716
+ # @return [Types::ListCollaborationAnalysisTemplatesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1717
+ #
1718
+ # * {Types::ListCollaborationAnalysisTemplatesOutput#next_token #next_token} => String
1719
+ # * {Types::ListCollaborationAnalysisTemplatesOutput#collaboration_analysis_template_summaries #collaboration_analysis_template_summaries} => Array&lt;Types::CollaborationAnalysisTemplateSummary&gt;
1720
+ #
1721
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1722
+ #
1723
+ # @example Request syntax with placeholder values
1724
+ #
1725
+ # resp = client.list_collaboration_analysis_templates({
1726
+ # collaboration_identifier: "CollaborationIdentifier", # required
1727
+ # next_token: "PaginationToken",
1728
+ # max_results: 1,
1729
+ # })
1730
+ #
1731
+ # @example Response structure
1732
+ #
1733
+ # resp.next_token #=> String
1734
+ # resp.collaboration_analysis_template_summaries #=> Array
1735
+ # resp.collaboration_analysis_template_summaries[0].arn #=> String
1736
+ # resp.collaboration_analysis_template_summaries[0].create_time #=> Time
1737
+ # resp.collaboration_analysis_template_summaries[0].id #=> String
1738
+ # resp.collaboration_analysis_template_summaries[0].name #=> String
1739
+ # resp.collaboration_analysis_template_summaries[0].update_time #=> Time
1740
+ # resp.collaboration_analysis_template_summaries[0].collaboration_arn #=> String
1741
+ # resp.collaboration_analysis_template_summaries[0].collaboration_id #=> String
1742
+ # resp.collaboration_analysis_template_summaries[0].creator_account_id #=> String
1743
+ # resp.collaboration_analysis_template_summaries[0].description #=> String
1744
+ #
1745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListCollaborationAnalysisTemplates AWS API Documentation
1746
+ #
1747
+ # @overload list_collaboration_analysis_templates(params = {})
1748
+ # @param [Hash] params ({})
1749
+ def list_collaboration_analysis_templates(params = {}, options = {})
1750
+ req = build_request(:list_collaboration_analysis_templates, params)
1751
+ req.send_request(options)
1752
+ end
1753
+
1368
1754
  # Lists collaborations the caller owns, is active in, or has been
1369
1755
  # invited to.
1370
1756
  #
@@ -1501,7 +1887,7 @@ module Aws::CleanRooms
1501
1887
  # resp.configured_table_summaries[0].create_time #=> Time
1502
1888
  # resp.configured_table_summaries[0].update_time #=> Time
1503
1889
  # resp.configured_table_summaries[0].analysis_rule_types #=> Array
1504
- # resp.configured_table_summaries[0].analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
1890
+ # resp.configured_table_summaries[0].analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
1505
1891
  # resp.configured_table_summaries[0].analysis_method #=> String, one of "DIRECT_QUERY"
1506
1892
  # resp.next_token #=> String
1507
1893
  #
@@ -1713,7 +2099,7 @@ module Aws::CleanRooms
1713
2099
  # resp.schema_summaries[0].collaboration_id #=> String
1714
2100
  # resp.schema_summaries[0].collaboration_arn #=> String
1715
2101
  # resp.schema_summaries[0].analysis_rule_types #=> Array
1716
- # resp.schema_summaries[0].analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
2102
+ # resp.schema_summaries[0].analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
1717
2103
  # resp.schema_summaries[0].analysis_method #=> String, one of "DIRECT_QUERY"
1718
2104
  # resp.next_token #=> String
1719
2105
  #
@@ -1782,6 +2168,10 @@ module Aws::CleanRooms
1782
2168
  # membership_identifier: "MembershipIdentifier", # required
1783
2169
  # sql_parameters: { # required
1784
2170
  # query_string: "ProtectedQuerySQLParametersQueryStringString",
2171
+ # analysis_template_arn: "AnalysisTemplateArn",
2172
+ # parameters: {
2173
+ # "ParameterName" => "ParameterValue",
2174
+ # },
1785
2175
  # },
1786
2176
  # result_configuration: { # required
1787
2177
  # output_configuration: { # required
@@ -1801,6 +2191,9 @@ module Aws::CleanRooms
1801
2191
  # resp.protected_query.membership_arn #=> String
1802
2192
  # resp.protected_query.create_time #=> Time
1803
2193
  # resp.protected_query.sql_parameters.query_string #=> String
2194
+ # resp.protected_query.sql_parameters.analysis_template_arn #=> String
2195
+ # resp.protected_query.sql_parameters.parameters #=> Hash
2196
+ # resp.protected_query.sql_parameters.parameters["ParameterName"] #=> String
1804
2197
  # resp.protected_query.status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
1805
2198
  # resp.protected_query.result_configuration.output_configuration.s3.result_format #=> String, one of "CSV", "PARQUET"
1806
2199
  # resp.protected_query.result_configuration.output_configuration.s3.bucket #=> String
@@ -1875,6 +2268,59 @@ module Aws::CleanRooms
1875
2268
  req.send_request(options)
1876
2269
  end
1877
2270
 
2271
+ # Updates the analysis template metadata.
2272
+ #
2273
+ # @option params [required, String] :membership_identifier
2274
+ # The identifier for a membership resource.
2275
+ #
2276
+ # @option params [required, String] :analysis_template_identifier
2277
+ # The identifier for the analysis template resource.
2278
+ #
2279
+ # @option params [String] :description
2280
+ # A new description for the analysis template.
2281
+ #
2282
+ # @return [Types::UpdateAnalysisTemplateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2283
+ #
2284
+ # * {Types::UpdateAnalysisTemplateOutput#analysis_template #analysis_template} => Types::AnalysisTemplate
2285
+ #
2286
+ # @example Request syntax with placeholder values
2287
+ #
2288
+ # resp = client.update_analysis_template({
2289
+ # membership_identifier: "MembershipIdentifier", # required
2290
+ # analysis_template_identifier: "AnalysisTemplateIdentifier", # required
2291
+ # description: "ResourceDescription",
2292
+ # })
2293
+ #
2294
+ # @example Response structure
2295
+ #
2296
+ # resp.analysis_template.id #=> String
2297
+ # resp.analysis_template.arn #=> String
2298
+ # resp.analysis_template.collaboration_id #=> String
2299
+ # resp.analysis_template.collaboration_arn #=> String
2300
+ # resp.analysis_template.membership_id #=> String
2301
+ # resp.analysis_template.membership_arn #=> String
2302
+ # resp.analysis_template.description #=> String
2303
+ # resp.analysis_template.name #=> String
2304
+ # resp.analysis_template.create_time #=> Time
2305
+ # resp.analysis_template.update_time #=> Time
2306
+ # resp.analysis_template.schema.referenced_tables #=> Array
2307
+ # resp.analysis_template.schema.referenced_tables[0] #=> String
2308
+ # resp.analysis_template.format #=> String, one of "SQL"
2309
+ # resp.analysis_template.source.text #=> String
2310
+ # resp.analysis_template.analysis_parameters #=> Array
2311
+ # resp.analysis_template.analysis_parameters[0].name #=> String
2312
+ # resp.analysis_template.analysis_parameters[0].type #=> String, one of "SMALLINT", "INTEGER", "BIGINT", "DECIMAL", "REAL", "DOUBLE_PRECISION", "BOOLEAN", "CHAR", "VARCHAR", "DATE", "TIMESTAMP", "TIMESTAMPTZ", "TIME", "TIMETZ", "VARBYTE"
2313
+ # resp.analysis_template.analysis_parameters[0].default_value #=> String
2314
+ #
2315
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdateAnalysisTemplate AWS API Documentation
2316
+ #
2317
+ # @overload update_analysis_template(params = {})
2318
+ # @param [Hash] params ({})
2319
+ def update_analysis_template(params = {}, options = {})
2320
+ req = build_request(:update_analysis_template, params)
2321
+ req.send_request(options)
2322
+ end
2323
+
1878
2324
  # Updates collaboration metadata and can only be called by the
1879
2325
  # collaboration owner.
1880
2326
  #
@@ -1963,7 +2409,7 @@ module Aws::CleanRooms
1963
2409
  # resp.configured_table.create_time #=> Time
1964
2410
  # resp.configured_table.update_time #=> Time
1965
2411
  # resp.configured_table.analysis_rule_types #=> Array
1966
- # resp.configured_table.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
2412
+ # resp.configured_table.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
1967
2413
  # resp.configured_table.analysis_method #=> String, one of "DIRECT_QUERY"
1968
2414
  # resp.configured_table.allowed_columns #=> Array
1969
2415
  # resp.configured_table.allowed_columns[0] #=> String
@@ -1999,7 +2445,7 @@ module Aws::CleanRooms
1999
2445
  #
2000
2446
  # resp = client.update_configured_table_analysis_rule({
2001
2447
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
2002
- # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
2448
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
2003
2449
  # analysis_rule_policy: { # required
2004
2450
  # v1: {
2005
2451
  # list: {
@@ -2027,6 +2473,10 @@ module Aws::CleanRooms
2027
2473
  # },
2028
2474
  # ],
2029
2475
  # },
2476
+ # custom: {
2477
+ # allowed_analyses: ["AnalysisTemplateArnOrQueryWildcard"], # required
2478
+ # allowed_analysis_providers: ["AccountId"],
2479
+ # },
2030
2480
  # },
2031
2481
  # },
2032
2482
  # })
@@ -2058,7 +2508,11 @@ module Aws::CleanRooms
2058
2508
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
2059
2509
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
2060
2510
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
2061
- # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST"
2511
+ # resp.analysis_rule.policy.v1.custom.allowed_analyses #=> Array
2512
+ # resp.analysis_rule.policy.v1.custom.allowed_analyses[0] #=> String
2513
+ # resp.analysis_rule.policy.v1.custom.allowed_analysis_providers #=> Array
2514
+ # resp.analysis_rule.policy.v1.custom.allowed_analysis_providers[0] #=> String
2515
+ # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
2062
2516
  # resp.analysis_rule.create_time #=> Time
2063
2517
  # resp.analysis_rule.update_time #=> Time
2064
2518
  #
@@ -2200,6 +2654,9 @@ module Aws::CleanRooms
2200
2654
  # resp.protected_query.membership_arn #=> String
2201
2655
  # resp.protected_query.create_time #=> Time
2202
2656
  # resp.protected_query.sql_parameters.query_string #=> String
2657
+ # resp.protected_query.sql_parameters.analysis_template_arn #=> String
2658
+ # resp.protected_query.sql_parameters.parameters #=> Hash
2659
+ # resp.protected_query.sql_parameters.parameters["ParameterName"] #=> String
2203
2660
  # resp.protected_query.status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
2204
2661
  # resp.protected_query.result_configuration.output_configuration.s3.result_format #=> String, one of "CSV", "PARQUET"
2205
2662
  # resp.protected_query.result_configuration.output_configuration.s3.bucket #=> String
@@ -2231,7 +2688,7 @@ module Aws::CleanRooms
2231
2688
  params: params,
2232
2689
  config: config)
2233
2690
  context[:gem_name] = 'aws-sdk-cleanrooms'
2234
- context[:gem_version] = '1.8.0'
2691
+ context[:gem_version] = '1.9.0'
2235
2692
  Seahorse::Client::Request.new(handlers, context)
2236
2693
  end
2237
2694