CreateDataSource
Creates a data source connector for an Amazon Q Business application.
CreateDataSource
is a synchronous operation. The operation returns 200 if
the data source was successfully created. Otherwise, an exception is raised.
Request Syntax
POST /applications/applicationId
/indices/indexId
/datasources HTTP/1.1
Content-type: application/json
{
"clientToken": "string
",
"configuration": JSON value
,
"description": "string
",
"displayName": "string
",
"documentEnrichmentConfiguration": {
"inlineConfigurations": [
{
"condition": {
"key": "string
",
"operator": "string
",
"value": { ... }
},
"documentContentOperator": "string
",
"target": {
"attributeValueOperator": "string
",
"key": "string
",
"value": { ... }
}
}
],
"postExtractionHookConfiguration": {
"invocationCondition": {
"key": "string
",
"operator": "string
",
"value": { ... }
},
"lambdaArn": "string
",
"roleArn": "string
",
"s3BucketName": "string
"
},
"preExtractionHookConfiguration": {
"invocationCondition": {
"key": "string
",
"operator": "string
",
"value": { ... }
},
"lambdaArn": "string
",
"roleArn": "string
",
"s3BucketName": "string
"
}
},
"roleArn": "string
",
"syncSchedule": "string
",
"tags": [
{
"key": "string
",
"value": "string
"
}
],
"vpcConfiguration": {
"securityGroupIds": [ "string
" ],
"subnetIds": [ "string
" ]
}
}
URI Request Parameters
The request uses the following URI parameters.
- applicationId
-
The identifier of the Amazon Q Business application the data source will be attached to.
Length Constraints: Fixed length of 36.
Pattern:
[a-zA-Z0-9][a-zA-Z0-9-]{35}
Required: Yes
- indexId
-
The identifier of the index that you want to use with the data source connector.
Length Constraints: Fixed length of 36.
Pattern:
[a-zA-Z0-9][a-zA-Z0-9-]{35}
Required: Yes
Request Body
The request accepts the following data in JSON format.
- clientToken
-
A token you provide to identify a request to create a data source connector. Multiple calls to the
CreateDataSource
API with the same client token will create only one data source connector.Type: String
Length Constraints: Minimum length of 1. Maximum length of 100.
Required: No
- configuration
-
Configuration information to connect your data source repository to Amazon Q Business. Use this parameter to provide a JSON schema with configuration information specific to your data source connector.
Each data source has a JSON schema provided by Amazon Q Business that you must use. For example, the Amazon S3 and Web Crawler connectors require the following JSON schemas:
You can find configuration templates for your specific data source using the following steps:
-
Navigate to the Supported connectors page in the Amazon Q Business User Guide, and select the data source of your choice.
-
Then, from your specific data source connector page, select Using the API. You will find the JSON schema for your data source, including parameter descriptions, in this section.
Type: JSON value
Required: Yes
-
- description
-
A description for the data source connector.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 1000.
Pattern:
\P{C}*
Required: No
- displayName
-
A name for the data source connector.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1000.
Pattern:
[a-zA-Z0-9][a-zA-Z0-9_-]*
Required: Yes
- documentEnrichmentConfiguration
-
Provides the configuration information for altering document metadata and content during the document ingestion process.
For more information, see Custom document enrichment.
Type: DocumentEnrichmentConfiguration object
Required: No
- roleArn
-
The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 1284.
Pattern:
arn:[a-z0-9-\.]{1,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[^/].{0,1023}
Required: No
- syncSchedule
-
Sets the frequency for Amazon Q Business to check the documents in your data source repository and update your index. If you don't set a schedule, Amazon Q Business won't periodically update the index.
Specify a
cron-
format schedule string or an empty string to indicate that the index is updated on demand. You can't specify theSchedule
parameter when theType
parameter is set toCUSTOM
. If you do, you receive aValidationException
exception.Type: String
Length Constraints: Minimum length of 0. Maximum length of 998.
Pattern:
\P{C}*
Required: No
-
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: _ . : / = + - @.
Type: Array of Tag objects
Array Members: Minimum number of 0 items. Maximum number of 200 items.
Required: No
- vpcConfiguration
-
Configuration information for an Amazon VPC (Virtual Private Cloud) to connect to your data source. For more information, see Using Amazon VPC with Amazon Q Business connectors.
Type: DataSourceVpcConfiguration object
Required: No
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"dataSourceArn": "string",
"dataSourceId": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- dataSourceArn
-
The Amazon Resource Name (ARN) of a data source in an Amazon Q Business application.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 1284.
Pattern:
arn:[a-z0-9-\.]{1,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[^/].{0,1023}
- dataSourceId
-
The identifier of the data source connector.
Type: String
Length Constraints: Fixed length of 36.
Pattern:
[a-zA-Z0-9][a-zA-Z0-9-]{35}
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
You don't have access to perform this action. Make sure you have the required permission policies and user accounts and try again.
HTTP Status Code: 403
- ConflictException
-
You are trying to perform an action that conflicts with the current status of your resource. Fix any inconsistences with your resources and try again.
HTTP Status Code: 409
- InternalServerException
-
An issue occurred with the internal server used for your Amazon Q Business service. Wait some minutes and try again, or contact Support
for help. HTTP Status Code: 500
- ResourceNotFoundException
-
The resource you want to use doesn’t exist. Make sure you have provided the correct resource and try again.
HTTP Status Code: 404
- ServiceQuotaExceededException
-
You have exceeded the set limits for your Amazon Q Business service.
HTTP Status Code: 402
- ThrottlingException
-
The request was denied due to throttling. Reduce the number of requests and try again.
HTTP Status Code: 429
- ValidationException
-
The input doesn't meet the constraints set by the Amazon Q Business service. Provide the correct input and try again.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: