aws-sdk-cleanrooms 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,2094 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ require 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
32
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
35
+
36
+ Aws::Plugins::GlobalConfiguration.add_identifier(:cleanrooms)
37
+
38
+ module Aws::CleanRooms
39
+ # An API client for CleanRooms. To construct a client, you need to configure a `:region` and `:credentials`.
40
+ #
41
+ # client = Aws::CleanRooms::Client.new(
42
+ # region: region_name,
43
+ # credentials: credentials,
44
+ # # ...
45
+ # )
46
+ #
47
+ # For details on configuring region and credentials see
48
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
49
+ #
50
+ # See {#initialize} for a full list of supported configuration options.
51
+ class Client < Seahorse::Client::Base
52
+
53
+ include Aws::ClientStubs
54
+
55
+ @identifier = :cleanrooms
56
+
57
+ set_api(ClientApi::API)
58
+
59
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
60
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
61
+ add_plugin(Aws::Plugins::Logging)
62
+ add_plugin(Aws::Plugins::ParamConverter)
63
+ add_plugin(Aws::Plugins::ParamValidator)
64
+ add_plugin(Aws::Plugins::UserAgent)
65
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
66
+ add_plugin(Aws::Plugins::RetryErrors)
67
+ add_plugin(Aws::Plugins::GlobalConfiguration)
68
+ add_plugin(Aws::Plugins::RegionalEndpoint)
69
+ add_plugin(Aws::Plugins::EndpointDiscovery)
70
+ add_plugin(Aws::Plugins::EndpointPattern)
71
+ add_plugin(Aws::Plugins::ResponsePaging)
72
+ add_plugin(Aws::Plugins::StubResponses)
73
+ add_plugin(Aws::Plugins::IdempotencyToken)
74
+ add_plugin(Aws::Plugins::JsonvalueConverter)
75
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
76
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
77
+ add_plugin(Aws::Plugins::TransferEncoding)
78
+ add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
+ add_plugin(Aws::Plugins::DefaultsMode)
81
+ add_plugin(Aws::Plugins::RecursionDetection)
82
+ add_plugin(Aws::Plugins::Sign)
83
+ add_plugin(Aws::Plugins::Protocols::RestJson)
84
+ add_plugin(Aws::CleanRooms::Plugins::Endpoints)
85
+
86
+ # @overload initialize(options)
87
+ # @param [Hash] options
88
+ # @option options [required, Aws::CredentialProvider] :credentials
89
+ # Your AWS credentials. This can be an instance of any one of the
90
+ # following classes:
91
+ #
92
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
93
+ # credentials.
94
+ #
95
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
96
+ # shared file, such as `~/.aws/config`.
97
+ #
98
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
99
+ #
100
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
101
+ # assume a role after providing credentials via the web.
102
+ #
103
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
104
+ # access token generated from `aws login`.
105
+ #
106
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
107
+ # process that outputs to stdout.
108
+ #
109
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
110
+ # from an EC2 IMDS on an EC2 instance.
111
+ #
112
+ # * `Aws::ECSCredentials` - Used for loading credentials from
113
+ # instances running in ECS.
114
+ #
115
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
116
+ # from the Cognito Identity service.
117
+ #
118
+ # When `:credentials` are not configured directly, the following
119
+ # locations will be searched for credentials:
120
+ #
121
+ # * `Aws.config[:credentials]`
122
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
123
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
124
+ # * `~/.aws/credentials`
125
+ # * `~/.aws/config`
126
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
127
+ # are very aggressive. Construct and pass an instance of
128
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
129
+ # enable retries and extended timeouts. Instance profile credential
130
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
131
+ # to true.
132
+ #
133
+ # @option options [required, String] :region
134
+ # The AWS region to connect to. The configured `:region` is
135
+ # used to determine the service `:endpoint`. When not passed,
136
+ # a default `:region` is searched for in the following locations:
137
+ #
138
+ # * `Aws.config[:region]`
139
+ # * `ENV['AWS_REGION']`
140
+ # * `ENV['AMAZON_REGION']`
141
+ # * `ENV['AWS_DEFAULT_REGION']`
142
+ # * `~/.aws/credentials`
143
+ # * `~/.aws/config`
144
+ #
145
+ # @option options [String] :access_key_id
146
+ #
147
+ # @option options [Boolean] :active_endpoint_cache (false)
148
+ # When set to `true`, a thread polling for endpoints will be running in
149
+ # the background every 60 secs (default). Defaults to `false`.
150
+ #
151
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
152
+ # Used only in `adaptive` retry mode. When true, the request will sleep
153
+ # until there is sufficent client side capacity to retry the request.
154
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
155
+ # not retry instead of sleeping.
156
+ #
157
+ # @option options [Boolean] :client_side_monitoring (false)
158
+ # When `true`, client-side metrics will be collected for all API requests from
159
+ # this client.
160
+ #
161
+ # @option options [String] :client_side_monitoring_client_id ("")
162
+ # Allows you to provide an identifier for this client which will be attached to
163
+ # all generated client side metrics. Defaults to an empty string.
164
+ #
165
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
166
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
167
+ # side monitoring agent is running on, where client metrics will be published via UDP.
168
+ #
169
+ # @option options [Integer] :client_side_monitoring_port (31000)
170
+ # Required for publishing client metrics. The port that the client side monitoring
171
+ # agent is running on, where client metrics will be published via UDP.
172
+ #
173
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
174
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
175
+ # will use the Client Side Monitoring Agent Publisher.
176
+ #
177
+ # @option options [Boolean] :convert_params (true)
178
+ # When `true`, an attempt is made to coerce request parameters into
179
+ # the required types.
180
+ #
181
+ # @option options [Boolean] :correct_clock_skew (true)
182
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
183
+ # a clock skew correction and retry requests with skewed client clocks.
184
+ #
185
+ # @option options [String] :defaults_mode ("legacy")
186
+ # See {Aws::DefaultsModeConfiguration} for a list of the
187
+ # accepted modes and the configuration defaults that are included.
188
+ #
189
+ # @option options [Boolean] :disable_host_prefix_injection (false)
190
+ # Set to true to disable SDK automatically adding host prefix
191
+ # to default service endpoint when available.
192
+ #
193
+ # @option options [String] :endpoint
194
+ # The client endpoint is normally constructed from the `:region`
195
+ # option. You should only configure an `:endpoint` when connecting
196
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
197
+ #
198
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
199
+ # Used for the maximum size limit of the LRU cache storing endpoints data
200
+ # for endpoint discovery enabled operations. Defaults to 1000.
201
+ #
202
+ # @option options [Integer] :endpoint_cache_max_threads (10)
203
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
204
+ #
205
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
206
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
207
+ # Use this option to config the time interval in seconds for making
208
+ # requests fetching endpoints information. Defaults to 60 sec.
209
+ #
210
+ # @option options [Boolean] :endpoint_discovery (false)
211
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
212
+ #
213
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
214
+ # The log formatter.
215
+ #
216
+ # @option options [Symbol] :log_level (:info)
217
+ # The log level to send messages to the `:logger` at.
218
+ #
219
+ # @option options [Logger] :logger
220
+ # The Logger instance to send log messages to. If this option
221
+ # is not set, logging will be disabled.
222
+ #
223
+ # @option options [Integer] :max_attempts (3)
224
+ # An integer representing the maximum number attempts that will be made for
225
+ # a single request, including the initial attempt. For example,
226
+ # setting this value to 5 will result in a request being retried up to
227
+ # 4 times. Used in `standard` and `adaptive` retry modes.
228
+ #
229
+ # @option options [String] :profile ("default")
230
+ # Used when loading credentials from the shared credentials file
231
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
232
+ #
233
+ # @option options [Proc] :retry_backoff
234
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
235
+ # This option is only used in the `legacy` retry mode.
236
+ #
237
+ # @option options [Float] :retry_base_delay (0.3)
238
+ # The base delay in seconds used by the default backoff function. This option
239
+ # is only used in the `legacy` retry mode.
240
+ #
241
+ # @option options [Symbol] :retry_jitter (:none)
242
+ # A delay randomiser function used by the default backoff function.
243
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
244
+ # otherwise a Proc that takes and returns a number. This option is only used
245
+ # in the `legacy` retry mode.
246
+ #
247
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
248
+ #
249
+ # @option options [Integer] :retry_limit (3)
250
+ # The maximum number of times to retry failed requests. Only
251
+ # ~ 500 level server errors and certain ~ 400 level client errors
252
+ # are retried. Generally, these are throttling errors, data
253
+ # checksum errors, networking errors, timeout errors, auth errors,
254
+ # endpoint discovery, and errors from expired credentials.
255
+ # This option is only used in the `legacy` retry mode.
256
+ #
257
+ # @option options [Integer] :retry_max_delay (0)
258
+ # The maximum number of seconds to delay between retries (0 for no limit)
259
+ # used by the default backoff function. This option is only used in the
260
+ # `legacy` retry mode.
261
+ #
262
+ # @option options [String] :retry_mode ("legacy")
263
+ # Specifies which retry algorithm to use. Values are:
264
+ #
265
+ # * `legacy` - The pre-existing retry behavior. This is default value if
266
+ # no retry mode is provided.
267
+ #
268
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
269
+ # This includes support for retry quotas, which limit the number of
270
+ # unsuccessful retries a client can make.
271
+ #
272
+ # * `adaptive` - An experimental retry mode that includes all the
273
+ # functionality of `standard` mode along with automatic client side
274
+ # throttling. This is a provisional mode that may change behavior
275
+ # in the future.
276
+ #
277
+ #
278
+ # @option options [String] :secret_access_key
279
+ #
280
+ # @option options [String] :session_token
281
+ #
282
+ # @option options [Boolean] :stub_responses (false)
283
+ # Causes the client to return stubbed responses. By default
284
+ # fake responses are generated and returned. You can specify
285
+ # the response data to return or errors to raise by calling
286
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
287
+ #
288
+ # ** Please note ** When response stubbing is enabled, no HTTP
289
+ # requests are made, and retries are disabled.
290
+ #
291
+ # @option options [Aws::TokenProvider] :token_provider
292
+ # A Bearer Token Provider. This can be an instance of any one of the
293
+ # following classes:
294
+ #
295
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
296
+ # tokens.
297
+ #
298
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
299
+ # access token generated from `aws login`.
300
+ #
301
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
302
+ # will be used to search for tokens configured for your profile in shared configuration files.
303
+ #
304
+ # @option options [Boolean] :use_dualstack_endpoint
305
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
306
+ # will be used if available.
307
+ #
308
+ # @option options [Boolean] :use_fips_endpoint
309
+ # When set to `true`, fips compatible endpoints will be used if available.
310
+ # When a `fips` region is used, the region is normalized and this config
311
+ # is set to `true`.
312
+ #
313
+ # @option options [Boolean] :validate_params (true)
314
+ # When `true`, request parameters are validated before
315
+ # sending the request.
316
+ #
317
+ # @option options [Aws::CleanRooms::EndpointProvider] :endpoint_provider
318
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::CleanRooms::EndpointParameters`
319
+ #
320
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
321
+ # requests through. Formatted like 'http://proxy.com:123'.
322
+ #
323
+ # @option options [Float] :http_open_timeout (15) The number of
324
+ # seconds to wait when opening a HTTP session before raising a
325
+ # `Timeout::Error`.
326
+ #
327
+ # @option options [Float] :http_read_timeout (60) The default
328
+ # number of seconds to wait for response data. This value can
329
+ # safely be set per-request on the session.
330
+ #
331
+ # @option options [Float] :http_idle_timeout (5) The number of
332
+ # seconds a connection is allowed to sit idle before it is
333
+ # considered stale. Stale connections are closed and removed
334
+ # from the pool before making a request.
335
+ #
336
+ # @option options [Float] :http_continue_timeout (1) The number of
337
+ # seconds to wait for a 100-continue response before sending the
338
+ # request body. This option has no effect unless the request has
339
+ # "Expect" header set to "100-continue". Defaults to `nil` which
340
+ # disables this behaviour. This value can safely be set per
341
+ # request on the session.
342
+ #
343
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
344
+ # in seconds.
345
+ #
346
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
347
+ # HTTP debug output will be sent to the `:logger`.
348
+ #
349
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
350
+ # SSL peer certificates are verified when establishing a
351
+ # connection.
352
+ #
353
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
354
+ # certificate authority bundle file that should be used when
355
+ # verifying peer certificates. If you do not pass
356
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
357
+ # will be used if available.
358
+ #
359
+ # @option options [String] :ssl_ca_directory Full path of the
360
+ # directory that contains the unbundled SSL certificate
361
+ # authority files for verifying peer certificates. If you do
362
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
363
+ # system default will be used if available.
364
+ #
365
+ def initialize(*args)
366
+ super
367
+ end
368
+
369
+ # @!group API Operations
370
+
371
+ # Retrieves multiple schemas by their identifiers.
372
+ #
373
+ # @option params [required, String] :collaboration_identifier
374
+ # A unique identifier for the collaboration that the schemas belong to.
375
+ # Currently accepts collaboration ID.
376
+ #
377
+ # @option params [required, Array<String>] :names
378
+ # The names for the schema objects to retrieve.&gt;
379
+ #
380
+ # @return [Types::BatchGetSchemaOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
381
+ #
382
+ # * {Types::BatchGetSchemaOutput#schemas #schemas} => Array&lt;Types::Schema&gt;
383
+ # * {Types::BatchGetSchemaOutput#errors #errors} => Array&lt;Types::BatchGetSchemaError&gt;
384
+ #
385
+ # @example Request syntax with placeholder values
386
+ #
387
+ # resp = client.batch_get_schema({
388
+ # collaboration_identifier: "CollaborationIdentifier", # required
389
+ # names: ["TableAlias"], # required
390
+ # })
391
+ #
392
+ # @example Response structure
393
+ #
394
+ # resp.schemas #=> Array
395
+ # resp.schemas[0].columns #=> Array
396
+ # resp.schemas[0].columns[0].name #=> String
397
+ # resp.schemas[0].columns[0].type #=> String
398
+ # resp.schemas[0].partition_keys #=> Array
399
+ # resp.schemas[0].partition_keys[0].name #=> String
400
+ # resp.schemas[0].partition_keys[0].type #=> String
401
+ # resp.schemas[0].analysis_rule_types #=> Array
402
+ # resp.schemas[0].analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
403
+ # resp.schemas[0].analysis_method #=> String, one of "DIRECT_QUERY"
404
+ # resp.schemas[0].creator_account_id #=> String
405
+ # resp.schemas[0].name #=> String
406
+ # resp.schemas[0].collaboration_id #=> String
407
+ # resp.schemas[0].collaboration_arn #=> String
408
+ # resp.schemas[0].description #=> String
409
+ # resp.schemas[0].create_time #=> Time
410
+ # resp.schemas[0].update_time #=> Time
411
+ # resp.schemas[0].type #=> String, one of "TABLE"
412
+ # resp.errors #=> Array
413
+ # resp.errors[0].name #=> String
414
+ # resp.errors[0].code #=> String
415
+ # resp.errors[0].message #=> String
416
+ #
417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/BatchGetSchema AWS API Documentation
418
+ #
419
+ # @overload batch_get_schema(params = {})
420
+ # @param [Hash] params ({})
421
+ def batch_get_schema(params = {}, options = {})
422
+ req = build_request(:batch_get_schema, params)
423
+ req.send_request(options)
424
+ end
425
+
426
+ # Creates a new collaboration.
427
+ #
428
+ # @option params [required, Array<Types::MemberSpecification>] :members
429
+ # A list of initial members, not including the creator. This list is
430
+ # immutable.
431
+ #
432
+ # @option params [required, String] :name
433
+ # The display name for a collaboration.
434
+ #
435
+ # @option params [required, String] :description
436
+ # A description of the collaboration provided by the collaboration
437
+ # owner.
438
+ #
439
+ # @option params [required, Array<String>] :creator_member_abilities
440
+ # The abilities granted to the collaboration creator.
441
+ #
442
+ # @option params [required, String] :creator_display_name
443
+ # The display name of the collaboration creator.
444
+ #
445
+ # @option params [Types::DataEncryptionMetadata] :data_encryption_metadata
446
+ # The settings for client-side encryption with Cryptographic Computing
447
+ # for Clean Rooms.
448
+ #
449
+ # @option params [required, String] :query_log_status
450
+ # An indicator as to whether query logging has been enabled or disabled
451
+ # for the collaboration.
452
+ #
453
+ # @return [Types::CreateCollaborationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
454
+ #
455
+ # * {Types::CreateCollaborationOutput#collaboration #collaboration} => Types::Collaboration
456
+ #
457
+ # @example Request syntax with placeholder values
458
+ #
459
+ # resp = client.create_collaboration({
460
+ # members: [ # required
461
+ # {
462
+ # account_id: "AccountId", # required
463
+ # member_abilities: ["CAN_QUERY"], # required, accepts CAN_QUERY, CAN_RECEIVE_RESULTS
464
+ # display_name: "DisplayName", # required
465
+ # },
466
+ # ],
467
+ # name: "CollaborationName", # required
468
+ # description: "CollaborationDescription", # required
469
+ # creator_member_abilities: ["CAN_QUERY"], # required, accepts CAN_QUERY, CAN_RECEIVE_RESULTS
470
+ # creator_display_name: "DisplayName", # required
471
+ # data_encryption_metadata: {
472
+ # allow_cleartext: false, # required
473
+ # allow_duplicates: false, # required
474
+ # allow_joins_on_columns_with_different_names: false, # required
475
+ # preserve_nulls: false, # required
476
+ # },
477
+ # query_log_status: "ENABLED", # required, accepts ENABLED, DISABLED
478
+ # })
479
+ #
480
+ # @example Response structure
481
+ #
482
+ # resp.collaboration.id #=> String
483
+ # resp.collaboration.arn #=> String
484
+ # resp.collaboration.name #=> String
485
+ # resp.collaboration.description #=> String
486
+ # resp.collaboration.creator_account_id #=> String
487
+ # resp.collaboration.creator_display_name #=> String
488
+ # resp.collaboration.create_time #=> Time
489
+ # resp.collaboration.update_time #=> Time
490
+ # resp.collaboration.member_status #=> String, one of "INVITED", "ACTIVE", "LEFT", "REMOVED"
491
+ # resp.collaboration.membership_id #=> String
492
+ # resp.collaboration.membership_arn #=> String
493
+ # resp.collaboration.data_encryption_metadata.allow_cleartext #=> Boolean
494
+ # resp.collaboration.data_encryption_metadata.allow_duplicates #=> Boolean
495
+ # resp.collaboration.data_encryption_metadata.allow_joins_on_columns_with_different_names #=> Boolean
496
+ # resp.collaboration.data_encryption_metadata.preserve_nulls #=> Boolean
497
+ # resp.collaboration.query_log_status #=> String, one of "ENABLED", "DISABLED"
498
+ #
499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateCollaboration AWS API Documentation
500
+ #
501
+ # @overload create_collaboration(params = {})
502
+ # @param [Hash] params ({})
503
+ def create_collaboration(params = {}, options = {})
504
+ req = build_request(:create_collaboration, params)
505
+ req.send_request(options)
506
+ end
507
+
508
+ # Creates a new configured table resource.
509
+ #
510
+ # @option params [required, String] :name
511
+ # The name of the configured table.
512
+ #
513
+ # @option params [String] :description
514
+ # A description for the configured table.
515
+ #
516
+ # @option params [required, Types::TableReference] :table_reference
517
+ # A reference to the AWS Glue table being configured.
518
+ #
519
+ # @option params [required, Array<String>] :allowed_columns
520
+ # The columns of the underlying table that can be used by collaborations
521
+ # or analysis rules.
522
+ #
523
+ # @option params [required, String] :analysis_method
524
+ # The analysis method for the configured tables. The only valid value is
525
+ # currently `DIRECT\_QUERY`.
526
+ #
527
+ # @return [Types::CreateConfiguredTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
528
+ #
529
+ # * {Types::CreateConfiguredTableOutput#configured_table #configured_table} => Types::ConfiguredTable
530
+ #
531
+ # @example Request syntax with placeholder values
532
+ #
533
+ # resp = client.create_configured_table({
534
+ # name: "DisplayName", # required
535
+ # description: "TableDescription",
536
+ # table_reference: { # required
537
+ # glue: {
538
+ # table_name: "GlueResourceName", # required
539
+ # database_name: "GlueResourceName", # required
540
+ # },
541
+ # },
542
+ # allowed_columns: ["ColumnName"], # required
543
+ # analysis_method: "DIRECT_QUERY", # required, accepts DIRECT_QUERY
544
+ # })
545
+ #
546
+ # @example Response structure
547
+ #
548
+ # resp.configured_table.id #=> String
549
+ # resp.configured_table.arn #=> String
550
+ # resp.configured_table.name #=> String
551
+ # resp.configured_table.description #=> String
552
+ # resp.configured_table.table_reference.glue.table_name #=> String
553
+ # resp.configured_table.table_reference.glue.database_name #=> String
554
+ # resp.configured_table.create_time #=> Time
555
+ # resp.configured_table.update_time #=> Time
556
+ # resp.configured_table.analysis_rule_types #=> Array
557
+ # resp.configured_table.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
558
+ # resp.configured_table.analysis_method #=> String, one of "DIRECT_QUERY"
559
+ # resp.configured_table.allowed_columns #=> Array
560
+ # resp.configured_table.allowed_columns[0] #=> String
561
+ #
562
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateConfiguredTable AWS API Documentation
563
+ #
564
+ # @overload create_configured_table(params = {})
565
+ # @param [Hash] params ({})
566
+ def create_configured_table(params = {}, options = {})
567
+ req = build_request(:create_configured_table, params)
568
+ req.send_request(options)
569
+ end
570
+
571
+ # Creates a new analysis rule for a configured table. Currently, only
572
+ # one analysis rule can be created for a given configured table.
573
+ #
574
+ # @option params [required, String] :configured_table_identifier
575
+ # The identifier for the configured table to create the analysis rule
576
+ # for. Currently accepts the configured table ID.
577
+ #
578
+ # @option params [required, String] :analysis_rule_type
579
+ # The type of analysis rule. Valid values are AGGREGATION and LIST.
580
+ #
581
+ # @option params [required, Types::ConfiguredTableAnalysisRulePolicy] :analysis_rule_policy
582
+ # The entire created configured table analysis rule object.
583
+ #
584
+ # @return [Types::CreateConfiguredTableAnalysisRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
585
+ #
586
+ # * {Types::CreateConfiguredTableAnalysisRuleOutput#analysis_rule #analysis_rule} => Types::ConfiguredTableAnalysisRule
587
+ #
588
+ # @example Request syntax with placeholder values
589
+ #
590
+ # resp = client.create_configured_table_analysis_rule({
591
+ # configured_table_identifier: "ConfiguredTableIdentifier", # required
592
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
593
+ # analysis_rule_policy: { # required
594
+ # v1: {
595
+ # list: {
596
+ # join_columns: ["AnalysisRuleColumnName"], # required
597
+ # list_columns: ["AnalysisRuleColumnName"], # required
598
+ # },
599
+ # aggregation: {
600
+ # aggregate_columns: [ # required
601
+ # {
602
+ # column_names: ["AnalysisRuleColumnName"], # required
603
+ # function: "SUM", # required, accepts SUM, SUM_DISTINCT, COUNT, COUNT_DISTINCT, AVG
604
+ # },
605
+ # ],
606
+ # join_columns: ["AnalysisRuleColumnName"], # required
607
+ # join_required: "QUERY_RUNNER", # accepts QUERY_RUNNER
608
+ # dimension_columns: ["AnalysisRuleColumnName"], # required
609
+ # scalar_functions: ["TRUNC"], # required, accepts TRUNC, ABS, CEILING, FLOOR, LN, LOG, ROUND, SQRT, CAST, LOWER, RTRIM, UPPER, COALESCE
610
+ # output_constraints: [ # required
611
+ # {
612
+ # column_name: "AnalysisRuleColumnName", # required
613
+ # minimum: 1, # required
614
+ # type: "COUNT_DISTINCT", # required, accepts COUNT_DISTINCT
615
+ # },
616
+ # ],
617
+ # },
618
+ # },
619
+ # },
620
+ # })
621
+ #
622
+ # @example Response structure
623
+ #
624
+ # resp.analysis_rule.configured_table_id #=> String
625
+ # resp.analysis_rule.configured_table_arn #=> String
626
+ # resp.analysis_rule.policy.v1.list.join_columns #=> Array
627
+ # resp.analysis_rule.policy.v1.list.join_columns[0] #=> String
628
+ # resp.analysis_rule.policy.v1.list.list_columns #=> Array
629
+ # resp.analysis_rule.policy.v1.list.list_columns[0] #=> String
630
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns #=> Array
631
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].column_names #=> Array
632
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].column_names[0] #=> String
633
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].function #=> String, one of "SUM", "SUM_DISTINCT", "COUNT", "COUNT_DISTINCT", "AVG"
634
+ # resp.analysis_rule.policy.v1.aggregation.join_columns #=> Array
635
+ # resp.analysis_rule.policy.v1.aggregation.join_columns[0] #=> String
636
+ # resp.analysis_rule.policy.v1.aggregation.join_required #=> String, one of "QUERY_RUNNER"
637
+ # resp.analysis_rule.policy.v1.aggregation.dimension_columns #=> Array
638
+ # resp.analysis_rule.policy.v1.aggregation.dimension_columns[0] #=> String
639
+ # resp.analysis_rule.policy.v1.aggregation.scalar_functions #=> Array
640
+ # resp.analysis_rule.policy.v1.aggregation.scalar_functions[0] #=> String, one of "TRUNC", "ABS", "CEILING", "FLOOR", "LN", "LOG", "ROUND", "SQRT", "CAST", "LOWER", "RTRIM", "UPPER", "COALESCE"
641
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints #=> Array
642
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
643
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
644
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
645
+ # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST"
646
+ # resp.analysis_rule.create_time #=> Time
647
+ # resp.analysis_rule.update_time #=> Time
648
+ #
649
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateConfiguredTableAnalysisRule AWS API Documentation
650
+ #
651
+ # @overload create_configured_table_analysis_rule(params = {})
652
+ # @param [Hash] params ({})
653
+ def create_configured_table_analysis_rule(params = {}, options = {})
654
+ req = build_request(:create_configured_table_analysis_rule, params)
655
+ req.send_request(options)
656
+ end
657
+
658
+ # Creates a configured table association. A configured table association
659
+ # links a configured table with a collaboration.
660
+ #
661
+ # @option params [required, String] :name
662
+ # The name of the configured table association. This name is used to
663
+ # query the underlying configured table.
664
+ #
665
+ # @option params [String] :description
666
+ # A description for the configured table association.
667
+ #
668
+ # @option params [required, String] :membership_identifier
669
+ # A unique identifier for one of your memberships for a collaboration.
670
+ # The configured table is associated to the collaboration that this
671
+ # membership belongs to. Currently accepts a membership ID.
672
+ #
673
+ # @option params [required, String] :configured_table_identifier
674
+ # A unique identifier for the configured table to be associated to.
675
+ # Currently accepts a configured table ID.
676
+ #
677
+ # @option params [required, String] :role_arn
678
+ # The service will assume this role to access catalog metadata and query
679
+ # the table.
680
+ #
681
+ # @return [Types::CreateConfiguredTableAssociationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
682
+ #
683
+ # * {Types::CreateConfiguredTableAssociationOutput#configured_table_association #configured_table_association} => Types::ConfiguredTableAssociation
684
+ #
685
+ # @example Request syntax with placeholder values
686
+ #
687
+ # resp = client.create_configured_table_association({
688
+ # name: "TableAlias", # required
689
+ # description: "TableDescription",
690
+ # membership_identifier: "MembershipIdentifier", # required
691
+ # configured_table_identifier: "ConfiguredTableIdentifier", # required
692
+ # role_arn: "RoleArn", # required
693
+ # })
694
+ #
695
+ # @example Response structure
696
+ #
697
+ # resp.configured_table_association.arn #=> String
698
+ # resp.configured_table_association.id #=> String
699
+ # resp.configured_table_association.configured_table_id #=> String
700
+ # resp.configured_table_association.configured_table_arn #=> String
701
+ # resp.configured_table_association.membership_id #=> String
702
+ # resp.configured_table_association.membership_arn #=> String
703
+ # resp.configured_table_association.role_arn #=> String
704
+ # resp.configured_table_association.name #=> String
705
+ # resp.configured_table_association.description #=> String
706
+ # resp.configured_table_association.create_time #=> Time
707
+ # resp.configured_table_association.update_time #=> Time
708
+ #
709
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateConfiguredTableAssociation AWS API Documentation
710
+ #
711
+ # @overload create_configured_table_association(params = {})
712
+ # @param [Hash] params ({})
713
+ def create_configured_table_association(params = {}, options = {})
714
+ req = build_request(:create_configured_table_association, params)
715
+ req.send_request(options)
716
+ end
717
+
718
+ # Creates a membership for a specific collaboration identifier and joins
719
+ # the collaboration.
720
+ #
721
+ # @option params [required, String] :collaboration_identifier
722
+ # The unique ID for the associated collaboration.
723
+ #
724
+ # @option params [required, String] :query_log_status
725
+ # An indicator as to whether query logging has been enabled or disabled
726
+ # for the collaboration.
727
+ #
728
+ # @return [Types::CreateMembershipOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
729
+ #
730
+ # * {Types::CreateMembershipOutput#membership #membership} => Types::Membership
731
+ #
732
+ # @example Request syntax with placeholder values
733
+ #
734
+ # resp = client.create_membership({
735
+ # collaboration_identifier: "CollaborationIdentifier", # required
736
+ # query_log_status: "ENABLED", # required, accepts ENABLED, DISABLED
737
+ # })
738
+ #
739
+ # @example Response structure
740
+ #
741
+ # resp.membership.id #=> String
742
+ # resp.membership.arn #=> String
743
+ # resp.membership.collaboration_arn #=> String
744
+ # resp.membership.collaboration_id #=> String
745
+ # resp.membership.collaboration_creator_account_id #=> String
746
+ # resp.membership.collaboration_creator_display_name #=> String
747
+ # resp.membership.collaboration_name #=> String
748
+ # resp.membership.create_time #=> Time
749
+ # resp.membership.update_time #=> Time
750
+ # resp.membership.status #=> String, one of "ACTIVE", "REMOVED", "COLLABORATION_DELETED"
751
+ # resp.membership.member_abilities #=> Array
752
+ # resp.membership.member_abilities[0] #=> String, one of "CAN_QUERY", "CAN_RECEIVE_RESULTS"
753
+ # resp.membership.query_log_status #=> String, one of "ENABLED", "DISABLED"
754
+ #
755
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateMembership AWS API Documentation
756
+ #
757
+ # @overload create_membership(params = {})
758
+ # @param [Hash] params ({})
759
+ def create_membership(params = {}, options = {})
760
+ req = build_request(:create_membership, params)
761
+ req.send_request(options)
762
+ end
763
+
764
+ # Deletes a collaboration. It can only be called by the collaboration
765
+ # owner.
766
+ #
767
+ # @option params [required, String] :collaboration_identifier
768
+ # The identifier for the collaboration.
769
+ #
770
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
771
+ #
772
+ # @example Request syntax with placeholder values
773
+ #
774
+ # resp = client.delete_collaboration({
775
+ # collaboration_identifier: "CollaborationIdentifier", # required
776
+ # })
777
+ #
778
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteCollaboration AWS API Documentation
779
+ #
780
+ # @overload delete_collaboration(params = {})
781
+ # @param [Hash] params ({})
782
+ def delete_collaboration(params = {}, options = {})
783
+ req = build_request(:delete_collaboration, params)
784
+ req.send_request(options)
785
+ end
786
+
787
+ # Deletes a configured table.
788
+ #
789
+ # @option params [required, String] :configured_table_identifier
790
+ # The unique ID for the configured table to delete.
791
+ #
792
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
793
+ #
794
+ # @example Request syntax with placeholder values
795
+ #
796
+ # resp = client.delete_configured_table({
797
+ # configured_table_identifier: "ConfiguredTableIdentifier", # required
798
+ # })
799
+ #
800
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteConfiguredTable AWS API Documentation
801
+ #
802
+ # @overload delete_configured_table(params = {})
803
+ # @param [Hash] params ({})
804
+ def delete_configured_table(params = {}, options = {})
805
+ req = build_request(:delete_configured_table, params)
806
+ req.send_request(options)
807
+ end
808
+
809
+ # Deletes a configured table analysis rule.
810
+ #
811
+ # @option params [required, String] :configured_table_identifier
812
+ # The unique identifier for the configured table that the analysis rule
813
+ # applies to. Currently accepts the configured table ID.
814
+ #
815
+ # @option params [required, String] :analysis_rule_type
816
+ # The analysis rule type to be deleted. Configured table analysis rules
817
+ # are uniquely identified by their configured table identifier and
818
+ # analysis rule type.
819
+ #
820
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
821
+ #
822
+ # @example Request syntax with placeholder values
823
+ #
824
+ # resp = client.delete_configured_table_analysis_rule({
825
+ # configured_table_identifier: "ConfiguredTableIdentifier", # required
826
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
827
+ # })
828
+ #
829
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteConfiguredTableAnalysisRule AWS API Documentation
830
+ #
831
+ # @overload delete_configured_table_analysis_rule(params = {})
832
+ # @param [Hash] params ({})
833
+ def delete_configured_table_analysis_rule(params = {}, options = {})
834
+ req = build_request(:delete_configured_table_analysis_rule, params)
835
+ req.send_request(options)
836
+ end
837
+
838
+ # Deletes a configured table association.
839
+ #
840
+ # @option params [required, String] :configured_table_association_identifier
841
+ # The unique ID for the configured table association to be deleted.
842
+ # Currently accepts the configured table ID.
843
+ #
844
+ # @option params [required, String] :membership_identifier
845
+ # A unique identifier for the membership that the configured table
846
+ # association belongs to. Currently accepts the membership ID.
847
+ #
848
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
849
+ #
850
+ # @example Request syntax with placeholder values
851
+ #
852
+ # resp = client.delete_configured_table_association({
853
+ # configured_table_association_identifier: "ConfiguredTableAssociationIdentifier", # required
854
+ # membership_identifier: "MembershipIdentifier", # required
855
+ # })
856
+ #
857
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteConfiguredTableAssociation AWS API Documentation
858
+ #
859
+ # @overload delete_configured_table_association(params = {})
860
+ # @param [Hash] params ({})
861
+ def delete_configured_table_association(params = {}, options = {})
862
+ req = build_request(:delete_configured_table_association, params)
863
+ req.send_request(options)
864
+ end
865
+
866
+ # Removes the specified member from a collaboration. The removed member
867
+ # is placed in the Removed status and can't interact with the
868
+ # collaboration. The removed member's data is inaccessible to active
869
+ # members of the collaboration.
870
+ #
871
+ # @option params [required, String] :collaboration_identifier
872
+ # The unique identifier for the associated collaboration.
873
+ #
874
+ # @option params [required, String] :account_id
875
+ # The account ID of the member to remove.
876
+ #
877
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
878
+ #
879
+ # @example Request syntax with placeholder values
880
+ #
881
+ # resp = client.delete_member({
882
+ # collaboration_identifier: "CollaborationIdentifier", # required
883
+ # account_id: "AccountId", # required
884
+ # })
885
+ #
886
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteMember AWS API Documentation
887
+ #
888
+ # @overload delete_member(params = {})
889
+ # @param [Hash] params ({})
890
+ def delete_member(params = {}, options = {})
891
+ req = build_request(:delete_member, params)
892
+ req.send_request(options)
893
+ end
894
+
895
+ # Deletes a specified membership. All resources under a membership must
896
+ # be deleted.
897
+ #
898
+ # @option params [required, String] :membership_identifier
899
+ # The identifier for a membership resource.
900
+ #
901
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
902
+ #
903
+ # @example Request syntax with placeholder values
904
+ #
905
+ # resp = client.delete_membership({
906
+ # membership_identifier: "MembershipIdentifier", # required
907
+ # })
908
+ #
909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteMembership AWS API Documentation
910
+ #
911
+ # @overload delete_membership(params = {})
912
+ # @param [Hash] params ({})
913
+ def delete_membership(params = {}, options = {})
914
+ req = build_request(:delete_membership, params)
915
+ req.send_request(options)
916
+ end
917
+
918
+ # Returns metadata about a collaboration.
919
+ #
920
+ # @option params [required, String] :collaboration_identifier
921
+ # The identifier for the collaboration.
922
+ #
923
+ # @return [Types::GetCollaborationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
924
+ #
925
+ # * {Types::GetCollaborationOutput#collaboration #collaboration} => Types::Collaboration
926
+ #
927
+ # @example Request syntax with placeholder values
928
+ #
929
+ # resp = client.get_collaboration({
930
+ # collaboration_identifier: "CollaborationIdentifier", # required
931
+ # })
932
+ #
933
+ # @example Response structure
934
+ #
935
+ # resp.collaboration.id #=> String
936
+ # resp.collaboration.arn #=> String
937
+ # resp.collaboration.name #=> String
938
+ # resp.collaboration.description #=> String
939
+ # resp.collaboration.creator_account_id #=> String
940
+ # resp.collaboration.creator_display_name #=> String
941
+ # resp.collaboration.create_time #=> Time
942
+ # resp.collaboration.update_time #=> Time
943
+ # resp.collaboration.member_status #=> String, one of "INVITED", "ACTIVE", "LEFT", "REMOVED"
944
+ # resp.collaboration.membership_id #=> String
945
+ # resp.collaboration.membership_arn #=> String
946
+ # resp.collaboration.data_encryption_metadata.allow_cleartext #=> Boolean
947
+ # resp.collaboration.data_encryption_metadata.allow_duplicates #=> Boolean
948
+ # resp.collaboration.data_encryption_metadata.allow_joins_on_columns_with_different_names #=> Boolean
949
+ # resp.collaboration.data_encryption_metadata.preserve_nulls #=> Boolean
950
+ # resp.collaboration.query_log_status #=> String, one of "ENABLED", "DISABLED"
951
+ #
952
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetCollaboration AWS API Documentation
953
+ #
954
+ # @overload get_collaboration(params = {})
955
+ # @param [Hash] params ({})
956
+ def get_collaboration(params = {}, options = {})
957
+ req = build_request(:get_collaboration, params)
958
+ req.send_request(options)
959
+ end
960
+
961
+ # Retrieves a configured table.
962
+ #
963
+ # @option params [required, String] :configured_table_identifier
964
+ # The unique ID for the configured table to retrieve.
965
+ #
966
+ # @return [Types::GetConfiguredTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
967
+ #
968
+ # * {Types::GetConfiguredTableOutput#configured_table #configured_table} => Types::ConfiguredTable
969
+ #
970
+ # @example Request syntax with placeholder values
971
+ #
972
+ # resp = client.get_configured_table({
973
+ # configured_table_identifier: "ConfiguredTableIdentifier", # required
974
+ # })
975
+ #
976
+ # @example Response structure
977
+ #
978
+ # resp.configured_table.id #=> String
979
+ # resp.configured_table.arn #=> String
980
+ # resp.configured_table.name #=> String
981
+ # resp.configured_table.description #=> String
982
+ # resp.configured_table.table_reference.glue.table_name #=> String
983
+ # resp.configured_table.table_reference.glue.database_name #=> String
984
+ # resp.configured_table.create_time #=> Time
985
+ # resp.configured_table.update_time #=> Time
986
+ # resp.configured_table.analysis_rule_types #=> Array
987
+ # resp.configured_table.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
988
+ # resp.configured_table.analysis_method #=> String, one of "DIRECT_QUERY"
989
+ # resp.configured_table.allowed_columns #=> Array
990
+ # resp.configured_table.allowed_columns[0] #=> String
991
+ #
992
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetConfiguredTable AWS API Documentation
993
+ #
994
+ # @overload get_configured_table(params = {})
995
+ # @param [Hash] params ({})
996
+ def get_configured_table(params = {}, options = {})
997
+ req = build_request(:get_configured_table, params)
998
+ req.send_request(options)
999
+ end
1000
+
1001
+ # Retrieves a configured table analysis rule.
1002
+ #
1003
+ # @option params [required, String] :configured_table_identifier
1004
+ # The unique identifier for the configured table to retrieve. Currently
1005
+ # accepts the configured table ID.
1006
+ #
1007
+ # @option params [required, String] :analysis_rule_type
1008
+ # The analysis rule to be retrieved. Configured table analysis rules are
1009
+ # uniquely identified by their configured table identifier and analysis
1010
+ # rule type.
1011
+ #
1012
+ # @return [Types::GetConfiguredTableAnalysisRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1013
+ #
1014
+ # * {Types::GetConfiguredTableAnalysisRuleOutput#analysis_rule #analysis_rule} => Types::ConfiguredTableAnalysisRule
1015
+ #
1016
+ # @example Request syntax with placeholder values
1017
+ #
1018
+ # resp = client.get_configured_table_analysis_rule({
1019
+ # configured_table_identifier: "ConfiguredTableIdentifier", # required
1020
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
1021
+ # })
1022
+ #
1023
+ # @example Response structure
1024
+ #
1025
+ # resp.analysis_rule.configured_table_id #=> String
1026
+ # resp.analysis_rule.configured_table_arn #=> String
1027
+ # resp.analysis_rule.policy.v1.list.join_columns #=> Array
1028
+ # resp.analysis_rule.policy.v1.list.join_columns[0] #=> String
1029
+ # resp.analysis_rule.policy.v1.list.list_columns #=> Array
1030
+ # resp.analysis_rule.policy.v1.list.list_columns[0] #=> String
1031
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns #=> Array
1032
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].column_names #=> Array
1033
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].column_names[0] #=> String
1034
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].function #=> String, one of "SUM", "SUM_DISTINCT", "COUNT", "COUNT_DISTINCT", "AVG"
1035
+ # resp.analysis_rule.policy.v1.aggregation.join_columns #=> Array
1036
+ # resp.analysis_rule.policy.v1.aggregation.join_columns[0] #=> String
1037
+ # resp.analysis_rule.policy.v1.aggregation.join_required #=> String, one of "QUERY_RUNNER"
1038
+ # resp.analysis_rule.policy.v1.aggregation.dimension_columns #=> Array
1039
+ # resp.analysis_rule.policy.v1.aggregation.dimension_columns[0] #=> String
1040
+ # resp.analysis_rule.policy.v1.aggregation.scalar_functions #=> Array
1041
+ # resp.analysis_rule.policy.v1.aggregation.scalar_functions[0] #=> String, one of "TRUNC", "ABS", "CEILING", "FLOOR", "LN", "LOG", "ROUND", "SQRT", "CAST", "LOWER", "RTRIM", "UPPER", "COALESCE"
1042
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints #=> Array
1043
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
1044
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
1045
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
1046
+ # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST"
1047
+ # resp.analysis_rule.create_time #=> Time
1048
+ # resp.analysis_rule.update_time #=> Time
1049
+ #
1050
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetConfiguredTableAnalysisRule AWS API Documentation
1051
+ #
1052
+ # @overload get_configured_table_analysis_rule(params = {})
1053
+ # @param [Hash] params ({})
1054
+ def get_configured_table_analysis_rule(params = {}, options = {})
1055
+ req = build_request(:get_configured_table_analysis_rule, params)
1056
+ req.send_request(options)
1057
+ end
1058
+
1059
+ # Retrieves a configured table association.
1060
+ #
1061
+ # @option params [required, String] :configured_table_association_identifier
1062
+ # The unique ID for the configured table association to retrieve.
1063
+ # Currently accepts the configured table ID.
1064
+ #
1065
+ # @option params [required, String] :membership_identifier
1066
+ # A unique identifier for the membership that the configured table
1067
+ # association belongs to. Currently accepts the membership ID.
1068
+ #
1069
+ # @return [Types::GetConfiguredTableAssociationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1070
+ #
1071
+ # * {Types::GetConfiguredTableAssociationOutput#configured_table_association #configured_table_association} => Types::ConfiguredTableAssociation
1072
+ #
1073
+ # @example Request syntax with placeholder values
1074
+ #
1075
+ # resp = client.get_configured_table_association({
1076
+ # configured_table_association_identifier: "ConfiguredTableAssociationIdentifier", # required
1077
+ # membership_identifier: "MembershipIdentifier", # required
1078
+ # })
1079
+ #
1080
+ # @example Response structure
1081
+ #
1082
+ # resp.configured_table_association.arn #=> String
1083
+ # resp.configured_table_association.id #=> String
1084
+ # resp.configured_table_association.configured_table_id #=> String
1085
+ # resp.configured_table_association.configured_table_arn #=> String
1086
+ # resp.configured_table_association.membership_id #=> String
1087
+ # resp.configured_table_association.membership_arn #=> String
1088
+ # resp.configured_table_association.role_arn #=> String
1089
+ # resp.configured_table_association.name #=> String
1090
+ # resp.configured_table_association.description #=> String
1091
+ # resp.configured_table_association.create_time #=> Time
1092
+ # resp.configured_table_association.update_time #=> Time
1093
+ #
1094
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetConfiguredTableAssociation AWS API Documentation
1095
+ #
1096
+ # @overload get_configured_table_association(params = {})
1097
+ # @param [Hash] params ({})
1098
+ def get_configured_table_association(params = {}, options = {})
1099
+ req = build_request(:get_configured_table_association, params)
1100
+ req.send_request(options)
1101
+ end
1102
+
1103
+ # Retrieves a specified membership for an identifier.
1104
+ #
1105
+ # @option params [required, String] :membership_identifier
1106
+ # The identifier for a membership resource.
1107
+ #
1108
+ # @return [Types::GetMembershipOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1109
+ #
1110
+ # * {Types::GetMembershipOutput#membership #membership} => Types::Membership
1111
+ #
1112
+ # @example Request syntax with placeholder values
1113
+ #
1114
+ # resp = client.get_membership({
1115
+ # membership_identifier: "MembershipIdentifier", # required
1116
+ # })
1117
+ #
1118
+ # @example Response structure
1119
+ #
1120
+ # resp.membership.id #=> String
1121
+ # resp.membership.arn #=> String
1122
+ # resp.membership.collaboration_arn #=> String
1123
+ # resp.membership.collaboration_id #=> String
1124
+ # resp.membership.collaboration_creator_account_id #=> String
1125
+ # resp.membership.collaboration_creator_display_name #=> String
1126
+ # resp.membership.collaboration_name #=> String
1127
+ # resp.membership.create_time #=> Time
1128
+ # resp.membership.update_time #=> Time
1129
+ # resp.membership.status #=> String, one of "ACTIVE", "REMOVED", "COLLABORATION_DELETED"
1130
+ # resp.membership.member_abilities #=> Array
1131
+ # resp.membership.member_abilities[0] #=> String, one of "CAN_QUERY", "CAN_RECEIVE_RESULTS"
1132
+ # resp.membership.query_log_status #=> String, one of "ENABLED", "DISABLED"
1133
+ #
1134
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetMembership AWS API Documentation
1135
+ #
1136
+ # @overload get_membership(params = {})
1137
+ # @param [Hash] params ({})
1138
+ def get_membership(params = {}, options = {})
1139
+ req = build_request(:get_membership, params)
1140
+ req.send_request(options)
1141
+ end
1142
+
1143
+ # Returns query processing metadata.
1144
+ #
1145
+ # @option params [required, String] :membership_identifier
1146
+ # The identifier for a membership in a protected query instance.
1147
+ #
1148
+ # @option params [required, String] :protected_query_identifier
1149
+ # The identifier for a protected query instance.
1150
+ #
1151
+ # @return [Types::GetProtectedQueryOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1152
+ #
1153
+ # * {Types::GetProtectedQueryOutput#protected_query #protected_query} => Types::ProtectedQuery
1154
+ #
1155
+ # @example Request syntax with placeholder values
1156
+ #
1157
+ # resp = client.get_protected_query({
1158
+ # membership_identifier: "MembershipIdentifier", # required
1159
+ # protected_query_identifier: "ProtectedQueryIdentifier", # required
1160
+ # })
1161
+ #
1162
+ # @example Response structure
1163
+ #
1164
+ # resp.protected_query.id #=> String
1165
+ # resp.protected_query.membership_id #=> String
1166
+ # resp.protected_query.membership_arn #=> String
1167
+ # resp.protected_query.create_time #=> Time
1168
+ # resp.protected_query.sql_parameters.query_string #=> String
1169
+ # resp.protected_query.status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
1170
+ # resp.protected_query.result_configuration.output_configuration.s3.result_format #=> String, one of "CSV", "PARQUET"
1171
+ # resp.protected_query.result_configuration.output_configuration.s3.bucket #=> String
1172
+ # resp.protected_query.result_configuration.output_configuration.s3.key_prefix #=> String
1173
+ # resp.protected_query.statistics.total_duration_in_millis #=> Integer
1174
+ # resp.protected_query.result.output.s3.location #=> String
1175
+ # resp.protected_query.error.message #=> String
1176
+ # resp.protected_query.error.code #=> String
1177
+ #
1178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetProtectedQuery AWS API Documentation
1179
+ #
1180
+ # @overload get_protected_query(params = {})
1181
+ # @param [Hash] params ({})
1182
+ def get_protected_query(params = {}, options = {})
1183
+ req = build_request(:get_protected_query, params)
1184
+ req.send_request(options)
1185
+ end
1186
+
1187
+ # Retrieves the schema for a relation within a collaboration.
1188
+ #
1189
+ # @option params [required, String] :collaboration_identifier
1190
+ # A unique identifier for the collaboration that the schema belongs to.
1191
+ # Currently accepts a collaboration ID.
1192
+ #
1193
+ # @option params [required, String] :name
1194
+ # The name of the relation to retrieve the schema for.
1195
+ #
1196
+ # @return [Types::GetSchemaOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1197
+ #
1198
+ # * {Types::GetSchemaOutput#schema #schema} => Types::Schema
1199
+ #
1200
+ # @example Request syntax with placeholder values
1201
+ #
1202
+ # resp = client.get_schema({
1203
+ # collaboration_identifier: "CollaborationIdentifier", # required
1204
+ # name: "TableAlias", # required
1205
+ # })
1206
+ #
1207
+ # @example Response structure
1208
+ #
1209
+ # resp.schema.columns #=> Array
1210
+ # resp.schema.columns[0].name #=> String
1211
+ # resp.schema.columns[0].type #=> String
1212
+ # resp.schema.partition_keys #=> Array
1213
+ # resp.schema.partition_keys[0].name #=> String
1214
+ # resp.schema.partition_keys[0].type #=> String
1215
+ # resp.schema.analysis_rule_types #=> Array
1216
+ # resp.schema.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
1217
+ # resp.schema.analysis_method #=> String, one of "DIRECT_QUERY"
1218
+ # resp.schema.creator_account_id #=> String
1219
+ # resp.schema.name #=> String
1220
+ # resp.schema.collaboration_id #=> String
1221
+ # resp.schema.collaboration_arn #=> String
1222
+ # resp.schema.description #=> String
1223
+ # resp.schema.create_time #=> Time
1224
+ # resp.schema.update_time #=> Time
1225
+ # resp.schema.type #=> String, one of "TABLE"
1226
+ #
1227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetSchema AWS API Documentation
1228
+ #
1229
+ # @overload get_schema(params = {})
1230
+ # @param [Hash] params ({})
1231
+ def get_schema(params = {}, options = {})
1232
+ req = build_request(:get_schema, params)
1233
+ req.send_request(options)
1234
+ end
1235
+
1236
+ # Retrieves a schema analysis rule.
1237
+ #
1238
+ # @option params [required, String] :collaboration_identifier
1239
+ # A unique identifier for the collaboration that the schema belongs to.
1240
+ # Currently accepts a collaboration ID.
1241
+ #
1242
+ # @option params [required, String] :name
1243
+ # The name of the schema to retrieve the analysis rule for.
1244
+ #
1245
+ # @option params [required, String] :type
1246
+ # The type of the schema analysis rule to retrieve. Schema analysis
1247
+ # rules are uniquely identified by a combination of the collaboration,
1248
+ # the schema name, and their type.
1249
+ #
1250
+ # @return [Types::GetSchemaAnalysisRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1251
+ #
1252
+ # * {Types::GetSchemaAnalysisRuleOutput#analysis_rule #analysis_rule} => Types::AnalysisRule
1253
+ #
1254
+ # @example Request syntax with placeholder values
1255
+ #
1256
+ # resp = client.get_schema_analysis_rule({
1257
+ # collaboration_identifier: "CollaborationIdentifier", # required
1258
+ # name: "TableAlias", # required
1259
+ # type: "AGGREGATION", # required, accepts AGGREGATION, LIST
1260
+ # })
1261
+ #
1262
+ # @example Response structure
1263
+ #
1264
+ # resp.analysis_rule.collaboration_id #=> String
1265
+ # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST"
1266
+ # resp.analysis_rule.name #=> String
1267
+ # resp.analysis_rule.create_time #=> Time
1268
+ # resp.analysis_rule.update_time #=> Time
1269
+ # resp.analysis_rule.policy.v1.list.join_columns #=> Array
1270
+ # resp.analysis_rule.policy.v1.list.join_columns[0] #=> String
1271
+ # resp.analysis_rule.policy.v1.list.list_columns #=> Array
1272
+ # resp.analysis_rule.policy.v1.list.list_columns[0] #=> String
1273
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns #=> Array
1274
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].column_names #=> Array
1275
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].column_names[0] #=> String
1276
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].function #=> String, one of "SUM", "SUM_DISTINCT", "COUNT", "COUNT_DISTINCT", "AVG"
1277
+ # resp.analysis_rule.policy.v1.aggregation.join_columns #=> Array
1278
+ # resp.analysis_rule.policy.v1.aggregation.join_columns[0] #=> String
1279
+ # resp.analysis_rule.policy.v1.aggregation.join_required #=> String, one of "QUERY_RUNNER"
1280
+ # resp.analysis_rule.policy.v1.aggregation.dimension_columns #=> Array
1281
+ # resp.analysis_rule.policy.v1.aggregation.dimension_columns[0] #=> String
1282
+ # resp.analysis_rule.policy.v1.aggregation.scalar_functions #=> Array
1283
+ # resp.analysis_rule.policy.v1.aggregation.scalar_functions[0] #=> String, one of "TRUNC", "ABS", "CEILING", "FLOOR", "LN", "LOG", "ROUND", "SQRT", "CAST", "LOWER", "RTRIM", "UPPER", "COALESCE"
1284
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints #=> Array
1285
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
1286
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
1287
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
1288
+ #
1289
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetSchemaAnalysisRule AWS API Documentation
1290
+ #
1291
+ # @overload get_schema_analysis_rule(params = {})
1292
+ # @param [Hash] params ({})
1293
+ def get_schema_analysis_rule(params = {}, options = {})
1294
+ req = build_request(:get_schema_analysis_rule, params)
1295
+ req.send_request(options)
1296
+ end
1297
+
1298
+ # Lists collaborations the caller owns, is active in, or has been
1299
+ # invited to.
1300
+ #
1301
+ # @option params [String] :next_token
1302
+ # The token value retrieved from a previous call to access the next page
1303
+ # of results.
1304
+ #
1305
+ # @option params [Integer] :max_results
1306
+ # The maximum size of the results that is returned per call. Service
1307
+ # chooses a default if it has not been set. Service may return a
1308
+ # nextToken even if the maximum results has not been met.
1309
+ #
1310
+ # @option params [String] :member_status
1311
+ # The caller's status in a collaboration.
1312
+ #
1313
+ # @return [Types::ListCollaborationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1314
+ #
1315
+ # * {Types::ListCollaborationsOutput#next_token #next_token} => String
1316
+ # * {Types::ListCollaborationsOutput#collaboration_list #collaboration_list} => Array&lt;Types::CollaborationSummary&gt;
1317
+ #
1318
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1319
+ #
1320
+ # @example Request syntax with placeholder values
1321
+ #
1322
+ # resp = client.list_collaborations({
1323
+ # next_token: "PaginationToken",
1324
+ # max_results: 1,
1325
+ # member_status: "INVITED", # accepts INVITED, ACTIVE
1326
+ # })
1327
+ #
1328
+ # @example Response structure
1329
+ #
1330
+ # resp.next_token #=> String
1331
+ # resp.collaboration_list #=> Array
1332
+ # resp.collaboration_list[0].id #=> String
1333
+ # resp.collaboration_list[0].arn #=> String
1334
+ # resp.collaboration_list[0].name #=> String
1335
+ # resp.collaboration_list[0].creator_account_id #=> String
1336
+ # resp.collaboration_list[0].creator_display_name #=> String
1337
+ # resp.collaboration_list[0].create_time #=> Time
1338
+ # resp.collaboration_list[0].update_time #=> Time
1339
+ # resp.collaboration_list[0].member_status #=> String, one of "INVITED", "ACTIVE", "LEFT", "REMOVED"
1340
+ # resp.collaboration_list[0].membership_id #=> String
1341
+ # resp.collaboration_list[0].membership_arn #=> String
1342
+ #
1343
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListCollaborations AWS API Documentation
1344
+ #
1345
+ # @overload list_collaborations(params = {})
1346
+ # @param [Hash] params ({})
1347
+ def list_collaborations(params = {}, options = {})
1348
+ req = build_request(:list_collaborations, params)
1349
+ req.send_request(options)
1350
+ end
1351
+
1352
+ # Lists configured table associations for a membership.
1353
+ #
1354
+ # @option params [required, String] :membership_identifier
1355
+ # A unique identifier for the membership to list configured table
1356
+ # associations for. Currently accepts the membership ID.
1357
+ #
1358
+ # @option params [String] :next_token
1359
+ # The token value retrieved from a previous call to access the next page
1360
+ # of results.
1361
+ #
1362
+ # @option params [Integer] :max_results
1363
+ # The maximum size of the results that is returned per call.
1364
+ #
1365
+ # @return [Types::ListConfiguredTableAssociationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1366
+ #
1367
+ # * {Types::ListConfiguredTableAssociationsOutput#configured_table_association_summaries #configured_table_association_summaries} => Array&lt;Types::ConfiguredTableAssociationSummary&gt;
1368
+ # * {Types::ListConfiguredTableAssociationsOutput#next_token #next_token} => String
1369
+ #
1370
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1371
+ #
1372
+ # @example Request syntax with placeholder values
1373
+ #
1374
+ # resp = client.list_configured_table_associations({
1375
+ # membership_identifier: "MembershipIdentifier", # required
1376
+ # next_token: "PaginationToken",
1377
+ # max_results: 1,
1378
+ # })
1379
+ #
1380
+ # @example Response structure
1381
+ #
1382
+ # resp.configured_table_association_summaries #=> Array
1383
+ # resp.configured_table_association_summaries[0].configured_table_id #=> String
1384
+ # resp.configured_table_association_summaries[0].membership_id #=> String
1385
+ # resp.configured_table_association_summaries[0].membership_arn #=> String
1386
+ # resp.configured_table_association_summaries[0].name #=> String
1387
+ # resp.configured_table_association_summaries[0].create_time #=> Time
1388
+ # resp.configured_table_association_summaries[0].update_time #=> Time
1389
+ # resp.configured_table_association_summaries[0].id #=> String
1390
+ # resp.configured_table_association_summaries[0].arn #=> String
1391
+ # resp.next_token #=> String
1392
+ #
1393
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListConfiguredTableAssociations AWS API Documentation
1394
+ #
1395
+ # @overload list_configured_table_associations(params = {})
1396
+ # @param [Hash] params ({})
1397
+ def list_configured_table_associations(params = {}, options = {})
1398
+ req = build_request(:list_configured_table_associations, params)
1399
+ req.send_request(options)
1400
+ end
1401
+
1402
+ # Lists configured tables.
1403
+ #
1404
+ # @option params [String] :next_token
1405
+ # The token value retrieved from a previous call to access the next page
1406
+ # of results.
1407
+ #
1408
+ # @option params [Integer] :max_results
1409
+ # The maximum size of the results that is returned per call.
1410
+ #
1411
+ # @return [Types::ListConfiguredTablesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1412
+ #
1413
+ # * {Types::ListConfiguredTablesOutput#configured_table_summaries #configured_table_summaries} => Array&lt;Types::ConfiguredTableSummary&gt;
1414
+ # * {Types::ListConfiguredTablesOutput#next_token #next_token} => String
1415
+ #
1416
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1417
+ #
1418
+ # @example Request syntax with placeholder values
1419
+ #
1420
+ # resp = client.list_configured_tables({
1421
+ # next_token: "PaginationToken",
1422
+ # max_results: 1,
1423
+ # })
1424
+ #
1425
+ # @example Response structure
1426
+ #
1427
+ # resp.configured_table_summaries #=> Array
1428
+ # resp.configured_table_summaries[0].id #=> String
1429
+ # resp.configured_table_summaries[0].arn #=> String
1430
+ # resp.configured_table_summaries[0].name #=> String
1431
+ # resp.configured_table_summaries[0].create_time #=> Time
1432
+ # resp.configured_table_summaries[0].update_time #=> Time
1433
+ # resp.configured_table_summaries[0].analysis_rule_types #=> Array
1434
+ # resp.configured_table_summaries[0].analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
1435
+ # resp.configured_table_summaries[0].analysis_method #=> String, one of "DIRECT_QUERY"
1436
+ # resp.next_token #=> String
1437
+ #
1438
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListConfiguredTables AWS API Documentation
1439
+ #
1440
+ # @overload list_configured_tables(params = {})
1441
+ # @param [Hash] params ({})
1442
+ def list_configured_tables(params = {}, options = {})
1443
+ req = build_request(:list_configured_tables, params)
1444
+ req.send_request(options)
1445
+ end
1446
+
1447
+ # Lists all members within a collaboration.
1448
+ #
1449
+ # @option params [required, String] :collaboration_identifier
1450
+ # The identifier of the collaboration in which the members are listed.
1451
+ #
1452
+ # @option params [String] :next_token
1453
+ # The token value retrieved from a previous call to access the next page
1454
+ # of results.
1455
+ #
1456
+ # @option params [Integer] :max_results
1457
+ # The maximum size of the results that is returned per call.
1458
+ #
1459
+ # @return [Types::ListMembersOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1460
+ #
1461
+ # * {Types::ListMembersOutput#next_token #next_token} => String
1462
+ # * {Types::ListMembersOutput#member_summaries #member_summaries} => Array&lt;Types::MemberSummary&gt;
1463
+ #
1464
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1465
+ #
1466
+ # @example Request syntax with placeholder values
1467
+ #
1468
+ # resp = client.list_members({
1469
+ # collaboration_identifier: "CollaborationIdentifier", # required
1470
+ # next_token: "PaginationToken",
1471
+ # max_results: 1,
1472
+ # })
1473
+ #
1474
+ # @example Response structure
1475
+ #
1476
+ # resp.next_token #=> String
1477
+ # resp.member_summaries #=> Array
1478
+ # resp.member_summaries[0].account_id #=> String
1479
+ # resp.member_summaries[0].status #=> String, one of "INVITED", "ACTIVE", "LEFT", "REMOVED"
1480
+ # resp.member_summaries[0].display_name #=> String
1481
+ # resp.member_summaries[0].abilities #=> Array
1482
+ # resp.member_summaries[0].abilities[0] #=> String, one of "CAN_QUERY", "CAN_RECEIVE_RESULTS"
1483
+ # resp.member_summaries[0].create_time #=> Time
1484
+ # resp.member_summaries[0].update_time #=> Time
1485
+ # resp.member_summaries[0].membership_id #=> String
1486
+ # resp.member_summaries[0].membership_arn #=> String
1487
+ #
1488
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListMembers AWS API Documentation
1489
+ #
1490
+ # @overload list_members(params = {})
1491
+ # @param [Hash] params ({})
1492
+ def list_members(params = {}, options = {})
1493
+ req = build_request(:list_members, params)
1494
+ req.send_request(options)
1495
+ end
1496
+
1497
+ # Lists all memberships resources within the caller's account.
1498
+ #
1499
+ # @option params [String] :next_token
1500
+ # The token value retrieved from a previous call to access the next page
1501
+ # of results.
1502
+ #
1503
+ # @option params [Integer] :max_results
1504
+ # The maximum size of the results that is returned per call.
1505
+ #
1506
+ # @option params [String] :status
1507
+ # A filter which will return only memberships in the specified status.
1508
+ #
1509
+ # @return [Types::ListMembershipsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1510
+ #
1511
+ # * {Types::ListMembershipsOutput#next_token #next_token} => String
1512
+ # * {Types::ListMembershipsOutput#membership_summaries #membership_summaries} => Array&lt;Types::MembershipSummary&gt;
1513
+ #
1514
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1515
+ #
1516
+ # @example Request syntax with placeholder values
1517
+ #
1518
+ # resp = client.list_memberships({
1519
+ # next_token: "PaginationToken",
1520
+ # max_results: 1,
1521
+ # status: "ACTIVE", # accepts ACTIVE, REMOVED, COLLABORATION_DELETED
1522
+ # })
1523
+ #
1524
+ # @example Response structure
1525
+ #
1526
+ # resp.next_token #=> String
1527
+ # resp.membership_summaries #=> Array
1528
+ # resp.membership_summaries[0].id #=> String
1529
+ # resp.membership_summaries[0].arn #=> String
1530
+ # resp.membership_summaries[0].collaboration_arn #=> String
1531
+ # resp.membership_summaries[0].collaboration_id #=> String
1532
+ # resp.membership_summaries[0].collaboration_creator_account_id #=> String
1533
+ # resp.membership_summaries[0].collaboration_creator_display_name #=> String
1534
+ # resp.membership_summaries[0].collaboration_name #=> String
1535
+ # resp.membership_summaries[0].create_time #=> Time
1536
+ # resp.membership_summaries[0].update_time #=> Time
1537
+ # resp.membership_summaries[0].status #=> String, one of "ACTIVE", "REMOVED", "COLLABORATION_DELETED"
1538
+ # resp.membership_summaries[0].member_abilities #=> Array
1539
+ # resp.membership_summaries[0].member_abilities[0] #=> String, one of "CAN_QUERY", "CAN_RECEIVE_RESULTS"
1540
+ #
1541
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListMemberships AWS API Documentation
1542
+ #
1543
+ # @overload list_memberships(params = {})
1544
+ # @param [Hash] params ({})
1545
+ def list_memberships(params = {}, options = {})
1546
+ req = build_request(:list_memberships, params)
1547
+ req.send_request(options)
1548
+ end
1549
+
1550
+ # Lists protected queries, sorted by the most recent query.
1551
+ #
1552
+ # @option params [required, String] :membership_identifier
1553
+ # The identifier for the membership in the collaboration.
1554
+ #
1555
+ # @option params [String] :status
1556
+ # A filter on the status of the protected query.
1557
+ #
1558
+ # @option params [String] :next_token
1559
+ # The token value retrieved from a previous call to access the next page
1560
+ # of results.
1561
+ #
1562
+ # @option params [Integer] :max_results
1563
+ # The maximum size of the results that is returned per call. Service
1564
+ # chooses a default if it has not been set. Service can return a
1565
+ # nextToken even if the maximum results has not been met.
1566
+ #
1567
+ # @return [Types::ListProtectedQueriesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1568
+ #
1569
+ # * {Types::ListProtectedQueriesOutput#next_token #next_token} => String
1570
+ # * {Types::ListProtectedQueriesOutput#protected_queries #protected_queries} => Array&lt;Types::ProtectedQuerySummary&gt;
1571
+ #
1572
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1573
+ #
1574
+ # @example Request syntax with placeholder values
1575
+ #
1576
+ # resp = client.list_protected_queries({
1577
+ # membership_identifier: "MembershipIdentifier", # required
1578
+ # status: "SUBMITTED", # accepts SUBMITTED, STARTED, CANCELLED, CANCELLING, FAILED, SUCCESS, TIMED_OUT
1579
+ # next_token: "PaginationToken",
1580
+ # max_results: 1,
1581
+ # })
1582
+ #
1583
+ # @example Response structure
1584
+ #
1585
+ # resp.next_token #=> String
1586
+ # resp.protected_queries #=> Array
1587
+ # resp.protected_queries[0].id #=> String
1588
+ # resp.protected_queries[0].membership_id #=> String
1589
+ # resp.protected_queries[0].membership_arn #=> String
1590
+ # resp.protected_queries[0].create_time #=> Time
1591
+ # resp.protected_queries[0].status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
1592
+ #
1593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListProtectedQueries AWS API Documentation
1594
+ #
1595
+ # @overload list_protected_queries(params = {})
1596
+ # @param [Hash] params ({})
1597
+ def list_protected_queries(params = {}, options = {})
1598
+ req = build_request(:list_protected_queries, params)
1599
+ req.send_request(options)
1600
+ end
1601
+
1602
+ # Lists the schemas for relations within a collaboration.
1603
+ #
1604
+ # @option params [required, String] :collaboration_identifier
1605
+ # A unique identifier for the collaboration that the schema belongs to.
1606
+ # Currently accepts a collaboration ID.
1607
+ #
1608
+ # @option params [String] :schema_type
1609
+ # If present, filter schemas by schema type. The only valid schema type
1610
+ # is currently `TABLE`.
1611
+ #
1612
+ # @option params [String] :next_token
1613
+ # The token value retrieved from a previous call to access the next page
1614
+ # of results.
1615
+ #
1616
+ # @option params [Integer] :max_results
1617
+ # The maximum size of the results that is returned per call.
1618
+ #
1619
+ # @return [Types::ListSchemasOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1620
+ #
1621
+ # * {Types::ListSchemasOutput#schema_summaries #schema_summaries} => Array&lt;Types::SchemaSummary&gt;
1622
+ # * {Types::ListSchemasOutput#next_token #next_token} => String
1623
+ #
1624
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1625
+ #
1626
+ # @example Request syntax with placeholder values
1627
+ #
1628
+ # resp = client.list_schemas({
1629
+ # collaboration_identifier: "CollaborationIdentifier", # required
1630
+ # schema_type: "TABLE", # accepts TABLE
1631
+ # next_token: "PaginationToken",
1632
+ # max_results: 1,
1633
+ # })
1634
+ #
1635
+ # @example Response structure
1636
+ #
1637
+ # resp.schema_summaries #=> Array
1638
+ # resp.schema_summaries[0].name #=> String
1639
+ # resp.schema_summaries[0].type #=> String, one of "TABLE"
1640
+ # resp.schema_summaries[0].creator_account_id #=> String
1641
+ # resp.schema_summaries[0].create_time #=> Time
1642
+ # resp.schema_summaries[0].update_time #=> Time
1643
+ # resp.schema_summaries[0].collaboration_id #=> String
1644
+ # resp.schema_summaries[0].collaboration_arn #=> String
1645
+ # resp.schema_summaries[0].analysis_rule_types #=> Array
1646
+ # resp.schema_summaries[0].analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
1647
+ # resp.schema_summaries[0].analysis_method #=> String, one of "DIRECT_QUERY"
1648
+ # resp.next_token #=> String
1649
+ #
1650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListSchemas AWS API Documentation
1651
+ #
1652
+ # @overload list_schemas(params = {})
1653
+ # @param [Hash] params ({})
1654
+ def list_schemas(params = {}, options = {})
1655
+ req = build_request(:list_schemas, params)
1656
+ req.send_request(options)
1657
+ end
1658
+
1659
+ # Creates a protected query that is started by AWS Clean Rooms.
1660
+ #
1661
+ # @option params [required, String] :type
1662
+ # The type of the protected query to be started.
1663
+ #
1664
+ # @option params [required, String] :membership_identifier
1665
+ # A unique identifier for the membership to run this query against.
1666
+ # Currently accepts a membership ID.
1667
+ #
1668
+ # @option params [required, Types::ProtectedQuerySQLParameters] :sql_parameters
1669
+ # The protected SQL query parameters.
1670
+ #
1671
+ # @option params [required, Types::ProtectedQueryResultConfiguration] :result_configuration
1672
+ # The details needed to write the query results.
1673
+ #
1674
+ # @return [Types::StartProtectedQueryOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1675
+ #
1676
+ # * {Types::StartProtectedQueryOutput#protected_query #protected_query} => Types::ProtectedQuery
1677
+ #
1678
+ # @example Request syntax with placeholder values
1679
+ #
1680
+ # resp = client.start_protected_query({
1681
+ # type: "SQL", # required, accepts SQL
1682
+ # membership_identifier: "MembershipIdentifier", # required
1683
+ # sql_parameters: { # required
1684
+ # query_string: "ProtectedQuerySQLParametersQueryStringString", # required
1685
+ # },
1686
+ # result_configuration: { # required
1687
+ # output_configuration: { # required
1688
+ # s3: {
1689
+ # result_format: "CSV", # required, accepts CSV, PARQUET
1690
+ # bucket: "ProtectedQueryS3OutputConfigurationBucketString", # required
1691
+ # key_prefix: "KeyPrefix",
1692
+ # },
1693
+ # },
1694
+ # },
1695
+ # })
1696
+ #
1697
+ # @example Response structure
1698
+ #
1699
+ # resp.protected_query.id #=> String
1700
+ # resp.protected_query.membership_id #=> String
1701
+ # resp.protected_query.membership_arn #=> String
1702
+ # resp.protected_query.create_time #=> Time
1703
+ # resp.protected_query.sql_parameters.query_string #=> String
1704
+ # resp.protected_query.status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
1705
+ # resp.protected_query.result_configuration.output_configuration.s3.result_format #=> String, one of "CSV", "PARQUET"
1706
+ # resp.protected_query.result_configuration.output_configuration.s3.bucket #=> String
1707
+ # resp.protected_query.result_configuration.output_configuration.s3.key_prefix #=> String
1708
+ # resp.protected_query.statistics.total_duration_in_millis #=> Integer
1709
+ # resp.protected_query.result.output.s3.location #=> String
1710
+ # resp.protected_query.error.message #=> String
1711
+ # resp.protected_query.error.code #=> String
1712
+ #
1713
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/StartProtectedQuery AWS API Documentation
1714
+ #
1715
+ # @overload start_protected_query(params = {})
1716
+ # @param [Hash] params ({})
1717
+ def start_protected_query(params = {}, options = {})
1718
+ req = build_request(:start_protected_query, params)
1719
+ req.send_request(options)
1720
+ end
1721
+
1722
+ # Updates collaboration metadata and can only be called by the
1723
+ # collaboration owner.
1724
+ #
1725
+ # @option params [required, String] :collaboration_identifier
1726
+ # The identifier for the collaboration.
1727
+ #
1728
+ # @option params [String] :name
1729
+ # A human-readable identifier provided by the collaboration owner.
1730
+ # Display names are not unique.
1731
+ #
1732
+ # @option params [String] :description
1733
+ # A description of the collaboration.
1734
+ #
1735
+ # @return [Types::UpdateCollaborationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1736
+ #
1737
+ # * {Types::UpdateCollaborationOutput#collaboration #collaboration} => Types::Collaboration
1738
+ #
1739
+ # @example Request syntax with placeholder values
1740
+ #
1741
+ # resp = client.update_collaboration({
1742
+ # collaboration_identifier: "CollaborationIdentifier", # required
1743
+ # name: "CollaborationName",
1744
+ # description: "CollaborationDescription",
1745
+ # })
1746
+ #
1747
+ # @example Response structure
1748
+ #
1749
+ # resp.collaboration.id #=> String
1750
+ # resp.collaboration.arn #=> String
1751
+ # resp.collaboration.name #=> String
1752
+ # resp.collaboration.description #=> String
1753
+ # resp.collaboration.creator_account_id #=> String
1754
+ # resp.collaboration.creator_display_name #=> String
1755
+ # resp.collaboration.create_time #=> Time
1756
+ # resp.collaboration.update_time #=> Time
1757
+ # resp.collaboration.member_status #=> String, one of "INVITED", "ACTIVE", "LEFT", "REMOVED"
1758
+ # resp.collaboration.membership_id #=> String
1759
+ # resp.collaboration.membership_arn #=> String
1760
+ # resp.collaboration.data_encryption_metadata.allow_cleartext #=> Boolean
1761
+ # resp.collaboration.data_encryption_metadata.allow_duplicates #=> Boolean
1762
+ # resp.collaboration.data_encryption_metadata.allow_joins_on_columns_with_different_names #=> Boolean
1763
+ # resp.collaboration.data_encryption_metadata.preserve_nulls #=> Boolean
1764
+ # resp.collaboration.query_log_status #=> String, one of "ENABLED", "DISABLED"
1765
+ #
1766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdateCollaboration AWS API Documentation
1767
+ #
1768
+ # @overload update_collaboration(params = {})
1769
+ # @param [Hash] params ({})
1770
+ def update_collaboration(params = {}, options = {})
1771
+ req = build_request(:update_collaboration, params)
1772
+ req.send_request(options)
1773
+ end
1774
+
1775
+ # Updates a configured table.
1776
+ #
1777
+ # @option params [required, String] :configured_table_identifier
1778
+ # The identifier for the configured table to update. Currently accepts
1779
+ # the configured table ID.
1780
+ #
1781
+ # @option params [String] :name
1782
+ # A new name for the configured table.
1783
+ #
1784
+ # @option params [String] :description
1785
+ # A new description for the configured table.
1786
+ #
1787
+ # @return [Types::UpdateConfiguredTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1788
+ #
1789
+ # * {Types::UpdateConfiguredTableOutput#configured_table #configured_table} => Types::ConfiguredTable
1790
+ #
1791
+ # @example Request syntax with placeholder values
1792
+ #
1793
+ # resp = client.update_configured_table({
1794
+ # configured_table_identifier: "ConfiguredTableIdentifier", # required
1795
+ # name: "DisplayName",
1796
+ # description: "TableDescription",
1797
+ # })
1798
+ #
1799
+ # @example Response structure
1800
+ #
1801
+ # resp.configured_table.id #=> String
1802
+ # resp.configured_table.arn #=> String
1803
+ # resp.configured_table.name #=> String
1804
+ # resp.configured_table.description #=> String
1805
+ # resp.configured_table.table_reference.glue.table_name #=> String
1806
+ # resp.configured_table.table_reference.glue.database_name #=> String
1807
+ # resp.configured_table.create_time #=> Time
1808
+ # resp.configured_table.update_time #=> Time
1809
+ # resp.configured_table.analysis_rule_types #=> Array
1810
+ # resp.configured_table.analysis_rule_types[0] #=> String, one of "AGGREGATION", "LIST"
1811
+ # resp.configured_table.analysis_method #=> String, one of "DIRECT_QUERY"
1812
+ # resp.configured_table.allowed_columns #=> Array
1813
+ # resp.configured_table.allowed_columns[0] #=> String
1814
+ #
1815
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdateConfiguredTable AWS API Documentation
1816
+ #
1817
+ # @overload update_configured_table(params = {})
1818
+ # @param [Hash] params ({})
1819
+ def update_configured_table(params = {}, options = {})
1820
+ req = build_request(:update_configured_table, params)
1821
+ req.send_request(options)
1822
+ end
1823
+
1824
+ # Updates a configured table analysis rule.
1825
+ #
1826
+ # @option params [required, String] :configured_table_identifier
1827
+ # The unique identifier for the configured table that the analysis rule
1828
+ # applies to. Currently accepts the configured table ID.
1829
+ #
1830
+ # @option params [required, String] :analysis_rule_type
1831
+ # The analysis rule type to be updated. Configured table analysis rules
1832
+ # are uniquely identified by their configured table identifier and
1833
+ # analysis rule type.
1834
+ #
1835
+ # @option params [required, Types::ConfiguredTableAnalysisRulePolicy] :analysis_rule_policy
1836
+ # The new analysis rule policy for the configured table analysis rule.
1837
+ #
1838
+ # @return [Types::UpdateConfiguredTableAnalysisRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1839
+ #
1840
+ # * {Types::UpdateConfiguredTableAnalysisRuleOutput#analysis_rule #analysis_rule} => Types::ConfiguredTableAnalysisRule
1841
+ #
1842
+ # @example Request syntax with placeholder values
1843
+ #
1844
+ # resp = client.update_configured_table_analysis_rule({
1845
+ # configured_table_identifier: "ConfiguredTableIdentifier", # required
1846
+ # analysis_rule_type: "AGGREGATION", # required, accepts AGGREGATION, LIST
1847
+ # analysis_rule_policy: { # required
1848
+ # v1: {
1849
+ # list: {
1850
+ # join_columns: ["AnalysisRuleColumnName"], # required
1851
+ # list_columns: ["AnalysisRuleColumnName"], # required
1852
+ # },
1853
+ # aggregation: {
1854
+ # aggregate_columns: [ # required
1855
+ # {
1856
+ # column_names: ["AnalysisRuleColumnName"], # required
1857
+ # function: "SUM", # required, accepts SUM, SUM_DISTINCT, COUNT, COUNT_DISTINCT, AVG
1858
+ # },
1859
+ # ],
1860
+ # join_columns: ["AnalysisRuleColumnName"], # required
1861
+ # join_required: "QUERY_RUNNER", # accepts QUERY_RUNNER
1862
+ # dimension_columns: ["AnalysisRuleColumnName"], # required
1863
+ # scalar_functions: ["TRUNC"], # required, accepts TRUNC, ABS, CEILING, FLOOR, LN, LOG, ROUND, SQRT, CAST, LOWER, RTRIM, UPPER, COALESCE
1864
+ # output_constraints: [ # required
1865
+ # {
1866
+ # column_name: "AnalysisRuleColumnName", # required
1867
+ # minimum: 1, # required
1868
+ # type: "COUNT_DISTINCT", # required, accepts COUNT_DISTINCT
1869
+ # },
1870
+ # ],
1871
+ # },
1872
+ # },
1873
+ # },
1874
+ # })
1875
+ #
1876
+ # @example Response structure
1877
+ #
1878
+ # resp.analysis_rule.configured_table_id #=> String
1879
+ # resp.analysis_rule.configured_table_arn #=> String
1880
+ # resp.analysis_rule.policy.v1.list.join_columns #=> Array
1881
+ # resp.analysis_rule.policy.v1.list.join_columns[0] #=> String
1882
+ # resp.analysis_rule.policy.v1.list.list_columns #=> Array
1883
+ # resp.analysis_rule.policy.v1.list.list_columns[0] #=> String
1884
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns #=> Array
1885
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].column_names #=> Array
1886
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].column_names[0] #=> String
1887
+ # resp.analysis_rule.policy.v1.aggregation.aggregate_columns[0].function #=> String, one of "SUM", "SUM_DISTINCT", "COUNT", "COUNT_DISTINCT", "AVG"
1888
+ # resp.analysis_rule.policy.v1.aggregation.join_columns #=> Array
1889
+ # resp.analysis_rule.policy.v1.aggregation.join_columns[0] #=> String
1890
+ # resp.analysis_rule.policy.v1.aggregation.join_required #=> String, one of "QUERY_RUNNER"
1891
+ # resp.analysis_rule.policy.v1.aggregation.dimension_columns #=> Array
1892
+ # resp.analysis_rule.policy.v1.aggregation.dimension_columns[0] #=> String
1893
+ # resp.analysis_rule.policy.v1.aggregation.scalar_functions #=> Array
1894
+ # resp.analysis_rule.policy.v1.aggregation.scalar_functions[0] #=> String, one of "TRUNC", "ABS", "CEILING", "FLOOR", "LN", "LOG", "ROUND", "SQRT", "CAST", "LOWER", "RTRIM", "UPPER", "COALESCE"
1895
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints #=> Array
1896
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].column_name #=> String
1897
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].minimum #=> Integer
1898
+ # resp.analysis_rule.policy.v1.aggregation.output_constraints[0].type #=> String, one of "COUNT_DISTINCT"
1899
+ # resp.analysis_rule.type #=> String, one of "AGGREGATION", "LIST"
1900
+ # resp.analysis_rule.create_time #=> Time
1901
+ # resp.analysis_rule.update_time #=> Time
1902
+ #
1903
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdateConfiguredTableAnalysisRule AWS API Documentation
1904
+ #
1905
+ # @overload update_configured_table_analysis_rule(params = {})
1906
+ # @param [Hash] params ({})
1907
+ def update_configured_table_analysis_rule(params = {}, options = {})
1908
+ req = build_request(:update_configured_table_analysis_rule, params)
1909
+ req.send_request(options)
1910
+ end
1911
+
1912
+ # Updates a configured table association.
1913
+ #
1914
+ # @option params [required, String] :configured_table_association_identifier
1915
+ # The unique identifier for the configured table association to update.
1916
+ # Currently accepts the configured table association ID.
1917
+ #
1918
+ # @option params [required, String] :membership_identifier
1919
+ # The unique ID for the membership that the configured table association
1920
+ # belongs to.
1921
+ #
1922
+ # @option params [String] :description
1923
+ # A new description for the configured table association.
1924
+ #
1925
+ # @option params [String] :role_arn
1926
+ # The service will assume this role to access catalog metadata and query
1927
+ # the table.
1928
+ #
1929
+ # @return [Types::UpdateConfiguredTableAssociationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1930
+ #
1931
+ # * {Types::UpdateConfiguredTableAssociationOutput#configured_table_association #configured_table_association} => Types::ConfiguredTableAssociation
1932
+ #
1933
+ # @example Request syntax with placeholder values
1934
+ #
1935
+ # resp = client.update_configured_table_association({
1936
+ # configured_table_association_identifier: "ConfiguredTableAssociationIdentifier", # required
1937
+ # membership_identifier: "MembershipIdentifier", # required
1938
+ # description: "TableDescription",
1939
+ # role_arn: "RoleArn",
1940
+ # })
1941
+ #
1942
+ # @example Response structure
1943
+ #
1944
+ # resp.configured_table_association.arn #=> String
1945
+ # resp.configured_table_association.id #=> String
1946
+ # resp.configured_table_association.configured_table_id #=> String
1947
+ # resp.configured_table_association.configured_table_arn #=> String
1948
+ # resp.configured_table_association.membership_id #=> String
1949
+ # resp.configured_table_association.membership_arn #=> String
1950
+ # resp.configured_table_association.role_arn #=> String
1951
+ # resp.configured_table_association.name #=> String
1952
+ # resp.configured_table_association.description #=> String
1953
+ # resp.configured_table_association.create_time #=> Time
1954
+ # resp.configured_table_association.update_time #=> Time
1955
+ #
1956
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdateConfiguredTableAssociation AWS API Documentation
1957
+ #
1958
+ # @overload update_configured_table_association(params = {})
1959
+ # @param [Hash] params ({})
1960
+ def update_configured_table_association(params = {}, options = {})
1961
+ req = build_request(:update_configured_table_association, params)
1962
+ req.send_request(options)
1963
+ end
1964
+
1965
+ # Updates a membership.
1966
+ #
1967
+ # @option params [required, String] :membership_identifier
1968
+ # The unique identifier of the membership.
1969
+ #
1970
+ # @option params [String] :query_log_status
1971
+ # An indicator as to whether query logging has been enabled or disabled
1972
+ # for the collaboration.
1973
+ #
1974
+ # @return [Types::UpdateMembershipOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1975
+ #
1976
+ # * {Types::UpdateMembershipOutput#membership #membership} => Types::Membership
1977
+ #
1978
+ # @example Request syntax with placeholder values
1979
+ #
1980
+ # resp = client.update_membership({
1981
+ # membership_identifier: "MembershipIdentifier", # required
1982
+ # query_log_status: "ENABLED", # accepts ENABLED, DISABLED
1983
+ # })
1984
+ #
1985
+ # @example Response structure
1986
+ #
1987
+ # resp.membership.id #=> String
1988
+ # resp.membership.arn #=> String
1989
+ # resp.membership.collaboration_arn #=> String
1990
+ # resp.membership.collaboration_id #=> String
1991
+ # resp.membership.collaboration_creator_account_id #=> String
1992
+ # resp.membership.collaboration_creator_display_name #=> String
1993
+ # resp.membership.collaboration_name #=> String
1994
+ # resp.membership.create_time #=> Time
1995
+ # resp.membership.update_time #=> Time
1996
+ # resp.membership.status #=> String, one of "ACTIVE", "REMOVED", "COLLABORATION_DELETED"
1997
+ # resp.membership.member_abilities #=> Array
1998
+ # resp.membership.member_abilities[0] #=> String, one of "CAN_QUERY", "CAN_RECEIVE_RESULTS"
1999
+ # resp.membership.query_log_status #=> String, one of "ENABLED", "DISABLED"
2000
+ #
2001
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdateMembership AWS API Documentation
2002
+ #
2003
+ # @overload update_membership(params = {})
2004
+ # @param [Hash] params ({})
2005
+ def update_membership(params = {}, options = {})
2006
+ req = build_request(:update_membership, params)
2007
+ req.send_request(options)
2008
+ end
2009
+
2010
+ # Updates the processing of a currently running query.
2011
+ #
2012
+ # @option params [required, String] :membership_identifier
2013
+ # The identifier for a member of a protected query instance.
2014
+ #
2015
+ # @option params [required, String] :protected_query_identifier
2016
+ # The identifier for a protected query instance.
2017
+ #
2018
+ # @option params [required, String] :target_status
2019
+ # The target status of a query. Used to update the execution status of a
2020
+ # currently running query.
2021
+ #
2022
+ # @return [Types::UpdateProtectedQueryOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2023
+ #
2024
+ # * {Types::UpdateProtectedQueryOutput#protected_query #protected_query} => Types::ProtectedQuery
2025
+ #
2026
+ # @example Request syntax with placeholder values
2027
+ #
2028
+ # resp = client.update_protected_query({
2029
+ # membership_identifier: "MembershipIdentifier", # required
2030
+ # protected_query_identifier: "ProtectedQueryIdentifier", # required
2031
+ # target_status: "CANCELLED", # required, accepts CANCELLED
2032
+ # })
2033
+ #
2034
+ # @example Response structure
2035
+ #
2036
+ # resp.protected_query.id #=> String
2037
+ # resp.protected_query.membership_id #=> String
2038
+ # resp.protected_query.membership_arn #=> String
2039
+ # resp.protected_query.create_time #=> Time
2040
+ # resp.protected_query.sql_parameters.query_string #=> String
2041
+ # resp.protected_query.status #=> String, one of "SUBMITTED", "STARTED", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS", "TIMED_OUT"
2042
+ # resp.protected_query.result_configuration.output_configuration.s3.result_format #=> String, one of "CSV", "PARQUET"
2043
+ # resp.protected_query.result_configuration.output_configuration.s3.bucket #=> String
2044
+ # resp.protected_query.result_configuration.output_configuration.s3.key_prefix #=> String
2045
+ # resp.protected_query.statistics.total_duration_in_millis #=> Integer
2046
+ # resp.protected_query.result.output.s3.location #=> String
2047
+ # resp.protected_query.error.message #=> String
2048
+ # resp.protected_query.error.code #=> String
2049
+ #
2050
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdateProtectedQuery AWS API Documentation
2051
+ #
2052
+ # @overload update_protected_query(params = {})
2053
+ # @param [Hash] params ({})
2054
+ def update_protected_query(params = {}, options = {})
2055
+ req = build_request(:update_protected_query, params)
2056
+ req.send_request(options)
2057
+ end
2058
+
2059
+ # @!endgroup
2060
+
2061
+ # @param params ({})
2062
+ # @api private
2063
+ def build_request(operation_name, params = {})
2064
+ handlers = @handlers.for(operation_name)
2065
+ context = Seahorse::Client::RequestContext.new(
2066
+ operation_name: operation_name,
2067
+ operation: config.api.operation(operation_name),
2068
+ client: self,
2069
+ params: params,
2070
+ config: config)
2071
+ context[:gem_name] = 'aws-sdk-cleanrooms'
2072
+ context[:gem_version] = '1.0.0'
2073
+ Seahorse::Client::Request.new(handlers, context)
2074
+ end
2075
+
2076
+ # @api private
2077
+ # @deprecated
2078
+ def waiter_names
2079
+ []
2080
+ end
2081
+
2082
+ class << self
2083
+
2084
+ # @api private
2085
+ attr_reader :identifier
2086
+
2087
+ # @api private
2088
+ def errors_module
2089
+ Errors
2090
+ end
2091
+
2092
+ end
2093
+ end
2094
+ end