fulfillment_id, store_id, channel_id y brand_id para cargar catálogos de esa combinación. Si falta algún parámetro, o si no existe un menú para la combinación, Fire spark usa el menú default del comercio (fulfillment_id, store_id, channel_id y brand_id en __ANY__).
Cuando store_id, channel_id y fulfillment_id vienen todos informados (y no son __ANY__), Fire spark comprueba que esas entidades existan y estén en ACTIVE (y que brand_id esté ACTIVE si se envía). Un scope inactivo o inexistente responde 422 con details.issues[] de { code: "SCOPE_INACTIVE", field }, donde field es store_id, channel_id, fulfillment_id o brand_id.
Cuando varios menús comparten el mismo contexto y sus horarios coinciden con la hora actual, Fire spark los devuelve todos en data. Los menús con schedules: null están siempre disponibles.
Cuando ningún menú está en horario, Fire spark devuelve en data el o los menús cuya próxima ventana de disponibilidad es la más cercana a la hora actual. Si varios menús comparten esa misma hora de inicio, se devuelven todos.
Requiere un access token de Fire spark obtenido mediante intercambio de
token.
Parámetros de consulta
Solicitud
Streaming
Omitestreaming (o envía false) para conservar el JSON único de abajo. Con streaming=true, Fire spark responde Content-Type: application/x-ndjson. Cada línea es { "data": Menu[] } con un menú. Haz upsert por id (gana la línea más reciente); no reemplaces la lista.
- Fold del primer menú. Las primeras
category_limitcategorías en orden de display (depth-first, el mismo del nav), cada una con hastaproduct_limitproducts vendibles. Cada uno incluye su árbol de customización (modifier_groups, modifiers anidados ybundled_items) para poder abrir customización de inmediato.recommendationses[]. - Primer menú completo. El primer menú completo del payload sin streaming.
- Menús restantes. Un menú completo por línea, en el orden del catálogo.
Respuesta
La respuesta envuelve un arreglo de menús endata. Solo se devuelven menús ACTIVE. Si al menos un menú está en horario ahora, se incluyen todos los que coinciden. Si no, Fire spark incluye el menú o menús cuya próxima ventana programada comienza antes.
Objeto menú
schedules
schedules
Arreglo de entradas de horario, o
null cuando no hay restricción de horarios. Cada entrada representa un día de la semana:Cada periodo:
products
products
Cada producto en un menú compuesto incluye campos de catálogo más precio y disponibilidad del contexto:
Cada objeto
availability:Cada entrada de
bundled_items:Ejemplo de producto
categories
categories
Cada categoría en un menú compuesto:
Cada entrada en
items:Cada objeto
availability:Ejemplo de categoría
modifier_groups
modifier_groups
Cada grupo de modificadores en un menú compuesto:
Ejemplo de grupo de modificadores
variant_groups
variant_groups
Cada grupo de variantes:
Cada entrada en
variants:Example variant group
pricing
pricing
Precio de producto en un menú compuesto:
Cada entrada de
modifiers agrega: