aws-sdk-cleanroomsml 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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