aws-sdk-cleanroomsml 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1730 @@
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/request_compression.rb'
32
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
33
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
34
+ require 'aws-sdk-core/plugins/sign.rb'
35
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
36
+
37
+ Aws::Plugins::GlobalConfiguration.add_identifier(:cleanroomsml)
38
+
39
+ module Aws::CleanRoomsML
40
+ # An API client for CleanRoomsML. To construct a client, you need to configure a `:region` and `:credentials`.
41
+ #
42
+ # client = Aws::CleanRoomsML::Client.new(
43
+ # region: region_name,
44
+ # credentials: credentials,
45
+ # # ...
46
+ # )
47
+ #
48
+ # For details on configuring region and credentials see
49
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
50
+ #
51
+ # See {#initialize} for a full list of supported configuration options.
52
+ class Client < Seahorse::Client::Base
53
+
54
+ include Aws::ClientStubs
55
+
56
+ @identifier = :cleanroomsml
57
+
58
+ set_api(ClientApi::API)
59
+
60
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
61
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
62
+ add_plugin(Aws::Plugins::Logging)
63
+ add_plugin(Aws::Plugins::ParamConverter)
64
+ add_plugin(Aws::Plugins::ParamValidator)
65
+ add_plugin(Aws::Plugins::UserAgent)
66
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
67
+ add_plugin(Aws::Plugins::RetryErrors)
68
+ add_plugin(Aws::Plugins::GlobalConfiguration)
69
+ add_plugin(Aws::Plugins::RegionalEndpoint)
70
+ add_plugin(Aws::Plugins::EndpointDiscovery)
71
+ add_plugin(Aws::Plugins::EndpointPattern)
72
+ add_plugin(Aws::Plugins::ResponsePaging)
73
+ add_plugin(Aws::Plugins::StubResponses)
74
+ add_plugin(Aws::Plugins::IdempotencyToken)
75
+ add_plugin(Aws::Plugins::JsonvalueConverter)
76
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
77
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
78
+ add_plugin(Aws::Plugins::TransferEncoding)
79
+ add_plugin(Aws::Plugins::HttpChecksum)
80
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
81
+ add_plugin(Aws::Plugins::RequestCompression)
82
+ add_plugin(Aws::Plugins::DefaultsMode)
83
+ add_plugin(Aws::Plugins::RecursionDetection)
84
+ add_plugin(Aws::Plugins::Sign)
85
+ add_plugin(Aws::Plugins::Protocols::RestJson)
86
+ add_plugin(Aws::CleanRoomsML::Plugins::Endpoints)
87
+
88
+ # @overload initialize(options)
89
+ # @param [Hash] options
90
+ # @option options [required, Aws::CredentialProvider] :credentials
91
+ # Your AWS credentials. This can be an instance of any one of the
92
+ # following classes:
93
+ #
94
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
95
+ # credentials.
96
+ #
97
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
98
+ # shared file, such as `~/.aws/config`.
99
+ #
100
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
101
+ #
102
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
103
+ # assume a role after providing credentials via the web.
104
+ #
105
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
106
+ # access token generated from `aws login`.
107
+ #
108
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
109
+ # process that outputs to stdout.
110
+ #
111
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
112
+ # from an EC2 IMDS on an EC2 instance.
113
+ #
114
+ # * `Aws::ECSCredentials` - Used for loading credentials from
115
+ # instances running in ECS.
116
+ #
117
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
118
+ # from the Cognito Identity service.
119
+ #
120
+ # When `:credentials` are not configured directly, the following
121
+ # locations will be searched for credentials:
122
+ #
123
+ # * `Aws.config[:credentials]`
124
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
125
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
126
+ # * `~/.aws/credentials`
127
+ # * `~/.aws/config`
128
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
129
+ # are very aggressive. Construct and pass an instance of
130
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
131
+ # enable retries and extended timeouts. Instance profile credential
132
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
133
+ # to true.
134
+ #
135
+ # @option options [required, String] :region
136
+ # The AWS region to connect to. The configured `:region` is
137
+ # used to determine the service `:endpoint`. When not passed,
138
+ # a default `:region` is searched for in the following locations:
139
+ #
140
+ # * `Aws.config[:region]`
141
+ # * `ENV['AWS_REGION']`
142
+ # * `ENV['AMAZON_REGION']`
143
+ # * `ENV['AWS_DEFAULT_REGION']`
144
+ # * `~/.aws/credentials`
145
+ # * `~/.aws/config`
146
+ #
147
+ # @option options [String] :access_key_id
148
+ #
149
+ # @option options [Boolean] :active_endpoint_cache (false)
150
+ # When set to `true`, a thread polling for endpoints will be running in
151
+ # the background every 60 secs (default). Defaults to `false`.
152
+ #
153
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
154
+ # Used only in `adaptive` retry mode. When true, the request will sleep
155
+ # until there is sufficent client side capacity to retry the request.
156
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
157
+ # not retry instead of sleeping.
158
+ #
159
+ # @option options [Boolean] :client_side_monitoring (false)
160
+ # When `true`, client-side metrics will be collected for all API requests from
161
+ # this client.
162
+ #
163
+ # @option options [String] :client_side_monitoring_client_id ("")
164
+ # Allows you to provide an identifier for this client which will be attached to
165
+ # all generated client side metrics. Defaults to an empty string.
166
+ #
167
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
168
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
169
+ # side monitoring agent is running on, where client metrics will be published via UDP.
170
+ #
171
+ # @option options [Integer] :client_side_monitoring_port (31000)
172
+ # Required for publishing client metrics. The port that the client side monitoring
173
+ # agent is running on, where client metrics will be published via UDP.
174
+ #
175
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
176
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
177
+ # will use the Client Side Monitoring Agent Publisher.
178
+ #
179
+ # @option options [Boolean] :convert_params (true)
180
+ # When `true`, an attempt is made to coerce request parameters into
181
+ # the required types.
182
+ #
183
+ # @option options [Boolean] :correct_clock_skew (true)
184
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
185
+ # a clock skew correction and retry requests with skewed client clocks.
186
+ #
187
+ # @option options [String] :defaults_mode ("legacy")
188
+ # See {Aws::DefaultsModeConfiguration} for a list of the
189
+ # accepted modes and the configuration defaults that are included.
190
+ #
191
+ # @option options [Boolean] :disable_host_prefix_injection (false)
192
+ # Set to true to disable SDK automatically adding host prefix
193
+ # to default service endpoint when available.
194
+ #
195
+ # @option options [Boolean] :disable_request_compression (false)
196
+ # When set to 'true' the request body will not be compressed
197
+ # for supported operations.
198
+ #
199
+ # @option options [String] :endpoint
200
+ # The client endpoint is normally constructed from the `:region`
201
+ # option. You should only configure an `:endpoint` when connecting
202
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
203
+ #
204
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
205
+ # Used for the maximum size limit of the LRU cache storing endpoints data
206
+ # for endpoint discovery enabled operations. Defaults to 1000.
207
+ #
208
+ # @option options [Integer] :endpoint_cache_max_threads (10)
209
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
210
+ #
211
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
212
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
213
+ # Use this option to config the time interval in seconds for making
214
+ # requests fetching endpoints information. Defaults to 60 sec.
215
+ #
216
+ # @option options [Boolean] :endpoint_discovery (false)
217
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
218
+ #
219
+ # @option options [Boolean] :ignore_configured_endpoint_urls
220
+ # Setting to true disables use of endpoint URLs provided via environment
221
+ # variables and the shared configuration file.
222
+ #
223
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
224
+ # The log formatter.
225
+ #
226
+ # @option options [Symbol] :log_level (:info)
227
+ # The log level to send messages to the `:logger` at.
228
+ #
229
+ # @option options [Logger] :logger
230
+ # The Logger instance to send log messages to. If this option
231
+ # is not set, logging will be disabled.
232
+ #
233
+ # @option options [Integer] :max_attempts (3)
234
+ # An integer representing the maximum number attempts that will be made for
235
+ # a single request, including the initial attempt. For example,
236
+ # setting this value to 5 will result in a request being retried up to
237
+ # 4 times. Used in `standard` and `adaptive` retry modes.
238
+ #
239
+ # @option options [String] :profile ("default")
240
+ # Used when loading credentials from the shared credentials file
241
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
242
+ #
243
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
244
+ # The minimum size in bytes that triggers compression for request
245
+ # bodies. The value must be non-negative integer value between 0
246
+ # and 10485780 bytes inclusive.
247
+ #
248
+ # @option options [Proc] :retry_backoff
249
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
250
+ # This option is only used in the `legacy` retry mode.
251
+ #
252
+ # @option options [Float] :retry_base_delay (0.3)
253
+ # The base delay in seconds used by the default backoff function. This option
254
+ # is only used in the `legacy` retry mode.
255
+ #
256
+ # @option options [Symbol] :retry_jitter (:none)
257
+ # A delay randomiser function used by the default backoff function.
258
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
259
+ # otherwise a Proc that takes and returns a number. This option is only used
260
+ # in the `legacy` retry mode.
261
+ #
262
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
263
+ #
264
+ # @option options [Integer] :retry_limit (3)
265
+ # The maximum number of times to retry failed requests. Only
266
+ # ~ 500 level server errors and certain ~ 400 level client errors
267
+ # are retried. Generally, these are throttling errors, data
268
+ # checksum errors, networking errors, timeout errors, auth errors,
269
+ # endpoint discovery, and errors from expired credentials.
270
+ # This option is only used in the `legacy` retry mode.
271
+ #
272
+ # @option options [Integer] :retry_max_delay (0)
273
+ # The maximum number of seconds to delay between retries (0 for no limit)
274
+ # used by the default backoff function. This option is only used in the
275
+ # `legacy` retry mode.
276
+ #
277
+ # @option options [String] :retry_mode ("legacy")
278
+ # Specifies which retry algorithm to use. Values are:
279
+ #
280
+ # * `legacy` - The pre-existing retry behavior. This is default value if
281
+ # no retry mode is provided.
282
+ #
283
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
284
+ # This includes support for retry quotas, which limit the number of
285
+ # unsuccessful retries a client can make.
286
+ #
287
+ # * `adaptive` - An experimental retry mode that includes all the
288
+ # functionality of `standard` mode along with automatic client side
289
+ # throttling. This is a provisional mode that may change behavior
290
+ # in the future.
291
+ #
292
+ #
293
+ # @option options [String] :sdk_ua_app_id
294
+ # A unique and opaque application ID that is appended to the
295
+ # User-Agent header as app/<sdk_ua_app_id>. It should have a
296
+ # maximum length of 50.
297
+ #
298
+ # @option options [String] :secret_access_key
299
+ #
300
+ # @option options [String] :session_token
301
+ #
302
+ # @option options [Boolean] :stub_responses (false)
303
+ # Causes the client to return stubbed responses. By default
304
+ # fake responses are generated and returned. You can specify
305
+ # the response data to return or errors to raise by calling
306
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
307
+ #
308
+ # ** Please note ** When response stubbing is enabled, no HTTP
309
+ # requests are made, and retries are disabled.
310
+ #
311
+ # @option options [Aws::TokenProvider] :token_provider
312
+ # A Bearer Token Provider. This can be an instance of any one of the
313
+ # following classes:
314
+ #
315
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
316
+ # tokens.
317
+ #
318
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
319
+ # access token generated from `aws login`.
320
+ #
321
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
322
+ # will be used to search for tokens configured for your profile in shared configuration files.
323
+ #
324
+ # @option options [Boolean] :use_dualstack_endpoint
325
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
326
+ # will be used if available.
327
+ #
328
+ # @option options [Boolean] :use_fips_endpoint
329
+ # When set to `true`, fips compatible endpoints will be used if available.
330
+ # When a `fips` region is used, the region is normalized and this config
331
+ # is set to `true`.
332
+ #
333
+ # @option options [Boolean] :validate_params (true)
334
+ # When `true`, request parameters are validated before
335
+ # sending the request.
336
+ #
337
+ # @option options [Aws::CleanRoomsML::EndpointProvider] :endpoint_provider
338
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::CleanRoomsML::EndpointParameters`
339
+ #
340
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
341
+ # requests through. Formatted like 'http://proxy.com:123'.
342
+ #
343
+ # @option options [Float] :http_open_timeout (15) The number of
344
+ # seconds to wait when opening a HTTP session before raising a
345
+ # `Timeout::Error`.
346
+ #
347
+ # @option options [Float] :http_read_timeout (60) The default
348
+ # number of seconds to wait for response data. This value can
349
+ # safely be set per-request on the session.
350
+ #
351
+ # @option options [Float] :http_idle_timeout (5) The number of
352
+ # seconds a connection is allowed to sit idle before it is
353
+ # considered stale. Stale connections are closed and removed
354
+ # from the pool before making a request.
355
+ #
356
+ # @option options [Float] :http_continue_timeout (1) The number of
357
+ # seconds to wait for a 100-continue response before sending the
358
+ # request body. This option has no effect unless the request has
359
+ # "Expect" header set to "100-continue". Defaults to `nil` which
360
+ # disables this behaviour. This value can safely be set per
361
+ # request on the session.
362
+ #
363
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
364
+ # in seconds.
365
+ #
366
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
367
+ # HTTP debug output will be sent to the `:logger`.
368
+ #
369
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
370
+ # SSL peer certificates are verified when establishing a
371
+ # connection.
372
+ #
373
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
374
+ # certificate authority bundle file that should be used when
375
+ # verifying peer certificates. If you do not pass
376
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
377
+ # will be used if available.
378
+ #
379
+ # @option options [String] :ssl_ca_directory Full path of the
380
+ # directory that contains the unbundled SSL certificate
381
+ # authority files for verifying peer certificates. If you do
382
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
383
+ # system default will be used if available.
384
+ #
385
+ def initialize(*args)
386
+ super
387
+ end
388
+
389
+ # @!group API Operations
390
+
391
+ # Defines the information necessary to create an audience model. An
392
+ # audience model is a machine learning model that Clean Rooms ML trains
393
+ # to measure similarity between users. Clean Rooms ML manages training
394
+ # and storing the audience model. The audience model can be used in
395
+ # multiple calls to the StartAudienceGenerationJob API.
396
+ #
397
+ # @option params [String] :description
398
+ # The description of the audience model.
399
+ #
400
+ # @option params [String] :kms_key_arn
401
+ # The Amazon Resource Name (ARN) of the KMS key. This key is used to
402
+ # encrypt and decrypt customer-owned data in the trained ML model and
403
+ # the associated data.
404
+ #
405
+ # @option params [required, String] :name
406
+ # The name of the audience model resource.
407
+ #
408
+ # @option params [Hash<String,String>] :tags
409
+ # The optional metadata that you apply to the resource to help you
410
+ # categorize and organize them. Each tag consists of a key and an
411
+ # optional value, both of which you define.
412
+ #
413
+ # The following basic restrictions apply to tags:
414
+ #
415
+ # * Maximum number of tags per resource - 50.
416
+ #
417
+ # * For each resource, each tag key must be unique, and each tag key can
418
+ # have only one value.
419
+ #
420
+ # * Maximum key length - 128 Unicode characters in UTF-8.
421
+ #
422
+ # * Maximum value length - 256 Unicode characters in UTF-8.
423
+ #
424
+ # * If your tagging schema is used across multiple services and
425
+ # resources, remember that other services may have restrictions on
426
+ # allowed characters. Generally allowed characters are: letters,
427
+ # numbers, and spaces representable in UTF-8, and the following
428
+ # characters: + - = . \_ : / @.
429
+ #
430
+ # * Tag keys and values are case sensitive.
431
+ #
432
+ # * Do not use aws:, AWS:, or any upper or lowercase combination of such
433
+ # as a prefix for keys as it is reserved for AWS use. You cannot edit
434
+ # or delete tag keys with this prefix. Values can have this prefix. If
435
+ # a tag value has aws as its prefix but the key does not, then
436
+ # Forecast considers it to be a user tag and will count against the
437
+ # limit of 50 tags. Tags with only the key prefix of aws do not count
438
+ # against your tags per resource limit.
439
+ #
440
+ # @option params [Time,DateTime,Date,Integer,String] :training_data_end_time
441
+ # The end date and time of the training window.
442
+ #
443
+ # @option params [Time,DateTime,Date,Integer,String] :training_data_start_time
444
+ # The start date and time of the training window.
445
+ #
446
+ # @option params [required, String] :training_dataset_arn
447
+ # The Amazon Resource Name (ARN) of the training dataset for this
448
+ # audience model.
449
+ #
450
+ # @return [Types::CreateAudienceModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
451
+ #
452
+ # * {Types::CreateAudienceModelResponse#audience_model_arn #audience_model_arn} => String
453
+ #
454
+ # @example Request syntax with placeholder values
455
+ #
456
+ # resp = client.create_audience_model({
457
+ # description: "ResourceDescription",
458
+ # kms_key_arn: "KmsKeyArn",
459
+ # name: "NameString", # required
460
+ # tags: {
461
+ # "TagKey" => "TagValue",
462
+ # },
463
+ # training_data_end_time: Time.now,
464
+ # training_data_start_time: Time.now,
465
+ # training_dataset_arn: "TrainingDatasetArn", # required
466
+ # })
467
+ #
468
+ # @example Response structure
469
+ #
470
+ # resp.audience_model_arn #=> String
471
+ #
472
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/CreateAudienceModel AWS API Documentation
473
+ #
474
+ # @overload create_audience_model(params = {})
475
+ # @param [Hash] params ({})
476
+ def create_audience_model(params = {}, options = {})
477
+ req = build_request(:create_audience_model, params)
478
+ req.send_request(options)
479
+ end
480
+
481
+ # Defines the information necessary to create a configured audience
482
+ # model.
483
+ #
484
+ # @option params [required, String] :audience_model_arn
485
+ # The Amazon Resource Name (ARN) of the audience model to use for the
486
+ # configured audience model.
487
+ #
488
+ # @option params [Types::AudienceSizeConfig] :audience_size_config
489
+ # Configure the list of output sizes of audiences that can be created
490
+ # using this configured audience model. A request to
491
+ # StartAudienceGenerationJob that uses this configured audience model
492
+ # must have an `audienceSize` selected from this list. You can use the
493
+ # `ABSOLUTE` AudienceSize to configure out audience sizes using the
494
+ # count of identifiers in the output. You can use the `Percentage`
495
+ # AudienceSize to configure sizes in the range 1-100 percent.
496
+ #
497
+ # @option params [String] :child_resource_tag_on_create_policy
498
+ # Configure how the service tags audience generation jobs created using
499
+ # this configured audience model. If you specify `NONE`, the tags from
500
+ # the StartAudienceGenerationJob request determine the tags of the
501
+ # audience generation job. If you specify `FROM_PARENT_RESOURCE`, the
502
+ # audience generation job inherits the tags from the configured audience
503
+ # model, by default. Tags in the StartAudienceGenerationJob will
504
+ # override the default.
505
+ #
506
+ # @option params [String] :description
507
+ # The description of the configured audience model.
508
+ #
509
+ # @option params [Integer] :min_matching_seed_size
510
+ # The minimum number of users from the seed audience that must match
511
+ # with users in the training data of the audience model.
512
+ #
513
+ # @option params [required, String] :name
514
+ # The name of the configured audience model.
515
+ #
516
+ # @option params [required, Types::ConfiguredAudienceModelOutputConfig] :output_config
517
+ # Configure the Amazon S3 location and IAM Role for audiences created
518
+ # using this configured audience model. Each audience will have a unique
519
+ # location. The IAM Role must have `s3:PutObject` permission on the
520
+ # destination Amazon S3 location. If the destination is protected with
521
+ # Amazon S3 KMS-SSE, then the Role must also have the required KMS
522
+ # permissions.
523
+ #
524
+ # @option params [required, Array<String>] :shared_audience_metrics
525
+ # Whether audience metrics are shared.
526
+ #
527
+ # @option params [Hash<String,String>] :tags
528
+ # The optional metadata that you apply to the resource to help you
529
+ # categorize and organize them. Each tag consists of a key and an
530
+ # optional value, both of which you define.
531
+ #
532
+ # The following basic restrictions apply to tags:
533
+ #
534
+ # * Maximum number of tags per resource - 50.
535
+ #
536
+ # * For each resource, each tag key must be unique, and each tag key can
537
+ # have only one value.
538
+ #
539
+ # * Maximum key length - 128 Unicode characters in UTF-8.
540
+ #
541
+ # * Maximum value length - 256 Unicode characters in UTF-8.
542
+ #
543
+ # * If your tagging schema is used across multiple services and
544
+ # resources, remember that other services may have restrictions on
545
+ # allowed characters. Generally allowed characters are: letters,
546
+ # numbers, and spaces representable in UTF-8, and the following
547
+ # characters: + - = . \_ : / @.
548
+ #
549
+ # * Tag keys and values are case sensitive.
550
+ #
551
+ # * Do not use aws:, AWS:, or any upper or lowercase combination of such
552
+ # as a prefix for keys as it is reserved for AWS use. You cannot edit
553
+ # or delete tag keys with this prefix. Values can have this prefix. If
554
+ # a tag value has aws as its prefix but the key does not, then
555
+ # Forecast considers it to be a user tag and will count against the
556
+ # limit of 50 tags. Tags with only the key prefix of aws do not count
557
+ # against your tags per resource limit.
558
+ #
559
+ # @return [Types::CreateConfiguredAudienceModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
560
+ #
561
+ # * {Types::CreateConfiguredAudienceModelResponse#configured_audience_model_arn #configured_audience_model_arn} => String
562
+ #
563
+ # @example Request syntax with placeholder values
564
+ #
565
+ # resp = client.create_configured_audience_model({
566
+ # audience_model_arn: "AudienceModelArn", # required
567
+ # audience_size_config: {
568
+ # audience_size_bins: [1], # required
569
+ # audience_size_type: "ABSOLUTE", # required, accepts ABSOLUTE, PERCENTAGE
570
+ # },
571
+ # child_resource_tag_on_create_policy: "FROM_PARENT_RESOURCE", # accepts FROM_PARENT_RESOURCE, NONE
572
+ # description: "ResourceDescription",
573
+ # min_matching_seed_size: 1,
574
+ # name: "NameString", # required
575
+ # output_config: { # required
576
+ # destination: { # required
577
+ # s3_destination: { # required
578
+ # s3_uri: "S3Path", # required
579
+ # },
580
+ # },
581
+ # role_arn: "IamRoleArn", # required
582
+ # },
583
+ # shared_audience_metrics: ["ALL"], # required, accepts ALL, NONE
584
+ # tags: {
585
+ # "TagKey" => "TagValue",
586
+ # },
587
+ # })
588
+ #
589
+ # @example Response structure
590
+ #
591
+ # resp.configured_audience_model_arn #=> String
592
+ #
593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/CreateConfiguredAudienceModel AWS API Documentation
594
+ #
595
+ # @overload create_configured_audience_model(params = {})
596
+ # @param [Hash] params ({})
597
+ def create_configured_audience_model(params = {}, options = {})
598
+ req = build_request(:create_configured_audience_model, params)
599
+ req.send_request(options)
600
+ end
601
+
602
+ # Defines the information necessary to create a training dataset, or
603
+ # seed audience. In Clean Rooms ML, the `TrainingDataset` is metadata
604
+ # that points to a Glue table, which is read only during `AudienceModel`
605
+ # creation.
606
+ #
607
+ # @option params [String] :description
608
+ # The description of the training dataset.
609
+ #
610
+ # @option params [required, String] :name
611
+ # The name of the training dataset. This name must be unique in your
612
+ # account and region.
613
+ #
614
+ # @option params [required, String] :role_arn
615
+ # The ARN of the IAM role that Clean Rooms ML can assume to read the
616
+ # data referred to in the `dataSource` field of each dataset.
617
+ #
618
+ # Passing a role across AWS accounts is not allowed. If you pass a role
619
+ # that isn't in your account, you get an `AccessDeniedException` error.
620
+ #
621
+ # @option params [Hash<String,String>] :tags
622
+ # The optional metadata that you apply to the resource to help you
623
+ # categorize and organize them. Each tag consists of a key and an
624
+ # optional value, both of which you define.
625
+ #
626
+ # The following basic restrictions apply to tags:
627
+ #
628
+ # * Maximum number of tags per resource - 50.
629
+ #
630
+ # * For each resource, each tag key must be unique, and each tag key can
631
+ # have only one value.
632
+ #
633
+ # * Maximum key length - 128 Unicode characters in UTF-8.
634
+ #
635
+ # * Maximum value length - 256 Unicode characters in UTF-8.
636
+ #
637
+ # * If your tagging schema is used across multiple services and
638
+ # resources, remember that other services may have restrictions on
639
+ # allowed characters. Generally allowed characters are: letters,
640
+ # numbers, and spaces representable in UTF-8, and the following
641
+ # characters: + - = . \_ : / @.
642
+ #
643
+ # * Tag keys and values are case sensitive.
644
+ #
645
+ # * Do not use aws:, AWS:, or any upper or lowercase combination of such
646
+ # as a prefix for keys as it is reserved for AWS use. You cannot edit
647
+ # or delete tag keys with this prefix. Values can have this prefix. If
648
+ # a tag value has aws as its prefix but the key does not, then Clean
649
+ # Rooms ML considers it to be a user tag and will count against the
650
+ # limit of 50 tags. Tags with only the key prefix of aws do not count
651
+ # against your tags per resource limit.
652
+ #
653
+ # @option params [required, Array<Types::Dataset>] :training_data
654
+ # An array of information that lists the Dataset objects, which
655
+ # specifies the dataset type and details on its location and schema. You
656
+ # must provide a role that has read access to these tables.
657
+ #
658
+ # @return [Types::CreateTrainingDatasetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
659
+ #
660
+ # * {Types::CreateTrainingDatasetResponse#training_dataset_arn #training_dataset_arn} => String
661
+ #
662
+ # @example Request syntax with placeholder values
663
+ #
664
+ # resp = client.create_training_dataset({
665
+ # description: "ResourceDescription",
666
+ # name: "NameString", # required
667
+ # role_arn: "IamRoleArn", # required
668
+ # tags: {
669
+ # "TagKey" => "TagValue",
670
+ # },
671
+ # training_data: [ # required
672
+ # {
673
+ # input_config: { # required
674
+ # data_source: { # required
675
+ # glue_data_source: { # required
676
+ # catalog_id: "AccountId",
677
+ # database_name: "GlueDatabaseName", # required
678
+ # table_name: "GlueTableName", # required
679
+ # },
680
+ # },
681
+ # schema: [ # required
682
+ # {
683
+ # column_name: "ColumnName", # required
684
+ # column_types: ["USER_ID"], # required, accepts USER_ID, ITEM_ID, TIMESTAMP, CATEGORICAL_FEATURE, NUMERICAL_FEATURE
685
+ # },
686
+ # ],
687
+ # },
688
+ # type: "INTERACTIONS", # required, accepts INTERACTIONS
689
+ # },
690
+ # ],
691
+ # })
692
+ #
693
+ # @example Response structure
694
+ #
695
+ # resp.training_dataset_arn #=> String
696
+ #
697
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/CreateTrainingDataset AWS API Documentation
698
+ #
699
+ # @overload create_training_dataset(params = {})
700
+ # @param [Hash] params ({})
701
+ def create_training_dataset(params = {}, options = {})
702
+ req = build_request(:create_training_dataset, params)
703
+ req.send_request(options)
704
+ end
705
+
706
+ # Deletes the specified audience generation job, and removes all data
707
+ # associated with the job.
708
+ #
709
+ # @option params [required, String] :audience_generation_job_arn
710
+ # The Amazon Resource Name (ARN) of the audience generation job that you
711
+ # want to delete.
712
+ #
713
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
714
+ #
715
+ # @example Request syntax with placeholder values
716
+ #
717
+ # resp = client.delete_audience_generation_job({
718
+ # audience_generation_job_arn: "AudienceGenerationJobArn", # required
719
+ # })
720
+ #
721
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteAudienceGenerationJob AWS API Documentation
722
+ #
723
+ # @overload delete_audience_generation_job(params = {})
724
+ # @param [Hash] params ({})
725
+ def delete_audience_generation_job(params = {}, options = {})
726
+ req = build_request(:delete_audience_generation_job, params)
727
+ req.send_request(options)
728
+ end
729
+
730
+ # Specifies an audience model that you want to delete. You can't delete
731
+ # an audience model if there are any configured audience models that
732
+ # depend on the audience model.
733
+ #
734
+ # @option params [required, String] :audience_model_arn
735
+ # The Amazon Resource Name (ARN) of the audience model that you want to
736
+ # delete.
737
+ #
738
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
739
+ #
740
+ # @example Request syntax with placeholder values
741
+ #
742
+ # resp = client.delete_audience_model({
743
+ # audience_model_arn: "AudienceModelArn", # required
744
+ # })
745
+ #
746
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteAudienceModel AWS API Documentation
747
+ #
748
+ # @overload delete_audience_model(params = {})
749
+ # @param [Hash] params ({})
750
+ def delete_audience_model(params = {}, options = {})
751
+ req = build_request(:delete_audience_model, params)
752
+ req.send_request(options)
753
+ end
754
+
755
+ # Deletes the specified configured audience model. You can't delete a
756
+ # configured audience model if there are any lookalike models that use
757
+ # the configured audience model. If you delete a configured audience
758
+ # model, it will be removed from any collaborations that it is
759
+ # associated to.
760
+ #
761
+ # @option params [required, String] :configured_audience_model_arn
762
+ # The Amazon Resource Name (ARN) of the configured audience model that
763
+ # you want to delete.
764
+ #
765
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
766
+ #
767
+ # @example Request syntax with placeholder values
768
+ #
769
+ # resp = client.delete_configured_audience_model({
770
+ # configured_audience_model_arn: "ConfiguredAudienceModelArn", # required
771
+ # })
772
+ #
773
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteConfiguredAudienceModel AWS API Documentation
774
+ #
775
+ # @overload delete_configured_audience_model(params = {})
776
+ # @param [Hash] params ({})
777
+ def delete_configured_audience_model(params = {}, options = {})
778
+ req = build_request(:delete_configured_audience_model, params)
779
+ req.send_request(options)
780
+ end
781
+
782
+ # Deletes the specified configured audience model policy.
783
+ #
784
+ # @option params [required, String] :configured_audience_model_arn
785
+ # The Amazon Resource Name (ARN) of the configured audience model policy
786
+ # that you want to delete.
787
+ #
788
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
789
+ #
790
+ # @example Request syntax with placeholder values
791
+ #
792
+ # resp = client.delete_configured_audience_model_policy({
793
+ # configured_audience_model_arn: "ConfiguredAudienceModelArn", # required
794
+ # })
795
+ #
796
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteConfiguredAudienceModelPolicy AWS API Documentation
797
+ #
798
+ # @overload delete_configured_audience_model_policy(params = {})
799
+ # @param [Hash] params ({})
800
+ def delete_configured_audience_model_policy(params = {}, options = {})
801
+ req = build_request(:delete_configured_audience_model_policy, params)
802
+ req.send_request(options)
803
+ end
804
+
805
+ # Specifies a training dataset that you want to delete. You can't
806
+ # delete a training dataset if there are any audience models that depend
807
+ # on the training dataset. In Clean Rooms ML, the `TrainingDataset` is
808
+ # metadata that points to a Glue table, which is read only during
809
+ # `AudienceModel` creation. This action deletes the metadata.
810
+ #
811
+ # @option params [required, String] :training_dataset_arn
812
+ # The Amazon Resource Name (ARN) of the training dataset that you want
813
+ # to delete.
814
+ #
815
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
816
+ #
817
+ # @example Request syntax with placeholder values
818
+ #
819
+ # resp = client.delete_training_dataset({
820
+ # training_dataset_arn: "TrainingDatasetArn", # required
821
+ # })
822
+ #
823
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteTrainingDataset AWS API Documentation
824
+ #
825
+ # @overload delete_training_dataset(params = {})
826
+ # @param [Hash] params ({})
827
+ def delete_training_dataset(params = {}, options = {})
828
+ req = build_request(:delete_training_dataset, params)
829
+ req.send_request(options)
830
+ end
831
+
832
+ # Returns information about an audience generation job.
833
+ #
834
+ # @option params [required, String] :audience_generation_job_arn
835
+ # The Amazon Resource Name (ARN) of the audience generation job that you
836
+ # are interested in.
837
+ #
838
+ # @return [Types::GetAudienceGenerationJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
839
+ #
840
+ # * {Types::GetAudienceGenerationJobResponse#audience_generation_job_arn #audience_generation_job_arn} => String
841
+ # * {Types::GetAudienceGenerationJobResponse#collaboration_id #collaboration_id} => String
842
+ # * {Types::GetAudienceGenerationJobResponse#configured_audience_model_arn #configured_audience_model_arn} => String
843
+ # * {Types::GetAudienceGenerationJobResponse#create_time #create_time} => Time
844
+ # * {Types::GetAudienceGenerationJobResponse#description #description} => String
845
+ # * {Types::GetAudienceGenerationJobResponse#include_seed_in_output #include_seed_in_output} => Boolean
846
+ # * {Types::GetAudienceGenerationJobResponse#metrics #metrics} => Types::AudienceQualityMetrics
847
+ # * {Types::GetAudienceGenerationJobResponse#name #name} => String
848
+ # * {Types::GetAudienceGenerationJobResponse#seed_audience #seed_audience} => Types::AudienceGenerationJobDataSource
849
+ # * {Types::GetAudienceGenerationJobResponse#started_by #started_by} => String
850
+ # * {Types::GetAudienceGenerationJobResponse#status #status} => String
851
+ # * {Types::GetAudienceGenerationJobResponse#status_details #status_details} => Types::StatusDetails
852
+ # * {Types::GetAudienceGenerationJobResponse#tags #tags} => Hash&lt;String,String&gt;
853
+ # * {Types::GetAudienceGenerationJobResponse#update_time #update_time} => Time
854
+ #
855
+ # @example Request syntax with placeholder values
856
+ #
857
+ # resp = client.get_audience_generation_job({
858
+ # audience_generation_job_arn: "AudienceGenerationJobArn", # required
859
+ # })
860
+ #
861
+ # @example Response structure
862
+ #
863
+ # resp.audience_generation_job_arn #=> String
864
+ # resp.collaboration_id #=> String
865
+ # resp.configured_audience_model_arn #=> String
866
+ # resp.create_time #=> Time
867
+ # resp.description #=> String
868
+ # resp.include_seed_in_output #=> Boolean
869
+ # resp.metrics.relevance_metrics #=> Array
870
+ # resp.metrics.relevance_metrics[0].audience_size.type #=> String, one of "ABSOLUTE", "PERCENTAGE"
871
+ # resp.metrics.relevance_metrics[0].audience_size.value #=> Integer
872
+ # resp.metrics.relevance_metrics[0].score #=> Float
873
+ # resp.name #=> String
874
+ # resp.seed_audience.data_source.s3_uri #=> String
875
+ # resp.seed_audience.role_arn #=> String
876
+ # resp.started_by #=> String
877
+ # resp.status #=> String, one of "CREATE_PENDING", "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_PENDING", "DELETE_IN_PROGRESS", "DELETE_FAILED"
878
+ # resp.status_details.message #=> String
879
+ # resp.status_details.status_code #=> String
880
+ # resp.tags #=> Hash
881
+ # resp.tags["TagKey"] #=> String
882
+ # resp.update_time #=> Time
883
+ #
884
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetAudienceGenerationJob AWS API Documentation
885
+ #
886
+ # @overload get_audience_generation_job(params = {})
887
+ # @param [Hash] params ({})
888
+ def get_audience_generation_job(params = {}, options = {})
889
+ req = build_request(:get_audience_generation_job, params)
890
+ req.send_request(options)
891
+ end
892
+
893
+ # Returns information about an audience model
894
+ #
895
+ # @option params [required, String] :audience_model_arn
896
+ # The Amazon Resource Name (ARN) of the audience model that you are
897
+ # interested in.
898
+ #
899
+ # @return [Types::GetAudienceModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
900
+ #
901
+ # * {Types::GetAudienceModelResponse#audience_model_arn #audience_model_arn} => String
902
+ # * {Types::GetAudienceModelResponse#create_time #create_time} => Time
903
+ # * {Types::GetAudienceModelResponse#description #description} => String
904
+ # * {Types::GetAudienceModelResponse#kms_key_arn #kms_key_arn} => String
905
+ # * {Types::GetAudienceModelResponse#metrics #metrics} => Array&lt;Types::AudienceModelMetric&gt;
906
+ # * {Types::GetAudienceModelResponse#name #name} => String
907
+ # * {Types::GetAudienceModelResponse#status #status} => String
908
+ # * {Types::GetAudienceModelResponse#status_details #status_details} => Types::StatusDetails
909
+ # * {Types::GetAudienceModelResponse#tags #tags} => Hash&lt;String,String&gt;
910
+ # * {Types::GetAudienceModelResponse#training_data_end_time #training_data_end_time} => Time
911
+ # * {Types::GetAudienceModelResponse#training_data_start_time #training_data_start_time} => Time
912
+ # * {Types::GetAudienceModelResponse#training_dataset_arn #training_dataset_arn} => String
913
+ # * {Types::GetAudienceModelResponse#update_time #update_time} => Time
914
+ #
915
+ # @example Request syntax with placeholder values
916
+ #
917
+ # resp = client.get_audience_model({
918
+ # audience_model_arn: "AudienceModelArn", # required
919
+ # })
920
+ #
921
+ # @example Response structure
922
+ #
923
+ # resp.audience_model_arn #=> String
924
+ # resp.create_time #=> Time
925
+ # resp.description #=> String
926
+ # resp.kms_key_arn #=> String
927
+ # resp.metrics #=> Array
928
+ # resp.metrics[0].for_top_k_item_predictions #=> Integer
929
+ # resp.metrics[0].type #=> String, one of "NORMALIZED_DISCOUNTED_CUMULATIVE_GAIN", "MEAN_RECIPROCAL_RANK", "PRECISION", "RECALL"
930
+ # resp.metrics[0].value #=> Float
931
+ # resp.name #=> String
932
+ # resp.status #=> String, one of "CREATE_PENDING", "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_PENDING", "DELETE_IN_PROGRESS", "DELETE_FAILED"
933
+ # resp.status_details.message #=> String
934
+ # resp.status_details.status_code #=> String
935
+ # resp.tags #=> Hash
936
+ # resp.tags["TagKey"] #=> String
937
+ # resp.training_data_end_time #=> Time
938
+ # resp.training_data_start_time #=> Time
939
+ # resp.training_dataset_arn #=> String
940
+ # resp.update_time #=> Time
941
+ #
942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetAudienceModel AWS API Documentation
943
+ #
944
+ # @overload get_audience_model(params = {})
945
+ # @param [Hash] params ({})
946
+ def get_audience_model(params = {}, options = {})
947
+ req = build_request(:get_audience_model, params)
948
+ req.send_request(options)
949
+ end
950
+
951
+ # Returns information about a specified configured audience model.
952
+ #
953
+ # @option params [required, String] :configured_audience_model_arn
954
+ # The Amazon Resource Name (ARN) of the configured audience model that
955
+ # you are interested in.
956
+ #
957
+ # @return [Types::GetConfiguredAudienceModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
958
+ #
959
+ # * {Types::GetConfiguredAudienceModelResponse#audience_model_arn #audience_model_arn} => String
960
+ # * {Types::GetConfiguredAudienceModelResponse#audience_size_config #audience_size_config} => Types::AudienceSizeConfig
961
+ # * {Types::GetConfiguredAudienceModelResponse#child_resource_tag_on_create_policy #child_resource_tag_on_create_policy} => String
962
+ # * {Types::GetConfiguredAudienceModelResponse#configured_audience_model_arn #configured_audience_model_arn} => String
963
+ # * {Types::GetConfiguredAudienceModelResponse#create_time #create_time} => Time
964
+ # * {Types::GetConfiguredAudienceModelResponse#description #description} => String
965
+ # * {Types::GetConfiguredAudienceModelResponse#min_matching_seed_size #min_matching_seed_size} => Integer
966
+ # * {Types::GetConfiguredAudienceModelResponse#name #name} => String
967
+ # * {Types::GetConfiguredAudienceModelResponse#output_config #output_config} => Types::ConfiguredAudienceModelOutputConfig
968
+ # * {Types::GetConfiguredAudienceModelResponse#shared_audience_metrics #shared_audience_metrics} => Array&lt;String&gt;
969
+ # * {Types::GetConfiguredAudienceModelResponse#status #status} => String
970
+ # * {Types::GetConfiguredAudienceModelResponse#tags #tags} => Hash&lt;String,String&gt;
971
+ # * {Types::GetConfiguredAudienceModelResponse#update_time #update_time} => Time
972
+ #
973
+ # @example Request syntax with placeholder values
974
+ #
975
+ # resp = client.get_configured_audience_model({
976
+ # configured_audience_model_arn: "ConfiguredAudienceModelArn", # required
977
+ # })
978
+ #
979
+ # @example Response structure
980
+ #
981
+ # resp.audience_model_arn #=> String
982
+ # resp.audience_size_config.audience_size_bins #=> Array
983
+ # resp.audience_size_config.audience_size_bins[0] #=> Integer
984
+ # resp.audience_size_config.audience_size_type #=> String, one of "ABSOLUTE", "PERCENTAGE"
985
+ # resp.child_resource_tag_on_create_policy #=> String, one of "FROM_PARENT_RESOURCE", "NONE"
986
+ # resp.configured_audience_model_arn #=> String
987
+ # resp.create_time #=> Time
988
+ # resp.description #=> String
989
+ # resp.min_matching_seed_size #=> Integer
990
+ # resp.name #=> String
991
+ # resp.output_config.destination.s3_destination.s3_uri #=> String
992
+ # resp.output_config.role_arn #=> String
993
+ # resp.shared_audience_metrics #=> Array
994
+ # resp.shared_audience_metrics[0] #=> String, one of "ALL", "NONE"
995
+ # resp.status #=> String, one of "ACTIVE"
996
+ # resp.tags #=> Hash
997
+ # resp.tags["TagKey"] #=> String
998
+ # resp.update_time #=> Time
999
+ #
1000
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetConfiguredAudienceModel AWS API Documentation
1001
+ #
1002
+ # @overload get_configured_audience_model(params = {})
1003
+ # @param [Hash] params ({})
1004
+ def get_configured_audience_model(params = {}, options = {})
1005
+ req = build_request(:get_configured_audience_model, params)
1006
+ req.send_request(options)
1007
+ end
1008
+
1009
+ # Returns information about a configured audience model policy.
1010
+ #
1011
+ # @option params [required, String] :configured_audience_model_arn
1012
+ # The Amazon Resource Name (ARN) of the configured audience model that
1013
+ # you are interested in.
1014
+ #
1015
+ # @return [Types::GetConfiguredAudienceModelPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1016
+ #
1017
+ # * {Types::GetConfiguredAudienceModelPolicyResponse#configured_audience_model_arn #configured_audience_model_arn} => String
1018
+ # * {Types::GetConfiguredAudienceModelPolicyResponse#configured_audience_model_policy #configured_audience_model_policy} => String
1019
+ # * {Types::GetConfiguredAudienceModelPolicyResponse#policy_hash #policy_hash} => String
1020
+ #
1021
+ # @example Request syntax with placeholder values
1022
+ #
1023
+ # resp = client.get_configured_audience_model_policy({
1024
+ # configured_audience_model_arn: "ConfiguredAudienceModelArn", # required
1025
+ # })
1026
+ #
1027
+ # @example Response structure
1028
+ #
1029
+ # resp.configured_audience_model_arn #=> String
1030
+ # resp.configured_audience_model_policy #=> String
1031
+ # resp.policy_hash #=> String
1032
+ #
1033
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetConfiguredAudienceModelPolicy AWS API Documentation
1034
+ #
1035
+ # @overload get_configured_audience_model_policy(params = {})
1036
+ # @param [Hash] params ({})
1037
+ def get_configured_audience_model_policy(params = {}, options = {})
1038
+ req = build_request(:get_configured_audience_model_policy, params)
1039
+ req.send_request(options)
1040
+ end
1041
+
1042
+ # Returns information about a training dataset.
1043
+ #
1044
+ # @option params [required, String] :training_dataset_arn
1045
+ # The Amazon Resource Name (ARN) of the training dataset that you are
1046
+ # interested in.
1047
+ #
1048
+ # @return [Types::GetTrainingDatasetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1049
+ #
1050
+ # * {Types::GetTrainingDatasetResponse#create_time #create_time} => Time
1051
+ # * {Types::GetTrainingDatasetResponse#description #description} => String
1052
+ # * {Types::GetTrainingDatasetResponse#name #name} => String
1053
+ # * {Types::GetTrainingDatasetResponse#role_arn #role_arn} => String
1054
+ # * {Types::GetTrainingDatasetResponse#status #status} => String
1055
+ # * {Types::GetTrainingDatasetResponse#tags #tags} => Hash&lt;String,String&gt;
1056
+ # * {Types::GetTrainingDatasetResponse#training_data #training_data} => Array&lt;Types::Dataset&gt;
1057
+ # * {Types::GetTrainingDatasetResponse#training_dataset_arn #training_dataset_arn} => String
1058
+ # * {Types::GetTrainingDatasetResponse#update_time #update_time} => Time
1059
+ #
1060
+ # @example Request syntax with placeholder values
1061
+ #
1062
+ # resp = client.get_training_dataset({
1063
+ # training_dataset_arn: "TrainingDatasetArn", # required
1064
+ # })
1065
+ #
1066
+ # @example Response structure
1067
+ #
1068
+ # resp.create_time #=> Time
1069
+ # resp.description #=> String
1070
+ # resp.name #=> String
1071
+ # resp.role_arn #=> String
1072
+ # resp.status #=> String, one of "ACTIVE"
1073
+ # resp.tags #=> Hash
1074
+ # resp.tags["TagKey"] #=> String
1075
+ # resp.training_data #=> Array
1076
+ # resp.training_data[0].input_config.data_source.glue_data_source.catalog_id #=> String
1077
+ # resp.training_data[0].input_config.data_source.glue_data_source.database_name #=> String
1078
+ # resp.training_data[0].input_config.data_source.glue_data_source.table_name #=> String
1079
+ # resp.training_data[0].input_config.schema #=> Array
1080
+ # resp.training_data[0].input_config.schema[0].column_name #=> String
1081
+ # resp.training_data[0].input_config.schema[0].column_types #=> Array
1082
+ # resp.training_data[0].input_config.schema[0].column_types[0] #=> String, one of "USER_ID", "ITEM_ID", "TIMESTAMP", "CATEGORICAL_FEATURE", "NUMERICAL_FEATURE"
1083
+ # resp.training_data[0].type #=> String, one of "INTERACTIONS"
1084
+ # resp.training_dataset_arn #=> String
1085
+ # resp.update_time #=> Time
1086
+ #
1087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetTrainingDataset AWS API Documentation
1088
+ #
1089
+ # @overload get_training_dataset(params = {})
1090
+ # @param [Hash] params ({})
1091
+ def get_training_dataset(params = {}, options = {})
1092
+ req = build_request(:get_training_dataset, params)
1093
+ req.send_request(options)
1094
+ end
1095
+
1096
+ # Returns a list of the audience export jobs.
1097
+ #
1098
+ # @option params [String] :audience_generation_job_arn
1099
+ # The Amazon Resource Name (ARN) of the audience generation job that you
1100
+ # are interested in.
1101
+ #
1102
+ # @option params [Integer] :max_results
1103
+ # The maximum size of the results that is returned per call.
1104
+ #
1105
+ # @option params [String] :next_token
1106
+ # The token value retrieved from a previous call to access the next page
1107
+ # of results.
1108
+ #
1109
+ # @return [Types::ListAudienceExportJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1110
+ #
1111
+ # * {Types::ListAudienceExportJobsResponse#audience_export_jobs #audience_export_jobs} => Array&lt;Types::AudienceExportJobSummary&gt;
1112
+ # * {Types::ListAudienceExportJobsResponse#next_token #next_token} => String
1113
+ #
1114
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1115
+ #
1116
+ # @example Request syntax with placeholder values
1117
+ #
1118
+ # resp = client.list_audience_export_jobs({
1119
+ # audience_generation_job_arn: "AudienceGenerationJobArn",
1120
+ # max_results: 1,
1121
+ # next_token: "NextToken",
1122
+ # })
1123
+ #
1124
+ # @example Response structure
1125
+ #
1126
+ # resp.audience_export_jobs #=> Array
1127
+ # resp.audience_export_jobs[0].audience_generation_job_arn #=> String
1128
+ # resp.audience_export_jobs[0].audience_size.type #=> String, one of "ABSOLUTE", "PERCENTAGE"
1129
+ # resp.audience_export_jobs[0].audience_size.value #=> Integer
1130
+ # resp.audience_export_jobs[0].create_time #=> Time
1131
+ # resp.audience_export_jobs[0].description #=> String
1132
+ # resp.audience_export_jobs[0].name #=> String
1133
+ # resp.audience_export_jobs[0].output_location #=> String
1134
+ # resp.audience_export_jobs[0].status #=> String, one of "CREATE_PENDING", "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE"
1135
+ # resp.audience_export_jobs[0].status_details.message #=> String
1136
+ # resp.audience_export_jobs[0].status_details.status_code #=> String
1137
+ # resp.audience_export_jobs[0].update_time #=> Time
1138
+ # resp.next_token #=> String
1139
+ #
1140
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListAudienceExportJobs AWS API Documentation
1141
+ #
1142
+ # @overload list_audience_export_jobs(params = {})
1143
+ # @param [Hash] params ({})
1144
+ def list_audience_export_jobs(params = {}, options = {})
1145
+ req = build_request(:list_audience_export_jobs, params)
1146
+ req.send_request(options)
1147
+ end
1148
+
1149
+ # Returns a list of audience generation jobs.
1150
+ #
1151
+ # @option params [String] :collaboration_id
1152
+ # The identifier of the collaboration that contains the audience
1153
+ # generation jobs that you are interested in.
1154
+ #
1155
+ # @option params [String] :configured_audience_model_arn
1156
+ # The Amazon Resource Name (ARN) of the configured audience model that
1157
+ # was used for the audience generation jobs that you are interested in.
1158
+ #
1159
+ # @option params [Integer] :max_results
1160
+ # The maximum size of the results that is returned per call.
1161
+ #
1162
+ # @option params [String] :next_token
1163
+ # The token value retrieved from a previous call to access the next page
1164
+ # of results.
1165
+ #
1166
+ # @return [Types::ListAudienceGenerationJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1167
+ #
1168
+ # * {Types::ListAudienceGenerationJobsResponse#audience_generation_jobs #audience_generation_jobs} => Array&lt;Types::AudienceGenerationJobSummary&gt;
1169
+ # * {Types::ListAudienceGenerationJobsResponse#next_token #next_token} => String
1170
+ #
1171
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1172
+ #
1173
+ # @example Request syntax with placeholder values
1174
+ #
1175
+ # resp = client.list_audience_generation_jobs({
1176
+ # collaboration_id: "UUID",
1177
+ # configured_audience_model_arn: "ConfiguredAudienceModelArn",
1178
+ # max_results: 1,
1179
+ # next_token: "NextToken",
1180
+ # })
1181
+ #
1182
+ # @example Response structure
1183
+ #
1184
+ # resp.audience_generation_jobs #=> Array
1185
+ # resp.audience_generation_jobs[0].audience_generation_job_arn #=> String
1186
+ # resp.audience_generation_jobs[0].collaboration_id #=> String
1187
+ # resp.audience_generation_jobs[0].configured_audience_model_arn #=> String
1188
+ # resp.audience_generation_jobs[0].create_time #=> Time
1189
+ # resp.audience_generation_jobs[0].description #=> String
1190
+ # resp.audience_generation_jobs[0].name #=> String
1191
+ # resp.audience_generation_jobs[0].started_by #=> String
1192
+ # resp.audience_generation_jobs[0].status #=> String, one of "CREATE_PENDING", "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_PENDING", "DELETE_IN_PROGRESS", "DELETE_FAILED"
1193
+ # resp.audience_generation_jobs[0].update_time #=> Time
1194
+ # resp.next_token #=> String
1195
+ #
1196
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListAudienceGenerationJobs AWS API Documentation
1197
+ #
1198
+ # @overload list_audience_generation_jobs(params = {})
1199
+ # @param [Hash] params ({})
1200
+ def list_audience_generation_jobs(params = {}, options = {})
1201
+ req = build_request(:list_audience_generation_jobs, params)
1202
+ req.send_request(options)
1203
+ end
1204
+
1205
+ # Returns a list of audience models.
1206
+ #
1207
+ # @option params [Integer] :max_results
1208
+ # The maximum size of the results that is returned per call.
1209
+ #
1210
+ # @option params [String] :next_token
1211
+ # The token value retrieved from a previous call to access the next page
1212
+ # of results.
1213
+ #
1214
+ # @return [Types::ListAudienceModelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1215
+ #
1216
+ # * {Types::ListAudienceModelsResponse#audience_models #audience_models} => Array&lt;Types::AudienceModelSummary&gt;
1217
+ # * {Types::ListAudienceModelsResponse#next_token #next_token} => String
1218
+ #
1219
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1220
+ #
1221
+ # @example Request syntax with placeholder values
1222
+ #
1223
+ # resp = client.list_audience_models({
1224
+ # max_results: 1,
1225
+ # next_token: "NextToken",
1226
+ # })
1227
+ #
1228
+ # @example Response structure
1229
+ #
1230
+ # resp.audience_models #=> Array
1231
+ # resp.audience_models[0].audience_model_arn #=> String
1232
+ # resp.audience_models[0].create_time #=> Time
1233
+ # resp.audience_models[0].description #=> String
1234
+ # resp.audience_models[0].name #=> String
1235
+ # resp.audience_models[0].status #=> String, one of "CREATE_PENDING", "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_PENDING", "DELETE_IN_PROGRESS", "DELETE_FAILED"
1236
+ # resp.audience_models[0].training_dataset_arn #=> String
1237
+ # resp.audience_models[0].update_time #=> Time
1238
+ # resp.next_token #=> String
1239
+ #
1240
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListAudienceModels AWS API Documentation
1241
+ #
1242
+ # @overload list_audience_models(params = {})
1243
+ # @param [Hash] params ({})
1244
+ def list_audience_models(params = {}, options = {})
1245
+ req = build_request(:list_audience_models, params)
1246
+ req.send_request(options)
1247
+ end
1248
+
1249
+ # Returns a list of the configured audience models.
1250
+ #
1251
+ # @option params [Integer] :max_results
1252
+ # The maximum size of the results that is returned per call.
1253
+ #
1254
+ # @option params [String] :next_token
1255
+ # The token value retrieved from a previous call to access the next page
1256
+ # of results.
1257
+ #
1258
+ # @return [Types::ListConfiguredAudienceModelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1259
+ #
1260
+ # * {Types::ListConfiguredAudienceModelsResponse#configured_audience_models #configured_audience_models} => Array&lt;Types::ConfiguredAudienceModelSummary&gt;
1261
+ # * {Types::ListConfiguredAudienceModelsResponse#next_token #next_token} => String
1262
+ #
1263
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1264
+ #
1265
+ # @example Request syntax with placeholder values
1266
+ #
1267
+ # resp = client.list_configured_audience_models({
1268
+ # max_results: 1,
1269
+ # next_token: "NextToken",
1270
+ # })
1271
+ #
1272
+ # @example Response structure
1273
+ #
1274
+ # resp.configured_audience_models #=> Array
1275
+ # resp.configured_audience_models[0].audience_model_arn #=> String
1276
+ # resp.configured_audience_models[0].configured_audience_model_arn #=> String
1277
+ # resp.configured_audience_models[0].create_time #=> Time
1278
+ # resp.configured_audience_models[0].description #=> String
1279
+ # resp.configured_audience_models[0].name #=> String
1280
+ # resp.configured_audience_models[0].output_config.destination.s3_destination.s3_uri #=> String
1281
+ # resp.configured_audience_models[0].output_config.role_arn #=> String
1282
+ # resp.configured_audience_models[0].status #=> String, one of "ACTIVE"
1283
+ # resp.configured_audience_models[0].update_time #=> Time
1284
+ # resp.next_token #=> String
1285
+ #
1286
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListConfiguredAudienceModels AWS API Documentation
1287
+ #
1288
+ # @overload list_configured_audience_models(params = {})
1289
+ # @param [Hash] params ({})
1290
+ def list_configured_audience_models(params = {}, options = {})
1291
+ req = build_request(:list_configured_audience_models, params)
1292
+ req.send_request(options)
1293
+ end
1294
+
1295
+ # Returns a list of tags for a provided resource.
1296
+ #
1297
+ # @option params [required, String] :resource_arn
1298
+ # The Amazon Resource Name (ARN) of the resource that you are interested
1299
+ # in.
1300
+ #
1301
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1302
+ #
1303
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
1304
+ #
1305
+ # @example Request syntax with placeholder values
1306
+ #
1307
+ # resp = client.list_tags_for_resource({
1308
+ # resource_arn: "TaggableArn", # required
1309
+ # })
1310
+ #
1311
+ # @example Response structure
1312
+ #
1313
+ # resp.tags #=> Hash
1314
+ # resp.tags["TagKey"] #=> String
1315
+ #
1316
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListTagsForResource AWS API Documentation
1317
+ #
1318
+ # @overload list_tags_for_resource(params = {})
1319
+ # @param [Hash] params ({})
1320
+ def list_tags_for_resource(params = {}, options = {})
1321
+ req = build_request(:list_tags_for_resource, params)
1322
+ req.send_request(options)
1323
+ end
1324
+
1325
+ # Returns a list of training datasets.
1326
+ #
1327
+ # @option params [Integer] :max_results
1328
+ # The maximum size of the results that is returned per call.
1329
+ #
1330
+ # @option params [String] :next_token
1331
+ # The token value retrieved from a previous call to access the next page
1332
+ # of results.
1333
+ #
1334
+ # @return [Types::ListTrainingDatasetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1335
+ #
1336
+ # * {Types::ListTrainingDatasetsResponse#next_token #next_token} => String
1337
+ # * {Types::ListTrainingDatasetsResponse#training_datasets #training_datasets} => Array&lt;Types::TrainingDatasetSummary&gt;
1338
+ #
1339
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1340
+ #
1341
+ # @example Request syntax with placeholder values
1342
+ #
1343
+ # resp = client.list_training_datasets({
1344
+ # max_results: 1,
1345
+ # next_token: "NextToken",
1346
+ # })
1347
+ #
1348
+ # @example Response structure
1349
+ #
1350
+ # resp.next_token #=> String
1351
+ # resp.training_datasets #=> Array
1352
+ # resp.training_datasets[0].create_time #=> Time
1353
+ # resp.training_datasets[0].description #=> String
1354
+ # resp.training_datasets[0].name #=> String
1355
+ # resp.training_datasets[0].status #=> String, one of "ACTIVE"
1356
+ # resp.training_datasets[0].training_dataset_arn #=> String
1357
+ # resp.training_datasets[0].update_time #=> Time
1358
+ #
1359
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListTrainingDatasets AWS API Documentation
1360
+ #
1361
+ # @overload list_training_datasets(params = {})
1362
+ # @param [Hash] params ({})
1363
+ def list_training_datasets(params = {}, options = {})
1364
+ req = build_request(:list_training_datasets, params)
1365
+ req.send_request(options)
1366
+ end
1367
+
1368
+ # Create or update the resource policy for a configured audience model.
1369
+ #
1370
+ # @option params [required, String] :configured_audience_model_arn
1371
+ # The Amazon Resource Name (ARN) of the configured audience model that
1372
+ # the resource policy will govern.
1373
+ #
1374
+ # @option params [required, String] :configured_audience_model_policy
1375
+ # The IAM resource policy.
1376
+ #
1377
+ # @option params [String] :policy_existence_condition
1378
+ # Use this to prevent unexpected concurrent modification of the policy.
1379
+ #
1380
+ # @option params [String] :previous_policy_hash
1381
+ # A cryptographic hash of the contents of the policy used to prevent
1382
+ # unexpected concurrent modification of the policy.
1383
+ #
1384
+ # @return [Types::PutConfiguredAudienceModelPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1385
+ #
1386
+ # * {Types::PutConfiguredAudienceModelPolicyResponse#configured_audience_model_policy #configured_audience_model_policy} => String
1387
+ # * {Types::PutConfiguredAudienceModelPolicyResponse#policy_hash #policy_hash} => String
1388
+ #
1389
+ # @example Request syntax with placeholder values
1390
+ #
1391
+ # resp = client.put_configured_audience_model_policy({
1392
+ # configured_audience_model_arn: "ConfiguredAudienceModelArn", # required
1393
+ # configured_audience_model_policy: "ResourcePolicy", # required
1394
+ # policy_existence_condition: "POLICY_MUST_EXIST", # accepts POLICY_MUST_EXIST, POLICY_MUST_NOT_EXIST
1395
+ # previous_policy_hash: "Hash",
1396
+ # })
1397
+ #
1398
+ # @example Response structure
1399
+ #
1400
+ # resp.configured_audience_model_policy #=> String
1401
+ # resp.policy_hash #=> String
1402
+ #
1403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/PutConfiguredAudienceModelPolicy AWS API Documentation
1404
+ #
1405
+ # @overload put_configured_audience_model_policy(params = {})
1406
+ # @param [Hash] params ({})
1407
+ def put_configured_audience_model_policy(params = {}, options = {})
1408
+ req = build_request(:put_configured_audience_model_policy, params)
1409
+ req.send_request(options)
1410
+ end
1411
+
1412
+ # Export an audience of a specified size after you have generated an
1413
+ # audience.
1414
+ #
1415
+ # @option params [required, String] :audience_generation_job_arn
1416
+ # The Amazon Resource Name (ARN) of the audience generation job that you
1417
+ # want to export.
1418
+ #
1419
+ # @option params [required, Types::AudienceSize] :audience_size
1420
+ # The size of the generated audience. Must match one of the sizes in the
1421
+ # configured audience model.
1422
+ #
1423
+ # @option params [String] :description
1424
+ # The description of the audience export job.
1425
+ #
1426
+ # @option params [required, String] :name
1427
+ # The name of the audience export job.
1428
+ #
1429
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1430
+ #
1431
+ # @example Request syntax with placeholder values
1432
+ #
1433
+ # resp = client.start_audience_export_job({
1434
+ # audience_generation_job_arn: "AudienceGenerationJobArn", # required
1435
+ # audience_size: { # required
1436
+ # type: "ABSOLUTE", # required, accepts ABSOLUTE, PERCENTAGE
1437
+ # value: 1, # required
1438
+ # },
1439
+ # description: "ResourceDescription",
1440
+ # name: "NameString", # required
1441
+ # })
1442
+ #
1443
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/StartAudienceExportJob AWS API Documentation
1444
+ #
1445
+ # @overload start_audience_export_job(params = {})
1446
+ # @param [Hash] params ({})
1447
+ def start_audience_export_job(params = {}, options = {})
1448
+ req = build_request(:start_audience_export_job, params)
1449
+ req.send_request(options)
1450
+ end
1451
+
1452
+ # Information necessary to start the audience generation job.
1453
+ #
1454
+ # @option params [String] :collaboration_id
1455
+ # The identifier of the collaboration that contains the audience
1456
+ # generation job.
1457
+ #
1458
+ # @option params [required, String] :configured_audience_model_arn
1459
+ # The Amazon Resource Name (ARN) of the configured audience model that
1460
+ # is used for this audience generation job.
1461
+ #
1462
+ # @option params [String] :description
1463
+ # The description of the audience generation job.
1464
+ #
1465
+ # @option params [Boolean] :include_seed_in_output
1466
+ # Whether the seed audience is included in the audience generation
1467
+ # output.
1468
+ #
1469
+ # @option params [required, String] :name
1470
+ # The name of the audience generation job.
1471
+ #
1472
+ # @option params [required, Types::AudienceGenerationJobDataSource] :seed_audience
1473
+ # The seed audience that is used to generate the audience.
1474
+ #
1475
+ # @option params [Hash<String,String>] :tags
1476
+ # The optional metadata that you apply to the resource to help you
1477
+ # categorize and organize them. Each tag consists of a key and an
1478
+ # optional value, both of which you define.
1479
+ #
1480
+ # The following basic restrictions apply to tags:
1481
+ #
1482
+ # * Maximum number of tags per resource - 50.
1483
+ #
1484
+ # * For each resource, each tag key must be unique, and each tag key can
1485
+ # have only one value.
1486
+ #
1487
+ # * Maximum key length - 128 Unicode characters in UTF-8.
1488
+ #
1489
+ # * Maximum value length - 256 Unicode characters in UTF-8.
1490
+ #
1491
+ # * If your tagging schema is used across multiple services and
1492
+ # resources, remember that other services may have restrictions on
1493
+ # allowed characters. Generally allowed characters are: letters,
1494
+ # numbers, and spaces representable in UTF-8, and the following
1495
+ # characters: + - = . \_ : / @.
1496
+ #
1497
+ # * Tag keys and values are case sensitive.
1498
+ #
1499
+ # * Do not use aws:, AWS:, or any upper or lowercase combination of such
1500
+ # as a prefix for keys as it is reserved for AWS use. You cannot edit
1501
+ # or delete tag keys with this prefix. Values can have this prefix. If
1502
+ # a tag value has aws as its prefix but the key does not, then
1503
+ # Forecast considers it to be a user tag and will count against the
1504
+ # limit of 50 tags. Tags with only the key prefix of aws do not count
1505
+ # against your tags per resource limit.
1506
+ #
1507
+ # @return [Types::StartAudienceGenerationJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1508
+ #
1509
+ # * {Types::StartAudienceGenerationJobResponse#audience_generation_job_arn #audience_generation_job_arn} => String
1510
+ #
1511
+ # @example Request syntax with placeholder values
1512
+ #
1513
+ # resp = client.start_audience_generation_job({
1514
+ # collaboration_id: "UUID",
1515
+ # configured_audience_model_arn: "ConfiguredAudienceModelArn", # required
1516
+ # description: "ResourceDescription",
1517
+ # include_seed_in_output: false,
1518
+ # name: "NameString", # required
1519
+ # seed_audience: { # required
1520
+ # data_source: { # required
1521
+ # s3_uri: "S3Path", # required
1522
+ # },
1523
+ # role_arn: "IamRoleArn", # required
1524
+ # },
1525
+ # tags: {
1526
+ # "TagKey" => "TagValue",
1527
+ # },
1528
+ # })
1529
+ #
1530
+ # @example Response structure
1531
+ #
1532
+ # resp.audience_generation_job_arn #=> String
1533
+ #
1534
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/StartAudienceGenerationJob AWS API Documentation
1535
+ #
1536
+ # @overload start_audience_generation_job(params = {})
1537
+ # @param [Hash] params ({})
1538
+ def start_audience_generation_job(params = {}, options = {})
1539
+ req = build_request(:start_audience_generation_job, params)
1540
+ req.send_request(options)
1541
+ end
1542
+
1543
+ # Adds metadata tags to a specified resource.
1544
+ #
1545
+ # @option params [required, String] :resource_arn
1546
+ # The Amazon Resource Name (ARN) of the resource that you want to assign
1547
+ # tags.
1548
+ #
1549
+ # @option params [required, Hash<String,String>] :tags
1550
+ # The optional metadata that you apply to the resource to help you
1551
+ # categorize and organize them. Each tag consists of a key and an
1552
+ # optional value, both of which you define.
1553
+ #
1554
+ # The following basic restrictions apply to tags:
1555
+ #
1556
+ # * Maximum number of tags per resource - 50.
1557
+ #
1558
+ # * For each resource, each tag key must be unique, and each tag key can
1559
+ # have only one value.
1560
+ #
1561
+ # * Maximum key length - 128 Unicode characters in UTF-8.
1562
+ #
1563
+ # * Maximum value length - 256 Unicode characters in UTF-8.
1564
+ #
1565
+ # * If your tagging schema is used across multiple services and
1566
+ # resources, remember that other services may have restrictions on
1567
+ # allowed characters. Generally allowed characters are: letters,
1568
+ # numbers, and spaces representable in UTF-8, and the following
1569
+ # characters: + - = . \_ : / @.
1570
+ #
1571
+ # * Tag keys and values are case sensitive.
1572
+ #
1573
+ # * Do not use aws:, AWS:, or any upper or lowercase combination of such
1574
+ # as a prefix for keys as it is reserved for AWS use. You cannot edit
1575
+ # or delete tag keys with this prefix. Values can have this prefix. If
1576
+ # a tag value has aws as its prefix but the key does not, then
1577
+ # Forecast considers it to be a user tag and will count against the
1578
+ # limit of 50 tags. Tags with only the key prefix of aws do not count
1579
+ # against your tags per resource limit.
1580
+ #
1581
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1582
+ #
1583
+ # @example Request syntax with placeholder values
1584
+ #
1585
+ # resp = client.tag_resource({
1586
+ # resource_arn: "TaggableArn", # required
1587
+ # tags: { # required
1588
+ # "TagKey" => "TagValue",
1589
+ # },
1590
+ # })
1591
+ #
1592
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/TagResource AWS API Documentation
1593
+ #
1594
+ # @overload tag_resource(params = {})
1595
+ # @param [Hash] params ({})
1596
+ def tag_resource(params = {}, options = {})
1597
+ req = build_request(:tag_resource, params)
1598
+ req.send_request(options)
1599
+ end
1600
+
1601
+ # Removes metadata tags from a specified resource.
1602
+ #
1603
+ # @option params [required, String] :resource_arn
1604
+ # The Amazon Resource Name (ARN) of the resource that you want to remove
1605
+ # tags from.
1606
+ #
1607
+ # @option params [required, Array<String>] :tag_keys
1608
+ # The key values of tags that you want to remove.
1609
+ #
1610
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1611
+ #
1612
+ # @example Request syntax with placeholder values
1613
+ #
1614
+ # resp = client.untag_resource({
1615
+ # resource_arn: "TaggableArn", # required
1616
+ # tag_keys: ["TagKey"], # required
1617
+ # })
1618
+ #
1619
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/UntagResource AWS API Documentation
1620
+ #
1621
+ # @overload untag_resource(params = {})
1622
+ # @param [Hash] params ({})
1623
+ def untag_resource(params = {}, options = {})
1624
+ req = build_request(:untag_resource, params)
1625
+ req.send_request(options)
1626
+ end
1627
+
1628
+ # Provides the information necessary to update a configured audience
1629
+ # model. Updates that impact audience generation jobs take effect when a
1630
+ # new job starts, but do not impact currently running jobs.
1631
+ #
1632
+ # @option params [String] :audience_model_arn
1633
+ # The Amazon Resource Name (ARN) of the new audience model that you want
1634
+ # to use.
1635
+ #
1636
+ # @option params [Types::AudienceSizeConfig] :audience_size_config
1637
+ # The new audience size configuration.
1638
+ #
1639
+ # @option params [required, String] :configured_audience_model_arn
1640
+ # The Amazon Resource Name (ARN) of the configured audience model that
1641
+ # you want to update.
1642
+ #
1643
+ # @option params [String] :description
1644
+ # The new description of the configured audience model.
1645
+ #
1646
+ # @option params [Integer] :min_matching_seed_size
1647
+ # The minimum number of users from the seed audience that must match
1648
+ # with users in the training data of the audience model.
1649
+ #
1650
+ # @option params [Types::ConfiguredAudienceModelOutputConfig] :output_config
1651
+ # The new output configuration.
1652
+ #
1653
+ # @option params [Array<String>] :shared_audience_metrics
1654
+ # The new value for whether to share audience metrics.
1655
+ #
1656
+ # @return [Types::UpdateConfiguredAudienceModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1657
+ #
1658
+ # * {Types::UpdateConfiguredAudienceModelResponse#configured_audience_model_arn #configured_audience_model_arn} => String
1659
+ #
1660
+ # @example Request syntax with placeholder values
1661
+ #
1662
+ # resp = client.update_configured_audience_model({
1663
+ # audience_model_arn: "AudienceModelArn",
1664
+ # audience_size_config: {
1665
+ # audience_size_bins: [1], # required
1666
+ # audience_size_type: "ABSOLUTE", # required, accepts ABSOLUTE, PERCENTAGE
1667
+ # },
1668
+ # configured_audience_model_arn: "ConfiguredAudienceModelArn", # required
1669
+ # description: "ResourceDescription",
1670
+ # min_matching_seed_size: 1,
1671
+ # output_config: {
1672
+ # destination: { # required
1673
+ # s3_destination: { # required
1674
+ # s3_uri: "S3Path", # required
1675
+ # },
1676
+ # },
1677
+ # role_arn: "IamRoleArn", # required
1678
+ # },
1679
+ # shared_audience_metrics: ["ALL"], # accepts ALL, NONE
1680
+ # })
1681
+ #
1682
+ # @example Response structure
1683
+ #
1684
+ # resp.configured_audience_model_arn #=> String
1685
+ #
1686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/UpdateConfiguredAudienceModel AWS API Documentation
1687
+ #
1688
+ # @overload update_configured_audience_model(params = {})
1689
+ # @param [Hash] params ({})
1690
+ def update_configured_audience_model(params = {}, options = {})
1691
+ req = build_request(:update_configured_audience_model, params)
1692
+ req.send_request(options)
1693
+ end
1694
+
1695
+ # @!endgroup
1696
+
1697
+ # @param params ({})
1698
+ # @api private
1699
+ def build_request(operation_name, params = {})
1700
+ handlers = @handlers.for(operation_name)
1701
+ context = Seahorse::Client::RequestContext.new(
1702
+ operation_name: operation_name,
1703
+ operation: config.api.operation(operation_name),
1704
+ client: self,
1705
+ params: params,
1706
+ config: config)
1707
+ context[:gem_name] = 'aws-sdk-cleanroomsml'
1708
+ context[:gem_version] = '1.0.0'
1709
+ Seahorse::Client::Request.new(handlers, context)
1710
+ end
1711
+
1712
+ # @api private
1713
+ # @deprecated
1714
+ def waiter_names
1715
+ []
1716
+ end
1717
+
1718
+ class << self
1719
+
1720
+ # @api private
1721
+ attr_reader :identifier
1722
+
1723
+ # @api private
1724
+ def errors_module
1725
+ Errors
1726
+ end
1727
+
1728
+ end
1729
+ end
1730
+ end