Requiere un access token con el scope
menus:write. Consulta
Token para obtener un token.Parámetros de ruta
Parámetros de query
Omitir un parámetro de scope no significa “todos”: se resuelve como
__ANY__ y solo encuentra menús cargados con __ANY__ en esa dimensión. Si los menús se cargaron por fulfillment o canal (por ejemplo TAKEAWAY y DINE_IN), envía un update por cada scope; si no hay menú en el scope pedido, la respuesta es 404. Cada menú compuesto se identifica por fulfillment_id + store_id + channel_id + brand_id + menu.id; ver Menu sync.
Body de la solicitud
Misma forma que un producto en el arrayproducts de Upsert menus. El id del producto va en el parámetro de ruta — no lo envíes en el body.
En el update todos los campos son opcionales, incluidos los de pricing y availability. Los campos omitidos conservan su valor actual y no se aplican valores por defecto:
pricingyavailabilityse combinan campo por campo.{ "pricing": { "price": 2.49 } }cambia solo el precio;modifiers,modifier_group_idsy los límites de cantidad no cambian.- Los arrays (
bundled_items,labels,pricing.modifiers, …) se reemplazan completos cuando se envían. - Para borrar
out_of_stock_untilal volver aAVAILABLE, envía"out_of_stock_until": null.
products
products
Cada producto en el cuerpo de la solicitud:
Cada objeto
availability:Cada entrada de
bundled_items:Ejemplo de producto
pricing
pricing
Precio de producto en el cuerpo de la solicitud:
Cada objeto en
modifiers configura un grupo de modificadores referenciado en modifier_group_ids. Acepta los mismos campos de precio que el producto padre, más campos específicos del modificador:Ejemplo de entrada en modifiers
Response
Devuelve el producto actualizado endata — la misma forma que un producto en List menus, incluyendo id, name, pricing, availability, bundled_items y metadata.