AWS::QBusiness::DataSource HookConfiguration
Provides the configuration information for invoking a Lambda function in AWS 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.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "InvocationCondition" :
DocumentAttributeCondition
, "LambdaArn" :String
, "RoleArn" :String
, "S3BucketName" :String
}
YAML
InvocationCondition:
DocumentAttributeCondition
LambdaArn:String
RoleArn:String
S3BucketName:String
Properties
InvocationCondition
-
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.
Required: No
Type: DocumentAttributeCondition
Update requires: No interruption
LambdaArn
-
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).
Required: No
Type: String
Pattern:
^arn:aws[a-zA-Z-]*:lambda:[a-z-]*-[0-9]:[0-9]{12}:function:[a-zA-Z0-9-_]+(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})?(:[a-zA-Z0-9-_]+)?$
Minimum:
1
Maximum:
2048
Update requires: No interruption
RoleArn
-
The Amazon Resource Name (ARN) of a role with permission to run
PreExtractionHookConfiguration
andPostExtractionHookConfiguration
for altering document metadata and content during the document ingestion process.Required: No
Type: String
Pattern:
^arn:[a-z0-9-\.]{1,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[^/].{0,1023}$
Minimum:
0
Maximum:
1284
Update requires: No interruption
S3BucketName
-
Stores the original, raw documents or the structured, parsed documents before and after altering them. For more information, see Data contracts for Lambda functions.
Required: No
Type: String
Pattern:
^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$
Minimum:
1
Maximum:
63
Update requires: No interruption