サービス提供コントロールを作成する

このページでは、サービス提供コントロールの作成方法について説明します。

サービス提供コントロールは、個々のサービス構成を定義して適用するルールです。サービス構成について詳しくは、サービス構成についてをご覧ください。

サービス提供コントロールは、コントロールをトリガーする条件と、条件によってトリガーされるときに発生するアクションで構成される、コマース向け検索コンソールで作成できます。その後、新しいサービス提供コントロールをサービス構成に関連付けることができます。

サービス構成は、コントロールと多対多の関係を持ちます。1 つのサービス構成に複数のコントロールを追加でき、1 つのコントロールを複数のサービス構成に関連付けることができます。

サービス提供コントロールとサービス構成を作成するときに、それを使用できるプロダクト(レコメンデーションまたは Retail Search)を選択します。サービス提供コントロールを関連付けできるのは、同じプロダクトタイプのサービス構成のみです。たとえば、レコメンデーション用に作成されたサービス提供コントロールを、Retail Search 用に作成されたサービス構成に関連付けることはできません。

サービス構成は、検索リクエストまたは予測リクエスト時に適用されるコントロールを管理します。リクエストの有効なサービス構成のコントロールだけが、サービス提供時に考慮されます。たとえば、2 つのコントロールを作成したとします。1 つは「gShoe セール」というコントロールで、が検索されたときにブランド gShoe の検索結果をブーストします。もう 1 つは「靴の詳細」というコントロールで、ランニング シューズというキーワードを含むクエリを拡張して「スポーツ シューズ」を含めます。サービング構成に gShoe セール コントロールのみを適用した場合、そのサービング構成を使用する検索リクエストでは、というキーワードを含むクエリに対して gShoe の結果が優先されますが、靴の検索結果を表示コントロールは、使用しているサービング構成に適用されていないため、効果がありません。

コントロールを作成し、ライブサービス提供構成に追加または入れ替えることができます。

サービス提供コントロールは、[コントロール] ページまたは Controls.create メソッドを使用してインラインでいつでも作成または変更できます。コンソールでは、オプションでサービス構成の作成プロセス中にコントロールを作成できます。

最大 100 個のサービス提供コントロールを作成できます。さらにサービス提供コントロールが必要な場合は、追加の割り当てをリクエストしてください。追加の割り当てをリクエストする方法については、割り当てを増やすをご覧ください。サービス提供構成には、リダイレクト コントロール以外の最大 100 個のサービス提供コントロールを含めることができます。サービス提供構成ごとの上限は 1,000 個です。

クイックスタート動画とガイド

  • サービス提供コントロールの概要: サービス提供コントロールを使用すると、サービス提供構成が検索結果を返す方法をカスタマイズするルールを作成できます。
  • ブースト / 埋め込み: 返される結果リスト内の検索結果のランキングと順序に影響します。 Retail Search とレコメンデーションで使用できます。
  • フィルタ: 返された結果リストからフィルタを通過しない結果を削除します。Retail Search でのみ利用できます。
  • リダイレクト: 検索クエリに応じてユーザーを特定のページにリダイレクトします。Retail Search でのみ利用できます。

このチュートリアルでは、リダイレクト制御の使用方法について説明します。


このタスクを Cloud Shell エディタで直接行う際の順を追ったガイダンスについては、[ガイドを表示] をクリックしてください。

ガイドを表示


  • 言語学: 検索クエリの言語学をカスタマイズします。検索でのみ使用できます。
    数種類の言語制御を使用できます。
    • 類義語: 検索クエリの類義語と考えられるものを拡張します。
    • 一方向の類義語: 特定のキーワードの類義語と考えられるものを一方向に拡張します。
    • 関連付けない: 特定のキーワードが表示されたときに、あるキーワード グループが検索で使用されないようにします。
    • 無視: 検索に特定のキーワードが使用されないようにします。
    • 置換: 検索クエリのキーワードを置き換えます。
  • 固定: 検索結果の並べ替えに影響し、検索結果を特定の位置(4 番目など)に配置します。検索とブラウジングで使用できます。

これらのコントロールの例については、サービス提供コントロールをご覧ください。

コントロールの作成に関するコンソール オプション

Vertex AI Search for Commerce ですべてのサービス提供コントロールを作成するには、次のいずれかのコンソール パスを選択します。

Google Cloud コンソールを使用する

マーチャンダイジング コンソールの各配信制御セクションの手順に沿って操作します。

マーチャンダイジング コンソールを使用する

Google Cloud コンソールの管理者は、サイト マーチャンダイザーにマーチャンダイジング コンソールのアクセス権を付与し、クリエイターまたは承認者のロールを割り当てることができます。

ユーザーとして Merchandising コンソールにアクセスする

URL でアクセス権が付与されている場合は、標準の Google Cloud コンソールではなく、商品コンソールを使用できます。マーチャンダイジング コンソールを使用してコントロールを作成するには:

  1. 管理者から提供された外部ログインを使用してログインします。

  2. マーチャンダイジング コンソールのドキュメントの各配信制御セクションの手順に沿って操作します。

送信すると、件名が「[Merchant Console] Proposed control awaiting review」の通知メールが届きます。

  1. 承認者は、管理リクエストを承認、拒否、変更します。

マーチャンダイジング コンソールのユーザーをオンボーディングする

Google Cloud コンソールの管理者は、販売者に販売コンソールにアクセスできるようにすることができます。

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Merchandising console] タブに移動します。

  3. ID の設定を構成します。

  4. ユーザーに [承認者] ロールまたは [作成者] ロールを付与します。

  5. 現在のプロジェクトに関連付けられているマーチャンダイジング コンソールの一意の URL が表示されます。 Google Cloud リンクをコピーするか、Google Cloud コンソールで直接開きます。

  6. マーチャンダイジング コンソールで、[プレビュー] のデフォルトのサービス構成を選択します。

  7. (省略可)次の関数を使用して、マーチャンダイジング コンソールへのアクセス権を編集します。

    • ユーザーを追加する: 承認者またはクリエイターとして、商品化コンソールへのアクセス権をユーザーに付与します。

    • ユーザーを削除する: 承認者または作成者を削除して、グッズ コンソールへのアクセス権を取り消します。

  8. Search for Commerce コンソールの [IAM 管理] ページに移動します。

    [IAM 管理] ページに移動

承認者向けの追加手順

  1. [コントロールを作成] をクリックして、マーチャンダイジング コンソールの設定を調整します。

  2. [目標の定義] 画面で、開始ルールに質問を追加または削除します。

  3. (省略可)送信された管理リクエストのメールを受け取ったら、リクエストが表示されているダッシュボードで、リクエストのステータスを変更したり、リクエストを承認または拒否したりします。

  4. [確認と承認] セクションで、[承認]、[拒否]、[編集] をクリックして、各コントロールの承認を管理します。

    • 最後のオプションを選択すると、次の画面が表示されます。ここで編集を行い、[編集を加えて承認] をクリックします。

    • 承認者として追加したコントロールはすべて自動的に承認されます。

新しいサービス提供コントロールを作成する

Google Cloud コンソールの [コントロール] ページで、または Controls.create メソッドを使用してインラインで新しいサービス提供コントロールを作成します。

コントロールの要件は、タイプによって異なります。作成するコントロールの種類の作成手順に進みます。

ブースト / 埋め込みコントロールを作成する

このコントロール タイプは、Retail Search とレコメンデーションで利用できます。

このコントロール タイプの詳細については、ブースト / 埋め込みコントロールをご覧ください。

Retail Search のブースト / 埋め込みコントロールを作成するには:

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、検索プロダクトを選択して、コントロール タイプ [ブースト/埋め込み] を選択します。

  5. ブースト/ベリー コントロールを設定します。

    1. [トリガー] で、関連する検索クエリに条件(「contains」や「not in range」など)を指定して、このコントロールをトリガーするカタログ属性を定義します。カタログ属性が構成されていない場合、このコントロールは常に適用されます。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. このコントロールでトリガーするブースト/埋め込みアクションを定義します。これらのアクションは、カタログ属性colors など)、条件contains など)、red など)によって定義されます。

    4. [属性を追加] をクリックして、属性を追加します。

  6. スライダーを使用して [ブースト/埋め込み値] を設定します。負の数値は「埋もれ」、正の数値は「ブースト」です。

  7. [送信] をクリックして、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [サービス提供コントロール] タブで、 [コントロールを作成] をクリックします。

    [コントロールを作成する] ペインが開きます。

  3. [設定] セクションの [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  4. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  5. [プロダクトの選択] セクションで、[検索] を選択します。

  6. コントロール タイプとして [ブースト/埋め込みコントロール] を選択します。[続行] をクリックします。

  7. [トリガー] セクションで、このコントロールをトリガーするユーザーの行動のタイプを選択します。

    • カテゴリを閲覧する: ユーザーがサイトのカテゴリを閲覧したときにルールがトリガーされます(search.request.query は空です)。

    • 検索: ユーザーがサイトで検索したときにルールがトリガーされます(search.request.query は空ではありません)。カテゴリが閲覧されたとき、またはクエリが検索されたときに、このコントロールを設定してトリガーするには、次の手順をスキップします。

  8. 省略可: 特定のカテゴリが閲覧されたか、特定のクエリが検索されたかに応じて、このコントロールをトリガーできる特定のカテゴリまたはクエリを設定します。

    • [カテゴリを閲覧] を選択した場合: [カテゴリ] フィールドに、閲覧時にこのコントロールをトリガーするカテゴリを入力します。

    • [検索] を選択した場合: [クエリを追加] ボタンをクリックして、フィルタするクエリ用語(running shoes など)を追加します。キーワードごとに、[部分一致] または [完全一致] を選択します。

  9. 省略可: [時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  10. [続行] をクリックして [アクション] セクションに進みます。

  11. [ブースト / 埋め込み商品] フィールドに商品属性のフィルタを追加します。

    フィルタリングと並べ替えで記載されているフィルタ式の構文を使用してください。たとえば、「product1」と「product2」の赤と青のバージョンを指定するには: (id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue"))

  12. [ブースト / 埋め込み値] には、スライダーを使用してブーストの強さを設定します。正の値は結果をブーストし、負の値は結果を埋め込みます。[続行] をクリックします。

  13. [サービス提供構成] セクションで、コントロールを適用するサービス提供構成を選択します。

  14. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[コントロール] ページの [サービス提供コントロール] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

ユーザーがサイトのカテゴリを閲覧した場合(search.request.query が空)、またはユーザーがサイトを検索した場合(search.request.query が空でない)、ブースト / 埋め込みコントロールをトリガーできます。

次の例は、閲覧でトリガーされるコントロールのフィールドを示しています。ここで、searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_BROWSE に設定されています。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_BROWSE"
              ],
              "rule": {
                "condition": {
                  "pageCategories": [
                      "CATEGORY_ABC",
                      "CATEGORY_XYZ"
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "boostAction": {
                  "boost": BOOST_NUMBER,
                  "productsFilter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"

次の例は、検索でトリガーされるコントロールのフィールドを示しています(searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_SEARCH に設定されています)。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_SEARCH"
              ],
              "rule": {
                "condition": {
                  "queryTerms": [
                    {
                      "value": "VALUE_1",
                      "fullMatch": "FULLMATCH_BOOLEAN_1"
                    },
                    {
                      "value": "VALUE_2",
                      "fullMatch": "FULLMATCH_BOOLEAN_2"
                    }
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "boostAction": {
                  "boost": BOOST_NUMBER,
                  "productsFilter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。

レコメンデーションのブースト / 埋め込みコントロールを作成する

レコメンデーションのブースト/埋め込みコントロールを作成するには:

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、[Browse] プロダクトを選択して、コントロール タイプ [Boost/Bury] を選択します。

  5. ブースト/ベリー コントロールを設定します。

    1. [トリガー] で、コントロールをトリガーするページのカテゴリを入力します。カタログ属性が構成されていない場合、このコントロールは常に有効です。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. このコントロールでトリガーするブースト/埋め込みアクションを定義します。これらのアクションは、カタログ属性colors など)、条件contains など)、red など)によって定義されます。

    4. [属性を追加] をクリックして、属性を追加します。

  6. スライダーを使用して [ブースト/埋め込み値] を設定します。負の数値は埋める、正の数値はブーストします。

  7. [送信] をクリックして、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールを作成する] ペインが開きます。

  3. [設定] セクションの [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  4. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  5. [プロダクトの選択] セクションで、[レコメンデーション] を選択します。

  6. コントロール タイプとして [ブースト / 埋め込みコントロール] を選択します。

  7. [続行] をクリックして [アクション] セクションに進みます。

  8. [ブースト / 埋め込み商品] フィールドに商品属性のフィルタを追加します。

    レコメンデーションのフィルタのドキュメントに記載されているフィルタ式の構文を使用します。

    たとえば、「product1」と「product2」の赤と青のバージョンを指定するには: (id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue"))

  9. [ブースト / 埋め込み値] には、スライダーを使用してブーストの強さを設定します。正の値は結果をブーストし、負の値は結果を埋め込みます。

  10. [続行] をクリックして [サービス提供構成] セクションに進みます。

  11. コントロールを適用するサービス構成を選択します。

  12. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[コントロール] ページの [サービス提供コントロール] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

フィルタ式を作成するには、レコメンデーションのフィルタに記載されているフィルタ式の構文を使用します。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_RECOMMENDATION" ],
                "boostAction": {
                  "boost": BOOST_NUMBER,
                  "productsFilter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
   

新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。

フィルタ オプションを作成する

このコントロール タイプの詳細については、フィルタ オプションをご覧ください。

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、[検索] または [閲覧] プロダクトを選択し、コントロール タイプ [フィルタ] を選択します。

  5. [フィルタ] コントロールを構成します。

    1. [トリガー] で、関連する検索クエリまたはページカテゴリに条件(「次を含む」や「範囲外」など)を指定して、このコントロールをトリガーするカタログ属性を定義します。カタログ属性が構成されていない場合、このコントロールは常に適用されます。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. このコントロールでトリガーするフィルタ アクションを定義します。これらのアクションは、カタログ属性colors など)、条件contains など)、red など)によって定義されます。

    4. [属性を追加] をクリックして、属性を追加します。

  6. [送信] をクリックして、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールを作成する] ペインが開きます。

  3. [設定] セクションの [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  4. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  5. コントロール タイプとして [フィルタ オプション] を選択します。

  6. [続行]をクリックして [トリガー] セクションに進みます。

  7. このコントロールをトリガーするユーザーの行動のタイプを選択します。

    • カテゴリを閲覧する: ユーザーがサイトのカテゴリを閲覧したときにルールがトリガーされます(search.request.query は空です)。

    • 検索: ユーザーがサイトで検索したときにルールがトリガーされます(search.request.query は空ではありません)。

  8. 省略可: 閲覧されるカテゴリまたは検索されるクエリに基づいてルールをトリガーするコントロール条件を設定します。使用可能なオプションは、[カテゴリを閲覧] か [検索] のどちらを選択するかによって異なります。

    • [カテゴリを閲覧] を選択した場合: [カテゴリ] フィールドに、閲覧時にこのコントロールをトリガーするカテゴリを入力します。

    • [検索] を選択した場合: [クエリを追加] ボタンをクリックし、フィルタするクエリ用語(running shoes など)を追加して、次の各用語のいずれかを選択します。

      • 部分一致: このコントロールは、クエリ語句に部分一致が含まれている場合に適用されます。
      • 完全一致: このコントロールは、クエリ語句に完全に一致する語句がクエリに含まれている場合にのみ適用されます。

      これらの語句の 1 つがクエリに含まれている場合にコントロールが適用されます。

  9. 省略可: [時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  10. [続行] をクリックして [アクション] セクションに進みます。

  11. [フィルタ アクション] フィールドに、商品属性のフィルタを追加します。

    フィルタリングと並べ替えで記載されているフィルタ式の構文を使用してください。

    たとえば、「product1」と「product2」の赤と青のバージョンを指定するには: (id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue"))

  12. [続行] をクリックして [サービス提供構成] セクションに進みます。

  13. コントロールを適用するサービス構成を選択します。

  14. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[コントロール] ページの [サービス提供コントロール] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

ユーザーがサイトのカテゴリを閲覧した場合(search.request.queryが空)、またはユーザーがサイトを検索した場合(search.request.queryが空でない)、フィルタ オプションをトリガーできます。

次の例は、閲覧でトリガーされるコントロールのフィールドを示しています。ここで、searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_BROWSE に設定されています。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_BROWSE"
              ],
              "rule": {
                "condition": {
                  "pageCategories": [
                      "CATEGORY_ABC",
                      "CATEGORY_XYZ"
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "filterAction": {
                  "filter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"

次の例は、検索でトリガーされるコントロールのフィールドを示しています(searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_SEARCH に設定されています)。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_SEARCH"
              ],
              "rule": {
                "condition": {
                  "pageCategories": [
                      "CATEGORY_ABC",
                      "CATEGORY_XYZ"
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "filterAction": {
                  "filter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。

リダイレクト コントロールを作成する

このコントロール タイプの詳細については、リダイレクト コントロールをご覧ください。

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、検索プロダクトを選択し、コントロール タイプ [リダイレクト] を選択します。

  5. リダイレクト コントロールを設定します。

    1. [トリガー] で、関連する検索クエリに条件(「contains」や「not in range」など)を指定して、このコントロールをトリガーするカタログ属性を定義します。カタログ属性が構成されていない場合、このコントロールは常に適用されます。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. リダイレクト URL を入力して、このコントロールでトリガーするリダイレクト アクションを定義します。

  6. [送信] をクリックして、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールを作成する] ペインが開きます。

  3. [設定] セクションの [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  4. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  5. コントロール タイプとして [リダイレクト コントロール] を選択します。

  6. [続行]をクリックして [トリガー] セクションに進みます。

  7. 検索語句または期間トリガーを 1 つ以上作成します。リダイレクト コントロールには、少なくとも 1 つのトリガーが必要です。

  8. このコントロールをトリガーするユーザーの行動のタイプを選択します。

    • カテゴリを閲覧する: ユーザーがサイトのカテゴリを閲覧したときにルールがトリガーされます(search.request.query は空です)。

    • 検索: ユーザーがサイトで検索したときにルールがトリガーされます(search.request.query は空ではありません)。

  9. 閲覧されるカテゴリまたは検索されるクエリに基づいてルールをトリガーするコントロール条件を設定します。使用可能なオプションは、[カテゴリを閲覧] か [検索] のどちらを選択するかによって異なります。

    • [カテゴリを閲覧] を選択した場合: [カテゴリ] フィールドに、閲覧時にこのコントロールをトリガーするカテゴリを入力します。

    • [検索] を選択した場合: [クエリを追加] ボタンをクリックし、フィルタするクエリ用語(running shoes など)を追加して、次の各用語のいずれかを選択します。

      • 部分一致: このコントロールは、クエリ語句に部分一致が含まれている場合に適用されます。
      • 完全一致: このコントロールは、クエリ語句に完全に一致する語句がクエリに含まれている場合にのみ適用されます。

      これらの語句の 1 つがクエリに含まれている場合にコントロールが適用されます。

  10. [時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  11. [続行] をクリックして [アクション] セクションに進みます。

  12. このコントロールがトリガーされたときにリダイレクトする URI を入力します。

  13. [続行] をクリックして [サービス提供構成] セクションに進みます。

  14. コントロールを適用するサービス構成を選択します。

  15. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

ユーザーがサイトのカテゴリを閲覧した場合(search.request.queryが空)、またはユーザーがサイトを検索した場合(search.request.queryが空でない)、リダイレクト コントロールをトリガーできます。

次の例は、閲覧でトリガーされるコントロールのフィールドを示しています。ここで、searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_BROWSE に設定されています。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_BROWSE"
              ],
              "rule": {
                "condition": {
                  "queryTerms": [
                    {
                      "value": "VALUE_1",
                      "fullMatch": "FULLMATCH_BOOLEAN_1"
                    },
                    {
                      "value": "VALUE_2",
                      "fullMatch": "FULLMATCH_BOOLEAN_2"
                    }
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "redirectAction": {
                  "redirectUri": "REDIRECT_URI",
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"

次の例は、検索でトリガーされるコントロールのフィールドを示しています(searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_SEARCH に設定されています)。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_SEARCH"
              ],
              "rule": {
                "condition": {
                  "queryTerms": [
                    {
                      "value": "VALUE_1",
                      "fullMatch": "FULLMATCH_BOOLEAN_1"
                    },
                    {
                      "value": "VALUE_2",
                      "fullMatch": "FULLMATCH_BOOLEAN_2"
                    }
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "redirectAction": {
                  "redirectUri": "REDIRECT_URI",
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。

双方向の類義語コントロールを作成する

このコントロール タイプの詳細については、双方向の類義語コントロールをご覧ください。

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、[検索] プロダクトを選択して、コントロール タイプ [類義語] を選択します。

  5. 双方向の類義語コントロールを構成します。

    1. [トリガー] で、関連する検索クエリに条件(「contains」や「not in range」など)を指定して、このコントロールをトリガーするカタログ属性を定義します。カタログ属性が構成されていない場合、このコントロールは常に適用されます。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. このコントロールでトリガーする類義語タイプを定義します。[双方向] を選択します。類義語の種類の詳細については、類義語のセクションをご覧ください。

  6. [送信] をクリックします。詳細な双方向の類義語の設定画面が表示されます。

  7. [双方向の類義語アクション] のフィールドに類義語を入力します。このアクションにより、検索結果で同じように扱われるように用語が双方向にリンクされます。たとえば、「赤いソファ」というクエリの結果には赤いマルーン色のソファが含まれますが、「マルーン色のソファ」というクエリの結果は、深紅やピンクなど、すべての種類の赤いソファが含まれるように拡張されます。

  8. もう一度送信して、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

  3. [コントロール名] フィールドに新しいコントロールの名前を入力します。

    [コントロールを作成する] ペインが開きます。

  4. [設定] セクションが表示されます。

  5. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  6. コントロール タイプとして [双方向の類義語コントロール] を選択します。

  7. [続行]をクリックして [トリガー] セクションに進みます。

  8. 省略可: [時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  9. [続行] をクリックして [アクション] セクションに進みます。

  10. [類義語] フィールドに、互いに類義語であるクエリキーワード(shirttop など)を 2 ~ 100 個入力します。

    これらの語句のいずれかがクエリに含まれている場合、検索ではその他のクエリ語句は含まれている語句の類義語と見なされます。

  11. [続行] をクリックして [サービス提供構成] セクションに進みます。

  12. コントロールを適用するサービス構成を選択します。

  13. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                    ]
                },
                "twoWaySynonymAction": {
                  "synonyms": [
                    "SYNONYM_1",
                    "SYNONYM_2"
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。サービス構成にインラインでコントロールを追加するをご覧ください。

一方向の類義語コントロールを作成する

このコントロール タイプの詳細については、一方向の類義語コントロールをご覧ください。

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、[検索] プロダクトを選択して、コントロール タイプ [類義語] を選択します。

  5. 一方向の類義語コントロールを構成します。

    1. [トリガー] で、関連する検索クエリに条件(「contains」や「not in range」など)を指定して、このコントロールをトリガーするカタログ属性を定義します。カタログ属性が構成されていない場合、このコントロールは常に適用されます。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. このコントロールでトリガーする類義語タイプを定義します。[片道] を選択します。類義語の種類の詳細については、類義語のセクションをご覧ください。

  6. [送信] をクリックします。詳細な一方向の類義語の設定画面が表示されます。

  7. [One-way synonym actions] のフィールドに類義語を入力します。この操作では、単一方向で語句をリンクし、検索結果で同じように扱われるようにします。たとえば、「赤いソファ」というクエリには「赤紫色のソファ」が含まれますが、「赤紫色のソファ」というクエリには他の種類の赤いソファは含まれず、結果は赤紫色のソファに限定されます。

  8. もう一度 [送信] をクリックして、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールを作成する] ペインが開きます。

  3. [設定] セクションの [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  4. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  5. コントロール タイプとして [一方向の類義語コントロール] を選択します。

  6. [続行]をクリックして [トリガー] セクションに進みます。

  7. 省略可: [時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  8. [続行] をクリックして [アクション] セクションに進みます。

  9. [クエリキーワード] フィールドに、いずれかがクエリに含まれるときに類義語を関連付ける必要のある用語(shoes など)を入力します。

  10. [類義語] フィールドに、指定したクエリキーワードの類義語として使用するキーワードを入力します(例: クエリキーワード shoes の一方向の類義語としての sneakerssandals)。

  11. [続行] をクリックして [サービス提供構成] セクションに進みます。

  12. コントロールを適用するサービス構成を選択します。

  13. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "oneWaySynonymAction": {
                  "synonyms": [
                    "queryTerms": [
                      "QUERY_TERM_1",
                      "QUERY_TERM_2"
                    ],
                    "synonyms": [
                      "SYNONYM_1",
                      "SYNONYM_2"
                    ]
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。

「関連付けなし」のコントロールを作成する

このコントロール タイプの詳細については、非関連付けコントロールをご覧ください。

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、[検索] プロダクトを選択して、コントロール タイプ [関連付けない] を選択します。

  5. 「関連付けなし」コントロールを構成します。

    1. [トリガー] で、関連する検索クエリに条件(「contains」や「not in range」など)を指定して、このコントロールをトリガーするカタログ属性を定義します。カタログ属性が構成されていない場合、このコントロールは常に適用されます。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. [アクションを関連付けない] で、前の [トリガー] セクションで入力したクエリキーワードに関連付けないキーワードを指定します。それぞれ [クエリ語句] フィールドと [関連付け解除された語句] フィールドに入力します。

  6. [送信] をクリックして、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールを作成する] ペインが開きます。

  3. [設定] セクションの [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  4. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  5. コントロール タイプとして [Do not associate control] を選択します。

  6. [続行]をクリックして [トリガー] セクションに進みます。

  7. 省略可: [時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  8. [続行] をクリックして [アクション] セクションに進みます。

  9. [クエリキーワード] フィールドに、他のクエリと明確に区別するキーワード(gShoe など)を入力します。

  10. [関連付けられていないキーワード] フィールドに、指定したクエリキーワードに関連付けないようにするキーワードを入力します。

    たとえば、クエリキーワード gShoe と キーワード cheap の関連付けを解除できます。

  11. [続行] をクリックして [サービス提供構成] セクションに進みます。

  12. コントロールを適用するサービス構成を選択します。

  13. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "doNotAssociateAction": {
                    "queryTerms": [
                      "QUERY_TERM_1",
                      "QUERY_TERM_2"
                    ],
                    "doNotAssociateTerms": [
                      "DISSOCIATED_TERM_1",
                      "DISSOCIATED_TERM_2"
                    ]
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。

取り消しコントロールを作成する

このコントロール タイプの詳細については、取り消しコントロールをご覧ください。

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、[検索] プロダクトを選択して、コントロール タイプ [無視] を選択します。

  5. [無視] コントロールを構成します。

    1. [トリガー] で、関連する検索クエリに条件(「contains」や「not in range」など)を指定して、このコントロールをトリガーするカタログ属性を定義します。カタログ属性が構成されていない場合、このコントロールは常に適用されます。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. 無視するアクションを [アクションを無視] に入力します。

  6. [送信] をクリックして、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールを作成する] ペインが開きます。

  3. [設定] セクションの [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  4. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  5. コントロール タイプとして [Do not associate control] を選択します。

  6. [続行]をクリックして [トリガー] セクションに進みます。

  7. 省略可: [時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  8. [続行] をクリックして [アクション] セクションに進みます。

  9. [キーワードを無視] フィールドに、クエリキーワードで入力するときに検索が無視するキーワード(shoddy など)を入力します。

  10. [続行] をクリックして [サービス提供構成] セクションに進みます。

  11. コントロールを適用するサービス構成を選択します。

  12. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "ignoreAction": {
                  "ignoreTerms": [
                      "IGNORE_TERM_1",
                      "IGNORE_TERM_2"
                    ]
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。

代替コントロールを作成する

このコントロール タイプの詳細については、代替コントロールをご覧ください。

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、検索プロダクトを選択し、コントロール タイプ [置換] を選択します。

  5. 置換コントロールを設定します。

    1. [トリガー] で、関連する検索クエリに条件(「contains」や「not in range」など)を指定して、このコントロールをトリガーするカタログ属性を定義します。カタログ属性が構成されていない場合、このコントロールは常に適用されます。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. [置換アクション] で、置き換えるクエリキーワードを最初のフィールドに、その代替キーワードを 2 番目のフィールドに定義します。

  6. [送信] をクリックして、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールを作成する] ペインが開きます。

  3. [設定] セクションの [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  4. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  5. コントロール タイプとして [代替コントロール] を選択します。

  6. [続行]をクリックして [トリガー] セクションに進みます。

  7. 省略可: [時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  8. [続行] をクリックして [アクション] セクションに進みます。

  9. [クエリキーワード] フィールドに、代替キーワードで置き換えるクエリキーワード(gShoe など)を入力します。

  10. [代替キーワード] フィールドに、指定したクエリキーワードを置き換えるキーワードを入力します。

    たとえば、クエリキーワード gShoe を代替キーワード Google Shoe に置き換えることができます。

  11. [続行] をクリックして [サービス提供構成] セクションに進みます。

  12. コントロールを適用するサービス構成を選択します。

  13. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "replacementAction": {
                    "queryTerms": [
                      "QUERY_TERM_1",
                      "QUERY_TERM_2"
                    ],
                    "replacementTerm": "REPLACEMENT_TERM"
                  }
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。

固定コントロールを作成する

固定コントロールを作成するには:

マーチャンダイジング コンソール

  1. 管理者から提供された URL をクリックします。サインインします。

    商品コンソールの [コントロール] ページが表示されます。

  2. [コントロールを作成] をクリックします。

  3. エンドユーザーの目標と必要なタイミングを定義します。すべての質問に回答する必要があります。[次へ] をクリックします。

  4. コントロールを選択します。コントロールの名前を入力し、検索プロダクトを選択し、コントロール タイプ [固定] を選択します。

  5. [固定] コントロールを設定します。

    1. [トリガー] で、関連する検索クエリに条件(「contains」や「not in range」など)を指定して、このコントロールをトリガーするカタログ属性を定義します。カタログ属性が構成されていない場合、このコントロールは常に適用されます。

    2. [期間] に入力して、適用期間を定義します。指定した期間のいずれかが満たされると、指定した期間のいずれかでカタログ属性がクエリと照合されます。[期間を追加] を使用して期間を追加します。

    3. このコントロールでトリガーする固定アクションを定義します。これらのアクションは、商品 ID とピンの位置(120 未満の数字(一般的なページサイズ)が望ましい)で定義されます。[商品を追加] をクリックして、最大 10 個追加できます。

  6. [送信] をクリックして、管理リクエストを承認者に送信します。送信されたリクエストのステータスは、販売管理コンソールで確認できます。管理リクエストは、後で削除することもできます。

Cloud コンソール

  1. 検索広告コンソールの [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールを作成する] ペインが開きます。

  3. [設定] セクションの [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  4. 省略可: 自動的に作成されたコントロール ID を変更するには、[編集] をクリックして新しいコントロール ID を入力します。

  5. [プロダクトの選択] セクションで、[検索または参照] を選択します。

  6. コントロール タイプとして [固定コントロール] を選択します。[続行] をクリックします。

  7. [トリガー] セクションで、このコントロールをトリガーするユーザーの行動を選択します。

    • カテゴリをブラウジングする: ブラウジング リクエストでは、search.request.query が空であるだけでなく、page_categories フィールドに値を入力する必要があります。

    • 検索: 検索リクエストでは、search.request.query のみを入力する必要があります。

      デフォルトでは、閲覧されたすべてのカテゴリと検索されたすべてのクエリがこのコントロールをトリガーします。

  8. 省略可: 閲覧された特定のカテゴリまたは検索されたクエリに基づいてルールをトリガーする条件を設定します。

    • カテゴリを閲覧: [カテゴリ] フィールドに、コントロールをトリガーするカテゴリを入力します。

    • 検索: フィルタするクエリキーワード(running shoes など)を追加するには、[クエリを追加] をクリックします。キーワードごとに、[部分一致] または [完全一致] を選択します。

  9. 省略可: [時間範囲を追加] または [期間を追加] をクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  10. [続行] をクリックして [アクション] セクションに進みます。[固定位置] で、商品を固定する位置をスライダーで指定します。ピンの値スライダーでは、0、負の数、整数以外の値は使用できません。

    Vertex AI Search for Commerce では、1 つのコントロールのピンマップ内に 10 個のピンを配置できます。位置は 1 ~ 120(最大リクエスト ページサイズ)の任意の値に設定できます。

  11. [続行] をクリックして [サービス提供構成] セクションに進みます。コントロールを適用するサービス構成を選択し、コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページ でテストできます。

新しいコントロールは、[コントロール] ページの [サービス提供コントロール] タブに表示されます。

curl

リクエスト本文に含まれる Control のコントロール ID とインスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
 -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
 -H "Content-Type: application/json; charset=utf-8" \
 -H "X-Goog-User-Project: PROJECT_NUMBER" \
 --data '{
          "displayName": "DisplayName",
          "solutionTypes": "SOLUTION_TYPE_SEARCH",
          "searchSolutionUseCase": ["SEARCH_SOLUTION_USE_CASE_SEARCH"],
     "rule": {
            "condition": {
 "queryTerms": [
                {
                  "value": "Term1",
                  "fullMatch": "boolean: true / false"
                },
                {
                  "value": "Term2",
                  "fullMatch": "boolean: true / false"
                },
             ],
             "activeTimeRange": [
               {
                 "startTime": timestamp1,
                 "endTime": timestamp2
               },
               {
                 "startTime": timestamp3,
                 "endTime": timestamp4
               }
             ]
            },
            "pinAction": {
               "pinMap" :  {
                        "pin_position1": "product_id",
                      "pin_position2": "product_id>"
                    }
            }
              }
}' \
"https://retail.googleapis.com/v2alpha/projects/PROJECT_NUMBER/locations/LOCATION/catalogs/default_catalog/controls?controlId=CONTROL_ID"

pin_position は 1 ~ 10 の整数にする必要があります。また、product_id はカタログに存在している必要があります。ピンマップ内で許可される要素の最大数は、コントロールごとに 10 個です。

次に、固定コントロールをサービス構成にアタッチします。

curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "X-Goog-User-Project: PROJECT_NUMBER" \
-d '{
      "controlId": "CONTROL_ID"
  }' \
'https://retail.googleapis.com/v2alpha/projects/PROJECT_NUMBER/locations/LOCATION/catalogs/default_catalog/servingConfigs/SERVING_CONFIG_ID:addControl'

この場合、CONTROL_ID は、前に作成した固定コントロール id にする必要があります。

サービス構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。

最後に、設定をテストするために検索リクエストを実行します。リクエストに固定コントロールが正常に適用されるようにするには、前の手順で作成したコントロールで指定したキーワードまたはカテゴリと一致するクエリキーワード(検索の場合)またはページカテゴリ(ブラウジングの場合)を使用します。

Cloud コンソール

  1. 検索広告コンソールの [評価] ページに移動します。

    [評価] ページに移動

  2. [検索] タブに移動します。

  3. 検索クエリ フィールドにテストクエリを入力します。

  4. [検索プレビュー] をクリックします。

  5. 結果を表示して、選択した商品が固定されていることを確認します。

curl

curl -s -X POST -H "Authorization: Bearer " -H "Content-Type: application/json"
--data "{'query': '','visitorId': ''}" \ "https://retail.googleapis.com/v2/projects/PROJECT/locations/global/catalogs/CATALOG/placements/default_search:search"

エラーチェックの制約

エラーチェックでは、次の制約に注意してください。

  • 2 つの商品を同じ位置に固定することはできません。つまり、商品「a」と商品「b」の両方を位置番号 2 に設定することはできません。
  • 一方、1 つの商品を複数の位置に固定することはできません。つまり、同じクエリで商品「a」を位置 #2 と #3 に同時に固定することはできません。
  • フィルタや並べ替えが適用されていないことを前提として、product_id はカタログに商品として存在している必要があります。