CreateDataSource - Amazon Kendra

Amazon Kendra is in preview release. This documentation is subject to change.

CreateDataSource

Creates a data source that you use to with an Amazon Kendra index.

You specify a name, connector type and description for your data source. You can choose between an S3 connector, a SharePoint Online connector, and a database connector.

You also specify configuration information such as document metadata (author, source URI, and so on) and user context information.

CreateDataSource is a synchronous operation. The operation returns 200 if the data source was successfully created. Otherwise, an exception is raised.

Request Syntax

{ "Configuration": { "DatabaseConfiguration": { "AclConfiguration": { "AllowedGroupsColumnName": "string" }, "ColumnConfiguration": { "ChangeDetectingColumns": [ "string" ], "DocumentDataColumnName": "string", "DocumentIdColumnName": "string", "DocumentTitleColumnName": "string", "FieldMappings": [ { "DataSourceFieldName": "string", "DateFieldFormat": "string", "IndexFieldName": "string" } ] }, "ConnectionConfiguration": { "DatabaseHost": "string", "DatabaseName": "string", "DatabasePort": number, "SecretArn": "string", "TableName": "string" }, "DatabaseEngineType": "string", "VpcConfiguration": { "SecurityGroupIds": [ "string" ], "SubnetIds": [ "string" ] } }, "S3Configuration": { "AccessControlListConfiguration": { "KeyPath": "string" }, "BucketName": "string", "DocumentsMetadataConfiguration": { "S3Prefix": "string" }, "ExclusionPatterns": [ "string" ], "InclusionPrefixes": [ "string" ] }, "SharePointConfiguration": { "CrawlAttachments": boolean, "DocumentTitleFieldName": "string", "FieldMappings": [ { "DataSourceFieldName": "string", "DateFieldFormat": "string", "IndexFieldName": "string" } ], "SecretArn": "string", "SharePointVersion": "string", "Urls": [ "string" ], "VpcConfiguration": { "SecurityGroupIds": [ "string" ], "SubnetIds": [ "string" ] } } }, "Description": "string", "IndexId": "string", "Name": "string", "RoleArn": "string", "Schedule": "string", "Type": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

Configuration

The connector configuration information that is required to access the repository.

Type: DataSourceConfiguration object

Required: Yes

Description

A description for the data source.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1000.

Pattern: ^\P{C}*$

Required: No

IndexId

The identifier of the index that should be associated with this data source.

Type: String

Length Constraints: Fixed length of 36.

Pattern: [a-zA-Z0-9][a-zA-Z0-9-]*

Required: Yes

Name

A unique name for the data source. A data source name can't be changed without deleting and recreating the data source.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1000.

Pattern: [a-zA-Z0-9][a-zA-Z0-9_-]*

Required: Yes

RoleArn

The Amazon Resource Name (ARN) of a role with permission to access the data source. For more information, see IAM Roles for Amazon Kendra.

Type: String

Length Constraints: Minimum length of 1. 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: Yes

Schedule

Sets the frequency that Amazon Kendra will check the documents in your repository and update the index. If you don't set a schedule Amazon Kendra will not periodically update the index. You can call the StartDataSourceSyncJob operation to update the index.

Type: String

Required: No

Type

The type of repository that contains the data source.

Type: String

Valid Values: S3 | SHAREPOINT | DATABASE

Required: Yes

Response Syntax

{ "Id": "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.

Id

A unique identifier for the data source.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 100.

Pattern: [a-zA-Z0-9][a-zA-Z0-9_-]*

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

HTTP Status Code: 400

ConflictException

HTTP Status Code: 400

InternalServerException

HTTP Status Code: 500

ResourceAlreadyExistException

HTTP Status Code: 400

ResourceNotFoundException

HTTP Status Code: 400

ServiceQuotaExceededException

HTTP Status Code: 400

ThrottlingException

HTTP Status Code: 400

ValidationException

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: