QBusiness / Client / update_data_source

update_data_source#

QBusiness.Client.update_data_source(**kwargs)#

Updates an existing Amazon Q Business data source connector.

See also: AWS API Documentation

Request Syntax

response = client.update_data_source(
    applicationId='string',
    indexId='string',
    dataSourceId='string',
    displayName='string',
    configuration={...}|[...]|123|123.4|'string'|True|None,
    vpcConfiguration={
        'subnetIds': [
            'string',
        ],
        'securityGroupIds': [
            'string',
        ]
    },
    description='string',
    syncSchedule='string',
    roleArn='string',
    documentEnrichmentConfiguration={
        'inlineConfigurations': [
            {
                'condition': {
                    'key': 'string',
                    'operator': 'GREATER_THAN'|'GREATER_THAN_OR_EQUALS'|'LESS_THAN'|'LESS_THAN_OR_EQUALS'|'EQUALS'|'NOT_EQUALS'|'CONTAINS'|'NOT_CONTAINS'|'EXISTS'|'NOT_EXISTS'|'BEGINS_WITH',
                    'value': {
                        'stringValue': 'string',
                        'stringListValue': [
                            'string',
                        ],
                        'longValue': 123,
                        'dateValue': datetime(2015, 1, 1)
                    }
                },
                'target': {
                    'key': 'string',
                    'value': {
                        'stringValue': 'string',
                        'stringListValue': [
                            'string',
                        ],
                        'longValue': 123,
                        'dateValue': datetime(2015, 1, 1)
                    },
                    'attributeValueOperator': 'DELETE'
                },
                'documentContentOperator': 'DELETE'
            },
        ],
        'preExtractionHookConfiguration': {
            'invocationCondition': {
                'key': 'string',
                'operator': 'GREATER_THAN'|'GREATER_THAN_OR_EQUALS'|'LESS_THAN'|'LESS_THAN_OR_EQUALS'|'EQUALS'|'NOT_EQUALS'|'CONTAINS'|'NOT_CONTAINS'|'EXISTS'|'NOT_EXISTS'|'BEGINS_WITH',
                'value': {
                    'stringValue': 'string',
                    'stringListValue': [
                        'string',
                    ],
                    'longValue': 123,
                    'dateValue': datetime(2015, 1, 1)
                }
            },
            'lambdaArn': 'string',
            's3BucketName': 'string',
            'roleArn': 'string'
        },
        'postExtractionHookConfiguration': {
            'invocationCondition': {
                'key': 'string',
                'operator': 'GREATER_THAN'|'GREATER_THAN_OR_EQUALS'|'LESS_THAN'|'LESS_THAN_OR_EQUALS'|'EQUALS'|'NOT_EQUALS'|'CONTAINS'|'NOT_CONTAINS'|'EXISTS'|'NOT_EXISTS'|'BEGINS_WITH',
                'value': {
                    'stringValue': 'string',
                    'stringListValue': [
                        'string',
                    ],
                    'longValue': 123,
                    'dateValue': datetime(2015, 1, 1)
                }
            },
            'lambdaArn': 'string',
            's3BucketName': 'string',
            'roleArn': 'string'
        }
    }
)
Parameters:
  • applicationId (string) –

    [REQUIRED]

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

  • indexId (string) –

    [REQUIRED]

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

  • dataSourceId (string) –

    [REQUIRED]

    The identifier of the data source connector.

  • displayName (string) – A name of the data source connector.

  • configuration (document) – Provides the configuration information for an Amazon Q Business data source.

  • vpcConfiguration (dict) –

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

    • subnetIds (list) – [REQUIRED]

      A list of identifiers for subnets within your Amazon VPC. The subnets should be able to connect to each other in the VPC, and they should have outgoing access to the Internet through a NAT device.

      • (string) –

    • securityGroupIds (list) – [REQUIRED]

      A list of identifiers of security groups within your Amazon VPC. The security groups should enable Amazon Q Business to connect to the data source.

      • (string) –

  • description (string) – The description of the data source connector.

  • syncSchedule (string) – The chosen update frequency for your data source.

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

  • documentEnrichmentConfiguration (dict) –

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

    For more information, see Custom document enrichment.

    • inlineConfigurations (list) –

      Configuration information to alter document attributes or metadata fields and content when ingesting documents into Amazon Q Business.

      • (dict) –

        Provides the configuration information for applying basic logic to alter document metadata and content when ingesting documents into Amazon Q Business.

        To apply advanced logic, to go beyond what you can do with basic logic, see HookConfiguration.

        For more information, see Custom document enrichment.

        • condition (dict) –

          The condition used for the target document attribute or metadata field when ingesting documents into Amazon Q Business. You use this with DocumentAttributeTarget to apply the condition.

          For example, you can create the ‘Department’ target field and have it prefill department names associated with the documents based on information in the ‘Source_URI’ field. Set the condition that if the ‘Source_URI’ field contains ‘financial’ in its URI value, then prefill the target field ‘Department’ with the target value ‘Finance’ for the document.

          Amazon Q Business can’t create a target field if it has not already been created as an index field. After you create your index field, you can create a document metadata field using DocumentAttributeTarget. Amazon Q Business then will map your newly created metadata field to your index field.

          • key (string) – [REQUIRED]

            The identifier of the document attribute used for the condition.

            For example, ‘Source_URI’ could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

            Amazon Q Business currently doesn’t support _document_body as an attribute key used for the condition.

          • operator (string) – [REQUIRED]

            The identifier of the document attribute used for the condition.

            For example, ‘Source_URI’ could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

            Amazon Q Business currently does not support _document_body as an attribute key used for the condition.

          • value (dict) –

            The value of a document attribute. You can only provide one value for a document attribute.

            Note

            This is a Tagged Union structure. Only one of the following top level keys can be set: stringValue, stringListValue, longValue, dateValue.

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

        • target (dict) –

          The target document attribute or metadata field you want to alter when ingesting documents into Amazon Q Business.

          For example, you can delete all customer identification numbers associated with the documents, stored in the document metadata field called ‘Customer_ID’ by setting the target key as ‘Customer_ID’ and the deletion flag to TRUE. This removes all customer ID values in the field ‘Customer_ID’. This would scrub personally identifiable information from each document’s metadata.

          Amazon Q Business can’t create a target field if it has not already been created as an index field. After you create your index field, you can create a document metadata field using DocumentAttributeTarget. Amazon Q Business will then map your newly created document attribute to your index field.

          You can also use this with DocumentAttributeCondition.

          • key (string) – [REQUIRED]

            The identifier of the target document attribute or metadata field. For example, ‘Department’ could be an identifier for the target attribute or metadata field that includes the department names associated with the documents.

          • value (dict) –

            The value of a document attribute. You can only provide one value for a document attribute.

            Note

            This is a Tagged Union structure. Only one of the following top level keys can be set: stringValue, stringListValue, longValue, dateValue.

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

          • attributeValueOperator (string) –

            TRUE to delete the existing target value for your specified target attribute key. You cannot create a target value and set this to TRUE.

        • documentContentOperator (string) –

          TRUE to delete content if the condition used for the target attribute is met.

    • preExtractionHookConfiguration (dict) –

      Provides the configuration information for invoking a Lambda function in Lambda to alter document metadata and content when ingesting documents into Amazon Q Business.

      You can configure your Lambda function using the PreExtractionHookConfiguration parameter if you want to apply advanced alterations on the original or raw documents.

      If you want to apply advanced alterations on the Amazon Q Business structured documents, you must configure your Lambda function using PostExtractionHookConfiguration.

      You can only invoke one Lambda function. However, this function can invoke other functions it requires.

      For more information, see Custom document enrichment.

      • invocationCondition (dict) –

        The condition used for when a Lambda function should be invoked.

        For example, you can specify a condition that if there are empty date-time values, then Amazon Q Business should invoke a function that inserts the current date-time.

        • key (string) – [REQUIRED]

          The identifier of the document attribute used for the condition.

          For example, ‘Source_URI’ could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

          Amazon Q Business currently doesn’t support _document_body as an attribute key used for the condition.

        • operator (string) – [REQUIRED]

          The identifier of the document attribute used for the condition.

          For example, ‘Source_URI’ could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

          Amazon Q Business currently does not support _document_body as an attribute key used for the condition.

        • value (dict) –

          The value of a document attribute. You can only provide one value for a document attribute.

          Note

          This is a Tagged Union structure. Only one of the following top level keys can be set: stringValue, stringListValue, longValue, dateValue.

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

      • lambdaArn (string) –

        The Amazon Resource Name (ARN) of a role with permission to run a Lambda function during ingestion. For more information, see IAM roles for Custom Document Enrichment (CDE).

      • s3BucketName (string) –

        Stores the original, raw documents or the structured, parsed documents before and after altering them. For more information, see Data contracts for Lambda functions.

      • roleArn (string) –

        The Amazon Resource Name (ARN) of a role with permission to run PreExtractionHookConfiguration and PostExtractionHookConfiguration for altering document metadata and content during the document ingestion process.

    • postExtractionHookConfiguration (dict) –

      Provides the configuration information for invoking a Lambda function in Lambda to alter document metadata and content when ingesting documents into Amazon Q Business.

      You can configure your Lambda function using the PreExtractionHookConfiguration parameter if you want to apply advanced alterations on the original or raw documents.

      If you want to apply advanced alterations on the Amazon Q Business structured documents, you must configure your Lambda function using PostExtractionHookConfiguration.

      You can only invoke one Lambda function. However, this function can invoke other functions it requires.

      For more information, see Custom document enrichment.

      • invocationCondition (dict) –

        The condition used for when a Lambda function should be invoked.

        For example, you can specify a condition that if there are empty date-time values, then Amazon Q Business should invoke a function that inserts the current date-time.

        • key (string) – [REQUIRED]

          The identifier of the document attribute used for the condition.

          For example, ‘Source_URI’ could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

          Amazon Q Business currently doesn’t support _document_body as an attribute key used for the condition.

        • operator (string) – [REQUIRED]

          The identifier of the document attribute used for the condition.

          For example, ‘Source_URI’ could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

          Amazon Q Business currently does not support _document_body as an attribute key used for the condition.

        • value (dict) –

          The value of a document attribute. You can only provide one value for a document attribute.

          Note

          This is a Tagged Union structure. Only one of the following top level keys can be set: stringValue, stringListValue, longValue, dateValue.

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

      • lambdaArn (string) –

        The Amazon Resource Name (ARN) of a role with permission to run a Lambda function during ingestion. For more information, see IAM roles for Custom Document Enrichment (CDE).

      • s3BucketName (string) –

        Stores the original, raw documents or the structured, parsed documents before and after altering them. For more information, see Data contracts for Lambda functions.

      • roleArn (string) –

        The Amazon Resource Name (ARN) of a role with permission to run PreExtractionHookConfiguration and PostExtractionHookConfiguration for altering document metadata and content during the document ingestion process.

Return type:

dict

Returns:

Response Syntax

{}

Response Structure

  • (dict) –

Exceptions