更新食品菜单

如果您 食品菜单 添加到您的商家信息后,客户就会知道您餐馆的菜单选项, 可获取有关菜单项的更多信息。

要更新商家信息的食品菜单,请先调用 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

商品描述

可选

菜品的简要说明。

菜单部分

可选

菜品的逻辑组,例如 BreakfastHamburger-Fries combo.

营养

可选(推荐)

营养信息,例如 Total Fat=3g

就餐人数

可选

菜品可以接待的人数。

分量大小

可选

菜品的数量。例如 8-piece of nuggets

制备方法

可选

菜品的具体烹饪方法。

特色菜肴

可选(推荐)

菜品的具体菜系。

辣度

可选

菜品的辣度,例如 none mildmediumhot

过敏原

可选(推荐)

菜品中的食物过敏原,例如 dairy eggfishpeanutshellfishsoytree nutwheat

饮食

可选(推荐)

菜品的饮食限制,例如 halalkosherorganicveganvegetariangluten free

选项

可选

食物选项类型,例如 chicken 泰式炒河粉与泰式 veggie 炒河粉。

菜品照片

可选

特定菜品的照片。

上传或更换食品菜单

并非所有营业地点都符合上传食品菜单的条件。

要确定营业地点是否符合条件,请调用 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。 如需了解详情,请参阅 上传或更换食品菜单