Class: Aws::QBusiness::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-qbusiness/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.

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

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

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[:credentials]
    • The :access_key_id, :secret_access_key, :session_token, and :account_id options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'], ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
    • ~/.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['AWS_EC2_METADATA_DISABLED'] 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:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :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_checksum_calculation (String) — default: "when_supported"

    Determines when a checksum will be calculated for request payloads. Values are:

    • when_supported - (default) When set, a checksum will be calculated for all request payloads of operations modeled with the httpChecksum trait where requestChecksumRequired is true and/or a requestAlgorithmMember is modeled.
    • when_required - When set, a checksum will only be calculated for request payloads of operations modeled with the httpChecksum trait where requestChecksumRequired is true or where a requestAlgorithmMember is modeled and supplied.
  • :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.

  • :response_checksum_validation (String) — default: "when_supported"

    Determines when checksum validation will be performed on response payloads. Values are:

    • when_supported - (default) When set, checksum validation is performed on all response payloads of operations modeled with the httpChecksum trait where responseAlgorithms is modeled, except when no modeled checksum algorithms are supported.
    • when_required - When set, checksum validation is not performed on response payloads of operations unless the checksum algorithm is supported and the requestValidationModeMember member is set to ENABLED.
  • :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 https://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:

    • Aws.config[:sigv4a_signing_region_set]
    • ENV['AWS_SIGV4A_SIGNING_REGION_SET']
    • ~/.aws/config
  • :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 'http://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.

[View source]

478
479
480
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 478

def initialize(*args)
  super
end

Instance Method Details

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

Adds or updates a permission policy for a Amazon Q Business application, allowing cross-account access for an ISV. This operation creates a new policy statement for the specified Amazon Q Business application. The policy statement defines the IAM actions that the ISV is allowed to perform on the Amazon 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 Amazon Q Business application.

  • :statement_id (required, String)

    A unique identifier for the policy statement.

  • :actions (required, Array<String>)

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

  • :principal (required, String)

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

Returns:

See Also:

[View source]

526
527
528
529
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 526

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:

[View source]

580
581
582
583
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 580

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:

[View source]

751
752
753
754
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 751

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

#cancel_subscription(params = {}) ⇒ Types::CancelSubscriptionResponse

Unsubscribes a user or a group from their pricing tier in an Amazon Q Business application. An unsubscribed user or group loses all Amazon Q Business feature access at the start of next month.

Examples:

Request syntax with placeholder values


resp = client.cancel_subscription({
  application_id: "ApplicationId", # required
  subscription_id: "SubscriptionId", # required
})

Response structure


resp.subscription_arn #=> String
resp.current_subscription.type #=> String, one of "Q_LITE", "Q_BUSINESS"
resp.next_subscription.type #=> String, one of "Q_LITE", "Q_BUSINESS"

Parameters:

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

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application for which the subscription is being cancelled.

  • :subscription_id (required, String)

    The identifier of the Amazon Q Business subscription being cancelled.

Returns:

See Also:

[View source]

790
791
792
793
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 790

def cancel_subscription(params = {}, options = {})
  req = build_request(:cancel_subscription, params)
  req.send_request(options)
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.

    If none of the modes are selected, Amazon Q will only respond using the information from the attached files.

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

  • :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:

[View source]

1052
1053
1054
1055
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 1052

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.

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.

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.

  • :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

  • :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.

Returns:

See Also:

[View source]

1207
1208
1209
1210
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 1207

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 Amazon Q Business application. The data accessor is an entity that represents the ISV's access to the Amazon 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 IAM Identity Center application is also created to manage the ISV's identity and authentication for accessing the Amazon 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 Amazon 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:

[View source]

1362
1363
1364
1365
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 1362

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:

    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.

  • :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.

  • :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.

  • :media_extraction_configuration (Types::MediaExtractionConfiguration)

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

Returns:

See Also:

[View source]

1573
1574
1575
1576
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 1573

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 API or the CreateDataSource API.

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.

  • :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:

[View source]

1661
1662
1663
1664
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 1661

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:

[View source]

1762
1763
1764
1765
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 1762

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:

[View source]

1858
1859
1860
1861
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 1858

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

#create_subscription(params = {}) ⇒ Types::CreateSubscriptionResponse

Subscribes an IAM Identity Center user or a group to a pricing tier for an Amazon Q Business application.

Amazon Q Business offers two subscription tiers: Q_LITE and Q_BUSINESS. Subscription tier determines feature access for the user. For more information on subscriptions and pricing tiers, see Amazon Q Business pricing.

Examples:

Request syntax with placeholder values


resp = client.create_subscription({
  application_id: "ApplicationId", # required
  principal: { # required
    user: "UserIdentifier",
    group: "GroupIdentifier",
  },
  type: "Q_LITE", # required, accepts Q_LITE, Q_BUSINESS
  client_token: "ClientToken",
})

Response structure


resp.subscription_id #=> String
resp.subscription_arn #=> String
resp.current_subscription.type #=> String, one of "Q_LITE", "Q_BUSINESS"
resp.next_subscription.type #=> String, one of "Q_LITE", "Q_BUSINESS"

Parameters:

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

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application the subscription should be added to.

  • :principal (required, Types::SubscriptionPrincipal)

    The IAM Identity Center UserId or GroupId of a user or group in the IAM Identity Center instance connected to the Amazon Q Business application.

  • :type (required, String)

    The type of Amazon Q Business subscription you want to create.

  • :client_token (String)

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

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

Returns:

See Also:

[View source]

1924
1925
1926
1927
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 1924

def create_subscription(params = {}, options = {})
  req = build_request(:create_subscription, 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:

[View source]

1970
1971
1972
1973
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 1970

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).

    You must only submit a base URL and not a full path. For example, https://docs.aws.amazon.com.

  • :role_arn (String)

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

    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.

  • :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.

    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..

  • :customization_configuration (Types::CustomizationConfiguration)

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

Returns:

See Also:

[View source]

2103
2104
2105
2106
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2103

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:

[View source]

2125
2126
2127
2128
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2125

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:

[View source]

2149
2150
2151
2152
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2149

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:

[View source]

2181
2182
2183
2184
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2181

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 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 Amazon 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:

[View source]

2210
2211
2212
2213
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2210

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:

[View source]

2243
2244
2245
2246
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2243

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:

[View source]

2297
2298
2299
2300
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2297

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:

[View source]

2324
2325
2326
2327
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2324

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:

[View source]

2351
2352
2353
2354
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2351

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:

[View source]

2378
2379
2380
2381
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2378

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:

[View source]

2405
2406
2407
2408
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2405

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:

[View source]

2432
2433
2434
2435
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2432

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 Amazon 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 Amazon Q Business application.

  • :statement_id (required, String)

    The statement ID of the permission to remove.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

[View source]

2461
2462
2463
2464
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2461

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:

[View source]

2528
2529
2530
2531
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2528

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 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.orchestration_configuration.control #=> String, one of "ENABLED", "DISABLED"
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:

[View source]

2601
2602
2603
2604
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2601

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 Amazon Q Business application and 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 Amazon Q Business application.

  • :data_accessor_id (required, String)

    The unique identifier of the data accessor to retrieve.

Returns:

See Also:

[View source]

2702
2703
2704
2705
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2702

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:

[View source]

2809
2810
2811
2812
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2809

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:

[View source]

2858
2859
2860
2861
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2858

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:

[View source]

2920
2921
2922
2923
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2920

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.

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:

[View source]

2976
2977
2978
2979
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 2976

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:

[View source]

3041
3042
3043
3044
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3041

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 Amazon 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 Amazon Q Business application.

Returns:

See Also:

[View source]

3072
3073
3074
3075
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3072

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:

[View source]

3134
3135
3136
3137
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3134

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:

[View source]

3170
3171
3172
3173
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3170

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:

[View source]

3248
3249
3250
3251
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3248

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.

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.

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:

[View source]

3305
3306
3307
3308
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3305

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:

[View source]

3371
3372
3373
3374
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3371

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:

[View source]

3422
3423
3424
3425
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3422

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 Amazon 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 Amazon 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:

[View source]

3473
3474
3475
3476
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3473

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:

[View source]

3552
3553
3554
3555
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3552

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:

[View source]

3608
3609
3610
3611
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3608

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:

[View source]

3665
3666
3667
3668
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3665

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:

[View source]

3725
3726
3727
3728
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3725

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:

[View source]

3774
3775
3776
3777
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3774

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:

[View source]

3863
3864
3865
3866
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3863

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:

[View source]

3915
3916
3917
3918
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3915

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:

[View source]

3962
3963
3964
3965
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 3962

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:

[View source]

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

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:

[View source]

4054
4055
4056
4057
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4054

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:

[View source]

4102
4103
4104
4105
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4102

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

#list_subscriptions(params = {}) ⇒ Types::ListSubscriptionsResponse

Lists all subscriptions created 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_subscriptions({
  application_id: "ApplicationId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.subscriptions #=> Array
resp.subscriptions[0].subscription_id #=> String
resp.subscriptions[0].subscription_arn #=> String
resp.subscriptions[0].principal.user #=> String
resp.subscriptions[0].principal.group #=> String
resp.subscriptions[0].current_subscription.type #=> String, one of "Q_LITE", "Q_BUSINESS"
resp.subscriptions[0].next_subscription.type #=> String, one of "Q_LITE", "Q_BUSINESS"

Parameters:

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

    ({})

Options Hash (params):

  • :application_id (required, String)

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

  • :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 subscriptions.

  • :max_results (Integer)

    The maximum number of Amazon Q Business subscriptions to return.

Returns:

See Also:

[View source]

4152
4153
4154
4155
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4152

def list_subscriptions(params = {}, options = {})
  req = build_request(:list_subscriptions, 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:

[View source]

4185
4186
4187
4188
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4185

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:

[View source]

4234
4235
4236
4237
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4234

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:

[View source]

4282
4283
4284
4285
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4282

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.

There are two options for creating groups, either passing group members inline or using an S3 file via the S3PathForGroupMembers field. For inline groups, there is a limit of 1000 members per group and for provided S3 files there is a limit of 100 thousand members. When creating a group using an S3 file, you provide both an S3 file and a RoleArn for Amazon Q Buisness to access the file.

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.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

[View source]

4376
4377
4378
4379
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4376

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 Amazon Q Business application based on a query. This operation takes a search query text, the Amazon 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 Amazon 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:

[View source]

4530
4531
4532
4533
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4530

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:

[View source]

4569
4570
4571
4572
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4569

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:

[View source]

4602
4603
4604
4605
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4602

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:

[View source]

4638
4639
4640
4641
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4638

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:

[View source]

4667
4668
4669
4670
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4667

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.

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.

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.

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.

  • :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:

[View source]

4761
4762
4763
4764
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4761

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

#update_chat_controls_configuration(params = {}) ⇒ Struct

Updates a 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
  orchestration_configuration: {
    control: "ENABLED", # required, accepts ENABLED, DISABLED
  },
  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.

  • :orchestration_configuration (Types::OrchestrationConfiguration)

    The chat response orchestration settings for your application.

  • :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:

[View source]

4893
4894
4895
4896
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 4893

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 Amazon 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:

[View source]

5016
5017
5018
5019
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 5016

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.

  • :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:

[View source]

5159
5160
5161
5162
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 5159

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.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

[View source]

5219
5220
5221
5222
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 5219

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:

[View source]

5292
5293
5294
5295
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 5292

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:

[View source]

5360
5361
5362
5363
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 5360

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

#update_subscription(params = {}) ⇒ Types::UpdateSubscriptionResponse

Updates the pricing tier for an Amazon Q Business subscription. Upgrades are instant. Downgrades apply at the start of the next month. Subscription tier determines feature access for the user. For more information on subscriptions and pricing tiers, see Amazon Q Business pricing.

Examples:

Request syntax with placeholder values


resp = client.update_subscription({
  application_id: "ApplicationId", # required
  subscription_id: "SubscriptionId", # required
  type: "Q_LITE", # required, accepts Q_LITE, Q_BUSINESS
})

Response structure


resp.subscription_arn #=> String
resp.current_subscription.type #=> String, one of "Q_LITE", "Q_BUSINESS"
resp.next_subscription.type #=> String, one of "Q_LITE", "Q_BUSINESS"

Parameters:

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

    ({})

Options Hash (params):

  • :application_id (required, String)

    The identifier of the Amazon Q Business application where the subscription update should take effect.

  • :subscription_id (required, String)

    The identifier of the Amazon Q Business subscription to be updated.

  • :type (required, String)

    The type of the Amazon Q Business subscription to be updated.

Returns:

See Also:

[View source]

5409
5410
5411
5412
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 5409

def update_subscription(params = {}, options = {})
  req = build_request(:update_subscription, 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:

[View source]

5474
5475
5476
5477
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 5474

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).

  • :browser_extension_configuration (Types::BrowserExtensionConfiguration)

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

    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..

  • :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:

[View source]

5590
5591
5592
5593
# File 'gems/aws-sdk-qbusiness/lib/aws-sdk-qbusiness/client.rb', line 5590

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