Zaktualizuj menu jedzenia

Gdy dodasz do wizytówki menu posiłków, klienci będą wiedzieli, co oferuje Twoja restauracja, i będą mogli uzyskać dodatkowe informacje o daniach z menu.

Aby zaktualizować menu kulinarne w wizytówce, najpierw zadzwoń pod numer accounts.locations.getFoodMenus. Oto przykładowe żądanie:

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

Odpowiedź zawiera reprezentację w formacie JSON bieżącej wartości FoodMenus na stronie. W razie potrzeby zmodyfikuj obiekt FoodMenus i wywołaj accounts.locations.updateFoodMenus. Więcej informacji znajdziesz w artykule Przesyłanie i zastępowanie menu posiłków.

W tych polach możesz zaktualizować te pola za pomocą interfejsu API Google Moja Firma:

Pola
Nazwa

Wymagany

Nazwa produktu spożywczego, np. Hamburger.

Cena

Wymagany

Cena produktu spożywczego.

Waluta ceny

Wymagany

Waluta ceny produktu spożywczego, np. U.S. dollar.

Opis produktu

Opcjonalny

Krótki opis produktu.

Sekcje menu

Opcjonalny

Logiczne grupy produktów spożywczych, np. Breakfast lub Hamburger-Fries combo.

Odżywianie

Opcjonalny (zalecany)

Informacje o wartościach odżywczych, np. Total Fat=3g.

Liczba osób do obsługi

Opcjonalny

Liczba osób, dla których dany produkt spożywczy może być serwowany.

Wielkość porcji

Opcjonalny

Liczba sztuk produktu. Na przykład: 8-piece of nuggets.

Metody przygotowania

Opcjonalny

konkretne metody przygotowywania danego produktu spożywczego.

Kuchnia regionalna

Opcjonalny (zalecany)

Specjalna kuchnia produktu.

Pikantność

Opcjonalny

Przyprawa produktu żywnościowego, na przykład none, mild, medium i hot.

Alergen

Opcjonalny (zalecany)

Alergeny pokarmowe występujące w produkcie żywnościowym, np. dairy, egg, fish, peanut, shellfish, soy, tree nut i wheat.

Preferencje żywieniowe

Opcjonalny (zalecany)

Ograniczenia żywieniowe związane z produktem spożywczym, np. halal, kosher, organic, vegan, vegetarian i gluten free.

Opcje

Opcjonalny

Typ opcji gastronomicznej, np. chickenPad thai i veggie Pad thai.

Zdjęcie produktu

Opcjonalny

Zdjęcie konkretnego produktu.

Przesyłanie lub zastępowanie menu

Nie we wszystkich lokalizacjach można przesyłać menu posiłków.

Aby sprawdzić, czy lokalizacja się kwalifikuje, wywołaj locations.get i sprawdź Metadata. Jeśli ustawienie canHaveFoodMenus ma wartość true, możesz przesyłać menu jedzenia.

Jeśli Twoja lokalizacja się kwalifikuje, wykonaj wywołanie PATCH pod adresem accounts.locations.updateFoodMenus.

Oto przykładowe żądanie, które zawiera wszystkie pola opcjonalne:

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
                               }
                           }
                       }
                   ]
               }
           ]
       }
   ]
}

Powiąż zdjęcia z produktem spożywczym

Aby powiązać zdjęcie z produktem spożywczym, musisz najpierw przesłać je do lokalizacji w Profilu Firmy.

Aby pobrać zdjęcia, zadzwoń pod numer accounts.locations.media.list. Oto przykładowe żądanie:

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

Odpowiedź zawiera właściwość MediaKey dla każdego obrazu na stronie, tak jak w tym przykładzie:

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

Aby powiązać zdjęcie z jedzeniem, pobierz mediaKey zdjęcia i podaj je w obiekcie FoodMenuItemAttributes. Możesz podać kilka wartości mediaKeys. Więcej informacji znajdziesz w artykule Przesyłanie i zastępowanie menu posiłków.