概要

Google パートナーは、予約待ちリストの統合を通じて、構造化されたメニューデータを Google に提供できます。このデータは、レストランの Google ビジネス プロフィールの [メニュー] セクションや、Google のユーザー向けサービス全体の他のエントリ ポイントで使用されます。

メニューデータは汎用フィードを使用して取り込まれます。始める前に:

  1. アカウントの設定が完了していることを確認する
  2. 汎用フィードのアップロード プロセスについて
  3. 汎用フィードのアップロード用にアカウントを構成する方法について

メニュー フィードの作成とアップロード

メニュー フィードを作成してアップロードする際は、次のガイドラインと規則に従ってください。
  • レストランの詳細を提供するには、販売者フィードで説明されているデータ仕様に沿って対応してください。JSON ファイルの例については、JSON のサンプルをご覧ください。データファイル名はアップロード間で一意である必要があります。ファイル名にタイムスタンプを含めることをおすすめします(例: menu1_1633621547.json)。
  • メニュー フィードのファイルセット記述子で、name フィールドを google.food_menu に設定します。記述子ファイルの内容の例については、記述子ファイルの JSON サンプルを参照してください。記述子ファイルの名前は、アップロード間で一意である必要があります。ファイル名にタイムスタンプを含めることをおすすめします(例: descriptor_1633621547.filesetdesc.json)。記述子ファイルは、メニューフィードの一部として汎用 SFTP サーバーにアップロードする必要があります。
  • フィードは、全データを含む更新として、毎日汎用 SFTP サーバーにアップロードする必要があります。
  • 汎用フィードの sftp の使用で説明されているように、フィードを 1,000 個のシャード(ファイル)に制限します。

フィードの取り込みステータスは、パートナー ポータルの [取り込み > 履歴] セクションで確認できます。フィードの SFTP サーバー情報は、パートナー ポータルの [設定] > [フィード] セクションで確認できます。

フィードの SFTP サーバーを選択する

図 1: 一般的な SFTP サーバー情報

フィードの取り込みステータスは、パートナー ポータルの [取り込み > 履歴] セクションで確認できます。フィードの SFTP サーバー情報は、パートナー ポータルの [構成] > [フィード] セクションで確認できます。

メニュー項目のオプションの操作

メニュー項目のオプションは、MenuItemOption proto を使用して指定できます。

1 つのメニュー項目に複数の必須オプションのセットがあるパートナー(たとえば、サイズ オプションとミルク オプションがあるラテ)は、Google でこれらのオプションを最適に表示する方法を決定する必要があります。Google では次のことをおすすめします。

  • メニュー フィードは、パートナーの注文サイト(または、店舗の注文サイトがない場合はレストランの店内メニュー)と一致している必要があります。注文サイトで個別の価格が表示される場合は、MenuItem を使用する必要があります。商品が基本価格と複数のオプションで表示される場合は、MenuItemOption を使用する必要があります。
  • 次のような、オプションの長いリストは含めないでください。
    • チキンブリトー
    • チーズ入りチキン ブリトー
    • サルサを添えたチキン ブリトー
    • サルサとチーズを添えたチキン ブリトー
    • チキン ブリトーとワカモレ
    • ワカモレとサルサを添えたチキン ブリトー
  • メニュー項目のオプションは、料理でオプションのいずれかの選択が必須の場合にのみサポートされます。たとえば、ピザを注文する場合、サイズは必須のオプションです。アドオンのメニュー項目オプション(「アボカドを追加するオプション」など)は対象外であり、フィードに含めるべきではありません。

メニュー項目のオプションの価格は、そのオプションが選択された項目の全額である必要があります。価格はメニュー アイテムまたはオプションのいずれかに設定する必要があります。両方に設定することはできません。

複数のメニューがあるレストラン

1 つのレストラン(エンティティ)に設定できるメニューは 1 つのみです。複数のメニュー(ランチとディナーのメニューが別々になっているなど)があるレストランの場合は、すべてのメニューを 1 つのメニューに統合して MenuSections を使用できます(ランチのセクションとディナーのセクションがある 1 つのメニューなど)。結果として、メニューは次のような構造になります。

  • メニュー
    • ランチ セクション
      • スープ
        • スープ 1
        • スープ 2
      • サンドイッチ
        • サンドイッチ 1
        • サンドイッチ 2
    • ディナー セクション
      • 先発メンバー
        • スターター 1
        • 開始条件 2
      • メイン
        • メインディッシュ 1
        • メインディッシュ 2

複数のレストランでメニューを共有する

1 つのメニューを複数のレストランで共有するには、メニューの merchant_ids リストにすべてのレストランを含めます。このリストでは、エンティティ フィードを使用するパートナーのエンティティ ID を受け付けます。

ベスト プラクティス

メニュー フィードを開発する際のベスト プラクティスは次のとおりです。

  • レストランに関連付けることができるメニューは 1 つのみです。
  • MenuItem オブジェクトは、すべてのセクションとネストされたサブセクションを合わせて最大 3,000 個まで使用できます。
  • 1 つの Menu 内で、エンティティ タイプ(MenuSection、MenuItem、MenuItemOption)ごとに最大 100,000 個の一意のエンティティが許可されます。
  • 完全に組み立てられた Menu(すべてのセクション、アイテム、オプションを重複排除後に組み合わせたもの)は 3.8 MB を超えてはなりません。
  • すべての ID フィールド(menu_id、merchant_ids、menu_section_ids、menu_item_ids、menu_item_option_ids、addon_menu_section_ids)は 580 文字以下にする必要があります。
  • TextField の最初の言語として優先言語を指定します。複数の LocalizedText オブジェクトを送信する場合、テキスト リストの最初のオブジェクトがユーザーに表示されます。
  • すべてのメニュー項目は、メニュー セクションに追加する必要があります。メニュー項目をメニュー オブジェクトに直接追加しないでください。
  • utf-8 エンコードを使用してコンテンツを提供します。ASCII 以外の文字をエスケープする必要はありません。
  • 複数の地域でリリースする場合は、単位とナノのフィールドで正しい通貨コードと額面を使用していることを確認してください。特に、ナノのフィールドは単位の 10^-9 であるため、注意が必要です。在庫ビューアのメニュー ビジュアライザーを使用して、価格が正しく設定されていることを確認します。
  • 視覚的に豊かで、包括的で、最新のメニューをユーザーに提供することは、有益で魅力的なユーザー エクスペリエンスを提供するための鍵となります。価格、説明、写真、食事に関する情報は、意思決定を促すうえで重要な要素です。最適なユーザー エクスペリエンスと販売者エクスペリエンスを提供するため、パートナーは可能な限り多くのデータを提供することをおすすめします。
  • 価格を表示しない場合は、Offer proto に空の Price proto を含めます。

メニュー フィードが リリースされると、メニュー フィードのデータが検索結果に表示されるようになり、レストランのプレースシートの [メニュー] タブに表示される可能性があります。メニュータブは Google 検索(モバイルとパソコン)でサポートされており、Google マップなどの他のサービスにも拡大される予定です。レンダリングされるエクスペリエンスはサーフェスによって異なる場合があります。

説明付きのメニュー アイテムが表示されているメニューの例

図 3: モバイルのビジネス プロフィールにメニュー フィードのコンテンツが表示される例

メニューが正しく構成されていることを確認するには、在庫ビューアのメニュー ビジュアライザーを使用してメニューをプレビューします。

レストランのメニューは、Google ビジネス プロフィールを通じてレストラン自身から提供されるほか、料理の注文や予約のパートナー、メニューのユーザー写真など、さまざまなソースから提供されます。同じレストランのメニューを複数のソースが提供している場合、販売者は Google ビジネス プロフィールのメニュー エディタで優先するプロバイダを選択できます。

スキーマ

メニュー スキーマの全文はこちらで確認できます。

FoodMenuFeed

フィールド名タイプ要件説明
dataオブジェクトの配列
(MenuComponent)

フィールド名タイプ要件説明
oneOf
(type)

この oneOf のフィールドは 1 つだけ設定できます。

食品施設が提供する食品アイテムの最上位カタログ。Menu には、販売者 ID のリストと、それらの販売者に適用されるメニューが含まれます。メニューは、メニューのある 1 つの販売者を表すために使用することも、メニューのある複数の販売者(通常はチェーン レストラン)を表すために使用することもできます。

フィールド名タイプ要件説明
menu_id文字列

必須

パートナー フィード内のメニューを一意に識別する、パートナーからの不透明な文字列。必須。
merchant_ids文字列の配列

必須

メニューが適用される販売者。注: このフィールドは繰り返されるため、チェーン レストランは複数の店舗で同じメニューを共有できます。各店舗は個別の販売者です。必須。
display_nameオブジェクト
(TextField)

ユーザーがメニューを閲覧しているときにメニューを識別できる名前。省略可。
language文字列

メニューに含まれるテキストラベルに関連付けられているデフォルトの言語コード。「en-US」や「sr-Latn」などの BCP-47 言語コードが想定されます。詳しくは、http://www.unicode.org/reports/tr35/#Unicode_locale_identifier をご覧ください。省略可。

TextField

1 つ以上のローカライズされた値を含むテキスト ペイロード。

フィールド名タイプ要件説明
textオブジェクトの配列
(LocalizedText)

必須

ロケールごとのテキスト値。 サポートする言語 / 地域が 1 つだけの場合は、各テキスト内の language_code を設定する必要はなく、メニューのデフォルトの言語から言語が推測されます。複数のテキストが異なるロケールにまたがっている場合は、各テキストに language_code を設定する必要があります。リスト内の最初のテキストが優先表現とみなされます。必須。

LocalizedText

特定の言語のテキストのローカライズされたバリエーション。

フィールド名タイプ要件説明
text文字列

以下の [language_code][google.type.LocalizedText.language_code] に対応する言語のローカライズされた文字列。
language_code文字列

テキストの BCP-47 言語コード(「en-US」や「sr-Latn」など)。詳細については、http://www.unicode.org/reports/tr35/#Unicode_locale_identifier をご覧ください。

メニュー セクションは、メニューの項目のグループです。通常、メニューの項目の論理グループごとに個別の MenuSection が作成されます。たとえば、コース料理の種類(前菜、メイン、デザート)や料理のカテゴリ(ハンバーガー、ドリンク)は一般的なセクションです。

フィールド名タイプ要件説明
menu_section_id文字列

必須

パートナー フィード内の MenuSection を一意に識別する、パートナーからの不透明な文字列。必須。
display_nameオブジェクト
(TextField)

必須

ユーザーがメニューを閲覧しているときに MenuSection を識別できる名前。必須。
descriptionオブジェクト
(TextField)

メニュー セクションの説明。 省略可。
imagesオブジェクトの配列
(Image)

メニュー セクションの画像。省略可。

画像

メニュー エンティティに関連付けられた画像を表します。

フィールド名タイプ要件説明
uri文字列

必須

画像の未加工のピクセルを含む URL。必須。

飲食店が提供する単一の食品または飲料を表します。

フィールド名タイプ要件説明
menu_item_id文字列

必須

パートナー フィード内の MenuItem を一意に識別する、パートナーからの不透明な文字列。必須。
display_nameオブジェクト
(TextField)

必須

ユーザーがメニューを閲覧しているときに MenuItem を識別できる名前。必須。
descriptionオブジェクト
(TextField)

メニュー項目の説明。 省略可。
imagesオブジェクトの配列
(Image)

メニュー項目の画像。省略可。
oneOf
(pricing)

必須

この oneOf のフィールドは 1 つだけ設定できます。
item_attributesオブジェクト
(MenuItemAttributes)

このメニュー項目の属性。省略可。

OfferSet

メニュー項目 / オプションで利用可能な特典のリストのコンテナ。一度に適用できる/有効な特典は 1 つのみです。たとえば、ドリンクに 2 つの特典を設定し、1 つは朝に適用され、もう 1 つはハッピーアワーの夕方に適用されるようにすることができます。

フィールド名タイプ要件説明
offersオブジェクトの配列
(Offer)

必須

可能なオファーのリスト。 必須。

特典

MenuItems と MenuItemOptions の価格と在庫状況の情報を表します。

フィールド名タイプ要件説明
priceオブジェクト
(Money)

次のケースは無効であり、メニュー アイテムが削除されます。 通貨コードがなく、単位またはナノ秒、あるいはその両方がある価格: price {units: 100, nanos: 1000000} price {units: 100} price {nanos: 1000000} 通貨コードが無効で、単位またはナノ秒、あるいはその両方がある価格: price {currency_code: 'gXYZ', units: 100, nanos: 1000000} price {currency_code: 'gXYZ', units: 100} price {currency_code: 'gXYZ', nanos: 1000000} 通貨コードはあるが、単位またはナノ秒が無効な価格 price {currency_code: 'USD', units: 100, nanos: -100} price {currency_code: 'USD', units: -100, nanos: 100}

金額

金額をその通貨タイプで表します。

フィールド名タイプ要件説明
currency_code文字列

ISO 4217 で定義されている 3 文字の通貨コード。
units数値

金額の整数部分。たとえば、currencyCode が "USD" の場合、1 単位は 1 米ドルです。
nanos数値

金額のナノ単位(10 のマイナス 9 乗)の数。値は -999,999,999 以上 +999,999,999 以下でなければなりません。units が正の場合、nanos には正数または 0 を指定します。units がゼロの場合、nanos には正数、0、または負数を指定できます。units が負の場合、nanos は負数または 0 を指定します。たとえば、$-1.75 は units = -1、nanos = -750,000,000 と表されます。

アイテムで使用可能なオプションのリストを指定するコンテナ。

フィールド名タイプ要件説明
menu_item_option_ids文字列の配列

必須

このメニュー アイテムに適用可能なメニュー アイテム オプションの ID。必須。

特定のメニュー項目またはオプションに関する属性を記述します。

フィールド名タイプ要件説明
number_of_servings数値

特定のメニュー アイテムで利用可能なサービングの数。省略可。
nutrition_informationオブジェクト
(NutritionInformation)

アイテムのすべての栄養情報(カロリー、脂肪含有量など)を説明します。省略可。
suitable_dietsenum の配列
(DietaryRestriction)

このメニュー アイテムが準拠している食事制限。省略可。
additiveオブジェクトの配列
(Additive)

このメニュー項目の添加物。省略可。
allergenオブジェクトの配列
(Allergen)

このメニュー項目のアレルゲン。省略可。
packaging_deposit_infoオブジェクト
(DepositInfo)

このメニュー項目のパッケージとリサイクルに関する情報。省略可。

NutritionInformation

MenuItem またはアドオンのすべての栄養測定値を記述します。

フィールド名タイプ要件説明
energyオブジェクト
(NutritionValue)

1 食分の食品の栄養エネルギー量。カロリーまたはキロジュールで定義できます。省略可。
sodium_contentオブジェクト
(NutritionValue)

ナトリウム含有量(グラムまたはミリグラム単位)。 省略可。
serving_size数値

栄養価が適用されるサービングの数。省略可。
descriptionオブジェクト
(TextField)

栄養情報を自由形式のテキストで入力します。(例: 「保存料が含まれています」)。省略可。

NutritionValue

食品の 1 食分の栄養成分の測定値を表します。

フィールド名タイプ要件説明
oneOf
(value)

この oneOf のフィールドは 1 つだけ設定できます。
unitenum
(NutritionValueUnit)

必須

パートナーから指定された金額に関連付けられた単位。各栄養価の単位がその値のタイプに想定されるように、フィードを検証します。たとえば、NutritionalInformation のエネルギー プロパティでは ENERGY_CALORIES と ENERGY_KILOJOULES のみが想定されます。必須。

範囲

栄養価の閉区間について説明します。例: 「100 ~ 150 カロリー」

フィールド名タイプ要件説明
min数値

必須

栄養価の最小量。必須。
max数値

必須

栄養価の最大量。必須。

追加的変更

MenuItem でユーザーに表示される添加物。添加物は、食品の品質を保持または向上させるものです。

フィールド名タイプ要件説明
nameオブジェクト
(TextField)

必須

添加物の説明テキスト(「保存料」など)。必須。
containment_level_codeenum
(ContainmentLevelCode)

MenuItem にこの添加物が含まれているか、含まれている可能性があるか、含まれていないか。 デフォルトは contains です。省略可。

アレルゲン

MenuItem でユーザーに表示されるアレルゲン。アレルゲンは、アレルギー反応を引き起こす食品の特性に関連しています。

フィールド名タイプ要件説明
allergen_type_codeenum
(AllergenTypeCode)

必須

アレルゲンの種類。 必須。
containment_level_codeenum
(ContainmentLevelCode)

MenuItem にこのアレルゲンが含まれているか、含まれている可能性があるか、含まれていないか。デフォルトは contains です。省略可。

DepositInfo

パートナーが、食品やボトルの預け方と預かり金の額をお客様に伝えるための預かり金情報を提供しました。

フィールド名タイプ要件説明
deposit_codeenum
(DepositCode)

使用するデポジット戦略(「再利用可能」など)。省略可。
deposit_valueオブジェクト
(Money)

商品を適切に預けた場合に払い戻される金額。 省略可。

料理やコンボを選択する際にユーザーが選択する必要がある項目について説明します。ユーザーはオプションを選択する必要があります。選択しない場合、注文は無効とみなされます(例: ピザのサイズとして小、中、大のいずれかを選択する必要があります)。

フィールド名タイプ要件説明
menu_item_option_id文字列

必須

パートナー フィード内の MenuItemOption を一意に識別する、パートナーからの不透明な文字列。必須。
valueオブジェクト
(MenuItemOptionProperty)

必須

オプションのプロパティと値(例: サイズ: S)。必須。

メニュー項目のオプションとその値のプロパティについて説明します。

フィールド名タイプ要件説明
property_typeenum
(PropertyType)

必須

このオプション プロパティの型。 必須。
oneOf
(value)

必須

この oneOf のフィールドは 1 つだけ設定できます。

NutritionValueUnit

名前説明
NUTRITION_VALUE_UNIT_UNSPECIFIED使用しない。栄養価の単位が明示的に設定されていません。
ENERGY_CALORIESメニュー項目のエネルギー量を表す単位。
ENERGY_KILOJOULES
WEIGHT_MILLIGRAMSメニュー項目に含まれる物質の重量を表現するために使用される単位。
WEIGHT_GRAMS

DietaryRestriction

食品の準備中に遵守された食事制限またはガイドラインを示します。

名前説明
DIET_UNSPECIFIED使用しない。食事制限が明示的に指定されていません。
DIET_DIABETIC
DIET_GLUTEN_FREE
DIET_HALAL
DIET_HINDU
DIET_KOSHER
DIET_LOW_CALORIE
DIET_LOW_FAT
DIET_LOW_LACTOSE
DIET_LOW_SALT
DIET_VEGAN
DIET_VEGETARIAN

ContainmentLevelCode

アレルギー物質や添加物など、特定の属性が食品にどの程度含まれているかを示します。

名前説明
CONTAINMENT_LEVEL_CODE_UNSPECIFIED使用しない。封じ込めレベルコードが明示的に指定されていません。
CONTAINMENT_LEVEL_CODE_CONTAINS
CONTAINMENT_LEVEL_CODE_DOES_NOT_CONTAIN
CONTAINMENT_LEVEL_CODE_MAY_CONTAIN

AllergenTypeCode

GS1 から派生したアレルゲン タイプ: http://gs1.org/voc/AllergenTypeCode

名前説明
ALLERGEN_TYPE_CODE_UNSPECIFIED使用しない。アレルゲン タイプコードが明示的に指定されていません。
ALLERGEN_TYPE_CODE_ALMONDS
ALLERGEN_TYPE_CODE_ALPHA_ISOMETHYL_IONONE
ALLERGEN_TYPE_CODE_ALCOHOL
ALLERGEN_TYPE_CODE_AMYL_CINNAMAL
ALLERGEN_TYPE_CODE_ANISE_ALCOHOL
ALLERGEN_TYPE_CODE_BARLEY
ALLERGEN_TYPE_CODE_BENZYL_ALCOHOL
ALLERGEN_TYPE_CODE_BENZYL_BENZOATE
ALLERGEN_TYPE_CODE_BENZYL_CINNAMATE
ALLERGEN_TYPE_CODE_BENZYL_SALICYLATE
ALLERGEN_TYPE_CODE_BRAZIL_NUTS
ALLERGEN_TYPE_CODE_BUTYLPHENYL_METHYLPROPIONATE
ALLERGEN_TYPE_CODE_CARROTS
ALLERGEN_TYPE_CODE_CASHEW_NUTS
ALLERGEN_TYPE_CODE_CELERY
ALLERGEN_TYPE_CODE_CEREALS_CONTAINING_GLUTEN
ALLERGEN_TYPE_CODE_CINNAMAL
ALLERGEN_TYPE_CODE_CINNAMYL_ALCOHOL
ALLERGEN_TYPE_CODE_CITRAL
ALLERGEN_TYPE_CODE_CITRONELLOL
ALLERGEN_TYPE_CODE_COCOA
ALLERGEN_TYPE_CODE_CORIANDER
ALLERGEN_TYPE_CODE_CORN
ALLERGEN_TYPE_CODE_COUMARIN
ALLERGEN_TYPE_CODE_CRUSTACEANS
ALLERGEN_TYPE_CODE_EGGS
ALLERGEN_TYPE_CODE_EUGENOL
ALLERGEN_TYPE_CODE_EVERNIA_FURFURACEA
ALLERGEN_TYPE_CODE_EVERNIA_PRUNASTRI
ALLERGEN_TYPE_CODE_FARNESOL
ALLERGEN_TYPE_CODE_FISH
ALLERGEN_TYPE_CODE_GERANIOL
ALLERGEN_TYPE_CODE_GLUTEN
ALLERGEN_TYPE_CODE_HAZELNUTS
ALLERGEN_TYPE_CODE_HEXYL_CINNAMAL
ALLERGEN_TYPE_CODE_HYDROXYCITRONELLAL
ALLERGEN_TYPE_CODE_HYDROXYISOHEXYL_3_CYCLOHEXENE_CARBOXALDEHYDE_ISOEUGENOL_LIMONENE_LINAL
ALLERGEN_TYPE_CODE_KAMUT
ALLERGEN_TYPE_CODE_LACTOSE
ALLERGEN_TYPE_CODE_LUPINE
ALLERGEN_TYPE_CODE_MACADAMIA_NUTS
ALLERGEN_TYPE_CODE_METHYL_2_OCTYNOATE
ALLERGEN_TYPE_CODE_MILK
ALLERGEN_TYPE_CODE_MOLLUSCS
ALLERGEN_TYPE_CODE_MUSTARD
ALLERGEN_TYPE_CODE_NO_DECLARED_ALLERGENS
ALLERGEN_TYPE_CODE_OAT
ALLERGEN_TYPE_CODE_PEANUTS
ALLERGEN_TYPE_CODE_PEAS
ALLERGEN_TYPE_CODE_PECAN_NUTS
ALLERGEN_TYPE_CODE_PISTACHIOS
ALLERGEN_TYPE_CODE_POD_FRUITS
ALLERGEN_TYPE_CODE_QUEENSLAND_NUTS
ALLERGEN_TYPE_CODE_RYE
ALLERGEN_TYPE_CODE_SESAME_SEEDS
ALLERGEN_TYPE_CODE_SOYBEANS
ALLERGEN_TYPE_CODE_SPELT
ALLERGEN_TYPE_CODE_SULPHUR_DIOXIDE
ALLERGEN_TYPE_CODE_TREE_NUTS
ALLERGEN_TYPE_CODE_TREE_NUT_TRACES
ALLERGEN_TYPE_CODE_WALNUTS
ALLERGEN_TYPE_CODE_WHEAT

DepositCode

食品やボトルを適切に預ける方法を示します。

名前説明
DEPOSIT_CODE_UNSPECIFIED使用しない。入金コードが明示的に指定されていません。
DEPOSIT_CODE_REUSABLE
DEPOSIT_CODE_RECYCLABLE

PropertyType

オプションの対象となるプロパティのタイプ。

名前説明
UNKNOWN_PROPERTY_TYPE使用しない。プロパティ タイプが明示的に指定されていません。
OPTION以下のより具体的なタイプに該当しない、一般的なメニュー項目のオプション プロパティ。プロパティが SIZE または PIZZA_SIDE タイプでない場合に使用します。
SIZEサイズ(小、中、大など)のメニュー アイテム オプションのプロパティを示します。
PIZZA_SIDEピザに固有のプロパティ。たとえば、この MenuItemOption は、ピザの一部または全体(左側、右側、またはピザ全体のマッシュルーム トッピングなど)にのみ有効です。

PropertyValue

オプション プロパティの明確に定義された値。

名前説明
UNKNOWN_PROPERTY_VALUE使用しない。プロパティ値が明示的に指定されていません。
PIZZA_SIDE_LEFTMenuItemOption はピザの左側にのみ適用されます。
PIZZA_SIDE_RIGHTMenuItemOption はピザの右側にのみ適用されます。
PIZZA_SIDE_WHOLEMenuItemOption はピザ全体に適用されます。

type

フィールド名タイプ要件説明
menuオブジェクト
(Menu)

section、item、option とは相互に排他的です。

sectionオブジェクト
(MenuSection)

menu、item、option とは相互に排他的です。

itemオブジェクト
(MenuItem)

menu、section、option とは相互に排他的です。

optionオブジェクト
(MenuItemOption)

menu、section、item とは相互に排他的です。

料金

メニュー アイテムには、価格またはメニュー アイテム オプションのセットのいずれかが必要です。必須。

フィールド名タイプ要件説明
offer_setオブジェクト
(OfferSet)

menu_item_option_set とは相互に排他的です

この食品アイテムを購入できる特典。
menu_item_option_setオブジェクト
(MenuItemOptionSet)

offer_set とは相互に排他的です

このメニュー アイテムで利用可能なオプション。

値

必須の oneof。

フィールド名タイプ要件説明
amount数値

range とは相互に排他的です

栄養価の量を示す単一の数値。
rangeオブジェクト
(Range)

amount とは相互に排他的です

栄養価の量を示す範囲。

値

必須。

フィールド名タイプ要件説明
property_valenum
(PropertyValue)

text_val とは相互に排他的です

オプション プロパティの明確に定義された値。現在、property_type が PIZZA_SIDE の場合にのみ想定されます。
text_valオブジェクト
(TextField)

property_val とは相互に排他的です

プロパティの値の自由形式のテキスト。property_type OPTION と SIZE で想定されます。