Identidad
Resuelve tu cuenta, lista vendors, establecimientos y proveedores.
Catálogo: Ítems
Crear, listar, actualizar, archivar y sincronizar ítems de inventario.
Catálogo: Sync masivo
Sincronizar unidades, proveedores y asignaciones de clasificación en masa.
Recetas
Administrar recetas de venta, producción y subrecetas.
Operaciones
Registrar recepciones, conteos, mermas, transferencias y producción.
Compras
Gestionar niveles par y obtener cantidades de reorden sugeridas.
Webhooks
Suscribirse a eventos de transacciones de inventario y órdenes de compra.
URL base
/api/v1/public/.
La URL base es proporcionada por Fire al configurar tu integración. Usa
https://stg.boh.api.fire.rest para staging y la URL de producción para operaciones en vivo.Autenticación
Cada solicitud requiere una API key en el headerx-api-key. Las API keys se crean y administran desde la pantalla Cuenta y accesos → API keys del backoffice de BOH, o a través de los endpoints de API Keys.
account.
Scopes de la key
Cada key tiene uno o más scopes que restringen qué endpoints puede llamar. Una key con el scope comodín* puede llamar a todo.
El vendor ID
La mayoría de las rutas incluyen el parámetro de ruta{vendorId}. Un vendor representa una entidad configurada en BOH (una marca de restaurante o unidad operativa). Obtén tu vendor ID desde Listar vendors o el backoffice.
Formato de solicitud y respuesta
- Todos los cuerpos de solicitud usan
Content-Type: application/json. - Todas las respuestas son JSON.
- Los timestamps usan ISO 8601 (
2026-08-07T14:30:00.000Z). - Los montos monetarios usan la moneda de la cuenta (configurada en Configuración de cuenta).
Modelo de escritura asíncrona
La mayoría de las operaciones de escritura (recepciones, conteos, mermas, transferencias, lotes de producción) son asíncronas. La respuesta es inmediata, pero los movimientos de stock se registran en unos segundos. Una escritura exitosa devuelve untracking_id:
GET /api/v1/public/operations/transactions/{trackingId} o GET /api/v1/public/operations/transactions para seguir el estado del procesamiento.
Idempotencia
Envía el mismo stringidempotency_key dos veces; la segunda llamada devuelve la respuesta original con "idempotent": true sin reprocesar. Las claves de idempotencia expiran después de 24 horas.
Errores
Todas las respuestas de error comparten el mismo envelope:Límites de tasa
Límites de tasa predeterminados por scope:
Cuando se supera el límite, la respuesta es
429 e incluye los headers Retry-After y X-RateLimit-*. Los límites pueden sobreescribirse por key a través del soporte de Fire.
external_user_id
Los endpoints que crean o modifican documentos operativos aceptan un string opcionalexternal_user_id en el cuerpo. BOH lo almacena como el actor humano para auditoría. Para CRUD de catálogo es opcional; para documentos operativos se recomienda encarecidamente.
