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
require "algolia"

client = Algolia::SearchClient.create("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")

response = client.save_rules(
  "ALGOLIA_INDEX_NAME",
  [
    Algolia::Search::Rule.new(
      algolia_object_id: "a-rule-id",
      conditions: [Algolia::Search::Condition.new(pattern: "smartphone", anchoring: "contains")],
      consequence: Algolia::Search::Consequence.new(
        params: Algolia::Search::ConsequenceParams.new(filters: "brand:apple")
      )
    ),
    Algolia::Search::Rule.new(
      algolia_object_id: "a-second-rule-id",
      conditions: [Algolia::Search::Condition.new(pattern: "apple", anchoring: "contains")],
      consequence: Algolia::Search::Consequence.new(
        params: Algolia::Search::ConsequenceParams.new(filters: "brand:samsung")
      )
    )
  ],
  false,
  true
)
Did you find this page helpful?
Ruby API clients v3