QConnect / Client / get_knowledge_base

get_knowledge_base#

QConnect.Client.get_knowledge_base(**kwargs)#

Retrieves information about the knowledge base.

See also: AWS API Documentation

Request Syntax

response = client.get_knowledge_base(
    knowledgeBaseId='string'
)
Parameters:

knowledgeBaseId (string) –

[REQUIRED]

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

Return type:

dict

Returns:

Response Syntax

{
    'knowledgeBase': {
        'description': 'string',
        'knowledgeBaseArn': 'string',
        'knowledgeBaseId': 'string',
        'knowledgeBaseType': 'EXTERNAL'|'CUSTOM'|'QUICK_RESPONSES',
        'lastContentModificationTime': datetime(2015, 1, 1),
        'name': 'string',
        'renderingConfiguration': {
            'templateUri': 'string'
        },
        'serverSideEncryptionConfiguration': {
            'kmsKeyId': 'string'
        },
        'sourceConfiguration': {
            'appIntegrations': {
                'appIntegrationArn': 'string',
                'objectFields': [
                    'string',
                ]
            }
        },
        'status': 'CREATE_IN_PROGRESS'|'CREATE_FAILED'|'ACTIVE'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETED',
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) –

    • knowledgeBase (dict) –

      The knowledge base.

      • description (string) –

        The description.

      • knowledgeBaseArn (string) –

        The Amazon Resource Name (ARN) of the knowledge base.

      • knowledgeBaseId (string) –

        The identifier of the knowledge base.

      • knowledgeBaseType (string) –

        The type of knowledge base.

      • lastContentModificationTime (datetime) –

        An epoch timestamp indicating the most recent content modification inside the knowledge base. If no content exists in a knowledge base, this value is unset.

      • name (string) –

        The name of the knowledge base.

      • renderingConfiguration (dict) –

        Information about how to render the content.

        • templateUri (string) –

          A URI template containing exactly one variable in ${variableName} ``format. This can only be set for ``EXTERNAL knowledge bases. For Salesforce, ServiceNow, and Zendesk, the variable must be one of the following:

          • Salesforce: Id, ArticleNumber, VersionNumber, Title, PublishStatus, or IsDeleted

          • ServiceNow: number, short_description, sys_mod_count, workflow_state, or active

          • Zendesk: id, title, updated_at, or draft

          The variable is replaced with the actual value for a piece of content when calling GetContent.

      • serverSideEncryptionConfiguration (dict) –

        The configuration information for the customer managed key used for encryption.

        This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using the key to invoke Amazon Q in Connect.

        For more information about setting up a customer managed key for Amazon Q in Connect, see Enable Amazon Q in Connect for your instance.

      • sourceConfiguration (dict) –

        Source configuration information about the knowledge base.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: appIntegrations. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
        
        • appIntegrations (dict) –

          Configuration information for Amazon AppIntegrations to automatically ingest content.

          • appIntegrationArn (string) –

            The Amazon Resource Name (ARN) of the AppIntegrations DataIntegration to use for ingesting content.

            • For Salesforce, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least Id, ArticleNumber, VersionNumber, Title, PublishStatus, and IsDeleted as source fields.

            • For ServiceNow, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least number, short_description, sys_mod_count, workflow_state, and active as source fields.

            • For Zendesk, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least id, title, updated_at, and draft as source fields.

            • For SharePoint, your AppIntegrations DataIntegration must have a FileConfiguration, including only file extensions that are among docx, pdf, html, htm, and txt.

            • For Amazon S3, the ObjectConfiguration and FileConfiguration of your AppIntegrations DataIntegration must be null. The SourceURI of your DataIntegration must use the following format: s3://your_s3_bucket_name.

            Warning

            The bucket policy of the corresponding S3 bucket must allow the Amazon Web Services principal app-integrations.amazonaws.com to perform s3:ListBucket, s3:GetObject, and s3:GetBucketLocation against the bucket.

          • objectFields (list) –

            The fields from the source that are made available to your agents in Amazon Q in Connect. Optional if ObjectConfiguration is included in the provided DataIntegration.

            • For Salesforce, you must include at least Id, ArticleNumber, VersionNumber, Title, PublishStatus, and IsDeleted.

            • For ServiceNow, you must include at least number, short_description, sys_mod_count, workflow_state, and active.

            • For Zendesk, you must include at least id, title, updated_at, and draft.

            Make sure to include additional fields. These fields are indexed and used to source recommendations.

            • (string) –

      • status (string) –

        The status of the knowledge base.

      • tags (dict) –

        The tags used to organize, track, or control access for this resource.

        • (string) –

          • (string) –

Exceptions

  • QConnect.Client.exceptions.ValidationException

  • QConnect.Client.exceptions.AccessDeniedException

  • QConnect.Client.exceptions.ResourceNotFoundException