aws-sdk-cleanrooms 1.7.0 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -216,6 +216,10 @@ module Aws::CleanRooms
216
216
  # @option options [Boolean] :endpoint_discovery (false)
217
217
  # When set to `true`, endpoint discovery will be enabled for operations when available.
218
218
  #
219
+ # @option options [Boolean] :ignore_configured_endpoint_urls
220
+ # Setting to true disables use of endpoint URLs provided via environment
221
+ # variables and the shared configuration file.
222
+ #
219
223
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
220
224
  # The log formatter.
221
225
  #
@@ -384,6 +388,63 @@ module Aws::CleanRooms
384
388
 
385
389
  # @!group API Operations
386
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
+
387
448
  # Retrieves multiple schemas by their identifiers.
388
449
  #
389
450
  # @option params [required, String] :collaboration_identifier
@@ -415,7 +476,7 @@ module Aws::CleanRooms
415
476
  # resp.schemas[0].partition_keys[0].name #=> String
416
477
  # resp.schemas[0].partition_keys[0].type #=> String
417
478
  # resp.schemas[0].analysis_rule_types #=> Array
418
- # 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"
419
480
  # resp.schemas[0].analysis_method #=> String, one of "DIRECT_QUERY"
420
481
  # resp.schemas[0].creator_account_id #=> String
421
482
  # resp.schemas[0].name #=> String
@@ -439,6 +500,89 @@ module Aws::CleanRooms
439
500
  req.send_request(options)
440
501
  end
441
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
+
442
586
  # Creates a new collaboration.
443
587
  #
444
588
  # @option params [required, Array<Types::MemberSpecification>] :members
@@ -588,7 +732,7 @@ module Aws::CleanRooms
588
732
  # resp.configured_table.create_time #=> Time
589
733
  # resp.configured_table.update_time #=> Time
590
734
  # resp.configured_table.analysis_rule_types #=> Array
591
- # 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"
592
736
  # resp.configured_table.analysis_method #=> String, one of "DIRECT_QUERY"
593
737
  # resp.configured_table.allowed_columns #=> Array
594
738
  # resp.configured_table.allowed_columns[0] #=> String
@@ -610,7 +754,7 @@ module Aws::CleanRooms
610
754
  # for. Currently accepts the configured table ID.
611
755
  #
612
756
  # @option params [required, String] :analysis_rule_type
613
- # The type of analysis rule. Valid values are AGGREGATION and LIST.
757
+ # The type of analysis rule.
614
758
  #
615
759
  # @option params [required, Types::ConfiguredTableAnalysisRulePolicy] :analysis_rule_policy
616
760
  # The entire created configured table analysis rule object.
@@ -623,7 +767,7 @@ module Aws::CleanRooms
623
767
  #
624
768
  # resp = client.create_configured_table_analysis_rule({
625
769
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
626
- # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
770
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
627
771
  # analysis_rule_policy: { # required
628
772
  # v1: {
629
773
  # list: {
@@ -651,6 +795,10 @@ module Aws::CleanRooms
651
795
  # },
652
796
  # ],
653
797
  # },
798
+ # custom: {
799
+ # allowed_analyses: ["AnalysisTemplateArnOrQueryWildcard"], # required
800
+ # allowed_analysis_providers: ["AccountId"],
801
+ # },
654
802
  # },
655
803
  # },
656
804
  # })
@@ -682,7 +830,11 @@ module Aws::CleanRooms
682
830
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
683
831
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
684
832
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
685
- # 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"
686
838
  # resp.analysis_rule.create_time #=> Time
687
839
  # resp.analysis_rule.update_time #=> Time
688
840
  #
@@ -819,6 +971,32 @@ module Aws::CleanRooms
819
971
  req.send_request(options)
820
972
  end
821
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
+
822
1000
  # Deletes a collaboration. It can only be called by the collaboration
823
1001
  # owner.
824
1002
  #
@@ -881,7 +1059,7 @@ module Aws::CleanRooms
881
1059
  #
882
1060
  # resp = client.delete_configured_table_analysis_rule({
883
1061
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
884
- # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
1062
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
885
1063
  # })
886
1064
  #
887
1065
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteConfiguredTableAnalysisRule AWS API Documentation
@@ -973,6 +1151,55 @@ module Aws::CleanRooms
973
1151
  req.send_request(options)
974
1152
  end
975
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
+
976
1203
  # Returns metadata about a collaboration.
977
1204
  #
978
1205
  # @option params [required, String] :collaboration_identifier
@@ -1016,6 +1243,56 @@ module Aws::CleanRooms
1016
1243
  req.send_request(options)
1017
1244
  end
1018
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
+
1019
1296
  # Retrieves a configured table.
1020
1297
  #
1021
1298
  # @option params [required, String] :configured_table_identifier
@@ -1042,7 +1319,7 @@ module Aws::CleanRooms
1042
1319
  # resp.configured_table.create_time #=> Time
1043
1320
  # resp.configured_table.update_time #=> Time
1044
1321
  # resp.configured_table.analysis_rule_types #=> Array
1045
- # 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"
1046
1323
  # resp.configured_table.analysis_method #=> String, one of "DIRECT_QUERY"
1047
1324
  # resp.configured_table.allowed_columns #=> Array
1048
1325
  # resp.configured_table.allowed_columns[0] #=> String
@@ -1075,7 +1352,7 @@ module Aws::CleanRooms
1075
1352
  #
1076
1353
  # resp = client.get_configured_table_analysis_rule({
1077
1354
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
1078
- # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
1355
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
1079
1356
  # })
1080
1357
  #
1081
1358
  # @example Response structure
@@ -1105,7 +1382,11 @@ module Aws::CleanRooms
1105
1382
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
1106
1383
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
1107
1384
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
1108
- # 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"
1109
1390
  # resp.analysis_rule.create_time #=> Time
1110
1391
  # resp.analysis_rule.update_time #=> Time
1111
1392
  #
@@ -1228,6 +1509,9 @@ module Aws::CleanRooms
1228
1509
  # resp.protected_query.membership_arn #=> String
1229
1510
  # resp.protected_query.create_time #=> Time
1230
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
1231
1515
  # resp.protected_query.status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
1232
1516
  # resp.protected_query.result_configuration.output_configuration.s3.result_format #=> String, one of "CSV", "PARQUET"
1233
1517
  # resp.protected_query.result_configuration.output_configuration.s3.bucket #=> String
@@ -1275,7 +1559,7 @@ module Aws::CleanRooms
1275
1559
  # resp.schema.partition_keys[0].name #=> String
1276
1560
  # resp.schema.partition_keys[0].type #=> String
1277
1561
  # resp.schema.analysis_rule_types #=> Array
1278
- # resp.schema.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
1562
+ # resp.schema.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
1279
1563
  # resp.schema.analysis_method #=> String, one of "DIRECT_QUERY"
1280
1564
  # resp.schema.creator_account_id #=> String
1281
1565
  # resp.schema.name #=> String
@@ -1318,13 +1602,13 @@ module Aws::CleanRooms
1318
1602
  # resp = client.get_schema_analysis_rule({
1319
1603
  # collaboration_identifier: "CollaborationIdentifier", # required
1320
1604
  # name: "TableAlias", # required
1321
- # type: "AGGREGATION", # required, accepts AGGREGATION, LIST
1605
+ # type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
1322
1606
  # })
1323
1607
  #
1324
1608
  # @example Response structure
1325
1609
  #
1326
1610
  # resp.analysis_rule.collaboration_id #=> String
1327
- # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST"
1611
+ # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST", "CUSTOM"
1328
1612
  # resp.analysis_rule.name #=> String
1329
1613
  # resp.analysis_rule.create_time #=> Time
1330
1614
  # resp.analysis_rule.update_time #=> Time
@@ -1351,6 +1635,10 @@ module Aws::CleanRooms
1351
1635
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
1352
1636
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
1353
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
1354
1642
  #
1355
1643
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetSchemaAnalysisRule AWS API Documentation
1356
1644
  #
@@ -1361,6 +1649,108 @@ module Aws::CleanRooms
1361
1649
  req.send_request(options)
1362
1650
  end
1363
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
+
1364
1754
  # Lists collaborations the caller owns, is active in, or has been
1365
1755
  # invited to.
1366
1756
  #
@@ -1497,7 +1887,7 @@ module Aws::CleanRooms
1497
1887
  # resp.configured_table_summaries[0].create_time #=> Time
1498
1888
  # resp.configured_table_summaries[0].update_time #=> Time
1499
1889
  # resp.configured_table_summaries[0].analysis_rule_types #=> Array
1500
- # 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"
1501
1891
  # resp.configured_table_summaries[0].analysis_method #=> String, one of "DIRECT_QUERY"
1502
1892
  # resp.next_token #=> String
1503
1893
  #
@@ -1709,7 +2099,7 @@ module Aws::CleanRooms
1709
2099
  # resp.schema_summaries[0].collaboration_id #=> String
1710
2100
  # resp.schema_summaries[0].collaboration_arn #=> String
1711
2101
  # resp.schema_summaries[0].analysis_rule_types #=> Array
1712
- # 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"
1713
2103
  # resp.schema_summaries[0].analysis_method #=> String, one of "DIRECT_QUERY"
1714
2104
  # resp.next_token #=> String
1715
2105
  #
@@ -1778,6 +2168,10 @@ module Aws::CleanRooms
1778
2168
  # membership_identifier: "MembershipIdentifier", # required
1779
2169
  # sql_parameters: { # required
1780
2170
  # query_string: "ProtectedQuerySQLParametersQueryStringString",
2171
+ # analysis_template_arn: "AnalysisTemplateArn",
2172
+ # parameters: {
2173
+ # "ParameterName" => "ParameterValue",
2174
+ # },
1781
2175
  # },
1782
2176
  # result_configuration: { # required
1783
2177
  # output_configuration: { # required
@@ -1797,6 +2191,9 @@ module Aws::CleanRooms
1797
2191
  # resp.protected_query.membership_arn #=> String
1798
2192
  # resp.protected_query.create_time #=> Time
1799
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
1800
2197
  # resp.protected_query.status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
1801
2198
  # resp.protected_query.result_configuration.output_configuration.s3.result_format #=> String, one of "CSV", "PARQUET"
1802
2199
  # resp.protected_query.result_configuration.output_configuration.s3.bucket #=> String
@@ -1871,6 +2268,59 @@ module Aws::CleanRooms
1871
2268
  req.send_request(options)
1872
2269
  end
1873
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
+
1874
2324
  # Updates collaboration metadata and can only be called by the
1875
2325
  # collaboration owner.
1876
2326
  #
@@ -1959,7 +2409,7 @@ module Aws::CleanRooms
1959
2409
  # resp.configured_table.create_time #=> Time
1960
2410
  # resp.configured_table.update_time #=> Time
1961
2411
  # resp.configured_table.analysis_rule_types #=> Array
1962
- # 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"
1963
2413
  # resp.configured_table.analysis_method #=> String, one of "DIRECT_QUERY"
1964
2414
  # resp.configured_table.allowed_columns #=> Array
1965
2415
  # resp.configured_table.allowed_columns[0] #=> String
@@ -1995,7 +2445,7 @@ module Aws::CleanRooms
1995
2445
  #
1996
2446
  # resp = client.update_configured_table_analysis_rule({
1997
2447
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
1998
- # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
2448
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST, CUSTOM
1999
2449
  # analysis_rule_policy: { # required
2000
2450
  # v1: {
2001
2451
  # list: {
@@ -2023,6 +2473,10 @@ module Aws::CleanRooms
2023
2473
  # },
2024
2474
  # ],
2025
2475
  # },
2476
+ # custom: {
2477
+ # allowed_analyses: ["AnalysisTemplateArnOrQueryWildcard"], # required
2478
+ # allowed_analysis_providers: ["AccountId"],
2479
+ # },
2026
2480
  # },
2027
2481
  # },
2028
2482
  # })
@@ -2054,7 +2508,11 @@ module Aws::CleanRooms
2054
2508
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
2055
2509
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
2056
2510
  # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
2057
- # 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"
2058
2516
  # resp.analysis_rule.create_time #=> Time
2059
2517
  # resp.analysis_rule.update_time #=> Time
2060
2518
  #
@@ -2196,6 +2654,9 @@ module Aws::CleanRooms
2196
2654
  # resp.protected_query.membership_arn #=> String
2197
2655
  # resp.protected_query.create_time #=> Time
2198
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
2199
2660
  # resp.protected_query.status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
2200
2661
  # resp.protected_query.result_configuration.output_configuration.s3.result_format #=> String, one of "CSV", "PARQUET"
2201
2662
  # resp.protected_query.result_configuration.output_configuration.s3.bucket #=> String
@@ -2227,7 +2688,7 @@ module Aws::CleanRooms
2227
2688
  params: params,
2228
2689
  config: config)
2229
2690
  context[:gem_name] = 'aws-sdk-cleanrooms'
2230
- context[:gem_version] = '1.7.0'
2691
+ context[:gem_version] = '1.9.0'
2231
2692
  Seahorse::Client::Request.new(handlers, context)
2232
2693
  end
2233
2694