

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# Amazon Kendra
<a name="AWS_Kendra"></a>

**Resource types**
+ [AWS::Kendra::DataSource](aws-resource-kendra-datasource.md)
+ [AWS::Kendra::Faq](aws-resource-kendra-faq.md)
+ [AWS::Kendra::Index](aws-resource-kendra-index.md)

# AWS::Kendra::DataSource
<a name="aws-resource-kendra-datasource"></a>

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

You specify a name, data source connector type and description for your data source. You also specify configuration information for the data source connector.

**Important**  
`CreateDataSource` does *not* support connectors which [require a `TemplateConfiguration` object ](https://docs.aws.amazon.com/kendra/latest/dg/ds-schemas.html) for connecting to Amazon Kendra.

## Syntax
<a name="aws-resource-kendra-datasource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-kendra-datasource-syntax.json"></a>

```
{
  "Type" : "AWS::Kendra::DataSource",
  "Properties" : {
      "[CustomDocumentEnrichmentConfiguration](#cfn-kendra-datasource-customdocumentenrichmentconfiguration)" : CustomDocumentEnrichmentConfiguration,
      "[DataSourceConfiguration](#cfn-kendra-datasource-datasourceconfiguration)" : DataSourceConfiguration,
      "[Description](#cfn-kendra-datasource-description)" : String,
      "[IndexId](#cfn-kendra-datasource-indexid)" : String,
      "[LanguageCode](#cfn-kendra-datasource-languagecode)" : String,
      "[Name](#cfn-kendra-datasource-name)" : String,
      "[RoleArn](#cfn-kendra-datasource-rolearn)" : String,
      "[Schedule](#cfn-kendra-datasource-schedule)" : String,
      "[Tags](#cfn-kendra-datasource-tags)" : [ Tag, ... ],
      "[Type](#cfn-kendra-datasource-type)" : String
    }
}
```

### YAML
<a name="aws-resource-kendra-datasource-syntax.yaml"></a>

```
Type: AWS::Kendra::DataSource
Properties:
  [CustomDocumentEnrichmentConfiguration](#cfn-kendra-datasource-customdocumentenrichmentconfiguration): 
    CustomDocumentEnrichmentConfiguration
  [DataSourceConfiguration](#cfn-kendra-datasource-datasourceconfiguration): 
    DataSourceConfiguration
  [Description](#cfn-kendra-datasource-description): String
  [IndexId](#cfn-kendra-datasource-indexid): String
  [LanguageCode](#cfn-kendra-datasource-languagecode): String
  [Name](#cfn-kendra-datasource-name): String
  [RoleArn](#cfn-kendra-datasource-rolearn): String
  [Schedule](#cfn-kendra-datasource-schedule): String
  [Tags](#cfn-kendra-datasource-tags): 
    - Tag
  [Type](#cfn-kendra-datasource-type): String
```

## Properties
<a name="aws-resource-kendra-datasource-properties"></a>

`CustomDocumentEnrichmentConfiguration`  <a name="cfn-kendra-datasource-customdocumentenrichmentconfiguration"></a>
Configuration information for altering document metadata and content during the document ingestion process.  
*Required*: No  
*Type*: [CustomDocumentEnrichmentConfiguration](aws-properties-kendra-datasource-customdocumentenrichmentconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DataSourceConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration"></a>
Configuration information for an Amazon Kendra data source. The contents of the configuration depend on the type of data source. You can only specify one type of data source in the configuration.  
You can't specify the `Configuration` parameter when the `Type` parameter is set to `CUSTOM`.  
The `Configuration` parameter is required for all other data sources.  
*Required*: No  
*Type*: [DataSourceConfiguration](aws-properties-kendra-datasource-datasourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-kendra-datasource-description"></a>
A description for the data source connector.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IndexId`  <a name="cfn-kendra-datasource-indexid"></a>
The identifier of the index you want to use with the data source connector.  
*Required*: Yes  
*Type*: String  
*Minimum*: `36`  
*Maximum*: `36`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`LanguageCode`  <a name="cfn-kendra-datasource-languagecode"></a>
The code for a language. This shows a supported language for all documents in the data source. English is supported by default. For more information on supported languages, including their codes, see [Adding documents in languages other than English](https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html).  
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z-]*`  
*Minimum*: `2`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-kendra-datasource-name"></a>
The name of the data source.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoleArn`  <a name="cfn-kendra-datasource-rolearn"></a>
The Amazon Resource Name (ARN) of a role with permission to access the data source.  
You can't specify the `RoleArn` parameter when the `Type` parameter is set to `CUSTOM`.  
The `RoleArn` parameter is required for all other data sources.  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Schedule`  <a name="cfn-kendra-datasource-schedule"></a>
Sets the frequency that Amazon Kendra checks the documents in your data source and updates the index. If you don't set a schedule, Amazon Kendra doesn't periodically update the index.  
*Required*: No  
*Type*: String  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-kendra-datasource-tags"></a>
An array of key-value pairs to apply to this resource  
For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).  
*Required*: No  
*Type*: Array of [Tag](aws-properties-kendra-datasource-tag.md)  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-kendra-datasource-type"></a>
The type of the data source.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `S3 | SHAREPOINT | SALESFORCE | ONEDRIVE | SERVICENOW | DATABASE | CUSTOM | CONFLUENCE | GOOGLEDRIVE | WEBCRAWLER | WORKDOCS | TEMPLATE`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-kendra-datasource-return-values"></a>

### Ref
<a name="aws-resource-kendra-datasource-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the data source ID. For example:

 `{ "Ref": "<data source ID>|<index ID>" }` 

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-kendra-datasource-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-kendra-datasource-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the data source. For example:  
 `arn:aws:kendra:us-west-2:111122223333:index/335c3741-41df-46a6-b5d3-61f85b787884/data-source/b8cae438-6787-4091-8897-684a652bbb0a` 

`Id`  <a name="Id-fn::getatt"></a>
The identifier for the data source. For example:  
`b8cae438-6787-4091-8897-684a652bbb0a`.

# AWS::Kendra::DataSource AccessControlListConfiguration
<a name="aws-properties-kendra-datasource-accesscontrollistconfiguration"></a>

Specifies access control list files for the documents in a data source.

## Syntax
<a name="aws-properties-kendra-datasource-accesscontrollistconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-accesscontrollistconfiguration-syntax.json"></a>

```
{
  "[KeyPath](#cfn-kendra-datasource-accesscontrollistconfiguration-keypath)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-accesscontrollistconfiguration-syntax.yaml"></a>

```
  [KeyPath](#cfn-kendra-datasource-accesscontrollistconfiguration-keypath): String
```

## Properties
<a name="aws-properties-kendra-datasource-accesscontrollistconfiguration-properties"></a>

`KeyPath`  <a name="cfn-kendra-datasource-accesscontrollistconfiguration-keypath"></a>
Path to the AWS S3 bucket that contains the access control list files.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource AclConfiguration
<a name="aws-properties-kendra-datasource-aclconfiguration"></a>

Provides information about the column that should be used for filtering the query response by groups.

## Syntax
<a name="aws-properties-kendra-datasource-aclconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-aclconfiguration-syntax.json"></a>

```
{
  "[AllowedGroupsColumnName](#cfn-kendra-datasource-aclconfiguration-allowedgroupscolumnname)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-aclconfiguration-syntax.yaml"></a>

```
  [AllowedGroupsColumnName](#cfn-kendra-datasource-aclconfiguration-allowedgroupscolumnname): String
```

## Properties
<a name="aws-properties-kendra-datasource-aclconfiguration-properties"></a>

`AllowedGroupsColumnName`  <a name="cfn-kendra-datasource-aclconfiguration-allowedgroupscolumnname"></a>
A list of groups, separated by semi-colons, that filters a query response based on user context. The document is only returned to users that are in one of the groups specified in the `UserContext` field of the [Query](https://docs.aws.amazon.com/kendra/latest/dg/API_Query.html) operation.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ColumnConfiguration
<a name="aws-properties-kendra-datasource-columnconfiguration"></a>

Provides information about how Amazon Kendra should use the columns of a database in an index.

## Syntax
<a name="aws-properties-kendra-datasource-columnconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-columnconfiguration-syntax.json"></a>

```
{
  "[ChangeDetectingColumns](#cfn-kendra-datasource-columnconfiguration-changedetectingcolumns)" : [ String, ... ],
  "[DocumentDataColumnName](#cfn-kendra-datasource-columnconfiguration-documentdatacolumnname)" : String,
  "[DocumentIdColumnName](#cfn-kendra-datasource-columnconfiguration-documentidcolumnname)" : String,
  "[DocumentTitleColumnName](#cfn-kendra-datasource-columnconfiguration-documenttitlecolumnname)" : String,
  "[FieldMappings](#cfn-kendra-datasource-columnconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-columnconfiguration-syntax.yaml"></a>

```
  [ChangeDetectingColumns](#cfn-kendra-datasource-columnconfiguration-changedetectingcolumns): 
    - String
  [DocumentDataColumnName](#cfn-kendra-datasource-columnconfiguration-documentdatacolumnname): String
  [DocumentIdColumnName](#cfn-kendra-datasource-columnconfiguration-documentidcolumnname): String
  [DocumentTitleColumnName](#cfn-kendra-datasource-columnconfiguration-documenttitlecolumnname): String
  [FieldMappings](#cfn-kendra-datasource-columnconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
```

## Properties
<a name="aws-properties-kendra-datasource-columnconfiguration-properties"></a>

`ChangeDetectingColumns`  <a name="cfn-kendra-datasource-columnconfiguration-changedetectingcolumns"></a>
One to five columns that indicate when a document in the database has changed.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentDataColumnName`  <a name="cfn-kendra-datasource-columnconfiguration-documentdatacolumnname"></a>
The column that contains the contents of the document.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentIdColumnName`  <a name="cfn-kendra-datasource-columnconfiguration-documentidcolumnname"></a>
The column that provides the document's identifier.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentTitleColumnName`  <a name="cfn-kendra-datasource-columnconfiguration-documenttitlecolumnname"></a>
The column that contains the title of the document.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-columnconfiguration-fieldmappings"></a>
An array of objects that map database column names to the corresponding fields in an index. You must first create the fields in the index using the [UpdateIndex](https://docs.aws.amazon.com/kendra/latest/dg/API_UpdateIndex.html) operation.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConfluenceAttachmentConfiguration
<a name="aws-properties-kendra-datasource-confluenceattachmentconfiguration"></a>

Configuration of attachment settings for the Confluence data source. Attachment settings are optional, if you don't specify settings attachments, Amazon Kendra won't index them.

## Syntax
<a name="aws-properties-kendra-datasource-confluenceattachmentconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-confluenceattachmentconfiguration-syntax.json"></a>

```
{
  "[AttachmentFieldMappings](#cfn-kendra-datasource-confluenceattachmentconfiguration-attachmentfieldmappings)" : [ ConfluenceAttachmentToIndexFieldMapping, ... ],
  "[CrawlAttachments](#cfn-kendra-datasource-confluenceattachmentconfiguration-crawlattachments)" : Boolean
}
```

### YAML
<a name="aws-properties-kendra-datasource-confluenceattachmentconfiguration-syntax.yaml"></a>

```
  [AttachmentFieldMappings](#cfn-kendra-datasource-confluenceattachmentconfiguration-attachmentfieldmappings): 
    - ConfluenceAttachmentToIndexFieldMapping
  [CrawlAttachments](#cfn-kendra-datasource-confluenceattachmentconfiguration-crawlattachments): Boolean
```

## Properties
<a name="aws-properties-kendra-datasource-confluenceattachmentconfiguration-properties"></a>

`AttachmentFieldMappings`  <a name="cfn-kendra-datasource-confluenceattachmentconfiguration-attachmentfieldmappings"></a>
Maps attributes or field names of Confluence attachments to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Confluence fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Confluence data source field names must exist in your Confluence custom metadata.  
If you specify the `AttachentFieldMappings` parameter, you must specify at least one field mapping.  
*Required*: No  
*Type*: Array of [ConfluenceAttachmentToIndexFieldMapping](aws-properties-kendra-datasource-confluenceattachmenttoindexfieldmapping.md)  
*Minimum*: `1`  
*Maximum*: `11`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CrawlAttachments`  <a name="cfn-kendra-datasource-confluenceattachmentconfiguration-crawlattachments"></a>
`TRUE` to index attachments of pages and blogs in Confluence.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConfluenceAttachmentToIndexFieldMapping
<a name="aws-properties-kendra-datasource-confluenceattachmenttoindexfieldmapping"></a>

Maps attributes or field names of Confluence attachments to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Confluence fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Confuence data source field names must exist in your Confluence custom metadata.

## Syntax
<a name="aws-properties-kendra-datasource-confluenceattachmenttoindexfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-confluenceattachmenttoindexfieldmapping-syntax.json"></a>

```
{
  "[DataSourceFieldName](#cfn-kendra-datasource-confluenceattachmenttoindexfieldmapping-datasourcefieldname)" : String,
  "[DateFieldFormat](#cfn-kendra-datasource-confluenceattachmenttoindexfieldmapping-datefieldformat)" : String,
  "[IndexFieldName](#cfn-kendra-datasource-confluenceattachmenttoindexfieldmapping-indexfieldname)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-confluenceattachmenttoindexfieldmapping-syntax.yaml"></a>

```
  [DataSourceFieldName](#cfn-kendra-datasource-confluenceattachmenttoindexfieldmapping-datasourcefieldname): String
  [DateFieldFormat](#cfn-kendra-datasource-confluenceattachmenttoindexfieldmapping-datefieldformat): String
  [IndexFieldName](#cfn-kendra-datasource-confluenceattachmenttoindexfieldmapping-indexfieldname): String
```

## Properties
<a name="aws-properties-kendra-datasource-confluenceattachmenttoindexfieldmapping-properties"></a>

`DataSourceFieldName`  <a name="cfn-kendra-datasource-confluenceattachmenttoindexfieldmapping-datasourcefieldname"></a>
The name of the field in the data source.   
You must first create the index field using the `UpdateIndex` API.   
*Required*: Yes  
*Type*: String  
*Allowed values*: `AUTHOR | CONTENT_TYPE | CREATED_DATE | DISPLAY_URL | FILE_SIZE | ITEM_TYPE | PARENT_ID | SPACE_KEY | SPACE_NAME | URL | VERSION`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DateFieldFormat`  <a name="cfn-kendra-datasource-confluenceattachmenttoindexfieldmapping-datefieldformat"></a>
The format for date fields in the data source. If the field specified in `DataSourceFieldName` is a date field you must specify the date format. If the field is not a date field, an exception is thrown.  
*Required*: No  
*Type*: String  
*Minimum*: `4`  
*Maximum*: `40`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IndexFieldName`  <a name="cfn-kendra-datasource-confluenceattachmenttoindexfieldmapping-indexfieldname"></a>
The name of the index field to map to the Confluence data source field. The index field type must match the Confluence field type.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `30`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConfluenceBlogConfiguration
<a name="aws-properties-kendra-datasource-confluenceblogconfiguration"></a>

Configuration of blog settings for the Confluence data source. Blogs are always indexed unless filtered from the index by the `ExclusionPatterns` or `InclusionPatterns` fields in the `ConfluenceConfiguration` object.

## Syntax
<a name="aws-properties-kendra-datasource-confluenceblogconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-confluenceblogconfiguration-syntax.json"></a>

```
{
  "[BlogFieldMappings](#cfn-kendra-datasource-confluenceblogconfiguration-blogfieldmappings)" : [ ConfluenceBlogToIndexFieldMapping, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-confluenceblogconfiguration-syntax.yaml"></a>

```
  [BlogFieldMappings](#cfn-kendra-datasource-confluenceblogconfiguration-blogfieldmappings): 
    - ConfluenceBlogToIndexFieldMapping
```

## Properties
<a name="aws-properties-kendra-datasource-confluenceblogconfiguration-properties"></a>

`BlogFieldMappings`  <a name="cfn-kendra-datasource-confluenceblogconfiguration-blogfieldmappings"></a>
Maps attributes or field names of Confluence blogs to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Confluence fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Confluence data source field names must exist in your Confluence custom metadata.  
If you specify the `BlogFieldMappings` parameter, you must specify at least one field mapping.  
*Required*: No  
*Type*: Array of [ConfluenceBlogToIndexFieldMapping](aws-properties-kendra-datasource-confluenceblogtoindexfieldmapping.md)  
*Minimum*: `1`  
*Maximum*: `9`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConfluenceBlogToIndexFieldMapping
<a name="aws-properties-kendra-datasource-confluenceblogtoindexfieldmapping"></a>

Maps attributes or field names of Confluence blog to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Confluence fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Confluence data source field names must exist in your Confluence custom metadata.

## Syntax
<a name="aws-properties-kendra-datasource-confluenceblogtoindexfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-confluenceblogtoindexfieldmapping-syntax.json"></a>

```
{
  "[DataSourceFieldName](#cfn-kendra-datasource-confluenceblogtoindexfieldmapping-datasourcefieldname)" : String,
  "[DateFieldFormat](#cfn-kendra-datasource-confluenceblogtoindexfieldmapping-datefieldformat)" : String,
  "[IndexFieldName](#cfn-kendra-datasource-confluenceblogtoindexfieldmapping-indexfieldname)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-confluenceblogtoindexfieldmapping-syntax.yaml"></a>

```
  [DataSourceFieldName](#cfn-kendra-datasource-confluenceblogtoindexfieldmapping-datasourcefieldname): String
  [DateFieldFormat](#cfn-kendra-datasource-confluenceblogtoindexfieldmapping-datefieldformat): String
  [IndexFieldName](#cfn-kendra-datasource-confluenceblogtoindexfieldmapping-indexfieldname): String
```

## Properties
<a name="aws-properties-kendra-datasource-confluenceblogtoindexfieldmapping-properties"></a>

`DataSourceFieldName`  <a name="cfn-kendra-datasource-confluenceblogtoindexfieldmapping-datasourcefieldname"></a>
The name of the field in the data source.   
*Required*: Yes  
*Type*: String  
*Allowed values*: `AUTHOR | DISPLAY_URL | ITEM_TYPE | LABELS | PUBLISH_DATE | SPACE_KEY | SPACE_NAME | URL | VERSION`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DateFieldFormat`  <a name="cfn-kendra-datasource-confluenceblogtoindexfieldmapping-datefieldformat"></a>
The format for date fields in the data source. If the field specified in `DataSourceFieldName` is a date field you must specify the date format. If the field is not a date field, an exception is thrown.  
*Required*: No  
*Type*: String  
*Minimum*: `4`  
*Maximum*: `40`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IndexFieldName`  <a name="cfn-kendra-datasource-confluenceblogtoindexfieldmapping-indexfieldname"></a>
The name of the index field to map to the Confluence data source field. The index field type must match the Confluence field type.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `30`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConfluenceConfiguration
<a name="aws-properties-kendra-datasource-confluenceconfiguration"></a>

Provides the configuration information to connect to Confluence as your data source.

## Syntax
<a name="aws-properties-kendra-datasource-confluenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-confluenceconfiguration-syntax.json"></a>

```
{
  "[AttachmentConfiguration](#cfn-kendra-datasource-confluenceconfiguration-attachmentconfiguration)" : ConfluenceAttachmentConfiguration,
  "[BlogConfiguration](#cfn-kendra-datasource-confluenceconfiguration-blogconfiguration)" : ConfluenceBlogConfiguration,
  "[ExclusionPatterns](#cfn-kendra-datasource-confluenceconfiguration-exclusionpatterns)" : [ String, ... ],
  "[InclusionPatterns](#cfn-kendra-datasource-confluenceconfiguration-inclusionpatterns)" : [ String, ... ],
  "[PageConfiguration](#cfn-kendra-datasource-confluenceconfiguration-pageconfiguration)" : ConfluencePageConfiguration,
  "[SecretArn](#cfn-kendra-datasource-confluenceconfiguration-secretarn)" : String,
  "[ServerUrl](#cfn-kendra-datasource-confluenceconfiguration-serverurl)" : String,
  "[SpaceConfiguration](#cfn-kendra-datasource-confluenceconfiguration-spaceconfiguration)" : ConfluenceSpaceConfiguration,
  "[Version](#cfn-kendra-datasource-confluenceconfiguration-version)" : String,
  "[VpcConfiguration](#cfn-kendra-datasource-confluenceconfiguration-vpcconfiguration)" : DataSourceVpcConfiguration
}
```

### YAML
<a name="aws-properties-kendra-datasource-confluenceconfiguration-syntax.yaml"></a>

```
  [AttachmentConfiguration](#cfn-kendra-datasource-confluenceconfiguration-attachmentconfiguration): 
    ConfluenceAttachmentConfiguration
  [BlogConfiguration](#cfn-kendra-datasource-confluenceconfiguration-blogconfiguration): 
    ConfluenceBlogConfiguration
  [ExclusionPatterns](#cfn-kendra-datasource-confluenceconfiguration-exclusionpatterns): 
    - String
  [InclusionPatterns](#cfn-kendra-datasource-confluenceconfiguration-inclusionpatterns): 
    - String
  [PageConfiguration](#cfn-kendra-datasource-confluenceconfiguration-pageconfiguration): 
    ConfluencePageConfiguration
  [SecretArn](#cfn-kendra-datasource-confluenceconfiguration-secretarn): String
  [ServerUrl](#cfn-kendra-datasource-confluenceconfiguration-serverurl): String
  [SpaceConfiguration](#cfn-kendra-datasource-confluenceconfiguration-spaceconfiguration): 
    ConfluenceSpaceConfiguration
  [Version](#cfn-kendra-datasource-confluenceconfiguration-version): String
  [VpcConfiguration](#cfn-kendra-datasource-confluenceconfiguration-vpcconfiguration): 
    DataSourceVpcConfiguration
```

## Properties
<a name="aws-properties-kendra-datasource-confluenceconfiguration-properties"></a>

`AttachmentConfiguration`  <a name="cfn-kendra-datasource-confluenceconfiguration-attachmentconfiguration"></a>
Configuration information for indexing attachments to Confluence blogs and pages.  
*Required*: No  
*Type*: [ConfluenceAttachmentConfiguration](aws-properties-kendra-datasource-confluenceattachmentconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BlogConfiguration`  <a name="cfn-kendra-datasource-confluenceconfiguration-blogconfiguration"></a>
Configuration information for indexing Confluence blogs.  
*Required*: No  
*Type*: [ConfluenceBlogConfiguration](aws-properties-kendra-datasource-confluenceblogconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExclusionPatterns`  <a name="cfn-kendra-datasource-confluenceconfiguration-exclusionpatterns"></a>
A list of regular expression patterns to exclude certain blog posts, pages, spaces, or attachments in your Confluence. Content that matches the patterns are excluded from the index. Content that doesn't match the patterns is included in the index. If content matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the content isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionPatterns`  <a name="cfn-kendra-datasource-confluenceconfiguration-inclusionpatterns"></a>
A list of regular expression patterns to include certain blog posts, pages, spaces, or attachments in your Confluence. Content that matches the patterns are included in the index. Content that doesn't match the patterns is excluded from the index. If content matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the content isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PageConfiguration`  <a name="cfn-kendra-datasource-confluenceconfiguration-pageconfiguration"></a>
Configuration information for indexing Confluence pages.  
*Required*: No  
*Type*: [ConfluencePageConfiguration](aws-properties-kendra-datasource-confluencepageconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretArn`  <a name="cfn-kendra-datasource-confluenceconfiguration-secretarn"></a>
The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that contains the user name and password required to connect to the Confluence instance. If you use Confluence Cloud, you use a generated API token as the password.  
You can also provide authentication credentials in the form of a personal access token. For more information, see [Using a Confluence data source](https://docs.aws.amazon.com/kendra/latest/dg/data-source-confluence.html).  
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ServerUrl`  <a name="cfn-kendra-datasource-confluenceconfiguration-serverurl"></a>
The URL of your Confluence instance. Use the full URL of the server. For example, *https://server.example.com:port/*. You can also use an IP address, for example, *https://192.168.1.113/*.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(https?|ftp|file)://([^\s]*)`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SpaceConfiguration`  <a name="cfn-kendra-datasource-confluenceconfiguration-spaceconfiguration"></a>
Configuration information for indexing Confluence spaces.  
*Required*: No  
*Type*: [ConfluenceSpaceConfiguration](aws-properties-kendra-datasource-confluencespaceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Version`  <a name="cfn-kendra-datasource-confluenceconfiguration-version"></a>
The version or the type of Confluence installation to connect to.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `CLOUD | SERVER`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`VpcConfiguration`  <a name="cfn-kendra-datasource-confluenceconfiguration-vpcconfiguration"></a>
Configuration information for an Amazon Virtual Private Cloud to connect to your Confluence. For more information, see [Configuring a VPC](https://docs.aws.amazon.com/kendra/latest/dg/vpc-configuration.html).  
*Required*: No  
*Type*: [DataSourceVpcConfiguration](aws-properties-kendra-datasource-datasourcevpcconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConfluencePageConfiguration
<a name="aws-properties-kendra-datasource-confluencepageconfiguration"></a>

Configuration of the page settings for the Confluence data source.

## Syntax
<a name="aws-properties-kendra-datasource-confluencepageconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-confluencepageconfiguration-syntax.json"></a>

```
{
  "[PageFieldMappings](#cfn-kendra-datasource-confluencepageconfiguration-pagefieldmappings)" : [ ConfluencePageToIndexFieldMapping, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-confluencepageconfiguration-syntax.yaml"></a>

```
  [PageFieldMappings](#cfn-kendra-datasource-confluencepageconfiguration-pagefieldmappings): 
    - ConfluencePageToIndexFieldMapping
```

## Properties
<a name="aws-properties-kendra-datasource-confluencepageconfiguration-properties"></a>

`PageFieldMappings`  <a name="cfn-kendra-datasource-confluencepageconfiguration-pagefieldmappings"></a>
Maps attributes or field names of Confluence pages to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Confluence fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Confluence data source field names must exist in your Confluence custom metadata.  
If you specify the `PageFieldMappings` parameter, you must specify at least one field mapping.  
*Required*: No  
*Type*: Array of [ConfluencePageToIndexFieldMapping](aws-properties-kendra-datasource-confluencepagetoindexfieldmapping.md)  
*Minimum*: `1`  
*Maximum*: `12`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConfluencePageToIndexFieldMapping
<a name="aws-properties-kendra-datasource-confluencepagetoindexfieldmapping"></a>

Maps attributes or field names of Confluence pages to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Confluence fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Confluence data source field names must exist in your Confluence custom metadata.

## Syntax
<a name="aws-properties-kendra-datasource-confluencepagetoindexfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-confluencepagetoindexfieldmapping-syntax.json"></a>

```
{
  "[DataSourceFieldName](#cfn-kendra-datasource-confluencepagetoindexfieldmapping-datasourcefieldname)" : String,
  "[DateFieldFormat](#cfn-kendra-datasource-confluencepagetoindexfieldmapping-datefieldformat)" : String,
  "[IndexFieldName](#cfn-kendra-datasource-confluencepagetoindexfieldmapping-indexfieldname)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-confluencepagetoindexfieldmapping-syntax.yaml"></a>

```
  [DataSourceFieldName](#cfn-kendra-datasource-confluencepagetoindexfieldmapping-datasourcefieldname): String
  [DateFieldFormat](#cfn-kendra-datasource-confluencepagetoindexfieldmapping-datefieldformat): String
  [IndexFieldName](#cfn-kendra-datasource-confluencepagetoindexfieldmapping-indexfieldname): String
```

## Properties
<a name="aws-properties-kendra-datasource-confluencepagetoindexfieldmapping-properties"></a>

`DataSourceFieldName`  <a name="cfn-kendra-datasource-confluencepagetoindexfieldmapping-datasourcefieldname"></a>
The name of the field in the data source.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `AUTHOR | CONTENT_STATUS | CREATED_DATE | DISPLAY_URL | ITEM_TYPE | LABELS | MODIFIED_DATE | PARENT_ID | SPACE_KEY | SPACE_NAME | URL | VERSION`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DateFieldFormat`  <a name="cfn-kendra-datasource-confluencepagetoindexfieldmapping-datefieldformat"></a>
The format for date fields in the data source. If the field specified in `DataSourceFieldName` is a date field you must specify the date format. If the field is not a date field, an exception is thrown.  
*Required*: No  
*Type*: String  
*Minimum*: `4`  
*Maximum*: `40`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IndexFieldName`  <a name="cfn-kendra-datasource-confluencepagetoindexfieldmapping-indexfieldname"></a>
The name of the index field to map to the Confluence data source field. The index field type must match the Confluence field type.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `30`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConfluenceSpaceConfiguration
<a name="aws-properties-kendra-datasource-confluencespaceconfiguration"></a>

Configuration information for indexing Confluence spaces.

## Syntax
<a name="aws-properties-kendra-datasource-confluencespaceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-confluencespaceconfiguration-syntax.json"></a>

```
{
  "[CrawlArchivedSpaces](#cfn-kendra-datasource-confluencespaceconfiguration-crawlarchivedspaces)" : Boolean,
  "[CrawlPersonalSpaces](#cfn-kendra-datasource-confluencespaceconfiguration-crawlpersonalspaces)" : Boolean,
  "[ExcludeSpaces](#cfn-kendra-datasource-confluencespaceconfiguration-excludespaces)" : [ String, ... ],
  "[IncludeSpaces](#cfn-kendra-datasource-confluencespaceconfiguration-includespaces)" : [ String, ... ],
  "[SpaceFieldMappings](#cfn-kendra-datasource-confluencespaceconfiguration-spacefieldmappings)" : [ ConfluenceSpaceToIndexFieldMapping, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-confluencespaceconfiguration-syntax.yaml"></a>

```
  [CrawlArchivedSpaces](#cfn-kendra-datasource-confluencespaceconfiguration-crawlarchivedspaces): Boolean
  [CrawlPersonalSpaces](#cfn-kendra-datasource-confluencespaceconfiguration-crawlpersonalspaces): Boolean
  [ExcludeSpaces](#cfn-kendra-datasource-confluencespaceconfiguration-excludespaces): 
    - String
  [IncludeSpaces](#cfn-kendra-datasource-confluencespaceconfiguration-includespaces): 
    - String
  [SpaceFieldMappings](#cfn-kendra-datasource-confluencespaceconfiguration-spacefieldmappings): 
    - ConfluenceSpaceToIndexFieldMapping
```

## Properties
<a name="aws-properties-kendra-datasource-confluencespaceconfiguration-properties"></a>

`CrawlArchivedSpaces`  <a name="cfn-kendra-datasource-confluencespaceconfiguration-crawlarchivedspaces"></a>
`TRUE` to index archived spaces.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CrawlPersonalSpaces`  <a name="cfn-kendra-datasource-confluencespaceconfiguration-crawlpersonalspaces"></a>
`TRUE` to index personal spaces. You can add restrictions to items in personal spaces. If personal spaces are indexed, queries without user context information may return restricted items from a personal space in their results. For more information, see [Filtering on user context](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html).  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExcludeSpaces`  <a name="cfn-kendra-datasource-confluencespaceconfiguration-excludespaces"></a>
A list of space keys of Confluence spaces. If you include a key, the blogs, documents, and attachments in the space are not indexed. If a space is in both the `ExcludeSpaces` and the `IncludeSpaces` list, the space is excluded.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeSpaces`  <a name="cfn-kendra-datasource-confluencespaceconfiguration-includespaces"></a>
A list of space keys for Confluence spaces. If you include a key, the blogs, documents, and attachments in the space are indexed. Spaces that aren't in the list aren't indexed. A space in the list must exist. Otherwise, Amazon Kendra logs an error when the data source is synchronized. If a space is in both the `IncludeSpaces` and the `ExcludeSpaces` list, the space is excluded.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SpaceFieldMappings`  <a name="cfn-kendra-datasource-confluencespaceconfiguration-spacefieldmappings"></a>
Maps attributes or field names of Confluence spaces to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Confluence fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Confluence data source field names must exist in your Confluence custom metadata.  
If you specify the `SpaceFieldMappings` parameter, you must specify at least one field mapping.  
*Required*: No  
*Type*: Array of [ConfluenceSpaceToIndexFieldMapping](aws-properties-kendra-datasource-confluencespacetoindexfieldmapping.md)  
*Minimum*: `1`  
*Maximum*: `4`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConfluenceSpaceToIndexFieldMapping
<a name="aws-properties-kendra-datasource-confluencespacetoindexfieldmapping"></a>

Maps attributes or field names of Confluence spaces to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Confluence fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Confluence data source field names must exist in your Confluence custom metadata.

## Syntax
<a name="aws-properties-kendra-datasource-confluencespacetoindexfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-confluencespacetoindexfieldmapping-syntax.json"></a>

```
{
  "[DataSourceFieldName](#cfn-kendra-datasource-confluencespacetoindexfieldmapping-datasourcefieldname)" : String,
  "[DateFieldFormat](#cfn-kendra-datasource-confluencespacetoindexfieldmapping-datefieldformat)" : String,
  "[IndexFieldName](#cfn-kendra-datasource-confluencespacetoindexfieldmapping-indexfieldname)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-confluencespacetoindexfieldmapping-syntax.yaml"></a>

```
  [DataSourceFieldName](#cfn-kendra-datasource-confluencespacetoindexfieldmapping-datasourcefieldname): String
  [DateFieldFormat](#cfn-kendra-datasource-confluencespacetoindexfieldmapping-datefieldformat): String
  [IndexFieldName](#cfn-kendra-datasource-confluencespacetoindexfieldmapping-indexfieldname): String
```

## Properties
<a name="aws-properties-kendra-datasource-confluencespacetoindexfieldmapping-properties"></a>

`DataSourceFieldName`  <a name="cfn-kendra-datasource-confluencespacetoindexfieldmapping-datasourcefieldname"></a>
The name of the field in the data source.   
*Required*: Yes  
*Type*: String  
*Allowed values*: `DISPLAY_URL | ITEM_TYPE | SPACE_KEY | URL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DateFieldFormat`  <a name="cfn-kendra-datasource-confluencespacetoindexfieldmapping-datefieldformat"></a>
The format for date fields in the data source. If the field specified in `DataSourceFieldName` is a date field you must specify the date format. If the field is not a date field, an exception is thrown.  
*Required*: No  
*Type*: String  
*Minimum*: `4`  
*Maximum*: `40`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IndexFieldName`  <a name="cfn-kendra-datasource-confluencespacetoindexfieldmapping-indexfieldname"></a>
The name of the index field to map to the Confluence data source field. The index field type must match the Confluence field type.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `30`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ConnectionConfiguration
<a name="aws-properties-kendra-datasource-connectionconfiguration"></a>

Provides the configuration information that's required to connect to a database.

## Syntax
<a name="aws-properties-kendra-datasource-connectionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-connectionconfiguration-syntax.json"></a>

```
{
  "[DatabaseHost](#cfn-kendra-datasource-connectionconfiguration-databasehost)" : String,
  "[DatabaseName](#cfn-kendra-datasource-connectionconfiguration-databasename)" : String,
  "[DatabasePort](#cfn-kendra-datasource-connectionconfiguration-databaseport)" : Integer,
  "[SecretArn](#cfn-kendra-datasource-connectionconfiguration-secretarn)" : String,
  "[TableName](#cfn-kendra-datasource-connectionconfiguration-tablename)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-connectionconfiguration-syntax.yaml"></a>

```
  [DatabaseHost](#cfn-kendra-datasource-connectionconfiguration-databasehost): String
  [DatabaseName](#cfn-kendra-datasource-connectionconfiguration-databasename): String
  [DatabasePort](#cfn-kendra-datasource-connectionconfiguration-databaseport): Integer
  [SecretArn](#cfn-kendra-datasource-connectionconfiguration-secretarn): String
  [TableName](#cfn-kendra-datasource-connectionconfiguration-tablename): String
```

## Properties
<a name="aws-properties-kendra-datasource-connectionconfiguration-properties"></a>

`DatabaseHost`  <a name="cfn-kendra-datasource-connectionconfiguration-databasehost"></a>
The name of the host for the database. Can be either a string (host.subdomain.domain.tld) or an IPv4 or IPv6 address.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `253`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DatabaseName`  <a name="cfn-kendra-datasource-connectionconfiguration-databasename"></a>
The name of the database containing the document data.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DatabasePort`  <a name="cfn-kendra-datasource-connectionconfiguration-databaseport"></a>
The port that the database uses for connections.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `65535`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretArn`  <a name="cfn-kendra-datasource-connectionconfiguration-secretarn"></a>
The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that stores the credentials. The credentials should be a user-password pair. For more information, see [Using a Database Data Source](https://docs.aws.amazon.com/kendra/latest/dg/data-source-database.html). For more information about AWS Secrets Manager, see [ What Is AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) in the * AWS Secrets Manager * user guide.  
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TableName`  <a name="cfn-kendra-datasource-connectionconfiguration-tablename"></a>
The name of the table that contains the document data.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource CustomDocumentEnrichmentConfiguration
<a name="aws-properties-kendra-datasource-customdocumentenrichmentconfiguration"></a>

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

For more information, see [Customizing document metadata during the ingestion process](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html).

## Syntax
<a name="aws-properties-kendra-datasource-customdocumentenrichmentconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-customdocumentenrichmentconfiguration-syntax.json"></a>

```
{
  "[InlineConfigurations](#cfn-kendra-datasource-customdocumentenrichmentconfiguration-inlineconfigurations)" : [ InlineCustomDocumentEnrichmentConfiguration, ... ],
  "[PostExtractionHookConfiguration](#cfn-kendra-datasource-customdocumentenrichmentconfiguration-postextractionhookconfiguration)" : HookConfiguration,
  "[PreExtractionHookConfiguration](#cfn-kendra-datasource-customdocumentenrichmentconfiguration-preextractionhookconfiguration)" : HookConfiguration,
  "[RoleArn](#cfn-kendra-datasource-customdocumentenrichmentconfiguration-rolearn)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-customdocumentenrichmentconfiguration-syntax.yaml"></a>

```
  [InlineConfigurations](#cfn-kendra-datasource-customdocumentenrichmentconfiguration-inlineconfigurations): 
    - InlineCustomDocumentEnrichmentConfiguration
  [PostExtractionHookConfiguration](#cfn-kendra-datasource-customdocumentenrichmentconfiguration-postextractionhookconfiguration): 
    HookConfiguration
  [PreExtractionHookConfiguration](#cfn-kendra-datasource-customdocumentenrichmentconfiguration-preextractionhookconfiguration): 
    HookConfiguration
  [RoleArn](#cfn-kendra-datasource-customdocumentenrichmentconfiguration-rolearn): String
```

## Properties
<a name="aws-properties-kendra-datasource-customdocumentenrichmentconfiguration-properties"></a>

`InlineConfigurations`  <a name="cfn-kendra-datasource-customdocumentenrichmentconfiguration-inlineconfigurations"></a>
Configuration information to alter document attributes or metadata fields and content when ingesting documents into Amazon Kendra.  
*Required*: No  
*Type*: Array of [InlineCustomDocumentEnrichmentConfiguration](aws-properties-kendra-datasource-inlinecustomdocumentenrichmentconfiguration.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PostExtractionHookConfiguration`  <a name="cfn-kendra-datasource-customdocumentenrichmentconfiguration-postextractionhookconfiguration"></a>
Configuration information for invoking a Lambda function in AWS Lambda on the structured documents with their metadata and text extracted. You can use a Lambda function to apply advanced logic for creating, modifying, or deleting document metadata and content. For more information, see [Advanced data manipulation](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html#advanced-data-manipulation).  
*Required*: No  
*Type*: [HookConfiguration](aws-properties-kendra-datasource-hookconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PreExtractionHookConfiguration`  <a name="cfn-kendra-datasource-customdocumentenrichmentconfiguration-preextractionhookconfiguration"></a>
Configuration information for invoking a Lambda function in AWS Lambda on the original or raw documents before extracting their metadata and text. You can use a Lambda function to apply advanced logic for creating, modifying, or deleting document metadata and content. For more information, see [Advanced data manipulation](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html#advanced-data-manipulation).  
*Required*: No  
*Type*: [HookConfiguration](aws-properties-kendra-datasource-hookconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoleArn`  <a name="cfn-kendra-datasource-customdocumentenrichmentconfiguration-rolearn"></a>
The Amazon Resource Name (ARN) of an IAM role with permission to run `PreExtractionHookConfiguration` and `PostExtractionHookConfiguration` for altering document metadata and content during the document ingestion process. For more information, see [an IAM roles for Amazon Kendra](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html).  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource DatabaseConfiguration
<a name="aws-properties-kendra-datasource-databaseconfiguration"></a>

Provides the configuration information to an [Amazon Kendra supported database](https://docs.aws.amazon.com/kendra/latest/dg/data-source-database.html).

## Syntax
<a name="aws-properties-kendra-datasource-databaseconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-databaseconfiguration-syntax.json"></a>

```
{
  "[AclConfiguration](#cfn-kendra-datasource-databaseconfiguration-aclconfiguration)" : AclConfiguration,
  "[ColumnConfiguration](#cfn-kendra-datasource-databaseconfiguration-columnconfiguration)" : ColumnConfiguration,
  "[ConnectionConfiguration](#cfn-kendra-datasource-databaseconfiguration-connectionconfiguration)" : ConnectionConfiguration,
  "[DatabaseEngineType](#cfn-kendra-datasource-databaseconfiguration-databaseenginetype)" : String,
  "[SqlConfiguration](#cfn-kendra-datasource-databaseconfiguration-sqlconfiguration)" : SqlConfiguration,
  "[VpcConfiguration](#cfn-kendra-datasource-databaseconfiguration-vpcconfiguration)" : DataSourceVpcConfiguration
}
```

### YAML
<a name="aws-properties-kendra-datasource-databaseconfiguration-syntax.yaml"></a>

```
  [AclConfiguration](#cfn-kendra-datasource-databaseconfiguration-aclconfiguration): 
    AclConfiguration
  [ColumnConfiguration](#cfn-kendra-datasource-databaseconfiguration-columnconfiguration): 
    ColumnConfiguration
  [ConnectionConfiguration](#cfn-kendra-datasource-databaseconfiguration-connectionconfiguration): 
    ConnectionConfiguration
  [DatabaseEngineType](#cfn-kendra-datasource-databaseconfiguration-databaseenginetype): String
  [SqlConfiguration](#cfn-kendra-datasource-databaseconfiguration-sqlconfiguration): 
    SqlConfiguration
  [VpcConfiguration](#cfn-kendra-datasource-databaseconfiguration-vpcconfiguration): 
    DataSourceVpcConfiguration
```

## Properties
<a name="aws-properties-kendra-datasource-databaseconfiguration-properties"></a>

`AclConfiguration`  <a name="cfn-kendra-datasource-databaseconfiguration-aclconfiguration"></a>
Information about the database column that provides information for user context filtering.  
*Required*: No  
*Type*: [AclConfiguration](aws-properties-kendra-datasource-aclconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ColumnConfiguration`  <a name="cfn-kendra-datasource-databaseconfiguration-columnconfiguration"></a>
Information about where the index should get the document information from the database.  
*Required*: Yes  
*Type*: [ColumnConfiguration](aws-properties-kendra-datasource-columnconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ConnectionConfiguration`  <a name="cfn-kendra-datasource-databaseconfiguration-connectionconfiguration"></a>
Configuration information that's required to connect to a database.  
*Required*: Yes  
*Type*: [ConnectionConfiguration](aws-properties-kendra-datasource-connectionconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DatabaseEngineType`  <a name="cfn-kendra-datasource-databaseconfiguration-databaseenginetype"></a>
The type of database engine that runs the database.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `RDS_AURORA_MYSQL | RDS_AURORA_POSTGRESQL | RDS_MYSQL | RDS_POSTGRESQL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SqlConfiguration`  <a name="cfn-kendra-datasource-databaseconfiguration-sqlconfiguration"></a>
Provides information about how Amazon Kendra uses quote marks around SQL identifiers when querying a database data source.  
*Required*: No  
*Type*: [SqlConfiguration](aws-properties-kendra-datasource-sqlconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`VpcConfiguration`  <a name="cfn-kendra-datasource-databaseconfiguration-vpcconfiguration"></a>
Provides information for connecting to an Amazon VPC.  
*Required*: No  
*Type*: [DataSourceVpcConfiguration](aws-properties-kendra-datasource-datasourcevpcconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource DataSourceConfiguration
<a name="aws-properties-kendra-datasource-datasourceconfiguration"></a>

Provides the configuration information for an Amazon Kendra data source.

## Syntax
<a name="aws-properties-kendra-datasource-datasourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-datasourceconfiguration-syntax.json"></a>

```
{
  "[ConfluenceConfiguration](#cfn-kendra-datasource-datasourceconfiguration-confluenceconfiguration)" : ConfluenceConfiguration,
  "[DatabaseConfiguration](#cfn-kendra-datasource-datasourceconfiguration-databaseconfiguration)" : DatabaseConfiguration,
  "[GoogleDriveConfiguration](#cfn-kendra-datasource-datasourceconfiguration-googledriveconfiguration)" : GoogleDriveConfiguration,
  "[OneDriveConfiguration](#cfn-kendra-datasource-datasourceconfiguration-onedriveconfiguration)" : OneDriveConfiguration,
  "[S3Configuration](#cfn-kendra-datasource-datasourceconfiguration-s3configuration)" : S3DataSourceConfiguration,
  "[SalesforceConfiguration](#cfn-kendra-datasource-datasourceconfiguration-salesforceconfiguration)" : SalesforceConfiguration,
  "[ServiceNowConfiguration](#cfn-kendra-datasource-datasourceconfiguration-servicenowconfiguration)" : ServiceNowConfiguration,
  "[SharePointConfiguration](#cfn-kendra-datasource-datasourceconfiguration-sharepointconfiguration)" : SharePointConfiguration,
  "[TemplateConfiguration](#cfn-kendra-datasource-datasourceconfiguration-templateconfiguration)" : TemplateConfiguration,
  "[WebCrawlerConfiguration](#cfn-kendra-datasource-datasourceconfiguration-webcrawlerconfiguration)" : WebCrawlerConfiguration,
  "[WorkDocsConfiguration](#cfn-kendra-datasource-datasourceconfiguration-workdocsconfiguration)" : WorkDocsConfiguration
}
```

### YAML
<a name="aws-properties-kendra-datasource-datasourceconfiguration-syntax.yaml"></a>

```
  [ConfluenceConfiguration](#cfn-kendra-datasource-datasourceconfiguration-confluenceconfiguration): 
    ConfluenceConfiguration
  [DatabaseConfiguration](#cfn-kendra-datasource-datasourceconfiguration-databaseconfiguration): 
    DatabaseConfiguration
  [GoogleDriveConfiguration](#cfn-kendra-datasource-datasourceconfiguration-googledriveconfiguration): 
    GoogleDriveConfiguration
  [OneDriveConfiguration](#cfn-kendra-datasource-datasourceconfiguration-onedriveconfiguration): 
    OneDriveConfiguration
  [S3Configuration](#cfn-kendra-datasource-datasourceconfiguration-s3configuration): 
    S3DataSourceConfiguration
  [SalesforceConfiguration](#cfn-kendra-datasource-datasourceconfiguration-salesforceconfiguration): 
    SalesforceConfiguration
  [ServiceNowConfiguration](#cfn-kendra-datasource-datasourceconfiguration-servicenowconfiguration): 
    ServiceNowConfiguration
  [SharePointConfiguration](#cfn-kendra-datasource-datasourceconfiguration-sharepointconfiguration): 
    SharePointConfiguration
  [TemplateConfiguration](#cfn-kendra-datasource-datasourceconfiguration-templateconfiguration): 
    TemplateConfiguration
  [WebCrawlerConfiguration](#cfn-kendra-datasource-datasourceconfiguration-webcrawlerconfiguration): 
    WebCrawlerConfiguration
  [WorkDocsConfiguration](#cfn-kendra-datasource-datasourceconfiguration-workdocsconfiguration): 
    WorkDocsConfiguration
```

## Properties
<a name="aws-properties-kendra-datasource-datasourceconfiguration-properties"></a>

`ConfluenceConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-confluenceconfiguration"></a>
Provides the configuration information to connect to Confluence as your data source.  
*Required*: No  
*Type*: [ConfluenceConfiguration](aws-properties-kendra-datasource-confluenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DatabaseConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-databaseconfiguration"></a>
Provides the configuration information to connect to a database as your data source.  
*Required*: No  
*Type*: [DatabaseConfiguration](aws-properties-kendra-datasource-databaseconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GoogleDriveConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-googledriveconfiguration"></a>
Provides the configuration information to connect to Google Drive as your data source.  
*Required*: No  
*Type*: [GoogleDriveConfiguration](aws-properties-kendra-datasource-googledriveconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OneDriveConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-onedriveconfiguration"></a>
Provides the configuration information to connect to Microsoft OneDrive as your data source.  
*Required*: No  
*Type*: [OneDriveConfiguration](aws-properties-kendra-datasource-onedriveconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3Configuration`  <a name="cfn-kendra-datasource-datasourceconfiguration-s3configuration"></a>
Provides the configuration information to connect to an Amazon S3 bucket as your data source.  
Amazon Kendra now supports an upgraded Amazon S3 connector.  
You must now use the [TemplateConfiguration](https://docs.aws.amazon.com/kendra/latest/APIReference/API_TemplateConfiguration.html) object instead of the `S3DataSourceConfiguration` object to configure your connector.  
Connectors configured using the older console and API architecture will continue to function as configured. However, you won't be able to edit or update them. If you want to edit or update your connector configuration, you must create a new connector.  
We recommended migrating your connector workflow to the upgraded version. Support for connectors configured using the older architecture is scheduled to end by June 2024.
*Required*: No  
*Type*: [S3DataSourceConfiguration](aws-properties-kendra-datasource-s3datasourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SalesforceConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-salesforceconfiguration"></a>
Provides the configuration information to connect to Salesforce as your data source.  
*Required*: No  
*Type*: [SalesforceConfiguration](aws-properties-kendra-datasource-salesforceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ServiceNowConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-servicenowconfiguration"></a>
Provides the configuration information to connect to ServiceNow as your data source.  
*Required*: No  
*Type*: [ServiceNowConfiguration](aws-properties-kendra-datasource-servicenowconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SharePointConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-sharepointconfiguration"></a>
Provides the configuration information to connect to Microsoft SharePoint as your data source.  
*Required*: No  
*Type*: [SharePointConfiguration](aws-properties-kendra-datasource-sharepointconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TemplateConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-templateconfiguration"></a>
Provides a template for the configuration information to connect to your data source.  
*Required*: No  
*Type*: [TemplateConfiguration](aws-properties-kendra-datasource-templateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`WebCrawlerConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-webcrawlerconfiguration"></a>
Provides the configuration information required for Amazon Kendra Web Crawler.  
*Required*: No  
*Type*: [WebCrawlerConfiguration](aws-properties-kendra-datasource-webcrawlerconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`WorkDocsConfiguration`  <a name="cfn-kendra-datasource-datasourceconfiguration-workdocsconfiguration"></a>
Provides the configuration information to connect to WorkDocs as your data source.  
*Required*: No  
*Type*: [WorkDocsConfiguration](aws-properties-kendra-datasource-workdocsconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource DataSourceToIndexFieldMapping
<a name="aws-properties-kendra-datasource-datasourcetoindexfieldmapping"></a>

Maps a column or attribute in the data source to an index field. You must first create the fields in the index using the [UpdateIndex](https://docs.aws.amazon.com/kendra/latest/dg/API_UpdateIndex.html) operation.

## Syntax
<a name="aws-properties-kendra-datasource-datasourcetoindexfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-datasourcetoindexfieldmapping-syntax.json"></a>

```
{
  "[DataSourceFieldName](#cfn-kendra-datasource-datasourcetoindexfieldmapping-datasourcefieldname)" : String,
  "[DateFieldFormat](#cfn-kendra-datasource-datasourcetoindexfieldmapping-datefieldformat)" : String,
  "[IndexFieldName](#cfn-kendra-datasource-datasourcetoindexfieldmapping-indexfieldname)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-datasourcetoindexfieldmapping-syntax.yaml"></a>

```
  [DataSourceFieldName](#cfn-kendra-datasource-datasourcetoindexfieldmapping-datasourcefieldname): String
  [DateFieldFormat](#cfn-kendra-datasource-datasourcetoindexfieldmapping-datefieldformat): String
  [IndexFieldName](#cfn-kendra-datasource-datasourcetoindexfieldmapping-indexfieldname): String
```

## Properties
<a name="aws-properties-kendra-datasource-datasourcetoindexfieldmapping-properties"></a>

`DataSourceFieldName`  <a name="cfn-kendra-datasource-datasourcetoindexfieldmapping-datasourcefieldname"></a>
The name of the field in the data source. You must first create the index field using the `UpdateIndex` API.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DateFieldFormat`  <a name="cfn-kendra-datasource-datasourcetoindexfieldmapping-datefieldformat"></a>
The format for date fields in the data source. If the field specified in `DataSourceFieldName` is a date field, you must specify the date format. If the field is not a date field, an exception is thrown.  
*Required*: No  
*Type*: String  
*Minimum*: `4`  
*Maximum*: `40`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IndexFieldName`  <a name="cfn-kendra-datasource-datasourcetoindexfieldmapping-indexfieldname"></a>
The name of the index field to map to the data source field. The index field type must match the data source field type.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `30`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource DataSourceVpcConfiguration
<a name="aws-properties-kendra-datasource-datasourcevpcconfiguration"></a>

Provides the configuration information to connect to an Amazon VPC.

## Syntax
<a name="aws-properties-kendra-datasource-datasourcevpcconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-datasourcevpcconfiguration-syntax.json"></a>

```
{
  "[SecurityGroupIds](#cfn-kendra-datasource-datasourcevpcconfiguration-securitygroupids)" : [ String, ... ],
  "[SubnetIds](#cfn-kendra-datasource-datasourcevpcconfiguration-subnetids)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-datasourcevpcconfiguration-syntax.yaml"></a>

```
  [SecurityGroupIds](#cfn-kendra-datasource-datasourcevpcconfiguration-securitygroupids): 
    - String
  [SubnetIds](#cfn-kendra-datasource-datasourcevpcconfiguration-subnetids): 
    - String
```

## Properties
<a name="aws-properties-kendra-datasource-datasourcevpcconfiguration-properties"></a>

`SecurityGroupIds`  <a name="cfn-kendra-datasource-datasourcevpcconfiguration-securitygroupids"></a>
A list of identifiers of security groups within your Amazon VPC. The security groups should enable Amazon Kendra to connect to the data source.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `200 | 10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SubnetIds`  <a name="cfn-kendra-datasource-datasourcevpcconfiguration-subnetids"></a>
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.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `200 | 6`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource DocumentAttributeCondition
<a name="aws-properties-kendra-datasource-documentattributecondition"></a>

The condition used for the target document attribute or metadata field when ingesting documents into Amazon Kendra. You use this with [DocumentAttributeTarget to apply the condition](https://docs.aws.amazon.com/kendra/latest/dg/API_DocumentAttributeTarget.html).

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\$1URI' field. Set the condition that if the 'Source\$1URI' field contains 'financial' in its URI value, then prefill the target field 'Department' with the target value 'Finance' for the document.

Amazon Kendra cannot 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 Kendra then will map your newly created metadata field to your index field.

## Syntax
<a name="aws-properties-kendra-datasource-documentattributecondition-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-documentattributecondition-syntax.json"></a>

```
{
  "[ConditionDocumentAttributeKey](#cfn-kendra-datasource-documentattributecondition-conditiondocumentattributekey)" : String,
  "[ConditionOnValue](#cfn-kendra-datasource-documentattributecondition-conditiononvalue)" : DocumentAttributeValue,
  "[Operator](#cfn-kendra-datasource-documentattributecondition-operator)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-documentattributecondition-syntax.yaml"></a>

```
  [ConditionDocumentAttributeKey](#cfn-kendra-datasource-documentattributecondition-conditiondocumentattributekey): String
  [ConditionOnValue](#cfn-kendra-datasource-documentattributecondition-conditiononvalue): 
    DocumentAttributeValue
  [Operator](#cfn-kendra-datasource-documentattributecondition-operator): String
```

## Properties
<a name="aws-properties-kendra-datasource-documentattributecondition-properties"></a>

`ConditionDocumentAttributeKey`  <a name="cfn-kendra-datasource-documentattributecondition-conditiondocumentattributekey"></a>
The identifier of the document attribute used for the condition.  
For example, 'Source\$1URI' could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.  
Amazon Kendra currently does not support `_document_body` as an attribute key used for the condition.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[a-zA-Z0-9_][a-zA-Z0-9_-]*`  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ConditionOnValue`  <a name="cfn-kendra-datasource-documentattributecondition-conditiononvalue"></a>
The value used by the operator.  
For example, you can specify the value 'financial' for strings in the 'Source\$1URI' field that partially match or contain this value.  
*Required*: No  
*Type*: [DocumentAttributeValue](aws-properties-kendra-datasource-documentattributevalue.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Operator`  <a name="cfn-kendra-datasource-documentattributecondition-operator"></a>
The condition operator.  
For example, you can use 'Contains' to partially match a string.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `GreaterThan | GreaterThanOrEquals | LessThan | LessThanOrEquals | Equals | NotEquals | Contains | NotContains | Exists | NotExists | BeginsWith`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource DocumentAttributeTarget
<a name="aws-properties-kendra-datasource-documentattributetarget"></a>

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

For example, you can delete customer identification numbers associated with the documents, stored in the document metadata field called 'Customer\$1ID'. You set the target key as 'Customer\$1ID' and the deletion flag to `TRUE`. This removes all customer ID values in the field 'Customer\$1ID'. This would scrub personally identifiable information from each document's metadata.

Amazon Kendra cannot 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 Kendra then will map your newly created metadata field to your index field.

You can also use this with [DocumentAttributeCondition](https://docs.aws.amazon.com/kendra/latest/dg/API_DocumentAttributeCondition.html).

## Syntax
<a name="aws-properties-kendra-datasource-documentattributetarget-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-documentattributetarget-syntax.json"></a>

```
{
  "[TargetDocumentAttributeKey](#cfn-kendra-datasource-documentattributetarget-targetdocumentattributekey)" : String,
  "[TargetDocumentAttributeValue](#cfn-kendra-datasource-documentattributetarget-targetdocumentattributevalue)" : DocumentAttributeValue,
  "[TargetDocumentAttributeValueDeletion](#cfn-kendra-datasource-documentattributetarget-targetdocumentattributevaluedeletion)" : Boolean
}
```

### YAML
<a name="aws-properties-kendra-datasource-documentattributetarget-syntax.yaml"></a>

```
  [TargetDocumentAttributeKey](#cfn-kendra-datasource-documentattributetarget-targetdocumentattributekey): String
  [TargetDocumentAttributeValue](#cfn-kendra-datasource-documentattributetarget-targetdocumentattributevalue): 
    DocumentAttributeValue
  [TargetDocumentAttributeValueDeletion](#cfn-kendra-datasource-documentattributetarget-targetdocumentattributevaluedeletion): Boolean
```

## Properties
<a name="aws-properties-kendra-datasource-documentattributetarget-properties"></a>

`TargetDocumentAttributeKey`  <a name="cfn-kendra-datasource-documentattributetarget-targetdocumentattributekey"></a>
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.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[a-zA-Z0-9_][a-zA-Z0-9_-]*`  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TargetDocumentAttributeValue`  <a name="cfn-kendra-datasource-documentattributetarget-targetdocumentattributevalue"></a>
The target value you want to create for the target attribute.  
For example, 'Finance' could be the target value for the target attribute key 'Department'.  
*Required*: No  
*Type*: [DocumentAttributeValue](aws-properties-kendra-datasource-documentattributevalue.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TargetDocumentAttributeValueDeletion`  <a name="cfn-kendra-datasource-documentattributetarget-targetdocumentattributevaluedeletion"></a>
`TRUE` to delete the existing target value for your specified target attribute key. You cannot create a target value and set this to `TRUE`. To create a target value (`TargetDocumentAttributeValue`), set this to `FALSE`.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource DocumentAttributeValue
<a name="aws-properties-kendra-datasource-documentattributevalue"></a>

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

## Syntax
<a name="aws-properties-kendra-datasource-documentattributevalue-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-documentattributevalue-syntax.json"></a>

```
{
  "[DateValue](#cfn-kendra-datasource-documentattributevalue-datevalue)" : String,
  "[LongValue](#cfn-kendra-datasource-documentattributevalue-longvalue)" : Integer,
  "[StringListValue](#cfn-kendra-datasource-documentattributevalue-stringlistvalue)" : [ String, ... ],
  "[StringValue](#cfn-kendra-datasource-documentattributevalue-stringvalue)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-documentattributevalue-syntax.yaml"></a>

```
  [DateValue](#cfn-kendra-datasource-documentattributevalue-datevalue): String
  [LongValue](#cfn-kendra-datasource-documentattributevalue-longvalue): Integer
  [StringListValue](#cfn-kendra-datasource-documentattributevalue-stringlistvalue): 
    - String
  [StringValue](#cfn-kendra-datasource-documentattributevalue-stringvalue): 
    String
```

## Properties
<a name="aws-properties-kendra-datasource-documentattributevalue-properties"></a>

`DateValue`  <a name="cfn-kendra-datasource-documentattributevalue-datevalue"></a>
A date expressed as an ISO 8601 string.  
It is important for the time zone to be included in the ISO 8601 date-time format. For example, 2012-03-25T12:30:10\$101:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LongValue`  <a name="cfn-kendra-datasource-documentattributevalue-longvalue"></a>
A long integer value.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StringListValue`  <a name="cfn-kendra-datasource-documentattributevalue-stringlistvalue"></a>
A list of strings. The default maximum length or number of strings is 10.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StringValue`  <a name="cfn-kendra-datasource-documentattributevalue-stringvalue"></a>
A string, such as "department".  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource DocumentsMetadataConfiguration
<a name="aws-properties-kendra-datasource-documentsmetadataconfiguration"></a>

Document metadata files that contain information such as the document access control information, source URI, document author, and custom attributes. Each metadata file contains metadata about a single document.

## Syntax
<a name="aws-properties-kendra-datasource-documentsmetadataconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-documentsmetadataconfiguration-syntax.json"></a>

```
{
  "[S3Prefix](#cfn-kendra-datasource-documentsmetadataconfiguration-s3prefix)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-documentsmetadataconfiguration-syntax.yaml"></a>

```
  [S3Prefix](#cfn-kendra-datasource-documentsmetadataconfiguration-s3prefix): String
```

## Properties
<a name="aws-properties-kendra-datasource-documentsmetadataconfiguration-properties"></a>

`S3Prefix`  <a name="cfn-kendra-datasource-documentsmetadataconfiguration-s3prefix"></a>
A prefix used to filter metadata configuration files in the AWS S3 bucket. The S3 bucket might contain multiple metadata files. Use `S3Prefix` to include only the desired metadata files.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource GoogleDriveConfiguration
<a name="aws-properties-kendra-datasource-googledriveconfiguration"></a>

Provides the configuration information to connect to Google Drive as your data source.

## Syntax
<a name="aws-properties-kendra-datasource-googledriveconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-googledriveconfiguration-syntax.json"></a>

```
{
  "[ExcludeMimeTypes](#cfn-kendra-datasource-googledriveconfiguration-excludemimetypes)" : [ String, ... ],
  "[ExcludeSharedDrives](#cfn-kendra-datasource-googledriveconfiguration-excludeshareddrives)" : [ String, ... ],
  "[ExcludeUserAccounts](#cfn-kendra-datasource-googledriveconfiguration-excludeuseraccounts)" : [ String, ... ],
  "[ExclusionPatterns](#cfn-kendra-datasource-googledriveconfiguration-exclusionpatterns)" : [ String, ... ],
  "[FieldMappings](#cfn-kendra-datasource-googledriveconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ],
  "[InclusionPatterns](#cfn-kendra-datasource-googledriveconfiguration-inclusionpatterns)" : [ String, ... ],
  "[SecretArn](#cfn-kendra-datasource-googledriveconfiguration-secretarn)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-googledriveconfiguration-syntax.yaml"></a>

```
  [ExcludeMimeTypes](#cfn-kendra-datasource-googledriveconfiguration-excludemimetypes): 
    - String
  [ExcludeSharedDrives](#cfn-kendra-datasource-googledriveconfiguration-excludeshareddrives): 
    - String
  [ExcludeUserAccounts](#cfn-kendra-datasource-googledriveconfiguration-excludeuseraccounts): 
    - String
  [ExclusionPatterns](#cfn-kendra-datasource-googledriveconfiguration-exclusionpatterns): 
    - String
  [FieldMappings](#cfn-kendra-datasource-googledriveconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
  [InclusionPatterns](#cfn-kendra-datasource-googledriveconfiguration-inclusionpatterns): 
    - String
  [SecretArn](#cfn-kendra-datasource-googledriveconfiguration-secretarn): String
```

## Properties
<a name="aws-properties-kendra-datasource-googledriveconfiguration-properties"></a>

`ExcludeMimeTypes`  <a name="cfn-kendra-datasource-googledriveconfiguration-excludemimetypes"></a>
A list of MIME types to exclude from the index. All documents matching the specified MIME type are excluded.   
For a list of MIME types, see [Using a Google Workspace Drive data source](https://docs.aws.amazon.com/kendra/latest/dg/data-source-google-drive.html).  
*Required*: No  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `30`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExcludeSharedDrives`  <a name="cfn-kendra-datasource-googledriveconfiguration-excludeshareddrives"></a>
A list of identifiers or shared drives to exclude from the index. All files and folders stored on the shared drive are excluded.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExcludeUserAccounts`  <a name="cfn-kendra-datasource-googledriveconfiguration-excludeuseraccounts"></a>
A list of email addresses of the users. Documents owned by these users are excluded from the index. Documents shared with excluded users are indexed unless they are excluded in another way.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExclusionPatterns`  <a name="cfn-kendra-datasource-googledriveconfiguration-exclusionpatterns"></a>
A list of regular expression patterns to exclude certain items in your Google Drive, including shared drives and users' My Drives. Items that match the patterns are excluded from the index. Items that don't match the patterns are included in the index. If an item matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the item isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-googledriveconfiguration-fieldmappings"></a>
Maps Google Drive data source attributes or field names to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Google Drive fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Google Drive data source field names must exist in your Google Drive custom metadata.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionPatterns`  <a name="cfn-kendra-datasource-googledriveconfiguration-inclusionpatterns"></a>
A list of regular expression patterns to include certain items in your Google Drive, including shared drives and users' My Drives. Items that match the patterns are included in the index. Items that don't match the patterns are excluded from the index. If an item matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the item isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretArn`  <a name="cfn-kendra-datasource-googledriveconfiguration-secretarn"></a>
The Amazon Resource Name (ARN) of a AWS Secrets Managersecret that contains the credentials required to connect to Google Drive. For more information, see [Using a Google Workspace Drive data source](https://docs.aws.amazon.com/kendra/latest/dg/data-source-google-drive.html).  
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource HookConfiguration
<a name="aws-properties-kendra-datasource-hookconfiguration"></a>

Provides the configuration information for invoking a Lambda function in AWS Lambda to alter document metadata and content when ingesting documents into Amazon Kendra. You can configure your Lambda function using [PreExtractionHookConfiguration](https://docs.aws.amazon.com/kendra/latest/dg/API_CustomDocumentEnrichmentConfiguration.html) if you want to apply advanced alterations on the original or raw documents. If you want to apply advanced alterations on the Amazon Kendra structured documents, you must configure your Lambda function using [PostExtractionHookConfiguration](https://docs.aws.amazon.com/kendra/latest/dg/API_CustomDocumentEnrichmentConfiguration.html). You can only invoke one Lambda function. However, this function can invoke other functions it requires.

For more information, see [Customizing document metadata during the ingestion process](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html).

## Syntax
<a name="aws-properties-kendra-datasource-hookconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-hookconfiguration-syntax.json"></a>

```
{
  "[InvocationCondition](#cfn-kendra-datasource-hookconfiguration-invocationcondition)" : DocumentAttributeCondition,
  "[LambdaArn](#cfn-kendra-datasource-hookconfiguration-lambdaarn)" : String,
  "[S3Bucket](#cfn-kendra-datasource-hookconfiguration-s3bucket)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-hookconfiguration-syntax.yaml"></a>

```
  [InvocationCondition](#cfn-kendra-datasource-hookconfiguration-invocationcondition): 
    DocumentAttributeCondition
  [LambdaArn](#cfn-kendra-datasource-hookconfiguration-lambdaarn): String
  [S3Bucket](#cfn-kendra-datasource-hookconfiguration-s3bucket): String
```

## Properties
<a name="aws-properties-kendra-datasource-hookconfiguration-properties"></a>

`InvocationCondition`  <a name="cfn-kendra-datasource-hookconfiguration-invocationcondition"></a>
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 Kendra should invoke a function that inserts the current date-time.  
*Required*: No  
*Type*: [DocumentAttributeCondition](aws-properties-kendra-datasource-documentattributecondition.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LambdaArn`  <a name="cfn-kendra-datasource-hookconfiguration-lambdaarn"></a>
The Amazon Resource Name (ARN) of an IAM role with permission to run a Lambda function during ingestion. For more information, see [an IAM roles for Amazon Kendra](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html).  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3Bucket`  <a name="cfn-kendra-datasource-hookconfiguration-s3bucket"></a>
Stores the original, raw documents or the structured, parsed documents before and after altering them. For more information, see [Data contracts for Lambda functions](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html#cde-data-contracts-lambda).  
*Required*: Yes  
*Type*: String  
*Pattern*: `[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]`  
*Minimum*: `3`  
*Maximum*: `63`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource InlineCustomDocumentEnrichmentConfiguration
<a name="aws-properties-kendra-datasource-inlinecustomdocumentenrichmentconfiguration"></a>

Provides the configuration information for applying basic logic to alter document metadata and content when ingesting documents into Amazon Kendra. To apply advanced logic, to go beyond what you can do with basic logic, see [HookConfiguration](https://docs.aws.amazon.com/kendra/latest/dg/API_HookConfiguration.html).

For more information, see [Customizing document metadata during the ingestion process](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html).

## Syntax
<a name="aws-properties-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-syntax.json"></a>

```
{
  "[Condition](#cfn-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-condition)" : DocumentAttributeCondition,
  "[DocumentContentDeletion](#cfn-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-documentcontentdeletion)" : Boolean,
  "[Target](#cfn-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-target)" : DocumentAttributeTarget
}
```

### YAML
<a name="aws-properties-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-syntax.yaml"></a>

```
  [Condition](#cfn-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-condition): 
    DocumentAttributeCondition
  [DocumentContentDeletion](#cfn-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-documentcontentdeletion): Boolean
  [Target](#cfn-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-target): 
    DocumentAttributeTarget
```

## Properties
<a name="aws-properties-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-properties"></a>

`Condition`  <a name="cfn-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-condition"></a>
Configuration of the condition used for the target document attribute or metadata field when ingesting documents into Amazon Kendra.  
*Required*: No  
*Type*: [DocumentAttributeCondition](aws-properties-kendra-datasource-documentattributecondition.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentContentDeletion`  <a name="cfn-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-documentcontentdeletion"></a>
`TRUE` to delete content if the condition used for the target attribute is met.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Target`  <a name="cfn-kendra-datasource-inlinecustomdocumentenrichmentconfiguration-target"></a>
Configuration of the target document attribute or metadata field when ingesting documents into Amazon Kendra. You can also include a value.  
*Required*: No  
*Type*: [DocumentAttributeTarget](aws-properties-kendra-datasource-documentattributetarget.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource OneDriveConfiguration
<a name="aws-properties-kendra-datasource-onedriveconfiguration"></a>

Provides the configuration information to connect to OneDrive as your data source.

## Syntax
<a name="aws-properties-kendra-datasource-onedriveconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-onedriveconfiguration-syntax.json"></a>

```
{
  "[DisableLocalGroups](#cfn-kendra-datasource-onedriveconfiguration-disablelocalgroups)" : Boolean,
  "[ExclusionPatterns](#cfn-kendra-datasource-onedriveconfiguration-exclusionpatterns)" : [ String, ... ],
  "[FieldMappings](#cfn-kendra-datasource-onedriveconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ],
  "[InclusionPatterns](#cfn-kendra-datasource-onedriveconfiguration-inclusionpatterns)" : [ String, ... ],
  "[OneDriveUsers](#cfn-kendra-datasource-onedriveconfiguration-onedriveusers)" : OneDriveUsers,
  "[SecretArn](#cfn-kendra-datasource-onedriveconfiguration-secretarn)" : String,
  "[TenantDomain](#cfn-kendra-datasource-onedriveconfiguration-tenantdomain)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-onedriveconfiguration-syntax.yaml"></a>

```
  [DisableLocalGroups](#cfn-kendra-datasource-onedriveconfiguration-disablelocalgroups): Boolean
  [ExclusionPatterns](#cfn-kendra-datasource-onedriveconfiguration-exclusionpatterns): 
    - String
  [FieldMappings](#cfn-kendra-datasource-onedriveconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
  [InclusionPatterns](#cfn-kendra-datasource-onedriveconfiguration-inclusionpatterns): 
    - String
  [OneDriveUsers](#cfn-kendra-datasource-onedriveconfiguration-onedriveusers): 
    OneDriveUsers
  [SecretArn](#cfn-kendra-datasource-onedriveconfiguration-secretarn): String
  [TenantDomain](#cfn-kendra-datasource-onedriveconfiguration-tenantdomain): String
```

## Properties
<a name="aws-properties-kendra-datasource-onedriveconfiguration-properties"></a>

`DisableLocalGroups`  <a name="cfn-kendra-datasource-onedriveconfiguration-disablelocalgroups"></a>
`TRUE` to disable local groups information.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExclusionPatterns`  <a name="cfn-kendra-datasource-onedriveconfiguration-exclusionpatterns"></a>
A list of regular expression patterns to exclude certain documents in your OneDrive. Documents that match the patterns are excluded from the index. Documents that don't match the patterns are included in the index. If a document matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the document isn't included in the index.  
The pattern is applied to the file name.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-onedriveconfiguration-fieldmappings"></a>
A list of `DataSourceToIndexFieldMapping` objects that map OneDrive data source attributes or field names to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to OneDrive fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The OneDrive data source field names must exist in your OneDrive custom metadata.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionPatterns`  <a name="cfn-kendra-datasource-onedriveconfiguration-inclusionpatterns"></a>
A list of regular expression patterns to include certain documents in your OneDrive. Documents that match the patterns are included in the index. Documents that don't match the patterns are excluded from the index. If a document matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the document isn't included in the index.  
The pattern is applied to the file name.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OneDriveUsers`  <a name="cfn-kendra-datasource-onedriveconfiguration-onedriveusers"></a>
A list of user accounts whose documents should be indexed.  
*Required*: Yes  
*Type*: [OneDriveUsers](aws-properties-kendra-datasource-onedriveusers.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretArn`  <a name="cfn-kendra-datasource-onedriveconfiguration-secretarn"></a>
The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that contains the user name and password to connect to OneDrive. The user name should be the application ID for the OneDrive application, and the password is the application key for the OneDrive application.  
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TenantDomain`  <a name="cfn-kendra-datasource-onedriveconfiguration-tenantdomain"></a>
The Azure Active Directory domain of the organization.   
*Required*: Yes  
*Type*: String  
*Pattern*: `^([a-zA-Z0-9]+(-[a-zA-Z0-9]+)*\.)+[a-z]{2,}$`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource OneDriveUsers
<a name="aws-properties-kendra-datasource-onedriveusers"></a>

User accounts whose documents should be indexed.

## Syntax
<a name="aws-properties-kendra-datasource-onedriveusers-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-onedriveusers-syntax.json"></a>

```
{
  "[OneDriveUserList](#cfn-kendra-datasource-onedriveusers-onedriveuserlist)" : [ String, ... ],
  "[OneDriveUserS3Path](#cfn-kendra-datasource-onedriveusers-onedriveusers3path)" : S3Path
}
```

### YAML
<a name="aws-properties-kendra-datasource-onedriveusers-syntax.yaml"></a>

```
  [OneDriveUserList](#cfn-kendra-datasource-onedriveusers-onedriveuserlist): 
    - String
  [OneDriveUserS3Path](#cfn-kendra-datasource-onedriveusers-onedriveusers3path): 
    S3Path
```

## Properties
<a name="aws-properties-kendra-datasource-onedriveusers-properties"></a>

`OneDriveUserList`  <a name="cfn-kendra-datasource-onedriveusers-onedriveuserlist"></a>
A list of users whose documents should be indexed. Specify the user names in email format, for example, `username@tenantdomain`. If you need to index the documents of more than 10 users, use the `OneDriveUserS3Path` field to specify the location of a file containing a list of users.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OneDriveUserS3Path`  <a name="cfn-kendra-datasource-onedriveusers-onedriveusers3path"></a>
The S3 bucket location of a file containing a list of users whose documents should be indexed.  
*Required*: No  
*Type*: [S3Path](aws-properties-kendra-datasource-s3path.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ProxyConfiguration
<a name="aws-properties-kendra-datasource-proxyconfiguration"></a>

Provides the configuration information for a web proxy to connect to website hosts.

## Syntax
<a name="aws-properties-kendra-datasource-proxyconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-proxyconfiguration-syntax.json"></a>

```
{
  "[Credentials](#cfn-kendra-datasource-proxyconfiguration-credentials)" : String,
  "[Host](#cfn-kendra-datasource-proxyconfiguration-host)" : String,
  "[Port](#cfn-kendra-datasource-proxyconfiguration-port)" : Integer
}
```

### YAML
<a name="aws-properties-kendra-datasource-proxyconfiguration-syntax.yaml"></a>

```
  [Credentials](#cfn-kendra-datasource-proxyconfiguration-credentials): String
  [Host](#cfn-kendra-datasource-proxyconfiguration-host): String
  [Port](#cfn-kendra-datasource-proxyconfiguration-port): Integer
```

## Properties
<a name="aws-properties-kendra-datasource-proxyconfiguration-properties"></a>

`Credentials`  <a name="cfn-kendra-datasource-proxyconfiguration-credentials"></a>
The Amazon Resource Name (ARN) of an AWS Secrets Manager secret. You create a secret to store your credentials in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html)  
The credentials are optional. You use a secret if web proxy credentials are required to connect to a website host. Amazon Kendra currently support basic authentication to connect to a web proxy server. The secret stores your credentials.  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Host`  <a name="cfn-kendra-datasource-proxyconfiguration-host"></a>
The name of the website host you want to connect to via a web proxy server.  
For example, the host name of https://a.example.com/page1.html is "a.example.com".  
*Required*: Yes  
*Type*: String  
*Pattern*: `([^\s]*)`  
*Minimum*: `1`  
*Maximum*: `253`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Port`  <a name="cfn-kendra-datasource-proxyconfiguration-port"></a>
The port number of the website host you want to connect to via a web proxy server.   
For example, the port for https://a.example.com/page1.html is 443, the standard port for HTTPS.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `65535`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource S3DataSourceConfiguration
<a name="aws-properties-kendra-datasource-s3datasourceconfiguration"></a>

Provides the configuration information to connect to an Amazon S3 bucket.

## Syntax
<a name="aws-properties-kendra-datasource-s3datasourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-s3datasourceconfiguration-syntax.json"></a>

```
{
  "[AccessControlListConfiguration](#cfn-kendra-datasource-s3datasourceconfiguration-accesscontrollistconfiguration)" : AccessControlListConfiguration,
  "[BucketName](#cfn-kendra-datasource-s3datasourceconfiguration-bucketname)" : String,
  "[DocumentsMetadataConfiguration](#cfn-kendra-datasource-s3datasourceconfiguration-documentsmetadataconfiguration)" : DocumentsMetadataConfiguration,
  "[ExclusionPatterns](#cfn-kendra-datasource-s3datasourceconfiguration-exclusionpatterns)" : [ String, ... ],
  "[InclusionPatterns](#cfn-kendra-datasource-s3datasourceconfiguration-inclusionpatterns)" : [ String, ... ],
  "[InclusionPrefixes](#cfn-kendra-datasource-s3datasourceconfiguration-inclusionprefixes)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-s3datasourceconfiguration-syntax.yaml"></a>

```
  [AccessControlListConfiguration](#cfn-kendra-datasource-s3datasourceconfiguration-accesscontrollistconfiguration): 
    AccessControlListConfiguration
  [BucketName](#cfn-kendra-datasource-s3datasourceconfiguration-bucketname): String
  [DocumentsMetadataConfiguration](#cfn-kendra-datasource-s3datasourceconfiguration-documentsmetadataconfiguration): 
    DocumentsMetadataConfiguration
  [ExclusionPatterns](#cfn-kendra-datasource-s3datasourceconfiguration-exclusionpatterns): 
    - String
  [InclusionPatterns](#cfn-kendra-datasource-s3datasourceconfiguration-inclusionpatterns): 
    - String
  [InclusionPrefixes](#cfn-kendra-datasource-s3datasourceconfiguration-inclusionprefixes): 
    - String
```

## Properties
<a name="aws-properties-kendra-datasource-s3datasourceconfiguration-properties"></a>

`AccessControlListConfiguration`  <a name="cfn-kendra-datasource-s3datasourceconfiguration-accesscontrollistconfiguration"></a>
Provides the path to the S3 bucket that contains the user context filtering files for the data source. For the format of the file, see [Access control for S3 data sources](https://docs.aws.amazon.com/kendra/latest/dg/s3-acl.html).  
*Required*: No  
*Type*: [AccessControlListConfiguration](aws-properties-kendra-datasource-accesscontrollistconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BucketName`  <a name="cfn-kendra-datasource-s3datasourceconfiguration-bucketname"></a>
The name of the bucket that contains the documents.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]`  
*Minimum*: `3`  
*Maximum*: `63`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentsMetadataConfiguration`  <a name="cfn-kendra-datasource-s3datasourceconfiguration-documentsmetadataconfiguration"></a>
Specifies document metadata files that contain information such as the document access control information, source URI, document author, and custom attributes. Each metadata file contains metadata about a single document.  
*Required*: No  
*Type*: [DocumentsMetadataConfiguration](aws-properties-kendra-datasource-documentsmetadataconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExclusionPatterns`  <a name="cfn-kendra-datasource-s3datasourceconfiguration-exclusionpatterns"></a>
A list of glob patterns (patterns that can expand a wildcard pattern into a list of path names that match the given pattern) for certain file names and file types to exclude from your index. If a document matches both an inclusion and exclusion prefix or pattern, the exclusion prefix takes precendence and the document is not indexed. Examples of glob patterns include:  
+ */myapp/config/\$1*—All files inside config directory.
+ *\$1\$1/\$1.png*—All .png files in all directories.
+ *\$1\$1/\$1.\$1png, ico, md\$1*—All .png, .ico or .md files in all directories.
+ */myapp/src/\$1\$1/\$1.ts*—All .ts files inside src directory (and all its subdirectories).
+ *\$1\$1/\$1(\$1.module).ts*—All .ts files but not .module.ts
+ *\$1.png , \$1.jpg*—All PNG and JPEG image files in a directory (files with the extensions .png and .jpg).
+ *\$1internal\$1*—All files in a directory that contain 'internal' in the file name, such as 'internal', 'internal\$1only', 'company\$1internal'.
+ *\$1\$1/\$1internal\$1*—All internal-related files in a directory and its subdirectories.
For more examples, see [Use of Exclude and Include Filters](https://docs.aws.amazon.com/cli/latest/reference/s3/#use-of-exclude-and-include-filters) in the AWS CLI Command Reference.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionPatterns`  <a name="cfn-kendra-datasource-s3datasourceconfiguration-inclusionpatterns"></a>
A list of glob patterns (patterns that can expand a wildcard pattern into a list of path names that match the given pattern) for certain file names and file types to include in your index. If a document matches both an inclusion and exclusion prefix or pattern, the exclusion prefix takes precendence and the document is not indexed. Examples of glob patterns include:  
+ */myapp/config/\$1*—All files inside config directory.
+ *\$1\$1/\$1.png*—All .png files in all directories.
+ *\$1\$1/\$1.\$1png, ico, md\$1*—All .png, .ico or .md files in all directories.
+ */myapp/src/\$1\$1/\$1.ts*—All .ts files inside src directory (and all its subdirectories).
+ *\$1\$1/\$1(\$1.module).ts*—All .ts files but not .module.ts
+ *\$1.png , \$1.jpg*—All PNG and JPEG image files in a directory (files with the extensions .png and .jpg).
+ *\$1internal\$1*—All files in a directory that contain 'internal' in the file name, such as 'internal', 'internal\$1only', 'company\$1internal'.
+ *\$1\$1/\$1internal\$1*—All internal-related files in a directory and its subdirectories.
For more examples, see [Use of Exclude and Include Filters](https://docs.aws.amazon.com/cli/latest/reference/s3/#use-of-exclude-and-include-filters) in the AWS CLI Command Reference.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionPrefixes`  <a name="cfn-kendra-datasource-s3datasourceconfiguration-inclusionprefixes"></a>
A list of S3 prefixes for the documents that should be included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource S3Path
<a name="aws-properties-kendra-datasource-s3path"></a>

Information required to find a specific file in an Amazon S3 bucket.

## Syntax
<a name="aws-properties-kendra-datasource-s3path-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-s3path-syntax.json"></a>

```
{
  "[Bucket](#cfn-kendra-datasource-s3path-bucket)" : String,
  "[Key](#cfn-kendra-datasource-s3path-key)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-s3path-syntax.yaml"></a>

```
  [Bucket](#cfn-kendra-datasource-s3path-bucket): String
  [Key](#cfn-kendra-datasource-s3path-key): String
```

## Properties
<a name="aws-properties-kendra-datasource-s3path-properties"></a>

`Bucket`  <a name="cfn-kendra-datasource-s3path-bucket"></a>
The name of the S3 bucket that contains the file.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]`  
*Minimum*: `3`  
*Maximum*: `63`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Key`  <a name="cfn-kendra-datasource-s3path-key"></a>
The name of the file.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource SalesforceChatterFeedConfiguration
<a name="aws-properties-kendra-datasource-salesforcechatterfeedconfiguration"></a>

The configuration information for syncing a Salesforce chatter feed. The contents of the object comes from the Salesforce FeedItem table.

## Syntax
<a name="aws-properties-kendra-datasource-salesforcechatterfeedconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-salesforcechatterfeedconfiguration-syntax.json"></a>

```
{
  "[DocumentDataFieldName](#cfn-kendra-datasource-salesforcechatterfeedconfiguration-documentdatafieldname)" : String,
  "[DocumentTitleFieldName](#cfn-kendra-datasource-salesforcechatterfeedconfiguration-documenttitlefieldname)" : String,
  "[FieldMappings](#cfn-kendra-datasource-salesforcechatterfeedconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ],
  "[IncludeFilterTypes](#cfn-kendra-datasource-salesforcechatterfeedconfiguration-includefiltertypes)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-salesforcechatterfeedconfiguration-syntax.yaml"></a>

```
  [DocumentDataFieldName](#cfn-kendra-datasource-salesforcechatterfeedconfiguration-documentdatafieldname): String
  [DocumentTitleFieldName](#cfn-kendra-datasource-salesforcechatterfeedconfiguration-documenttitlefieldname): String
  [FieldMappings](#cfn-kendra-datasource-salesforcechatterfeedconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
  [IncludeFilterTypes](#cfn-kendra-datasource-salesforcechatterfeedconfiguration-includefiltertypes): 
    - String
```

## Properties
<a name="aws-properties-kendra-datasource-salesforcechatterfeedconfiguration-properties"></a>

`DocumentDataFieldName`  <a name="cfn-kendra-datasource-salesforcechatterfeedconfiguration-documentdatafieldname"></a>
The name of the column in the Salesforce FeedItem table that contains the content to index. Typically this is the `Body` column.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentTitleFieldName`  <a name="cfn-kendra-datasource-salesforcechatterfeedconfiguration-documenttitlefieldname"></a>
The name of the column in the Salesforce FeedItem table that contains the title of the document. This is typically the `Title` column.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-salesforcechatterfeedconfiguration-fieldmappings"></a>
Maps fields from a Salesforce chatter feed into Amazon Kendra index fields.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeFilterTypes`  <a name="cfn-kendra-datasource-salesforcechatterfeedconfiguration-includefiltertypes"></a>
Filters the documents in the feed based on status of the user. When you specify `ACTIVE_USERS` only documents from users who have an active account are indexed. When you specify `STANDARD_USER` only documents for Salesforce standard users are documented. You can specify both.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `2`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource SalesforceConfiguration
<a name="aws-properties-kendra-datasource-salesforceconfiguration"></a>

Provides the configuration information to connect to Salesforce as your data source.

## Syntax
<a name="aws-properties-kendra-datasource-salesforceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-salesforceconfiguration-syntax.json"></a>

```
{
  "[ChatterFeedConfiguration](#cfn-kendra-datasource-salesforceconfiguration-chatterfeedconfiguration)" : SalesforceChatterFeedConfiguration,
  "[CrawlAttachments](#cfn-kendra-datasource-salesforceconfiguration-crawlattachments)" : Boolean,
  "[ExcludeAttachmentFilePatterns](#cfn-kendra-datasource-salesforceconfiguration-excludeattachmentfilepatterns)" : [ String, ... ],
  "[IncludeAttachmentFilePatterns](#cfn-kendra-datasource-salesforceconfiguration-includeattachmentfilepatterns)" : [ String, ... ],
  "[KnowledgeArticleConfiguration](#cfn-kendra-datasource-salesforceconfiguration-knowledgearticleconfiguration)" : SalesforceKnowledgeArticleConfiguration,
  "[SecretArn](#cfn-kendra-datasource-salesforceconfiguration-secretarn)" : String,
  "[ServerUrl](#cfn-kendra-datasource-salesforceconfiguration-serverurl)" : String,
  "[StandardObjectAttachmentConfiguration](#cfn-kendra-datasource-salesforceconfiguration-standardobjectattachmentconfiguration)" : SalesforceStandardObjectAttachmentConfiguration,
  "[StandardObjectConfigurations](#cfn-kendra-datasource-salesforceconfiguration-standardobjectconfigurations)" : [ SalesforceStandardObjectConfiguration, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-salesforceconfiguration-syntax.yaml"></a>

```
  [ChatterFeedConfiguration](#cfn-kendra-datasource-salesforceconfiguration-chatterfeedconfiguration): 
    SalesforceChatterFeedConfiguration
  [CrawlAttachments](#cfn-kendra-datasource-salesforceconfiguration-crawlattachments): Boolean
  [ExcludeAttachmentFilePatterns](#cfn-kendra-datasource-salesforceconfiguration-excludeattachmentfilepatterns): 
    - String
  [IncludeAttachmentFilePatterns](#cfn-kendra-datasource-salesforceconfiguration-includeattachmentfilepatterns): 
    - String
  [KnowledgeArticleConfiguration](#cfn-kendra-datasource-salesforceconfiguration-knowledgearticleconfiguration): 
    SalesforceKnowledgeArticleConfiguration
  [SecretArn](#cfn-kendra-datasource-salesforceconfiguration-secretarn): String
  [ServerUrl](#cfn-kendra-datasource-salesforceconfiguration-serverurl): String
  [StandardObjectAttachmentConfiguration](#cfn-kendra-datasource-salesforceconfiguration-standardobjectattachmentconfiguration): 
    SalesforceStandardObjectAttachmentConfiguration
  [StandardObjectConfigurations](#cfn-kendra-datasource-salesforceconfiguration-standardobjectconfigurations): 
    - SalesforceStandardObjectConfiguration
```

## Properties
<a name="aws-properties-kendra-datasource-salesforceconfiguration-properties"></a>

`ChatterFeedConfiguration`  <a name="cfn-kendra-datasource-salesforceconfiguration-chatterfeedconfiguration"></a>
Configuration information for Salesforce chatter feeds.  
*Required*: No  
*Type*: [SalesforceChatterFeedConfiguration](aws-properties-kendra-datasource-salesforcechatterfeedconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CrawlAttachments`  <a name="cfn-kendra-datasource-salesforceconfiguration-crawlattachments"></a>
Indicates whether Amazon Kendra should index attachments to Salesforce objects.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExcludeAttachmentFilePatterns`  <a name="cfn-kendra-datasource-salesforceconfiguration-excludeattachmentfilepatterns"></a>
A list of regular expression patterns to exclude certain documents in your Salesforce. Documents that match the patterns are excluded from the index. Documents that don't match the patterns are included in the index. If a document matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the document isn't included in the index.  
The pattern is applied to the name of the attached file.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeAttachmentFilePatterns`  <a name="cfn-kendra-datasource-salesforceconfiguration-includeattachmentfilepatterns"></a>
A list of regular expression patterns to include certain documents in your Salesforce. Documents that match the patterns are included in the index. Documents that don't match the patterns are excluded from the index. If a document matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the document isn't included in the index.  
The pattern is applied to the name of the attached file.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeArticleConfiguration`  <a name="cfn-kendra-datasource-salesforceconfiguration-knowledgearticleconfiguration"></a>
Configuration information for the knowledge article types that Amazon Kendra indexes. Amazon Kendra indexes standard knowledge articles and the standard fields of knowledge articles, or the custom fields of custom knowledge articles, but not both.  
*Required*: No  
*Type*: [SalesforceKnowledgeArticleConfiguration](aws-properties-kendra-datasource-salesforceknowledgearticleconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretArn`  <a name="cfn-kendra-datasource-salesforceconfiguration-secretarn"></a>
The Amazon Resource Name (ARN) of an AWS Secrets Managersecret that contains the key/value pairs required to connect to your Salesforce instance. The secret must contain a JSON structure with the following keys:  
+ authenticationUrl - The OAUTH endpoint that Amazon Kendra connects to get an OAUTH token. 
+ consumerKey - The application public key generated when you created your Salesforce application.
+ consumerSecret - The application private key generated when you created your Salesforce application.
+ password - The password associated with the user logging in to the Salesforce instance.
+ securityToken - The token associated with the user logging in to the Salesforce instance.
+ username - The user name of the user logging in to the Salesforce instance.
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ServerUrl`  <a name="cfn-kendra-datasource-salesforceconfiguration-serverurl"></a>
The instance URL for the Salesforce site that you want to index.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(https?|ftp|file)://([^\s]*)`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StandardObjectAttachmentConfiguration`  <a name="cfn-kendra-datasource-salesforceconfiguration-standardobjectattachmentconfiguration"></a>
Configuration information for processing attachments to Salesforce standard objects.   
*Required*: No  
*Type*: [SalesforceStandardObjectAttachmentConfiguration](aws-properties-kendra-datasource-salesforcestandardobjectattachmentconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StandardObjectConfigurations`  <a name="cfn-kendra-datasource-salesforceconfiguration-standardobjectconfigurations"></a>
Configuration of the Salesforce standard objects that Amazon Kendra indexes.  
*Required*: No  
*Type*: Array of [SalesforceStandardObjectConfiguration](aws-properties-kendra-datasource-salesforcestandardobjectconfiguration.md)  
*Minimum*: `1`  
*Maximum*: `17`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource SalesforceCustomKnowledgeArticleTypeConfiguration
<a name="aws-properties-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration"></a>

Provides the configuration information for indexing Salesforce custom articles.

## Syntax
<a name="aws-properties-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-syntax.json"></a>

```
{
  "[DocumentDataFieldName](#cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-documentdatafieldname)" : String,
  "[DocumentTitleFieldName](#cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-documenttitlefieldname)" : String,
  "[FieldMappings](#cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ],
  "[Name](#cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-name)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-syntax.yaml"></a>

```
  [DocumentDataFieldName](#cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-documentdatafieldname): String
  [DocumentTitleFieldName](#cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-documenttitlefieldname): String
  [FieldMappings](#cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
  [Name](#cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-name): String
```

## Properties
<a name="aws-properties-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-properties"></a>

`DocumentDataFieldName`  <a name="cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-documentdatafieldname"></a>
The name of the field in the custom knowledge article that contains the document data to index.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentTitleFieldName`  <a name="cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-documenttitlefieldname"></a>
The name of the field in the custom knowledge article that contains the document title.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-fieldmappings"></a>
Maps attributes or field names of the custom knowledge article to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Salesforce fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Salesforce data source field names must exist in your Salesforce custom metadata.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration-name"></a>
The name of the configuration.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource SalesforceKnowledgeArticleConfiguration
<a name="aws-properties-kendra-datasource-salesforceknowledgearticleconfiguration"></a>

Provides the configuration information for the knowledge article types that Amazon Kendra indexes. Amazon Kendra indexes standard knowledge articles and the standard fields of knowledge articles, or the custom fields of custom knowledge articles, but not both 

## Syntax
<a name="aws-properties-kendra-datasource-salesforceknowledgearticleconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-salesforceknowledgearticleconfiguration-syntax.json"></a>

```
{
  "[CustomKnowledgeArticleTypeConfigurations](#cfn-kendra-datasource-salesforceknowledgearticleconfiguration-customknowledgearticletypeconfigurations)" : [ SalesforceCustomKnowledgeArticleTypeConfiguration, ... ],
  "[IncludedStates](#cfn-kendra-datasource-salesforceknowledgearticleconfiguration-includedstates)" : [ String, ... ],
  "[StandardKnowledgeArticleTypeConfiguration](#cfn-kendra-datasource-salesforceknowledgearticleconfiguration-standardknowledgearticletypeconfiguration)" : SalesforceStandardKnowledgeArticleTypeConfiguration
}
```

### YAML
<a name="aws-properties-kendra-datasource-salesforceknowledgearticleconfiguration-syntax.yaml"></a>

```
  [CustomKnowledgeArticleTypeConfigurations](#cfn-kendra-datasource-salesforceknowledgearticleconfiguration-customknowledgearticletypeconfigurations): 
    - SalesforceCustomKnowledgeArticleTypeConfiguration
  [IncludedStates](#cfn-kendra-datasource-salesforceknowledgearticleconfiguration-includedstates): 
    - String
  [StandardKnowledgeArticleTypeConfiguration](#cfn-kendra-datasource-salesforceknowledgearticleconfiguration-standardknowledgearticletypeconfiguration): 
    SalesforceStandardKnowledgeArticleTypeConfiguration
```

## Properties
<a name="aws-properties-kendra-datasource-salesforceknowledgearticleconfiguration-properties"></a>

`CustomKnowledgeArticleTypeConfigurations`  <a name="cfn-kendra-datasource-salesforceknowledgearticleconfiguration-customknowledgearticletypeconfigurations"></a>
Configuration information for custom Salesforce knowledge articles.  
*Required*: No  
*Type*: Array of [SalesforceCustomKnowledgeArticleTypeConfiguration](aws-properties-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration.md)  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludedStates`  <a name="cfn-kendra-datasource-salesforceknowledgearticleconfiguration-includedstates"></a>
Specifies the document states that should be included when Amazon Kendra indexes knowledge articles. You must specify at least one state.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `3`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StandardKnowledgeArticleTypeConfiguration`  <a name="cfn-kendra-datasource-salesforceknowledgearticleconfiguration-standardknowledgearticletypeconfiguration"></a>
Configuration information for standard Salesforce knowledge articles.  
*Required*: No  
*Type*: [SalesforceStandardKnowledgeArticleTypeConfiguration](aws-properties-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource SalesforceStandardKnowledgeArticleTypeConfiguration
<a name="aws-properties-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration"></a>

Provides the configuration information for standard Salesforce knowledge articles.

## Syntax
<a name="aws-properties-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-syntax.json"></a>

```
{
  "[DocumentDataFieldName](#cfn-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-documentdatafieldname)" : String,
  "[DocumentTitleFieldName](#cfn-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-documenttitlefieldname)" : String,
  "[FieldMappings](#cfn-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-syntax.yaml"></a>

```
  [DocumentDataFieldName](#cfn-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-documentdatafieldname): String
  [DocumentTitleFieldName](#cfn-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-documenttitlefieldname): String
  [FieldMappings](#cfn-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
```

## Properties
<a name="aws-properties-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-properties"></a>

`DocumentDataFieldName`  <a name="cfn-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-documentdatafieldname"></a>
The name of the field that contains the document data to index.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentTitleFieldName`  <a name="cfn-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-documenttitlefieldname"></a>
The name of the field that contains the document title.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration-fieldmappings"></a>
Maps attributes or field names of the knowledge article to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Salesforce fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Salesforce data source field names must exist in your Salesforce custom metadata.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource SalesforceStandardObjectAttachmentConfiguration
<a name="aws-properties-kendra-datasource-salesforcestandardobjectattachmentconfiguration"></a>

Provides the configuration information for processing attachments to Salesforce standard objects.

## Syntax
<a name="aws-properties-kendra-datasource-salesforcestandardobjectattachmentconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-salesforcestandardobjectattachmentconfiguration-syntax.json"></a>

```
{
  "[DocumentTitleFieldName](#cfn-kendra-datasource-salesforcestandardobjectattachmentconfiguration-documenttitlefieldname)" : String,
  "[FieldMappings](#cfn-kendra-datasource-salesforcestandardobjectattachmentconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-salesforcestandardobjectattachmentconfiguration-syntax.yaml"></a>

```
  [DocumentTitleFieldName](#cfn-kendra-datasource-salesforcestandardobjectattachmentconfiguration-documenttitlefieldname): String
  [FieldMappings](#cfn-kendra-datasource-salesforcestandardobjectattachmentconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
```

## Properties
<a name="aws-properties-kendra-datasource-salesforcestandardobjectattachmentconfiguration-properties"></a>

`DocumentTitleFieldName`  <a name="cfn-kendra-datasource-salesforcestandardobjectattachmentconfiguration-documenttitlefieldname"></a>
The name of the field used for the document title.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-salesforcestandardobjectattachmentconfiguration-fieldmappings"></a>
One or more objects that map fields in attachments to Amazon Kendra index fields.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource SalesforceStandardObjectConfiguration
<a name="aws-properties-kendra-datasource-salesforcestandardobjectconfiguration"></a>

Specifies configuration information for indexing a single standard object.

## Syntax
<a name="aws-properties-kendra-datasource-salesforcestandardobjectconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-salesforcestandardobjectconfiguration-syntax.json"></a>

```
{
  "[DocumentDataFieldName](#cfn-kendra-datasource-salesforcestandardobjectconfiguration-documentdatafieldname)" : String,
  "[DocumentTitleFieldName](#cfn-kendra-datasource-salesforcestandardobjectconfiguration-documenttitlefieldname)" : String,
  "[FieldMappings](#cfn-kendra-datasource-salesforcestandardobjectconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ],
  "[Name](#cfn-kendra-datasource-salesforcestandardobjectconfiguration-name)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-salesforcestandardobjectconfiguration-syntax.yaml"></a>

```
  [DocumentDataFieldName](#cfn-kendra-datasource-salesforcestandardobjectconfiguration-documentdatafieldname): String
  [DocumentTitleFieldName](#cfn-kendra-datasource-salesforcestandardobjectconfiguration-documenttitlefieldname): String
  [FieldMappings](#cfn-kendra-datasource-salesforcestandardobjectconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
  [Name](#cfn-kendra-datasource-salesforcestandardobjectconfiguration-name): String
```

## Properties
<a name="aws-properties-kendra-datasource-salesforcestandardobjectconfiguration-properties"></a>

`DocumentDataFieldName`  <a name="cfn-kendra-datasource-salesforcestandardobjectconfiguration-documentdatafieldname"></a>
The name of the field in the standard object table that contains the document contents.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentTitleFieldName`  <a name="cfn-kendra-datasource-salesforcestandardobjectconfiguration-documenttitlefieldname"></a>
The name of the field in the standard object table that contains the document title.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-salesforcestandardobjectconfiguration-fieldmappings"></a>
Maps attributes or field names of the standard object to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to Salesforce fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The Salesforce data source field names must exist in your Salesforce custom metadata.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-kendra-datasource-salesforcestandardobjectconfiguration-name"></a>
The name of the standard object.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ACCOUNT | CAMPAIGN | CASE | CONTACT | CONTRACT | DOCUMENT | GROUP | IDEA | LEAD | OPPORTUNITY | PARTNER | PRICEBOOK | PRODUCT | PROFILE | SOLUTION | TASK | USER`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ServiceNowConfiguration
<a name="aws-properties-kendra-datasource-servicenowconfiguration"></a>

Provides the configuration information to connect to ServiceNow as your data source.

## Syntax
<a name="aws-properties-kendra-datasource-servicenowconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-servicenowconfiguration-syntax.json"></a>

```
{
  "[AuthenticationType](#cfn-kendra-datasource-servicenowconfiguration-authenticationtype)" : String,
  "[HostUrl](#cfn-kendra-datasource-servicenowconfiguration-hosturl)" : String,
  "[KnowledgeArticleConfiguration](#cfn-kendra-datasource-servicenowconfiguration-knowledgearticleconfiguration)" : ServiceNowKnowledgeArticleConfiguration,
  "[SecretArn](#cfn-kendra-datasource-servicenowconfiguration-secretarn)" : String,
  "[ServiceCatalogConfiguration](#cfn-kendra-datasource-servicenowconfiguration-servicecatalogconfiguration)" : ServiceNowServiceCatalogConfiguration,
  "[ServiceNowBuildVersion](#cfn-kendra-datasource-servicenowconfiguration-servicenowbuildversion)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-servicenowconfiguration-syntax.yaml"></a>

```
  [AuthenticationType](#cfn-kendra-datasource-servicenowconfiguration-authenticationtype): String
  [HostUrl](#cfn-kendra-datasource-servicenowconfiguration-hosturl): String
  [KnowledgeArticleConfiguration](#cfn-kendra-datasource-servicenowconfiguration-knowledgearticleconfiguration): 
    ServiceNowKnowledgeArticleConfiguration
  [SecretArn](#cfn-kendra-datasource-servicenowconfiguration-secretarn): String
  [ServiceCatalogConfiguration](#cfn-kendra-datasource-servicenowconfiguration-servicecatalogconfiguration): 
    ServiceNowServiceCatalogConfiguration
  [ServiceNowBuildVersion](#cfn-kendra-datasource-servicenowconfiguration-servicenowbuildversion): String
```

## Properties
<a name="aws-properties-kendra-datasource-servicenowconfiguration-properties"></a>

`AuthenticationType`  <a name="cfn-kendra-datasource-servicenowconfiguration-authenticationtype"></a>
The type of authentication used to connect to the ServiceNow instance. If you choose `HTTP_BASIC`, Amazon Kendra is authenticated using the user name and password provided in the AWS Secrets Manager secret in the `SecretArn` field. If you choose `OAUTH2`, Amazon Kendra is authenticated using the credentials of client ID, client secret, user name and password.  
When you use `OAUTH2` authentication, you must generate a token and a client secret using the ServiceNow console. For more information, see [Using a ServiceNow data source](https://docs.aws.amazon.com/kendra/latest/dg/data-source-servicenow.html).  
*Required*: No  
*Type*: String  
*Allowed values*: `HTTP_BASIC | OAUTH2`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`HostUrl`  <a name="cfn-kendra-datasource-servicenowconfiguration-hosturl"></a>
The ServiceNow instance that the data source connects to. The host endpoint should look like the following: *\$1instance\$1.service-now.com.*  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(?!(^(https?|ftp|file):\/\/))[a-z0-9-]+(\.service-now\.com)$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeArticleConfiguration`  <a name="cfn-kendra-datasource-servicenowconfiguration-knowledgearticleconfiguration"></a>
Configuration information for crawling knowledge articles in the ServiceNow site.  
*Required*: No  
*Type*: [ServiceNowKnowledgeArticleConfiguration](aws-properties-kendra-datasource-servicenowknowledgearticleconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretArn`  <a name="cfn-kendra-datasource-servicenowconfiguration-secretarn"></a>
The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that contains the user name and password required to connect to the ServiceNow instance. You can also provide OAuth authentication credentials of user name, password, client ID, and client secret. For more information, see [Using a ServiceNow data source](https://docs.aws.amazon.com/kendra/latest/dg/data-source-servicenow.html).  
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ServiceCatalogConfiguration`  <a name="cfn-kendra-datasource-servicenowconfiguration-servicecatalogconfiguration"></a>
Configuration information for crawling service catalogs in the ServiceNow site.  
*Required*: No  
*Type*: [ServiceNowServiceCatalogConfiguration](aws-properties-kendra-datasource-servicenowservicecatalogconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ServiceNowBuildVersion`  <a name="cfn-kendra-datasource-servicenowconfiguration-servicenowbuildversion"></a>
The identifier of the release that the ServiceNow host is running. If the host is not running the `LONDON` release, use `OTHERS`.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `LONDON | OTHERS`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ServiceNowKnowledgeArticleConfiguration
<a name="aws-properties-kendra-datasource-servicenowknowledgearticleconfiguration"></a>

Provides the configuration information for crawling knowledge articles in the ServiceNow site.

## Syntax
<a name="aws-properties-kendra-datasource-servicenowknowledgearticleconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-servicenowknowledgearticleconfiguration-syntax.json"></a>

```
{
  "[CrawlAttachments](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-crawlattachments)" : Boolean,
  "[DocumentDataFieldName](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-documentdatafieldname)" : String,
  "[DocumentTitleFieldName](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-documenttitlefieldname)" : String,
  "[ExcludeAttachmentFilePatterns](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-excludeattachmentfilepatterns)" : [ String, ... ],
  "[FieldMappings](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ],
  "[FilterQuery](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-filterquery)" : String,
  "[IncludeAttachmentFilePatterns](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-includeattachmentfilepatterns)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-servicenowknowledgearticleconfiguration-syntax.yaml"></a>

```
  [CrawlAttachments](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-crawlattachments): Boolean
  [DocumentDataFieldName](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-documentdatafieldname): String
  [DocumentTitleFieldName](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-documenttitlefieldname): String
  [ExcludeAttachmentFilePatterns](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-excludeattachmentfilepatterns): 
    - String
  [FieldMappings](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
  [FilterQuery](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-filterquery): String
  [IncludeAttachmentFilePatterns](#cfn-kendra-datasource-servicenowknowledgearticleconfiguration-includeattachmentfilepatterns): 
    - String
```

## Properties
<a name="aws-properties-kendra-datasource-servicenowknowledgearticleconfiguration-properties"></a>

`CrawlAttachments`  <a name="cfn-kendra-datasource-servicenowknowledgearticleconfiguration-crawlattachments"></a>
`TRUE` to index attachments to knowledge articles.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentDataFieldName`  <a name="cfn-kendra-datasource-servicenowknowledgearticleconfiguration-documentdatafieldname"></a>
The name of the ServiceNow field that is mapped to the index document contents field in the Amazon Kendra index.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentTitleFieldName`  <a name="cfn-kendra-datasource-servicenowknowledgearticleconfiguration-documenttitlefieldname"></a>
The name of the ServiceNow field that is mapped to the index document title field.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExcludeAttachmentFilePatterns`  <a name="cfn-kendra-datasource-servicenowknowledgearticleconfiguration-excludeattachmentfilepatterns"></a>
A list of regular expression patterns applied to exclude certain knowledge article attachments. Attachments that match the patterns are excluded from the index. Items that don't match the patterns are included in the index. If an item matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the item isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-servicenowknowledgearticleconfiguration-fieldmappings"></a>
Maps attributes or field names of knoweldge articles to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to ServiceNow fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The ServiceNow data source field names must exist in your ServiceNow custom metadata.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FilterQuery`  <a name="cfn-kendra-datasource-servicenowknowledgearticleconfiguration-filterquery"></a>
A query that selects the knowledge articles to index. The query can return articles from multiple knowledge bases, and the knowledge bases can be public or private.  
The query string must be one generated by the ServiceNow console. For more information, see [Specifying documents to index with a query](https://docs.aws.amazon.com/kendra/latest/dg/servicenow-query.html).   
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeAttachmentFilePatterns`  <a name="cfn-kendra-datasource-servicenowknowledgearticleconfiguration-includeattachmentfilepatterns"></a>
A list of regular expression patterns applied to include knowledge article attachments. Attachments that match the patterns are included in the index. Items that don't match the patterns are excluded from the index. If an item matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the item isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource ServiceNowServiceCatalogConfiguration
<a name="aws-properties-kendra-datasource-servicenowservicecatalogconfiguration"></a>

Provides the configuration information for crawling service catalog items in the ServiceNow site

## Syntax
<a name="aws-properties-kendra-datasource-servicenowservicecatalogconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-servicenowservicecatalogconfiguration-syntax.json"></a>

```
{
  "[CrawlAttachments](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-crawlattachments)" : Boolean,
  "[DocumentDataFieldName](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-documentdatafieldname)" : String,
  "[DocumentTitleFieldName](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-documenttitlefieldname)" : String,
  "[ExcludeAttachmentFilePatterns](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-excludeattachmentfilepatterns)" : [ String, ... ],
  "[FieldMappings](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ],
  "[IncludeAttachmentFilePatterns](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-includeattachmentfilepatterns)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-servicenowservicecatalogconfiguration-syntax.yaml"></a>

```
  [CrawlAttachments](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-crawlattachments): Boolean
  [DocumentDataFieldName](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-documentdatafieldname): String
  [DocumentTitleFieldName](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-documenttitlefieldname): String
  [ExcludeAttachmentFilePatterns](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-excludeattachmentfilepatterns): 
    - String
  [FieldMappings](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
  [IncludeAttachmentFilePatterns](#cfn-kendra-datasource-servicenowservicecatalogconfiguration-includeattachmentfilepatterns): 
    - String
```

## Properties
<a name="aws-properties-kendra-datasource-servicenowservicecatalogconfiguration-properties"></a>

`CrawlAttachments`  <a name="cfn-kendra-datasource-servicenowservicecatalogconfiguration-crawlattachments"></a>
`TRUE` to index attachments to service catalog items.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentDataFieldName`  <a name="cfn-kendra-datasource-servicenowservicecatalogconfiguration-documentdatafieldname"></a>
The name of the ServiceNow field that is mapped to the index document contents field in the Amazon Kendra index.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentTitleFieldName`  <a name="cfn-kendra-datasource-servicenowservicecatalogconfiguration-documenttitlefieldname"></a>
The name of the ServiceNow field that is mapped to the index document title field.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExcludeAttachmentFilePatterns`  <a name="cfn-kendra-datasource-servicenowservicecatalogconfiguration-excludeattachmentfilepatterns"></a>
A list of regular expression patterns to exclude certain attachments of catalogs in your ServiceNow. Item that match the patterns are excluded from the index. Items that don't match the patterns are included in the index. If an item matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the item isn't included in the index.  
The regex is applied to the file name of the attachment.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-servicenowservicecatalogconfiguration-fieldmappings"></a>
Maps attributes or field names of catalogs to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to ServiceNow fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The ServiceNow data source field names must exist in your ServiceNow custom metadata.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeAttachmentFilePatterns`  <a name="cfn-kendra-datasource-servicenowservicecatalogconfiguration-includeattachmentfilepatterns"></a>
A list of regular expression patterns to include certain attachments of catalogs in your ServiceNow. Item that match the patterns are included in the index. Items that don't match the patterns are excluded from the index. If an item matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the item isn't included in the index.  
The regex is applied to the file name of the attachment.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource SharePointConfiguration
<a name="aws-properties-kendra-datasource-sharepointconfiguration"></a>

Provides the configuration information to connect to Microsoft SharePoint as your data source.

## Syntax
<a name="aws-properties-kendra-datasource-sharepointconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-sharepointconfiguration-syntax.json"></a>

```
{
  "[CrawlAttachments](#cfn-kendra-datasource-sharepointconfiguration-crawlattachments)" : Boolean,
  "[DisableLocalGroups](#cfn-kendra-datasource-sharepointconfiguration-disablelocalgroups)" : Boolean,
  "[DocumentTitleFieldName](#cfn-kendra-datasource-sharepointconfiguration-documenttitlefieldname)" : String,
  "[ExclusionPatterns](#cfn-kendra-datasource-sharepointconfiguration-exclusionpatterns)" : [ String, ... ],
  "[FieldMappings](#cfn-kendra-datasource-sharepointconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ],
  "[InclusionPatterns](#cfn-kendra-datasource-sharepointconfiguration-inclusionpatterns)" : [ String, ... ],
  "[SecretArn](#cfn-kendra-datasource-sharepointconfiguration-secretarn)" : String,
  "[SharePointVersion](#cfn-kendra-datasource-sharepointconfiguration-sharepointversion)" : String,
  "[SslCertificateS3Path](#cfn-kendra-datasource-sharepointconfiguration-sslcertificates3path)" : S3Path,
  "[Urls](#cfn-kendra-datasource-sharepointconfiguration-urls)" : [ String, ... ],
  "[UseChangeLog](#cfn-kendra-datasource-sharepointconfiguration-usechangelog)" : Boolean,
  "[VpcConfiguration](#cfn-kendra-datasource-sharepointconfiguration-vpcconfiguration)" : DataSourceVpcConfiguration
}
```

### YAML
<a name="aws-properties-kendra-datasource-sharepointconfiguration-syntax.yaml"></a>

```
  [CrawlAttachments](#cfn-kendra-datasource-sharepointconfiguration-crawlattachments): Boolean
  [DisableLocalGroups](#cfn-kendra-datasource-sharepointconfiguration-disablelocalgroups): Boolean
  [DocumentTitleFieldName](#cfn-kendra-datasource-sharepointconfiguration-documenttitlefieldname): String
  [ExclusionPatterns](#cfn-kendra-datasource-sharepointconfiguration-exclusionpatterns): 
    - String
  [FieldMappings](#cfn-kendra-datasource-sharepointconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
  [InclusionPatterns](#cfn-kendra-datasource-sharepointconfiguration-inclusionpatterns): 
    - String
  [SecretArn](#cfn-kendra-datasource-sharepointconfiguration-secretarn): String
  [SharePointVersion](#cfn-kendra-datasource-sharepointconfiguration-sharepointversion): String
  [SslCertificateS3Path](#cfn-kendra-datasource-sharepointconfiguration-sslcertificates3path): 
    S3Path
  [Urls](#cfn-kendra-datasource-sharepointconfiguration-urls): 
    - String
  [UseChangeLog](#cfn-kendra-datasource-sharepointconfiguration-usechangelog): Boolean
  [VpcConfiguration](#cfn-kendra-datasource-sharepointconfiguration-vpcconfiguration): 
    DataSourceVpcConfiguration
```

## Properties
<a name="aws-properties-kendra-datasource-sharepointconfiguration-properties"></a>

`CrawlAttachments`  <a name="cfn-kendra-datasource-sharepointconfiguration-crawlattachments"></a>
`TRUE` to index document attachments.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DisableLocalGroups`  <a name="cfn-kendra-datasource-sharepointconfiguration-disablelocalgroups"></a>
`TRUE` to disable local groups information.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentTitleFieldName`  <a name="cfn-kendra-datasource-sharepointconfiguration-documenttitlefieldname"></a>
The Microsoft SharePoint attribute field that contains the title of the document.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExclusionPatterns`  <a name="cfn-kendra-datasource-sharepointconfiguration-exclusionpatterns"></a>
A list of regular expression patterns. Documents that match the patterns are excluded from the index. Documents that don't match the patterns are included in the index. If a document matches both an exclusion pattern and an inclusion pattern, the document is not included in the index.  
The regex is applied to the display URL of the SharePoint document.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-sharepointconfiguration-fieldmappings"></a>
A list of `DataSourceToIndexFieldMapping` objects that map Microsoft SharePoint attributes or fields to Amazon Kendra index fields. You must first create the index fields using the [UpdateIndex](https://docs.aws.amazon.com/kendra/latest/dg/API_UpdateIndex.html) operation before you map SharePoint attributes. For more information, see [Mapping Data Source Fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html).  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionPatterns`  <a name="cfn-kendra-datasource-sharepointconfiguration-inclusionpatterns"></a>
A list of regular expression patterns to include certain documents in your SharePoint. Documents that match the patterns are included in the index. Documents that don't match the patterns are excluded from the index. If a document matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the document isn't included in the index.  
The regex applies to the display URL of the SharePoint document.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretArn`  <a name="cfn-kendra-datasource-sharepointconfiguration-secretarn"></a>
The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that contains the user name and password required to connect to the SharePoint instance. For more information, see [Microsoft SharePoint](https://docs.aws.amazon.com/kendra/latest/dg/data-source-sharepoint.html).  
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SharePointVersion`  <a name="cfn-kendra-datasource-sharepointconfiguration-sharepointversion"></a>
The version of Microsoft SharePoint that you use.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SHAREPOINT_ONLINE | SHAREPOINT_2013 | SHAREPOINT_2016`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SslCertificateS3Path`  <a name="cfn-kendra-datasource-sharepointconfiguration-sslcertificates3path"></a>
Information required to find a specific file in an Amazon S3 bucket.  
*Required*: No  
*Type*: [S3Path](aws-properties-kendra-datasource-s3path.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Urls`  <a name="cfn-kendra-datasource-sharepointconfiguration-urls"></a>
The Microsoft SharePoint site URLs for the documents you want to index.  
*Required*: Yes  
*Type*: Array of String  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UseChangeLog`  <a name="cfn-kendra-datasource-sharepointconfiguration-usechangelog"></a>
`TRUE` to use the SharePoint change log to determine which documents require updating in the index. Depending on the change log's size, it may take longer for Amazon Kendra to use the change log than to scan all of your documents in SharePoint.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`VpcConfiguration`  <a name="cfn-kendra-datasource-sharepointconfiguration-vpcconfiguration"></a>
Provides information for connecting to an Amazon VPC.  
*Required*: No  
*Type*: [DataSourceVpcConfiguration](aws-properties-kendra-datasource-datasourcevpcconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource SqlConfiguration
<a name="aws-properties-kendra-datasource-sqlconfiguration"></a>

Provides information that configures Amazon Kendra to use a SQL database.

## Syntax
<a name="aws-properties-kendra-datasource-sqlconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-sqlconfiguration-syntax.json"></a>

```
{
  "[QueryIdentifiersEnclosingOption](#cfn-kendra-datasource-sqlconfiguration-queryidentifiersenclosingoption)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-sqlconfiguration-syntax.yaml"></a>

```
  [QueryIdentifiersEnclosingOption](#cfn-kendra-datasource-sqlconfiguration-queryidentifiersenclosingoption): String
```

## Properties
<a name="aws-properties-kendra-datasource-sqlconfiguration-properties"></a>

`QueryIdentifiersEnclosingOption`  <a name="cfn-kendra-datasource-sqlconfiguration-queryidentifiersenclosingoption"></a>
Determines whether Amazon Kendra encloses SQL identifiers for tables and column names in double quotes (") when making a database query. You can set the value to `DOUBLE_QUOTES` or `NONE`.  
 By default, Amazon Kendra passes SQL identifiers the way that they are entered into the data source configuration. It does not change the case of identifiers or enclose them in quotes.  
 PostgreSQL internally converts uppercase characters to lower case characters in identifiers unless they are quoted. Choosing this option encloses identifiers in quotes so that PostgreSQL does not convert the character's case.  
 For MySQL databases, you must enable the ansi\$1quotes option when you set this field to `DOUBLE_QUOTES`.  
*Required*: No  
*Type*: String  
*Allowed values*: `DOUBLE_QUOTES | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource Tag
<a name="aws-properties-kendra-datasource-tag"></a>

A key-value pair that identifies or categorizes an index, FAQ, data source, or other resource. TA tag key and value can consist of Unicode letters, digits, white space, and any of the following symbols: \$1 . : / = \$1 - @.

## Syntax
<a name="aws-properties-kendra-datasource-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-tag-syntax.json"></a>

```
{
  "[Key](#cfn-kendra-datasource-tag-key)" : String,
  "[Value](#cfn-kendra-datasource-tag-value)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-tag-syntax.yaml"></a>

```
  [Key](#cfn-kendra-datasource-tag-key): String
  [Value](#cfn-kendra-datasource-tag-value): String
```

## Properties
<a name="aws-properties-kendra-datasource-tag-properties"></a>

`Key`  <a name="cfn-kendra-datasource-tag-key"></a>
The key for the tag. Keys are not case sensitive and must be unique for the index, FAQ, data source, or other resource.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-kendra-datasource-tag-value"></a>
The value associated with the tag. The value may be an empty string but it can't be null.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource TemplateConfiguration
<a name="aws-properties-kendra-datasource-templateconfiguration"></a>

Provides a template for the configuration information to connect to your data source.

## Syntax
<a name="aws-properties-kendra-datasource-templateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-templateconfiguration-syntax.json"></a>

```
{
  "[Template](#cfn-kendra-datasource-templateconfiguration-template)" : Json
}
```

### YAML
<a name="aws-properties-kendra-datasource-templateconfiguration-syntax.yaml"></a>

```
  [Template](#cfn-kendra-datasource-templateconfiguration-template): Json
```

## Properties
<a name="aws-properties-kendra-datasource-templateconfiguration-properties"></a>

`Template`  <a name="cfn-kendra-datasource-templateconfiguration-template"></a>
The template schema used for the data source, where templates schemas are supported.  
See [Data source template schemas](https://docs.aws.amazon.com/kendra/latest/dg/ds-schemas.html).  
*Required*: Yes  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource WebCrawlerAuthenticationConfiguration
<a name="aws-properties-kendra-datasource-webcrawlerauthenticationconfiguration"></a>

Provides the configuration information to connect to websites that require user authentication.

## Syntax
<a name="aws-properties-kendra-datasource-webcrawlerauthenticationconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-webcrawlerauthenticationconfiguration-syntax.json"></a>

```
{
  "[BasicAuthentication](#cfn-kendra-datasource-webcrawlerauthenticationconfiguration-basicauthentication)" : [ WebCrawlerBasicAuthentication, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-webcrawlerauthenticationconfiguration-syntax.yaml"></a>

```
  [BasicAuthentication](#cfn-kendra-datasource-webcrawlerauthenticationconfiguration-basicauthentication): 
    - WebCrawlerBasicAuthentication
```

## Properties
<a name="aws-properties-kendra-datasource-webcrawlerauthenticationconfiguration-properties"></a>

`BasicAuthentication`  <a name="cfn-kendra-datasource-webcrawlerauthenticationconfiguration-basicauthentication"></a>
The list of configuration information that's required to connect to and crawl a website host using basic authentication credentials.  
The list includes the name and port number of the website host.  
*Required*: No  
*Type*: Array of [WebCrawlerBasicAuthentication](aws-properties-kendra-datasource-webcrawlerbasicauthentication.md)  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource WebCrawlerBasicAuthentication
<a name="aws-properties-kendra-datasource-webcrawlerbasicauthentication"></a>

Provides the configuration information to connect to websites that require basic user authentication.

## Syntax
<a name="aws-properties-kendra-datasource-webcrawlerbasicauthentication-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-webcrawlerbasicauthentication-syntax.json"></a>

```
{
  "[Credentials](#cfn-kendra-datasource-webcrawlerbasicauthentication-credentials)" : String,
  "[Host](#cfn-kendra-datasource-webcrawlerbasicauthentication-host)" : String,
  "[Port](#cfn-kendra-datasource-webcrawlerbasicauthentication-port)" : Integer
}
```

### YAML
<a name="aws-properties-kendra-datasource-webcrawlerbasicauthentication-syntax.yaml"></a>

```
  [Credentials](#cfn-kendra-datasource-webcrawlerbasicauthentication-credentials): String
  [Host](#cfn-kendra-datasource-webcrawlerbasicauthentication-host): String
  [Port](#cfn-kendra-datasource-webcrawlerbasicauthentication-port): Integer
```

## Properties
<a name="aws-properties-kendra-datasource-webcrawlerbasicauthentication-properties"></a>

`Credentials`  <a name="cfn-kendra-datasource-webcrawlerbasicauthentication-credentials"></a>
The Amazon Resource Name (ARN) of an AWS Secrets Manager secret. You create a secret to store your credentials in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html)  
You use a secret if basic authentication credentials are required to connect to a website. The secret stores your credentials of user name and password.  
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Host`  <a name="cfn-kendra-datasource-webcrawlerbasicauthentication-host"></a>
The name of the website host you want to connect to using authentication credentials.  
For example, the host name of https://a.example.com/page1.html is "a.example.com".  
*Required*: Yes  
*Type*: String  
*Pattern*: `([^\s]*)`  
*Minimum*: `1`  
*Maximum*: `253`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Port`  <a name="cfn-kendra-datasource-webcrawlerbasicauthentication-port"></a>
The port number of the website host you want to connect to using authentication credentials.  
For example, the port for https://a.example.com/page1.html is 443, the standard port for HTTPS.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `65535`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource WebCrawlerConfiguration
<a name="aws-properties-kendra-datasource-webcrawlerconfiguration"></a>

Provides the configuration information required for Amazon Kendra Web Crawler.

## Syntax
<a name="aws-properties-kendra-datasource-webcrawlerconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-webcrawlerconfiguration-syntax.json"></a>

```
{
  "[AuthenticationConfiguration](#cfn-kendra-datasource-webcrawlerconfiguration-authenticationconfiguration)" : WebCrawlerAuthenticationConfiguration,
  "[CrawlDepth](#cfn-kendra-datasource-webcrawlerconfiguration-crawldepth)" : Integer,
  "[MaxContentSizePerPageInMegaBytes](#cfn-kendra-datasource-webcrawlerconfiguration-maxcontentsizeperpageinmegabytes)" : Number,
  "[MaxLinksPerPage](#cfn-kendra-datasource-webcrawlerconfiguration-maxlinksperpage)" : Integer,
  "[MaxUrlsPerMinuteCrawlRate](#cfn-kendra-datasource-webcrawlerconfiguration-maxurlsperminutecrawlrate)" : Integer,
  "[ProxyConfiguration](#cfn-kendra-datasource-webcrawlerconfiguration-proxyconfiguration)" : ProxyConfiguration,
  "[UrlExclusionPatterns](#cfn-kendra-datasource-webcrawlerconfiguration-urlexclusionpatterns)" : [ String, ... ],
  "[UrlInclusionPatterns](#cfn-kendra-datasource-webcrawlerconfiguration-urlinclusionpatterns)" : [ String, ... ],
  "[Urls](#cfn-kendra-datasource-webcrawlerconfiguration-urls)" : WebCrawlerUrls
}
```

### YAML
<a name="aws-properties-kendra-datasource-webcrawlerconfiguration-syntax.yaml"></a>

```
  [AuthenticationConfiguration](#cfn-kendra-datasource-webcrawlerconfiguration-authenticationconfiguration): 
    WebCrawlerAuthenticationConfiguration
  [CrawlDepth](#cfn-kendra-datasource-webcrawlerconfiguration-crawldepth): Integer
  [MaxContentSizePerPageInMegaBytes](#cfn-kendra-datasource-webcrawlerconfiguration-maxcontentsizeperpageinmegabytes): Number
  [MaxLinksPerPage](#cfn-kendra-datasource-webcrawlerconfiguration-maxlinksperpage): Integer
  [MaxUrlsPerMinuteCrawlRate](#cfn-kendra-datasource-webcrawlerconfiguration-maxurlsperminutecrawlrate): Integer
  [ProxyConfiguration](#cfn-kendra-datasource-webcrawlerconfiguration-proxyconfiguration): 
    ProxyConfiguration
  [UrlExclusionPatterns](#cfn-kendra-datasource-webcrawlerconfiguration-urlexclusionpatterns): 
    - String
  [UrlInclusionPatterns](#cfn-kendra-datasource-webcrawlerconfiguration-urlinclusionpatterns): 
    - String
  [Urls](#cfn-kendra-datasource-webcrawlerconfiguration-urls): 
    WebCrawlerUrls
```

## Properties
<a name="aws-properties-kendra-datasource-webcrawlerconfiguration-properties"></a>

`AuthenticationConfiguration`  <a name="cfn-kendra-datasource-webcrawlerconfiguration-authenticationconfiguration"></a>
Configuration information required to connect to websites using authentication.  
You can connect to websites using basic authentication of user name and password. You use a secret in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) to store your authentication credentials.  
You must provide the website host name and port number. For example, the host name of https://a.example.com/page1.html is "a.example.com" and the port is 443, the standard port for HTTPS.  
*Required*: No  
*Type*: [WebCrawlerAuthenticationConfiguration](aws-properties-kendra-datasource-webcrawlerauthenticationconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CrawlDepth`  <a name="cfn-kendra-datasource-webcrawlerconfiguration-crawldepth"></a>
The 'depth' or number of levels from the seed level to crawl. For example, the seed URL page is depth 1 and any hyperlinks on this page that are also crawled are depth 2.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MaxContentSizePerPageInMegaBytes`  <a name="cfn-kendra-datasource-webcrawlerconfiguration-maxcontentsizeperpageinmegabytes"></a>
The maximum size (in MB) of a web page or attachment to crawl.  
Files larger than this size (in MB) are skipped/not crawled.  
The default maximum size of a web page or attachment is set to 50 MB.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MaxLinksPerPage`  <a name="cfn-kendra-datasource-webcrawlerconfiguration-maxlinksperpage"></a>
The maximum number of URLs on a web page to include when crawling a website. This number is per web page.  
As a website’s web pages are crawled, any URLs the web pages link to are also crawled. URLs on a web page are crawled in order of appearance.  
The default maximum links per page is 100.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MaxUrlsPerMinuteCrawlRate`  <a name="cfn-kendra-datasource-webcrawlerconfiguration-maxurlsperminutecrawlrate"></a>
The maximum number of URLs crawled per website host per minute.  
A minimum of one URL is required.  
The default maximum number of URLs crawled per website host per minute is 300.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `300`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProxyConfiguration`  <a name="cfn-kendra-datasource-webcrawlerconfiguration-proxyconfiguration"></a>
Configuration information required to connect to your internal websites via a web proxy.  
You must provide the website host name and port number. For example, the host name of https://a.example.com/page1.html is "a.example.com" and the port is 443, the standard port for HTTPS.  
Web proxy credentials are optional and you can use them to connect to a web proxy server that requires basic authentication. To store web proxy credentials, you use a secret in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html).  
*Required*: No  
*Type*: [ProxyConfiguration](aws-properties-kendra-datasource-proxyconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UrlExclusionPatterns`  <a name="cfn-kendra-datasource-webcrawlerconfiguration-urlexclusionpatterns"></a>
A list of regular expression patterns to exclude certain URLs to crawl. URLs that match the patterns are excluded from the index. URLs that don't match the patterns are included in the index. If a URL matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the URL file isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UrlInclusionPatterns`  <a name="cfn-kendra-datasource-webcrawlerconfiguration-urlinclusionpatterns"></a>
A list of regular expression patterns to include certain URLs to crawl. URLs that match the patterns are included in the index. URLs that don't match the patterns are excluded from the index. If a URL matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the URL file isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Urls`  <a name="cfn-kendra-datasource-webcrawlerconfiguration-urls"></a>
Specifies the seed or starting point URLs of the websites or the sitemap URLs of the websites you want to crawl.  
You can include website subdomains. You can list up to 100 seed URLs and up to three sitemap URLs.  
You can only crawl websites that use the secure communication protocol, Hypertext Transfer Protocol Secure (HTTPS). If you receive an error when crawling a website, it could be that the website is blocked from crawling.  
 *When selecting websites to index, you must adhere to the [Amazon Acceptable Use Policy](https://aws.amazon.com/aup/) and all other Amazon terms. Remember that you must only use Amazon Kendra Web Crawler to index your own webpages, or webpages that you have authorization to index.*   
*Required*: Yes  
*Type*: [WebCrawlerUrls](aws-properties-kendra-datasource-webcrawlerurls.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource WebCrawlerSeedUrlConfiguration
<a name="aws-properties-kendra-datasource-webcrawlerseedurlconfiguration"></a>

Provides the configuration information of the seed or starting point URLs to crawl.

 *When selecting websites to index, you must adhere to the [Amazon Acceptable Use Policy](https://aws.amazon.com/aup/) and all other Amazon terms. Remember that you must only use the Amazon Kendra web crawler to index your own webpages, or webpages that you have authorization to index.* 

## Syntax
<a name="aws-properties-kendra-datasource-webcrawlerseedurlconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-webcrawlerseedurlconfiguration-syntax.json"></a>

```
{
  "[SeedUrls](#cfn-kendra-datasource-webcrawlerseedurlconfiguration-seedurls)" : [ String, ... ],
  "[WebCrawlerMode](#cfn-kendra-datasource-webcrawlerseedurlconfiguration-webcrawlermode)" : String
}
```

### YAML
<a name="aws-properties-kendra-datasource-webcrawlerseedurlconfiguration-syntax.yaml"></a>

```
  [SeedUrls](#cfn-kendra-datasource-webcrawlerseedurlconfiguration-seedurls): 
    - String
  [WebCrawlerMode](#cfn-kendra-datasource-webcrawlerseedurlconfiguration-webcrawlermode): String
```

## Properties
<a name="aws-properties-kendra-datasource-webcrawlerseedurlconfiguration-properties"></a>

`SeedUrls`  <a name="cfn-kendra-datasource-webcrawlerseedurlconfiguration-seedurls"></a>
The list of seed or starting point URLs of the websites you want to crawl.  
The list can include a maximum of 100 seed URLs.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`WebCrawlerMode`  <a name="cfn-kendra-datasource-webcrawlerseedurlconfiguration-webcrawlermode"></a>
You can choose one of the following modes:  
+ `HOST_ONLY`—crawl only the website host names. For example, if the seed URL is "abc.example.com", then only URLs with host name "abc.example.com" are crawled.
+ `SUBDOMAINS`—crawl the website host names with subdomains. For example, if the seed URL is "abc.example.com", then "a.abc.example.com" and "b.abc.example.com" are also crawled.
+ `EVERYTHING`—crawl the website host names with subdomains and other domains that the web pages link to.
The default mode is set to `HOST_ONLY`.  
*Required*: No  
*Type*: String  
*Allowed values*: `HOST_ONLY | SUBDOMAINS | EVERYTHING`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource WebCrawlerSiteMapsConfiguration
<a name="aws-properties-kendra-datasource-webcrawlersitemapsconfiguration"></a>

Provides the configuration information of the sitemap URLs to crawl.

 *When selecting websites to index, you must adhere to the [Amazon Acceptable Use Policy](https://aws.amazon.com/aup/) and all other Amazon terms. Remember that you must only use the Amazon Kendra web crawler to index your own webpages, or webpages that you have authorization to index.* 

## Syntax
<a name="aws-properties-kendra-datasource-webcrawlersitemapsconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-webcrawlersitemapsconfiguration-syntax.json"></a>

```
{
  "[SiteMaps](#cfn-kendra-datasource-webcrawlersitemapsconfiguration-sitemaps)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-kendra-datasource-webcrawlersitemapsconfiguration-syntax.yaml"></a>

```
  [SiteMaps](#cfn-kendra-datasource-webcrawlersitemapsconfiguration-sitemaps): 
    - String
```

## Properties
<a name="aws-properties-kendra-datasource-webcrawlersitemapsconfiguration-properties"></a>

`SiteMaps`  <a name="cfn-kendra-datasource-webcrawlersitemapsconfiguration-sitemaps"></a>
The list of sitemap URLs of the websites you want to crawl.  
The list can include a maximum of three sitemap URLs.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `3`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource WebCrawlerUrls
<a name="aws-properties-kendra-datasource-webcrawlerurls"></a>

Specifies the seed or starting point URLs of the websites or the sitemap URLs of the websites you want to crawl.

You can include website subdomains. You can list up to 100 seed URLs and up to three sitemap URLs.

You can only crawl websites that use the secure communication protocol, Hypertext Transfer Protocol Secure (HTTPS). If you receive an error when crawling a website, it could be that the website is blocked from crawling.

 *When selecting websites to index, you must adhere to the [Amazon Acceptable Use Policy](https://aws.amazon.com/aup/) and all other Amazon terms. Remember that you must only use the Amazon Kendra web crawler to index your own webpages, or webpages that you have authorization to index.* 

## Syntax
<a name="aws-properties-kendra-datasource-webcrawlerurls-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-webcrawlerurls-syntax.json"></a>

```
{
  "[SeedUrlConfiguration](#cfn-kendra-datasource-webcrawlerurls-seedurlconfiguration)" : WebCrawlerSeedUrlConfiguration,
  "[SiteMapsConfiguration](#cfn-kendra-datasource-webcrawlerurls-sitemapsconfiguration)" : WebCrawlerSiteMapsConfiguration
}
```

### YAML
<a name="aws-properties-kendra-datasource-webcrawlerurls-syntax.yaml"></a>

```
  [SeedUrlConfiguration](#cfn-kendra-datasource-webcrawlerurls-seedurlconfiguration): 
    WebCrawlerSeedUrlConfiguration
  [SiteMapsConfiguration](#cfn-kendra-datasource-webcrawlerurls-sitemapsconfiguration): 
    WebCrawlerSiteMapsConfiguration
```

## Properties
<a name="aws-properties-kendra-datasource-webcrawlerurls-properties"></a>

`SeedUrlConfiguration`  <a name="cfn-kendra-datasource-webcrawlerurls-seedurlconfiguration"></a>
Configuration of the seed or starting point URLs of the websites you want to crawl.  
You can choose to crawl only the website host names, or the website host names with subdomains, or the website host names with subdomains and other domains that the web pages link to.  
You can list up to 100 seed URLs.  
*Required*: No  
*Type*: [WebCrawlerSeedUrlConfiguration](aws-properties-kendra-datasource-webcrawlerseedurlconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SiteMapsConfiguration`  <a name="cfn-kendra-datasource-webcrawlerurls-sitemapsconfiguration"></a>
Configuration of the sitemap URLs of the websites you want to crawl.  
Only URLs belonging to the same website host names are crawled. You can list up to three sitemap URLs.  
*Required*: No  
*Type*: [WebCrawlerSiteMapsConfiguration](aws-properties-kendra-datasource-webcrawlersitemapsconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::DataSource WorkDocsConfiguration
<a name="aws-properties-kendra-datasource-workdocsconfiguration"></a>

Provides the configuration information to connect to WorkDocs as your data source.

WorkDocs connector is available in Oregon, North Virginia, Sydney, Singapore and Ireland regions.

## Syntax
<a name="aws-properties-kendra-datasource-workdocsconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-datasource-workdocsconfiguration-syntax.json"></a>

```
{
  "[CrawlComments](#cfn-kendra-datasource-workdocsconfiguration-crawlcomments)" : Boolean,
  "[ExclusionPatterns](#cfn-kendra-datasource-workdocsconfiguration-exclusionpatterns)" : [ String, ... ],
  "[FieldMappings](#cfn-kendra-datasource-workdocsconfiguration-fieldmappings)" : [ DataSourceToIndexFieldMapping, ... ],
  "[InclusionPatterns](#cfn-kendra-datasource-workdocsconfiguration-inclusionpatterns)" : [ String, ... ],
  "[OrganizationId](#cfn-kendra-datasource-workdocsconfiguration-organizationid)" : String,
  "[UseChangeLog](#cfn-kendra-datasource-workdocsconfiguration-usechangelog)" : Boolean
}
```

### YAML
<a name="aws-properties-kendra-datasource-workdocsconfiguration-syntax.yaml"></a>

```
  [CrawlComments](#cfn-kendra-datasource-workdocsconfiguration-crawlcomments): Boolean
  [ExclusionPatterns](#cfn-kendra-datasource-workdocsconfiguration-exclusionpatterns): 
    - String
  [FieldMappings](#cfn-kendra-datasource-workdocsconfiguration-fieldmappings): 
    - DataSourceToIndexFieldMapping
  [InclusionPatterns](#cfn-kendra-datasource-workdocsconfiguration-inclusionpatterns): 
    - String
  [OrganizationId](#cfn-kendra-datasource-workdocsconfiguration-organizationid): String
  [UseChangeLog](#cfn-kendra-datasource-workdocsconfiguration-usechangelog): Boolean
```

## Properties
<a name="aws-properties-kendra-datasource-workdocsconfiguration-properties"></a>

`CrawlComments`  <a name="cfn-kendra-datasource-workdocsconfiguration-crawlcomments"></a>
`TRUE` to include comments on documents in your index. Including comments in your index means each comment is a document that can be searched on.  
The default is set to `FALSE`.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExclusionPatterns`  <a name="cfn-kendra-datasource-workdocsconfiguration-exclusionpatterns"></a>
A list of regular expression patterns to exclude certain files in your WorkDocs site repository. Files that match the patterns are excluded from the index. Files that don’t match the patterns are included in the index. If a file matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the file isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldMappings`  <a name="cfn-kendra-datasource-workdocsconfiguration-fieldmappings"></a>
A list of `DataSourceToIndexFieldMapping` objects that map WorkDocs data source attributes or field names to Amazon Kendra index field names. To create custom fields, use the `UpdateIndex` API before you map to WorkDocs fields. For more information, see [Mapping data source fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html). The WorkDocs data source field names must exist in your WorkDocs custom metadata.  
*Required*: No  
*Type*: Array of [DataSourceToIndexFieldMapping](aws-properties-kendra-datasource-datasourcetoindexfieldmapping.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionPatterns`  <a name="cfn-kendra-datasource-workdocsconfiguration-inclusionpatterns"></a>
A list of regular expression patterns to include certain files in your WorkDocs site repository. Files that match the patterns are included in the index. Files that don't match the patterns are excluded from the index. If a file matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the file isn't included in the index.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `50 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OrganizationId`  <a name="cfn-kendra-datasource-workdocsconfiguration-organizationid"></a>
The identifier of the directory corresponding to your WorkDocs site repository.  
You can find the organization ID in the [Directory Service](https://console.aws.amazon.com/directoryservicev2/) by going to **Active Directory**, then **Directories**. Your WorkDocs site directory has an ID, which is the organization ID. You can also set up a new WorkDocs directory in the Directory Service console and enable a WorkDocs site for the directory in the WorkDocs console.  
*Required*: Yes  
*Type*: String  
*Pattern*: `d-[0-9a-fA-F]{10}`  
*Minimum*: `12`  
*Maximum*: `12`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UseChangeLog`  <a name="cfn-kendra-datasource-workdocsconfiguration-usechangelog"></a>
`TRUE` to use the WorkDocs change log to determine which documents require updating in the index. Depending on the change log's size, it may take longer for Amazon Kendra to use the change log than to scan all of your documents in WorkDocs.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Faq
<a name="aws-resource-kendra-faq"></a>

Creates an new set of frequently asked question (FAQ) questions and answers.

## Syntax
<a name="aws-resource-kendra-faq-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-kendra-faq-syntax.json"></a>

```
{
  "Type" : "AWS::Kendra::Faq",
  "Properties" : {
      "[Description](#cfn-kendra-faq-description)" : String,
      "[FileFormat](#cfn-kendra-faq-fileformat)" : String,
      "[IndexId](#cfn-kendra-faq-indexid)" : String,
      "[LanguageCode](#cfn-kendra-faq-languagecode)" : String,
      "[Name](#cfn-kendra-faq-name)" : String,
      "[RoleArn](#cfn-kendra-faq-rolearn)" : String,
      "[S3Path](#cfn-kendra-faq-s3path)" : S3Path,
      "[Tags](#cfn-kendra-faq-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-kendra-faq-syntax.yaml"></a>

```
Type: AWS::Kendra::Faq
Properties:
  [Description](#cfn-kendra-faq-description): String
  [FileFormat](#cfn-kendra-faq-fileformat): String
  [IndexId](#cfn-kendra-faq-indexid): String
  [LanguageCode](#cfn-kendra-faq-languagecode): String
  [Name](#cfn-kendra-faq-name): String
  [RoleArn](#cfn-kendra-faq-rolearn): String
  [S3Path](#cfn-kendra-faq-s3path): 
    S3Path
  [Tags](#cfn-kendra-faq-tags): 
    - Tag
```

## Properties
<a name="aws-resource-kendra-faq-properties"></a>

`Description`  <a name="cfn-kendra-faq-description"></a>
A description for the FAQ.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FileFormat`  <a name="cfn-kendra-faq-fileformat"></a>
The format of the input file. You can choose between a basic CSV format, a CSV format that includes customs attributes in a header, and a JSON format that includes custom attributes.   
 The format must match the format of the file stored in the S3 bucket identified in the S3Path parameter.   
Valid values are:  
+  `CSV` 
+  `CSV_WITH_HEADER` 
+  `JSON` 
*Required*: No  
*Type*: String  
*Allowed values*: `CSV | CSV_WITH_HEADER | JSON`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`IndexId`  <a name="cfn-kendra-faq-indexid"></a>
The identifier of the index that contains the FAQ.  
*Required*: Yes  
*Type*: String  
*Minimum*: `36`  
*Maximum*: `36`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`LanguageCode`  <a name="cfn-kendra-faq-languagecode"></a>
The code for a language. This shows a supported language for the FAQ document as part of the summary information for FAQs. English is supported by default. For more information on supported languages, including their codes, see [Adding documents in languages other than English](https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html).  
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z-]*`  
*Minimum*: `2`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-kendra-faq-name"></a>
The name that you assigned the FAQ when you created or updated the FAQ.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RoleArn`  <a name="cfn-kendra-faq-rolearn"></a>
The Amazon Resource Name (ARN) of a role with permission to access the S3 bucket that contains the FAQ.  
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3Path`  <a name="cfn-kendra-faq-s3path"></a>
The Amazon Simple Storage Service (Amazon S3) location of the FAQ input data.  
*Required*: Yes  
*Type*: [S3Path](aws-properties-kendra-faq-s3path.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-kendra-faq-tags"></a>
An array of key-value pairs to apply to this resource  
For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).  
*Required*: No  
*Type*: Array of [Tag](aws-properties-kendra-faq-tag.md)  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-kendra-faq-return-values"></a>

### Ref
<a name="aws-resource-kendra-faq-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the FAQ identifier. For example:

 `{ "Ref": "<faq-id>|<index-id>" }` 

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-kendra-faq-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-kendra-faq-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
 `arn:aws:kendra:us-west-2:111122223333:index/335c3741-41df-46a6-b5d3-61f85b787884/faq/f61995a6-cd5c-4e99-9cfc-58816d8bfaa7` 

`Id`  <a name="Id-fn::getatt"></a>
The identifier for the FAQ. For example:  
 `f61995a6-cd5c-4e99-9cfc-58816d8bfaa7` 

# AWS::Kendra::Faq S3Path
<a name="aws-properties-kendra-faq-s3path"></a>

Information required to find a specific file in an Amazon S3 bucket.

## Syntax
<a name="aws-properties-kendra-faq-s3path-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-faq-s3path-syntax.json"></a>

```
{
  "[Bucket](#cfn-kendra-faq-s3path-bucket)" : String,
  "[Key](#cfn-kendra-faq-s3path-key)" : String
}
```

### YAML
<a name="aws-properties-kendra-faq-s3path-syntax.yaml"></a>

```
  [Bucket](#cfn-kendra-faq-s3path-bucket): String
  [Key](#cfn-kendra-faq-s3path-key): String
```

## Properties
<a name="aws-properties-kendra-faq-s3path-properties"></a>

`Bucket`  <a name="cfn-kendra-faq-s3path-bucket"></a>
The name of the S3 bucket that contains the file.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]`  
*Minimum*: `3`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Key`  <a name="cfn-kendra-faq-s3path-key"></a>
The name of the file.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Kendra::Faq Tag
<a name="aws-properties-kendra-faq-tag"></a>

A key-value pair that identifies or categorizes an index, FAQ, data source, or other resource. TA tag key and value can consist of Unicode letters, digits, white space, and any of the following symbols: \$1 . : / = \$1 - @.

## Syntax
<a name="aws-properties-kendra-faq-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-faq-tag-syntax.json"></a>

```
{
  "[Key](#cfn-kendra-faq-tag-key)" : String,
  "[Value](#cfn-kendra-faq-tag-value)" : String
}
```

### YAML
<a name="aws-properties-kendra-faq-tag-syntax.yaml"></a>

```
  [Key](#cfn-kendra-faq-tag-key): String
  [Value](#cfn-kendra-faq-tag-value): String
```

## Properties
<a name="aws-properties-kendra-faq-tag-properties"></a>

`Key`  <a name="cfn-kendra-faq-tag-key"></a>
The key for the tag. Keys are not case sensitive and must be unique for the index, FAQ, data source, or other resource.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-kendra-faq-tag-value"></a>
The value associated with the tag. The value may be an empty string but it can't be null.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Index
<a name="aws-resource-kendra-index"></a>

Creates an Amazon Kendra index

Once the index is active you can add documents to your index using the [BatchPutDocument](https://docs.aws.amazon.com/kendra/latest/dg/BatchPutDocument.html) operation or using one of the supported data sources. 

## Syntax
<a name="aws-resource-kendra-index-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-kendra-index-syntax.json"></a>

```
{
  "Type" : "AWS::Kendra::Index",
  "Properties" : {
      "[CapacityUnits](#cfn-kendra-index-capacityunits)" : CapacityUnitsConfiguration,
      "[Description](#cfn-kendra-index-description)" : String,
      "[DocumentMetadataConfigurations](#cfn-kendra-index-documentmetadataconfigurations)" : [ DocumentMetadataConfiguration, ... ],
      "[Edition](#cfn-kendra-index-edition)" : String,
      "[Name](#cfn-kendra-index-name)" : String,
      "[RoleArn](#cfn-kendra-index-rolearn)" : String,
      "[ServerSideEncryptionConfiguration](#cfn-kendra-index-serversideencryptionconfiguration)" : ServerSideEncryptionConfiguration,
      "[Tags](#cfn-kendra-index-tags)" : [ Tag, ... ],
      "[UserContextPolicy](#cfn-kendra-index-usercontextpolicy)" : String,
      "[UserTokenConfigurations](#cfn-kendra-index-usertokenconfigurations)" : [ UserTokenConfiguration, ... ]
    }
}
```

### YAML
<a name="aws-resource-kendra-index-syntax.yaml"></a>

```
Type: AWS::Kendra::Index
Properties:
  [CapacityUnits](#cfn-kendra-index-capacityunits): 
    CapacityUnitsConfiguration
  [Description](#cfn-kendra-index-description): String
  [DocumentMetadataConfigurations](#cfn-kendra-index-documentmetadataconfigurations): 
    - DocumentMetadataConfiguration
  [Edition](#cfn-kendra-index-edition): String
  [Name](#cfn-kendra-index-name): String
  [RoleArn](#cfn-kendra-index-rolearn): String
  [ServerSideEncryptionConfiguration](#cfn-kendra-index-serversideencryptionconfiguration): 
    ServerSideEncryptionConfiguration
  [Tags](#cfn-kendra-index-tags): 
    - Tag
  [UserContextPolicy](#cfn-kendra-index-usercontextpolicy): String
  [UserTokenConfigurations](#cfn-kendra-index-usertokenconfigurations): 
    - UserTokenConfiguration
```

## Properties
<a name="aws-resource-kendra-index-properties"></a>

`CapacityUnits`  <a name="cfn-kendra-index-capacityunits"></a>
Specifies additional capacity units configured for your Enterprise Edition index. You can add and remove capacity units to fit your usage requirements.  
*Required*: No  
*Type*: [CapacityUnitsConfiguration](aws-properties-kendra-index-capacityunitsconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-kendra-index-description"></a>
A description for the index.  
*Required*: No  
*Type*: String  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DocumentMetadataConfigurations`  <a name="cfn-kendra-index-documentmetadataconfigurations"></a>
Specifies the properties of an index field. You can add either a custom or a built-in field. You can add and remove built-in fields at any time. When a built-in field is removed it's configuration reverts to the default for the field. Custom fields can't be removed from an index after they are added.  
*Required*: No  
*Type*: Array of [DocumentMetadataConfiguration](aws-properties-kendra-index-documentmetadataconfiguration.md)  
*Maximum*: `500`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Edition`  <a name="cfn-kendra-index-edition"></a>
Indicates whether the index is a Enterprise Edition index, a Developer Edition index, or a GenAI Enterprise Edition index.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `DEVELOPER_EDITION | ENTERPRISE_EDITION | GEN_AI_ENTERPRISE_EDITION`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Name`  <a name="cfn-kendra-index-name"></a>
The name of the index.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoleArn`  <a name="cfn-kendra-index-rolearn"></a>
An IAM role that gives Amazon Kendra permissions to access your Amazon CloudWatch logs and metrics. This is also the role used when you use the [BatchPutDocument](https://docs.aws.amazon.com/kendra/latest/dg/BatchPutDocument.html) operation to index documents from an Amazon S3 bucket.  
*Required*: Yes  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ServerSideEncryptionConfiguration`  <a name="cfn-kendra-index-serversideencryptionconfiguration"></a>
The identifier of the AWS KMS customer managed key (CMK) to use to encrypt data indexed by Amazon Kendra. Amazon Kendra doesn't support asymmetric CMKs.  
*Required*: No  
*Type*: [ServerSideEncryptionConfiguration](aws-properties-kendra-index-serversideencryptionconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-kendra-index-tags"></a>
An array of key-value pairs to apply to this resource.  
For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).  
*Required*: No  
*Type*: Array of [Tag](aws-properties-kendra-index-tag.md)  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UserContextPolicy`  <a name="cfn-kendra-index-usercontextpolicy"></a>
The user context policy.  
ATTRIBUTE\$1FILTER  
+ All indexed content is searchable and displayable for all users. If you want to filter search results on user context, you can use the attribute filters of `_user_id` and `_group_ids` or you can provide user and group information in `UserContext`.
USER\$1TOKEN  
+ Enables token-based user access control to filter search results on user context. All documents with no access control and all documents accessible to the user will be searchable and displayable.
*Required*: No  
*Type*: String  
*Allowed values*: `ATTRIBUTE_FILTER | USER_TOKEN`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UserTokenConfigurations`  <a name="cfn-kendra-index-usertokenconfigurations"></a>
Defines the type of user token used for the index.  
*Required*: No  
*Type*: Array of [UserTokenConfiguration](aws-properties-kendra-index-usertokenconfiguration.md)  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-kendra-index-return-values"></a>

### Ref
<a name="aws-resource-kendra-index-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the index ID. For example:

 `{"Ref": "index-id"}` 

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-kendra-index-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-kendra-index-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the index. For example: `arn:aws:kendra:us-west-2:111122223333:index/0123456789abcdef`.

`Id`  <a name="Id-fn::getatt"></a>
The identifier for the index. For example: `f4aeaa10-8056-4b2c-a343-522ca0f41234`.

# AWS::Kendra::Index CapacityUnitsConfiguration
<a name="aws-properties-kendra-index-capacityunitsconfiguration"></a>

Specifies additional capacity units configured for your Enterprise Edition index. You can add and remove capacity units to fit your usage requirements.

## Syntax
<a name="aws-properties-kendra-index-capacityunitsconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-capacityunitsconfiguration-syntax.json"></a>

```
{
  "[QueryCapacityUnits](#cfn-kendra-index-capacityunitsconfiguration-querycapacityunits)" : Integer,
  "[StorageCapacityUnits](#cfn-kendra-index-capacityunitsconfiguration-storagecapacityunits)" : Integer
}
```

### YAML
<a name="aws-properties-kendra-index-capacityunitsconfiguration-syntax.yaml"></a>

```
  [QueryCapacityUnits](#cfn-kendra-index-capacityunitsconfiguration-querycapacityunits): Integer
  [StorageCapacityUnits](#cfn-kendra-index-capacityunitsconfiguration-storagecapacityunits): Integer
```

## Properties
<a name="aws-properties-kendra-index-capacityunitsconfiguration-properties"></a>

`QueryCapacityUnits`  <a name="cfn-kendra-index-capacityunitsconfiguration-querycapacityunits"></a>
The amount of extra query capacity for an index and [GetQuerySuggestions](https://docs.aws.amazon.com/kendra/latest/dg/API_GetQuerySuggestions.html) capacity.  
A single extra capacity unit for an index provides 0.1 queries per second or approximately 8,000 queries per day. You can add up to 100 extra capacity units.  
`GetQuerySuggestions` capacity is five times the provisioned query capacity for an index, or the base capacity of 2.5 calls per second, whichever is higher. For example, the base capacity for an index is 0.1 queries per second, and `GetQuerySuggestions` capacity has a base of 2.5 calls per second. If you add another 0.1 queries per second to total 0.2 queries per second for an index, the `GetQuerySuggestions` capacity is 2.5 calls per second (higher than five times 0.2 queries per second).  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StorageCapacityUnits`  <a name="cfn-kendra-index-capacityunitsconfiguration-storagecapacityunits"></a>
The amount of extra storage capacity for an index. A single capacity unit provides 30 GB of storage space or 100,000 documents, whichever is reached first. You can add up to 100 extra capacity units.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Index DocumentMetadataConfiguration
<a name="aws-properties-kendra-index-documentmetadataconfiguration"></a>

Specifies the properties, such as relevance tuning and searchability, of an index field.

## Syntax
<a name="aws-properties-kendra-index-documentmetadataconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-documentmetadataconfiguration-syntax.json"></a>

```
{
  "[Name](#cfn-kendra-index-documentmetadataconfiguration-name)" : String,
  "[Relevance](#cfn-kendra-index-documentmetadataconfiguration-relevance)" : Relevance,
  "[Search](#cfn-kendra-index-documentmetadataconfiguration-search)" : Search,
  "[Type](#cfn-kendra-index-documentmetadataconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-kendra-index-documentmetadataconfiguration-syntax.yaml"></a>

```
  [Name](#cfn-kendra-index-documentmetadataconfiguration-name): String
  [Relevance](#cfn-kendra-index-documentmetadataconfiguration-relevance): 
    Relevance
  [Search](#cfn-kendra-index-documentmetadataconfiguration-search): 
    Search
  [Type](#cfn-kendra-index-documentmetadataconfiguration-type): String
```

## Properties
<a name="aws-properties-kendra-index-documentmetadataconfiguration-properties"></a>

`Name`  <a name="cfn-kendra-index-documentmetadataconfiguration-name"></a>
The name of the index field.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `30`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Relevance`  <a name="cfn-kendra-index-documentmetadataconfiguration-relevance"></a>
Provides tuning parameters to determine how the field affects the search results.  
*Required*: No  
*Type*: [Relevance](aws-properties-kendra-index-relevance.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Search`  <a name="cfn-kendra-index-documentmetadataconfiguration-search"></a>
Provides information about how the field is used during a search.  
*Required*: No  
*Type*: [Search](aws-properties-kendra-index-search.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-kendra-index-documentmetadataconfiguration-type"></a>
The data type of the index field.   
*Required*: Yes  
*Type*: String  
*Allowed values*: `STRING_VALUE | STRING_LIST_VALUE | LONG_VALUE | DATE_VALUE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Index JsonTokenTypeConfiguration
<a name="aws-properties-kendra-index-jsontokentypeconfiguration"></a>

Provides the configuration information for the JSON token type.

## Syntax
<a name="aws-properties-kendra-index-jsontokentypeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-jsontokentypeconfiguration-syntax.json"></a>

```
{
  "[GroupAttributeField](#cfn-kendra-index-jsontokentypeconfiguration-groupattributefield)" : String,
  "[UserNameAttributeField](#cfn-kendra-index-jsontokentypeconfiguration-usernameattributefield)" : String
}
```

### YAML
<a name="aws-properties-kendra-index-jsontokentypeconfiguration-syntax.yaml"></a>

```
  [GroupAttributeField](#cfn-kendra-index-jsontokentypeconfiguration-groupattributefield): String
  [UserNameAttributeField](#cfn-kendra-index-jsontokentypeconfiguration-usernameattributefield): String
```

## Properties
<a name="aws-properties-kendra-index-jsontokentypeconfiguration-properties"></a>

`GroupAttributeField`  <a name="cfn-kendra-index-jsontokentypeconfiguration-groupattributefield"></a>
The group attribute field.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UserNameAttributeField`  <a name="cfn-kendra-index-jsontokentypeconfiguration-usernameattributefield"></a>
The user name attribute field.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Index JwtTokenTypeConfiguration
<a name="aws-properties-kendra-index-jwttokentypeconfiguration"></a>

Provides the configuration information for the JWT token type.

## Syntax
<a name="aws-properties-kendra-index-jwttokentypeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-jwttokentypeconfiguration-syntax.json"></a>

```
{
  "[ClaimRegex](#cfn-kendra-index-jwttokentypeconfiguration-claimregex)" : String,
  "[GroupAttributeField](#cfn-kendra-index-jwttokentypeconfiguration-groupattributefield)" : String,
  "[Issuer](#cfn-kendra-index-jwttokentypeconfiguration-issuer)" : String,
  "[KeyLocation](#cfn-kendra-index-jwttokentypeconfiguration-keylocation)" : String,
  "[SecretManagerArn](#cfn-kendra-index-jwttokentypeconfiguration-secretmanagerarn)" : String,
  "[URL](#cfn-kendra-index-jwttokentypeconfiguration-url)" : String,
  "[UserNameAttributeField](#cfn-kendra-index-jwttokentypeconfiguration-usernameattributefield)" : String
}
```

### YAML
<a name="aws-properties-kendra-index-jwttokentypeconfiguration-syntax.yaml"></a>

```
  [ClaimRegex](#cfn-kendra-index-jwttokentypeconfiguration-claimregex): String
  [GroupAttributeField](#cfn-kendra-index-jwttokentypeconfiguration-groupattributefield): String
  [Issuer](#cfn-kendra-index-jwttokentypeconfiguration-issuer): String
  [KeyLocation](#cfn-kendra-index-jwttokentypeconfiguration-keylocation): String
  [SecretManagerArn](#cfn-kendra-index-jwttokentypeconfiguration-secretmanagerarn): String
  [URL](#cfn-kendra-index-jwttokentypeconfiguration-url): String
  [UserNameAttributeField](#cfn-kendra-index-jwttokentypeconfiguration-usernameattributefield): String
```

## Properties
<a name="aws-properties-kendra-index-jwttokentypeconfiguration-properties"></a>

`ClaimRegex`  <a name="cfn-kendra-index-jwttokentypeconfiguration-claimregex"></a>
The regular expression that identifies the claim.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GroupAttributeField`  <a name="cfn-kendra-index-jwttokentypeconfiguration-groupattributefield"></a>
The group attribute field.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Issuer`  <a name="cfn-kendra-index-jwttokentypeconfiguration-issuer"></a>
The issuer of the token.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `65`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KeyLocation`  <a name="cfn-kendra-index-jwttokentypeconfiguration-keylocation"></a>
The location of the key.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `URL | SECRET_MANAGER`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretManagerArn`  <a name="cfn-kendra-index-jwttokentypeconfiguration-secretmanagerarn"></a>
The Amazon Resource Name (arn) of the secret.  
*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*: `1`  
*Maximum*: `1284`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`URL`  <a name="cfn-kendra-index-jwttokentypeconfiguration-url"></a>
The signing key URL.  
*Required*: No  
*Type*: String  
*Pattern*: `^(https?|ftp|file):\/\/([^\s]*)`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UserNameAttributeField`  <a name="cfn-kendra-index-jwttokentypeconfiguration-usernameattributefield"></a>
The user name attribute field.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Index Relevance
<a name="aws-properties-kendra-index-relevance"></a>

Provides information for tuning the relevance of a field in a search. When a query includes terms that match the field, the results are given a boost in the response based on these tuning parameters.

## Syntax
<a name="aws-properties-kendra-index-relevance-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-relevance-syntax.json"></a>

```
{
  "[Duration](#cfn-kendra-index-relevance-duration)" : String,
  "[Freshness](#cfn-kendra-index-relevance-freshness)" : Boolean,
  "[Importance](#cfn-kendra-index-relevance-importance)" : Integer,
  "[RankOrder](#cfn-kendra-index-relevance-rankorder)" : String,
  "[ValueImportanceItems](#cfn-kendra-index-relevance-valueimportanceitems)" : [ ValueImportanceItem, ... ]
}
```

### YAML
<a name="aws-properties-kendra-index-relevance-syntax.yaml"></a>

```
  [Duration](#cfn-kendra-index-relevance-duration): String
  [Freshness](#cfn-kendra-index-relevance-freshness): Boolean
  [Importance](#cfn-kendra-index-relevance-importance): Integer
  [RankOrder](#cfn-kendra-index-relevance-rankorder): String
  [ValueImportanceItems](#cfn-kendra-index-relevance-valueimportanceitems): 
    - ValueImportanceItem
```

## Properties
<a name="aws-properties-kendra-index-relevance-properties"></a>

`Duration`  <a name="cfn-kendra-index-relevance-duration"></a>
Specifies the time period that the boost applies to. For example, to make the boost apply to documents with the field value within the last month, you would use "2628000s". Once the field value is beyond the specified range, the effect of the boost drops off. The higher the importance, the faster the effect drops off. If you don't specify a value, the default is 3 months. The value of the field is a numeric string followed by the character "s", for example "86400s" for one day, or "604800s" for one week.   
Only applies to `DATE` fields.  
*Required*: No  
*Type*: String  
*Pattern*: `[0-9]+[s]`  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Freshness`  <a name="cfn-kendra-index-relevance-freshness"></a>
Indicates that this field determines how "fresh" a document is. For example, if document 1 was created on November 5, and document 2 was created on October 31, document 1 is "fresher" than document 2. Only applies to `DATE` fields.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Importance`  <a name="cfn-kendra-index-relevance-importance"></a>
The relative importance of the field in the search. Larger numbers provide more of a boost than smaller numbers.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RankOrder`  <a name="cfn-kendra-index-relevance-rankorder"></a>
Determines how values should be interpreted.  
When the `RankOrder` field is `ASCENDING`, higher numbers are better. For example, a document with a rating score of 10 is higher ranking than a document with a rating score of 1.  
When the `RankOrder` field is `DESCENDING`, lower numbers are better. For example, in a task tracking application, a priority 1 task is more important than a priority 5 task.  
Only applies to `LONG` fields.  
*Required*: No  
*Type*: String  
*Allowed values*: `ASCENDING | DESCENDING`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ValueImportanceItems`  <a name="cfn-kendra-index-relevance-valueimportanceitems"></a>
An array of key-value pairs for different boosts when they appear in the search result list. For example, if you want to boost query terms that match the "department" field in the result, query terms that match this field are boosted in the result. You can add entries from the department field to boost documents with those values higher.  
For example, you can add entries to the map with names of departments. If you add "HR", 5 and "Legal",3 those departments are given special attention when they appear in the metadata of a document.  
*Required*: No  
*Type*: Array of [ValueImportanceItem](aws-properties-kendra-index-valueimportanceitem.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Index Search
<a name="aws-properties-kendra-index-search"></a>

Provides information about how a custom index field is used during a search.

## Syntax
<a name="aws-properties-kendra-index-search-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-search-syntax.json"></a>

```
{
  "[Displayable](#cfn-kendra-index-search-displayable)" : Boolean,
  "[Facetable](#cfn-kendra-index-search-facetable)" : Boolean,
  "[Searchable](#cfn-kendra-index-search-searchable)" : Boolean,
  "[Sortable](#cfn-kendra-index-search-sortable)" : Boolean
}
```

### YAML
<a name="aws-properties-kendra-index-search-syntax.yaml"></a>

```
  [Displayable](#cfn-kendra-index-search-displayable): Boolean
  [Facetable](#cfn-kendra-index-search-facetable): Boolean
  [Searchable](#cfn-kendra-index-search-searchable): Boolean
  [Sortable](#cfn-kendra-index-search-sortable): Boolean
```

## Properties
<a name="aws-properties-kendra-index-search-properties"></a>

`Displayable`  <a name="cfn-kendra-index-search-displayable"></a>
Determines whether the field is returned in the query response. The default is `true`.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Facetable`  <a name="cfn-kendra-index-search-facetable"></a>
Indicates that the field can be used to create search facets, a count of results for each value in the field. The default is `false` .  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Searchable`  <a name="cfn-kendra-index-search-searchable"></a>
Determines whether the field is used in the search. If the `Searchable` field is `true`, you can use relevance tuning to manually tune how Amazon Kendra weights the field in the search. The default is `true` for string fields and `false` for number and date fields.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Sortable`  <a name="cfn-kendra-index-search-sortable"></a>
Determines whether the field can be used to sort the results of a query. The default is `false`.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Index ServerSideEncryptionConfiguration
<a name="aws-properties-kendra-index-serversideencryptionconfiguration"></a>

Provides the identifier of the AWS KMS customer master key (CMK) used to encrypt data indexed by Amazon Kendra. We suggest that you use a CMK from your account to help secure your index. Amazon Kendra doesn't support asymmetric CMKs.

## Syntax
<a name="aws-properties-kendra-index-serversideencryptionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-serversideencryptionconfiguration-syntax.json"></a>

```
{
  "[KmsKeyId](#cfn-kendra-index-serversideencryptionconfiguration-kmskeyid)" : String
}
```

### YAML
<a name="aws-properties-kendra-index-serversideencryptionconfiguration-syntax.yaml"></a>

```
  [KmsKeyId](#cfn-kendra-index-serversideencryptionconfiguration-kmskeyid): String
```

## Properties
<a name="aws-properties-kendra-index-serversideencryptionconfiguration-properties"></a>

`KmsKeyId`  <a name="cfn-kendra-index-serversideencryptionconfiguration-kmskeyid"></a>
The identifier of the AWS KMS key. Amazon Kendra doesn't support asymmetric keys.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Kendra::Index Tag
<a name="aws-properties-kendra-index-tag"></a>

A key-value pair that identifies or categorizes an index, FAQ, data source, or other resource. TA tag key and value can consist of Unicode letters, digits, white space, and any of the following symbols: \$1 . : / = \$1 - @.

## Syntax
<a name="aws-properties-kendra-index-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-tag-syntax.json"></a>

```
{
  "[Key](#cfn-kendra-index-tag-key)" : String,
  "[Value](#cfn-kendra-index-tag-value)" : String
}
```

### YAML
<a name="aws-properties-kendra-index-tag-syntax.yaml"></a>

```
  [Key](#cfn-kendra-index-tag-key): String
  [Value](#cfn-kendra-index-tag-value): String
```

## Properties
<a name="aws-properties-kendra-index-tag-properties"></a>

`Key`  <a name="cfn-kendra-index-tag-key"></a>
The key for the tag. Keys are not case sensitive and must be unique for the index, FAQ, data source, or other resource.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-kendra-index-tag-value"></a>
The value associated with the tag. The value may be an empty string but it can't be null.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Index UserTokenConfiguration
<a name="aws-properties-kendra-index-usertokenconfiguration"></a>

Provides the configuration information for a token.

**Important**  
If you're using an Amazon Kendra Gen AI Enterprise Edition index and you try to use `UserTokenConfigurations` to configure user context policy, Amazon Kendra returns a `ValidationException` error.

## Syntax
<a name="aws-properties-kendra-index-usertokenconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-usertokenconfiguration-syntax.json"></a>

```
{
  "[JsonTokenTypeConfiguration](#cfn-kendra-index-usertokenconfiguration-jsontokentypeconfiguration)" : JsonTokenTypeConfiguration,
  "[JwtTokenTypeConfiguration](#cfn-kendra-index-usertokenconfiguration-jwttokentypeconfiguration)" : JwtTokenTypeConfiguration
}
```

### YAML
<a name="aws-properties-kendra-index-usertokenconfiguration-syntax.yaml"></a>

```
  [JsonTokenTypeConfiguration](#cfn-kendra-index-usertokenconfiguration-jsontokentypeconfiguration): 
    JsonTokenTypeConfiguration
  [JwtTokenTypeConfiguration](#cfn-kendra-index-usertokenconfiguration-jwttokentypeconfiguration): 
    JwtTokenTypeConfiguration
```

## Properties
<a name="aws-properties-kendra-index-usertokenconfiguration-properties"></a>

`JsonTokenTypeConfiguration`  <a name="cfn-kendra-index-usertokenconfiguration-jsontokentypeconfiguration"></a>
Information about the JSON token type configuration.  
*Required*: No  
*Type*: [JsonTokenTypeConfiguration](aws-properties-kendra-index-jsontokentypeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`JwtTokenTypeConfiguration`  <a name="cfn-kendra-index-usertokenconfiguration-jwttokentypeconfiguration"></a>
Information about the JWT token type configuration.  
*Required*: No  
*Type*: [JwtTokenTypeConfiguration](aws-properties-kendra-index-jwttokentypeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Kendra::Index ValueImportanceItem
<a name="aws-properties-kendra-index-valueimportanceitem"></a>

Specifies a key-value pair of the search boost value for a document when the key is part of the metadata of a document.

## Syntax
<a name="aws-properties-kendra-index-valueimportanceitem-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-kendra-index-valueimportanceitem-syntax.json"></a>

```
{
  "[Key](#cfn-kendra-index-valueimportanceitem-key)" : String,
  "[Value](#cfn-kendra-index-valueimportanceitem-value)" : Integer
}
```

### YAML
<a name="aws-properties-kendra-index-valueimportanceitem-syntax.yaml"></a>

```
  [Key](#cfn-kendra-index-valueimportanceitem-key): String
  [Value](#cfn-kendra-index-valueimportanceitem-value): Integer
```

## Properties
<a name="aws-properties-kendra-index-valueimportanceitem-properties"></a>

`Key`  <a name="cfn-kendra-index-valueimportanceitem-key"></a>
The document metadata value used for the search boost.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-kendra-index-valueimportanceitem-value"></a>
The boost value for a document when the key is part of the metadata of a document.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)