検索テンプレートAPI
検索テンプレートを使用して検索を実行します。
Python
resp = client.search_template(
index="my-index",
id="my-search-template",
params={
"query_string": "hello world",
"from": 0,
"size": 10
},
)
print(resp)
Ruby
response = client.search_template(
index: 'my-index',
body: {
id: 'my-search-template',
params: {
query_string: 'hello world',
from: 0,
size: 10
}
}
)
puts response
Js
const response = await client.searchTemplate({
index: "my-index",
id: "my-search-template",
params: {
query_string: "hello world",
from: 0,
size: 10,
},
});
console.log(response);
コンソール
GET my-index/_search/template
{
"id": "my-search-template",
"params": {
"query_string": "hello world",
"from": 0,
"size": 10
}
}
リクエスト
GET <target>/_search/template
GET _search/template
POST <target>/_search/template
POST _search/template
前提条件
- Elasticsearchのセキュリティ機能が有効になっている場合、ターゲットデータストリーム、インデックス、またはエイリアスに対して
read
インデックス権限を持っている必要があります。クロスクラスタ検索については、リモートクラスタを参照してください。
パスパラメータ
<target>
- (オプション、文字列)検索するデータストリーム、インデックス、およびエイリアスのカンマ区切りリスト。ワイルドカード(
*
)をサポートします。すべてのデータストリームとインデックスを検索するには、このパラメータを省略するか、*
を使用します。
クエリパラメータ
allow_no_indices
- (オプション、ブール値)
false
の場合、リクエストは、ワイルドカード式、インデックスエイリアス、または_all
の値が欠落または閉じたインデックスのみを対象とする場合にエラーを返します。この動作は、リクエストが他のオープンインデックスを対象とする場合でも適用されます。たとえば、foo*,bar*
を対象とするリクエストは、foo
で始まるインデックスがあるが、bar
で始まるインデックスがない場合にエラーを返します。
デフォルトはtrue
です。 ccs_minimize_roundtrips
- (オプション、ブール値)
true
の場合、クロスクラスタ検索リクエストのネットワーク往復が最小限に抑えられます。デフォルトはtrue
です。 expand_wildcards
- (オプション、文字列)ワイルドカードパターンが一致できるインデックスのタイプ。リクエストがデータストリームを対象とできる場合、この引数はワイルドカード式が隠れたデータストリームに一致するかどうかを決定します。カンマ区切りの値をサポートします(例:
open,hidden
)。有効な値は次のとおりです:all
- すべてのデータストリームまたはインデックスに一致します。隠れたものも含まれます[b10cb0563daae284.md#multi-hidden]。
open
- オープンで非隠れたインデックスに一致します。非隠れたデータストリームにも一致します。
closed
- 閉じた非隠れたインデックスに一致します。非隠れたデータストリームにも一致します。データストリームは閉じることができません。
hidden
- 隠れたデータストリームと隠れたインデックスに一致します。
open
、closed
、またはその両方と組み合わせる必要があります。 none
- ワイルドカードパターンは受け入れられません。
explain
- (オプション、ブール値)
true
の場合、レスポンスにはヒットのスコア計算に関する追加の詳細が含まれます。デフォルトはfalse
です。 ignore_throttled
- (オプション、ブール値)
true
の場合、具体的、拡張された、またはエイリアスされたインデックスは、凍結時に無視されます。デフォルトはtrue
です。
[7.16.0] 7.16.0で非推奨。 ignore_unavailable
- (オプション、ブール値)
false
の場合、リクエストは欠落または閉じたインデックスを対象とする場合にエラーを返します。デフォルトはfalse
です。 preference
- (オプション、文字列)操作を実行するノードまたはシャードを指定します。デフォルトはランダムです。
rest_total_hits_as_int
- (オプション、ブール値)
true
の場合、レスポンスはhits.total
を整数として返します。falseの場合、hits.total
をオブジェクトとして返します。デフォルトはfalse
です。 routing
- (オプション、文字列)操作を特定のシャードにルーティングするために使用されるカスタム値。
scroll
- (オプション、時間単位)スクロール検索のためにインデックスの一貫したビューを維持する期間を指定します。
search_type
- (オプション、文字列)検索操作のタイプ。利用可能なオプション:
query_then_fetch
dfs_query_then_fetch
typed_keys
- (オプション、ブール値)
true
の場合、レスポンスは集約とサジェスターの名前をそれぞれのタイプで接頭辞します。デフォルトはfalse
です。
リクエストボディ
explain
(オプション、ブール値)
true
の場合、各ヒットの一部としてスコア計算に関する詳細情報を返します。デフォルトはfalse
です。
このパラメータとexplain
クエリパラメータの両方を指定した場合、APIはクエリパラメータのみを使用します。id
- (必須*、文字列)使用する検索テンプレートのID。
source
が指定されていない場合、このパラメータは必須です。 params
- (オプション、オブジェクト)テンプレート内のMustache変数を置き換えるために使用されるキーと値のペア。キーは変数名です。値は変数の値です。
profile
- (オプション、ブール値)
true
の場合、クエリの実行がプロファイルされます。デフォルトはfalse
です。 source
- (必須*、オブジェクト)インライン検索テンプレート。 検索APIのリクエストボディと同じパラメータをサポートします。 Mustache変数もサポートします。
id
が指定されていない場合、このパラメータは必須です。