QBusiness

2024/04/30 - QBusiness - 1 new10 updated api methods

Changes  This is a general availability (GA) release of Amazon Q Business. Q Business enables employees in an enterprise to get comprehensive answers to complex questions and take actions through a unified, intuitive web-based chat experience - using an enterprise's existing content, data, and systems.

Chat (new) Link ¶

Starts or continues a streaming Amazon Q Business conversation.

See also: AWS API Documentation

Request Syntax

client.chat(
    applicationId='string',
    userId='string',
    userGroups=[
        'string',
    ],
    conversationId='string',
    parentMessageId='string',
    clientToken='string',
    inputStream={...}
)
type applicationId:

string

param applicationId:

[REQUIRED]

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

type userId:

string

param userId:

The identifier of the user attached to the chat input.

type userGroups:

list

param userGroups:

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

  • (string) --

type conversationId:

string

param conversationId:

The identifier of the Amazon Q Business conversation.

type parentMessageId:

string

param parentMessageId:

The identifier used to associate a user message with a AI generated response.

type clientToken:

string

param clientToken:

A token that you provide to identify the chat input.

This field is autopopulated if not provided.

type inputStream:

dict

param inputStream:

The streaming input for the Chat API.

rtype:

dict

returns:

The response of this operation contains an :class:`.EventStream` member. When iterated the :class:`.EventStream` will yield events based on the structure below, where only one of the top level keys will be present for any given event.

Response Syntax

{
    'outputStream': EventStream({
        'textEvent': {
            'conversationId': 'string',
            'userMessageId': 'string',
            'systemMessageId': 'string',
            'systemMessage': 'string'
        },
        'metadataEvent': {
            'conversationId': 'string',
            'userMessageId': 'string',
            'systemMessageId': 'string',
            'sourceAttributions': [
                {
                    'title': 'string',
                    'snippet': 'string',
                    'url': 'string',
                    'citationNumber': 123,
                    'updatedAt': datetime(2015, 1, 1),
                    'textMessageSegments': [
                        {
                            'beginOffset': 123,
                            'endOffset': 123,
                            'snippetExcerpt': {
                                'text': 'string'
                            }
                        },
                    ]
                },
            ],
            'finalTextMessage': 'string'
        },
        'actionReviewEvent': {
            'conversationId': 'string',
            'userMessageId': 'string',
            'systemMessageId': 'string',
            'pluginId': 'string',
            'pluginType': 'SERVICE_NOW'|'SALESFORCE'|'JIRA'|'ZENDESK'|'CUSTOM',
            'payload': {
                'string': {
                    'displayName': 'string',
                    'displayOrder': 123,
                    'displayDescription': 'string',
                    'type': 'STRING'|'NUMBER'|'ARRAY'|'BOOLEAN',
                    'value': {...}|[...]|123|123.4|'string'|True|None,
                    'allowedValues': [
                        {
                            'value': {...}|[...]|123|123.4|'string'|True|None,
                            'displayValue': {...}|[...]|123|123.4|'string'|True|None
                        },
                    ],
                    'allowedFormat': 'string',
                    'required': True|False
                }
            },
            'payloadFieldNameSeparator': 'string'
        },
        'failedAttachmentEvent': {
            'conversationId': 'string',
            'userMessageId': 'string',
            'systemMessageId': 'string',
            'attachment': {
                'name': 'string',
                'status': 'FAILED'|'SUCCEEDED',
                'error': {
                    'errorMessage': 'string',
                    'errorCode': 'InternalError'|'InvalidRequest'|'ResourceInactive'|'ResourceNotFound'
                }
            }
        },
        'authChallengeRequestEvent': {
            'authorizationUrl': 'string'
        }
    })
}

Response Structure

  • (dict) --

    • outputStream (:class:`.EventStream`) --

      The streaming output for the Chat API.

      • textEvent (dict) --

        Information about the payload of the ChatOutputStream event containing the AI-generated message output.

        • conversationId (string) --

          The identifier of the conversation with which the text output event is associated.

        • userMessageId (string) --

          The identifier of an end user message in a TextOutputEvent.

        • systemMessageId (string) --

          The identifier of an AI-generated message in a TextOutputEvent.

        • systemMessage (string) --

          An AI-generated message in a TextOutputEvent.

      • metadataEvent (dict) --

        A metadata event for a AI-generated text output message in a Amazon Q Business conversation.

        • conversationId (string) --

          The identifier of the conversation with which the generated metadata is associated.

        • userMessageId (string) --

          The identifier of an Amazon Q Business end user text input message within the conversation.

        • systemMessageId (string) --

          The identifier of an Amazon Q Business AI generated message within the conversation.

        • sourceAttributions (list) --

          The source documents used to generate the conversation response.

          • (dict) --

            The documents used to generate an Amazon Q Business web experience response.

            • title (string) --

              The title of the document which is the source for the Amazon Q Business generated response.

            • snippet (string) --

              The content extract from the document on which the generated response is based.

            • url (string) --

              The URL of the document which is the source for the Amazon Q Business generated response.

            • citationNumber (integer) --

              The number attached to a citation in an Amazon Q Business generated response.

            • updatedAt (datetime) --

              The Unix timestamp when the Amazon Q Business application was last updated.

            • textMessageSegments (list) --

              A text extract from a source document that is used for source attribution.

              • (dict) --

                Provides information about a text extract in a chat response that can be attributed to a source document.

                • beginOffset (integer) --

                  The zero-based location in the response string where the source attribution starts.

                • endOffset (integer) --

                  The zero-based location in the response string where the source attribution ends.

                • snippetExcerpt (dict) --

                  The relevant text excerpt from a source that was used to generate a citation text segment in an Amazon Q Business chat response.

                  • text (string) --

                    The relevant text excerpt from a source that was used to generate a citation text segment in an Amazon Q chat response.

        • finalTextMessage (string) --

          The final text output message generated by the system.

      • actionReviewEvent (dict) --

        A request from Amazon Q Business to the end user for information Amazon Q Business needs to successfully complete a requested plugin action.

        • conversationId (string) --

          The identifier of the conversation with which the action review event is associated.

        • userMessageId (string) --

          The identifier of the conversation with which the plugin action is associated.

        • systemMessageId (string) --

          The identifier of an Amazon Q Business AI generated associated with the action review event.

        • pluginId (string) --

          The identifier of the plugin associated with the action review event.

        • pluginType (string) --

          The type of plugin.

        • payload (dict) --

          Field values that an end user needs to provide to Amazon Q Business for Amazon Q Business to perform the requested plugin action.

          • (string) --

            • (dict) --

              A user input field in an plugin action review payload.

              • displayName (string) --

                The name of the field.

              • displayOrder (integer) --

                The display order of fields in a payload.

              • displayDescription (string) --

                The field level description of each action review input field. This could be an explanation of the field. In the Amazon Q Business web experience, these descriptions could be used to display as tool tips to help users understand the field.

              • type (string) --

                The type of field.

              • value (:ref:`document<document>`) --

                The field value.

              • allowedValues (list) --

                Information about the field values that an end user can use to provide to Amazon Q Business for Amazon Q Business to perform the requested plugin action.

                • (dict) --

                  Information about the field values that an end user can use to provide to Amazon Q Business for Amazon Q Business to perform the requested plugin action.

                  • value (:ref:`document<document>`) --

                    The field value.

                  • displayValue (:ref:`document<document>`) --

                    The name of the field.

              • allowedFormat (string) --

                The expected data format for the action review input field value. For example, in PTO request, from and to would be of datetime allowed format.

              • required (boolean) --

                Information about whether the field is required.

        • payloadFieldNameSeparator (string) --

          A string used to retain information about the hierarchical contexts within an action review event payload.

      • failedAttachmentEvent (dict) --

        A failed file upload event during a web experience chat.

        • conversationId (string) --

          The identifier of the conversation associated with the failed file upload.

        • userMessageId (string) --

          The identifier of the end user chat message associated with the file upload.

        • systemMessageId (string) --

          The identifier of the AI-generated message associated with the file upload.

        • attachment (dict) --

          The details of a file uploaded during chat.

          • name (string) --

            The name of a file uploaded during chat.

          • status (string) --

            The status of a file uploaded during chat.

          • error (dict) --

            An error associated with a file uploaded during chat.

            • errorMessage (string) --

              The message explaining the data source sync error.

            • errorCode (string) --

              The code associated with the data source sync error.

      • authChallengeRequestEvent (dict) --

        An authentication verification event activated by an end user request to use a custom plugin.

        • authorizationUrl (string) --

          The URL sent by Amazon Q Business to a third party authentication server in response to an authentication verification event activated by an end user request to use a custom plugin.

ChatSync (updated) Link ¶
Changes (request, response)
Request
{'authChallengeResponse': {'responseMap': {'string': 'string'}}}
Response
{'actionReview': {'payload': {'allowedFormat': 'string',
                              'displayDescription': 'string'},
                  'pluginType': {'CUSTOM'}},
 'authChallengeRequest': {'authorizationUrl': 'string'},
 'sourceAttributions': {'textMessageSegments': {'snippetExcerpt': {'text': 'string'}}}}

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

See also: AWS API Documentation

Request Syntax

client.chat_sync(
    applicationId='string',
    userId='string',
    userGroups=[
        'string',
    ],
    userMessage='string',
    attachments=[
        {
            'name': 'string',
            'data': b'bytes'
        },
    ],
    actionExecution={
        'pluginId': 'string',
        'payload': {
            'string': {
                'value': {...}|[...]|123|123.4|'string'|True|None
            }
        },
        'payloadFieldNameSeparator': 'string'
    },
    authChallengeResponse={
        'responseMap': {
            'string': 'string'
        }
    },
    conversationId='string',
    parentMessageId='string',
    attributeFilter={
        'andAllFilters': [
            {'... recursive ...'},
        ],
        'orAllFilters': [
            {'... recursive ...'},
        ],
        'notFilter': {'... recursive ...'},
        'equalsTo': {
            'name': 'string',
            'value': {
                'stringValue': 'string',
                'stringListValue': [
                    'string',
                ],
                'longValue': 123,
                'dateValue': datetime(2015, 1, 1)
            }
        },
        'containsAll': {
            'name': 'string',
            'value': {
                'stringValue': 'string',
                'stringListValue': [
                    'string',
                ],
                'longValue': 123,
                'dateValue': datetime(2015, 1, 1)
            }
        },
        'containsAny': {
            'name': 'string',
            'value': {
                'stringValue': 'string',
                'stringListValue': [
                    'string',
                ],
                'longValue': 123,
                'dateValue': datetime(2015, 1, 1)
            }
        },
        'greaterThan': {
            'name': 'string',
            'value': {
                'stringValue': 'string',
                'stringListValue': [
                    'string',
                ],
                'longValue': 123,
                'dateValue': datetime(2015, 1, 1)
            }
        },
        'greaterThanOrEquals': {
            'name': 'string',
            'value': {
                'stringValue': 'string',
                'stringListValue': [
                    'string',
                ],
                'longValue': 123,
                'dateValue': datetime(2015, 1, 1)
            }
        },
        'lessThan': {
            'name': 'string',
            'value': {
                'stringValue': 'string',
                'stringListValue': [
                    'string',
                ],
                'longValue': 123,
                'dateValue': datetime(2015, 1, 1)
            }
        },
        'lessThanOrEquals': {
            'name': 'string',
            'value': {
                'stringValue': 'string',
                'stringListValue': [
                    'string',
                ],
                'longValue': 123,
                'dateValue': datetime(2015, 1, 1)
            }
        }
    },
    chatMode='RETRIEVAL_MODE'|'CREATOR_MODE'|'PLUGIN_MODE',
    chatModeConfiguration={
        'pluginConfiguration': {
            'pluginId': 'string'
        }
    },
    clientToken='string'
)
type applicationId:

string

param applicationId:

[REQUIRED]

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

type userId:

string

param userId:

The identifier of the user attached to the chat input.

type userGroups:

list

param userGroups:

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

  • (string) --

type userMessage:

string

param userMessage:

A end user message in a conversation.

type attachments:

list

param attachments:

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

  • (dict) --

    A file directly uploaded into a web experience chat.

    • name (string) -- [REQUIRED]

      The name of the file.

    • data (bytes) -- [REQUIRED]

      The data contained within the uploaded file.

type actionExecution:

dict

param actionExecution:

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

  • pluginId (string) -- [REQUIRED]

    The identifier of the plugin the action is attached to.

  • payload (dict) -- [REQUIRED]

    A mapping of field names to the field values in input that an end user provides to Amazon Q Business requests to perform their plugin action.

    • (string) --

      • (dict) --

        A user input field in an plugin action execution payload.

        • value (:ref:`document<document>`) -- [REQUIRED]

          The content of a user input field in an plugin action execution payload.

  • payloadFieldNameSeparator (string) -- [REQUIRED]

    A string used to retain information about the hierarchical contexts within an action execution event payload.

type authChallengeResponse:

dict

param authChallengeResponse:

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

  • responseMap (dict) -- [REQUIRED]

    The mapping of key-value pairs in an authentication challenge response.

    • (string) --

      • (string) --

type conversationId:

string

param conversationId:

The identifier of the Amazon Q Business conversation.

type parentMessageId:

string

param parentMessageId:

The identifier of the previous end user text input message in a conversation.

type attributeFilter:

dict

param attributeFilter:

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

  • andAllFilters (list) --

    Performs a logical AND operation on all supplied filters.

    • (dict) --

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

  • orAllFilters (list) --

    Performs a logical OR operation on all supplied filters.

    • (dict) --

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

  • notFilter (dict) --

    Performs a logical NOT operation on all supplied filters.

  • equalsTo (dict) --

    Performs an equals operation on two document attributes or metadata fields. Supported for the following document attribute value types: dateValue, longValue, stringListValue and stringValue.

    • name (string) -- [REQUIRED]

      The identifier for the attribute.

    • value (dict) -- [REQUIRED]

      The value of the attribute.

      • stringValue (string) --

        A string.

      • stringListValue (list) --

        A list of strings.

        • (string) --

      • longValue (integer) --

        A long integer value.

      • dateValue (datetime) --

        A date expressed as an ISO 8601 string.

        It's important for the time zone to be included in the ISO 8601 date-time format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.

  • containsAll (dict) --

    Returns true when a document contains all the specified document attributes or metadata fields. Supported for the following document attribute value types: stringListValue.

    • name (string) -- [REQUIRED]

      The identifier for the attribute.

    • value (dict) -- [REQUIRED]

      The value of the attribute.

      • stringValue (string) --

        A string.

      • stringListValue (list) --

        A list of strings.

        • (string) --

      • longValue (integer) --

        A long integer value.

      • dateValue (datetime) --

        A date expressed as an ISO 8601 string.

        It's important for the time zone to be included in the ISO 8601 date-time format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.

  • containsAny (dict) --

    Returns true when a document contains any of the specified document attributes or metadata fields. Supported for the following document attribute value types: dateValue, longValue, stringListValue and stringValue.

    • name (string) -- [REQUIRED]

      The identifier for the attribute.

    • value (dict) -- [REQUIRED]

      The value of the attribute.

      • stringValue (string) --

        A string.

      • stringListValue (list) --

        A list of strings.

        • (string) --

      • longValue (integer) --

        A long integer value.

      • dateValue (datetime) --

        A date expressed as an ISO 8601 string.

        It's important for the time zone to be included in the ISO 8601 date-time format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.

  • greaterThan (dict) --

    Performs a greater than operation on two document attributes or metadata fields. Supported for the following document attribute value types: dateValue and longValue.

    • name (string) -- [REQUIRED]

      The identifier for the attribute.

    • value (dict) -- [REQUIRED]

      The value of the attribute.

      • stringValue (string) --

        A string.

      • stringListValue (list) --

        A list of strings.

        • (string) --

      • longValue (integer) --

        A long integer value.

      • dateValue (datetime) --

        A date expressed as an ISO 8601 string.

        It's important for the time zone to be included in the ISO 8601 date-time format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.

  • greaterThanOrEquals (dict) --

    Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following document attribute value types: dateValue and longValue.

    • name (string) -- [REQUIRED]

      The identifier for the attribute.

    • value (dict) -- [REQUIRED]

      The value of the attribute.

      • stringValue (string) --

        A string.

      • stringListValue (list) --

        A list of strings.

        • (string) --

      • longValue (integer) --

        A long integer value.

      • dateValue (datetime) --

        A date expressed as an ISO 8601 string.

        It's important for the time zone to be included in the ISO 8601 date-time format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.

  • lessThan (dict) --

    Performs a less than operation on two document attributes or metadata fields. Supported for the following document attribute value types: dateValue and longValue.

    • name (string) -- [REQUIRED]

      The identifier for the attribute.

    • value (dict) -- [REQUIRED]

      The value of the attribute.

      • stringValue (string) --

        A string.

      • stringListValue (list) --

        A list of strings.

        • (string) --

      • longValue (integer) --

        A long integer value.

      • dateValue (datetime) --

        A date expressed as an ISO 8601 string.

        It's important for the time zone to be included in the ISO 8601 date-time format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.

  • lessThanOrEquals (dict) --

    Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following document attribute value type: dateValue and longValue.

    • name (string) -- [REQUIRED]

      The identifier for the attribute.

    • value (dict) -- [REQUIRED]

      The value of the attribute.

      • stringValue (string) --

        A string.

      • stringListValue (list) --

        A list of strings.

        • (string) --

      • longValue (integer) --

        A long integer value.

      • dateValue (datetime) --

        A date expressed as an ISO 8601 string.

        It's important for the time zone to be included in the ISO 8601 date-time format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.

type chatMode:

string

param chatMode:

The chat modes available to an Amazon Q Business end user.

  • RETRIEVAL_MODE - The default chat mode for an Amazon Q Business application. When this mode is enabled, Amazon Q Business generates responses only from data sources connected to an Amazon Q Business application.

  • CREATOR_MODE - By selecting this mode, users can choose to generate responses only from the LLM knowledge, without consulting connected data sources, for a chat request.

  • PLUGIN_MODE - By selecting this mode, users can choose to use plugins in chat.

For more information, see Admin controls and guardrails, Plugins, and Conversation settings.

type chatModeConfiguration:

dict

param chatModeConfiguration:

The chat mode configuration for an Amazon Q Business application.

  • pluginConfiguration (dict) --

    Configuration information required to invoke chat in PLUGIN_MODE.

    • pluginId (string) -- [REQUIRED]

      The identifier of the plugin you want to use.

type clientToken:

string

param clientToken:

A token that you provide to identify a chat request.

This field is autopopulated if not provided.

rtype:

dict

returns:

Response Syntax

{
    'conversationId': 'string',
    'systemMessage': 'string',
    'systemMessageId': 'string',
    'userMessageId': 'string',
    'actionReview': {
        'pluginId': 'string',
        'pluginType': 'SERVICE_NOW'|'SALESFORCE'|'JIRA'|'ZENDESK'|'CUSTOM',
        'payload': {
            'string': {
                'displayName': 'string',
                'displayOrder': 123,
                'displayDescription': 'string',
                'type': 'STRING'|'NUMBER'|'ARRAY'|'BOOLEAN',
                'value': {...}|[...]|123|123.4|'string'|True|None,
                'allowedValues': [
                    {
                        'value': {...}|[...]|123|123.4|'string'|True|None,
                        'displayValue': {...}|[...]|123|123.4|'string'|True|None
                    },
                ],
                'allowedFormat': 'string',
                'required': True|False
            }
        },
        'payloadFieldNameSeparator': 'string'
    },
    'authChallengeRequest': {
        'authorizationUrl': 'string'
    },
    'sourceAttributions': [
        {
            'title': 'string',
            'snippet': 'string',
            'url': 'string',
            'citationNumber': 123,
            'updatedAt': datetime(2015, 1, 1),
            'textMessageSegments': [
                {
                    'beginOffset': 123,
                    'endOffset': 123,
                    'snippetExcerpt': {
                        'text': 'string'
                    }
                },
            ]
        },
    ],
    'failedAttachments': [
        {
            'name': 'string',
            'status': 'FAILED'|'SUCCEEDED',
            'error': {
                'errorMessage': 'string',
                'errorCode': 'InternalError'|'InvalidRequest'|'ResourceInactive'|'ResourceNotFound'
            }
        },
    ]
}

Response Structure

  • (dict) --

    • conversationId (string) --

      The identifier of the Amazon Q Business conversation.

    • systemMessage (string) --

      An AI-generated message in a conversation.

    • systemMessageId (string) --

      The identifier of an Amazon Q Business AI generated message within the conversation.

    • userMessageId (string) --

      The identifier of an Amazon Q Business end user text input message within the conversation.

    • actionReview (dict) --

      A request from Amazon Q Business to the end user for information Amazon Q Business needs to successfully complete a requested plugin action.

      • pluginId (string) --

        The identifier of the plugin associated with the action review.

      • pluginType (string) --

        The type of plugin.

      • payload (dict) --

        Field values that an end user needs to provide to Amazon Q Business for Amazon Q Business to perform the requested plugin action.

        • (string) --

          • (dict) --

            A user input field in an plugin action review payload.

            • displayName (string) --

              The name of the field.

            • displayOrder (integer) --

              The display order of fields in a payload.

            • displayDescription (string) --

              The field level description of each action review input field. This could be an explanation of the field. In the Amazon Q Business web experience, these descriptions could be used to display as tool tips to help users understand the field.

            • type (string) --

              The type of field.

            • value (:ref:`document<document>`) --

              The field value.

            • allowedValues (list) --

              Information about the field values that an end user can use to provide to Amazon Q Business for Amazon Q Business to perform the requested plugin action.

              • (dict) --

                Information about the field values that an end user can use to provide to Amazon Q Business for Amazon Q Business to perform the requested plugin action.

                • value (:ref:`document<document>`) --

                  The field value.

                • displayValue (:ref:`document<document>`) --

                  The name of the field.

            • allowedFormat (string) --

              The expected data format for the action review input field value. For example, in PTO request, from and to would be of datetime allowed format.

            • required (boolean) --

              Information about whether the field is required.

      • payloadFieldNameSeparator (string) --

        A string used to retain information about the hierarchical contexts within an action review payload.

    • authChallengeRequest (dict) --

      An authentication verification event activated by an end user request to use a custom plugin.

      • authorizationUrl (string) --

        The URL sent by Amazon Q Business to the third party authentication server to authenticate a custom plugin user through an OAuth protocol.

    • sourceAttributions (list) --

      The source documents used to generate the conversation response.

      • (dict) --

        The documents used to generate an Amazon Q Business web experience response.

        • title (string) --

          The title of the document which is the source for the Amazon Q Business generated response.

        • snippet (string) --

          The content extract from the document on which the generated response is based.

        • url (string) --

          The URL of the document which is the source for the Amazon Q Business generated response.

        • citationNumber (integer) --

          The number attached to a citation in an Amazon Q Business generated response.

        • updatedAt (datetime) --

          The Unix timestamp when the Amazon Q Business application was last updated.

        • textMessageSegments (list) --

          A text extract from a source document that is used for source attribution.

          • (dict) --

            Provides information about a text extract in a chat response that can be attributed to a source document.

            • beginOffset (integer) --

              The zero-based location in the response string where the source attribution starts.

            • endOffset (integer) --

              The zero-based location in the response string where the source attribution ends.

            • snippetExcerpt (dict) --

              The relevant text excerpt from a source that was used to generate a citation text segment in an Amazon Q Business chat response.

              • text (string) --

                The relevant text excerpt from a source that was used to generate a citation text segment in an Amazon Q chat response.

    • failedAttachments (list) --

      A list of files which failed to upload during chat.

      • (dict) --

        The details of a file uploaded during chat.

        • name (string) --

          The name of a file uploaded during chat.

        • status (string) --

          The status of a file uploaded during chat.

        • error (dict) --

          An error associated with a file uploaded during chat.

          • errorMessage (string) --

            The message explaining the data source sync error.

          • errorCode (string) --

            The code associated with the data source sync error.

CreateIndex (updated) Link ¶
Changes (request)
{'type': 'ENTERPRISE | STARTER'}

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.

See also: AWS API Documentation

Request Syntax

client.create_index(
    applicationId='string',
    displayName='string',
    type='ENTERPRISE'|'STARTER',
    description='string',
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ],
    capacityConfiguration={
        'units': 123
    },
    clientToken='string'
)
type applicationId:

string

param applicationId:

[REQUIRED]

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

type displayName:

string

param displayName:

[REQUIRED]

A name for the Amazon Q Business index.

type type:

string

param type:

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

type description:

string

param description:

A description for the Amazon Q Business index.

type tags:

list

param tags:

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: _ . : / = + - @.

  • (dict) --

    A list of key/value pairs that identify an index, FAQ, or data source. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

    • key (string) -- [REQUIRED]

      The key for the tag. Keys are not case sensitive and must be unique for the Amazon Q Business application or data source.

    • value (string) -- [REQUIRED]

      The value associated with the tag. The value may be an empty string but it can't be null.

type capacityConfiguration:

dict

param capacityConfiguration:

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

  • units (integer) --

    The number of storage units configured for an Amazon Q Business index.

type clientToken:

string

param clientToken:

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.

This field is autopopulated if not provided.

rtype:

dict

returns:

Response Syntax

{
    'indexId': 'string',
    'indexArn': 'string'
}

Response Structure

  • (dict) --

    • indexId (string) --

      The identifier for the Amazon Q Business index.

    • indexArn (string) --

      The Amazon Resource Name (ARN) of an Amazon Q Business index.

CreatePlugin (updated) Link ¶
Changes (request, response)
Request
{'authConfiguration': {'noAuthConfiguration': {}},
 'customPluginConfiguration': {'apiSchema': {'payload': 'string',
                                             's3': {'bucket': 'string',
                                                    'key': 'string'}},
                               'apiSchemaType': 'OPEN_API_V3',
                               'description': 'string'},
 'type': {'CUSTOM'}}
Response
{'buildStatus': 'READY | CREATE_IN_PROGRESS | CREATE_FAILED | '
                'UPDATE_IN_PROGRESS | UPDATE_FAILED | DELETE_IN_PROGRESS | '
                'DELETE_FAILED'}

Creates an Amazon Q Business plugin.

See also: AWS API Documentation

Request Syntax

client.create_plugin(
    applicationId='string',
    displayName='string',
    type='SERVICE_NOW'|'SALESFORCE'|'JIRA'|'ZENDESK'|'CUSTOM',
    authConfiguration={
        'basicAuthConfiguration': {
            'secretArn': 'string',
            'roleArn': 'string'
        },
        'oAuth2ClientCredentialConfiguration': {
            'secretArn': 'string',
            'roleArn': 'string'
        },
        'noAuthConfiguration': {}

    },
    serverUrl='string',
    customPluginConfiguration={
        'description': 'string',
        'apiSchemaType': 'OPEN_API_V3',
        'apiSchema': {
            'payload': 'string',
            's3': {
                'bucket': 'string',
                'key': 'string'
            }
        }
    },
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ],
    clientToken='string'
)
type applicationId:

string

param applicationId:

[REQUIRED]

The identifier of the application that will contain the plugin.

type displayName:

string

param displayName:

[REQUIRED]

A the name for your plugin.

type type:

string

param type:

[REQUIRED]

The type of plugin you want to create.

type authConfiguration:

dict

param authConfiguration:

[REQUIRED]

Authentication configuration information for an Amazon Q Business plugin.

  • basicAuthConfiguration (dict) --

    Information about the basic authentication credentials used to configure a plugin.

    • secretArn (string) -- [REQUIRED]

      The ARN of the Secrets Manager secret that stores the basic authentication credentials used for plugin configuration..

    • roleArn (string) -- [REQUIRED]

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

  • oAuth2ClientCredentialConfiguration (dict) --

    Information about the OAuth 2.0 authentication credential/token used to configure a plugin.

    • secretArn (string) -- [REQUIRED]

      The ARN of the Secrets Manager secret that stores the OAuth 2.0 credentials/token used for plugin configuration.

    • roleArn (string) -- [REQUIRED]

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

  • noAuthConfiguration (dict) --

    Information about invoking a custom plugin without any authentication.

type serverUrl:

string

param serverUrl:

The source URL used for plugin configuration.

type customPluginConfiguration:

dict

param customPluginConfiguration:

Contains configuration for a custom plugin.

  • description (string) -- [REQUIRED]

    A description for your custom plugin configuration.

  • apiSchemaType (string) -- [REQUIRED]

    The type of OpenAPI schema to use.

  • apiSchema (dict) -- [REQUIRED]

    Contains either details about the S3 object containing the OpenAPI schema for the action group or the JSON or YAML-formatted payload defining the schema.

    • payload (string) --

      The JSON or YAML-formatted payload defining the OpenAPI schema for a custom plugin.

    • s3 (dict) --

      Contains details about the S3 object containing the OpenAPI schema for a custom plugin. The schema could be in either JSON or YAML format.

      • bucket (string) -- [REQUIRED]

        The name of the S3 bucket that contains the file.

      • key (string) -- [REQUIRED]

        The name of the file.

type tags:

list

param tags:

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: _ . : / = + - @.

  • (dict) --

    A list of key/value pairs that identify an index, FAQ, or data source. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

    • key (string) -- [REQUIRED]

      The key for the tag. Keys are not case sensitive and must be unique for the Amazon Q Business application or data source.

    • value (string) -- [REQUIRED]

      The value associated with the tag. The value may be an empty string but it can't be null.

type clientToken:

string

param clientToken:

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

This field is autopopulated if not provided.

rtype:

dict

returns:

Response Syntax

{
    'pluginId': 'string',
    'pluginArn': 'string',
    'buildStatus': 'READY'|'CREATE_IN_PROGRESS'|'CREATE_FAILED'|'UPDATE_IN_PROGRESS'|'UPDATE_FAILED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'
}

Response Structure

  • (dict) --

    • pluginId (string) --

      The identifier of the plugin created.

    • pluginArn (string) --

      The Amazon Resource Name (ARN) of a plugin.

    • buildStatus (string) --

      The current status of a plugin. A plugin is modified asynchronously.

GetIndex (updated) Link ¶
Changes (response)
{'type': 'ENTERPRISE | STARTER'}

Gets information about an existing Amazon Q Business index.

See also: AWS API Documentation

Request Syntax

client.get_index(
    applicationId='string',
    indexId='string'
)
type applicationId:

string

param applicationId:

[REQUIRED]

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

type indexId:

string

param indexId:

[REQUIRED]

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

rtype:

dict

returns:

Response Syntax

{
    'applicationId': 'string',
    'indexId': 'string',
    'displayName': 'string',
    'type': 'ENTERPRISE'|'STARTER',
    'indexArn': 'string',
    'status': 'CREATING'|'ACTIVE'|'DELETING'|'FAILED'|'UPDATING',
    'description': 'string',
    'createdAt': datetime(2015, 1, 1),
    'updatedAt': datetime(2015, 1, 1),
    'capacityConfiguration': {
        'units': 123
    },
    'documentAttributeConfigurations': [
        {
            'name': 'string',
            'type': 'STRING'|'STRING_LIST'|'NUMBER'|'DATE',
            'search': 'ENABLED'|'DISABLED'
        },
    ],
    'error': {
        'errorMessage': 'string',
        'errorCode': 'InternalError'|'InvalidRequest'|'ResourceInactive'|'ResourceNotFound'
    },
    'indexStatistics': {
        'textDocumentStatistics': {
            'indexedTextBytes': 123,
            'indexedTextDocumentCount': 123
        }
    }
}

Response Structure

  • (dict) --

    • applicationId (string) --

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

    • indexId (string) --

      The identifier of the Amazon Q Business index.

    • displayName (string) --

      The name of the Amazon Q Business index.

    • type (string) --

      The type of index attached to your Amazon Q Business application.

    • indexArn (string) --

      The Amazon Resource Name (ARN) of the Amazon Q Business index.

    • status (string) --

      The current status of the index. When the value is ACTIVE, the index is ready for use. If the Status field value is FAILED, the ErrorMessage field contains a message that explains why.

    • description (string) --

      The description for the Amazon Q Business index.

    • createdAt (datetime) --

      The Unix timestamp when the Amazon Q Business index was created.

    • updatedAt (datetime) --

      The Unix timestamp when the Amazon Q Business index was last updated.

    • capacityConfiguration (dict) --

      The storage capacity units chosen for your Amazon Q Business index.

      • units (integer) --

        The number of storage units configured for an Amazon Q Business index.

    • documentAttributeConfigurations (list) --

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

      • (dict) --

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

        For more information, see Understanding document attributes.

        • name (string) --

          The name of the document attribute.

        • type (string) --

          The type of document attribute.

        • search (string) --

          Information about whether the document attribute can be used by an end user to search for information on their web experience.

    • error (dict) --

      When the Status field value is FAILED, the ErrorMessage field contains a message that explains why.

      • errorMessage (string) --

        The message explaining the data source sync error.

      • errorCode (string) --

        The code associated with the data source sync error.

    • indexStatistics (dict) --

      Provides information about the number of documents indexed.

      • textDocumentStatistics (dict) --

        The number of documents indexed.

        • indexedTextBytes (integer) --

          The total size, in bytes, of the indexed documents.

        • indexedTextDocumentCount (integer) --

          The number of text documents indexed.

GetPlugin (updated) Link ¶
Changes (response)
{'authConfiguration': {'noAuthConfiguration': {}},
 'buildStatus': 'READY | CREATE_IN_PROGRESS | CREATE_FAILED | '
                'UPDATE_IN_PROGRESS | UPDATE_FAILED | DELETE_IN_PROGRESS | '
                'DELETE_FAILED',
 'customPluginConfiguration': {'apiSchema': {'payload': 'string',
                                             's3': {'bucket': 'string',
                                                    'key': 'string'}},
                               'apiSchemaType': 'OPEN_API_V3',
                               'description': 'string'},
 'type': {'CUSTOM'}}

Gets information about an existing Amazon Q Business plugin.

See also: AWS API Documentation

Request Syntax

client.get_plugin(
    applicationId='string',
    pluginId='string'
)
type applicationId:

string

param applicationId:

[REQUIRED]

The identifier of the application which contains the plugin.

type pluginId:

string

param pluginId:

[REQUIRED]

The identifier of the plugin.

rtype:

dict

returns:

Response Syntax

{
    'applicationId': 'string',
    'pluginId': 'string',
    'displayName': 'string',
    'type': 'SERVICE_NOW'|'SALESFORCE'|'JIRA'|'ZENDESK'|'CUSTOM',
    'serverUrl': 'string',
    'authConfiguration': {
        'basicAuthConfiguration': {
            'secretArn': 'string',
            'roleArn': 'string'
        },
        'oAuth2ClientCredentialConfiguration': {
            'secretArn': 'string',
            'roleArn': 'string'
        },
        'noAuthConfiguration': {}
    },
    'customPluginConfiguration': {
        'description': 'string',
        'apiSchemaType': 'OPEN_API_V3',
        'apiSchema': {
            'payload': 'string',
            's3': {
                'bucket': 'string',
                'key': 'string'
            }
        }
    },
    'buildStatus': 'READY'|'CREATE_IN_PROGRESS'|'CREATE_FAILED'|'UPDATE_IN_PROGRESS'|'UPDATE_FAILED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED',
    'pluginArn': 'string',
    'state': 'ENABLED'|'DISABLED',
    'createdAt': datetime(2015, 1, 1),
    'updatedAt': datetime(2015, 1, 1)
}

Response Structure

  • (dict) --

    • applicationId (string) --

      The identifier of the application which contains the plugin.

    • pluginId (string) --

      The identifier of the plugin.

    • displayName (string) --

      The name of the plugin.

    • type (string) --

      The type of the plugin.

    • serverUrl (string) --

      The source URL used for plugin configuration.

    • authConfiguration (dict) --

      Authentication configuration information for an Amazon Q Business plugin.

      • basicAuthConfiguration (dict) --

        Information about the basic authentication credentials used to configure a plugin.

        • secretArn (string) --

          The ARN of the Secrets Manager secret that stores the basic authentication credentials used for plugin configuration..

        • roleArn (string) --

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

      • oAuth2ClientCredentialConfiguration (dict) --

        Information about the OAuth 2.0 authentication credential/token used to configure a plugin.

        • secretArn (string) --

          The ARN of the Secrets Manager secret that stores the OAuth 2.0 credentials/token used for plugin configuration.

        • roleArn (string) --

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

      • noAuthConfiguration (dict) --

        Information about invoking a custom plugin without any authentication.

    • customPluginConfiguration (dict) --

      Configuration information required to create a custom plugin.

      • description (string) --

        A description for your custom plugin configuration.

      • apiSchemaType (string) --

        The type of OpenAPI schema to use.

      • apiSchema (dict) --

        Contains either details about the S3 object containing the OpenAPI schema for the action group or the JSON or YAML-formatted payload defining the schema.

        • payload (string) --

          The JSON or YAML-formatted payload defining the OpenAPI schema for a custom plugin.

        • s3 (dict) --

          Contains details about the S3 object containing the OpenAPI schema for a custom plugin. The schema could be in either JSON or YAML format.

          • bucket (string) --

            The name of the S3 bucket that contains the file.

          • key (string) --

            The name of the file.

    • buildStatus (string) --

      The current status of a plugin. A plugin is modified asynchronously.

    • pluginArn (string) --

      The Amazon Resource Name (ARN) of the role with permission to access resources needed to create the plugin.

    • state (string) --

      The current state of the plugin.

    • createdAt (datetime) --

      The timestamp for when the plugin was created.

    • updatedAt (datetime) --

      The timestamp for when the plugin was last updated.

ListMessages (updated) Link ¶
Changes (response)
{'messages': {'actionReview': {'payload': {'allowedFormat': 'string',
                                           'displayDescription': 'string'},
                               'pluginType': {'CUSTOM'}},
              'sourceAttribution': {'textMessageSegments': {'snippetExcerpt': {'text': 'string'}}}}}

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

See also: AWS API Documentation

Request Syntax

client.list_messages(
    conversationId='string',
    applicationId='string',
    userId='string',
    nextToken='string',
    maxResults=123
)
type conversationId:

string

param conversationId:

[REQUIRED]

The identifier of the Amazon Q Business web experience conversation.

type applicationId:

string

param applicationId:

[REQUIRED]

The identifier for the Amazon Q Business application.

type userId:

string

param userId:

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

type nextToken:

string

param nextToken:

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

type maxResults:

integer

param maxResults:

The maximum number of messages to return.

rtype:

dict

returns:

Response Syntax

{
    'messages': [
        {
            'messageId': 'string',
            'body': 'string',
            'time': datetime(2015, 1, 1),
            'type': 'USER'|'SYSTEM',
            'attachments': [
                {
                    'name': 'string',
                    'status': 'FAILED'|'SUCCEEDED',
                    'error': {
                        'errorMessage': 'string',
                        'errorCode': 'InternalError'|'InvalidRequest'|'ResourceInactive'|'ResourceNotFound'
                    }
                },
            ],
            'sourceAttribution': [
                {
                    'title': 'string',
                    'snippet': 'string',
                    'url': 'string',
                    'citationNumber': 123,
                    'updatedAt': datetime(2015, 1, 1),
                    'textMessageSegments': [
                        {
                            'beginOffset': 123,
                            'endOffset': 123,
                            'snippetExcerpt': {
                                'text': 'string'
                            }
                        },
                    ]
                },
            ],
            'actionReview': {
                'pluginId': 'string',
                'pluginType': 'SERVICE_NOW'|'SALESFORCE'|'JIRA'|'ZENDESK'|'CUSTOM',
                'payload': {
                    'string': {
                        'displayName': 'string',
                        'displayOrder': 123,
                        'displayDescription': 'string',
                        'type': 'STRING'|'NUMBER'|'ARRAY'|'BOOLEAN',
                        'value': {...}|[...]|123|123.4|'string'|True|None,
                        'allowedValues': [
                            {
                                'value': {...}|[...]|123|123.4|'string'|True|None,
                                'displayValue': {...}|[...]|123|123.4|'string'|True|None
                            },
                        ],
                        'allowedFormat': 'string',
                        'required': True|False
                    }
                },
                'payloadFieldNameSeparator': 'string'
            },
            'actionExecution': {
                'pluginId': 'string',
                'payload': {
                    'string': {
                        'value': {...}|[...]|123|123.4|'string'|True|None
                    }
                },
                'payloadFieldNameSeparator': 'string'
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • messages (list) --

      An array of information on one or more messages.

      • (dict) --

        A message in an Amazon Q Business web experience.

        • messageId (string) --

          The identifier of the Amazon Q Business web experience message.

        • body (string) --

          The content of the Amazon Q Business web experience message.

        • time (datetime) --

          The timestamp of the first Amazon Q Business web experience message.

        • type (string) --

          The type of Amazon Q Business message, whether HUMAN or AI generated.

        • attachments (list) --

          A file directly uploaded into an Amazon Q Business web experience chat.

          • (dict) --

            The details of a file uploaded during chat.

            • name (string) --

              The name of a file uploaded during chat.

            • status (string) --

              The status of a file uploaded during chat.

            • error (dict) --

              An error associated with a file uploaded during chat.

              • errorMessage (string) --

                The message explaining the data source sync error.

              • errorCode (string) --

                The code associated with the data source sync error.

        • sourceAttribution (list) --

          The source documents used to generate Amazon Q Business web experience message.

          • (dict) --

            The documents used to generate an Amazon Q Business web experience response.

            • title (string) --

              The title of the document which is the source for the Amazon Q Business generated response.

            • snippet (string) --

              The content extract from the document on which the generated response is based.

            • url (string) --

              The URL of the document which is the source for the Amazon Q Business generated response.

            • citationNumber (integer) --

              The number attached to a citation in an Amazon Q Business generated response.

            • updatedAt (datetime) --

              The Unix timestamp when the Amazon Q Business application was last updated.

            • textMessageSegments (list) --

              A text extract from a source document that is used for source attribution.

              • (dict) --

                Provides information about a text extract in a chat response that can be attributed to a source document.

                • beginOffset (integer) --

                  The zero-based location in the response string where the source attribution starts.

                • endOffset (integer) --

                  The zero-based location in the response string where the source attribution ends.

                • snippetExcerpt (dict) --

                  The relevant text excerpt from a source that was used to generate a citation text segment in an Amazon Q Business chat response.

                  • text (string) --

                    The relevant text excerpt from a source that was used to generate a citation text segment in an Amazon Q chat response.

        • actionReview (dict) --

          An output event that Amazon Q Business returns to an user who wants to perform a plugin action during a non-streaming chat conversation. It contains information about the selected action with a list of possible user input fields, some pre-populated by Amazon Q Business.

          • pluginId (string) --

            The identifier of the plugin associated with the action review.

          • pluginType (string) --

            The type of plugin.

          • payload (dict) --

            Field values that an end user needs to provide to Amazon Q Business for Amazon Q Business to perform the requested plugin action.

            • (string) --

              • (dict) --

                A user input field in an plugin action review payload.

                • displayName (string) --

                  The name of the field.

                • displayOrder (integer) --

                  The display order of fields in a payload.

                • displayDescription (string) --

                  The field level description of each action review input field. This could be an explanation of the field. In the Amazon Q Business web experience, these descriptions could be used to display as tool tips to help users understand the field.

                • type (string) --

                  The type of field.

                • value (:ref:`document<document>`) --

                  The field value.

                • allowedValues (list) --

                  Information about the field values that an end user can use to provide to Amazon Q Business for Amazon Q Business to perform the requested plugin action.

                  • (dict) --

                    Information about the field values that an end user can use to provide to Amazon Q Business for Amazon Q Business to perform the requested plugin action.

                    • value (:ref:`document<document>`) --

                      The field value.

                    • displayValue (:ref:`document<document>`) --

                      The name of the field.

                • allowedFormat (string) --

                  The expected data format for the action review input field value. For example, in PTO request, from and to would be of datetime allowed format.

                • required (boolean) --

                  Information about whether the field is required.

          • payloadFieldNameSeparator (string) --

            A string used to retain information about the hierarchical contexts within an action review payload.

        • actionExecution (dict) --

          Performs an Amazon Q Business plugin action during a non-streaming chat conversation.

          • pluginId (string) --

            The identifier of the plugin the action is attached to.

          • payload (dict) --

            A mapping of field names to the field values in input that an end user provides to Amazon Q Business requests to perform their plugin action.

            • (string) --

              • (dict) --

                A user input field in an plugin action execution payload.

                • value (:ref:`document<document>`) --

                  The content of a user input field in an plugin action execution payload.

          • payloadFieldNameSeparator (string) --

            A string used to retain information about the hierarchical contexts within an action execution event payload.

    • nextToken (string) --

      If the response is truncated, Amazon Q Business returns this token, which you can use in a later request to list the next set of messages.

ListPlugins (updated) Link ¶
Changes (response)
{'plugins': {'buildStatus': 'READY | CREATE_IN_PROGRESS | CREATE_FAILED | '
                            'UPDATE_IN_PROGRESS | UPDATE_FAILED | '
                            'DELETE_IN_PROGRESS | DELETE_FAILED',
             'type': {'CUSTOM'}}}

Lists configured Amazon Q Business plugins.

See also: AWS API Documentation

Request Syntax

client.list_plugins(
    applicationId='string',
    nextToken='string',
    maxResults=123
)
type applicationId:

string

param applicationId:

[REQUIRED]

The identifier of the application the plugin is attached to.

type nextToken:

string

param nextToken:

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.

type maxResults:

integer

param maxResults:

The maximum number of documents to return.

rtype:

dict

returns:

Response Syntax

{
    'nextToken': 'string',
    'plugins': [
        {
            'pluginId': 'string',
            'displayName': 'string',
            'type': 'SERVICE_NOW'|'SALESFORCE'|'JIRA'|'ZENDESK'|'CUSTOM',
            'serverUrl': 'string',
            'state': 'ENABLED'|'DISABLED',
            'buildStatus': 'READY'|'CREATE_IN_PROGRESS'|'CREATE_FAILED'|'UPDATE_IN_PROGRESS'|'UPDATE_FAILED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED',
            'createdAt': datetime(2015, 1, 1),
            'updatedAt': datetime(2015, 1, 1)
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (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.

    • plugins (list) --

      Information about a configured plugin.

      • (dict) --

        Information about an Amazon Q Business plugin and its configuration.

        • pluginId (string) --

          The identifier of the plugin.

        • displayName (string) --

          The name of the plugin.

        • type (string) --

          The type of the plugin.

        • serverUrl (string) --

          The plugin server URL used for configuration.

        • state (string) --

          The current status of the plugin.

        • buildStatus (string) --

          The status of the plugin.

        • createdAt (datetime) --

          The timestamp for when the plugin was created.

        • updatedAt (datetime) --

          The timestamp for when the plugin was last updated.

UpdateApplication (updated) Link ¶
Changes (request)
{'identityCenterInstanceArn': 'string'}

Updates an existing Amazon Q Business application.

See also: AWS API Documentation

Request Syntax

client.update_application(
    applicationId='string',
    identityCenterInstanceArn='string',
    displayName='string',
    description='string',
    roleArn='string',
    attachmentsConfiguration={
        'attachmentsControlMode': 'ENABLED'|'DISABLED'
    }
)
type applicationId:

string

param applicationId:

[REQUIRED]

The identifier of the Amazon Q Business application.

type identityCenterInstanceArn:

string

param identityCenterInstanceArn:

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

type displayName:

string

param displayName:

A name for the Amazon Q Business application.

type description:

string

param description:

A description for the Amazon Q Business application.

type roleArn:

string

param roleArn:

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

type attachmentsConfiguration:

dict

param attachmentsConfiguration:

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

  • attachmentsControlMode (string) -- [REQUIRED]

    Status information about whether file upload functionality is activated or deactivated for your end user.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

UpdatePlugin (updated) Link ¶
Changes (request)
{'authConfiguration': {'noAuthConfiguration': {}},
 'customPluginConfiguration': {'apiSchema': {'payload': 'string',
                                             's3': {'bucket': 'string',
                                                    'key': 'string'}},
                               'apiSchemaType': 'OPEN_API_V3',
                               'description': 'string'}}

Updates an Amazon Q Business plugin.

See also: AWS API Documentation

Request Syntax

client.update_plugin(
    applicationId='string',
    pluginId='string',
    displayName='string',
    state='ENABLED'|'DISABLED',
    serverUrl='string',
    customPluginConfiguration={
        'description': 'string',
        'apiSchemaType': 'OPEN_API_V3',
        'apiSchema': {
            'payload': 'string',
            's3': {
                'bucket': 'string',
                'key': 'string'
            }
        }
    },
    authConfiguration={
        'basicAuthConfiguration': {
            'secretArn': 'string',
            'roleArn': 'string'
        },
        'oAuth2ClientCredentialConfiguration': {
            'secretArn': 'string',
            'roleArn': 'string'
        },
        'noAuthConfiguration': {}

    }
)
type applicationId:

string

param applicationId:

[REQUIRED]

The identifier of the application the plugin is attached to.

type pluginId:

string

param pluginId:

[REQUIRED]

The identifier of the plugin.

type displayName:

string

param displayName:

The name of the plugin.

type state:

string

param state:

The status of the plugin.

type serverUrl:

string

param serverUrl:

The source URL used for plugin configuration.

type customPluginConfiguration:

dict

param customPluginConfiguration:

The configuration for a custom plugin.

  • description (string) -- [REQUIRED]

    A description for your custom plugin configuration.

  • apiSchemaType (string) -- [REQUIRED]

    The type of OpenAPI schema to use.

  • apiSchema (dict) -- [REQUIRED]

    Contains either details about the S3 object containing the OpenAPI schema for the action group or the JSON or YAML-formatted payload defining the schema.

    • payload (string) --

      The JSON or YAML-formatted payload defining the OpenAPI schema for a custom plugin.

    • s3 (dict) --

      Contains details about the S3 object containing the OpenAPI schema for a custom plugin. The schema could be in either JSON or YAML format.

      • bucket (string) -- [REQUIRED]

        The name of the S3 bucket that contains the file.

      • key (string) -- [REQUIRED]

        The name of the file.

type authConfiguration:

dict

param authConfiguration:

The authentication configuration the plugin is using.

  • basicAuthConfiguration (dict) --

    Information about the basic authentication credentials used to configure a plugin.

    • secretArn (string) -- [REQUIRED]

      The ARN of the Secrets Manager secret that stores the basic authentication credentials used for plugin configuration..

    • roleArn (string) -- [REQUIRED]

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

  • oAuth2ClientCredentialConfiguration (dict) --

    Information about the OAuth 2.0 authentication credential/token used to configure a plugin.

    • secretArn (string) -- [REQUIRED]

      The ARN of the Secrets Manager secret that stores the OAuth 2.0 credentials/token used for plugin configuration.

    • roleArn (string) -- [REQUIRED]

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

  • noAuthConfiguration (dict) --

    Information about invoking a custom plugin without any authentication.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

UpdateWebExperience (updated) Link ¶
Changes (request)
{'roleArn': 'string'}

Updates an Amazon Q Business web experience.

See also: AWS API Documentation

Request Syntax

client.update_web_experience(
    applicationId='string',
    webExperienceId='string',
    roleArn='string',
    authenticationConfiguration={
        'samlConfiguration': {
            'metadataXML': 'string',
            'roleArn': 'string',
            'userIdAttribute': 'string',
            'userGroupAttribute': 'string'
        }
    },
    title='string',
    subtitle='string',
    welcomeMessage='string',
    samplePromptsControlMode='ENABLED'|'DISABLED'
)
type applicationId:

string

param applicationId:

[REQUIRED]

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

type webExperienceId:

string

param webExperienceId:

[REQUIRED]

The identifier of the Amazon Q Business web experience.

type roleArn:

string

param roleArn:

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

type authenticationConfiguration:

dict

param authenticationConfiguration:

The authentication configuration of the Amazon Q Business web experience.

  • samlConfiguration (dict) --

    Provides the SAML 2.0 compliant identity provider (IdP) configuration information Amazon Q Business needs to deploy a Amazon Q Business web experience.

    • metadataXML (string) -- [REQUIRED]

      The metadata XML that your IdP generated.

    • roleArn (string) -- [REQUIRED]

      The Amazon Resource Name (ARN) of an IAM role assumed by users when they authenticate into their Amazon Q Business web experience, containing the relevant Amazon Q Business permissions for conversing with Amazon Q Business.

    • userIdAttribute (string) -- [REQUIRED]

      The user attribute name in your IdP that maps to the user email.

    • userGroupAttribute (string) --

      The group attribute name in your IdP that maps to user groups.

type title:

string

param title:

The title of the Amazon Q Business web experience.

type subtitle:

string

param subtitle:

The subtitle of the Amazon Q Business web experience.

type welcomeMessage:

string

param welcomeMessage:

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

type samplePromptsControlMode:

string

param samplePromptsControlMode:

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

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --