aws-sdk-qconnect 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,2941 @@
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(:qconnect)
38
+
39
+ module Aws::QConnect
40
+ # An API client for QConnect. To construct a client, you need to configure a `:region` and `:credentials`.
41
+ #
42
+ # client = Aws::QConnect::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 = :qconnect
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::QConnect::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::QConnect::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::QConnect::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
+ # Creates an Amazon Q in Connect assistant.
392
+ #
393
+ # @option params [String] :client_token
394
+ # A unique, case-sensitive identifier that you provide to ensure the
395
+ # idempotency of the request. If not provided, the Amazon Web Services
396
+ # SDK populates this field. For more information about idempotency, see
397
+ # [Making retries safe with idempotent APIs][1].
398
+ #
399
+ # **A suitable default value is auto-generated.** You should normally
400
+ # not need to pass this option.**
401
+ #
402
+ #
403
+ #
404
+ # [1]: https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
405
+ #
406
+ # @option params [String] :description
407
+ # The description of the assistant.
408
+ #
409
+ # @option params [required, String] :name
410
+ # The name of the assistant.
411
+ #
412
+ # @option params [Types::ServerSideEncryptionConfiguration] :server_side_encryption_configuration
413
+ # The configuration information for the customer managed key used for
414
+ # encryption.
415
+ #
416
+ # The customer managed key must have a policy that allows
417
+ # `kms:CreateGrant`, ` kms:DescribeKey`, `kms:Decrypt`, and
418
+ # `kms:GenerateDataKey*` permissions to the IAM identity using the key
419
+ # to invoke Amazon Q. To use Amazon Q with chat, the key policy must
420
+ # also allow `kms:Decrypt`, `kms:GenerateDataKey*`, and
421
+ # `kms:DescribeKey` permissions to the `connect.amazonaws.com` service
422
+ # principal.
423
+ #
424
+ # For more information about setting up a customer managed key for
425
+ # Amazon Q, see [Enable Amazon Q in Connect for your instance][1].
426
+ #
427
+ #
428
+ #
429
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html
430
+ #
431
+ # @option params [Hash<String,String>] :tags
432
+ # The tags used to organize, track, or control access for this resource.
433
+ #
434
+ # @option params [required, String] :type
435
+ # The type of assistant.
436
+ #
437
+ # @return [Types::CreateAssistantResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
438
+ #
439
+ # * {Types::CreateAssistantResponse#assistant #assistant} => Types::AssistantData
440
+ #
441
+ # @example Request syntax with placeholder values
442
+ #
443
+ # resp = client.create_assistant({
444
+ # client_token: "ClientToken",
445
+ # description: "Description",
446
+ # name: "Name", # required
447
+ # server_side_encryption_configuration: {
448
+ # kms_key_id: "NonEmptyString",
449
+ # },
450
+ # tags: {
451
+ # "TagKey" => "TagValue",
452
+ # },
453
+ # type: "AGENT", # required, accepts AGENT
454
+ # })
455
+ #
456
+ # @example Response structure
457
+ #
458
+ # resp.assistant.assistant_arn #=> String
459
+ # resp.assistant.assistant_id #=> String
460
+ # resp.assistant.capability_configuration.type #=> String, one of "V1", "V2"
461
+ # resp.assistant.description #=> String
462
+ # resp.assistant.integration_configuration.topic_integration_arn #=> String
463
+ # resp.assistant.name #=> String
464
+ # resp.assistant.server_side_encryption_configuration.kms_key_id #=> String
465
+ # resp.assistant.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
466
+ # resp.assistant.tags #=> Hash
467
+ # resp.assistant.tags["TagKey"] #=> String
468
+ # resp.assistant.type #=> String, one of "AGENT"
469
+ #
470
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAssistant AWS API Documentation
471
+ #
472
+ # @overload create_assistant(params = {})
473
+ # @param [Hash] params ({})
474
+ def create_assistant(params = {}, options = {})
475
+ req = build_request(:create_assistant, params)
476
+ req.send_request(options)
477
+ end
478
+
479
+ # Creates an association between an Amazon Q in Connect assistant and
480
+ # another resource. Currently, the only supported association is with a
481
+ # knowledge base. An assistant can have only a single association.
482
+ #
483
+ # @option params [required, String] :assistant_id
484
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
485
+ # ARN. URLs cannot contain the ARN.
486
+ #
487
+ # @option params [required, Types::AssistantAssociationInputData] :association
488
+ # The identifier of the associated resource.
489
+ #
490
+ # @option params [required, String] :association_type
491
+ # The type of association.
492
+ #
493
+ # @option params [String] :client_token
494
+ # A unique, case-sensitive identifier that you provide to ensure the
495
+ # idempotency of the request. If not provided, the Amazon Web Services
496
+ # SDK populates this field. For more information about idempotency, see
497
+ # [Making retries safe with idempotent APIs][1].
498
+ #
499
+ # **A suitable default value is auto-generated.** You should normally
500
+ # not need to pass this option.**
501
+ #
502
+ #
503
+ #
504
+ # [1]: https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
505
+ #
506
+ # @option params [Hash<String,String>] :tags
507
+ # The tags used to organize, track, or control access for this resource.
508
+ #
509
+ # @return [Types::CreateAssistantAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
510
+ #
511
+ # * {Types::CreateAssistantAssociationResponse#assistant_association #assistant_association} => Types::AssistantAssociationData
512
+ #
513
+ # @example Request syntax with placeholder values
514
+ #
515
+ # resp = client.create_assistant_association({
516
+ # assistant_id: "UuidOrArn", # required
517
+ # association: { # required
518
+ # knowledge_base_id: "Uuid",
519
+ # },
520
+ # association_type: "KNOWLEDGE_BASE", # required, accepts KNOWLEDGE_BASE
521
+ # client_token: "ClientToken",
522
+ # tags: {
523
+ # "TagKey" => "TagValue",
524
+ # },
525
+ # })
526
+ #
527
+ # @example Response structure
528
+ #
529
+ # resp.assistant_association.assistant_arn #=> String
530
+ # resp.assistant_association.assistant_association_arn #=> String
531
+ # resp.assistant_association.assistant_association_id #=> String
532
+ # resp.assistant_association.assistant_id #=> String
533
+ # resp.assistant_association.association_data.knowledge_base_association.knowledge_base_arn #=> String
534
+ # resp.assistant_association.association_data.knowledge_base_association.knowledge_base_id #=> String
535
+ # resp.assistant_association.association_type #=> String, one of "KNOWLEDGE_BASE"
536
+ # resp.assistant_association.tags #=> Hash
537
+ # resp.assistant_association.tags["TagKey"] #=> String
538
+ #
539
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAssistantAssociation AWS API Documentation
540
+ #
541
+ # @overload create_assistant_association(params = {})
542
+ # @param [Hash] params ({})
543
+ def create_assistant_association(params = {}, options = {})
544
+ req = build_request(:create_assistant_association, params)
545
+ req.send_request(options)
546
+ end
547
+
548
+ # Creates Amazon Q content. Before to calling this API, use
549
+ # [StartContentUpload][1] to upload an asset.
550
+ #
551
+ #
552
+ #
553
+ # [1]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html
554
+ #
555
+ # @option params [String] :client_token
556
+ # A unique, case-sensitive identifier that you provide to ensure the
557
+ # idempotency of the request. If not provided, the Amazon Web Services
558
+ # SDK populates this field. For more information about idempotency, see
559
+ # [Making retries safe with idempotent APIs][1].
560
+ #
561
+ # **A suitable default value is auto-generated.** You should normally
562
+ # not need to pass this option.**
563
+ #
564
+ #
565
+ #
566
+ # [1]: https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
567
+ #
568
+ # @option params [required, String] :knowledge_base_id
569
+ # The identifier of the knowledge base. This should not be a
570
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
571
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
572
+ # contain the ARN.
573
+ #
574
+ # @option params [Hash<String,String>] :metadata
575
+ # A key/value map to store attributes without affecting tagging or
576
+ # recommendations. For example, when synchronizing data between an
577
+ # external system and Amazon Q, you can store an external version
578
+ # identifier as metadata to utilize for determining drift.
579
+ #
580
+ # @option params [required, String] :name
581
+ # The name of the content. Each piece of content in a knowledge base
582
+ # must have a unique name. You can retrieve a piece of content using
583
+ # only its knowledge base and its name with the [SearchContent][1] API.
584
+ #
585
+ #
586
+ #
587
+ # [1]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_SearchContent.html
588
+ #
589
+ # @option params [String] :override_link_out_uri
590
+ # The URI you want to use for the article. If the knowledge base has a
591
+ # templateUri, setting this argument overrides it for this piece of
592
+ # content.
593
+ #
594
+ # @option params [Hash<String,String>] :tags
595
+ # The tags used to organize, track, or control access for this resource.
596
+ #
597
+ # @option params [String] :title
598
+ # The title of the content. If not set, the title is equal to the name.
599
+ #
600
+ # @option params [required, String] :upload_id
601
+ # A pointer to the uploaded asset. This value is returned by
602
+ # [StartContentUpload][1].
603
+ #
604
+ #
605
+ #
606
+ # [1]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html
607
+ #
608
+ # @return [Types::CreateContentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
609
+ #
610
+ # * {Types::CreateContentResponse#content #content} => Types::ContentData
611
+ #
612
+ # @example Request syntax with placeholder values
613
+ #
614
+ # resp = client.create_content({
615
+ # client_token: "NonEmptyString",
616
+ # knowledge_base_id: "UuidOrArn", # required
617
+ # metadata: {
618
+ # "NonEmptyString" => "NonEmptyString",
619
+ # },
620
+ # name: "Name", # required
621
+ # override_link_out_uri: "Uri",
622
+ # tags: {
623
+ # "TagKey" => "TagValue",
624
+ # },
625
+ # title: "ContentTitle",
626
+ # upload_id: "UploadId", # required
627
+ # })
628
+ #
629
+ # @example Response structure
630
+ #
631
+ # resp.content.content_arn #=> String
632
+ # resp.content.content_id #=> String
633
+ # resp.content.content_type #=> String
634
+ # resp.content.knowledge_base_arn #=> String
635
+ # resp.content.knowledge_base_id #=> String
636
+ # resp.content.link_out_uri #=> String
637
+ # resp.content.metadata #=> Hash
638
+ # resp.content.metadata["NonEmptyString"] #=> String
639
+ # resp.content.name #=> String
640
+ # resp.content.revision_id #=> String
641
+ # resp.content.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_FAILED"
642
+ # resp.content.tags #=> Hash
643
+ # resp.content.tags["TagKey"] #=> String
644
+ # resp.content.title #=> String
645
+ # resp.content.url #=> String
646
+ # resp.content.url_expiry #=> Time
647
+ #
648
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateContent AWS API Documentation
649
+ #
650
+ # @overload create_content(params = {})
651
+ # @param [Hash] params ({})
652
+ def create_content(params = {}, options = {})
653
+ req = build_request(:create_content, params)
654
+ req.send_request(options)
655
+ end
656
+
657
+ # Creates a knowledge base.
658
+ #
659
+ # <note markdown="1"> When using this API, you cannot reuse [Amazon AppIntegrations][1]
660
+ # DataIntegrations with external knowledge bases such as Salesforce and
661
+ # ServiceNow. If you do, you'll get an `InvalidRequestException` error.
662
+ #
663
+ # For example, you're programmatically managing your external knowledge
664
+ # base, and you want to add or remove one of the fields that is being
665
+ # ingested from Salesforce. Do the following:
666
+ #
667
+ # 1. Call [DeleteKnowledgeBase][2].
668
+ #
669
+ # 2. Call [DeleteDataIntegration][3].
670
+ #
671
+ # 3. Call [CreateDataIntegration][4] to recreate the DataIntegration or
672
+ # a create different one.
673
+ #
674
+ # 4. Call CreateKnowledgeBase.
675
+ #
676
+ # </note>
677
+ #
678
+ #
679
+ #
680
+ # [1]: https://docs.aws.amazon.com/appintegrations/latest/APIReference/Welcome.html
681
+ # [2]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_DeleteKnowledgeBase.html
682
+ # [3]: https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_DeleteDataIntegration.html
683
+ # [4]: https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html
684
+ #
685
+ # @option params [String] :client_token
686
+ # A unique, case-sensitive identifier that you provide to ensure the
687
+ # idempotency of the request. If not provided, the Amazon Web Services
688
+ # SDK populates this field. For more information about idempotency, see
689
+ # [Making retries safe with idempotent APIs][1].
690
+ #
691
+ # **A suitable default value is auto-generated.** You should normally
692
+ # not need to pass this option.**
693
+ #
694
+ #
695
+ #
696
+ # [1]: https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
697
+ #
698
+ # @option params [String] :description
699
+ # The description.
700
+ #
701
+ # @option params [required, String] :knowledge_base_type
702
+ # The type of knowledge base. Only CUSTOM knowledge bases allow you to
703
+ # upload your own content. EXTERNAL knowledge bases support integrations
704
+ # with third-party systems whose content is synchronized automatically.
705
+ #
706
+ # @option params [required, String] :name
707
+ # The name of the knowledge base.
708
+ #
709
+ # @option params [Types::RenderingConfiguration] :rendering_configuration
710
+ # Information about how to render the content.
711
+ #
712
+ # @option params [Types::ServerSideEncryptionConfiguration] :server_side_encryption_configuration
713
+ # The configuration information for the customer managed key used for
714
+ # encryption.
715
+ #
716
+ # This KMS key must have a policy that allows `kms:CreateGrant`,
717
+ # `kms:DescribeKey`, `kms:Decrypt`, and `kms:GenerateDataKey*`
718
+ # permissions to the IAM identity using the key to invoke Amazon Q.
719
+ #
720
+ # For more information about setting up a customer managed key for
721
+ # Amazon Q, see [Enable Amazon Q in Connect for your instance][1].
722
+ #
723
+ #
724
+ #
725
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html
726
+ #
727
+ # @option params [Types::SourceConfiguration] :source_configuration
728
+ # The source of the knowledge base content. Only set this argument for
729
+ # EXTERNAL knowledge bases.
730
+ #
731
+ # @option params [Hash<String,String>] :tags
732
+ # The tags used to organize, track, or control access for this resource.
733
+ #
734
+ # @return [Types::CreateKnowledgeBaseResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
735
+ #
736
+ # * {Types::CreateKnowledgeBaseResponse#knowledge_base #knowledge_base} => Types::KnowledgeBaseData
737
+ #
738
+ # @example Request syntax with placeholder values
739
+ #
740
+ # resp = client.create_knowledge_base({
741
+ # client_token: "NonEmptyString",
742
+ # description: "Description",
743
+ # knowledge_base_type: "EXTERNAL", # required, accepts EXTERNAL, CUSTOM, QUICK_RESPONSES
744
+ # name: "Name", # required
745
+ # rendering_configuration: {
746
+ # template_uri: "Uri",
747
+ # },
748
+ # server_side_encryption_configuration: {
749
+ # kms_key_id: "NonEmptyString",
750
+ # },
751
+ # source_configuration: {
752
+ # app_integrations: {
753
+ # app_integration_arn: "GenericArn", # required
754
+ # object_fields: ["NonEmptyString"],
755
+ # },
756
+ # },
757
+ # tags: {
758
+ # "TagKey" => "TagValue",
759
+ # },
760
+ # })
761
+ #
762
+ # @example Response structure
763
+ #
764
+ # resp.knowledge_base.description #=> String
765
+ # resp.knowledge_base.knowledge_base_arn #=> String
766
+ # resp.knowledge_base.knowledge_base_id #=> String
767
+ # resp.knowledge_base.knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES"
768
+ # resp.knowledge_base.last_content_modification_time #=> Time
769
+ # resp.knowledge_base.name #=> String
770
+ # resp.knowledge_base.rendering_configuration.template_uri #=> String
771
+ # resp.knowledge_base.server_side_encryption_configuration.kms_key_id #=> String
772
+ # resp.knowledge_base.source_configuration.app_integrations.app_integration_arn #=> String
773
+ # resp.knowledge_base.source_configuration.app_integrations.object_fields #=> Array
774
+ # resp.knowledge_base.source_configuration.app_integrations.object_fields[0] #=> String
775
+ # resp.knowledge_base.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
776
+ # resp.knowledge_base.tags #=> Hash
777
+ # resp.knowledge_base.tags["TagKey"] #=> String
778
+ #
779
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateKnowledgeBase AWS API Documentation
780
+ #
781
+ # @overload create_knowledge_base(params = {})
782
+ # @param [Hash] params ({})
783
+ def create_knowledge_base(params = {}, options = {})
784
+ req = build_request(:create_knowledge_base, params)
785
+ req.send_request(options)
786
+ end
787
+
788
+ # Creates a Amazon Q quick response.
789
+ #
790
+ # @option params [Array<String>] :channels
791
+ # The Amazon Connect channels this quick response applies to.
792
+ #
793
+ # @option params [String] :client_token
794
+ # A unique, case-sensitive identifier that you provide to ensure the
795
+ # idempotency of the request. If not provided, the Amazon Web Services
796
+ # SDK populates this field. For more information about idempotency, see
797
+ # [Making retries safe with idempotent APIs][1].
798
+ #
799
+ # **A suitable default value is auto-generated.** You should normally
800
+ # not need to pass this option.**
801
+ #
802
+ #
803
+ #
804
+ # [1]: https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
805
+ #
806
+ # @option params [required, Types::QuickResponseDataProvider] :content
807
+ # The content of the quick response.
808
+ #
809
+ # @option params [String] :content_type
810
+ # The media type of the quick response content.
811
+ #
812
+ # * Use `application/x.quickresponse;format=plain` for a quick response
813
+ # written in plain text.
814
+ #
815
+ # * Use `application/x.quickresponse;format=markdown` for a quick
816
+ # response written in richtext.
817
+ #
818
+ # @option params [String] :description
819
+ # The description of the quick response.
820
+ #
821
+ # @option params [Types::GroupingConfiguration] :grouping_configuration
822
+ # The configuration information of the user groups that the quick
823
+ # response is accessible to.
824
+ #
825
+ # @option params [Boolean] :is_active
826
+ # Whether the quick response is active.
827
+ #
828
+ # @option params [required, String] :knowledge_base_id
829
+ # The identifier of the knowledge base. This should not be a
830
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
831
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
832
+ # contain the ARN.
833
+ #
834
+ # @option params [String] :language
835
+ # The language code value for the language in which the quick response
836
+ # is written. The supported language codes include `de_DE`, `en_US`,
837
+ # `es_ES`, `fr_FR`, `id_ID`, `it_IT`, `ja_JP`, `ko_KR`, `pt_BR`,
838
+ # `zh_CN`, `zh_TW`
839
+ #
840
+ # @option params [required, String] :name
841
+ # The name of the quick response.
842
+ #
843
+ # @option params [String] :shortcut_key
844
+ # The shortcut key of the quick response. The value should be unique
845
+ # across the knowledge base.
846
+ #
847
+ # @option params [Hash<String,String>] :tags
848
+ # The tags used to organize, track, or control access for this resource.
849
+ #
850
+ # @return [Types::CreateQuickResponseResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
851
+ #
852
+ # * {Types::CreateQuickResponseResponse#quick_response #quick_response} => Types::QuickResponseData
853
+ #
854
+ # @example Request syntax with placeholder values
855
+ #
856
+ # resp = client.create_quick_response({
857
+ # channels: ["Channel"],
858
+ # client_token: "NonEmptyString",
859
+ # content: { # required
860
+ # content: "QuickResponseContent",
861
+ # },
862
+ # content_type: "QuickResponseType",
863
+ # description: "QuickResponseDescription",
864
+ # grouping_configuration: {
865
+ # criteria: "GroupingCriteria",
866
+ # values: ["GroupingValue"],
867
+ # },
868
+ # is_active: false,
869
+ # knowledge_base_id: "UuidOrArn", # required
870
+ # language: "LanguageCode",
871
+ # name: "QuickResponseName", # required
872
+ # shortcut_key: "ShortCutKey",
873
+ # tags: {
874
+ # "TagKey" => "TagValue",
875
+ # },
876
+ # })
877
+ #
878
+ # @example Response structure
879
+ #
880
+ # resp.quick_response.channels #=> Array
881
+ # resp.quick_response.channels[0] #=> String
882
+ # resp.quick_response.content_type #=> String
883
+ # resp.quick_response.contents.markdown.content #=> String
884
+ # resp.quick_response.contents.plain_text.content #=> String
885
+ # resp.quick_response.created_time #=> Time
886
+ # resp.quick_response.description #=> String
887
+ # resp.quick_response.grouping_configuration.criteria #=> String
888
+ # resp.quick_response.grouping_configuration.values #=> Array
889
+ # resp.quick_response.grouping_configuration.values[0] #=> String
890
+ # resp.quick_response.is_active #=> Boolean
891
+ # resp.quick_response.knowledge_base_arn #=> String
892
+ # resp.quick_response.knowledge_base_id #=> String
893
+ # resp.quick_response.language #=> String
894
+ # resp.quick_response.last_modified_by #=> String
895
+ # resp.quick_response.last_modified_time #=> Time
896
+ # resp.quick_response.name #=> String
897
+ # resp.quick_response.quick_response_arn #=> String
898
+ # resp.quick_response.quick_response_id #=> String
899
+ # resp.quick_response.shortcut_key #=> String
900
+ # resp.quick_response.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED"
901
+ # resp.quick_response.tags #=> Hash
902
+ # resp.quick_response.tags["TagKey"] #=> String
903
+ #
904
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateQuickResponse AWS API Documentation
905
+ #
906
+ # @overload create_quick_response(params = {})
907
+ # @param [Hash] params ({})
908
+ def create_quick_response(params = {}, options = {})
909
+ req = build_request(:create_quick_response, params)
910
+ req.send_request(options)
911
+ end
912
+
913
+ # Creates a session. A session is a contextual container used for
914
+ # generating recommendations. Amazon Connect creates a new Amazon Q
915
+ # session for each contact on which Amazon Q is enabled.
916
+ #
917
+ # @option params [required, String] :assistant_id
918
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
919
+ # ARN. URLs cannot contain the ARN.
920
+ #
921
+ # @option params [String] :client_token
922
+ # A unique, case-sensitive identifier that you provide to ensure the
923
+ # idempotency of the request. If not provided, the Amazon Web Services
924
+ # SDK populates this field. For more information about idempotency, see
925
+ # [Making retries safe with idempotent APIs][1].
926
+ #
927
+ # **A suitable default value is auto-generated.** You should normally
928
+ # not need to pass this option.**
929
+ #
930
+ #
931
+ #
932
+ # [1]: https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
933
+ #
934
+ # @option params [String] :description
935
+ # The description.
936
+ #
937
+ # @option params [required, String] :name
938
+ # The name of the session.
939
+ #
940
+ # @option params [Hash<String,String>] :tags
941
+ # The tags used to organize, track, or control access for this resource.
942
+ #
943
+ # @return [Types::CreateSessionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
944
+ #
945
+ # * {Types::CreateSessionResponse#session #session} => Types::SessionData
946
+ #
947
+ # @example Request syntax with placeholder values
948
+ #
949
+ # resp = client.create_session({
950
+ # assistant_id: "UuidOrArn", # required
951
+ # client_token: "ClientToken",
952
+ # description: "Description",
953
+ # name: "Name", # required
954
+ # tags: {
955
+ # "TagKey" => "TagValue",
956
+ # },
957
+ # })
958
+ #
959
+ # @example Response structure
960
+ #
961
+ # resp.session.description #=> String
962
+ # resp.session.integration_configuration.topic_integration_arn #=> String
963
+ # resp.session.name #=> String
964
+ # resp.session.session_arn #=> String
965
+ # resp.session.session_id #=> String
966
+ # resp.session.tags #=> Hash
967
+ # resp.session.tags["TagKey"] #=> String
968
+ #
969
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateSession AWS API Documentation
970
+ #
971
+ # @overload create_session(params = {})
972
+ # @param [Hash] params ({})
973
+ def create_session(params = {}, options = {})
974
+ req = build_request(:create_session, params)
975
+ req.send_request(options)
976
+ end
977
+
978
+ # Deletes an assistant.
979
+ #
980
+ # @option params [required, String] :assistant_id
981
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
982
+ # ARN. URLs cannot contain the ARN.
983
+ #
984
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
985
+ #
986
+ # @example Request syntax with placeholder values
987
+ #
988
+ # resp = client.delete_assistant({
989
+ # assistant_id: "UuidOrArn", # required
990
+ # })
991
+ #
992
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAssistant AWS API Documentation
993
+ #
994
+ # @overload delete_assistant(params = {})
995
+ # @param [Hash] params ({})
996
+ def delete_assistant(params = {}, options = {})
997
+ req = build_request(:delete_assistant, params)
998
+ req.send_request(options)
999
+ end
1000
+
1001
+ # Deletes an assistant association.
1002
+ #
1003
+ # @option params [required, String] :assistant_association_id
1004
+ # The identifier of the assistant association. Can be either the ID or
1005
+ # the ARN. URLs cannot contain the ARN.
1006
+ #
1007
+ # @option params [required, String] :assistant_id
1008
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
1009
+ # ARN. URLs cannot contain the ARN.
1010
+ #
1011
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1012
+ #
1013
+ # @example Request syntax with placeholder values
1014
+ #
1015
+ # resp = client.delete_assistant_association({
1016
+ # assistant_association_id: "UuidOrArn", # required
1017
+ # assistant_id: "UuidOrArn", # required
1018
+ # })
1019
+ #
1020
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAssistantAssociation AWS API Documentation
1021
+ #
1022
+ # @overload delete_assistant_association(params = {})
1023
+ # @param [Hash] params ({})
1024
+ def delete_assistant_association(params = {}, options = {})
1025
+ req = build_request(:delete_assistant_association, params)
1026
+ req.send_request(options)
1027
+ end
1028
+
1029
+ # Deletes the content.
1030
+ #
1031
+ # @option params [required, String] :content_id
1032
+ # The identifier of the content. Can be either the ID or the ARN. URLs
1033
+ # cannot contain the ARN.
1034
+ #
1035
+ # @option params [required, String] :knowledge_base_id
1036
+ # The identifier of the knowledge base. This should not be a
1037
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
1038
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
1039
+ # contain the ARN.
1040
+ #
1041
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1042
+ #
1043
+ # @example Request syntax with placeholder values
1044
+ #
1045
+ # resp = client.delete_content({
1046
+ # content_id: "UuidOrArn", # required
1047
+ # knowledge_base_id: "UuidOrArn", # required
1048
+ # })
1049
+ #
1050
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteContent AWS API Documentation
1051
+ #
1052
+ # @overload delete_content(params = {})
1053
+ # @param [Hash] params ({})
1054
+ def delete_content(params = {}, options = {})
1055
+ req = build_request(:delete_content, params)
1056
+ req.send_request(options)
1057
+ end
1058
+
1059
+ # Deletes the quick response import job.
1060
+ #
1061
+ # @option params [required, String] :import_job_id
1062
+ # The identifier of the import job to be deleted.
1063
+ #
1064
+ # @option params [required, String] :knowledge_base_id
1065
+ # The identifier of the knowledge base. This should not be a
1066
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
1067
+ # Content resource to it.
1068
+ #
1069
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1070
+ #
1071
+ # @example Request syntax with placeholder values
1072
+ #
1073
+ # resp = client.delete_import_job({
1074
+ # import_job_id: "Uuid", # required
1075
+ # knowledge_base_id: "UuidOrArn", # required
1076
+ # })
1077
+ #
1078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteImportJob AWS API Documentation
1079
+ #
1080
+ # @overload delete_import_job(params = {})
1081
+ # @param [Hash] params ({})
1082
+ def delete_import_job(params = {}, options = {})
1083
+ req = build_request(:delete_import_job, params)
1084
+ req.send_request(options)
1085
+ end
1086
+
1087
+ # Deletes the knowledge base.
1088
+ #
1089
+ # <note markdown="1"> When you use this API to delete an external knowledge base such as
1090
+ # Salesforce or ServiceNow, you must also delete the [Amazon
1091
+ # AppIntegrations][1] DataIntegration. This is because you can't reuse
1092
+ # the DataIntegration after it's been associated with an external
1093
+ # knowledge base. However, you can delete and recreate it. See
1094
+ # [DeleteDataIntegration][2] and [CreateDataIntegration][3] in the
1095
+ # *Amazon AppIntegrations API Reference*.
1096
+ #
1097
+ # </note>
1098
+ #
1099
+ #
1100
+ #
1101
+ # [1]: https://docs.aws.amazon.com/appintegrations/latest/APIReference/Welcome.html
1102
+ # [2]: https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_DeleteDataIntegration.html
1103
+ # [3]: https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html
1104
+ #
1105
+ # @option params [required, String] :knowledge_base_id
1106
+ # The knowledge base to delete content from. Can be either the ID or the
1107
+ # ARN. URLs cannot contain the ARN.
1108
+ #
1109
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1110
+ #
1111
+ # @example Request syntax with placeholder values
1112
+ #
1113
+ # resp = client.delete_knowledge_base({
1114
+ # knowledge_base_id: "UuidOrArn", # required
1115
+ # })
1116
+ #
1117
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteKnowledgeBase AWS API Documentation
1118
+ #
1119
+ # @overload delete_knowledge_base(params = {})
1120
+ # @param [Hash] params ({})
1121
+ def delete_knowledge_base(params = {}, options = {})
1122
+ req = build_request(:delete_knowledge_base, params)
1123
+ req.send_request(options)
1124
+ end
1125
+
1126
+ # Deletes a quick response.
1127
+ #
1128
+ # @option params [required, String] :knowledge_base_id
1129
+ # The knowledge base from which the quick response is deleted. The
1130
+ # identifier of the knowledge base. This should not be a
1131
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
1132
+ # Content resource to it.
1133
+ #
1134
+ # @option params [required, String] :quick_response_id
1135
+ # The identifier of the quick response to delete.
1136
+ #
1137
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1138
+ #
1139
+ # @example Request syntax with placeholder values
1140
+ #
1141
+ # resp = client.delete_quick_response({
1142
+ # knowledge_base_id: "UuidOrArn", # required
1143
+ # quick_response_id: "UuidOrArn", # required
1144
+ # })
1145
+ #
1146
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteQuickResponse AWS API Documentation
1147
+ #
1148
+ # @overload delete_quick_response(params = {})
1149
+ # @param [Hash] params ({})
1150
+ def delete_quick_response(params = {}, options = {})
1151
+ req = build_request(:delete_quick_response, params)
1152
+ req.send_request(options)
1153
+ end
1154
+
1155
+ # Retrieves information about an assistant.
1156
+ #
1157
+ # @option params [required, String] :assistant_id
1158
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
1159
+ # ARN. URLs cannot contain the ARN.
1160
+ #
1161
+ # @return [Types::GetAssistantResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1162
+ #
1163
+ # * {Types::GetAssistantResponse#assistant #assistant} => Types::AssistantData
1164
+ #
1165
+ # @example Request syntax with placeholder values
1166
+ #
1167
+ # resp = client.get_assistant({
1168
+ # assistant_id: "UuidOrArn", # required
1169
+ # })
1170
+ #
1171
+ # @example Response structure
1172
+ #
1173
+ # resp.assistant.assistant_arn #=> String
1174
+ # resp.assistant.assistant_id #=> String
1175
+ # resp.assistant.capability_configuration.type #=> String, one of "V1", "V2"
1176
+ # resp.assistant.description #=> String
1177
+ # resp.assistant.integration_configuration.topic_integration_arn #=> String
1178
+ # resp.assistant.name #=> String
1179
+ # resp.assistant.server_side_encryption_configuration.kms_key_id #=> String
1180
+ # resp.assistant.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1181
+ # resp.assistant.tags #=> Hash
1182
+ # resp.assistant.tags["TagKey"] #=> String
1183
+ # resp.assistant.type #=> String, one of "AGENT"
1184
+ #
1185
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAssistant AWS API Documentation
1186
+ #
1187
+ # @overload get_assistant(params = {})
1188
+ # @param [Hash] params ({})
1189
+ def get_assistant(params = {}, options = {})
1190
+ req = build_request(:get_assistant, params)
1191
+ req.send_request(options)
1192
+ end
1193
+
1194
+ # Retrieves information about an assistant association.
1195
+ #
1196
+ # @option params [required, String] :assistant_association_id
1197
+ # The identifier of the assistant association. Can be either the ID or
1198
+ # the ARN. URLs cannot contain the ARN.
1199
+ #
1200
+ # @option params [required, String] :assistant_id
1201
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
1202
+ # ARN. URLs cannot contain the ARN.
1203
+ #
1204
+ # @return [Types::GetAssistantAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1205
+ #
1206
+ # * {Types::GetAssistantAssociationResponse#assistant_association #assistant_association} => Types::AssistantAssociationData
1207
+ #
1208
+ # @example Request syntax with placeholder values
1209
+ #
1210
+ # resp = client.get_assistant_association({
1211
+ # assistant_association_id: "UuidOrArn", # required
1212
+ # assistant_id: "UuidOrArn", # required
1213
+ # })
1214
+ #
1215
+ # @example Response structure
1216
+ #
1217
+ # resp.assistant_association.assistant_arn #=> String
1218
+ # resp.assistant_association.assistant_association_arn #=> String
1219
+ # resp.assistant_association.assistant_association_id #=> String
1220
+ # resp.assistant_association.assistant_id #=> String
1221
+ # resp.assistant_association.association_data.knowledge_base_association.knowledge_base_arn #=> String
1222
+ # resp.assistant_association.association_data.knowledge_base_association.knowledge_base_id #=> String
1223
+ # resp.assistant_association.association_type #=> String, one of "KNOWLEDGE_BASE"
1224
+ # resp.assistant_association.tags #=> Hash
1225
+ # resp.assistant_association.tags["TagKey"] #=> String
1226
+ #
1227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAssistantAssociation AWS API Documentation
1228
+ #
1229
+ # @overload get_assistant_association(params = {})
1230
+ # @param [Hash] params ({})
1231
+ def get_assistant_association(params = {}, options = {})
1232
+ req = build_request(:get_assistant_association, params)
1233
+ req.send_request(options)
1234
+ end
1235
+
1236
+ # Retrieves content, including a pre-signed URL to download the content.
1237
+ #
1238
+ # @option params [required, String] :content_id
1239
+ # The identifier of the content. Can be either the ID or the ARN. URLs
1240
+ # cannot contain the ARN.
1241
+ #
1242
+ # @option params [required, String] :knowledge_base_id
1243
+ # The identifier of the knowledge base. This should not be a
1244
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
1245
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
1246
+ # contain the ARN.
1247
+ #
1248
+ # @return [Types::GetContentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1249
+ #
1250
+ # * {Types::GetContentResponse#content #content} => Types::ContentData
1251
+ #
1252
+ # @example Request syntax with placeholder values
1253
+ #
1254
+ # resp = client.get_content({
1255
+ # content_id: "UuidOrArn", # required
1256
+ # knowledge_base_id: "UuidOrArn", # required
1257
+ # })
1258
+ #
1259
+ # @example Response structure
1260
+ #
1261
+ # resp.content.content_arn #=> String
1262
+ # resp.content.content_id #=> String
1263
+ # resp.content.content_type #=> String
1264
+ # resp.content.knowledge_base_arn #=> String
1265
+ # resp.content.knowledge_base_id #=> String
1266
+ # resp.content.link_out_uri #=> String
1267
+ # resp.content.metadata #=> Hash
1268
+ # resp.content.metadata["NonEmptyString"] #=> String
1269
+ # resp.content.name #=> String
1270
+ # resp.content.revision_id #=> String
1271
+ # resp.content.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_FAILED"
1272
+ # resp.content.tags #=> Hash
1273
+ # resp.content.tags["TagKey"] #=> String
1274
+ # resp.content.title #=> String
1275
+ # resp.content.url #=> String
1276
+ # resp.content.url_expiry #=> Time
1277
+ #
1278
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetContent AWS API Documentation
1279
+ #
1280
+ # @overload get_content(params = {})
1281
+ # @param [Hash] params ({})
1282
+ def get_content(params = {}, options = {})
1283
+ req = build_request(:get_content, params)
1284
+ req.send_request(options)
1285
+ end
1286
+
1287
+ # Retrieves summary information about the content.
1288
+ #
1289
+ # @option params [required, String] :content_id
1290
+ # The identifier of the content. Can be either the ID or the ARN. URLs
1291
+ # cannot contain the ARN.
1292
+ #
1293
+ # @option params [required, String] :knowledge_base_id
1294
+ # The identifier of the knowledge base. This should not be a
1295
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
1296
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
1297
+ # contain the ARN.
1298
+ #
1299
+ # @return [Types::GetContentSummaryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1300
+ #
1301
+ # * {Types::GetContentSummaryResponse#content_summary #content_summary} => Types::ContentSummary
1302
+ #
1303
+ # @example Request syntax with placeholder values
1304
+ #
1305
+ # resp = client.get_content_summary({
1306
+ # content_id: "UuidOrArn", # required
1307
+ # knowledge_base_id: "UuidOrArn", # required
1308
+ # })
1309
+ #
1310
+ # @example Response structure
1311
+ #
1312
+ # resp.content_summary.content_arn #=> String
1313
+ # resp.content_summary.content_id #=> String
1314
+ # resp.content_summary.content_type #=> String
1315
+ # resp.content_summary.knowledge_base_arn #=> String
1316
+ # resp.content_summary.knowledge_base_id #=> String
1317
+ # resp.content_summary.metadata #=> Hash
1318
+ # resp.content_summary.metadata["NonEmptyString"] #=> String
1319
+ # resp.content_summary.name #=> String
1320
+ # resp.content_summary.revision_id #=> String
1321
+ # resp.content_summary.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_FAILED"
1322
+ # resp.content_summary.tags #=> Hash
1323
+ # resp.content_summary.tags["TagKey"] #=> String
1324
+ # resp.content_summary.title #=> String
1325
+ #
1326
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetContentSummary AWS API Documentation
1327
+ #
1328
+ # @overload get_content_summary(params = {})
1329
+ # @param [Hash] params ({})
1330
+ def get_content_summary(params = {}, options = {})
1331
+ req = build_request(:get_content_summary, params)
1332
+ req.send_request(options)
1333
+ end
1334
+
1335
+ # Retrieves the started import job.
1336
+ #
1337
+ # @option params [required, String] :import_job_id
1338
+ # The identifier of the import job to retrieve.
1339
+ #
1340
+ # @option params [required, String] :knowledge_base_id
1341
+ # The identifier of the knowledge base that the import job belongs to.
1342
+ #
1343
+ # @return [Types::GetImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1344
+ #
1345
+ # * {Types::GetImportJobResponse#import_job #import_job} => Types::ImportJobData
1346
+ #
1347
+ # @example Request syntax with placeholder values
1348
+ #
1349
+ # resp = client.get_import_job({
1350
+ # import_job_id: "Uuid", # required
1351
+ # knowledge_base_id: "UuidOrArn", # required
1352
+ # })
1353
+ #
1354
+ # @example Response structure
1355
+ #
1356
+ # resp.import_job.created_time #=> Time
1357
+ # resp.import_job.external_source_configuration.configuration.connect_configuration.instance_id #=> String
1358
+ # resp.import_job.external_source_configuration.source #=> String, one of "AMAZON_CONNECT"
1359
+ # resp.import_job.failed_record_report #=> String
1360
+ # resp.import_job.import_job_id #=> String
1361
+ # resp.import_job.import_job_type #=> String, one of "QUICK_RESPONSES"
1362
+ # resp.import_job.knowledge_base_arn #=> String
1363
+ # resp.import_job.knowledge_base_id #=> String
1364
+ # resp.import_job.last_modified_time #=> Time
1365
+ # resp.import_job.metadata #=> Hash
1366
+ # resp.import_job.metadata["NonEmptyString"] #=> String
1367
+ # resp.import_job.status #=> String, one of "START_IN_PROGRESS", "FAILED", "COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1368
+ # resp.import_job.upload_id #=> String
1369
+ # resp.import_job.url #=> String
1370
+ # resp.import_job.url_expiry #=> Time
1371
+ #
1372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetImportJob AWS API Documentation
1373
+ #
1374
+ # @overload get_import_job(params = {})
1375
+ # @param [Hash] params ({})
1376
+ def get_import_job(params = {}, options = {})
1377
+ req = build_request(:get_import_job, params)
1378
+ req.send_request(options)
1379
+ end
1380
+
1381
+ # Retrieves information about the knowledge base.
1382
+ #
1383
+ # @option params [required, String] :knowledge_base_id
1384
+ # The identifier of the knowledge base. This should not be a
1385
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
1386
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
1387
+ # contain the ARN.
1388
+ #
1389
+ # @return [Types::GetKnowledgeBaseResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1390
+ #
1391
+ # * {Types::GetKnowledgeBaseResponse#knowledge_base #knowledge_base} => Types::KnowledgeBaseData
1392
+ #
1393
+ # @example Request syntax with placeholder values
1394
+ #
1395
+ # resp = client.get_knowledge_base({
1396
+ # knowledge_base_id: "UuidOrArn", # required
1397
+ # })
1398
+ #
1399
+ # @example Response structure
1400
+ #
1401
+ # resp.knowledge_base.description #=> String
1402
+ # resp.knowledge_base.knowledge_base_arn #=> String
1403
+ # resp.knowledge_base.knowledge_base_id #=> String
1404
+ # resp.knowledge_base.knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES"
1405
+ # resp.knowledge_base.last_content_modification_time #=> Time
1406
+ # resp.knowledge_base.name #=> String
1407
+ # resp.knowledge_base.rendering_configuration.template_uri #=> String
1408
+ # resp.knowledge_base.server_side_encryption_configuration.kms_key_id #=> String
1409
+ # resp.knowledge_base.source_configuration.app_integrations.app_integration_arn #=> String
1410
+ # resp.knowledge_base.source_configuration.app_integrations.object_fields #=> Array
1411
+ # resp.knowledge_base.source_configuration.app_integrations.object_fields[0] #=> String
1412
+ # resp.knowledge_base.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1413
+ # resp.knowledge_base.tags #=> Hash
1414
+ # resp.knowledge_base.tags["TagKey"] #=> String
1415
+ #
1416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetKnowledgeBase AWS API Documentation
1417
+ #
1418
+ # @overload get_knowledge_base(params = {})
1419
+ # @param [Hash] params ({})
1420
+ def get_knowledge_base(params = {}, options = {})
1421
+ req = build_request(:get_knowledge_base, params)
1422
+ req.send_request(options)
1423
+ end
1424
+
1425
+ # Retrieves the quick response.
1426
+ #
1427
+ # @option params [required, String] :knowledge_base_id
1428
+ # The identifier of the knowledge base. This should be a
1429
+ # QUICK\_RESPONSES type knowledge base.
1430
+ #
1431
+ # @option params [required, String] :quick_response_id
1432
+ # The identifier of the quick response.
1433
+ #
1434
+ # @return [Types::GetQuickResponseResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1435
+ #
1436
+ # * {Types::GetQuickResponseResponse#quick_response #quick_response} => Types::QuickResponseData
1437
+ #
1438
+ # @example Request syntax with placeholder values
1439
+ #
1440
+ # resp = client.get_quick_response({
1441
+ # knowledge_base_id: "UuidOrArn", # required
1442
+ # quick_response_id: "UuidOrArn", # required
1443
+ # })
1444
+ #
1445
+ # @example Response structure
1446
+ #
1447
+ # resp.quick_response.channels #=> Array
1448
+ # resp.quick_response.channels[0] #=> String
1449
+ # resp.quick_response.content_type #=> String
1450
+ # resp.quick_response.contents.markdown.content #=> String
1451
+ # resp.quick_response.contents.plain_text.content #=> String
1452
+ # resp.quick_response.created_time #=> Time
1453
+ # resp.quick_response.description #=> String
1454
+ # resp.quick_response.grouping_configuration.criteria #=> String
1455
+ # resp.quick_response.grouping_configuration.values #=> Array
1456
+ # resp.quick_response.grouping_configuration.values[0] #=> String
1457
+ # resp.quick_response.is_active #=> Boolean
1458
+ # resp.quick_response.knowledge_base_arn #=> String
1459
+ # resp.quick_response.knowledge_base_id #=> String
1460
+ # resp.quick_response.language #=> String
1461
+ # resp.quick_response.last_modified_by #=> String
1462
+ # resp.quick_response.last_modified_time #=> Time
1463
+ # resp.quick_response.name #=> String
1464
+ # resp.quick_response.quick_response_arn #=> String
1465
+ # resp.quick_response.quick_response_id #=> String
1466
+ # resp.quick_response.shortcut_key #=> String
1467
+ # resp.quick_response.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED"
1468
+ # resp.quick_response.tags #=> Hash
1469
+ # resp.quick_response.tags["TagKey"] #=> String
1470
+ #
1471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetQuickResponse AWS API Documentation
1472
+ #
1473
+ # @overload get_quick_response(params = {})
1474
+ # @param [Hash] params ({})
1475
+ def get_quick_response(params = {}, options = {})
1476
+ req = build_request(:get_quick_response, params)
1477
+ req.send_request(options)
1478
+ end
1479
+
1480
+ # Retrieves recommendations for the specified session. To avoid
1481
+ # retrieving the same recommendations in subsequent calls, use
1482
+ # [NotifyRecommendationsReceived][1]. This API supports long-polling
1483
+ # behavior with the `waitTimeSeconds` parameter. Short poll is the
1484
+ # default behavior and only returns recommendations already available.
1485
+ # To perform a manual query against an assistant, use
1486
+ # [QueryAssistant][2].
1487
+ #
1488
+ #
1489
+ #
1490
+ # [1]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_NotifyRecommendationsReceived.html
1491
+ # [2]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_QueryAssistant.html
1492
+ #
1493
+ # @option params [required, String] :assistant_id
1494
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
1495
+ # ARN. URLs cannot contain the ARN.
1496
+ #
1497
+ # @option params [Integer] :max_results
1498
+ # The maximum number of results to return per page.
1499
+ #
1500
+ # @option params [required, String] :session_id
1501
+ # The identifier of the session. Can be either the ID or the ARN. URLs
1502
+ # cannot contain the ARN.
1503
+ #
1504
+ # @option params [Integer] :wait_time_seconds
1505
+ # The duration (in seconds) for which the call waits for a
1506
+ # recommendation to be made available before returning. If a
1507
+ # recommendation is available, the call returns sooner than
1508
+ # `WaitTimeSeconds`. If no messages are available and the wait time
1509
+ # expires, the call returns successfully with an empty list.
1510
+ #
1511
+ # @return [Types::GetRecommendationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1512
+ #
1513
+ # * {Types::GetRecommendationsResponse#recommendations #recommendations} => Array&lt;Types::RecommendationData&gt;
1514
+ # * {Types::GetRecommendationsResponse#triggers #triggers} => Array&lt;Types::RecommendationTrigger&gt;
1515
+ #
1516
+ # @example Request syntax with placeholder values
1517
+ #
1518
+ # resp = client.get_recommendations({
1519
+ # assistant_id: "UuidOrArn", # required
1520
+ # max_results: 1,
1521
+ # session_id: "UuidOrArn", # required
1522
+ # wait_time_seconds: 1,
1523
+ # })
1524
+ #
1525
+ # @example Response structure
1526
+ #
1527
+ # resp.recommendations #=> Array
1528
+ # resp.recommendations[0].data.details.content_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
1529
+ # resp.recommendations[0].data.details.content_data.ranking_data.relevance_score #=> Float
1530
+ # resp.recommendations[0].data.details.content_data.text_data.excerpt.highlights #=> Array
1531
+ # resp.recommendations[0].data.details.content_data.text_data.excerpt.highlights[0].begin_offset_inclusive #=> Integer
1532
+ # resp.recommendations[0].data.details.content_data.text_data.excerpt.highlights[0].end_offset_exclusive #=> Integer
1533
+ # resp.recommendations[0].data.details.content_data.text_data.excerpt.text #=> String
1534
+ # resp.recommendations[0].data.details.content_data.text_data.title.highlights #=> Array
1535
+ # resp.recommendations[0].data.details.content_data.text_data.title.highlights[0].begin_offset_inclusive #=> Integer
1536
+ # resp.recommendations[0].data.details.content_data.text_data.title.highlights[0].end_offset_exclusive #=> Integer
1537
+ # resp.recommendations[0].data.details.content_data.text_data.title.text #=> String
1538
+ # resp.recommendations[0].data.details.generative_data.completion #=> String
1539
+ # resp.recommendations[0].data.details.generative_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
1540
+ # resp.recommendations[0].data.details.generative_data.ranking_data.relevance_score #=> Float
1541
+ # resp.recommendations[0].data.details.generative_data.references #=> Array
1542
+ # resp.recommendations[0].data.details.generative_data.references[0] #=> Types::DataSummary
1543
+ # resp.recommendations[0].data.details.source_content_data.id #=> String
1544
+ # resp.recommendations[0].data.details.source_content_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
1545
+ # resp.recommendations[0].data.details.source_content_data.ranking_data.relevance_score #=> Float
1546
+ # resp.recommendations[0].data.details.source_content_data.text_data.excerpt.highlights #=> Array
1547
+ # resp.recommendations[0].data.details.source_content_data.text_data.excerpt.highlights[0].begin_offset_inclusive #=> Integer
1548
+ # resp.recommendations[0].data.details.source_content_data.text_data.excerpt.highlights[0].end_offset_exclusive #=> Integer
1549
+ # resp.recommendations[0].data.details.source_content_data.text_data.excerpt.text #=> String
1550
+ # resp.recommendations[0].data.details.source_content_data.text_data.title.highlights #=> Array
1551
+ # resp.recommendations[0].data.details.source_content_data.text_data.title.highlights[0].begin_offset_inclusive #=> Integer
1552
+ # resp.recommendations[0].data.details.source_content_data.text_data.title.highlights[0].end_offset_exclusive #=> Integer
1553
+ # resp.recommendations[0].data.details.source_content_data.text_data.title.text #=> String
1554
+ # resp.recommendations[0].data.details.source_content_data.type #=> String, one of "KNOWLEDGE_CONTENT"
1555
+ # resp.recommendations[0].data.reference.content_reference.content_arn #=> String
1556
+ # resp.recommendations[0].data.reference.content_reference.content_id #=> String
1557
+ # resp.recommendations[0].data.reference.content_reference.knowledge_base_arn #=> String
1558
+ # resp.recommendations[0].data.reference.content_reference.knowledge_base_id #=> String
1559
+ # resp.recommendations[0].data.reference.generative_reference.generation_id #=> String
1560
+ # resp.recommendations[0].data.reference.generative_reference.model_id #=> String
1561
+ # resp.recommendations[0].document.content_reference.content_arn #=> String
1562
+ # resp.recommendations[0].document.content_reference.content_id #=> String
1563
+ # resp.recommendations[0].document.content_reference.knowledge_base_arn #=> String
1564
+ # resp.recommendations[0].document.content_reference.knowledge_base_id #=> String
1565
+ # resp.recommendations[0].document.excerpt.highlights #=> Array
1566
+ # resp.recommendations[0].document.excerpt.highlights[0].begin_offset_inclusive #=> Integer
1567
+ # resp.recommendations[0].document.excerpt.highlights[0].end_offset_exclusive #=> Integer
1568
+ # resp.recommendations[0].document.excerpt.text #=> String
1569
+ # resp.recommendations[0].document.title.highlights #=> Array
1570
+ # resp.recommendations[0].document.title.highlights[0].begin_offset_inclusive #=> Integer
1571
+ # resp.recommendations[0].document.title.highlights[0].end_offset_exclusive #=> Integer
1572
+ # resp.recommendations[0].document.title.text #=> String
1573
+ # resp.recommendations[0].recommendation_id #=> String
1574
+ # resp.recommendations[0].relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
1575
+ # resp.recommendations[0].relevance_score #=> Float
1576
+ # resp.recommendations[0].type #=> String, one of "KNOWLEDGE_CONTENT", "GENERATIVE_RESPONSE", "GENERATIVE_ANSWER"
1577
+ # resp.triggers #=> Array
1578
+ # resp.triggers[0].data.query.text #=> String
1579
+ # resp.triggers[0].id #=> String
1580
+ # resp.triggers[0].recommendation_ids #=> Array
1581
+ # resp.triggers[0].recommendation_ids[0] #=> String
1582
+ # resp.triggers[0].source #=> String, one of "ISSUE_DETECTION", "RULE_EVALUATION", "OTHER"
1583
+ # resp.triggers[0].type #=> String, one of "QUERY", "GENERATIVE"
1584
+ #
1585
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetRecommendations AWS API Documentation
1586
+ #
1587
+ # @overload get_recommendations(params = {})
1588
+ # @param [Hash] params ({})
1589
+ def get_recommendations(params = {}, options = {})
1590
+ req = build_request(:get_recommendations, params)
1591
+ req.send_request(options)
1592
+ end
1593
+
1594
+ # Retrieves information for a specified session.
1595
+ #
1596
+ # @option params [required, String] :assistant_id
1597
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
1598
+ # ARN. URLs cannot contain the ARN.
1599
+ #
1600
+ # @option params [required, String] :session_id
1601
+ # The identifier of the session. Can be either the ID or the ARN. URLs
1602
+ # cannot contain the ARN.
1603
+ #
1604
+ # @return [Types::GetSessionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1605
+ #
1606
+ # * {Types::GetSessionResponse#session #session} => Types::SessionData
1607
+ #
1608
+ # @example Request syntax with placeholder values
1609
+ #
1610
+ # resp = client.get_session({
1611
+ # assistant_id: "UuidOrArn", # required
1612
+ # session_id: "UuidOrArn", # required
1613
+ # })
1614
+ #
1615
+ # @example Response structure
1616
+ #
1617
+ # resp.session.description #=> String
1618
+ # resp.session.integration_configuration.topic_integration_arn #=> String
1619
+ # resp.session.name #=> String
1620
+ # resp.session.session_arn #=> String
1621
+ # resp.session.session_id #=> String
1622
+ # resp.session.tags #=> Hash
1623
+ # resp.session.tags["TagKey"] #=> String
1624
+ #
1625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetSession AWS API Documentation
1626
+ #
1627
+ # @overload get_session(params = {})
1628
+ # @param [Hash] params ({})
1629
+ def get_session(params = {}, options = {})
1630
+ req = build_request(:get_session, params)
1631
+ req.send_request(options)
1632
+ end
1633
+
1634
+ # Lists information about assistant associations.
1635
+ #
1636
+ # @option params [required, String] :assistant_id
1637
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
1638
+ # ARN. URLs cannot contain the ARN.
1639
+ #
1640
+ # @option params [Integer] :max_results
1641
+ # The maximum number of results to return per page.
1642
+ #
1643
+ # @option params [String] :next_token
1644
+ # The token for the next set of results. Use the value returned in the
1645
+ # previous response in the next request to retrieve the next set of
1646
+ # results.
1647
+ #
1648
+ # @return [Types::ListAssistantAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1649
+ #
1650
+ # * {Types::ListAssistantAssociationsResponse#assistant_association_summaries #assistant_association_summaries} => Array&lt;Types::AssistantAssociationSummary&gt;
1651
+ # * {Types::ListAssistantAssociationsResponse#next_token #next_token} => String
1652
+ #
1653
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1654
+ #
1655
+ # @example Request syntax with placeholder values
1656
+ #
1657
+ # resp = client.list_assistant_associations({
1658
+ # assistant_id: "UuidOrArn", # required
1659
+ # max_results: 1,
1660
+ # next_token: "NextToken",
1661
+ # })
1662
+ #
1663
+ # @example Response structure
1664
+ #
1665
+ # resp.assistant_association_summaries #=> Array
1666
+ # resp.assistant_association_summaries[0].assistant_arn #=> String
1667
+ # resp.assistant_association_summaries[0].assistant_association_arn #=> String
1668
+ # resp.assistant_association_summaries[0].assistant_association_id #=> String
1669
+ # resp.assistant_association_summaries[0].assistant_id #=> String
1670
+ # resp.assistant_association_summaries[0].association_data.knowledge_base_association.knowledge_base_arn #=> String
1671
+ # resp.assistant_association_summaries[0].association_data.knowledge_base_association.knowledge_base_id #=> String
1672
+ # resp.assistant_association_summaries[0].association_type #=> String, one of "KNOWLEDGE_BASE"
1673
+ # resp.assistant_association_summaries[0].tags #=> Hash
1674
+ # resp.assistant_association_summaries[0].tags["TagKey"] #=> String
1675
+ # resp.next_token #=> String
1676
+ #
1677
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAssistantAssociations AWS API Documentation
1678
+ #
1679
+ # @overload list_assistant_associations(params = {})
1680
+ # @param [Hash] params ({})
1681
+ def list_assistant_associations(params = {}, options = {})
1682
+ req = build_request(:list_assistant_associations, params)
1683
+ req.send_request(options)
1684
+ end
1685
+
1686
+ # Lists information about assistants.
1687
+ #
1688
+ # @option params [Integer] :max_results
1689
+ # The maximum number of results to return per page.
1690
+ #
1691
+ # @option params [String] :next_token
1692
+ # The token for the next set of results. Use the value returned in the
1693
+ # previous response in the next request to retrieve the next set of
1694
+ # results.
1695
+ #
1696
+ # @return [Types::ListAssistantsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1697
+ #
1698
+ # * {Types::ListAssistantsResponse#assistant_summaries #assistant_summaries} => Array&lt;Types::AssistantSummary&gt;
1699
+ # * {Types::ListAssistantsResponse#next_token #next_token} => String
1700
+ #
1701
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1702
+ #
1703
+ # @example Request syntax with placeholder values
1704
+ #
1705
+ # resp = client.list_assistants({
1706
+ # max_results: 1,
1707
+ # next_token: "NextToken",
1708
+ # })
1709
+ #
1710
+ # @example Response structure
1711
+ #
1712
+ # resp.assistant_summaries #=> Array
1713
+ # resp.assistant_summaries[0].assistant_arn #=> String
1714
+ # resp.assistant_summaries[0].assistant_id #=> String
1715
+ # resp.assistant_summaries[0].capability_configuration.type #=> String, one of "V1", "V2"
1716
+ # resp.assistant_summaries[0].description #=> String
1717
+ # resp.assistant_summaries[0].integration_configuration.topic_integration_arn #=> String
1718
+ # resp.assistant_summaries[0].name #=> String
1719
+ # resp.assistant_summaries[0].server_side_encryption_configuration.kms_key_id #=> String
1720
+ # resp.assistant_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1721
+ # resp.assistant_summaries[0].tags #=> Hash
1722
+ # resp.assistant_summaries[0].tags["TagKey"] #=> String
1723
+ # resp.assistant_summaries[0].type #=> String, one of "AGENT"
1724
+ # resp.next_token #=> String
1725
+ #
1726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAssistants AWS API Documentation
1727
+ #
1728
+ # @overload list_assistants(params = {})
1729
+ # @param [Hash] params ({})
1730
+ def list_assistants(params = {}, options = {})
1731
+ req = build_request(:list_assistants, params)
1732
+ req.send_request(options)
1733
+ end
1734
+
1735
+ # Lists the content.
1736
+ #
1737
+ # @option params [required, String] :knowledge_base_id
1738
+ # The identifier of the knowledge base. This should not be a
1739
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
1740
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
1741
+ # contain the ARN.
1742
+ #
1743
+ # @option params [Integer] :max_results
1744
+ # The maximum number of results to return per page.
1745
+ #
1746
+ # @option params [String] :next_token
1747
+ # The token for the next set of results. Use the value returned in the
1748
+ # previous response in the next request to retrieve the next set of
1749
+ # results.
1750
+ #
1751
+ # @return [Types::ListContentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1752
+ #
1753
+ # * {Types::ListContentsResponse#content_summaries #content_summaries} => Array&lt;Types::ContentSummary&gt;
1754
+ # * {Types::ListContentsResponse#next_token #next_token} => String
1755
+ #
1756
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1757
+ #
1758
+ # @example Request syntax with placeholder values
1759
+ #
1760
+ # resp = client.list_contents({
1761
+ # knowledge_base_id: "UuidOrArn", # required
1762
+ # max_results: 1,
1763
+ # next_token: "NextToken",
1764
+ # })
1765
+ #
1766
+ # @example Response structure
1767
+ #
1768
+ # resp.content_summaries #=> Array
1769
+ # resp.content_summaries[0].content_arn #=> String
1770
+ # resp.content_summaries[0].content_id #=> String
1771
+ # resp.content_summaries[0].content_type #=> String
1772
+ # resp.content_summaries[0].knowledge_base_arn #=> String
1773
+ # resp.content_summaries[0].knowledge_base_id #=> String
1774
+ # resp.content_summaries[0].metadata #=> Hash
1775
+ # resp.content_summaries[0].metadata["NonEmptyString"] #=> String
1776
+ # resp.content_summaries[0].name #=> String
1777
+ # resp.content_summaries[0].revision_id #=> String
1778
+ # resp.content_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_FAILED"
1779
+ # resp.content_summaries[0].tags #=> Hash
1780
+ # resp.content_summaries[0].tags["TagKey"] #=> String
1781
+ # resp.content_summaries[0].title #=> String
1782
+ # resp.next_token #=> String
1783
+ #
1784
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListContents AWS API Documentation
1785
+ #
1786
+ # @overload list_contents(params = {})
1787
+ # @param [Hash] params ({})
1788
+ def list_contents(params = {}, options = {})
1789
+ req = build_request(:list_contents, params)
1790
+ req.send_request(options)
1791
+ end
1792
+
1793
+ # Lists information about import jobs.
1794
+ #
1795
+ # @option params [required, String] :knowledge_base_id
1796
+ # The identifier of the knowledge base. This should not be a
1797
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
1798
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
1799
+ # contain the ARN.
1800
+ #
1801
+ # @option params [Integer] :max_results
1802
+ # The maximum number of results to return per page.
1803
+ #
1804
+ # @option params [String] :next_token
1805
+ # The token for the next set of results. Use the value returned in the
1806
+ # previous response in the next request to retrieve the next set of
1807
+ # results.
1808
+ #
1809
+ # @return [Types::ListImportJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1810
+ #
1811
+ # * {Types::ListImportJobsResponse#import_job_summaries #import_job_summaries} => Array&lt;Types::ImportJobSummary&gt;
1812
+ # * {Types::ListImportJobsResponse#next_token #next_token} => String
1813
+ #
1814
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1815
+ #
1816
+ # @example Request syntax with placeholder values
1817
+ #
1818
+ # resp = client.list_import_jobs({
1819
+ # knowledge_base_id: "UuidOrArn", # required
1820
+ # max_results: 1,
1821
+ # next_token: "NonEmptyString",
1822
+ # })
1823
+ #
1824
+ # @example Response structure
1825
+ #
1826
+ # resp.import_job_summaries #=> Array
1827
+ # resp.import_job_summaries[0].created_time #=> Time
1828
+ # resp.import_job_summaries[0].external_source_configuration.configuration.connect_configuration.instance_id #=> String
1829
+ # resp.import_job_summaries[0].external_source_configuration.source #=> String, one of "AMAZON_CONNECT"
1830
+ # resp.import_job_summaries[0].import_job_id #=> String
1831
+ # resp.import_job_summaries[0].import_job_type #=> String, one of "QUICK_RESPONSES"
1832
+ # resp.import_job_summaries[0].knowledge_base_arn #=> String
1833
+ # resp.import_job_summaries[0].knowledge_base_id #=> String
1834
+ # resp.import_job_summaries[0].last_modified_time #=> Time
1835
+ # resp.import_job_summaries[0].metadata #=> Hash
1836
+ # resp.import_job_summaries[0].metadata["NonEmptyString"] #=> String
1837
+ # resp.import_job_summaries[0].status #=> String, one of "START_IN_PROGRESS", "FAILED", "COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1838
+ # resp.import_job_summaries[0].upload_id #=> String
1839
+ # resp.next_token #=> String
1840
+ #
1841
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListImportJobs AWS API Documentation
1842
+ #
1843
+ # @overload list_import_jobs(params = {})
1844
+ # @param [Hash] params ({})
1845
+ def list_import_jobs(params = {}, options = {})
1846
+ req = build_request(:list_import_jobs, params)
1847
+ req.send_request(options)
1848
+ end
1849
+
1850
+ # Lists the knowledge bases.
1851
+ #
1852
+ # @option params [Integer] :max_results
1853
+ # The maximum number of results to return per page.
1854
+ #
1855
+ # @option params [String] :next_token
1856
+ # The token for the next set of results. Use the value returned in the
1857
+ # previous response in the next request to retrieve the next set of
1858
+ # results.
1859
+ #
1860
+ # @return [Types::ListKnowledgeBasesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1861
+ #
1862
+ # * {Types::ListKnowledgeBasesResponse#knowledge_base_summaries #knowledge_base_summaries} => Array&lt;Types::KnowledgeBaseSummary&gt;
1863
+ # * {Types::ListKnowledgeBasesResponse#next_token #next_token} => String
1864
+ #
1865
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1866
+ #
1867
+ # @example Request syntax with placeholder values
1868
+ #
1869
+ # resp = client.list_knowledge_bases({
1870
+ # max_results: 1,
1871
+ # next_token: "NonEmptyString",
1872
+ # })
1873
+ #
1874
+ # @example Response structure
1875
+ #
1876
+ # resp.knowledge_base_summaries #=> Array
1877
+ # resp.knowledge_base_summaries[0].description #=> String
1878
+ # resp.knowledge_base_summaries[0].knowledge_base_arn #=> String
1879
+ # resp.knowledge_base_summaries[0].knowledge_base_id #=> String
1880
+ # resp.knowledge_base_summaries[0].knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES"
1881
+ # resp.knowledge_base_summaries[0].name #=> String
1882
+ # resp.knowledge_base_summaries[0].rendering_configuration.template_uri #=> String
1883
+ # resp.knowledge_base_summaries[0].server_side_encryption_configuration.kms_key_id #=> String
1884
+ # resp.knowledge_base_summaries[0].source_configuration.app_integrations.app_integration_arn #=> String
1885
+ # resp.knowledge_base_summaries[0].source_configuration.app_integrations.object_fields #=> Array
1886
+ # resp.knowledge_base_summaries[0].source_configuration.app_integrations.object_fields[0] #=> String
1887
+ # resp.knowledge_base_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1888
+ # resp.knowledge_base_summaries[0].tags #=> Hash
1889
+ # resp.knowledge_base_summaries[0].tags["TagKey"] #=> String
1890
+ # resp.next_token #=> String
1891
+ #
1892
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListKnowledgeBases AWS API Documentation
1893
+ #
1894
+ # @overload list_knowledge_bases(params = {})
1895
+ # @param [Hash] params ({})
1896
+ def list_knowledge_bases(params = {}, options = {})
1897
+ req = build_request(:list_knowledge_bases, params)
1898
+ req.send_request(options)
1899
+ end
1900
+
1901
+ # Lists information about quick response.
1902
+ #
1903
+ # @option params [required, String] :knowledge_base_id
1904
+ # The identifier of the knowledge base. This should not be a
1905
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
1906
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
1907
+ # contain the ARN.
1908
+ #
1909
+ # @option params [Integer] :max_results
1910
+ # The maximum number of results to return per page.
1911
+ #
1912
+ # @option params [String] :next_token
1913
+ # The token for the next set of results. Use the value returned in the
1914
+ # previous response in the next request to retrieve the next set of
1915
+ # results.
1916
+ #
1917
+ # @return [Types::ListQuickResponsesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1918
+ #
1919
+ # * {Types::ListQuickResponsesResponse#next_token #next_token} => String
1920
+ # * {Types::ListQuickResponsesResponse#quick_response_summaries #quick_response_summaries} => Array&lt;Types::QuickResponseSummary&gt;
1921
+ #
1922
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1923
+ #
1924
+ # @example Request syntax with placeholder values
1925
+ #
1926
+ # resp = client.list_quick_responses({
1927
+ # knowledge_base_id: "UuidOrArn", # required
1928
+ # max_results: 1,
1929
+ # next_token: "NonEmptyString",
1930
+ # })
1931
+ #
1932
+ # @example Response structure
1933
+ #
1934
+ # resp.next_token #=> String
1935
+ # resp.quick_response_summaries #=> Array
1936
+ # resp.quick_response_summaries[0].channels #=> Array
1937
+ # resp.quick_response_summaries[0].channels[0] #=> String
1938
+ # resp.quick_response_summaries[0].content_type #=> String
1939
+ # resp.quick_response_summaries[0].created_time #=> Time
1940
+ # resp.quick_response_summaries[0].description #=> String
1941
+ # resp.quick_response_summaries[0].is_active #=> Boolean
1942
+ # resp.quick_response_summaries[0].knowledge_base_arn #=> String
1943
+ # resp.quick_response_summaries[0].knowledge_base_id #=> String
1944
+ # resp.quick_response_summaries[0].last_modified_by #=> String
1945
+ # resp.quick_response_summaries[0].last_modified_time #=> Time
1946
+ # resp.quick_response_summaries[0].name #=> String
1947
+ # resp.quick_response_summaries[0].quick_response_arn #=> String
1948
+ # resp.quick_response_summaries[0].quick_response_id #=> String
1949
+ # resp.quick_response_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED"
1950
+ # resp.quick_response_summaries[0].tags #=> Hash
1951
+ # resp.quick_response_summaries[0].tags["TagKey"] #=> String
1952
+ #
1953
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListQuickResponses AWS API Documentation
1954
+ #
1955
+ # @overload list_quick_responses(params = {})
1956
+ # @param [Hash] params ({})
1957
+ def list_quick_responses(params = {}, options = {})
1958
+ req = build_request(:list_quick_responses, params)
1959
+ req.send_request(options)
1960
+ end
1961
+
1962
+ # Lists the tags for the specified resource.
1963
+ #
1964
+ # @option params [required, String] :resource_arn
1965
+ # The Amazon Resource Name (ARN) of the resource.
1966
+ #
1967
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1968
+ #
1969
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
1970
+ #
1971
+ # @example Request syntax with placeholder values
1972
+ #
1973
+ # resp = client.list_tags_for_resource({
1974
+ # resource_arn: "Arn", # required
1975
+ # })
1976
+ #
1977
+ # @example Response structure
1978
+ #
1979
+ # resp.tags #=> Hash
1980
+ # resp.tags["TagKey"] #=> String
1981
+ #
1982
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListTagsForResource AWS API Documentation
1983
+ #
1984
+ # @overload list_tags_for_resource(params = {})
1985
+ # @param [Hash] params ({})
1986
+ def list_tags_for_resource(params = {}, options = {})
1987
+ req = build_request(:list_tags_for_resource, params)
1988
+ req.send_request(options)
1989
+ end
1990
+
1991
+ # Removes the specified recommendations from the specified assistant's
1992
+ # queue of newly available recommendations. You can use this API in
1993
+ # conjunction with [GetRecommendations][1] and a `waitTimeSeconds` input
1994
+ # for long-polling behavior and avoiding duplicate recommendations.
1995
+ #
1996
+ #
1997
+ #
1998
+ # [1]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetRecommendations.html
1999
+ #
2000
+ # @option params [required, String] :assistant_id
2001
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
2002
+ # ARN. URLs cannot contain the ARN.
2003
+ #
2004
+ # @option params [required, Array<String>] :recommendation_ids
2005
+ # The identifiers of the recommendations.
2006
+ #
2007
+ # @option params [required, String] :session_id
2008
+ # The identifier of the session. Can be either the ID or the ARN. URLs
2009
+ # cannot contain the ARN.
2010
+ #
2011
+ # @return [Types::NotifyRecommendationsReceivedResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2012
+ #
2013
+ # * {Types::NotifyRecommendationsReceivedResponse#errors #errors} => Array&lt;Types::NotifyRecommendationsReceivedError&gt;
2014
+ # * {Types::NotifyRecommendationsReceivedResponse#recommendation_ids #recommendation_ids} => Array&lt;String&gt;
2015
+ #
2016
+ # @example Request syntax with placeholder values
2017
+ #
2018
+ # resp = client.notify_recommendations_received({
2019
+ # assistant_id: "UuidOrArn", # required
2020
+ # recommendation_ids: ["RecommendationId"], # required
2021
+ # session_id: "UuidOrArn", # required
2022
+ # })
2023
+ #
2024
+ # @example Response structure
2025
+ #
2026
+ # resp.errors #=> Array
2027
+ # resp.errors[0].message #=> String
2028
+ # resp.errors[0].recommendation_id #=> String
2029
+ # resp.recommendation_ids #=> Array
2030
+ # resp.recommendation_ids[0] #=> String
2031
+ #
2032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/NotifyRecommendationsReceived AWS API Documentation
2033
+ #
2034
+ # @overload notify_recommendations_received(params = {})
2035
+ # @param [Hash] params ({})
2036
+ def notify_recommendations_received(params = {}, options = {})
2037
+ req = build_request(:notify_recommendations_received, params)
2038
+ req.send_request(options)
2039
+ end
2040
+
2041
+ # Performs a manual search against the specified assistant. To retrieve
2042
+ # recommendations for an assistant, use [GetRecommendations][1].
2043
+ #
2044
+ #
2045
+ #
2046
+ # [1]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetRecommendations.html
2047
+ #
2048
+ # @option params [required, String] :assistant_id
2049
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
2050
+ # ARN. URLs cannot contain the ARN.
2051
+ #
2052
+ # @option params [Integer] :max_results
2053
+ # The maximum number of results to return per page.
2054
+ #
2055
+ # @option params [String] :next_token
2056
+ # The token for the next set of results. Use the value returned in the
2057
+ # previous response in the next request to retrieve the next set of
2058
+ # results.
2059
+ #
2060
+ # @option params [Array<Types::QueryCondition>] :query_condition
2061
+ # Information about how to query content.
2062
+ #
2063
+ # @option params [required, String] :query_text
2064
+ # The text to search for.
2065
+ #
2066
+ # @option params [String] :session_id
2067
+ # The identifier of the Amazon Q session. Can be either the ID or the
2068
+ # ARN. URLs cannot contain the ARN.
2069
+ #
2070
+ # @return [Types::QueryAssistantResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2071
+ #
2072
+ # * {Types::QueryAssistantResponse#next_token #next_token} => String
2073
+ # * {Types::QueryAssistantResponse#results #results} => Array&lt;Types::ResultData&gt;
2074
+ #
2075
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2076
+ #
2077
+ # @example Request syntax with placeholder values
2078
+ #
2079
+ # resp = client.query_assistant({
2080
+ # assistant_id: "UuidOrArn", # required
2081
+ # max_results: 1,
2082
+ # next_token: "NextToken",
2083
+ # query_condition: [
2084
+ # {
2085
+ # single: {
2086
+ # comparator: "EQUALS", # required, accepts EQUALS
2087
+ # field: "RESULT_TYPE", # required, accepts RESULT_TYPE
2088
+ # value: "NonEmptyString", # required
2089
+ # },
2090
+ # },
2091
+ # ],
2092
+ # query_text: "QueryText", # required
2093
+ # session_id: "UuidOrArn",
2094
+ # })
2095
+ #
2096
+ # @example Response structure
2097
+ #
2098
+ # resp.next_token #=> String
2099
+ # resp.results #=> Array
2100
+ # resp.results[0].data.details.content_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
2101
+ # resp.results[0].data.details.content_data.ranking_data.relevance_score #=> Float
2102
+ # resp.results[0].data.details.content_data.text_data.excerpt.highlights #=> Array
2103
+ # resp.results[0].data.details.content_data.text_data.excerpt.highlights[0].begin_offset_inclusive #=> Integer
2104
+ # resp.results[0].data.details.content_data.text_data.excerpt.highlights[0].end_offset_exclusive #=> Integer
2105
+ # resp.results[0].data.details.content_data.text_data.excerpt.text #=> String
2106
+ # resp.results[0].data.details.content_data.text_data.title.highlights #=> Array
2107
+ # resp.results[0].data.details.content_data.text_data.title.highlights[0].begin_offset_inclusive #=> Integer
2108
+ # resp.results[0].data.details.content_data.text_data.title.highlights[0].end_offset_exclusive #=> Integer
2109
+ # resp.results[0].data.details.content_data.text_data.title.text #=> String
2110
+ # resp.results[0].data.details.generative_data.completion #=> String
2111
+ # resp.results[0].data.details.generative_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
2112
+ # resp.results[0].data.details.generative_data.ranking_data.relevance_score #=> Float
2113
+ # resp.results[0].data.details.generative_data.references #=> Array
2114
+ # resp.results[0].data.details.generative_data.references[0] #=> Types::DataSummary
2115
+ # resp.results[0].data.details.source_content_data.id #=> String
2116
+ # resp.results[0].data.details.source_content_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
2117
+ # resp.results[0].data.details.source_content_data.ranking_data.relevance_score #=> Float
2118
+ # resp.results[0].data.details.source_content_data.text_data.excerpt.highlights #=> Array
2119
+ # resp.results[0].data.details.source_content_data.text_data.excerpt.highlights[0].begin_offset_inclusive #=> Integer
2120
+ # resp.results[0].data.details.source_content_data.text_data.excerpt.highlights[0].end_offset_exclusive #=> Integer
2121
+ # resp.results[0].data.details.source_content_data.text_data.excerpt.text #=> String
2122
+ # resp.results[0].data.details.source_content_data.text_data.title.highlights #=> Array
2123
+ # resp.results[0].data.details.source_content_data.text_data.title.highlights[0].begin_offset_inclusive #=> Integer
2124
+ # resp.results[0].data.details.source_content_data.text_data.title.highlights[0].end_offset_exclusive #=> Integer
2125
+ # resp.results[0].data.details.source_content_data.text_data.title.text #=> String
2126
+ # resp.results[0].data.details.source_content_data.type #=> String, one of "KNOWLEDGE_CONTENT"
2127
+ # resp.results[0].data.reference.content_reference.content_arn #=> String
2128
+ # resp.results[0].data.reference.content_reference.content_id #=> String
2129
+ # resp.results[0].data.reference.content_reference.knowledge_base_arn #=> String
2130
+ # resp.results[0].data.reference.content_reference.knowledge_base_id #=> String
2131
+ # resp.results[0].data.reference.generative_reference.generation_id #=> String
2132
+ # resp.results[0].data.reference.generative_reference.model_id #=> String
2133
+ # resp.results[0].document.content_reference.content_arn #=> String
2134
+ # resp.results[0].document.content_reference.content_id #=> String
2135
+ # resp.results[0].document.content_reference.knowledge_base_arn #=> String
2136
+ # resp.results[0].document.content_reference.knowledge_base_id #=> String
2137
+ # resp.results[0].document.excerpt.highlights #=> Array
2138
+ # resp.results[0].document.excerpt.highlights[0].begin_offset_inclusive #=> Integer
2139
+ # resp.results[0].document.excerpt.highlights[0].end_offset_exclusive #=> Integer
2140
+ # resp.results[0].document.excerpt.text #=> String
2141
+ # resp.results[0].document.title.highlights #=> Array
2142
+ # resp.results[0].document.title.highlights[0].begin_offset_inclusive #=> Integer
2143
+ # resp.results[0].document.title.highlights[0].end_offset_exclusive #=> Integer
2144
+ # resp.results[0].document.title.text #=> String
2145
+ # resp.results[0].relevance_score #=> Float
2146
+ # resp.results[0].result_id #=> String
2147
+ # resp.results[0].type #=> String, one of "KNOWLEDGE_CONTENT", "GENERATIVE_ANSWER"
2148
+ #
2149
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/QueryAssistant AWS API Documentation
2150
+ #
2151
+ # @overload query_assistant(params = {})
2152
+ # @param [Hash] params ({})
2153
+ def query_assistant(params = {}, options = {})
2154
+ req = build_request(:query_assistant, params)
2155
+ req.send_request(options)
2156
+ end
2157
+
2158
+ # Removes a URI template from a knowledge base.
2159
+ #
2160
+ # @option params [required, String] :knowledge_base_id
2161
+ # The identifier of the knowledge base. This should not be a
2162
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
2163
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
2164
+ # contain the ARN.
2165
+ #
2166
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2167
+ #
2168
+ # @example Request syntax with placeholder values
2169
+ #
2170
+ # resp = client.remove_knowledge_base_template_uri({
2171
+ # knowledge_base_id: "UuidOrArn", # required
2172
+ # })
2173
+ #
2174
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/RemoveKnowledgeBaseTemplateUri AWS API Documentation
2175
+ #
2176
+ # @overload remove_knowledge_base_template_uri(params = {})
2177
+ # @param [Hash] params ({})
2178
+ def remove_knowledge_base_template_uri(params = {}, options = {})
2179
+ req = build_request(:remove_knowledge_base_template_uri, params)
2180
+ req.send_request(options)
2181
+ end
2182
+
2183
+ # Searches for content in a specified knowledge base. Can be used to get
2184
+ # a specific content resource by its name.
2185
+ #
2186
+ # @option params [required, String] :knowledge_base_id
2187
+ # The identifier of the knowledge base. This should not be a
2188
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
2189
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
2190
+ # contain the ARN.
2191
+ #
2192
+ # @option params [Integer] :max_results
2193
+ # The maximum number of results to return per page.
2194
+ #
2195
+ # @option params [String] :next_token
2196
+ # The token for the next set of results. Use the value returned in the
2197
+ # previous response in the next request to retrieve the next set of
2198
+ # results.
2199
+ #
2200
+ # @option params [required, Types::SearchExpression] :search_expression
2201
+ # The search expression to filter results.
2202
+ #
2203
+ # @return [Types::SearchContentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2204
+ #
2205
+ # * {Types::SearchContentResponse#content_summaries #content_summaries} => Array&lt;Types::ContentSummary&gt;
2206
+ # * {Types::SearchContentResponse#next_token #next_token} => String
2207
+ #
2208
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2209
+ #
2210
+ # @example Request syntax with placeholder values
2211
+ #
2212
+ # resp = client.search_content({
2213
+ # knowledge_base_id: "UuidOrArn", # required
2214
+ # max_results: 1,
2215
+ # next_token: "NextToken",
2216
+ # search_expression: { # required
2217
+ # filters: [ # required
2218
+ # {
2219
+ # field: "NAME", # required, accepts NAME
2220
+ # operator: "EQUALS", # required, accepts EQUALS
2221
+ # value: "NonEmptyString", # required
2222
+ # },
2223
+ # ],
2224
+ # },
2225
+ # })
2226
+ #
2227
+ # @example Response structure
2228
+ #
2229
+ # resp.content_summaries #=> Array
2230
+ # resp.content_summaries[0].content_arn #=> String
2231
+ # resp.content_summaries[0].content_id #=> String
2232
+ # resp.content_summaries[0].content_type #=> String
2233
+ # resp.content_summaries[0].knowledge_base_arn #=> String
2234
+ # resp.content_summaries[0].knowledge_base_id #=> String
2235
+ # resp.content_summaries[0].metadata #=> Hash
2236
+ # resp.content_summaries[0].metadata["NonEmptyString"] #=> String
2237
+ # resp.content_summaries[0].name #=> String
2238
+ # resp.content_summaries[0].revision_id #=> String
2239
+ # resp.content_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_FAILED"
2240
+ # resp.content_summaries[0].tags #=> Hash
2241
+ # resp.content_summaries[0].tags["TagKey"] #=> String
2242
+ # resp.content_summaries[0].title #=> String
2243
+ # resp.next_token #=> String
2244
+ #
2245
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SearchContent AWS API Documentation
2246
+ #
2247
+ # @overload search_content(params = {})
2248
+ # @param [Hash] params ({})
2249
+ def search_content(params = {}, options = {})
2250
+ req = build_request(:search_content, params)
2251
+ req.send_request(options)
2252
+ end
2253
+
2254
+ # Searches existing Amazon Q quick responses in a Amazon Q knowledge
2255
+ # base.
2256
+ #
2257
+ # @option params [Hash<String,String>] :attributes
2258
+ # The [user-defined Amazon Connect contact attributes][1] to be resolved
2259
+ # when search results are returned.
2260
+ #
2261
+ #
2262
+ #
2263
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/connect-attrib-list.html#user-defined-attributes
2264
+ #
2265
+ # @option params [required, String] :knowledge_base_id
2266
+ # The identifier of the knowledge base. This should be a
2267
+ # QUICK\_RESPONSES type knowledge base. Can be either the ID or the ARN.
2268
+ # URLs cannot contain the ARN.
2269
+ #
2270
+ # @option params [Integer] :max_results
2271
+ # The maximum number of results to return per page.
2272
+ #
2273
+ # @option params [String] :next_token
2274
+ # The token for the next set of results. Use the value returned in the
2275
+ # previous response in the next request to retrieve the next set of
2276
+ # results.
2277
+ #
2278
+ # @option params [required, Types::QuickResponseSearchExpression] :search_expression
2279
+ # The search expression for querying the quick response.
2280
+ #
2281
+ # @return [Types::SearchQuickResponsesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2282
+ #
2283
+ # * {Types::SearchQuickResponsesResponse#next_token #next_token} => String
2284
+ # * {Types::SearchQuickResponsesResponse#results #results} => Array&lt;Types::QuickResponseSearchResultData&gt;
2285
+ #
2286
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2287
+ #
2288
+ # @example Request syntax with placeholder values
2289
+ #
2290
+ # resp = client.search_quick_responses({
2291
+ # attributes: {
2292
+ # "ContactAttributeKey" => "ContactAttributeValue",
2293
+ # },
2294
+ # knowledge_base_id: "UuidOrArn", # required
2295
+ # max_results: 1,
2296
+ # next_token: "NonEmptyString",
2297
+ # search_expression: { # required
2298
+ # filters: [
2299
+ # {
2300
+ # include_no_existence: false,
2301
+ # name: "NonEmptyString", # required
2302
+ # operator: "EQUALS", # required, accepts EQUALS, PREFIX
2303
+ # values: ["QuickResponseFilterValue"],
2304
+ # },
2305
+ # ],
2306
+ # order_on_field: {
2307
+ # name: "NonEmptyString", # required
2308
+ # order: "ASC", # accepts ASC, DESC
2309
+ # },
2310
+ # queries: [
2311
+ # {
2312
+ # allow_fuzziness: false,
2313
+ # name: "NonEmptyString", # required
2314
+ # operator: "CONTAINS", # required, accepts CONTAINS, CONTAINS_AND_PREFIX
2315
+ # priority: "HIGH", # accepts HIGH, MEDIUM, LOW
2316
+ # values: ["QuickResponseQueryValue"], # required
2317
+ # },
2318
+ # ],
2319
+ # },
2320
+ # })
2321
+ #
2322
+ # @example Response structure
2323
+ #
2324
+ # resp.next_token #=> String
2325
+ # resp.results #=> Array
2326
+ # resp.results[0].attributes_interpolated #=> Array
2327
+ # resp.results[0].attributes_interpolated[0] #=> String
2328
+ # resp.results[0].attributes_not_interpolated #=> Array
2329
+ # resp.results[0].attributes_not_interpolated[0] #=> String
2330
+ # resp.results[0].channels #=> Array
2331
+ # resp.results[0].channels[0] #=> String
2332
+ # resp.results[0].content_type #=> String
2333
+ # resp.results[0].contents.markdown.content #=> String
2334
+ # resp.results[0].contents.plain_text.content #=> String
2335
+ # resp.results[0].created_time #=> Time
2336
+ # resp.results[0].description #=> String
2337
+ # resp.results[0].grouping_configuration.criteria #=> String
2338
+ # resp.results[0].grouping_configuration.values #=> Array
2339
+ # resp.results[0].grouping_configuration.values[0] #=> String
2340
+ # resp.results[0].is_active #=> Boolean
2341
+ # resp.results[0].knowledge_base_arn #=> String
2342
+ # resp.results[0].knowledge_base_id #=> String
2343
+ # resp.results[0].language #=> String
2344
+ # resp.results[0].last_modified_by #=> String
2345
+ # resp.results[0].last_modified_time #=> Time
2346
+ # resp.results[0].name #=> String
2347
+ # resp.results[0].quick_response_arn #=> String
2348
+ # resp.results[0].quick_response_id #=> String
2349
+ # resp.results[0].shortcut_key #=> String
2350
+ # resp.results[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED"
2351
+ # resp.results[0].tags #=> Hash
2352
+ # resp.results[0].tags["TagKey"] #=> String
2353
+ #
2354
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SearchQuickResponses AWS API Documentation
2355
+ #
2356
+ # @overload search_quick_responses(params = {})
2357
+ # @param [Hash] params ({})
2358
+ def search_quick_responses(params = {}, options = {})
2359
+ req = build_request(:search_quick_responses, params)
2360
+ req.send_request(options)
2361
+ end
2362
+
2363
+ # Searches for sessions.
2364
+ #
2365
+ # @option params [required, String] :assistant_id
2366
+ # The identifier of the Amazon Q assistant. Can be either the ID or the
2367
+ # ARN. URLs cannot contain the ARN.
2368
+ #
2369
+ # @option params [Integer] :max_results
2370
+ # The maximum number of results to return per page.
2371
+ #
2372
+ # @option params [String] :next_token
2373
+ # The token for the next set of results. Use the value returned in the
2374
+ # previous response in the next request to retrieve the next set of
2375
+ # results.
2376
+ #
2377
+ # @option params [required, Types::SearchExpression] :search_expression
2378
+ # The search expression to filter results.
2379
+ #
2380
+ # @return [Types::SearchSessionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2381
+ #
2382
+ # * {Types::SearchSessionsResponse#next_token #next_token} => String
2383
+ # * {Types::SearchSessionsResponse#session_summaries #session_summaries} => Array&lt;Types::SessionSummary&gt;
2384
+ #
2385
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2386
+ #
2387
+ # @example Request syntax with placeholder values
2388
+ #
2389
+ # resp = client.search_sessions({
2390
+ # assistant_id: "UuidOrArn", # required
2391
+ # max_results: 1,
2392
+ # next_token: "NextToken",
2393
+ # search_expression: { # required
2394
+ # filters: [ # required
2395
+ # {
2396
+ # field: "NAME", # required, accepts NAME
2397
+ # operator: "EQUALS", # required, accepts EQUALS
2398
+ # value: "NonEmptyString", # required
2399
+ # },
2400
+ # ],
2401
+ # },
2402
+ # })
2403
+ #
2404
+ # @example Response structure
2405
+ #
2406
+ # resp.next_token #=> String
2407
+ # resp.session_summaries #=> Array
2408
+ # resp.session_summaries[0].assistant_arn #=> String
2409
+ # resp.session_summaries[0].assistant_id #=> String
2410
+ # resp.session_summaries[0].session_arn #=> String
2411
+ # resp.session_summaries[0].session_id #=> String
2412
+ #
2413
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SearchSessions AWS API Documentation
2414
+ #
2415
+ # @overload search_sessions(params = {})
2416
+ # @param [Hash] params ({})
2417
+ def search_sessions(params = {}, options = {})
2418
+ req = build_request(:search_sessions, params)
2419
+ req.send_request(options)
2420
+ end
2421
+
2422
+ # Get a URL to upload content to a knowledge base. To upload content,
2423
+ # first make a PUT request to the returned URL with your file, making
2424
+ # sure to include the required headers. Then use [CreateContent][1] to
2425
+ # finalize the content creation process or [UpdateContent][2] to modify
2426
+ # an existing resource. You can only upload content to a knowledge base
2427
+ # of type CUSTOM.
2428
+ #
2429
+ #
2430
+ #
2431
+ # [1]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_CreateContent.html
2432
+ # [2]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_UpdateContent.html
2433
+ #
2434
+ # @option params [required, String] :content_type
2435
+ # The type of content to upload.
2436
+ #
2437
+ # @option params [required, String] :knowledge_base_id
2438
+ # The identifier of the knowledge base. This should not be a
2439
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
2440
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
2441
+ # contain the ARN.
2442
+ #
2443
+ # @option params [Integer] :presigned_url_time_to_live
2444
+ # The expected expiration time of the generated presigned URL, specified
2445
+ # in minutes.
2446
+ #
2447
+ # @return [Types::StartContentUploadResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2448
+ #
2449
+ # * {Types::StartContentUploadResponse#headers_to_include #headers_to_include} => Hash&lt;String,String&gt;
2450
+ # * {Types::StartContentUploadResponse#upload_id #upload_id} => String
2451
+ # * {Types::StartContentUploadResponse#url #url} => String
2452
+ # * {Types::StartContentUploadResponse#url_expiry #url_expiry} => Time
2453
+ #
2454
+ # @example Request syntax with placeholder values
2455
+ #
2456
+ # resp = client.start_content_upload({
2457
+ # content_type: "ContentType", # required
2458
+ # knowledge_base_id: "UuidOrArn", # required
2459
+ # presigned_url_time_to_live: 1,
2460
+ # })
2461
+ #
2462
+ # @example Response structure
2463
+ #
2464
+ # resp.headers_to_include #=> Hash
2465
+ # resp.headers_to_include["NonEmptyString"] #=> String
2466
+ # resp.upload_id #=> String
2467
+ # resp.url #=> String
2468
+ # resp.url_expiry #=> Time
2469
+ #
2470
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/StartContentUpload AWS API Documentation
2471
+ #
2472
+ # @overload start_content_upload(params = {})
2473
+ # @param [Hash] params ({})
2474
+ def start_content_upload(params = {}, options = {})
2475
+ req = build_request(:start_content_upload, params)
2476
+ req.send_request(options)
2477
+ end
2478
+
2479
+ # Start an asynchronous job to import Amazon Q resources from an
2480
+ # uploaded source file. Before calling this API, use
2481
+ # [StartContentUpload][1] to upload an asset that contains the resource
2482
+ # data.
2483
+ #
2484
+ # * For importing Amazon Q quick responses, you need to upload a csv
2485
+ # file including the quick responses. For information about how to
2486
+ # format the csv file for importing quick responses, see [Import quick
2487
+ # responses][2].
2488
+ #
2489
+ # ^
2490
+ #
2491
+ #
2492
+ #
2493
+ # [1]: https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html
2494
+ # [2]: https://docs.aws.amazon.com/console/connect/quick-responses/add-data
2495
+ #
2496
+ # @option params [String] :client_token
2497
+ # The tags used to organize, track, or control access for this resource.
2498
+ #
2499
+ # **A suitable default value is auto-generated.** You should normally
2500
+ # not need to pass this option.**
2501
+ #
2502
+ # @option params [Types::ExternalSourceConfiguration] :external_source_configuration
2503
+ # The configuration information of the external source that the resource
2504
+ # data are imported from.
2505
+ #
2506
+ # @option params [required, String] :import_job_type
2507
+ # The type of the import job.
2508
+ #
2509
+ # * For importing quick response resource, set the value to
2510
+ # `QUICK_RESPONSES`.
2511
+ #
2512
+ # ^
2513
+ #
2514
+ # @option params [required, String] :knowledge_base_id
2515
+ # The identifier of the knowledge base. This should not be a
2516
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
2517
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
2518
+ # contain the ARN.
2519
+ #
2520
+ # * For importing Amazon Q quick responses, this should be a
2521
+ # `QUICK_RESPONSES` type knowledge base.
2522
+ #
2523
+ # ^
2524
+ #
2525
+ # @option params [Hash<String,String>] :metadata
2526
+ # The metadata fields of the imported Amazon Q resources.
2527
+ #
2528
+ # @option params [required, String] :upload_id
2529
+ # A pointer to the uploaded asset. This value is returned by
2530
+ # [StartContentUpload][1].
2531
+ #
2532
+ #
2533
+ #
2534
+ # [1]: https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html
2535
+ #
2536
+ # @return [Types::StartImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2537
+ #
2538
+ # * {Types::StartImportJobResponse#import_job #import_job} => Types::ImportJobData
2539
+ #
2540
+ # @example Request syntax with placeholder values
2541
+ #
2542
+ # resp = client.start_import_job({
2543
+ # client_token: "NonEmptyString",
2544
+ # external_source_configuration: {
2545
+ # configuration: { # required
2546
+ # connect_configuration: {
2547
+ # instance_id: "NonEmptyString",
2548
+ # },
2549
+ # },
2550
+ # source: "AMAZON_CONNECT", # required, accepts AMAZON_CONNECT
2551
+ # },
2552
+ # import_job_type: "QUICK_RESPONSES", # required, accepts QUICK_RESPONSES
2553
+ # knowledge_base_id: "UuidOrArn", # required
2554
+ # metadata: {
2555
+ # "NonEmptyString" => "NonEmptyString",
2556
+ # },
2557
+ # upload_id: "UploadId", # required
2558
+ # })
2559
+ #
2560
+ # @example Response structure
2561
+ #
2562
+ # resp.import_job.created_time #=> Time
2563
+ # resp.import_job.external_source_configuration.configuration.connect_configuration.instance_id #=> String
2564
+ # resp.import_job.external_source_configuration.source #=> String, one of "AMAZON_CONNECT"
2565
+ # resp.import_job.failed_record_report #=> String
2566
+ # resp.import_job.import_job_id #=> String
2567
+ # resp.import_job.import_job_type #=> String, one of "QUICK_RESPONSES"
2568
+ # resp.import_job.knowledge_base_arn #=> String
2569
+ # resp.import_job.knowledge_base_id #=> String
2570
+ # resp.import_job.last_modified_time #=> Time
2571
+ # resp.import_job.metadata #=> Hash
2572
+ # resp.import_job.metadata["NonEmptyString"] #=> String
2573
+ # resp.import_job.status #=> String, one of "START_IN_PROGRESS", "FAILED", "COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
2574
+ # resp.import_job.upload_id #=> String
2575
+ # resp.import_job.url #=> String
2576
+ # resp.import_job.url_expiry #=> Time
2577
+ #
2578
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/StartImportJob AWS API Documentation
2579
+ #
2580
+ # @overload start_import_job(params = {})
2581
+ # @param [Hash] params ({})
2582
+ def start_import_job(params = {}, options = {})
2583
+ req = build_request(:start_import_job, params)
2584
+ req.send_request(options)
2585
+ end
2586
+
2587
+ # Adds the specified tags to the specified resource.
2588
+ #
2589
+ # @option params [required, String] :resource_arn
2590
+ # The Amazon Resource Name (ARN) of the resource.
2591
+ #
2592
+ # @option params [required, Hash<String,String>] :tags
2593
+ # The tags used to organize, track, or control access for this resource.
2594
+ #
2595
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2596
+ #
2597
+ # @example Request syntax with placeholder values
2598
+ #
2599
+ # resp = client.tag_resource({
2600
+ # resource_arn: "Arn", # required
2601
+ # tags: { # required
2602
+ # "TagKey" => "TagValue",
2603
+ # },
2604
+ # })
2605
+ #
2606
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/TagResource AWS API Documentation
2607
+ #
2608
+ # @overload tag_resource(params = {})
2609
+ # @param [Hash] params ({})
2610
+ def tag_resource(params = {}, options = {})
2611
+ req = build_request(:tag_resource, params)
2612
+ req.send_request(options)
2613
+ end
2614
+
2615
+ # Removes the specified tags from the specified resource.
2616
+ #
2617
+ # @option params [required, String] :resource_arn
2618
+ # The Amazon Resource Name (ARN) of the resource.
2619
+ #
2620
+ # @option params [required, Array<String>] :tag_keys
2621
+ # The tag keys.
2622
+ #
2623
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2624
+ #
2625
+ # @example Request syntax with placeholder values
2626
+ #
2627
+ # resp = client.untag_resource({
2628
+ # resource_arn: "Arn", # required
2629
+ # tag_keys: ["TagKey"], # required
2630
+ # })
2631
+ #
2632
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UntagResource AWS API Documentation
2633
+ #
2634
+ # @overload untag_resource(params = {})
2635
+ # @param [Hash] params ({})
2636
+ def untag_resource(params = {}, options = {})
2637
+ req = build_request(:untag_resource, params)
2638
+ req.send_request(options)
2639
+ end
2640
+
2641
+ # Updates information about the content.
2642
+ #
2643
+ # @option params [required, String] :content_id
2644
+ # The identifier of the content. Can be either the ID or the ARN. URLs
2645
+ # cannot contain the ARN.
2646
+ #
2647
+ # @option params [required, String] :knowledge_base_id
2648
+ # The identifier of the knowledge base. This should not be a
2649
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
2650
+ # Content resource to it. Can be either the ID or the ARN
2651
+ #
2652
+ # @option params [Hash<String,String>] :metadata
2653
+ # A key/value map to store attributes without affecting tagging or
2654
+ # recommendations. For example, when synchronizing data between an
2655
+ # external system and Amazon Q, you can store an external version
2656
+ # identifier as metadata to utilize for determining drift.
2657
+ #
2658
+ # @option params [String] :override_link_out_uri
2659
+ # The URI for the article. If the knowledge base has a templateUri,
2660
+ # setting this argument overrides it for this piece of content. To
2661
+ # remove an existing `overrideLinkOurUri`, exclude this argument and set
2662
+ # `removeOverrideLinkOutUri` to true.
2663
+ #
2664
+ # @option params [Boolean] :remove_override_link_out_uri
2665
+ # Unset the existing `overrideLinkOutUri` if it exists.
2666
+ #
2667
+ # @option params [String] :revision_id
2668
+ # The `revisionId` of the content resource to update, taken from an
2669
+ # earlier call to `GetContent`, `GetContentSummary`, `SearchContent`, or
2670
+ # `ListContents`. If included, this argument acts as an optimistic lock
2671
+ # to ensure content was not modified since it was last read. If it has
2672
+ # been modified, this API throws a `PreconditionFailedException`.
2673
+ #
2674
+ # @option params [String] :title
2675
+ # The title of the content.
2676
+ #
2677
+ # @option params [String] :upload_id
2678
+ # A pointer to the uploaded asset. This value is returned by
2679
+ # [StartContentUpload][1].
2680
+ #
2681
+ #
2682
+ #
2683
+ # [1]: https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html
2684
+ #
2685
+ # @return [Types::UpdateContentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2686
+ #
2687
+ # * {Types::UpdateContentResponse#content #content} => Types::ContentData
2688
+ #
2689
+ # @example Request syntax with placeholder values
2690
+ #
2691
+ # resp = client.update_content({
2692
+ # content_id: "UuidOrArn", # required
2693
+ # knowledge_base_id: "UuidOrArn", # required
2694
+ # metadata: {
2695
+ # "NonEmptyString" => "NonEmptyString",
2696
+ # },
2697
+ # override_link_out_uri: "Uri",
2698
+ # remove_override_link_out_uri: false,
2699
+ # revision_id: "NonEmptyString",
2700
+ # title: "ContentTitle",
2701
+ # upload_id: "UploadId",
2702
+ # })
2703
+ #
2704
+ # @example Response structure
2705
+ #
2706
+ # resp.content.content_arn #=> String
2707
+ # resp.content.content_id #=> String
2708
+ # resp.content.content_type #=> String
2709
+ # resp.content.knowledge_base_arn #=> String
2710
+ # resp.content.knowledge_base_id #=> String
2711
+ # resp.content.link_out_uri #=> String
2712
+ # resp.content.metadata #=> Hash
2713
+ # resp.content.metadata["NonEmptyString"] #=> String
2714
+ # resp.content.name #=> String
2715
+ # resp.content.revision_id #=> String
2716
+ # resp.content.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_FAILED"
2717
+ # resp.content.tags #=> Hash
2718
+ # resp.content.tags["TagKey"] #=> String
2719
+ # resp.content.title #=> String
2720
+ # resp.content.url #=> String
2721
+ # resp.content.url_expiry #=> Time
2722
+ #
2723
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateContent AWS API Documentation
2724
+ #
2725
+ # @overload update_content(params = {})
2726
+ # @param [Hash] params ({})
2727
+ def update_content(params = {}, options = {})
2728
+ req = build_request(:update_content, params)
2729
+ req.send_request(options)
2730
+ end
2731
+
2732
+ # Updates the template URI of a knowledge base. This is only supported
2733
+ # for knowledge bases of type EXTERNAL. Include a single variable in
2734
+ # `$\{variable\}` format; this interpolated by Amazon Q using ingested
2735
+ # content. For example, if you ingest a Salesforce article, it has an
2736
+ # `Id` value, and you can set the template URI to
2737
+ # `https://myInstanceName.lightning.force.com/lightning/r/Knowledge__kav/*$\{Id\}*/view`.
2738
+ #
2739
+ # @option params [required, String] :knowledge_base_id
2740
+ # The identifier of the knowledge base. This should not be a
2741
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
2742
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
2743
+ # contain the ARN.
2744
+ #
2745
+ # @option params [required, String] :template_uri
2746
+ # The template URI to update.
2747
+ #
2748
+ # @return [Types::UpdateKnowledgeBaseTemplateUriResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2749
+ #
2750
+ # * {Types::UpdateKnowledgeBaseTemplateUriResponse#knowledge_base #knowledge_base} => Types::KnowledgeBaseData
2751
+ #
2752
+ # @example Request syntax with placeholder values
2753
+ #
2754
+ # resp = client.update_knowledge_base_template_uri({
2755
+ # knowledge_base_id: "UuidOrArn", # required
2756
+ # template_uri: "Uri", # required
2757
+ # })
2758
+ #
2759
+ # @example Response structure
2760
+ #
2761
+ # resp.knowledge_base.description #=> String
2762
+ # resp.knowledge_base.knowledge_base_arn #=> String
2763
+ # resp.knowledge_base.knowledge_base_id #=> String
2764
+ # resp.knowledge_base.knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES"
2765
+ # resp.knowledge_base.last_content_modification_time #=> Time
2766
+ # resp.knowledge_base.name #=> String
2767
+ # resp.knowledge_base.rendering_configuration.template_uri #=> String
2768
+ # resp.knowledge_base.server_side_encryption_configuration.kms_key_id #=> String
2769
+ # resp.knowledge_base.source_configuration.app_integrations.app_integration_arn #=> String
2770
+ # resp.knowledge_base.source_configuration.app_integrations.object_fields #=> Array
2771
+ # resp.knowledge_base.source_configuration.app_integrations.object_fields[0] #=> String
2772
+ # resp.knowledge_base.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
2773
+ # resp.knowledge_base.tags #=> Hash
2774
+ # resp.knowledge_base.tags["TagKey"] #=> String
2775
+ #
2776
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateKnowledgeBaseTemplateUri AWS API Documentation
2777
+ #
2778
+ # @overload update_knowledge_base_template_uri(params = {})
2779
+ # @param [Hash] params ({})
2780
+ def update_knowledge_base_template_uri(params = {}, options = {})
2781
+ req = build_request(:update_knowledge_base_template_uri, params)
2782
+ req.send_request(options)
2783
+ end
2784
+
2785
+ # Updates an existing Amazon Q quick response.
2786
+ #
2787
+ # @option params [Array<String>] :channels
2788
+ # The Amazon Connect contact channels this quick response applies to.
2789
+ # The supported contact channel types include `Chat`.
2790
+ #
2791
+ # @option params [Types::QuickResponseDataProvider] :content
2792
+ # The updated content of the quick response.
2793
+ #
2794
+ # @option params [String] :content_type
2795
+ # The media type of the quick response content.
2796
+ #
2797
+ # * Use `application/x.quickresponse;format=plain` for quick response
2798
+ # written in plain text.
2799
+ #
2800
+ # * Use `application/x.quickresponse;format=markdown` for quick response
2801
+ # written in richtext.
2802
+ #
2803
+ # @option params [String] :description
2804
+ # The updated description of the quick response.
2805
+ #
2806
+ # @option params [Types::GroupingConfiguration] :grouping_configuration
2807
+ # The updated grouping configuration of the quick response.
2808
+ #
2809
+ # @option params [Boolean] :is_active
2810
+ # Whether the quick response is active.
2811
+ #
2812
+ # @option params [required, String] :knowledge_base_id
2813
+ # The identifier of the knowledge base. This should not be a
2814
+ # QUICK\_RESPONSES type knowledge base if you're storing Amazon Q
2815
+ # Content resource to it. Can be either the ID or the ARN. URLs cannot
2816
+ # contain the ARN.
2817
+ #
2818
+ # @option params [String] :language
2819
+ # The language code value for the language in which the quick response
2820
+ # is written. The supported language codes include `de_DE`, `en_US`,
2821
+ # `es_ES`, `fr_FR`, `id_ID`, `it_IT`, `ja_JP`, `ko_KR`, `pt_BR`,
2822
+ # `zh_CN`, `zh_TW`
2823
+ #
2824
+ # @option params [String] :name
2825
+ # The name of the quick response.
2826
+ #
2827
+ # @option params [required, String] :quick_response_id
2828
+ # The identifier of the quick response.
2829
+ #
2830
+ # @option params [Boolean] :remove_description
2831
+ # Whether to remove the description from the quick response.
2832
+ #
2833
+ # @option params [Boolean] :remove_grouping_configuration
2834
+ # Whether to remove the grouping configuration of the quick response.
2835
+ #
2836
+ # @option params [Boolean] :remove_shortcut_key
2837
+ # Whether to remove the shortcut key of the quick response.
2838
+ #
2839
+ # @option params [String] :shortcut_key
2840
+ # The shortcut key of the quick response. The value should be unique
2841
+ # across the knowledge base.
2842
+ #
2843
+ # @return [Types::UpdateQuickResponseResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2844
+ #
2845
+ # * {Types::UpdateQuickResponseResponse#quick_response #quick_response} => Types::QuickResponseData
2846
+ #
2847
+ # @example Request syntax with placeholder values
2848
+ #
2849
+ # resp = client.update_quick_response({
2850
+ # channels: ["Channel"],
2851
+ # content: {
2852
+ # content: "QuickResponseContent",
2853
+ # },
2854
+ # content_type: "QuickResponseType",
2855
+ # description: "QuickResponseDescription",
2856
+ # grouping_configuration: {
2857
+ # criteria: "GroupingCriteria",
2858
+ # values: ["GroupingValue"],
2859
+ # },
2860
+ # is_active: false,
2861
+ # knowledge_base_id: "UuidOrArn", # required
2862
+ # language: "LanguageCode",
2863
+ # name: "QuickResponseName",
2864
+ # quick_response_id: "UuidOrArn", # required
2865
+ # remove_description: false,
2866
+ # remove_grouping_configuration: false,
2867
+ # remove_shortcut_key: false,
2868
+ # shortcut_key: "ShortCutKey",
2869
+ # })
2870
+ #
2871
+ # @example Response structure
2872
+ #
2873
+ # resp.quick_response.channels #=> Array
2874
+ # resp.quick_response.channels[0] #=> String
2875
+ # resp.quick_response.content_type #=> String
2876
+ # resp.quick_response.contents.markdown.content #=> String
2877
+ # resp.quick_response.contents.plain_text.content #=> String
2878
+ # resp.quick_response.created_time #=> Time
2879
+ # resp.quick_response.description #=> String
2880
+ # resp.quick_response.grouping_configuration.criteria #=> String
2881
+ # resp.quick_response.grouping_configuration.values #=> Array
2882
+ # resp.quick_response.grouping_configuration.values[0] #=> String
2883
+ # resp.quick_response.is_active #=> Boolean
2884
+ # resp.quick_response.knowledge_base_arn #=> String
2885
+ # resp.quick_response.knowledge_base_id #=> String
2886
+ # resp.quick_response.language #=> String
2887
+ # resp.quick_response.last_modified_by #=> String
2888
+ # resp.quick_response.last_modified_time #=> Time
2889
+ # resp.quick_response.name #=> String
2890
+ # resp.quick_response.quick_response_arn #=> String
2891
+ # resp.quick_response.quick_response_id #=> String
2892
+ # resp.quick_response.shortcut_key #=> String
2893
+ # resp.quick_response.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED"
2894
+ # resp.quick_response.tags #=> Hash
2895
+ # resp.quick_response.tags["TagKey"] #=> String
2896
+ #
2897
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateQuickResponse AWS API Documentation
2898
+ #
2899
+ # @overload update_quick_response(params = {})
2900
+ # @param [Hash] params ({})
2901
+ def update_quick_response(params = {}, options = {})
2902
+ req = build_request(:update_quick_response, params)
2903
+ req.send_request(options)
2904
+ end
2905
+
2906
+ # @!endgroup
2907
+
2908
+ # @param params ({})
2909
+ # @api private
2910
+ def build_request(operation_name, params = {})
2911
+ handlers = @handlers.for(operation_name)
2912
+ context = Seahorse::Client::RequestContext.new(
2913
+ operation_name: operation_name,
2914
+ operation: config.api.operation(operation_name),
2915
+ client: self,
2916
+ params: params,
2917
+ config: config)
2918
+ context[:gem_name] = 'aws-sdk-qconnect'
2919
+ context[:gem_version] = '1.0.0'
2920
+ Seahorse::Client::Request.new(handlers, context)
2921
+ end
2922
+
2923
+ # @api private
2924
+ # @deprecated
2925
+ def waiter_names
2926
+ []
2927
+ end
2928
+
2929
+ class << self
2930
+
2931
+ # @api private
2932
+ attr_reader :identifier
2933
+
2934
+ # @api private
2935
+ def errors_module
2936
+ Errors
2937
+ end
2938
+
2939
+ end
2940
+ end
2941
+ end