editSettings
This method, like replaceAllObjects, guarantees zero downtime.
All existing rules are deleted and replaced with the new ones, in a single, atomic operation.
Examples
SearchClient client = new SearchClient("YourApplicationID", "YourWriteAPIKey");
SearchIndex index = client.InitIndex("INDEX_NAME");
List<Rule> rules = /* Fetch your rules */
index.ReplaceAllRules(rules);
// Or if you want to also replace synonyms on replicas
index.ReplaceAllRules(synonyms, forwardToReplicas: true);
// Asynchronous
await index.ReplaceAllRulesAsync(synonyms, forwardToReplicas: true);
rules := []search.Rule{ /* Fetch your rules */ }
res, err := index.ReplaceAllRules(rules)
SearchClient client =
DefaultSearchClient.create("YourApplicationID", "YourWriteAPIKey");
SearchIndex index = client.initIndex("INDEX_NAME");
List<Rule> rules = /* Fetch your rules */
index.replaceAllRules(rules);
// Or if you want to also replace rules on replicas
index.replaceAllRules(rules, true);
// Async
index.replaceAllRules(synonyms);
index.replaceAllRules(synonyms, true);
const client = algoliasearch('YourApplicationID', 'YourWriteAPIKey');
const index = client.initIndex('INDEX_NAME');
const rules = [/* Fetch your rules */];
index.replaceAllRules(rules).then(() => {
// done
});
// Or if you want to also replace rules on replicas
index.replaceAllRules(rules, { forwardToReplicas: true }).then(() => {
// done
});
// Fetch your rules
val rules = listOf<Rule>()
index.replaceAllRules(rules, forwardToReplicas = true)
$client = Algolia\AlgoliaSearch\SearchClient::create(
'YourApplicationID',
'YourWriteAPIKey'
);
$rules = /* Fetch your rules */;
$index = $client->initIndex('INDEX_NAME');
$index->replaceAllRules($rules);
// Or if you want to also replace rules on replicas
$index->replaceAllRules($rules, ['forwardToReplicas' => true]);
client = algoliasearch.Client("YourApplicationID", 'YourWriteAPIKey')
rules = [] # Fetch your rules
index = client.init_index('INDEX_NAME')
index.replace_all_rules(rules)
# Or if you want to also replace rules on replicas
index.replace_all_rules(rules, { 'forwardToReplicas': True })
client = Algolia::Search::Client.create('YourApplicationID', 'YourWriteAPIKey')
rules = [] # Fetch your rules
index = client.init_index('INDEX_NAME')
index.replace_all_rules(rules)
# Or if you want to also replace rules on replicas
index.replace_all_rules(rules, {'forwardToReplicas': true})
let client = SearchClient(appID: "YourApplicationID", apiKey: "YourWriteAPIKey")
let index = client.index(withName: "INDEX_NAME")
let rules: [Rule] = [/* Fetch your rules */]
index.replaceAllRules(with: rules) { result in
if case .success(let response) = result {
print("Response: \(response)")
}
}
// Or if you want to also replace synonyms on replicas
index.replaceAllRules(with: rules,
forwardToReplicas: true) { result in
if case .success(let response) = result {
print("Response: \(response)")
}
}
Parameters
Whether to also replace all rules on replicas.
A mapping of request options to send along with the request.