保存されたスクリプトAPIの作成または更新

保存されたスクリプトまたは検索テンプレートを作成または更新します。

Python

  1. resp = client.put_script(
  2. id="my-stored-script",
  3. script={
  4. "lang": "painless",
  5. "source": "Math.log(_score * 2) + params['my_modifier']"
  6. },
  7. )
  8. print(resp)

Ruby

  1. response = client.put_script(
  2. id: 'my-stored-script',
  3. body: {
  4. script: {
  5. lang: 'painless',
  6. source: "Math.log(_score * 2) + params['my_modifier']"
  7. }
  8. }
  9. )
  10. puts response

Js

  1. const response = await client.putScript({
  2. id: "my-stored-script",
  3. script: {
  4. lang: "painless",
  5. source: "Math.log(_score * 2) + params['my_modifier']",
  6. },
  7. });
  8. console.log(response);

コンソール

  1. PUT _scripts/my-stored-script
  2. {
  3. "script": {
  4. "lang": "painless",
  5. "source": "Math.log(_score * 2) + params['my_modifier']"
  6. }
  7. }

リクエスト

PUT _scripts/<script-id>

POST _scripts/<script-id>

PUT _scripts/<script-id>/<context>

POST _scripts/<script-id>/<context>

前提条件

  • Elasticsearchのセキュリティ機能が有効になっている場合、このAPIを使用するにはmanage クラスター権限が必要です。

パスパラメータ

  • <script-id>
  • (必須、文字列) 保存されたスクリプトまたは検索テンプレートの識別子。クラスター内で一意である必要があります。
  • <context>
  • (オプション、文字列) スクリプトまたは検索テンプレートが実行されるコンテキスト。エラーを防ぐために、APIはこのコンテキストでスクリプトまたはテンプレートを即座にコンパイルします。

クエリパラメータ

  • context
  • (オプション、文字列) スクリプトまたは検索テンプレートが実行されるコンテキスト。エラーを防ぐために、APIはこのコンテキストでスクリプトまたはテンプレートを即座にコンパイルします。
    このパラメータと<context>リクエストパスパラメータの両方を指定した場合、APIはリクエストパスパラメータを使用します。
  • master_timeout
  • (オプション、時間単位) マスターノードを待機する期間。タイムアウトが切れる前にマスターノードが利用できない場合、リクエストは失敗し、エラーが返されます。デフォルトは30sです。リクエストがタイムアウトしないことを示すために-1に設定することもできます。
  • timeout
  • (オプション、時間単位) クラスターのメタデータを更新した後、クラスター内のすべての関連ノードからの応答を待機する期間。タイムアウトが切れる前に応答が受信されない場合、クラスターのメタデータの更新は適用されますが、応答は完全に承認されなかったことを示します。デフォルトは30sです。リクエストがタイムアウトしないことを示すために-1に設定することもできます。

リクエストボディ

  • script
  • (必須、オブジェクト) スクリプトまたは検索テンプレート、そのパラメータ、およびその言語を含みます。
    1. - `````lang
    • (必須、文字列) スクリプト言語。検索テンプレートの場合はmustacheを使用します。
    • source
    • (必須、文字列またはオブジェクト) スクリプトの場合、スクリプトを含む文字列。
      検索テンプレートの場合、検索テンプレートを含むオブジェクト。オブジェクトは検索API
      のリクエストボディと同じパラメータをサポートします。また、Mustache変数もサポートします。検索テンプレートを参照してください。
    • params
    • (オプション、オブジェクト) スクリプトまたは検索テンプレートのパラメータ。