

# UpdateIndex
<a name="API_UpdateIndex"></a>

Updates an Amazon Kendra index.

## Request Syntax
<a name="API_UpdateIndex_RequestSyntax"></a>

```
{
   "CapacityUnits": { 
      "QueryCapacityUnits": number,
      "StorageCapacityUnits": number
   },
   "Description": "string",
   "DocumentMetadataConfigurationUpdates": [ 
      { 
         "Name": "string",
         "Relevance": { 
            "Duration": "string",
            "Freshness": boolean,
            "Importance": number,
            "RankOrder": "string",
            "ValueImportanceMap": { 
               "string" : number 
            }
         },
         "Search": { 
            "Displayable": boolean,
            "Facetable": boolean,
            "Searchable": boolean,
            "Sortable": boolean
         },
         "Type": "string"
      }
   ],
   "Id": "string",
   "Name": "string",
   "RoleArn": "string",
   "UserContextPolicy": "string",
   "UserGroupResolutionConfiguration": { 
      "UserGroupResolutionMode": "string"
   },
   "UserTokenConfigurations": [ 
      { 
         "JsonTokenTypeConfiguration": { 
            "GroupAttributeField": "string",
            "UserNameAttributeField": "string"
         },
         "JwtTokenTypeConfiguration": { 
            "ClaimRegex": "string",
            "GroupAttributeField": "string",
            "Issuer": "string",
            "KeyLocation": "string",
            "SecretManagerArn": "string",
            "URL": "string",
            "UserNameAttributeField": "string"
         }
      }
   ]
}
```

## Request Parameters
<a name="API_UpdateIndex_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [CapacityUnits](#API_UpdateIndex_RequestSyntax) **   <a name="kendra-UpdateIndex-request-CapacityUnits"></a>
Sets the number of additional document storage and query capacity units that should be used by the index. You can change the capacity of the index up to 5 times per day, or make 5 API calls.  
If you are using extra storage units, you can't reduce the storage capacity below what is required to meet the storage needs for your index.  
Type: [CapacityUnitsConfiguration](API_CapacityUnitsConfiguration.md) object  
Required: No

 ** [Description](#API_UpdateIndex_RequestSyntax) **   <a name="kendra-UpdateIndex-request-Description"></a>
A new description for the index.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1000.  
Pattern: `^\P{C}*$`   
Required: No

 ** [DocumentMetadataConfigurationUpdates](#API_UpdateIndex_RequestSyntax) **   <a name="kendra-UpdateIndex-request-DocumentMetadataConfigurationUpdates"></a>
The document metadata configuration you want to update for the index. Document metadata are fields or attributes associated with your documents. For example, the company department name associated with each document.  
Type: Array of [DocumentMetadataConfiguration](API_DocumentMetadataConfiguration.md) objects  
Array Members: Minimum number of 0 items. Maximum number of 500 items.  
Required: No

 ** [Id](#API_UpdateIndex_RequestSyntax) **   <a name="kendra-UpdateIndex-request-Id"></a>
The identifier of the index you want to update.  
Type: String  
Length Constraints: Fixed length of 36.  
Pattern: `[a-zA-Z0-9][a-zA-Z0-9-]*`   
Required: Yes

 ** [Name](#API_UpdateIndex_RequestSyntax) **   <a name="kendra-UpdateIndex-request-Name"></a>
A new name for the index.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 1000.  
Pattern: `[a-zA-Z0-9][a-zA-Z0-9_-]*`   
Required: No

 ** [RoleArn](#API_UpdateIndex_RequestSyntax) **   <a name="kendra-UpdateIndex-request-RoleArn"></a>
An AWS Identity and Access Management (IAM) role that gives Amazon Kendra permission to access Amazon CloudWatch logs and metrics.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1284.  
Pattern: `arn:[a-z0-9-\.]{1,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[^/].{0,1023}`   
Required: No

 ** [UserContextPolicy](#API_UpdateIndex_RequestSyntax) **   <a name="kendra-UpdateIndex-request-UserContextPolicy"></a>
The user context policy.  
If you're using an Amazon Kendra Gen AI Enterprise Edition index, you can only use `ATTRIBUTE_FILTER` to filter search results by user context. If you're using an Amazon Kendra Gen AI Enterprise Edition index and you try to use `USER_TOKEN` to configure user context policy, Amazon Kendra returns a `ValidationException` error.
Type: String  
Valid Values: `ATTRIBUTE_FILTER | USER_TOKEN`   
Required: No

 ** [UserGroupResolutionConfiguration](#API_UpdateIndex_RequestSyntax) **   <a name="kendra-UpdateIndex-request-UserGroupResolutionConfiguration"></a>
Gets users and groups from AWS IAM Identity Center identity source. To configure this, see [UserGroupResolutionConfiguration](https://docs.aws.amazon.com/kendra/latest/dg/API_UserGroupResolutionConfiguration.html). This is useful for user context filtering, where search results are filtered based on the user or their group access to documents.  
If you're using an Amazon Kendra Gen AI Enterprise Edition index, `UserGroupResolutionConfiguration` isn't supported.
Type: [UserGroupResolutionConfiguration](API_UserGroupResolutionConfiguration.md) object  
Required: No

 ** [UserTokenConfigurations](#API_UpdateIndex_RequestSyntax) **   <a name="kendra-UpdateIndex-request-UserTokenConfigurations"></a>
The user token configuration.  
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.
Type: Array of [UserTokenConfiguration](API_UserTokenConfiguration.md) objects  
Array Members: Maximum number of 1 item.  
Required: No

## Response Elements
<a name="API_UpdateIndex_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.

## Errors
<a name="API_UpdateIndex_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action. Please ensure you have the required permission policies and user accounts and try again.  
HTTP Status Code: 400

 ** ConflictException **   
A conflict occurred with the request. Please fix any inconsistences with your resources and try again.  
HTTP Status Code: 400

 ** InternalServerException **   
An issue occurred with the internal server used for your Amazon Kendra service. Please wait a few minutes and try again, or contact [Support](http://aws.amazon.com/contact-us/) for help.  
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource you want to use doesn’t exist. Please check you have provided the correct resource and try again.  
HTTP Status Code: 400

 ** ServiceQuotaExceededException **   
You have exceeded the set limits for your Amazon Kendra service. Please see [Quotas](https://docs.aws.amazon.com/kendra/latest/dg/quotas.html) for more information, or contact [Support](http://aws.amazon.com/contact-us/) to inquire about an increase of limits.  
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling. Please reduce the number of requests and try again.  
HTTP Status Code: 400

 ** ValidationException **   
The input fails to satisfy the constraints set by the Amazon Kendra service. Please provide the correct input and try again.  
HTTP Status Code: 400

## See Also
<a name="API_UpdateIndex_SeeAlso"></a>

For more information about using this API in one of the language-specific AWS SDKs, see the following:
+  [AWS Command Line Interface V2](https://docs.aws.amazon.com/goto/cli2/kendra-2019-02-03/UpdateIndex) 
+  [AWS SDK for .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/kendra-2019-02-03/UpdateIndex) 
+  [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/kendra-2019-02-03/UpdateIndex) 
+  [AWS SDK for Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/kendra-2019-02-03/UpdateIndex) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/kendra-2019-02-03/UpdateIndex) 
+  [AWS SDK for JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/kendra-2019-02-03/UpdateIndex) 
+  [AWS SDK for Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/kendra-2019-02-03/UpdateIndex) 
+  [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/kendra-2019-02-03/UpdateIndex) 
+  [AWS SDK for Python](https://docs.aws.amazon.com/goto/boto3/kendra-2019-02-03/UpdateIndex) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/kendra-2019-02-03/UpdateIndex) 