setSettings method

Future<UpdatedAtResponse> setSettings({
  1. required String indexName,
  2. required IndexSettings indexSettings,
  3. bool? forwardToReplicas,
  4. RequestOptions? requestOptions,
})

Update the specified index settings. Index settings that you don't specify are left unchanged. Specify null to reset a setting to its default value. For best performance, update the index settings before you add new records to your index.

Required API Key ACLs:

  • editSettings

Parameters:

  • indexName Name of the index on which to perform the operation.
  • indexSettings
  • forwardToReplicas Whether changes are applied to replica indices.
  • requestOptions additional request configuration.

Implementation

Future<UpdatedAtResponse> setSettings({
  required String indexName,
  required IndexSettings indexSettings,
  bool? forwardToReplicas,
  RequestOptions? requestOptions,
}) async {
  assert(
    indexName.isNotEmpty,
    'Parameter `indexName` is required when calling `setSettings`.',
  );
  final request = ApiRequest(
    method: RequestMethod.put,
    path: r'/1/indexes/{indexName}/settings'.replaceAll(
        '{' r'indexName' '}', Uri.encodeComponent(indexName.toString())),
    queryParams: {
      if (forwardToReplicas != null) 'forwardToReplicas': forwardToReplicas,
    },
    body: indexSettings.toJson(),
  );
  final response = await _retryStrategy.execute(
    request: request,
    options: requestOptions,
  );
  return deserialize<UpdatedAtResponse, UpdatedAtResponse>(
    response,
    'UpdatedAtResponse',
    growable: true,
  );
}