Get a query rule Generally available

GET /_query_rules/{ruleset_id}/_rule/{rule_id}

Get details about a query rule within a query ruleset.

Required authorization

  • Cluster privileges: manage_search_query_rules
External documentation

Path parameters

  • ruleset_id string Required

    The unique identifier of the query ruleset containing the rule to retrieve

  • rule_id string Required

    The unique identifier of the query rule within the specified ruleset to retrieve

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • rule_id string Required
    • type string Required

      Values are pinned or exclude.

    • criteria object | array[object] Required

      The criteria that must be met for the rule to be applied. If multiple criteria are specified for a rule, all criteria must be met for the rule to be applied.

      One of:
      Hide attributes Show attributes object
      • type string Required

        Values are global, exact, exact_fuzzy, fuzzy, prefix, suffix, contains, lt, lte, gt, gte, or always.

      • metadata string

        The metadata field to match against. This metadata will be used to match against match_criteria sent in the rule. It is required for all criteria types except always.

      • values array[object]

        The values to match against the metadata field. Only one value must match for the criteria to be met. It is required for all criteria types except always.

    • actions object Required
      Hide actions attributes Show actions attributes object
      • ids array[string]

        The unique document IDs of the documents to apply the rule to. Only one of ids or docs may be specified and at least one must be specified.

      • docs array[object]

        The documents to apply the rule to. Only one of ids or docs may be specified and at least one must be specified. There is a maximum value of 100 documents in a rule. You can specify the following attributes for each document:

        • _index: The index of the document to pin.
        • _id: The unique document ID.
        Hide docs attributes Show docs attributes object
        • _id string Required
        • _index string
    • priority number
GET /_query_rules/{ruleset_id}/_rule/{rule_id}
GET _query_rules/my-ruleset/_rule/my-rule1 
resp = client.query_rules.get_rule( ruleset_id="my-ruleset", rule_id="my-rule1", )
const response = await client.queryRules.getRule({ ruleset_id: "my-ruleset", rule_id: "my-rule1", });
response = client.query_rules.get_rule( ruleset_id: "my-ruleset", rule_id: "my-rule1" )
$resp = $client->queryRules()->getRule([ "ruleset_id" => "my-ruleset", "rule_id" => "my-rule1", ]);
curl -X GET -H "Authorization: ApiKey $ELASTIC_API_KEY" "$ELASTICSEARCH_URL/_query_rules/my-ruleset/_rule/my-rule1"
Response examples (200)
A successful response from `GET _query_rules/my-ruleset/_rule/my-rule1`.
{ "rule_id": "my-rule1", "type": "pinned", "criteria": [ { "type": "contains", "metadata": "query_string", "values": [ "pugs", "puggles" ] } ], "actions": { "ids": [ "id1", "id2" ] } }