検索テンプレートAPI

検索テンプレートを使用して検索を実行します。

Python

  1. resp = client.search_template(
  2. index="my-index",
  3. id="my-search-template",
  4. params={
  5. "query_string": "hello world",
  6. "from": 0,
  7. "size": 10
  8. },
  9. )
  10. print(resp)

Ruby

  1. response = client.search_template(
  2. index: 'my-index',
  3. body: {
  4. id: 'my-search-template',
  5. params: {
  6. query_string: 'hello world',
  7. from: 0,
  8. size: 10
  9. }
  10. }
  11. )
  12. puts response

Js

  1. const response = await client.searchTemplate({
  2. index: "my-index",
  3. id: "my-search-template",
  4. params: {
  5. query_string: "hello world",
  6. from: 0,
  7. size: 10,
  8. },
  9. });
  10. console.log(response);

コンソール

  1. GET my-index/_search/template
  2. {
  3. "id": "my-search-template",
  4. "params": {
  5. "query_string": "hello world",
  6. "from": 0,
  7. "size": 10
  8. }
  9. }

リクエスト

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
    • 隠れたデータストリームと隠れたインデックスに一致します。openclosed、またはその両方と組み合わせる必要があります。
    • 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が指定されていない場合、このパラメータは必須です。