更新食物選單

當您 菜單 加入到產品資訊後,顧客就能知道您餐廳提供的菜單選項 你可以取得選單項目的其他相關資訊。

如要更新商家資訊的菜單,請先呼叫 accounts.locations.getFoodMenus。 以下是要求範例:

GET
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/foodMenus

回應包含 JSON 表示法的目前清單 FoodMenus。視需要修改 FoodMenus 物件並呼叫 accounts.locations.updateFoodMenus。 若需更多資訊,請參閲 上傳或更換菜單

你可以使用 Google My Business API 更新下列欄位:

欄位
名稱

必要

食物項目的名稱,例如 Hamburger

價格

必要

食品的價格。

價格幣別

必要

食品價格的幣別,例如 U.S. dollar

Item description

選用

食物項目的簡短說明。

菜單專區

選用

食品的邏輯群組,例如 BreakfastHamburger-Fries combo.

營養

選用 (建議)

營養資訊,例如 Total Fat=3g

可服務的人數

選用

可供應食品的人數。

部分大小

選用

食物數量。例如: 8-piece of nuggets

準備方法

選用

可準備食品的特定方式。

美食

選用 (建議)

食品的特定料理。

辣味

選用

食品的辣度,例如 none mildmediumhot

過敏原

選用 (建議)

食品中的食物過敏原,例如 dairyeggfishpeanutshellfishsoytree nutwheat

飲食

選用 (建議)

食品的飲食限制,例如 halalkosherorganicveganvegetarian,以及 gluten free

選項

選用

食物選項類型,例如 chicken 粉泰文對 veggie Pad 泰文的比較。

食物品相片

選用

特定食物項目的相片。

上傳或更換菜單

並非所有地點都能夠上傳菜單。

若要判斷某地點的適用資格,請致電 locations.get敬上 查看 Metadata。 如果將 canHaveFoodMenus 設為 true,就符合上傳資格了 餐點菜單。

如果你的所在地區符合資格,請對以下位置進行 PATCH 呼叫: accounts.locations.updateFoodMenus

以下是包含所有選填欄位的要求範例:

PATCH
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/foodMenus

{
   "menus": [
       {
           "cuisines": [
                "AMERICAN"
            ],
           "labels": [
               {
                   "displayName": "Menu",
                   "description": "Main Menu of my Restaurant",
                   "languageCode": "en"
               }
           ],
           "sections": [
               {
                   "labels": {
                       "displayName": "Main Dishes",
                       "languageCode": "en"
                   },
                   "items": [
                       {
                           "labels": {
                               "displayName": "Dish1",
                               "description": "Dish1 - our original dish!",
                               "languageCode": "en"
                           },
                           "attributes": {
                               "price": {
                                   "currencyCode": "USD",
                                   "units": 20
                               },
                               "dietaryRestriction": "ORGANIC",
                               "nutritionFacts": {
                                   "calories": {
                                       "lowerAmount": 400,
                                       "upperAmount": 500,
                                       "unit": "CALORIE"
                                   },
                                   "totalFat": {
                                       "lowerAmount": 95,
                                       "upperAmount": 110,
                                       "unit": "GRAM"
                                   },
                                   "cholesterol": {
                                       "lowerAmount": 100,
                                       "upperAmount": 120,
                                       "unit": "MILLIGRAM"
                                   },
                                   "sodium": {
                                       "lowerAmount": 30,
                                       "upperAmount": 45,
                                       "unit": "MILLIGRAM"
                                   },
                                   "totalCarbohydrate": {
                                       "lowerAmount": 78,
                                       "upperAmount": 92,
                                       "unit": "MILLIGRAM"
                                   },
                                   "protein": {
                                       "lowerAmount": 25,
                                       "upperAmount": 35,
                                       "unit":"MILLIGRAM"
                                   }
                               },
                               "ingredients": [
                                   {
                                       "labels": [
                                           {
                                               "displayName": "Ingredient 1",
                                               "description": "Description for ingredient 1",
                                               "languageCode": "en"
                                           },
                                           {
                                               "displayName": "Ingredient 2",
                                               "languageCode": "en"
                                           }
                                       ]
                                   }
                               ],
                               "servesNumPeople": 1,
                               "preparationMethods": [
                                   "BAKED",
                                   "BOILED",
                                   "FRIED"
                               ],
                               "portionSize": {
                                   "quantity": 2,
                                   "unit": {
                                       "displayName": "Pieces",
                                       "languageCode": "en"
                                   }
                               },
                               "mediaKeys": [
                                   "AF1QipP_VOlJzXs2aOJ31234565cb2KPrvN"
                               ]
                           },
                           "options": [
                               {
                                   "labels":
                                       {
                                           "displayName": "Dish1 - spicy",
                                           "description": "Dish1 - a spicy version of our dish!",
                                           "languageCode": "en"
                                       },
                                   "attributes": {
                                       "price": {
                                           "currencyCode": "USD",
                                           "units": 20
                                       }
                                   }
                               },
                               {
                                   "labels":
                                       {
                                           "displayName": "Dish1 - mild",
                                           "description": "Dish1 - a mild spiciness version of our dish!",
                                           "languageCode": "en"
                                       },
                                   "attributes": {
                                       "price": {
                                           "currencyCode": "USD",
                                           "units": 20
                                       }
                                   }
                               }
                           ]
                       }
                   ]
               },
               {
                   "labels": {
                       "displayName": "Desserts",
                       "languageCode": "en"
                   },
                   "items": [
                       {
                           "labels": {
                               "displayName": "Ice Cream",
                               "description": "2 scoops of delicious ice cream!",
                               "languageCode": "en"
                           },
                           "attributes": {
                               "price": {
                                   "currencyCode": "USD",
                                   "units": 20
                               }
                           }
                       }
                   ]
               }
           ]
       }
   ]
}

為相片與食物項目建立關聯

如要將相片與食物項目建立關聯,您必須先 將相片上傳到 商家檔案的地點。

如要擷取相片,請呼叫 accounts.locations.media.list。 以下是要求範例:

GET
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/media/

回應包含商店資訊中每張圖片的 MediaKey,如 範例:

{
 "mediaItems": [
   {
     "name": "accounts/{accountId}/locations/{locationId}/media/{mediaKey}",
     "mediaFormat": "PHOTO",
     "locationAssociation": {
       "category": "FOOD_AND_MENU"
     },
 …
}

如要將相片與美食項目建立關聯,請取得相片的 mediaKey,並提供 加到 FoodMenuItemAttributes 物件中您可以提供多個 mediaKeys。 若需更多資訊,請參閲 上傳或更換菜單