API Reference / API Methods / Query rules / Search rules
Feb. 26, 2019

Search rules

Required API Key: any key with the settings ACL
Method signature
$index->searchRules(string query)

$index->searchRules(string query, [
  // All the following parameters are optional
  'anchoring' => string,
  'context' => string,
  'page' => integer,
  'hitsPerPage' => integer,
  'enabled' => boolean
])

About this method

Search for rules matching various criteria.

Examples

1
2
3
$response = $index->searchRules('something', [
  'enabled' => true
]);

Parameters

query
type: string
default: ""
Optional

Full text query.

anchoring
type: string|enum
default: all anchoring
Optional

When specified, restricts matches to rules with a specific anchoring type. When omitted, all anchoring types may match. One of the following values:

  • is,
  • startsWith,
  • endsWith,
  • contains
context
type: string
default: Any context
Optional

Restricts matches to contextual rules with a specific context (exact match).

page
type: integer
default: 0
Optional

Requested page (zero-based).

hitsPerPage
type: integer
default: 20
Optional

Maximum number of hits in a page. Minimum is 1, maximum is 1000.

enabled
type: boolean
default: none
Optional

When specified, restricts matches to rules with a specific enabled status. When absent (default), all rules are retrieved, regardless of their enabled status.

Response

In this section we document the JSON response returned by the API. Each language will encapsulate this response inside objects specific to the language and/or the implementation. So the actual type in your language might differ from what is documented.

JSON format

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
49
{
  "hits":[
    {
      "condition":{
        "pattern":"smartphone",
        "anchoring":"contains"
      },
      "consequence":{
        "params":{
          "filters":"category = 1"
        }
      },
      "objectID":"a-rule-id",
      "_highlightResult":{
        "condition":{
          "pattern":{
            "value":"<b>s<\/b>martphone",
            "matchLevel":"full",
            "fullyHighlighted":false,
            "matchedWords":[
              "s"
            ]
          },
          "anchoring":{
            "value":"contains",
            "matchLevel":"none",
            "matchedWords":[

            ]
          }
        },
        "consequence":{
          "params":{
            "filters":{
              "value":"category = 1",
              "matchLevel":"none",
              "matchedWords":[

              ]
            }
          }
        }
      }
    }
  ],
  "nbHits":1,
  "page":0,
  "nbPages":1
}
hits
list of rule

Rule objects matched by the search query (see Rule Schema). Highlighting is provided through the standard mechanism (_highlightResult attribute inside every returned object)

nbHits
integer

Total number of rules matching the query.

page
integer

Returned page number (zero-based).

nbPages
integer

Total number of pages.

Did you find this page helpful?