Memperbarui Menu Makanan

Jika Anda menambahkan Menu Makanan ke listingan, pelanggan akan mengetahui pilihan menu restoran Anda dan mereka bisa mendapatkan informasi tambahan tentang item menu.

Untuk memperbarui Menu Makanan di listingan, pertama-tama panggil accounts.locations.getFoodMenus. Berikut adalah contoh permintaan:

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

Responsnya akan berisi representasi JSON dari FoodMenus listingan saat ini. Ubah objek FoodMenus sesuai kebutuhan dan panggil accounts.locations.updateFoodMenus. Untuk mendapatkan informasi lebih lanjut, lihat Mengupload atau mengganti Menu Makanan.

Anda dapat menggunakan Google My Business API untuk memperbarui kolom berikut:

Kolom
Nama

Wajib

Nama item makanan, seperti Hamburger.

Harga

Wajib

Harga item makanan.

Mata uang harga

Wajib

Mata uang harga item makanan, seperti U.S. dollar.

Deskripsi item

Opsional

Deskripsi singkat item makanan.

Bagian menu

Opsional

Grup logis item makanan, seperti Breakfast atau Hamburger-Fries combo.

Gizi

Opsional (direkomendasikan)

Informasi gizi, seperti Total Fat=3g.

Jumlah orang yang dapat menerima sajian

Opsional

Jumlah orang yang dapat disajikan item makanan.

Ukuran porsi

Opsional

Jumlah item makanan. Misalnya, 8-piece of nuggets.

Metode persiapan

Opsional

Metode spesifik yang dapat digunakan untuk mempersiapkan item makanan.

Masakan

Opsional (direkomendasikan)

Masakan spesifik dari item makanan.

Kepedasan

Opsional

Kepedasan item makanan, seperti none, mild, medium, dan hot.

Alergen

Opsional (direkomendasikan)

Alergen makanan dalam item makanan, seperti dairy, egg, fish, peanut, shellfish, soy, tree nut, dan wheat.

Diet

Opsional (direkomendasikan)

Batasan diet untuk item makanan, seperti halal, kosher, organic, vegan, vegetarian, dan gluten free.

Opsi

Opsional

Jenis opsi makanan, seperti chicken Pad Thai vs. veggie Pad Thai.

Foto item makanan

Opsional

Foto item makanan spesifik.

Mengupload atau mengganti Menu Makanan

Tidak semua lokasi memenuhi syarat untuk mengupload Menu Makanan.

Untuk menentukan kelayakan lokasi, panggil locations.get untuk memeriksa Metadata. Jika canHaveFoodMenus ditetapkan ke true, Anda memenuhi syarat untuk mengupload Menu Makanan.

Jika lokasi Anda memenuhi syarat, lakukan panggilan PATCH ke accounts.locations.updateFoodMenus.

Berikut adalah contoh permintaan yang menyertakan semua kolom opsional:

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

Mengaitkan foto dengan item makanan

Untuk mengaitkan foto dengan item makanan, Anda harus mengupload foto ke lokasi Profil Bisnis terlebih dahulu.

Untuk mengambil foto, panggil accounts.locations.media.list. Berikut adalah contoh permintaan:

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

Responsnya akan berisi MediaKey untuk setiap gambar pada listingan, seperti yang ditunjukkan dalam contoh berikut:

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

Untuk mengaitkan foto dengan item makanan, dapatkan mediaKey foto dan berikan pada objek FoodMenuItemAttributes. Anda dapat memberikan beberapa mediaKeys. Untuk mendapatkan informasi lebih lanjut, lihat Mengupload atau mengganti Menu Makanan.