Create or update rules

Create or update multiple rules.

If a rule with the specified object ID doesn’t exist, Algolia creates a new one. Otherwise, existing rules are replaced.

This operation is subject to indexing rate limits.

Usage

Required ACL: editSettings
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import algoliasearch.api.SearchClient
import algoliasearch.extension.SearchClientExtensions

val client = SearchClient(appId = "ALGOLIA_APPLICATION_ID", apiKey = "ALGOLIA_API_KEY")

val response = client.saveRules(
  indexName = "ALGOLIA_INDEX_NAME",
  rules = Seq(
    Rule(
      objectID = "a-rule-id",
      conditions = Some(
        Seq(
          Condition(
            pattern = Some("smartphone"),
            anchoring = Some(Anchoring.withName("contains"))
          )
        )
      ),
      consequence = Consequence(
        params = Some(
          ConsequenceParams(
            filters = Some("brand:apple")
          )
        )
      )
    ),
    Rule(
      objectID = "a-second-rule-id",
      conditions = Some(
        Seq(
          Condition(
            pattern = Some("apple"),
            anchoring = Some(Anchoring.withName("contains"))
          )
        )
      ),
      consequence = Consequence(
        params = Some(
          ConsequenceParams(
            filters = Some("brand:samsung")
          )
        )
      )
    )
  ),
  forwardToReplicas = Some(false),
  clearExistingRules = Some(true)
)
Did you find this page helpful?
Scala API clients v2