API Reference / API Methods / Rules / 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

You are currently reading the JavaScript API client v4 documentation. Check our migration guide to learn how to upgrade from v3 to v4. You can still access the v3 documentation.

You are currently reading the Ruby API client v2 documentation. Check our migration guide to learn how to upgrade from v1 to v2. You can still access the v1 documentation.

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.

requestOptions
type: key/value mapping
default: No request options
Optional

A mapping of requestOptions to send along with the request.

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":[
    {
      "conditions":[{
        "pattern":"smartphone",
        "anchoring":"contains"
      }],
      "consequence":{
        "params":{
          "filters":"category = 1"
        }
      },
      "objectID":"a-rule-id",
      "_highlightResult":{
        "conditions":[{
          "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?