Class: Aws::QBusiness::Client

Inherits:
Seahorse::Client::Base
  • Object
show all
Includes:
ClientStubs
Defined in:
lib/aws-sdk-qbusiness/client.rb

Overview

An API client for QBusiness. To construct a client, you need to configure a ‘:region` and `:credentials`.

client = Aws::QBusiness::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).

See #initialize for a full list of supported configuration options.

Class Attribute Summary collapse

API Operations collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • ‘Aws::Credentials` - Used for configuring static, non-refreshing credentials.

    • ‘Aws::SharedCredentials` - Used for loading static credentials from a shared file, such as `~/.aws/config`.

    • ‘Aws::AssumeRoleCredentials` - Used when you need to assume a role.

    • ‘Aws::AssumeRoleWebIdentityCredentials` - Used when you need to assume a role after providing credentials via the web.

    • ‘Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an access token generated from `aws login`.

    • ‘Aws::ProcessCredentials` - Used for loading credentials from a process that outputs to stdout.

    • ‘Aws::InstanceProfileCredentials` - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • ‘Aws::ECSCredentials` - Used for loading credentials from instances running in ECS.

    • ‘Aws::CognitoIdentityCredentials` - Used for loading credentials from the Cognito Identity service.

    When ‘:credentials` are not configured directly, the following locations will be searched for credentials:

    • Aws.config`

    • The ‘:access_key_id`, `:secret_access_key`, `:session_token`, and `:account_id` options.

    • ENV, ENV, ENV, and ENV

    • ‘~/.aws/credentials`

    • ‘~/.aws/config`

    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of ‘Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV to true.

  • :region (required, String)

    The AWS region to connect to. The configured ‘:region` is used to determine the service `:endpoint`. When not passed, a default `:region` is searched for in the following locations:

  • :access_key_id (String)
  • :account_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to ‘true`, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to `false`.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in ‘adaptive` retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a `RetryCapacityNotAvailableError` and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When ‘true`, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When ‘true`, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in ‘standard` and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :disable_request_compression (Boolean) — default: false

    When set to ‘true’ the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the ‘:endpoint` option directly. This is normally constructed from the `:region` option. Configuring `:endpoint` is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to ‘true`, endpoint discovery will be enabled for operations when available.

  • :event_stream_handler (Proc)

    When an EventStream or Proc object is provided, it will be used as callback for each chunk of event stream response received along the way.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :input_event_stream_handler (Proc)

    When an EventStream or Proc object is provided, it can be used for sending events for the event stream.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the ‘:logger` at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in ‘standard` and `adaptive` retry modes.

  • :output_event_stream_handler (Proc)

    When an EventStream or Proc object is provided, it will be used as callback for each chunk of event stream response received along the way.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, ‘default’ is used.

  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the ‘legacy` retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the ‘legacy` retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the ‘legacy` retry mode.

    @see www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the ‘legacy` retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the ‘legacy` retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • ‘legacy` - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • ‘standard` - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • ‘adaptive` - An experimental retry mode that includes all the functionality of `standard` mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default ‘:sigv4a_signing_region_set` is searched for in the following locations:

  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    ** Please note ** When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses ‘NoOpTelemetryProvider` which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the

    ‘opentelemetry-sdk` gem and then, pass in an instance of a `Aws::Telemetry::OTelProvider` for telemetry provider.

  • :token_provider (Aws::TokenProvider)

    A Bearer Token Provider. This can be an instance of any one of the following classes:

    • ‘Aws::StaticTokenProvider` - Used for configuring static, non-refreshing tokens.

    • ‘Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an access token generated from `aws login`.

    When ‘:token_provider` is not configured directly, the `Aws::TokenProviderChain` will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to ‘true`, dualstack enabled endpoints (with `.aws` TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to ‘true`, fips compatible endpoints will be used if available. When a `fips` region is used, the region is normalized and this config is set to `true`.

  • :validate_params (Boolean) — default: true

    When ‘true`, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::QBusiness::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to ‘#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::QBusiness::EndpointParameters`.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has “Expect” header set to “100-continue”. Defaults to ‘nil` which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like ‘proxy.com:123’.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When ‘true`, HTTP debug output will be sent to the `:logger`.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a ‘content-length`).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When ‘true`, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass ‘:ssl_ca_bundle` or `:ssl_ca_directory` the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass ‘:ssl_ca_bundle` or `:ssl_ca_directory` the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When ‘true`, SSL peer certificates are verified when establishing a connection.



455
456
457
# File 'lib/aws-sdk-qbusiness/client.rb', line 455

def initialize(*args)
  super
end

Class Attribute Details

.identifierObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



5383
5384
5385
# File 'lib/aws-sdk-qbusiness/client.rb', line 5383

def identifier
  @identifier
end

Class Method Details

.errors_moduleObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



5386
5387
5388
# File 'lib/aws-sdk-qbusiness/client.rb', line 5386

def errors_module
  Errors
end

Instance Method Details

#associate_permission(params = {}) ⇒ Types::AssociatePermissionResponse

Adds or updates a permission policy for a Q Business application, allowing cross-account access for an ISV. This operation creates a new policy statement for the specified Q Business application. The policy statement defines the IAM actions that the ISV is allowed to perform on the Q Business application’s resources.

Examples:

Request syntax with placeholder values


resp = client.associate_permission({
  application_id: "ApplicationId", # required
  statement_id: "StatementId", # required
  actions: ["QIamAction"], # required
  principal: "PrincipalRoleArn", # required
})

Response structure


resp.statement #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier of the Q Business application.

  • :statement_id (required, String)

    A unique identifier for the policy statement.

  • :actions (required, Array<String>)

    The list of Q Business actions that the ISV is allowed to perform.

  • :principal (required, String)

    The Amazon Resource Name (ARN) of the IAM role for the ISV that is being granted permission.

Returns:

See Also:



501
502
503
504
# File 'lib/aws-sdk-qbusiness/client.rb', line 501

def associate_permission(params = {}, options = {})
  req = build_request(:associate_permission, params)
  req.send_request(options)
end

#batch_delete_document(params = {}) ⇒ Types::BatchDeleteDocumentResponse

Asynchronously deletes one or more documents added using the ‘BatchPutDocument` API from an Amazon Q Business index.

You can see the progress of the deletion, and any error messages related to the process, by using CloudWatch.

Examples:

Request syntax with placeholder values


resp = client.batch_delete_document({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  documents: [ # required
    {
      document_id: "DocumentId", # required
    },
  ],
  data_source_sync_id: "ExecutionId",
})

Response structure


resp.failed_documents #=> Array
resp.failed_documents[0].id #=> String
resp.failed_documents[0].error.error_message #=> String
resp.failed_documents[0].error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.failed_documents[0].data_source_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application.

  • :index_id (required, String)

    The identifier of the Amazon Q Business index that contains the documents to delete.

  • :documents (required, Array<Types::DeleteDocument>)

    Documents deleted from the Amazon Q Business index.

  • :data_source_sync_id (String)

    The identifier of the data source sync during which the documents were deleted.

Returns:

See Also:



555
556
557
558
# File 'lib/aws-sdk-qbusiness/client.rb', line 555

def batch_delete_document(params = {}, options = {})
  req = build_request(:batch_delete_document, params)
  req.send_request(options)
end

#batch_put_document(params = {}) ⇒ Types::BatchPutDocumentResponse

Adds one or more documents to an Amazon Q Business index.

You use this API to:

  • ingest your structured and unstructured documents and documents stored in an Amazon S3 bucket into an Amazon Q Business index.

  • add custom attributes to documents in an Amazon Q Business index.

  • attach an access control list to the documents added to an Amazon Q Business index.

You can see the progress of the deletion, and any error messages related to the process, by using CloudWatch.

Examples:

Request syntax with placeholder values


resp = client.batch_put_document({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  documents: [ # required
    {
      id: "DocumentId", # required
      attributes: [
        {
          name: "DocumentAttributeKey", # required
          value: { # required
            string_value: "DocumentAttributeValueStringValueString",
            string_list_value: ["String"],
            long_value: 1,
            date_value: Time.now,
          },
        },
      ],
      content: {
        blob: "data",
        s3: {
          bucket: "S3BucketName", # required
          key: "S3ObjectKey", # required
        },
      },
      content_type: "PDF", # accepts PDF, HTML, MS_WORD, PLAIN_TEXT, PPT, RTF, XML, XSLT, MS_EXCEL, CSV, JSON, MD
      title: "Title",
      access_configuration: {
        access_controls: [ # required
          {
            principals: [ # required
              {
                user: {
                  id: "UserId",
                  access: "ALLOW", # required, accepts ALLOW, DENY
                  membership_type: "INDEX", # accepts INDEX, DATASOURCE
                },
                group: {
                  name: "GroupName",
                  access: "ALLOW", # required, accepts ALLOW, DENY
                  membership_type: "INDEX", # accepts INDEX, DATASOURCE
                },
              },
            ],
            member_relation: "AND", # accepts AND, OR
          },
        ],
        member_relation: "AND", # accepts AND, OR
      },
      document_enrichment_configuration: {
        inline_configurations: [
          {
            condition: {
              key: "DocumentAttributeKey", # required
              operator: "GREATER_THAN", # required, accepts GREATER_THAN, GREATER_THAN_OR_EQUALS, LESS_THAN, LESS_THAN_OR_EQUALS, EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, EXISTS, NOT_EXISTS, BEGINS_WITH
              value: {
                string_value: "DocumentAttributeValueStringValueString",
                string_list_value: ["String"],
                long_value: 1,
                date_value: Time.now,
              },
            },
            target: {
              key: "DocumentAttributeKey", # required
              value: {
                string_value: "DocumentAttributeValueStringValueString",
                string_list_value: ["String"],
                long_value: 1,
                date_value: Time.now,
              },
              attribute_value_operator: "DELETE", # accepts DELETE
            },
            document_content_operator: "DELETE", # accepts DELETE
          },
        ],
        pre_extraction_hook_configuration: {
          invocation_condition: {
            key: "DocumentAttributeKey", # required
            operator: "GREATER_THAN", # required, accepts GREATER_THAN, GREATER_THAN_OR_EQUALS, LESS_THAN, LESS_THAN_OR_EQUALS, EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, EXISTS, NOT_EXISTS, BEGINS_WITH
            value: {
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          lambda_arn: "LambdaArn",
          s3_bucket_name: "S3BucketName",
          role_arn: "RoleArn",
        },
        post_extraction_hook_configuration: {
          invocation_condition: {
            key: "DocumentAttributeKey", # required
            operator: "GREATER_THAN", # required, accepts GREATER_THAN, GREATER_THAN_OR_EQUALS, LESS_THAN, LESS_THAN_OR_EQUALS, EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, EXISTS, NOT_EXISTS, BEGINS_WITH
            value: {
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          lambda_arn: "LambdaArn",
          s3_bucket_name: "S3BucketName",
          role_arn: "RoleArn",
        },
      },
      media_extraction_configuration: {
        image_extraction_configuration: {
          image_extraction_status: "ENABLED", # required, accepts ENABLED, DISABLED
        },
      },
    },
  ],
  role_arn: "RoleArn",
  data_source_sync_id: "ExecutionId",
})

Response structure


resp.failed_documents #=> Array
resp.failed_documents[0].id #=> String
resp.failed_documents[0].error.error_message #=> String
resp.failed_documents[0].error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.failed_documents[0].data_source_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application.

  • :index_id (required, String)

    The identifier of the Amazon Q Business index to add the documents to.

  • :documents (required, Array<Types::Document>)

    One or more documents to add to the index.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of an IAM role with permission to access your S3 bucket.

  • :data_source_sync_id (String)

    The identifier of the data source sync during which the documents were added.

Returns:

See Also:



726
727
728
729
# File 'lib/aws-sdk-qbusiness/client.rb', line 726

def batch_put_document(params = {}, options = {})
  req = build_request(:batch_put_document, params)
  req.send_request(options)
end

#build_request(operation_name, params = {}) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Parameters:

  • params ({}) (defaults to: {})


5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
# File 'lib/aws-sdk-qbusiness/client.rb', line 5356

def build_request(operation_name, params = {})
  handlers = @handlers.for(operation_name)
  tracer = config.telemetry_provider.tracer_provider.tracer(
    Aws::Telemetry.module_to_tracer_name('Aws::QBusiness')
  )
  context = Seahorse::Client::RequestContext.new(
    operation_name: operation_name,
    operation: config.api.operation(operation_name),
    client: self,
    params: params,
    config: config,
    tracer: tracer
  )
  context[:gem_name] = 'aws-sdk-qbusiness'
  context[:gem_version] = '1.25.0'
  Seahorse::Client::Request.new(handlers, context)
end

#chat_sync(params = {}) ⇒ Types::ChatSyncOutput

Starts or continues a non-streaming Amazon Q Business conversation.

Examples:

Request syntax with placeholder values


resp = client.chat_sync({
  application_id: "ApplicationId", # required
  user_id: "UserId",
  user_groups: ["String"],
  user_message: "UserMessage",
  attachments: [
    {
      data: "data",
      name: "AttachmentName",
      copy_from: {
        conversation: {
          conversation_id: "ConversationId", # required
          attachment_id: "AttachmentId", # required
        },
      },
    },
  ],
  action_execution: {
    plugin_id: "PluginId", # required
    payload: { # required
      "ActionPayloadFieldKey" => {
        value: { # required
        },
      },
    },
    payload_field_name_separator: "ActionPayloadFieldNameSeparator", # required
  },
  auth_challenge_response: {
    response_map: { # required
      "AuthResponseKey" => "AuthResponseValue",
    },
  },
  conversation_id: "ConversationId",
  parent_message_id: "MessageId",
  attribute_filter: {
    and_all_filters: [
      {
        # recursive AttributeFilter
      },
    ],
    or_all_filters: [
      {
        # recursive AttributeFilter
      },
    ],
    not_filter: {
      # recursive AttributeFilter
    },
    equals_to: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    contains_all: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    contains_any: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    greater_than: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    greater_than_or_equals: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    less_than: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    less_than_or_equals: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
  },
  chat_mode: "RETRIEVAL_MODE", # accepts RETRIEVAL_MODE, CREATOR_MODE, PLUGIN_MODE
  chat_mode_configuration: {
    plugin_configuration: {
      plugin_id: "PluginId", # required
    },
  },
  client_token: "ClientToken",
})

Response structure


resp.conversation_id #=> String
resp.system_message #=> String
resp.system_message_id #=> String
resp.user_message_id #=> String
resp.action_review.plugin_id #=> String
resp.action_review.plugin_type #=> String, one of "SERVICE_NOW", "SALESFORCE", "JIRA", "ZENDESK", "CUSTOM", "QUICKSIGHT", "SERVICENOW_NOW_PLATFORM", "JIRA_CLOUD", "SALESFORCE_CRM", "ZENDESK_SUITE", "ATLASSIAN_CONFLUENCE", "GOOGLE_CALENDAR", "MICROSOFT_TEAMS", "MICROSOFT_EXCHANGE", "PAGERDUTY_ADVANCE", "SMARTSHEET", "ASANA"
resp.action_review.payload #=> Hash
resp.action_review.payload["ActionPayloadFieldKey"].display_name #=> String
resp.action_review.payload["ActionPayloadFieldKey"].display_order #=> Integer
resp.action_review.payload["ActionPayloadFieldKey"].display_description #=> String
resp.action_review.payload["ActionPayloadFieldKey"].type #=> String, one of "STRING", "NUMBER", "ARRAY", "BOOLEAN"
resp.action_review.payload["ActionPayloadFieldKey"].allowed_values #=> Array
resp.action_review.payload["ActionPayloadFieldKey"].allowed_format #=> String
resp.action_review.payload["ActionPayloadFieldKey"].required #=> Boolean
resp.action_review.payload_field_name_separator #=> String
resp.auth_challenge_request.authorization_url #=> String
resp.source_attributions #=> Array
resp.source_attributions[0].title #=> String
resp.source_attributions[0].snippet #=> String
resp.source_attributions[0].url #=> String
resp.source_attributions[0].citation_number #=> Integer
resp.source_attributions[0].updated_at #=> Time
resp.source_attributions[0].text_message_segments #=> Array
resp.source_attributions[0].text_message_segments[0].begin_offset #=> Integer
resp.source_attributions[0].text_message_segments[0].end_offset #=> Integer
resp.source_attributions[0].text_message_segments[0].snippet_excerpt.text #=> String
resp.source_attributions[0].text_message_segments[0].media_id #=> String
resp.source_attributions[0].text_message_segments[0].media_mime_type #=> String
resp.failed_attachments #=> Array
resp.failed_attachments[0].name #=> String
resp.failed_attachments[0].status #=> String, one of "FAILED", "SUCCESS"
resp.failed_attachments[0].error.error_message #=> String
resp.failed_attachments[0].error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.failed_attachments[0].attachment_id #=> String
resp.failed_attachments[0].conversation_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application linked to the Amazon Q Business conversation.

  • :user_id (String)

    The identifier of the user attached to the chat input.

  • :user_groups (Array<String>)

    The group names that a user associated with the chat input belongs to.

  • :user_message (String)

    A end user message in a conversation.

  • :attachments (Array<Types::AttachmentInput>)

    A list of files uploaded directly during chat. You can upload a maximum of 5 files of upto 10 MB each.

  • :action_execution (Types::ActionExecution)

    A request from an end user to perform an Amazon Q Business plugin action.

  • :auth_challenge_response (Types::AuthChallengeResponse)

    An authentication verification event response by a third party authentication server to Amazon Q Business.

  • :conversation_id (String)

    The identifier of the Amazon Q Business conversation.

  • :parent_message_id (String)

    The identifier of the previous system message in a conversation.

  • :attribute_filter (Types::AttributeFilter)

    Enables filtering of Amazon Q Business web experience responses based on document attributes or metadata fields.

  • :chat_mode (String)

    The ‘chatMode` parameter determines the chat modes available to Amazon Q Business users:

    • ‘RETRIEVAL_MODE` - If you choose this mode, Amazon Q generates responses solely from the data sources connected and indexed by the application. If an answer is not found in the data sources or there are no data sources available, Amazon Q will respond with a “*No Answer Found*” message, unless LLM knowledge has been enabled. In that case, Amazon Q will generate a response from the LLM knowledge

    • ‘CREATOR_MODE` - By selecting this mode, you can choose to generate responses only from the LLM knowledge. You can also attach files and have Amazon Q generate a response based on the data in those files. If the attached files do not contain an answer for the query, Amazon Q will automatically fall back to generating a response from the LLM knowledge.

    • ‘PLUGIN_MODE` - By selecting this mode, users can choose to use plugins in chat to get their responses.

    <note markdown=“1”> If none of the modes are selected, Amazon Q will only respond using the information from the attached files.

    </note>
    

    For more information, see [Admin controls and guardrails], [Plugins], and [Response sources].

    [1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html [2]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/plugins.html [3]: docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope

  • :chat_mode_configuration (Types::ChatModeConfiguration)

    The chat mode configuration for an Amazon Q Business application.

  • :client_token (String)

    A token that you provide to identify a chat request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



988
989
990
991
# File 'lib/aws-sdk-qbusiness/client.rb', line 988

def chat_sync(params = {}, options = {})
  req = build_request(:chat_sync, params)
  req.send_request(options)
end

#create_application(params = {}) ⇒ Types::CreateApplicationResponse

Creates an Amazon Q Business application.

<note markdown=“1”> There are new tiers for Amazon Q Business. Not all features in Amazon Q Business Pro are also available in Amazon Q Business Lite. For information on what’s included in Amazon Q Business Lite and what’s included in Amazon Q Business Pro, see [Amazon Q Business tiers]. You must use the Amazon Q Business console to assign subscription tiers to users.

An Amazon Q Apps service linked role will be created if it's absent

in the Amazon Web Services account when ‘QAppsConfiguration` is enabled in the request. For more information, see [ Using service-linked roles for Q Apps].

When you create an application, Amazon Q Business may securely

transmit data for processing from your selected Amazon Web Services region, but within your geography. For more information, see [Cross region inference in Amazon Q Business].

</note>

[1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/tiers.html#user-sub-tiers [2]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles-qapps.html [3]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/cross-region-inference.html

Examples:

Request syntax with placeholder values


resp = client.create_application({
  display_name: "ApplicationName", # required
  role_arn: "RoleArn",
  identity_type: "AWS_IAM_IDP_SAML", # accepts AWS_IAM_IDP_SAML, AWS_IAM_IDP_OIDC, AWS_IAM_IDC, AWS_QUICKSIGHT_IDP
  iam_identity_provider_arn: "IAMIdentityProviderArn",
  identity_center_instance_arn: "InstanceArn",
  client_ids_for_oidc: ["ClientIdForOIDC"],
  description: "Description",
  encryption_configuration: {
    kms_key_id: "KmsKeyId",
  },
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  client_token: "ClientToken",
  attachments_configuration: {
    attachments_control_mode: "ENABLED", # required, accepts ENABLED, DISABLED
  },
  q_apps_configuration: {
    q_apps_control_mode: "ENABLED", # required, accepts ENABLED, DISABLED
  },
  personalization_configuration: {
    personalization_control_mode: "ENABLED", # required, accepts ENABLED, DISABLED
  },
  quick_sight_configuration: {
    client_namespace: "ClientNamespace", # required
  },
})

Response structure


resp.application_id #=> String
resp.application_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :display_name (required, String)

    A name for the Amazon Q Business application.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a [service linked role (SLR)] and use it as the application’s role.

    [1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions

  • :identity_type (String)

    The authentication type being used by a Amazon Q Business application.

  • :iam_identity_provider_arn (String)

    The Amazon Resource Name (ARN) of an identity provider being used by an Amazon Q Business application.

  • :identity_center_instance_arn (String)

    The Amazon Resource Name (ARN) of the IAM Identity Center instance you are either creating for—or connecting to—your Amazon Q Business application.

  • :client_ids_for_oidc (Array<String>)

    The OIDC client ID for a Amazon Q Business application.

  • :description (String)

    A description for the Amazon Q Business application.

  • :encryption_configuration (Types::EncryptionConfiguration)

    The identifier of the KMS key that is used to encrypt your data. Amazon Q Business doesn’t support asymmetric keys.

  • :tags (Array<Types::Tag>)

    A list of key-value pairs that identify or categorize your Amazon Q Business application. You can also use tags to help control access to the application. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

  • :client_token (String)

    A token that you provide to identify the request to create your Amazon Q Business application.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :attachments_configuration (Types::AttachmentsConfiguration)

    An option to allow end users to upload files directly during chat.

  • :q_apps_configuration (Types::QAppsConfiguration)

    An option to allow end users to create and use Amazon Q Apps in the web experience.

  • :personalization_configuration (Types::PersonalizationConfiguration)

    Configuration information about chat response personalization. For more information, see [Personalizing chat responses]

    [1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html

  • :quick_sight_configuration (Types::QuickSightConfiguration)

    The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight for authentication. This configuration is required if your application uses QuickSight as the identity provider. For more information, see [Creating an Amazon QuickSight integrated application].

    [1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/create-quicksight-integrated-application.html

Returns:

See Also:



1143
1144
1145
1146
# File 'lib/aws-sdk-qbusiness/client.rb', line 1143

def create_application(params = {}, options = {})
  req = build_request(:create_application, params)
  req.send_request(options)
end

#create_data_accessor(params = {}) ⇒ Types::CreateDataAccessorResponse

Creates a new data accessor for an ISV to access data from a Q Business application. The data accessor is an entity that represents the ISV’s access to the Q Business application’s data. It includes the IAM role ARN for the ISV, a friendly name, and a set of action configurations that define the specific actions the ISV is allowed to perform and any associated data filters. When the data accessor is created, an AWS IAM Identity Center application is also created to manage the ISV’s identity and authentication for accessing the Q Business application.

Examples:

Request syntax with placeholder values


resp = client.create_data_accessor({
  application_id: "ApplicationId", # required
  principal: "PrincipalRoleArn", # required
  action_configurations: [ # required
    {
      action: "QIamAction", # required
      filter_configuration: {
        document_attribute_filter: { # required
          and_all_filters: [
            {
              # recursive AttributeFilter
            },
          ],
          or_all_filters: [
            {
              # recursive AttributeFilter
            },
          ],
          not_filter: {
            # recursive AttributeFilter
          },
          equals_to: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          contains_all: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          contains_any: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          greater_than: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          greater_than_or_equals: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          less_than: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          less_than_or_equals: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
        },
      },
    },
  ],
  client_token: "ClientToken",
  display_name: "DataAccessorName", # required
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Response structure


resp.data_accessor_id #=> String
resp.idc_application_arn #=> String
resp.data_accessor_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier of the Q Business application.

  • :principal (required, String)

    The Amazon Resource Name (ARN) of the IAM role for the ISV that will be accessing the data.

  • :action_configurations (required, Array<Types::ActionConfiguration>)

    A list of action configurations specifying the allowed actions and any associated filters.

  • :client_token (String)

    A unique, case-sensitive identifier you provide to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :display_name (required, String)

    A friendly name for the data accessor.

  • :tags (Array<Types::Tag>)

    The tags to associate with the data accessor.

Returns:

See Also:



1298
1299
1300
1301
# File 'lib/aws-sdk-qbusiness/client.rb', line 1298

def create_data_accessor(params = {}, options = {})
  req = build_request(:create_data_accessor, params)
  req.send_request(options)
end

#create_data_source(params = {}) ⇒ Types::CreateDataSourceResponse

Creates a data source connector for an Amazon Q Business application.

‘CreateDataSource` is a synchronous operation. The operation returns 200 if the data source was successfully created. Otherwise, an exception is raised.

Examples:

Request syntax with placeholder values


resp = client.create_data_source({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  display_name: "DataSourceName", # required
  configuration: { # required
  },
  vpc_configuration: {
    subnet_ids: ["SubnetId"], # required
    security_group_ids: ["SecurityGroupId"], # required
  },
  description: "Description",
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  sync_schedule: "SyncSchedule",
  role_arn: "RoleArn",
  client_token: "ClientToken",
  document_enrichment_configuration: {
    inline_configurations: [
      {
        condition: {
          key: "DocumentAttributeKey", # required
          operator: "GREATER_THAN", # required, accepts GREATER_THAN, GREATER_THAN_OR_EQUALS, LESS_THAN, LESS_THAN_OR_EQUALS, EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, EXISTS, NOT_EXISTS, BEGINS_WITH
          value: {
            string_value: "DocumentAttributeValueStringValueString",
            string_list_value: ["String"],
            long_value: 1,
            date_value: Time.now,
          },
        },
        target: {
          key: "DocumentAttributeKey", # required
          value: {
            string_value: "DocumentAttributeValueStringValueString",
            string_list_value: ["String"],
            long_value: 1,
            date_value: Time.now,
          },
          attribute_value_operator: "DELETE", # accepts DELETE
        },
        document_content_operator: "DELETE", # accepts DELETE
      },
    ],
    pre_extraction_hook_configuration: {
      invocation_condition: {
        key: "DocumentAttributeKey", # required
        operator: "GREATER_THAN", # required, accepts GREATER_THAN, GREATER_THAN_OR_EQUALS, LESS_THAN, LESS_THAN_OR_EQUALS, EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, EXISTS, NOT_EXISTS, BEGINS_WITH
        value: {
          string_value: "DocumentAttributeValueStringValueString",
          string_list_value: ["String"],
          long_value: 1,
          date_value: Time.now,
        },
      },
      lambda_arn: "LambdaArn",
      s3_bucket_name: "S3BucketName",
      role_arn: "RoleArn",
    },
    post_extraction_hook_configuration: {
      invocation_condition: {
        key: "DocumentAttributeKey", # required
        operator: "GREATER_THAN", # required, accepts GREATER_THAN, GREATER_THAN_OR_EQUALS, LESS_THAN, LESS_THAN_OR_EQUALS, EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, EXISTS, NOT_EXISTS, BEGINS_WITH
        value: {
          string_value: "DocumentAttributeValueStringValueString",
          string_list_value: ["String"],
          long_value: 1,
          date_value: Time.now,
        },
      },
      lambda_arn: "LambdaArn",
      s3_bucket_name: "S3BucketName",
      role_arn: "RoleArn",
    },
  },
  media_extraction_configuration: {
    image_extraction_configuration: {
      image_extraction_status: "ENABLED", # required, accepts ENABLED, DISABLED
    },
  },
})

Response structure


resp.data_source_id #=> String
resp.data_source_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application the data source will be attached to.

  • :index_id (required, String)

    The identifier of the index that you want to use with the data source connector.

  • :display_name (required, String)

    A name for the data source connector.

  • :configuration (required, Hash, Array, String, Numeric, Boolean)

    Configuration information to connect your data source repository to Amazon Q Business. Use this parameter to provide a JSON schema with configuration information specific to your data source connector.

    Each data source has a JSON schema provided by Amazon Q Business that you must use. For example, the Amazon S3 and Web Crawler connectors require the following JSON schemas:

    • Amazon S3 JSON schema][1
    • Web Crawler JSON schema][2

    You can find configuration templates for your specific data source using the following steps:

    1. Navigate to the [Supported connectors] page in the Amazon Q Business User Guide, and select the data source of your choice.

    2. Then, from your specific data source connector page, select **Using the API**. You will find the JSON schema for your data source, including parameter descriptions, in this section.

    Document type used to carry open content (Hash,Array,String,Numeric,Boolean). A document type value is serialized using the same format as its surroundings and requires no additional encoding or escaping.

    [1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/s3-api.html [2]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/web-crawler-api.html [3]: docs.aws.amazon.com/amazonq/latest/business-use-dg/connectors-list.html

  • :vpc_configuration (Types::DataSourceVpcConfiguration)

    Configuration information for an Amazon VPC (Virtual Private Cloud) to connect to your data source. For more information, see [Using Amazon VPC with Amazon Q Business connectors].

    [1]: docs.aws.amazon.com/amazonq/latest/business-use-dg/connector-vpc.html

  • :description (String)

    A description for the data source connector.

  • :tags (Array<Types::Tag>)

    A list of key-value pairs that identify or categorize the data source connector. You can also use tags to help control access to the data source connector. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

  • :sync_schedule (String)

    Sets the frequency for Amazon Q Business to check the documents in your data source repository and update your index. If you don’t set a schedule, Amazon Q Business won’t periodically update the index.

    Specify a ‘cron-` format schedule string or an empty string to indicate that the index is updated on demand. You can’t specify the ‘Schedule` parameter when the `Type` parameter is set to `CUSTOM`. If you do, you receive a `ValidationException` exception.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources.

  • :client_token (String)

    A token you provide to identify a request to create a data source connector. Multiple calls to the ‘CreateDataSource` API with the same client token will create only one data source connector.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :document_enrichment_configuration (Types::DocumentEnrichmentConfiguration)

    Provides the configuration information for altering document metadata and content during the document ingestion process.

    For more information, see [Custom document enrichment].

    [1]: docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html

  • :media_extraction_configuration (Types::MediaExtractionConfiguration)

    The configuration for extracting information from media in documents during ingestion.

Returns:

See Also:



1509
1510
1511
1512
# File 'lib/aws-sdk-qbusiness/client.rb', line 1509

def create_data_source(params = {}, options = {})
  req = build_request(:create_data_source, params)
  req.send_request(options)
end

#create_index(params = {}) ⇒ Types::CreateIndexResponse

Creates an Amazon Q Business index.

To determine if index creation has completed, check the ‘Status` field returned from a call to `DescribeIndex`. The `Status` field is set to `ACTIVE` when the index is ready to use.

Once the index is active, you can index your documents using the [ ‘BatchPutDocument` ][1] API or the [ `CreateDataSource` ][2] API.

[1]: docs.aws.amazon.com/amazonq/latest/api-reference/API_BatchPutDocument.html [2]: docs.aws.amazon.com/amazonq/latest/api-reference/API_CreateDataSource.html

Examples:

Request syntax with placeholder values


resp = client.create_index({
  application_id: "ApplicationId", # required
  display_name: "IndexName", # required
  description: "Description",
  type: "ENTERPRISE", # accepts ENTERPRISE, STARTER
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  capacity_configuration: {
    units: 1,
  },
  client_token: "ClientToken",
})

Response structure


resp.index_id #=> String
resp.index_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application using the index.

  • :display_name (required, String)

    A name for the Amazon Q Business index.

  • :description (String)

    A description for the Amazon Q Business index.

  • :type (String)

    The index type that’s suitable for your needs. For more information on what’s included in each type of index, see [Amazon Q Business tiers].

    [1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/tiers.html#index-tiers

  • :tags (Array<Types::Tag>)

    A list of key-value pairs that identify or categorize the index. You can also use tags to help control access to the index. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

  • :capacity_configuration (Types::IndexCapacityConfiguration)

    The capacity units you want to provision for your index. You can add and remove capacity to fit your usage needs.

  • :client_token (String)

    A token that you provide to identify the request to create an index. Multiple calls to the ‘CreateIndex` API with the same client token will create only one index.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



1597
1598
1599
1600
# File 'lib/aws-sdk-qbusiness/client.rb', line 1597

def create_index(params = {}, options = {})
  req = build_request(:create_index, params)
  req.send_request(options)
end

#create_plugin(params = {}) ⇒ Types::CreatePluginResponse

Creates an Amazon Q Business plugin.

Examples:

Request syntax with placeholder values


resp = client.create_plugin({
  application_id: "ApplicationId", # required
  display_name: "PluginName", # required
  type: "SERVICE_NOW", # required, accepts SERVICE_NOW, SALESFORCE, JIRA, ZENDESK, CUSTOM, QUICKSIGHT, SERVICENOW_NOW_PLATFORM, JIRA_CLOUD, SALESFORCE_CRM, ZENDESK_SUITE, ATLASSIAN_CONFLUENCE, GOOGLE_CALENDAR, MICROSOFT_TEAMS, MICROSOFT_EXCHANGE, PAGERDUTY_ADVANCE, SMARTSHEET, ASANA
  auth_configuration: { # required
    basic_auth_configuration: {
      secret_arn: "SecretArn", # required
      role_arn: "RoleArn", # required
    },
    o_auth_2_client_credential_configuration: {
      secret_arn: "SecretArn", # required
      role_arn: "RoleArn", # required
      authorization_url: "Url",
      token_url: "Url",
    },
    no_auth_configuration: {
    },
    idc_auth_configuration: {
      idc_application_arn: "IdcApplicationArn", # required
      role_arn: "RoleArn", # required
    },
  },
  server_url: "Url",
  custom_plugin_configuration: {
    description: "PluginDescription", # required
    api_schema_type: "OPEN_API_V3", # required, accepts OPEN_API_V3
    api_schema: { # required
      payload: "Payload",
      s3: {
        bucket: "S3BucketName", # required
        key: "S3ObjectKey", # required
      },
    },
  },
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  client_token: "ClientToken",
})

Response structure


resp.plugin_id #=> String
resp.plugin_arn #=> String
resp.build_status #=> String, one of "READY", "CREATE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "DELETE_IN_PROGRESS", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application that will contain the plugin.

  • :display_name (required, String)

    A the name for your plugin.

  • :type (required, String)

    The type of plugin you want to create.

  • :auth_configuration (required, Types::PluginAuthConfiguration)

    Authentication configuration information for an Amazon Q Business plugin.

  • :server_url (String)

    The source URL used for plugin configuration.

  • :custom_plugin_configuration (Types::CustomPluginConfiguration)

    Contains configuration for a custom plugin.

  • :tags (Array<Types::Tag>)

    A list of key-value pairs that identify or categorize the data source connector. You can also use tags to help control access to the data source connector. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

  • :client_token (String)

    A token that you provide to identify the request to create your Amazon Q Business plugin.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



1698
1699
1700
1701
# File 'lib/aws-sdk-qbusiness/client.rb', line 1698

def create_plugin(params = {}, options = {})
  req = build_request(:create_plugin, params)
  req.send_request(options)
end

#create_retriever(params = {}) ⇒ Types::CreateRetrieverResponse

Adds a retriever to your Amazon Q Business application.

Examples:

Request syntax with placeholder values


resp = client.create_retriever({
  application_id: "ApplicationId", # required
  type: "NATIVE_INDEX", # required, accepts NATIVE_INDEX, KENDRA_INDEX
  display_name: "RetrieverName", # required
  configuration: { # required
    native_index_configuration: {
      index_id: "IndexId", # required
      boosting_override: {
        "DocumentAttributeKey" => {
          number_configuration: {
            boosting_level: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH, VERY_HIGH
            boosting_type: "PRIORITIZE_LARGER_VALUES", # accepts PRIORITIZE_LARGER_VALUES, PRIORITIZE_SMALLER_VALUES
          },
          string_configuration: {
            boosting_level: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH, VERY_HIGH
            attribute_value_boosting: {
              "String" => "LOW", # accepts LOW, MEDIUM, HIGH, VERY_HIGH
            },
          },
          date_configuration: {
            boosting_level: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH, VERY_HIGH
            boosting_duration_in_seconds: 1,
          },
          string_list_configuration: {
            boosting_level: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH, VERY_HIGH
          },
        },
      },
    },
    kendra_index_configuration: {
      index_id: "KendraIndexId", # required
    },
  },
  role_arn: "RoleArn",
  client_token: "ClientToken",
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Response structure


resp.retriever_id #=> String
resp.retriever_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of your Amazon Q Business application.

  • :type (required, String)

    The type of retriever you are using.

  • :display_name (required, String)

    The name of your retriever.

  • :configuration (required, Types::RetrieverConfiguration)

    Provides information on how the retriever used for your Amazon Q Business application is configured.

  • :role_arn (String)

    The ARN of an IAM role used by Amazon Q Business to access the basic authentication credentials stored in a Secrets Manager secret.

  • :client_token (String)

    A token that you provide to identify the request to create your Amazon Q Business application retriever.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :tags (Array<Types::Tag>)

    A list of key-value pairs that identify or categorize the retriever. You can also use tags to help control access to the retriever. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

Returns:

See Also:



1794
1795
1796
1797
# File 'lib/aws-sdk-qbusiness/client.rb', line 1794

def create_retriever(params = {}, options = {})
  req = build_request(:create_retriever, params)
  req.send_request(options)
end

#create_user(params = {}) ⇒ Struct

Creates a universally unique identifier (UUID) mapped to a list of local user ids within an application.

Examples:

Request syntax with placeholder values


resp = client.create_user({
  application_id: "ApplicationId", # required
  user_id: "String", # required
  user_aliases: [
    {
      index_id: "IndexId",
      data_source_id: "DataSourceId",
      user_id: "String", # required
    },
  ],
  client_token: "ClientToken",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application for which the user mapping will be created.

  • :user_id (required, String)

    The user emails attached to a user mapping.

  • :user_aliases (Array<Types::UserAlias>)

    The list of user aliases in the mapping.

  • :client_token (String)

    A token that you provide to identify the request to create your Amazon Q Business user mapping.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1840
1841
1842
1843
# File 'lib/aws-sdk-qbusiness/client.rb', line 1840

def create_user(params = {}, options = {})
  req = build_request(:create_user, params)
  req.send_request(options)
end

#create_web_experience(params = {}) ⇒ Types::CreateWebExperienceResponse

Creates an Amazon Q Business web experience.

Examples:

Request syntax with placeholder values


resp = client.create_web_experience({
  application_id: "ApplicationId", # required
  title: "WebExperienceTitle",
  subtitle: "WebExperienceSubtitle",
  welcome_message: "WebExperienceWelcomeMessage",
  sample_prompts_control_mode: "ENABLED", # accepts ENABLED, DISABLED
  origins: ["Origin"],
  role_arn: "RoleArn",
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  client_token: "ClientToken",
  identity_provider_configuration: {
    saml_configuration: {
      authentication_url: "SamlAuthenticationUrl", # required
    },
    open_id_connect_configuration: {
      secrets_arn: "SecretArn", # required
      secrets_role: "RoleArn", # required
    },
  },
  browser_extension_configuration: {
    enabled_browser_extensions: ["FIREFOX"], # required, accepts FIREFOX, CHROME
  },
  customization_configuration: {
    custom_css_url: "CustomCSSUrl",
    logo_url: "LogoUrl",
    font_url: "FontUrl",
    favicon_url: "FaviconUrl",
  },
})

Response structure


resp.web_experience_id #=> String
resp.web_experience_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business web experience.

  • :title (String)

    The title for your Amazon Q Business web experience.

  • :subtitle (String)

    A subtitle to personalize your Amazon Q Business web experience.

  • :welcome_message (String)

    The customized welcome message for end users of an Amazon Q Business web experience.

  • :sample_prompts_control_mode (String)

    Determines whether sample prompts are enabled in the web experience for an end user.

  • :origins (Array<String>)

    Sets the website domain origins that are allowed to embed the Amazon Q Business web experience. The domain origin refers to the base URL for accessing a website including the protocol (http/https), the domain name, and the port number (if specified). </p> <note> <p>You must only submit a base URL and not a full path. For example, https://docs.aws.amazon.com.</p> </note>

  • :role_arn (String)

    The Amazon Resource Name (ARN) of the service role attached to your web experience.

    <note markdown=“1”> You must provide this value if you’re using IAM Identity Center to manage end user access to your application. If you’re using legacy identity management to manage user access, you don’t need to provide this value.

    </note>
    
  • :tags (Array<Types::Tag>)

    A list of key-value pairs that identify or categorize your Amazon Q Business web experience. You can also use tags to help control access to the web experience. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

  • :client_token (String)

    A token you provide to identify a request to create an Amazon Q Business web experience.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :identity_provider_configuration (Types::IdentityProviderConfiguration)

    Information about the identity provider (IdP) used to authenticate end users of an Amazon Q Business web experience.

  • :browser_extension_configuration (Types::BrowserExtensionConfiguration)

    The browser extension configuration for an Amazon Q Business web experience.

    <note markdown=“1”> For Amazon Q Business application using external OIDC-compliant identity providers (IdPs). The IdP administrator must add the browser extension sign-in redirect URLs to the IdP application. For more information, see [Configure external OIDC identity provider for your browser extensions.].

    </note>
    

    [1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/browser-extensions.html

  • :customization_configuration (Types::CustomizationConfiguration)

    Sets the custom logo, favicon, font, and color used in the Amazon Q web experience.

Returns:

See Also:



1973
1974
1975
1976
# File 'lib/aws-sdk-qbusiness/client.rb', line 1973

def create_web_experience(params = {}, options = {})
  req = build_request(:create_web_experience, params)
  req.send_request(options)
end

#delete_application(params = {}) ⇒ Struct

Deletes an Amazon Q Business application.

Examples:

Request syntax with placeholder values


resp = client.delete_application({
  application_id: "ApplicationId", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1995
1996
1997
1998
# File 'lib/aws-sdk-qbusiness/client.rb', line 1995

def delete_application(params = {}, options = {})
  req = build_request(:delete_application, params)
  req.send_request(options)
end

#delete_chat_controls_configuration(params = {}) ⇒ Struct

Deletes chat controls configured for an existing Amazon Q Business application.

Examples:

Request syntax with placeholder values


resp = client.delete_chat_controls_configuration({
  application_id: "ApplicationId", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application the chat controls have been configured for.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2019
2020
2021
2022
# File 'lib/aws-sdk-qbusiness/client.rb', line 2019

def delete_chat_controls_configuration(params = {}, options = {})
  req = build_request(:delete_chat_controls_configuration, params)
  req.send_request(options)
end

#delete_conversation(params = {}) ⇒ Struct

Deletes an Amazon Q Business web experience conversation.

Examples:

Request syntax with placeholder values


resp = client.delete_conversation({
  conversation_id: "ConversationId", # required
  application_id: "ApplicationId", # required
  user_id: "UserId",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :conversation_id (required, String)

    The identifier of the Amazon Q Business web experience conversation being deleted.

  • :application_id (required, String)

    The identifier of the Amazon Q Business application associated with the conversation.

  • :user_id (String)

    The identifier of the user who is deleting the conversation.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2051
2052
2053
2054
# File 'lib/aws-sdk-qbusiness/client.rb', line 2051

def delete_conversation(params = {}, options = {})
  req = build_request(:delete_conversation, params)
  req.send_request(options)
end

#delete_data_accessor(params = {}) ⇒ Struct

Deletes a specified data accessor. This operation permanently removes the data accessor and its associated AWS IAM Identity Center application. Any access granted to the ISV through this data accessor will be revoked

Examples:

Request syntax with placeholder values


resp = client.delete_data_accessor({
  application_id: "ApplicationId", # required
  data_accessor_id: "DataAccessorId", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier of the Q Business application.

  • :data_accessor_id (required, String)

    The unique identifier of the data accessor to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2080
2081
2082
2083
# File 'lib/aws-sdk-qbusiness/client.rb', line 2080

def delete_data_accessor(params = {}, options = {})
  req = build_request(:delete_data_accessor, params)
  req.send_request(options)
end

#delete_data_source(params = {}) ⇒ Struct

Deletes an Amazon Q Business data source connector. While the data source is being deleted, the ‘Status` field returned by a call to the `DescribeDataSource` API is set to `DELETING`.

Examples:

Request syntax with placeholder values


resp = client.delete_data_source({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  data_source_id: "DataSourceId", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application used with the data source connector.

  • :index_id (required, String)

    The identifier of the index used with the data source connector.

  • :data_source_id (required, String)

    The identifier of the data source connector that you want to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2113
2114
2115
2116
# File 'lib/aws-sdk-qbusiness/client.rb', line 2113

def delete_data_source(params = {}, options = {})
  req = build_request(:delete_data_source, params)
  req.send_request(options)
end

#delete_group(params = {}) ⇒ Struct

Deletes a group so that all users and sub groups that belong to the group can no longer access documents only available to that group. For example, after deleting the group “Summer Interns”, all interns who belonged to that group no longer see intern-only documents in their chat results.

If you want to delete, update, or replace users or sub groups of a group, you need to use the ‘PutGroup` operation. For example, if a user in the group “Engineering” leaves the engineering team and another user takes their place, you provide an updated list of users or sub groups that belong to the “Engineering” group when calling `PutGroup`.

Examples:

Request syntax with placeholder values


resp = client.delete_group({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  group_name: "GroupName", # required
  data_source_id: "DataSourceId",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application in which the group mapping belongs.

  • :index_id (required, String)

    The identifier of the index you want to delete the group from.

  • :group_name (required, String)

    The name of the group you want to delete.

  • :data_source_id (String)

    The identifier of the data source linked to the group

    A group can be tied to multiple data sources. You can delete a group from accessing documents in a certain data source. For example, the groups “Research”, “Engineering”, and “Sales and Marketing” are all tied to the company’s documents stored in the data sources Confluence and Salesforce. You want to delete “Research” and “Engineering” groups from Salesforce, so that these groups cannot access customer-related documents stored in Salesforce. Only “Sales and Marketing” should access documents in the Salesforce data source.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2167
2168
2169
2170
# File 'lib/aws-sdk-qbusiness/client.rb', line 2167

def delete_group(params = {}, options = {})
  req = build_request(:delete_group, params)
  req.send_request(options)
end

#delete_index(params = {}) ⇒ Struct

Deletes an Amazon Q Business index.

Examples:

Request syntax with placeholder values


resp = client.delete_index({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application the Amazon Q Business index is linked to.

  • :index_id (required, String)

    The identifier of the Amazon Q Business index.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2194
2195
2196
2197
# File 'lib/aws-sdk-qbusiness/client.rb', line 2194

def delete_index(params = {}, options = {})
  req = build_request(:delete_index, params)
  req.send_request(options)
end

#delete_plugin(params = {}) ⇒ Struct

Deletes an Amazon Q Business plugin.

Examples:

Request syntax with placeholder values


resp = client.delete_plugin({
  application_id: "ApplicationId", # required
  plugin_id: "PluginId", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier the application attached to the Amazon Q Business plugin.

  • :plugin_id (required, String)

    The identifier of the plugin being deleted.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2221
2222
2223
2224
# File 'lib/aws-sdk-qbusiness/client.rb', line 2221

def delete_plugin(params = {}, options = {})
  req = build_request(:delete_plugin, params)
  req.send_request(options)
end

#delete_retriever(params = {}) ⇒ Struct

Deletes the retriever used by an Amazon Q Business application.

Examples:

Request syntax with placeholder values


resp = client.delete_retriever({
  application_id: "ApplicationId", # required
  retriever_id: "RetrieverId", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application using the retriever.

  • :retriever_id (required, String)

    The identifier of the retriever being deleted.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2248
2249
2250
2251
# File 'lib/aws-sdk-qbusiness/client.rb', line 2248

def delete_retriever(params = {}, options = {})
  req = build_request(:delete_retriever, params)
  req.send_request(options)
end

#delete_user(params = {}) ⇒ Struct

Deletes a user by email id.

Examples:

Request syntax with placeholder values


resp = client.delete_user({
  application_id: "ApplicationId", # required
  user_id: "String", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application from which the user is being deleted.

  • :user_id (required, String)

    The user email being deleted.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2275
2276
2277
2278
# File 'lib/aws-sdk-qbusiness/client.rb', line 2275

def delete_user(params = {}, options = {})
  req = build_request(:delete_user, params)
  req.send_request(options)
end

#delete_web_experience(params = {}) ⇒ Struct

Deletes an Amazon Q Business web experience.

Examples:

Request syntax with placeholder values


resp = client.delete_web_experience({
  application_id: "ApplicationId", # required
  web_experience_id: "WebExperienceId", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application linked to the Amazon Q Business web experience.

  • :web_experience_id (required, String)

    The identifier of the Amazon Q Business web experience being deleted.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2302
2303
2304
2305
# File 'lib/aws-sdk-qbusiness/client.rb', line 2302

def delete_web_experience(params = {}, options = {})
  req = build_request(:delete_web_experience, params)
  req.send_request(options)
end

#disassociate_permission(params = {}) ⇒ Struct

Removes a permission policy from a Q Business application, revoking the cross-account access that was previously granted to an ISV. This operation deletes the specified policy statement from the application’s permission policy.

Examples:

Request syntax with placeholder values


resp = client.disassociate_permission({
  application_id: "ApplicationId", # required
  statement_id: "String", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier of the Q Business application.

  • :statement_id (required, String)

    The statement ID of the permission to remove.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2331
2332
2333
2334
# File 'lib/aws-sdk-qbusiness/client.rb', line 2331

def disassociate_permission(params = {}, options = {})
  req = build_request(:disassociate_permission, params)
  req.send_request(options)
end

#get_application(params = {}) ⇒ Types::GetApplicationResponse

Gets information about an existing Amazon Q Business application.

Examples:

Request syntax with placeholder values


resp = client.get_application({
  application_id: "ApplicationId", # required
})

Response structure


resp.display_name #=> String
resp.application_id #=> String
resp.application_arn #=> String
resp.identity_type #=> String, one of "AWS_IAM_IDP_SAML", "AWS_IAM_IDP_OIDC", "AWS_IAM_IDC", "AWS_QUICKSIGHT_IDP"
resp.iam_identity_provider_arn #=> String
resp.identity_center_application_arn #=> String
resp.role_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
resp.description #=> String
resp.encryption_configuration.kms_key_id #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.error.error_message #=> String
resp.error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.attachments_configuration.attachments_control_mode #=> String, one of "ENABLED", "DISABLED"
resp.q_apps_configuration.q_apps_control_mode #=> String, one of "ENABLED", "DISABLED"
resp.personalization_configuration.personalization_control_mode #=> String, one of "ENABLED", "DISABLED"
resp.auto_subscription_configuration.auto_subscribe #=> String, one of "ENABLED", "DISABLED"
resp.auto_subscription_configuration.default_subscription_type #=> String, one of "Q_LITE", "Q_BUSINESS"
resp.client_ids_for_oidc #=> Array
resp.client_ids_for_oidc[0] #=> String
resp.quick_sight_configuration.client_namespace #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application.

Returns:

See Also:



2398
2399
2400
2401
# File 'lib/aws-sdk-qbusiness/client.rb', line 2398

def get_application(params = {}, options = {})
  req = build_request(:get_application, params)
  req.send_request(options)
end

#get_chat_controls_configuration(params = {}) ⇒ Types::GetChatControlsConfigurationResponse

Gets information about an chat controls configured for an existing Amazon Q Business application.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.get_chat_controls_configuration({
  application_id: "ApplicationId", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.response_scope #=> String, one of "ENTERPRISE_CONTENT_ONLY", "EXTENDED_KNOWLEDGE_ENABLED"
resp.blocked_phrases.blocked_phrases #=> Array
resp.blocked_phrases.blocked_phrases[0] #=> String
resp.blocked_phrases.system_message_override #=> String
resp.topic_configurations #=> Array
resp.topic_configurations[0].name #=> String
resp.topic_configurations[0].description #=> String
resp.topic_configurations[0].example_chat_messages #=> Array
resp.topic_configurations[0].example_chat_messages[0] #=> String
resp.topic_configurations[0].rules #=> Array
resp.topic_configurations[0].rules[0].included_users_and_groups.user_ids #=> Array
resp.topic_configurations[0].rules[0].included_users_and_groups.user_ids[0] #=> String
resp.topic_configurations[0].rules[0].included_users_and_groups.user_groups #=> Array
resp.topic_configurations[0].rules[0].included_users_and_groups.user_groups[0] #=> String
resp.topic_configurations[0].rules[0].excluded_users_and_groups.user_ids #=> Array
resp.topic_configurations[0].rules[0].excluded_users_and_groups.user_ids[0] #=> String
resp.topic_configurations[0].rules[0].excluded_users_and_groups.user_groups #=> Array
resp.topic_configurations[0].rules[0].excluded_users_and_groups.user_groups[0] #=> String
resp.topic_configurations[0].rules[0].rule_type #=> String, one of "CONTENT_BLOCKER_RULE", "CONTENT_RETRIEVAL_RULE"
resp.topic_configurations[0].rules[0].rule_configuration.content_blocker_rule.system_message_override #=> String
resp.topic_configurations[0].rules[0].rule_configuration.content_retrieval_rule.eligible_data_sources #=> Array
resp.topic_configurations[0].rules[0].rule_configuration.content_retrieval_rule.eligible_data_sources[0].index_id #=> String
resp.topic_configurations[0].rules[0].rule_configuration.content_retrieval_rule.eligible_data_sources[0].data_source_id #=> String
resp.creator_mode_configuration.creator_mode_control #=> String, one of "ENABLED", "DISABLED"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application for which the chat controls are configured.

  • :max_results (Integer)

    The maximum number of configured chat controls to return.

  • :next_token (String)

    If the ‘maxResults` response was incomplete because there is more data to retrieve, Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q Business chat controls configured.

Returns:

See Also:



2469
2470
2471
2472
# File 'lib/aws-sdk-qbusiness/client.rb', line 2469

def get_chat_controls_configuration(params = {}, options = {})
  req = build_request(:get_chat_controls_configuration, params)
  req.send_request(options)
end

#get_data_accessor(params = {}) ⇒ Types::GetDataAccessorResponse

Retrieves information about a specified data accessor. This operation returns details about the data accessor, including its display name, unique identifier, Amazon Resource Name (ARN), the associated Q Business application and AWS IAM Identity Center application, the IAM role for the ISV, the action configurations, and the timestamps for when the data accessor was created and last updated.

Examples:

Request syntax with placeholder values


resp = client.get_data_accessor({
  application_id: "ApplicationId", # required
  data_accessor_id: "DataAccessorId", # required
})

Response structure


resp.display_name #=> String
resp.data_accessor_id #=> String
resp.data_accessor_arn #=> String
resp.application_id #=> String
resp.idc_application_arn #=> String
resp.principal #=> String
resp.action_configurations #=> Array
resp.action_configurations[0].action #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.and_all_filters #=> Array
resp.action_configurations[0].filter_configuration.document_attribute_filter.and_all_filters[0] #=> Types::AttributeFilter
resp.action_configurations[0].filter_configuration.document_attribute_filter.or_all_filters #=> Array
resp.action_configurations[0].filter_configuration.document_attribute_filter.or_all_filters[0] #=> Types::AttributeFilter
resp.action_configurations[0].filter_configuration.document_attribute_filter.not_filter #=> Types::AttributeFilter
resp.action_configurations[0].filter_configuration.document_attribute_filter.equals_to.name #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.equals_to.value.string_value #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.equals_to.value.string_list_value #=> Array
resp.action_configurations[0].filter_configuration.document_attribute_filter.equals_to.value.string_list_value[0] #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.equals_to.value.long_value #=> Integer
resp.action_configurations[0].filter_configuration.document_attribute_filter.equals_to.value.date_value #=> Time
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_all.name #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_all.value.string_value #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_all.value.string_list_value #=> Array
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_all.value.string_list_value[0] #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_all.value.long_value #=> Integer
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_all.value.date_value #=> Time
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_any.name #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_any.value.string_value #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_any.value.string_list_value #=> Array
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_any.value.string_list_value[0] #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_any.value.long_value #=> Integer
resp.action_configurations[0].filter_configuration.document_attribute_filter.contains_any.value.date_value #=> Time
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than.name #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than.value.string_value #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than.value.string_list_value #=> Array
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than.value.string_list_value[0] #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than.value.long_value #=> Integer
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than.value.date_value #=> Time
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than_or_equals.name #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than_or_equals.value.string_value #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than_or_equals.value.string_list_value #=> Array
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than_or_equals.value.string_list_value[0] #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than_or_equals.value.long_value #=> Integer
resp.action_configurations[0].filter_configuration.document_attribute_filter.greater_than_or_equals.value.date_value #=> Time
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than.name #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than.value.string_value #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than.value.string_list_value #=> Array
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than.value.string_list_value[0] #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than.value.long_value #=> Integer
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than.value.date_value #=> Time
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than_or_equals.name #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than_or_equals.value.string_value #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than_or_equals.value.string_list_value #=> Array
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than_or_equals.value.string_list_value[0] #=> String
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than_or_equals.value.long_value #=> Integer
resp.action_configurations[0].filter_configuration.document_attribute_filter.less_than_or_equals.value.date_value #=> Time
resp.created_at #=> Time
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier of the Q Business application.

  • :data_accessor_id (required, String)

    The unique identifier of the data accessor to retrieve.

Returns:

See Also:



2570
2571
2572
2573
# File 'lib/aws-sdk-qbusiness/client.rb', line 2570

def get_data_accessor(params = {}, options = {})
  req = build_request(:get_data_accessor, params)
  req.send_request(options)
end

#get_data_source(params = {}) ⇒ Types::GetDataSourceResponse

Gets information about an existing Amazon Q Business data source connector.

Examples:

Request syntax with placeholder values


resp = client.get_data_source({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  data_source_id: "DataSourceId", # required
})

Response structure


resp.application_id #=> String
resp.index_id #=> String
resp.data_source_id #=> String
resp.data_source_arn #=> String
resp.display_name #=> String
resp.type #=> String
resp.vpc_configuration.subnet_ids #=> Array
resp.vpc_configuration.subnet_ids[0] #=> String
resp.vpc_configuration.security_group_ids #=> Array
resp.vpc_configuration.security_group_ids[0] #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.description #=> String
resp.status #=> String, one of "PENDING_CREATION", "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
resp.sync_schedule #=> String
resp.role_arn #=> String
resp.error.error_message #=> String
resp.error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.document_enrichment_configuration.inline_configurations #=> Array
resp.document_enrichment_configuration.inline_configurations[0].condition.key #=> String
resp.document_enrichment_configuration.inline_configurations[0].condition.operator #=> String, one of "GREATER_THAN", "GREATER_THAN_OR_EQUALS", "LESS_THAN", "LESS_THAN_OR_EQUALS", "EQUALS", "NOT_EQUALS", "CONTAINS", "NOT_CONTAINS", "EXISTS", "NOT_EXISTS", "BEGINS_WITH"
resp.document_enrichment_configuration.inline_configurations[0].condition.value.string_value #=> String
resp.document_enrichment_configuration.inline_configurations[0].condition.value.string_list_value #=> Array
resp.document_enrichment_configuration.inline_configurations[0].condition.value.string_list_value[0] #=> String
resp.document_enrichment_configuration.inline_configurations[0].condition.value.long_value #=> Integer
resp.document_enrichment_configuration.inline_configurations[0].condition.value.date_value #=> Time
resp.document_enrichment_configuration.inline_configurations[0].target.key #=> String
resp.document_enrichment_configuration.inline_configurations[0].target.value.string_value #=> String
resp.document_enrichment_configuration.inline_configurations[0].target.value.string_list_value #=> Array
resp.document_enrichment_configuration.inline_configurations[0].target.value.string_list_value[0] #=> String
resp.document_enrichment_configuration.inline_configurations[0].target.value.long_value #=> Integer
resp.document_enrichment_configuration.inline_configurations[0].target.value.date_value #=> Time
resp.document_enrichment_configuration.inline_configurations[0].target.attribute_value_operator #=> String, one of "DELETE"
resp.document_enrichment_configuration.inline_configurations[0].document_content_operator #=> String, one of "DELETE"
resp.document_enrichment_configuration.pre_extraction_hook_configuration.invocation_condition.key #=> String
resp.document_enrichment_configuration.pre_extraction_hook_configuration.invocation_condition.operator #=> String, one of "GREATER_THAN", "GREATER_THAN_OR_EQUALS", "LESS_THAN", "LESS_THAN_OR_EQUALS", "EQUALS", "NOT_EQUALS", "CONTAINS", "NOT_CONTAINS", "EXISTS", "NOT_EXISTS", "BEGINS_WITH"
resp.document_enrichment_configuration.pre_extraction_hook_configuration.invocation_condition.value.string_value #=> String
resp.document_enrichment_configuration.pre_extraction_hook_configuration.invocation_condition.value.string_list_value #=> Array
resp.document_enrichment_configuration.pre_extraction_hook_configuration.invocation_condition.value.string_list_value[0] #=> String
resp.document_enrichment_configuration.pre_extraction_hook_configuration.invocation_condition.value.long_value #=> Integer
resp.document_enrichment_configuration.pre_extraction_hook_configuration.invocation_condition.value.date_value #=> Time
resp.document_enrichment_configuration.pre_extraction_hook_configuration.lambda_arn #=> String
resp.document_enrichment_configuration.pre_extraction_hook_configuration.s3_bucket_name #=> String
resp.document_enrichment_configuration.pre_extraction_hook_configuration.role_arn #=> String
resp.document_enrichment_configuration.post_extraction_hook_configuration.invocation_condition.key #=> String
resp.document_enrichment_configuration.post_extraction_hook_configuration.invocation_condition.operator #=> String, one of "GREATER_THAN", "GREATER_THAN_OR_EQUALS", "LESS_THAN", "LESS_THAN_OR_EQUALS", "EQUALS", "NOT_EQUALS", "CONTAINS", "NOT_CONTAINS", "EXISTS", "NOT_EXISTS", "BEGINS_WITH"
resp.document_enrichment_configuration.post_extraction_hook_configuration.invocation_condition.value.string_value #=> String
resp.document_enrichment_configuration.post_extraction_hook_configuration.invocation_condition.value.string_list_value #=> Array
resp.document_enrichment_configuration.post_extraction_hook_configuration.invocation_condition.value.string_list_value[0] #=> String
resp.document_enrichment_configuration.post_extraction_hook_configuration.invocation_condition.value.long_value #=> Integer
resp.document_enrichment_configuration.post_extraction_hook_configuration.invocation_condition.value.date_value #=> Time
resp.document_enrichment_configuration.post_extraction_hook_configuration.lambda_arn #=> String
resp.document_enrichment_configuration.post_extraction_hook_configuration.s3_bucket_name #=> String
resp.document_enrichment_configuration.post_extraction_hook_configuration.role_arn #=> String
resp.media_extraction_configuration.image_extraction_configuration.image_extraction_status #=> String, one of "ENABLED", "DISABLED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application.

  • :index_id (required, String)

    The identfier of the index used with the data source connector.

  • :data_source_id (required, String)

    The identifier of the data source connector.

Returns:

See Also:



2677
2678
2679
2680
# File 'lib/aws-sdk-qbusiness/client.rb', line 2677

def get_data_source(params = {}, options = {})
  req = build_request(:get_data_source, params)
  req.send_request(options)
end

#get_group(params = {}) ⇒ Types::GetGroupResponse

Describes a group by group name.

Examples:

Request syntax with placeholder values


resp = client.get_group({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  group_name: "GroupName", # required
  data_source_id: "DataSourceId",
})

Response structure


resp.status.status #=> String, one of "FAILED", "SUCCEEDED", "PROCESSING", "DELETING", "DELETED"
resp.status.last_updated_at #=> Time
resp.status.error_detail.error_message #=> String
resp.status.error_detail.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.status_history #=> Array
resp.status_history[0].status #=> String, one of "FAILED", "SUCCEEDED", "PROCESSING", "DELETING", "DELETED"
resp.status_history[0].last_updated_at #=> Time
resp.status_history[0].error_detail.error_message #=> String
resp.status_history[0].error_detail.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application id the group is attached to.

  • :index_id (required, String)

    The identifier of the index the group is attached to.

  • :group_name (required, String)

    The name of the group.

  • :data_source_id (String)

    The identifier of the data source the group is attached to.

Returns:

See Also:



2726
2727
2728
2729
# File 'lib/aws-sdk-qbusiness/client.rb', line 2726

def get_group(params = {}, options = {})
  req = build_request(:get_group, params)
  req.send_request(options)
end

#get_index(params = {}) ⇒ Types::GetIndexResponse

Gets information about an existing Amazon Q Business index.

Examples:

Request syntax with placeholder values


resp = client.get_index({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
})

Response structure


resp.application_id #=> String
resp.index_id #=> String
resp.display_name #=> String
resp.index_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
resp.type #=> String, one of "ENTERPRISE", "STARTER"
resp.description #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.capacity_configuration.units #=> Integer
resp.document_attribute_configurations #=> Array
resp.document_attribute_configurations[0].name #=> String
resp.document_attribute_configurations[0].type #=> String, one of "STRING", "STRING_LIST", "NUMBER", "DATE"
resp.document_attribute_configurations[0].search #=> String, one of "ENABLED", "DISABLED"
resp.error.error_message #=> String
resp.error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.index_statistics.text_document_statistics.indexed_text_bytes #=> Integer
resp.index_statistics.text_document_statistics.indexed_text_document_count #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application connected to the index.

  • :index_id (required, String)

    The identifier of the Amazon Q Business index you want information on.

Returns:

See Also:



2788
2789
2790
2791
# File 'lib/aws-sdk-qbusiness/client.rb', line 2788

def get_index(params = {}, options = {})
  req = build_request(:get_index, params)
  req.send_request(options)
end

#get_media(params = {}) ⇒ Types::GetMediaResponse

Returns the image bytes corresponding to a media object. If you have implemented your own application with the Chat and ChatSync APIs, and have enabled content extraction from visual data in Amazon Q Business, you use the GetMedia API operation to download the images so you can show them in your UI with responses.

For more information, see [Extracting semantic meaning from images and visuals].

[1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html

Examples:

Request syntax with placeholder values


resp = client.get_media({
  application_id: "ApplicationId", # required
  conversation_id: "ConversationId", # required
  message_id: "MessageId", # required
  media_id: "MediaId", # required
})

Response structure


resp.media_bytes #=> String
resp.media_mime_type #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business which contains the media object.

  • :conversation_id (required, String)

    The identifier of the Amazon Q Business conversation.

  • :message_id (required, String)

    The identifier of the Amazon Q Business message.

  • :media_id (required, String)

    The identifier of the media object. You can find this in the ‘sourceAttributions` returned by the `Chat`, `ChatSync`, and `ListMessages` API responses.

Returns:

See Also:



2844
2845
2846
2847
# File 'lib/aws-sdk-qbusiness/client.rb', line 2844

def get_media(params = {}, options = {})
  req = build_request(:get_media, params)
  req.send_request(options)
end

#get_plugin(params = {}) ⇒ Types::GetPluginResponse

Gets information about an existing Amazon Q Business plugin.

Examples:

Request syntax with placeholder values


resp = client.get_plugin({
  application_id: "ApplicationId", # required
  plugin_id: "PluginId", # required
})

Response structure


resp.application_id #=> String
resp.plugin_id #=> String
resp.display_name #=> String
resp.type #=> String, one of "SERVICE_NOW", "SALESFORCE", "JIRA", "ZENDESK", "CUSTOM", "QUICKSIGHT", "SERVICENOW_NOW_PLATFORM", "JIRA_CLOUD", "SALESFORCE_CRM", "ZENDESK_SUITE", "ATLASSIAN_CONFLUENCE", "GOOGLE_CALENDAR", "MICROSOFT_TEAMS", "MICROSOFT_EXCHANGE", "PAGERDUTY_ADVANCE", "SMARTSHEET", "ASANA"
resp.server_url #=> String
resp.auth_configuration.basic_auth_configuration.secret_arn #=> String
resp.auth_configuration.basic_auth_configuration.role_arn #=> String
resp.auth_configuration.o_auth_2_client_credential_configuration.secret_arn #=> String
resp.auth_configuration.o_auth_2_client_credential_configuration.role_arn #=> String
resp.auth_configuration.o_auth_2_client_credential_configuration.authorization_url #=> String
resp.auth_configuration.o_auth_2_client_credential_configuration.token_url #=> String
resp.auth_configuration.idc_auth_configuration.idc_application_arn #=> String
resp.auth_configuration.idc_auth_configuration.role_arn #=> String
resp.custom_plugin_configuration.description #=> String
resp.custom_plugin_configuration.api_schema_type #=> String, one of "OPEN_API_V3"
resp.custom_plugin_configuration.api_schema.payload #=> String
resp.custom_plugin_configuration.api_schema.s3.bucket #=> String
resp.custom_plugin_configuration.api_schema.s3.key #=> String
resp.build_status #=> String, one of "READY", "CREATE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "DELETE_IN_PROGRESS", "DELETE_FAILED"
resp.plugin_arn #=> String
resp.state #=> String, one of "ENABLED", "DISABLED"
resp.created_at #=> Time
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application which contains the plugin.

  • :plugin_id (required, String)

    The identifier of the plugin.

Returns:

See Also:



2909
2910
2911
2912
# File 'lib/aws-sdk-qbusiness/client.rb', line 2909

def get_plugin(params = {}, options = {})
  req = build_request(:get_plugin, params)
  req.send_request(options)
end

#get_policy(params = {}) ⇒ Types::GetPolicyResponse

Retrieves the current permission policy for a Q Business application. The policy is returned as a JSON-formatted string and defines the IAM actions that are allowed or denied for the application’s resources.

Examples:

Request syntax with placeholder values


resp = client.get_policy({
  application_id: "ApplicationId", # required
})

Response structure


resp.policy #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier of the Q Business application.

Returns:

See Also:



2939
2940
2941
2942
# File 'lib/aws-sdk-qbusiness/client.rb', line 2939

def get_policy(params = {}, options = {})
  req = build_request(:get_policy, params)
  req.send_request(options)
end

#get_retriever(params = {}) ⇒ Types::GetRetrieverResponse

Gets information about an existing retriever used by an Amazon Q Business application.

Examples:

Request syntax with placeholder values


resp = client.get_retriever({
  application_id: "ApplicationId", # required
  retriever_id: "RetrieverId", # required
})

Response structure


resp.application_id #=> String
resp.retriever_id #=> String
resp.retriever_arn #=> String
resp.type #=> String, one of "NATIVE_INDEX", "KENDRA_INDEX"
resp.status #=> String, one of "CREATING", "ACTIVE", "FAILED"
resp.display_name #=> String
resp.configuration.native_index_configuration.index_id #=> String
resp.configuration.native_index_configuration.boosting_override #=> Hash
resp.configuration.native_index_configuration.boosting_override["DocumentAttributeKey"].number_configuration.boosting_level #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH", "VERY_HIGH"
resp.configuration.native_index_configuration.boosting_override["DocumentAttributeKey"].number_configuration.boosting_type #=> String, one of "PRIORITIZE_LARGER_VALUES", "PRIORITIZE_SMALLER_VALUES"
resp.configuration.native_index_configuration.boosting_override["DocumentAttributeKey"].string_configuration.boosting_level #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH", "VERY_HIGH"
resp.configuration.native_index_configuration.boosting_override["DocumentAttributeKey"].string_configuration.attribute_value_boosting #=> Hash
resp.configuration.native_index_configuration.boosting_override["DocumentAttributeKey"].string_configuration.attribute_value_boosting["String"] #=> String, one of "LOW", "MEDIUM", "HIGH", "VERY_HIGH"
resp.configuration.native_index_configuration.boosting_override["DocumentAttributeKey"].date_configuration.boosting_level #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH", "VERY_HIGH"
resp.configuration.native_index_configuration.boosting_override["DocumentAttributeKey"].date_configuration.boosting_duration_in_seconds #=> Integer
resp.configuration.native_index_configuration.boosting_override["DocumentAttributeKey"].string_list_configuration.boosting_level #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH", "VERY_HIGH"
resp.configuration.kendra_index_configuration.index_id #=> String
resp.role_arn #=> String
resp.created_at #=> Time
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application using the retriever.

  • :retriever_id (required, String)

    The identifier of the retriever.

Returns:

See Also:



3001
3002
3003
3004
# File 'lib/aws-sdk-qbusiness/client.rb', line 3001

def get_retriever(params = {}, options = {})
  req = build_request(:get_retriever, params)
  req.send_request(options)
end

#get_user(params = {}) ⇒ Types::GetUserResponse

Describes the universally unique identifier (UUID) associated with a local user in a data source.

Examples:

Request syntax with placeholder values


resp = client.get_user({
  application_id: "ApplicationId", # required
  user_id: "String", # required
})

Response structure


resp.user_aliases #=> Array
resp.user_aliases[0].index_id #=> String
resp.user_aliases[0].data_source_id #=> String
resp.user_aliases[0].user_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application connected to the user.

  • :user_id (required, String)

    The user email address attached to the user.

Returns:

See Also:



3037
3038
3039
3040
# File 'lib/aws-sdk-qbusiness/client.rb', line 3037

def get_user(params = {}, options = {})
  req = build_request(:get_user, params)
  req.send_request(options)
end

#get_web_experience(params = {}) ⇒ Types::GetWebExperienceResponse

Gets information about an existing Amazon Q Business web experience.

Examples:

Request syntax with placeholder values


resp = client.get_web_experience({
  application_id: "ApplicationId", # required
  web_experience_id: "WebExperienceId", # required
})

Response structure


resp.application_id #=> String
resp.web_experience_id #=> String
resp.web_experience_arn #=> String
resp.default_endpoint #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "PENDING_AUTH_CONFIG"
resp.created_at #=> Time
resp.updated_at #=> Time
resp.title #=> String
resp.subtitle #=> String
resp.welcome_message #=> String
resp.sample_prompts_control_mode #=> String, one of "ENABLED", "DISABLED"
resp.origins #=> Array
resp.origins[0] #=> String
resp.role_arn #=> String
resp.identity_provider_configuration.saml_configuration.authentication_url #=> String
resp.identity_provider_configuration.open_id_connect_configuration.secrets_arn #=> String
resp.identity_provider_configuration.open_id_connect_configuration.secrets_role #=> String
resp.authentication_configuration.saml_configuration. #=> String
resp.authentication_configuration.saml_configuration.role_arn #=> String
resp.authentication_configuration.saml_configuration.user_id_attribute #=> String
resp.authentication_configuration.saml_configuration.user_group_attribute #=> String
resp.error.error_message #=> String
resp.error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.browser_extension_configuration.enabled_browser_extensions #=> Array
resp.browser_extension_configuration.enabled_browser_extensions[0] #=> String, one of "FIREFOX", "CHROME"
resp.customization_configuration.custom_css_url #=> String
resp.customization_configuration.logo_url #=> String
resp.customization_configuration.font_url #=> String
resp.customization_configuration.favicon_url #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application linked to the web experience.

  • :web_experience_id (required, String)

    The identifier of the Amazon Q Business web experience.

Returns:

See Also:



3115
3116
3117
3118
# File 'lib/aws-sdk-qbusiness/client.rb', line 3115

def get_web_experience(params = {}, options = {})
  req = build_request(:get_web_experience, params)
  req.send_request(options)
end

#list_applications(params = {}) ⇒ Types::ListApplicationsResponse

Lists Amazon Q Business applications.

<note markdown=“1”> Amazon Q Business applications may securely transmit data for processing across Amazon Web Services Regions within your geography. For more information, see [Cross region inference in Amazon Q Business].

</note>

[1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/cross-region-inference.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_applications({
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.applications #=> Array
resp.applications[0].display_name #=> String
resp.applications[0].application_id #=> String
resp.applications[0].created_at #=> Time
resp.applications[0].updated_at #=> Time
resp.applications[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
resp.applications[0].identity_type #=> String, one of "AWS_IAM_IDP_SAML", "AWS_IAM_IDP_OIDC", "AWS_IAM_IDC", "AWS_QUICKSIGHT_IDP"
resp.applications[0].quick_sight_configuration.client_namespace #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    If the ‘maxResults` response was incomplete because there is more data to retrieve, Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q Business applications.

  • :max_results (Integer)

    The maximum number of Amazon Q Business applications to return.

Returns:

See Also:



3172
3173
3174
3175
# File 'lib/aws-sdk-qbusiness/client.rb', line 3172

def list_applications(params = {}, options = {})
  req = build_request(:list_applications, params)
  req.send_request(options)
end

#list_attachments(params = {}) ⇒ Types::ListAttachmentsResponse

Gets a list of attachments associated with an Amazon Q Business web experience or a list of attachements associated with a specific Amazon Q Business conversation.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_attachments({
  application_id: "ApplicationId", # required
  conversation_id: "ConversationId",
  user_id: "UserId",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.attachments #=> Array
resp.attachments[0].attachment_id #=> String
resp.attachments[0].conversation_id #=> String
resp.attachments[0].name #=> String
resp.attachments[0].copy_from.conversation.conversation_id #=> String
resp.attachments[0].copy_from.conversation.attachment_id #=> String
resp.attachments[0].file_type #=> String
resp.attachments[0].file_size #=> Integer
resp.attachments[0].md5chksum #=> String
resp.attachments[0].created_at #=> Time
resp.attachments[0].status #=> String, one of "FAILED", "SUCCESS"
resp.attachments[0].error.error_message #=> String
resp.attachments[0].error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier for the Amazon Q Business application.

  • :conversation_id (String)

    The unique identifier of the Amazon Q Business web experience conversation.

  • :user_id (String)

    The unique identifier of the user involved in the Amazon Q Business web experience conversation.

  • :next_token (String)

    If the number of attachments returned exceeds ‘maxResults`, Amazon Q Business returns a next token as a pagination token to retrieve the next set of attachments.

  • :max_results (Integer)

    The maximum number of attachements to return.

Returns:

See Also:



3238
3239
3240
3241
# File 'lib/aws-sdk-qbusiness/client.rb', line 3238

def list_attachments(params = {}, options = {})
  req = build_request(:list_attachments, params)
  req.send_request(options)
end

#list_conversations(params = {}) ⇒ Types::ListConversationsResponse

Lists one or more Amazon Q Business conversations.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_conversations({
  application_id: "ApplicationId", # required
  user_id: "UserId",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.conversations #=> Array
resp.conversations[0].conversation_id #=> String
resp.conversations[0].title #=> String
resp.conversations[0].start_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application.

  • :user_id (String)

    The identifier of the user involved in the Amazon Q Business web experience conversation.

  • :next_token (String)

    If the ‘maxResults` response was incomplete because there is more data to retrieve, Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q Business conversations.

  • :max_results (Integer)

    The maximum number of Amazon Q Business conversations to return.

Returns:

See Also:



3289
3290
3291
3292
# File 'lib/aws-sdk-qbusiness/client.rb', line 3289

def list_conversations(params = {}, options = {})
  req = build_request(:list_conversations, params)
  req.send_request(options)
end

#list_data_accessors(params = {}) ⇒ Types::ListDataAccessorsResponse

Lists the data accessors for a Q Business application. This operation returns a paginated list of data accessor summaries, including the friendly name, unique identifier, ARN, associated IAM role, and creation/update timestamps for each data accessor.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_data_accessors({
  application_id: "ApplicationId", # required
  next_token: "NextToken1500",
  max_results: 1,
})

Response structure


resp.data_accessors #=> Array
resp.data_accessors[0].display_name #=> String
resp.data_accessors[0].data_accessor_id #=> String
resp.data_accessors[0].data_accessor_arn #=> String
resp.data_accessors[0].idc_application_arn #=> String
resp.data_accessors[0].principal #=> String
resp.data_accessors[0].created_at #=> Time
resp.data_accessors[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier of the Q Business application.

  • :next_token (String)

    The token for the next set of results. (You received this token from a previous call.)

  • :max_results (Integer)

    The maximum number of results to return in a single call.

Returns:

See Also:



3340
3341
3342
3343
# File 'lib/aws-sdk-qbusiness/client.rb', line 3340

def list_data_accessors(params = {}, options = {})
  req = build_request(:list_data_accessors, params)
  req.send_request(options)
end

#list_data_source_sync_jobs(params = {}) ⇒ Types::ListDataSourceSyncJobsResponse

Get information about an Amazon Q Business data source connector synchronization.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_data_source_sync_jobs({
  data_source_id: "DataSourceId", # required
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  next_token: "NextToken",
  max_results: 1,
  start_time: Time.now,
  end_time: Time.now,
  status_filter: "FAILED", # accepts FAILED, SUCCEEDED, SYNCING, INCOMPLETE, STOPPING, ABORTED, SYNCING_INDEXING
})

Response structure


resp.history #=> Array
resp.history[0].execution_id #=> String
resp.history[0].start_time #=> Time
resp.history[0].end_time #=> Time
resp.history[0].status #=> String, one of "FAILED", "SUCCEEDED", "SYNCING", "INCOMPLETE", "STOPPING", "ABORTED", "SYNCING_INDEXING"
resp.history[0].error.error_message #=> String
resp.history[0].error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.history[0].data_source_error_code #=> String
resp.history[0].metrics.documents_added #=> String
resp.history[0].metrics.documents_modified #=> String
resp.history[0].metrics.documents_deleted #=> String
resp.history[0].metrics.documents_failed #=> String
resp.history[0].metrics.documents_scanned #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :data_source_id (required, String)

    The identifier of the data source connector.

  • :application_id (required, String)

    The identifier of the Amazon Q Business application connected to the data source.

  • :index_id (required, String)

    The identifier of the index used with the Amazon Q Business data source connector.

  • :next_token (String)

    If the ‘maxResults` response was incpmplete because there is more data to retriever, Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of responses.

  • :max_results (Integer)

    The maximum number of synchronization jobs to return in the response.

  • :start_time (Time, DateTime, Date, Integer, String)

    The start time of the data source connector sync.

  • :end_time (Time, DateTime, Date, Integer, String)

    The end time of the data source connector sync.

  • :status_filter (String)

    Only returns synchronization jobs with the ‘Status` field equal to the specified status.

Returns:

See Also:



3419
3420
3421
3422
# File 'lib/aws-sdk-qbusiness/client.rb', line 3419

def list_data_source_sync_jobs(params = {}, options = {})
  req = build_request(:list_data_source_sync_jobs, params)
  req.send_request(options)
end

#list_data_sources(params = {}) ⇒ Types::ListDataSourcesResponse

Lists the Amazon Q Business data source connectors that you have created.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_data_sources({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.data_sources #=> Array
resp.data_sources[0].display_name #=> String
resp.data_sources[0].data_source_id #=> String
resp.data_sources[0].type #=> String
resp.data_sources[0].created_at #=> Time
resp.data_sources[0].updated_at #=> Time
resp.data_sources[0].status #=> String, one of "PENDING_CREATION", "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application linked to the data source connectors.

  • :index_id (required, String)

    The identifier of the index used with one or more data source connectors.

  • :next_token (String)

    If the ‘maxResults` response was incomplete because there is more data to retrieve, Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q Business data source connectors.

  • :max_results (Integer)

    The maximum number of data source connectors to return.

Returns:

See Also:



3475
3476
3477
3478
# File 'lib/aws-sdk-qbusiness/client.rb', line 3475

def list_data_sources(params = {}, options = {})
  req = build_request(:list_data_sources, params)
  req.send_request(options)
end

#list_documents(params = {}) ⇒ Types::ListDocumentsResponse

A list of documents attached to an index.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_documents({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  data_source_ids: ["DataSourceId"],
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.document_detail_list #=> Array
resp.document_detail_list[0].document_id #=> String
resp.document_detail_list[0].status #=> String, one of "RECEIVED", "PROCESSING", "INDEXED", "UPDATED", "FAILED", "DELETING", "DELETED", "DOCUMENT_FAILED_TO_INDEX"
resp.document_detail_list[0].error.error_message #=> String
resp.document_detail_list[0].error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.document_detail_list[0].created_at #=> Time
resp.document_detail_list[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application id the documents are attached to.

  • :index_id (required, String)

    The identifier of the index the documents are attached to.

  • :data_source_ids (Array<String>)

    The identifier of the data sources the documents are attached to.

  • :next_token (String)

    If the ‘maxResults` response was incomplete because there is more data to retrieve, Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of documents.

  • :max_results (Integer)

    The maximum number of documents to return.

Returns:

See Also:



3532
3533
3534
3535
# File 'lib/aws-sdk-qbusiness/client.rb', line 3532

def list_documents(params = {}, options = {})
  req = build_request(:list_documents, params)
  req.send_request(options)
end

#list_groups(params = {}) ⇒ Types::ListGroupsResponse

Provides a list of groups that are mapped to users.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_groups({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  updated_earlier_than: Time.now, # required
  data_source_id: "DataSourceId",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.items #=> Array
resp.items[0].group_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application for getting a list of groups mapped to users.

  • :index_id (required, String)

    The identifier of the index for getting a list of groups mapped to users.

  • :updated_earlier_than (required, Time, DateTime, Date, Integer, String)

    The timestamp identifier used for the latest ‘PUT` or `DELETE` action for mapping users to their groups.

  • :data_source_id (String)

    The identifier of the data source for getting a list of groups mapped to users.

  • :next_token (String)

    If the previous response was incomplete (because there is more data to retrieve), Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of groups that are mapped to users.

  • :max_results (Integer)

    The maximum number of returned groups that are mapped to users.

Returns:

See Also:



3592
3593
3594
3595
# File 'lib/aws-sdk-qbusiness/client.rb', line 3592

def list_groups(params = {}, options = {})
  req = build_request(:list_groups, params)
  req.send_request(options)
end

#list_indices(params = {}) ⇒ Types::ListIndicesResponse

Lists the Amazon Q Business indices you have created.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_indices({
  application_id: "ApplicationId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.indices #=> Array
resp.indices[0].display_name #=> String
resp.indices[0].index_id #=> String
resp.indices[0].created_at #=> Time
resp.indices[0].updated_at #=> Time
resp.indices[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application connected to the index.

  • :next_token (String)

    If the maxResults response was incomplete because there is more data to retrieve, Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q Business indices.

  • :max_results (Integer)

    The maximum number of indices to return.

Returns:

See Also:



3641
3642
3643
3644
# File 'lib/aws-sdk-qbusiness/client.rb', line 3641

def list_indices(params = {}, options = {})
  req = build_request(:list_indices, params)
  req.send_request(options)
end

#list_messages(params = {}) ⇒ Types::ListMessagesResponse

Gets a list of messages associated with an Amazon Q Business web experience.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_messages({
  conversation_id: "ConversationId", # required
  application_id: "ApplicationId", # required
  user_id: "UserId",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.messages #=> Array
resp.messages[0].message_id #=> String
resp.messages[0].body #=> String
resp.messages[0].time #=> Time
resp.messages[0].type #=> String, one of "USER", "SYSTEM"
resp.messages[0].attachments #=> Array
resp.messages[0].attachments[0].name #=> String
resp.messages[0].attachments[0].status #=> String, one of "FAILED", "SUCCESS"
resp.messages[0].attachments[0].error.error_message #=> String
resp.messages[0].attachments[0].error.error_code #=> String, one of "InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"
resp.messages[0].attachments[0].attachment_id #=> String
resp.messages[0].attachments[0].conversation_id #=> String
resp.messages[0].source_attribution #=> Array
resp.messages[0].source_attribution[0].title #=> String
resp.messages[0].source_attribution[0].snippet #=> String
resp.messages[0].source_attribution[0].url #=> String
resp.messages[0].source_attribution[0].citation_number #=> Integer
resp.messages[0].source_attribution[0].updated_at #=> Time
resp.messages[0].source_attribution[0].text_message_segments #=> Array
resp.messages[0].source_attribution[0].text_message_segments[0].begin_offset #=> Integer
resp.messages[0].source_attribution[0].text_message_segments[0].end_offset #=> Integer
resp.messages[0].source_attribution[0].text_message_segments[0].snippet_excerpt.text #=> String
resp.messages[0].source_attribution[0].text_message_segments[0].media_id #=> String
resp.messages[0].source_attribution[0].text_message_segments[0].media_mime_type #=> String
resp.messages[0].action_review.plugin_id #=> String
resp.messages[0].action_review.plugin_type #=> String, one of "SERVICE_NOW", "SALESFORCE", "JIRA", "ZENDESK", "CUSTOM", "QUICKSIGHT", "SERVICENOW_NOW_PLATFORM", "JIRA_CLOUD", "SALESFORCE_CRM", "ZENDESK_SUITE", "ATLASSIAN_CONFLUENCE", "GOOGLE_CALENDAR", "MICROSOFT_TEAMS", "MICROSOFT_EXCHANGE", "PAGERDUTY_ADVANCE", "SMARTSHEET", "ASANA"
resp.messages[0].action_review.payload #=> Hash
resp.messages[0].action_review.payload["ActionPayloadFieldKey"].display_name #=> String
resp.messages[0].action_review.payload["ActionPayloadFieldKey"].display_order #=> Integer
resp.messages[0].action_review.payload["ActionPayloadFieldKey"].display_description #=> String
resp.messages[0].action_review.payload["ActionPayloadFieldKey"].type #=> String, one of "STRING", "NUMBER", "ARRAY", "BOOLEAN"
resp.messages[0].action_review.payload["ActionPayloadFieldKey"].allowed_values #=> Array
resp.messages[0].action_review.payload["ActionPayloadFieldKey"].allowed_format #=> String
resp.messages[0].action_review.payload["ActionPayloadFieldKey"].required #=> Boolean
resp.messages[0].action_review.payload_field_name_separator #=> String
resp.messages[0].action_execution.plugin_id #=> String
resp.messages[0].action_execution.payload #=> Hash
resp.messages[0].action_execution.payload_field_name_separator #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :conversation_id (required, String)

    The identifier of the Amazon Q Business web experience conversation.

  • :application_id (required, String)

    The identifier for the Amazon Q Business application.

  • :user_id (String)

    The identifier of the user involved in the Amazon Q Business web experience conversation.

  • :next_token (String)

    If the number of messages returned exceeds ‘maxResults`, Amazon Q Business returns a next token as a pagination token to retrieve the next set of messages.

  • :max_results (Integer)

    The maximum number of messages to return.

Returns:

See Also:



3730
3731
3732
3733
# File 'lib/aws-sdk-qbusiness/client.rb', line 3730

def list_messages(params = {}, options = {})
  req = build_request(:list_messages, params)
  req.send_request(options)
end

#list_plugin_actions(params = {}) ⇒ Types::ListPluginActionsResponse

Lists configured Amazon Q Business actions for a specific plugin in an Amazon Q Business application.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_plugin_actions({
  application_id: "ApplicationId", # required
  plugin_id: "PluginId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.items #=> Array
resp.items[0].action_identifier #=> String
resp.items[0].display_name #=> String
resp.items[0].instruction_example #=> String
resp.items[0].description #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application the plugin is attached to.

  • :plugin_id (required, String)

    The identifier of the Amazon Q Business plugin.

  • :next_token (String)

    If the number of plugin actions returned exceeds ‘maxResults`, Amazon Q Business returns a next token as a pagination token to retrieve the next set of plugin actions.

  • :max_results (Integer)

    The maximum number of plugin actions to return.

Returns:

See Also:



3782
3783
3784
3785
# File 'lib/aws-sdk-qbusiness/client.rb', line 3782

def list_plugin_actions(params = {}, options = {})
  req = build_request(:list_plugin_actions, params)
  req.send_request(options)
end

#list_plugin_type_actions(params = {}) ⇒ Types::ListPluginTypeActionsResponse

Lists configured Amazon Q Business actions for any plugin type—both built-in and custom.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_plugin_type_actions({
  plugin_type: "SERVICE_NOW", # required, accepts SERVICE_NOW, SALESFORCE, JIRA, ZENDESK, CUSTOM, QUICKSIGHT, SERVICENOW_NOW_PLATFORM, JIRA_CLOUD, SALESFORCE_CRM, ZENDESK_SUITE, ATLASSIAN_CONFLUENCE, GOOGLE_CALENDAR, MICROSOFT_TEAMS, MICROSOFT_EXCHANGE, PAGERDUTY_ADVANCE, SMARTSHEET, ASANA
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.items #=> Array
resp.items[0].action_identifier #=> String
resp.items[0].display_name #=> String
resp.items[0].instruction_example #=> String
resp.items[0].description #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :plugin_type (required, String)

    The type of the plugin.

  • :next_token (String)

    If the number of plugins returned exceeds ‘maxResults`, Amazon Q Business returns a next token as a pagination token to retrieve the next set of plugins.

  • :max_results (Integer)

    The maximum number of plugins to return.

Returns:

See Also:



3829
3830
3831
3832
# File 'lib/aws-sdk-qbusiness/client.rb', line 3829

def list_plugin_type_actions(params = {}, options = {})
  req = build_request(:list_plugin_type_actions, params)
  req.send_request(options)
end

#list_plugin_type_metadata(params = {}) ⇒ Types::ListPluginTypeMetadataResponse

Lists metadata for all Amazon Q Business plugin types.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.({
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.items #=> Array
resp.items[0].type #=> String, one of "SERVICE_NOW", "SALESFORCE", "JIRA", "ZENDESK", "CUSTOM", "QUICKSIGHT", "SERVICENOW_NOW_PLATFORM", "JIRA_CLOUD", "SALESFORCE_CRM", "ZENDESK_SUITE", "ATLASSIAN_CONFLUENCE", "GOOGLE_CALENDAR", "MICROSOFT_TEAMS", "MICROSOFT_EXCHANGE", "PAGERDUTY_ADVANCE", "SMARTSHEET", "ASANA"
resp.items[0].category #=> String, one of "Customer relationship management (CRM)", "Project management", "Communication", "Productivity", "Ticketing and incident management"
resp.items[0].description #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    If the metadata returned exceeds ‘maxResults`, Amazon Q Business returns a next token as a pagination token to retrieve the next set of metadata.

  • :max_results (Integer)

    The maximum number of plugin metadata items to return.

Returns:

See Also:



3870
3871
3872
3873
# File 'lib/aws-sdk-qbusiness/client.rb', line 3870

def (params = {}, options = {})
  req = build_request(:list_plugin_type_metadata, params)
  req.send_request(options)
end

#list_plugins(params = {}) ⇒ Types::ListPluginsResponse

Lists configured Amazon Q Business plugins.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_plugins({
  application_id: "ApplicationId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.plugins #=> Array
resp.plugins[0].plugin_id #=> String
resp.plugins[0].display_name #=> String
resp.plugins[0].type #=> String, one of "SERVICE_NOW", "SALESFORCE", "JIRA", "ZENDESK", "CUSTOM", "QUICKSIGHT", "SERVICENOW_NOW_PLATFORM", "JIRA_CLOUD", "SALESFORCE_CRM", "ZENDESK_SUITE", "ATLASSIAN_CONFLUENCE", "GOOGLE_CALENDAR", "MICROSOFT_TEAMS", "MICROSOFT_EXCHANGE", "PAGERDUTY_ADVANCE", "SMARTSHEET", "ASANA"
resp.plugins[0].server_url #=> String
resp.plugins[0].state #=> String, one of "ENABLED", "DISABLED"
resp.plugins[0].build_status #=> String, one of "READY", "CREATE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "DELETE_IN_PROGRESS", "DELETE_FAILED"
resp.plugins[0].created_at #=> Time
resp.plugins[0].updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application the plugin is attached to.

  • :next_token (String)

    If the ‘maxResults` response was incomplete because there is more data to retrieve, Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of plugins.

  • :max_results (Integer)

    The maximum number of documents to return.

Returns:

See Also:



3921
3922
3923
3924
# File 'lib/aws-sdk-qbusiness/client.rb', line 3921

def list_plugins(params = {}, options = {})
  req = build_request(:list_plugins, params)
  req.send_request(options)
end

#list_retrievers(params = {}) ⇒ Types::ListRetrieversResponse

Lists the retriever used by an Amazon Q Business application.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_retrievers({
  application_id: "ApplicationId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.retrievers #=> Array
resp.retrievers[0].application_id #=> String
resp.retrievers[0].retriever_id #=> String
resp.retrievers[0].type #=> String, one of "NATIVE_INDEX", "KENDRA_INDEX"
resp.retrievers[0].status #=> String, one of "CREATING", "ACTIVE", "FAILED"
resp.retrievers[0].display_name #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application using the retriever.

  • :next_token (String)

    If the number of retrievers returned exceeds ‘maxResults`, Amazon Q Business returns a next token as a pagination token to retrieve the next set of retrievers.

  • :max_results (Integer)

    The maximum number of retrievers returned.

Returns:

See Also:



3969
3970
3971
3972
# File 'lib/aws-sdk-qbusiness/client.rb', line 3969

def list_retrievers(params = {}, options = {})
  req = build_request(:list_retrievers, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse

Gets a list of tags associated with a specified resource. Amazon Q Business applications and data sources can have tags associated with them.

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "AmazonResourceName", # required
})

Response structure


resp.tags #=> Array
resp.tags[0].key #=> String
resp.tags[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the Amazon Q Business application or data source to get a list of tags for.

Returns:

See Also:



4002
4003
4004
4005
# File 'lib/aws-sdk-qbusiness/client.rb', line 4002

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#list_web_experiences(params = {}) ⇒ Types::ListWebExperiencesResponse

Lists one or more Amazon Q Business Web Experiences.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_web_experiences({
  application_id: "ApplicationId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.web_experiences #=> Array
resp.web_experiences[0].web_experience_id #=> String
resp.web_experiences[0].created_at #=> Time
resp.web_experiences[0].updated_at #=> Time
resp.web_experiences[0].default_endpoint #=> String
resp.web_experiences[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "PENDING_AUTH_CONFIG"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application linked to the listed web experiences.

  • :next_token (String)

    If the ‘maxResults` response was incomplete because there is more data to retrieve, Amazon Q Business returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q Business conversations.

  • :max_results (Integer)

    The maximum number of Amazon Q Business Web Experiences to return.

Returns:

See Also:



4051
4052
4053
4054
# File 'lib/aws-sdk-qbusiness/client.rb', line 4051

def list_web_experiences(params = {}, options = {})
  req = build_request(:list_web_experiences, params)
  req.send_request(options)
end

#put_feedback(params = {}) ⇒ Struct

Enables your end user to provide feedback on their Amazon Q Business generated chat responses.

Examples:

Request syntax with placeholder values


resp = client.put_feedback({
  application_id: "ApplicationId", # required
  user_id: "UserId",
  conversation_id: "ConversationId", # required
  message_id: "SystemMessageId", # required
  message_copied_at: Time.now,
  message_usefulness: {
    usefulness: "USEFUL", # required, accepts USEFUL, NOT_USEFUL
    reason: "NOT_FACTUALLY_CORRECT", # accepts NOT_FACTUALLY_CORRECT, HARMFUL_OR_UNSAFE, INCORRECT_OR_MISSING_SOURCES, NOT_HELPFUL, FACTUALLY_CORRECT, COMPLETE, RELEVANT_SOURCES, HELPFUL, NOT_BASED_ON_DOCUMENTS, NOT_COMPLETE, NOT_CONCISE, OTHER
    comment: "MessageUsefulnessComment",
    submitted_at: Time.now, # required
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application associated with the feedback.

  • :user_id (String)

    The identifier of the user giving the feedback.

  • :conversation_id (required, String)

    The identifier of the conversation the feedback is attached to.

  • :message_id (required, String)

    The identifier of the chat message that the feedback was given for.

  • :message_copied_at (Time, DateTime, Date, Integer, String)

    The timestamp for when the feedback was recorded.

  • :message_usefulness (Types::MessageUsefulnessFeedback)

    The feedback usefulness value given by the user to the chat message.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4099
4100
4101
4102
# File 'lib/aws-sdk-qbusiness/client.rb', line 4099

def put_feedback(params = {}, options = {})
  req = build_request(:put_feedback, params)
  req.send_request(options)
end

#put_group(params = {}) ⇒ Struct

Create, or updates, a mapping of users—who have access to a document—to groups.

You can also map sub groups to groups. For example, the group “Company Intellectual Property Teams” includes sub groups “Research” and “Engineering”. These sub groups include their own list of users or people who work in these teams. Only users who work in research and engineering, and therefore belong in the intellectual property group, can see top-secret company documents in their Amazon Q Business chat results.

Examples:

Request syntax with placeholder values


resp = client.put_group({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  group_name: "GroupName", # required
  data_source_id: "DataSourceId",
  type: "INDEX", # required, accepts INDEX, DATASOURCE
  group_members: { # required
    member_groups: [
      {
        group_name: "GroupName", # required
        type: "INDEX", # accepts INDEX, DATASOURCE
      },
    ],
    member_users: [
      {
        user_id: "DataSourceUserId", # required
        type: "INDEX", # accepts INDEX, DATASOURCE
      },
    ],
    s3_path_for_group_members: {
      bucket: "S3BucketName", # required
      key: "S3ObjectKey", # required
    },
  },
  role_arn: "RoleArn",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application in which the user and group mapping belongs.

  • :index_id (required, String)

    The identifier of the index in which you want to map users to their groups.

  • :group_name (required, String)

    The list that contains your users or sub groups that belong the same group. For example, the group “Company” includes the user “CEO” and the sub groups “Research”, “Engineering”, and “Sales and Marketing”.

  • :data_source_id (String)

    The identifier of the data source for which you want to map users to their groups. This is useful if a group is tied to multiple data sources, but you only want the group to access documents of a certain data source. For example, the groups “Research”, “Engineering”, and “Sales and Marketing” are all tied to the company’s documents stored in the data sources Confluence and Salesforce. However, “Sales and Marketing” team only needs access to customer-related documents stored in Salesforce.

  • :type (required, String)

    The type of the group.

  • :group_members (required, Types::GroupMembers)

    A list of users or sub groups that belong to a group. This is for generating Amazon Q Business chat results only from document a user has access to.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of an IAM role that has access to the S3 file that contains your list of users that belong to a group.The Amazon Resource Name (ARN) of an IAM role that has access to the S3 file that contains your list of users that belong to a group.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4188
4189
4190
4191
# File 'lib/aws-sdk-qbusiness/client.rb', line 4188

def put_group(params = {}, options = {})
  req = build_request(:put_group, params)
  req.send_request(options)
end

#search_relevant_content(params = {}) ⇒ Types::SearchRelevantContentResponse

Searches for relevant content in a Q Business application based on a query. This operation takes a search query text, the Q Business application identifier, and optional filters (such as content source and maximum results) as input. It returns a list of relevant content items, where each item includes the content text, the unique document identifier, the document title, the document URI, any relevant document attributes, and score attributes indicating the confidence level of the relevance.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.search_relevant_content({
  application_id: "ApplicationId", # required
  query_text: "QueryText", # required
  content_source: { # required
    retriever: {
      retriever_id: "RetrieverId", # required
    },
  },
  attribute_filter: {
    and_all_filters: [
      {
        # recursive AttributeFilter
      },
    ],
    or_all_filters: [
      {
        # recursive AttributeFilter
      },
    ],
    not_filter: {
      # recursive AttributeFilter
    },
    equals_to: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    contains_all: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    contains_any: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    greater_than: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    greater_than_or_equals: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    less_than: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
    less_than_or_equals: {
      name: "DocumentAttributeKey", # required
      value: { # required
        string_value: "DocumentAttributeValueStringValueString",
        string_list_value: ["String"],
        long_value: 1,
        date_value: Time.now,
      },
    },
  },
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.relevant_content #=> Array
resp.relevant_content[0].content #=> String
resp.relevant_content[0].document_id #=> String
resp.relevant_content[0].document_title #=> String
resp.relevant_content[0].document_uri #=> String
resp.relevant_content[0].document_attributes #=> Array
resp.relevant_content[0].document_attributes[0].name #=> String
resp.relevant_content[0].document_attributes[0].value.string_value #=> String
resp.relevant_content[0].document_attributes[0].value.string_list_value #=> Array
resp.relevant_content[0].document_attributes[0].value.string_list_value[0] #=> String
resp.relevant_content[0].document_attributes[0].value.long_value #=> Integer
resp.relevant_content[0].document_attributes[0].value.date_value #=> Time
resp.relevant_content[0].score_attributes.score_confidence #=> String, one of "VERY_HIGH", "HIGH", "MEDIUM", "LOW", "NOT_AVAILABLE"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier of the Q Business application to search.

  • :query_text (required, String)

    The text to search for.

  • :content_source (required, Types::ContentSource)

    The source of content to search in.

  • :attribute_filter (Types::AttributeFilter)

    Enables filtering of responses based on document attributes or metadata fields.

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    The token for the next set of results. (You received this token from a previous call.)

Returns:

See Also:



4342
4343
4344
4345
# File 'lib/aws-sdk-qbusiness/client.rb', line 4342

def search_relevant_content(params = {}, options = {})
  req = build_request(:search_relevant_content, params)
  req.send_request(options)
end

#start_data_source_sync_job(params = {}) ⇒ Types::StartDataSourceSyncJobResponse

Starts a data source connector synchronization job. If a synchronization job is already in progress, Amazon Q Business returns a ‘ConflictException`.

Examples:

Request syntax with placeholder values


resp = client.start_data_source_sync_job({
  data_source_id: "DataSourceId", # required
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
})

Response structure


resp.execution_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :data_source_id (required, String)

    The identifier of the data source connector.

  • :application_id (required, String)

    The identifier of Amazon Q Business application the data source is connected to.

  • :index_id (required, String)

    The identifier of the index used with the data source connector.

Returns:

See Also:



4381
4382
4383
4384
# File 'lib/aws-sdk-qbusiness/client.rb', line 4381

def start_data_source_sync_job(params = {}, options = {})
  req = build_request(:start_data_source_sync_job, params)
  req.send_request(options)
end

#stop_data_source_sync_job(params = {}) ⇒ Struct

Stops an Amazon Q Business data source connector synchronization job already in progress.

Examples:

Request syntax with placeholder values


resp = client.stop_data_source_sync_job({
  data_source_id: "DataSourceId", # required
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :data_source_id (required, String)

    The identifier of the data source connector.

  • :application_id (required, String)

    The identifier of the Amazon Q Business application that the data source is connected to.

  • :index_id (required, String)

    The identifier of the index used with the Amazon Q Business data source connector.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4414
4415
4416
4417
# File 'lib/aws-sdk-qbusiness/client.rb', line 4414

def stop_data_source_sync_job(params = {}, options = {})
  req = build_request(:stop_data_source_sync_job, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Adds the specified tag to the specified Amazon Q Business application or data source resource. If the tag already exists, the existing value is replaced with the new value.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "AmazonResourceName", # required
  tags: [ # required
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the Amazon Q Business application or data source to tag.

  • :tags (required, Array<Types::Tag>)

    A list of tag keys to add to the Amazon Q Business application or data source. If a tag already exists, the existing value is replaced with the new value.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4450
4451
4452
4453
# File 'lib/aws-sdk-qbusiness/client.rb', line 4450

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Removes a tag from an Amazon Q Business application or a data source.

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "AmazonResourceName", # required
  tag_keys: ["TagKey"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the Amazon Q Business application, or data source to remove the tag from.

  • :tag_keys (required, Array<String>)

    A list of tag keys to remove from the Amazon Q Business application or data source. If a tag key does not exist on the resource, it is ignored.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4479
4480
4481
4482
# File 'lib/aws-sdk-qbusiness/client.rb', line 4479

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_application(params = {}) ⇒ Struct

Updates an existing Amazon Q Business application.

<note markdown=“1”> Amazon Q Business applications may securely transmit data for processing across Amazon Web Services Regions within your geography. For more information, see [Cross region inference in Amazon Q Business].

</note>

<note markdown=“1”> An Amazon Q Apps service-linked role will be created if it’s absent in the Amazon Web Services account when ‘QAppsConfiguration` is enabled in the request. For more information, see [Using service-linked roles for Q Apps].

</note>

[1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/cross-region-inference.html [2]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles-qapps.html

Examples:

Request syntax with placeholder values


resp = client.update_application({
  application_id: "ApplicationId", # required
  identity_center_instance_arn: "InstanceArn",
  display_name: "ApplicationName",
  description: "Description",
  role_arn: "RoleArn",
  attachments_configuration: {
    attachments_control_mode: "ENABLED", # required, accepts ENABLED, DISABLED
  },
  q_apps_configuration: {
    q_apps_control_mode: "ENABLED", # required, accepts ENABLED, DISABLED
  },
  personalization_configuration: {
    personalization_control_mode: "ENABLED", # required, accepts ENABLED, DISABLED
  },
  auto_subscription_configuration: {
    auto_subscribe: "ENABLED", # required, accepts ENABLED, DISABLED
    default_subscription_type: "Q_LITE", # accepts Q_LITE, Q_BUSINESS
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application.

  • :identity_center_instance_arn (String)

    The Amazon Resource Name (ARN) of the IAM Identity Center instance you are either creating for—or connecting to—your Amazon Q Business application.

  • :display_name (String)

    A name for the Amazon Q Business application.

  • :description (String)

    A description for the Amazon Q Business application.

  • :role_arn (String)

    An Amazon Web Services Identity and Access Management (IAM) role that gives Amazon Q Business permission to access Amazon CloudWatch logs and metrics.

  • :attachments_configuration (Types::AttachmentsConfiguration)

    An option to allow end users to upload files directly during chat.

  • :q_apps_configuration (Types::QAppsConfiguration)

    An option to allow end users to create and use Amazon Q Apps in the web experience.

  • :personalization_configuration (Types::PersonalizationConfiguration)

    Configuration information about chat response personalization. For more information, see [Personalizing chat responses].

    [1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html

  • :auto_subscription_configuration (Types::AutoSubscriptionConfiguration)

    An option to enable updating the default subscription type assigned to an Amazon Q Business application using IAM identity federation for user management.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4573
4574
4575
4576
# File 'lib/aws-sdk-qbusiness/client.rb', line 4573

def update_application(params = {}, options = {})
  req = build_request(:update_application, params)
  req.send_request(options)
end

#update_chat_controls_configuration(params = {}) ⇒ Struct

Updates an set of chat controls configured for an existing Amazon Q Business application.

Examples:

Request syntax with placeholder values


resp = client.update_chat_controls_configuration({
  application_id: "ApplicationId", # required
  client_token: "ClientToken",
  response_scope: "ENTERPRISE_CONTENT_ONLY", # accepts ENTERPRISE_CONTENT_ONLY, EXTENDED_KNOWLEDGE_ENABLED
  blocked_phrases_configuration_update: {
    blocked_phrases_to_create_or_update: ["BlockedPhrase"],
    blocked_phrases_to_delete: ["BlockedPhrase"],
    system_message_override: "SystemMessageOverride",
  },
  topic_configurations_to_create_or_update: [
    {
      name: "TopicConfigurationName", # required
      description: "TopicDescription",
      example_chat_messages: ["ExampleChatMessage"],
      rules: [ # required
        {
          included_users_and_groups: {
            user_ids: ["String"],
            user_groups: ["String"],
          },
          excluded_users_and_groups: {
            user_ids: ["String"],
            user_groups: ["String"],
          },
          rule_type: "CONTENT_BLOCKER_RULE", # required, accepts CONTENT_BLOCKER_RULE, CONTENT_RETRIEVAL_RULE
          rule_configuration: {
            content_blocker_rule: {
              system_message_override: "SystemMessageOverride",
            },
            content_retrieval_rule: {
              eligible_data_sources: [
                {
                  index_id: "IndexId",
                  data_source_id: "DataSourceId",
                },
              ],
            },
          },
        },
      ],
    },
  ],
  topic_configurations_to_delete: [
    {
      name: "TopicConfigurationName", # required
      description: "TopicDescription",
      example_chat_messages: ["ExampleChatMessage"],
      rules: [ # required
        {
          included_users_and_groups: {
            user_ids: ["String"],
            user_groups: ["String"],
          },
          excluded_users_and_groups: {
            user_ids: ["String"],
            user_groups: ["String"],
          },
          rule_type: "CONTENT_BLOCKER_RULE", # required, accepts CONTENT_BLOCKER_RULE, CONTENT_RETRIEVAL_RULE
          rule_configuration: {
            content_blocker_rule: {
              system_message_override: "SystemMessageOverride",
            },
            content_retrieval_rule: {
              eligible_data_sources: [
                {
                  index_id: "IndexId",
                  data_source_id: "DataSourceId",
                },
              ],
            },
          },
        },
      ],
    },
  ],
  creator_mode_configuration: {
    creator_mode_control: "ENABLED", # required, accepts ENABLED, DISABLED
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application for which the chat controls are configured.

  • :client_token (String)

    A token that you provide to identify the request to update a Amazon Q Business application chat configuration.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :response_scope (String)

    The response scope configured for your application. This determines whether your application uses its retrieval augmented generation (RAG) system to generate answers only from your enterprise data, or also uses the large language models (LLM) knowledge to respons to end user questions in chat.

  • :blocked_phrases_configuration_update (Types::BlockedPhrasesConfigurationUpdate)

    The phrases blocked from chat by your chat control configuration.

  • :topic_configurations_to_create_or_update (Array<Types::TopicConfiguration>)

    The configured topic specific chat controls you want to update.

  • :topic_configurations_to_delete (Array<Types::TopicConfiguration>)

    The configured topic specific chat controls you want to delete.

  • :creator_mode_configuration (Types::CreatorModeConfiguration)

    The configuration details for ‘CREATOR_MODE`.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4699
4700
4701
4702
# File 'lib/aws-sdk-qbusiness/client.rb', line 4699

def update_chat_controls_configuration(params = {}, options = {})
  req = build_request(:update_chat_controls_configuration, params)
  req.send_request(options)
end

#update_data_accessor(params = {}) ⇒ Struct

Updates an existing data accessor. This operation allows modifying the action configurations (the allowed actions and associated filters) and the display name of the data accessor. It does not allow changing the IAM role associated with the data accessor or other core properties of the data accessor.

Examples:

Request syntax with placeholder values


resp = client.update_data_accessor({
  application_id: "ApplicationId", # required
  data_accessor_id: "DataAccessorId", # required
  action_configurations: [ # required
    {
      action: "QIamAction", # required
      filter_configuration: {
        document_attribute_filter: { # required
          and_all_filters: [
            {
              # recursive AttributeFilter
            },
          ],
          or_all_filters: [
            {
              # recursive AttributeFilter
            },
          ],
          not_filter: {
            # recursive AttributeFilter
          },
          equals_to: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          contains_all: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          contains_any: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          greater_than: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          greater_than_or_equals: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          less_than: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
          less_than_or_equals: {
            name: "DocumentAttributeKey", # required
            value: { # required
              string_value: "DocumentAttributeValueStringValueString",
              string_list_value: ["String"],
              long_value: 1,
              date_value: Time.now,
            },
          },
        },
      },
    },
  ],
  display_name: "DataAccessorName",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The unique identifier of the Q Business application.

  • :data_accessor_id (required, String)

    The unique identifier of the data accessor to update.

  • :action_configurations (required, Array<Types::ActionConfiguration>)

    The updated list of action configurations specifying the allowed actions and any associated filters.

  • :display_name (String)

    The updated friendly name for the data accessor.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4822
4823
4824
4825
# File 'lib/aws-sdk-qbusiness/client.rb', line 4822

def update_data_accessor(params = {}, options = {})
  req = build_request(:update_data_accessor, params)
  req.send_request(options)
end

#update_data_source(params = {}) ⇒ Struct

Updates an existing Amazon Q Business data source connector.

Examples:

Request syntax with placeholder values


resp = client.update_data_source({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  data_source_id: "DataSourceId", # required
  display_name: "DataSourceName",
  configuration: {
  },
  vpc_configuration: {
    subnet_ids: ["SubnetId"], # required
    security_group_ids: ["SecurityGroupId"], # required
  },
  description: "Description",
  sync_schedule: "SyncSchedule",
  role_arn: "RoleArn",
  document_enrichment_configuration: {
    inline_configurations: [
      {
        condition: {
          key: "DocumentAttributeKey", # required
          operator: "GREATER_THAN", # required, accepts GREATER_THAN, GREATER_THAN_OR_EQUALS, LESS_THAN, LESS_THAN_OR_EQUALS, EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, EXISTS, NOT_EXISTS, BEGINS_WITH
          value: {
            string_value: "DocumentAttributeValueStringValueString",
            string_list_value: ["String"],
            long_value: 1,
            date_value: Time.now,
          },
        },
        target: {
          key: "DocumentAttributeKey", # required
          value: {
            string_value: "DocumentAttributeValueStringValueString",
            string_list_value: ["String"],
            long_value: 1,
            date_value: Time.now,
          },
          attribute_value_operator: "DELETE", # accepts DELETE
        },
        document_content_operator: "DELETE", # accepts DELETE
      },
    ],
    pre_extraction_hook_configuration: {
      invocation_condition: {
        key: "DocumentAttributeKey", # required
        operator: "GREATER_THAN", # required, accepts GREATER_THAN, GREATER_THAN_OR_EQUALS, LESS_THAN, LESS_THAN_OR_EQUALS, EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, EXISTS, NOT_EXISTS, BEGINS_WITH
        value: {
          string_value: "DocumentAttributeValueStringValueString",
          string_list_value: ["String"],
          long_value: 1,
          date_value: Time.now,
        },
      },
      lambda_arn: "LambdaArn",
      s3_bucket_name: "S3BucketName",
      role_arn: "RoleArn",
    },
    post_extraction_hook_configuration: {
      invocation_condition: {
        key: "DocumentAttributeKey", # required
        operator: "GREATER_THAN", # required, accepts GREATER_THAN, GREATER_THAN_OR_EQUALS, LESS_THAN, LESS_THAN_OR_EQUALS, EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, EXISTS, NOT_EXISTS, BEGINS_WITH
        value: {
          string_value: "DocumentAttributeValueStringValueString",
          string_list_value: ["String"],
          long_value: 1,
          date_value: Time.now,
        },
      },
      lambda_arn: "LambdaArn",
      s3_bucket_name: "S3BucketName",
      role_arn: "RoleArn",
    },
  },
  media_extraction_configuration: {
    image_extraction_configuration: {
      image_extraction_status: "ENABLED", # required, accepts ENABLED, DISABLED
    },
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application the data source is attached to.

  • :index_id (required, String)

    The identifier of the index attached to the data source connector.

  • :data_source_id (required, String)

    The identifier of the data source connector.

  • :display_name (String)

    A name of the data source connector.

  • :configuration (Hash, Array, String, Numeric, Boolean)

    Provides the configuration information for an Amazon Q Business data source.

    Document type used to carry open content (Hash,Array,String,Numeric,Boolean). A document type value is serialized using the same format as its surroundings and requires no additional encoding or escaping.

  • :vpc_configuration (Types::DataSourceVpcConfiguration)

    Provides configuration information needed to connect to an Amazon VPC (Virtual Private Cloud).

  • :description (String)

    The description of the data source connector.

  • :sync_schedule (String)

    The chosen update frequency for your data source.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources.

  • :document_enrichment_configuration (Types::DocumentEnrichmentConfiguration)

    Provides the configuration information for altering document metadata and content during the document ingestion process.

    For more information, see [Custom document enrichment].

    [1]: docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html

  • :media_extraction_configuration (Types::MediaExtractionConfiguration)

    The configuration for extracting information from media in documents for your data source.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4965
4966
4967
4968
# File 'lib/aws-sdk-qbusiness/client.rb', line 4965

def update_data_source(params = {}, options = {})
  req = build_request(:update_data_source, params)
  req.send_request(options)
end

#update_index(params = {}) ⇒ Struct

Updates an Amazon Q Business index.

Examples:

Request syntax with placeholder values


resp = client.update_index({
  application_id: "ApplicationId", # required
  index_id: "IndexId", # required
  display_name: "ApplicationName",
  description: "Description",
  capacity_configuration: {
    units: 1,
  },
  document_attribute_configurations: [
    {
      name: "DocumentMetadataConfigurationName",
      type: "STRING", # accepts STRING, STRING_LIST, NUMBER, DATE
      search: "ENABLED", # accepts ENABLED, DISABLED
    },
  ],
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application connected to the index.

  • :index_id (required, String)

    The identifier of the Amazon Q Business index.

  • :display_name (String)

    The name of the Amazon Q Business index.

  • :description (String)

    The description of the Amazon Q Business index.

  • :capacity_configuration (Types::IndexCapacityConfiguration)

    The storage capacity units you want to provision for your Amazon Q Business index. You can add and remove capacity to fit your usage needs.

  • :document_attribute_configurations (Array<Types::DocumentAttributeConfiguration>)

    Configuration information for document metadata or fields. Document metadata are fields or attributes associated with your documents. For example, the company department name associated with each document. For more information, see [Understanding document attributes].

    [1]: docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes-types.html#doc-attributes

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5025
5026
5027
5028
# File 'lib/aws-sdk-qbusiness/client.rb', line 5025

def update_index(params = {}, options = {})
  req = build_request(:update_index, params)
  req.send_request(options)
end

#update_plugin(params = {}) ⇒ Struct

Updates an Amazon Q Business plugin.

Examples:

Request syntax with placeholder values


resp = client.update_plugin({
  application_id: "ApplicationId", # required
  plugin_id: "PluginId", # required
  display_name: "PluginName",
  state: "ENABLED", # accepts ENABLED, DISABLED
  server_url: "Url",
  custom_plugin_configuration: {
    description: "PluginDescription", # required
    api_schema_type: "OPEN_API_V3", # required, accepts OPEN_API_V3
    api_schema: { # required
      payload: "Payload",
      s3: {
        bucket: "S3BucketName", # required
        key: "S3ObjectKey", # required
      },
    },
  },
  auth_configuration: {
    basic_auth_configuration: {
      secret_arn: "SecretArn", # required
      role_arn: "RoleArn", # required
    },
    o_auth_2_client_credential_configuration: {
      secret_arn: "SecretArn", # required
      role_arn: "RoleArn", # required
      authorization_url: "Url",
      token_url: "Url",
    },
    no_auth_configuration: {
    },
    idc_auth_configuration: {
      idc_application_arn: "IdcApplicationArn", # required
      role_arn: "RoleArn", # required
    },
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application the plugin is attached to.

  • :plugin_id (required, String)

    The identifier of the plugin.

  • :display_name (String)

    The name of the plugin.

  • :state (String)

    The status of the plugin.

  • :server_url (String)

    The source URL used for plugin configuration.

  • :custom_plugin_configuration (Types::CustomPluginConfiguration)

    The configuration for a custom plugin.

  • :auth_configuration (Types::PluginAuthConfiguration)

    The authentication configuration the plugin is using.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5098
5099
5100
5101
# File 'lib/aws-sdk-qbusiness/client.rb', line 5098

def update_plugin(params = {}, options = {})
  req = build_request(:update_plugin, params)
  req.send_request(options)
end

#update_retriever(params = {}) ⇒ Struct

Updates the retriever used for your Amazon Q Business application.

Examples:

Request syntax with placeholder values


resp = client.update_retriever({
  application_id: "ApplicationId", # required
  retriever_id: "RetrieverId", # required
  configuration: {
    native_index_configuration: {
      index_id: "IndexId", # required
      boosting_override: {
        "DocumentAttributeKey" => {
          number_configuration: {
            boosting_level: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH, VERY_HIGH
            boosting_type: "PRIORITIZE_LARGER_VALUES", # accepts PRIORITIZE_LARGER_VALUES, PRIORITIZE_SMALLER_VALUES
          },
          string_configuration: {
            boosting_level: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH, VERY_HIGH
            attribute_value_boosting: {
              "String" => "LOW", # accepts LOW, MEDIUM, HIGH, VERY_HIGH
            },
          },
          date_configuration: {
            boosting_level: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH, VERY_HIGH
            boosting_duration_in_seconds: 1,
          },
          string_list_configuration: {
            boosting_level: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH, VERY_HIGH
          },
        },
      },
    },
    kendra_index_configuration: {
      index_id: "KendraIndexId", # required
    },
  },
  display_name: "RetrieverName",
  role_arn: "RoleArn",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of your Amazon Q Business application.

  • :retriever_id (required, String)

    The identifier of your retriever.

  • :configuration (Types::RetrieverConfiguration)

    Provides information on how the retriever used for your Amazon Q Business application is configured.

  • :display_name (String)

    The name of your retriever.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of an IAM role with permission to access the retriever and required resources.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5166
5167
5168
5169
# File 'lib/aws-sdk-qbusiness/client.rb', line 5166

def update_retriever(params = {}, options = {})
  req = build_request(:update_retriever, params)
  req.send_request(options)
end

#update_user(params = {}) ⇒ Types::UpdateUserResponse

Updates a information associated with a user id.

Examples:

Request syntax with placeholder values


resp = client.update_user({
  application_id: "ApplicationId", # required
  user_id: "String", # required
  user_aliases_to_update: [
    {
      index_id: "IndexId",
      data_source_id: "DataSourceId",
      user_id: "String", # required
    },
  ],
  user_aliases_to_delete: [
    {
      index_id: "IndexId",
      data_source_id: "DataSourceId",
      user_id: "String", # required
    },
  ],
})

Response structure


resp.user_aliases_added #=> Array
resp.user_aliases_added[0].index_id #=> String
resp.user_aliases_added[0].data_source_id #=> String
resp.user_aliases_added[0].user_id #=> String
resp.user_aliases_updated #=> Array
resp.user_aliases_updated[0].index_id #=> String
resp.user_aliases_updated[0].data_source_id #=> String
resp.user_aliases_updated[0].user_id #=> String
resp.user_aliases_deleted #=> Array
resp.user_aliases_deleted[0].index_id #=> String
resp.user_aliases_deleted[0].data_source_id #=> String
resp.user_aliases_deleted[0].user_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the application the user is attached to.

  • :user_id (required, String)

    The email id attached to the user.

  • :user_aliases_to_update (Array<Types::UserAlias>)

    The user aliases attached to the user id that are to be updated.

  • :user_aliases_to_delete (Array<Types::UserAlias>)

    The user aliases attached to the user id that are to be deleted.

Returns:

See Also:



5231
5232
5233
5234
# File 'lib/aws-sdk-qbusiness/client.rb', line 5231

def update_user(params = {}, options = {})
  req = build_request(:update_user, params)
  req.send_request(options)
end

#update_web_experience(params = {}) ⇒ Struct

Updates an Amazon Q Business web experience.

Examples:

Request syntax with placeholder values


resp = client.update_web_experience({
  application_id: "ApplicationId", # required
  web_experience_id: "WebExperienceId", # required
  role_arn: "RoleArn",
  authentication_configuration: {
    saml_configuration: {
      metadata_xml: "SamlMetadataXML", # required
      role_arn: "RoleArn", # required
      user_id_attribute: "SamlAttribute", # required
      user_group_attribute: "SamlAttribute",
    },
  },
  title: "WebExperienceTitle",
  subtitle: "WebExperienceSubtitle",
  welcome_message: "WebExperienceWelcomeMessage",
  sample_prompts_control_mode: "ENABLED", # accepts ENABLED, DISABLED
  identity_provider_configuration: {
    saml_configuration: {
      authentication_url: "SamlAuthenticationUrl", # required
    },
    open_id_connect_configuration: {
      secrets_arn: "SecretArn", # required
      secrets_role: "RoleArn", # required
    },
  },
  origins: ["Origin"],
  browser_extension_configuration: {
    enabled_browser_extensions: ["FIREFOX"], # required, accepts FIREFOX, CHROME
  },
  customization_configuration: {
    custom_css_url: "CustomCSSUrl",
    logo_url: "LogoUrl",
    font_url: "FontUrl",
    favicon_url: "FaviconUrl",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application attached to the web experience.

  • :web_experience_id (required, String)

    The identifier of the Amazon Q Business web experience.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of the role with permission to access the Amazon Q Business web experience and required resources.

  • :authentication_configuration (Types::WebExperienceAuthConfiguration)

    The authentication configuration of the Amazon Q Business web experience.

  • :title (String)

    The title of the Amazon Q Business web experience.

  • :subtitle (String)

    The subtitle of the Amazon Q Business web experience.

  • :welcome_message (String)

    A customized welcome message for an end user in an Amazon Q Business web experience.

  • :sample_prompts_control_mode (String)

    Determines whether sample prompts are enabled in the web experience for an end user.

  • :identity_provider_configuration (Types::IdentityProviderConfiguration)

    Information about the identity provider (IdP) used to authenticate end users of an Amazon Q Business web experience.

  • :origins (Array<String>)

    Updates the website domain origins that are allowed to embed the Amazon Q Business web experience. The domain origin refers to the base URL for accessing a website including the protocol (http/https), the domain name, and the port number (if specified).</p> <note> <ul> <li> <p>Any values except null submitted as part of this update will replace all previous values.</p> </li> <li> <p>You must only submit a base URL and not a full path. For example, https://docs.aws.amazon.com.</p> </li> </ul> </note>

  • :browser_extension_configuration (Types::BrowserExtensionConfiguration)

    The browser extension configuration for an Amazon Q Business web experience.

    <note markdown=“1”> For Amazon Q Business application using external OIDC-compliant identity providers (IdPs). The IdP administrator must add the browser extension sign-in redirect URLs to the IdP application. For more information, see [Configure external OIDC identity provider for your browser extensions.].

    </note>
    

    [1]: docs.aws.amazon.com/amazonq/latest/qbusiness-ug/browser-extensions.html

  • :customization_configuration (Types::CustomizationConfiguration)

    Updates the custom logo, favicon, font, and color used in the Amazon Q web experience.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5347
5348
5349
5350
# File 'lib/aws-sdk-qbusiness/client.rb', line 5347

def update_web_experience(params = {}, options = {})
  req = build_request(:update_web_experience, params)
  req.send_request(options)
end

#waiter_namesObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Deprecated.


5376
5377
5378
# File 'lib/aws-sdk-qbusiness/client.rb', line 5376

def waiter_names
  []
end