به روز رسانی منوهای غذا

وقتی «منوهای غذا» را به فهرست خود اضافه می‌کنید، مشتریان از گزینه‌های منوی رستوران شما مطلع می‌شوند و می‌توانند اطلاعات بیشتری در مورد اقلام منو دریافت کنند.

برای به‌روزرسانی منوی غذاهای یک فهرست، ابتدا accounts.locations.getFoodMenus را فراخوانی کنید. در زیر یک نمونه درخواست آمده است:

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

پاسخ شامل یک نمایش JSON از FoodMenus فعلی لیست است. در صورت نیاز، شیء FoodMenus را تغییر دهید و accounts.locations.updateFoodMenus را فراخوانی کنید. برای اطلاعات بیشتر، به Upload or replace Food Menus مراجعه کنید.

می‌توانید از API گوگل مای بیزینس برای به‌روزرسانی فیلدهای زیر استفاده کنید:

فیلدها
نام

مورد نیاز

نام ماده غذایی، مانند Hamburger .

قیمت

مورد نیاز

قیمت ماده غذایی.

قیمت ارز

مورد نیاز

واحد پول قیمت مواد غذایی، مانند US dollar .

شرح کالا

اختیاری

توضیح مختصر در مورد ماده غذایی

بخش‌های منو

اختیاری

گروه‌های منطقی از اقلام غذایی، مانند Breakfast یا Hamburger-Fries combo.

تغذیه

اختیاری (توصیه شده)

اطلاعات تغذیه‌ای، مانند Total Fat=3g .

تعداد افراد برای خدمت رسانی

اختیاری

تعداد افرادی که آن ماده غذایی می‌تواند به آنها سرویس دهد.

اندازه هر وعده

اختیاری

مقدار ماده غذایی. به عنوان مثال، 8-piece of nuggets .

روش‌های آماده‌سازی

اختیاری

روش‌های خاصی که می‌توان ماده غذایی را با آنها تهیه کرد.

آشپزی‌ها

اختیاری (توصیه شده)

دستور پخت خاص آن ماده غذایی.

تندی

اختیاری

میزان تندی غذا، مانند none ، mild ، medium ​​و hot .

آلرژن

اختیاری (توصیه شده)

آلرژن‌های غذایی موجود در مواد غذایی مانند dairy ، egg ، fish ، peanut ، shellfish ، soy ، tree nut و wheat .

رژیم غذایی

اختیاری (توصیه شده)

محدودیت غذایی در مورد مواد غذایی، مانند halal ، kosher ، organic ، vegan ، vegetarian و gluten free .

گزینه‌ها

اختیاری

نوع گزینه غذا، مانند پد تای chicken در مقابل پد تای veggie .

عکس مواد غذایی

اختیاری

عکس از ماده غذایی خاص.

منوی غذا را آپلود یا جایگزین کنید

همه مکان‌ها واجد شرایط آپلود منوی غذا نیستند.

برای تعیین واجد شرایط بودن یک مکان، برای بررسی Metadata locations.get را فراخوانی کنید. اگر 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 ارائه دهید. برای اطلاعات بیشتر، به بخش «بارگذاری یا جایگزینی منوهای غذا» مراجعه کنید.