Cuando agregas menús de comida a la ficha, los clientes conocen las opciones del menú de tu restaurante y pueden obtener información adicional sobre los elementos del menú.
Para actualizar los menús de comida de una ficha, primero llama a accounts.locations.getFoodMenus
.
La siguiente es una solicitud de ejemplo:
GET
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/foodMenus
La respuesta contiene una representación JSON del objeto FoodMenus
actual de la ficha. Modifica el objeto FoodMenus
según sea necesario y llama a accounts.locations.updateFoodMenus
.
Para obtener más información, consulta Cómo subir o reemplazar menús de alimentos.
Puedes usar la API de Google My Business para actualizar los siguientes campos:
Campos | |
---|---|
Nombre | Obligatorio Nombre del alimento, como |
Precio | Obligatorio Es el precio del alimento. |
Moneda del precio | Obligatorio Es la moneda del precio del artículo de comida, como |
Descripción del artículo | Opcional Breve descripción del alimento. |
Secciones del menú | Opcional Grupos lógicos de alimentos, como |
Nutrición | Opcional (recomendado) Información nutricional, como |
Cantidad de personas que se publicarán | Opcional La cantidad de personas que puede servir el alimento. |
Tamaño de la porción | Opcional Cantidad del alimento. Por ejemplo, |
Métodos de preparación | Opcional Son los métodos específicos con los que se puede preparar el alimento. |
Gastronomía | Opcional (recomendado) Indica la cocina específica del producto. |
Picante | Opcional El picante del producto, como |
Alérgeno | Opcional (recomendado) Alérgenos alimenticios en un alimento, como |
Preferencias alimentarias | Opcional (recomendado) Restricción alimentaria del alimento, como |
Opciones | Opcional El tipo de opción de comida, como |
Foto del alimento | Opcional Foto del alimento específico. |
Cargar o reemplazar menús de alimentos
No todas las ubicaciones son aptas para subir menús de comida.
Para determinar la elegibilidad de una ubicación, llama a locations.get
para verificar la Metadata
.
Si canHaveFoodMenus
se configura como true
, cumples con los requisitos para subir menús de comida.
Si tu ubicación es apta, realiza una llamada PATCH
a accounts.locations.updateFoodMenus
.
La siguiente es una solicitud de ejemplo que incluye todos los campos opcionales:
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
}
}
}
]
}
]
}
]
}
Asocia fotos con un artículo de comida
Para asociar una foto con un artículo de comida, primero debes subir la foto a la ubicación de tu Perfil de Negocio.
Para recuperar las fotos, llama a accounts.locations.media.list
.
La siguiente es una solicitud de ejemplo:
GET
https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/media/
La respuesta contiene el MediaKey
de cada imagen en la ficha, como se muestra en el siguiente ejemplo:
{
"mediaItems": [
{
"name": "accounts/{accountId}/locations/{locationId}/media/{mediaKey}",
"mediaFormat": "PHOTO",
"locationAssociation": {
"category": "FOOD_AND_MENU"
},
…
}
Para asociar una foto con un plato de comida, obtén el mediaKey
de la foto y proporciónalo en el objeto FoodMenuItemAttributes
. Puedes proporcionar varios mediaKeys
.
Para obtener más información, consulta Cómo subir o reemplazar menús de alimentos.