Saltar al contenido principal
GET
/
menus
Listar menús
curl --request GET \
  --url https://api.example.com/menus
{
  "data": [
    {
      "id": "almuerzo-delivery",
      "uid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "organization_id": "f1e2d3c4-b5a6-7890-fedc-ba0987654321",
      "merchant_id": "c1d2e3f4-a5b6-7890-cdef-123456789abc",
      "store_id": "centro",
      "store_uid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "channel_id": "app",
      "channel_uid": "c3d4e5f6-a7b8-9012-cdef-123456789012",
      "fulfillment_id": "delivery",
      "fulfillment_uid": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
      "name": "Menú almuerzo delivery",
      "description": "Ítems de almuerzo entre semana para delivery en app",
      "schedules": [
        {
          "monday": { "start_time": "11:00:00", "end_time": "15:00:00" },
          "tuesday": { "start_time": "11:00:00", "end_time": "15:00:00" },
          "wednesday": { "start_time": "11:00:00", "end_time": "15:00:00" },
          "thursday": { "start_time": "11:00:00", "end_time": "15:00:00" },
          "friday": { "start_time": "11:00:00", "end_time": "15:00:00" }
        }
      ],
      "products": [],
      "categories": [],
      "modifier_groups": [],
      "cms_template_id": null,
      "cms": null,
      "overrides": [],
      "status": "ACTIVE"
    }
  ]
}
Devuelve todos los menús configurados para el comercio autenticado. Usa este endpoint para mapear menús de Fire spark con versiones de catálogo en tu POS o RMS y para inspeccionar cómo cada menú está acotado a una tienda, canal y tipo de fulfillment.
Requiere un access token con el scope menus:read. Consulta Authorize para obtener un token.

Headers

HeaderRequeridoDescripción
x-brand-idNoFiltra menús por marca. Identificador externo de marca — solo alfanuméricos, _ y -. 1–64 caracteres. Si se omite, se devuelven todos los menús del comercio.

Request

curl "https://firespark.vercel.app/api/integrations/v1/menus" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "x-brand-id: 0001"

Response

La respuesta envuelve un arreglo de objetos menú en data. Cada menú está acotado a una combinación de tienda, canal y fulfillment e incluye la estructura del catálogo compuesto, horario semanal y overrides programados.
{
  "data": [
    {
      "id": "almuerzo-delivery",
      "uid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "organization_id": "f1e2d3c4-b5a6-7890-fedc-ba0987654321",
      "merchant_id": "c1d2e3f4-a5b6-7890-cdef-123456789abc",
      "store_id": "centro",
      "store_uid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "channel_id": "app",
      "channel_uid": "c3d4e5f6-a7b8-9012-cdef-123456789012",
      "fulfillment_id": "delivery",
      "fulfillment_uid": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
      "name": "Menú almuerzo delivery",
      "description": "Ítems de almuerzo entre semana para delivery en app",
      "schedules": [
        {
          "monday": { "start_time": "11:00:00", "end_time": "15:00:00" },
          "tuesday": { "start_time": "11:00:00", "end_time": "15:00:00" },
          "wednesday": { "start_time": "11:00:00", "end_time": "15:00:00" },
          "thursday": { "start_time": "11:00:00", "end_time": "15:00:00" },
          "friday": { "start_time": "11:00:00", "end_time": "15:00:00" }
        }
      ],
      "products": [],
      "categories": [],
      "modifier_groups": [],
      "cms_template_id": null,
      "cms": null,
      "overrides": [],
      "status": "ACTIVE"
    }
  ]
}

Objeto menú

CampoTipoDescripción
idstringIdentificador externo del menú. Solo alfanuméricos, _ y -. 1–64 caracteres. Único por comercio.
uidstring (UUID)Identificador interno de Fire spark.
organization_idstring (UUID)Organización propietaria del comercio.
merchant_idstring (UUID)Comercio al que pertenece el menú.
store_idstringIdentificador externo de la tienda a la que aplica este menú.
store_uidstring (UUID)Identificador de tienda en Fire spark.
channel_idstringIdentificador externo del canal al que aplica este menú.
channel_uidstring (UUID)Identificador de canal en Fire spark.
fulfillment_idstringIdentificador externo de fulfillment al que aplica este menú.
fulfillment_uidstring (UUID)Identificador de fulfillment en Fire spark.
namestringNombre visible. 1–100 caracteres.
descriptionstringDescripción opcional del menú. Hasta 500 caracteres. null si se omite.
schedulesarray | nullMapas de horario semanal. null cuando no hay restricción de horarios.
productsarrayProductos en este menú compuesto. El esquema está en evolución — consulta Actualizar producto.
categoriesarrayCategorías en este menú compuesto. Esquema en evolución.
modifier_groupsarrayGrupos de modificadores en este menú compuesto. Esquema en evolución.
cms_template_idstring (UUID)Plantilla CMS vinculada a este menú. null si no hay plantilla asignada.
cmsobjectSolo lectura. null cuando cms_template_id es null. Si está asignada, la plantilla CMS resuelta.
overridesarrayCambios programados del menú.
statusstringACTIVE o INACTIVE.
Arreglo de mapas de horario semanal, o null cuando no hay restricción de horarios. Cada mapa se indexa por día (monday a sunday). Incluye solo los días en que el menú está activo. Cada día:
CampoTipoDescripción
start_timestringHora ISO (por ejemplo 11:00:00).
end_timestringHora ISO (por ejemplo 15:00:00).
Cambios programados que entran en vigor en una fecha futura. Cada override contiene:
CampoTipoDescripción
start_datestringFecha y hora ISO 8601 en que el override se activa.
changesobjectConfiguración parcial del menú. Incluye name, description, schedules (null cuando no hay restricción de horarios), products, categories, modifier_groups y cms_template_id.

Respuestas de error

EstadoDescripción
401Access token ausente o inválido.
403El token no incluye el scope menus:read.