Documentación pública
API Restaurante — Cuchara para Pajaros
API REST compartida por el panel de meseros, futuras apps web y móviles. JSON UTF-8.
Base URL
https://panel.cucharaparapajaros.com/apis/api.php/
Autenticación
- Tipo
- Bearer JWT (HS256)
- Header
Authorization: Bearer {token}- Login
- POST /login con JSON { "usuario", "contrasena" } — devuelve token y datos del usuario.
- Expiración
- El token expira en 7 días.
- Rutas públicas
- Las rutas bajo /public/ no requieren token.
curl -X POST "https://panel.cucharaparapajaros.com/apis/api.php/login"
-H "Content-Type: application/json"
-d '{"usuario":"admin@correo.com","contrasena":"tu_clave"}'
Convenciones
- Métodos: GET para consultas, POST para crear/actualizar/eliminar (no hay PUT/DELETE).
- Cuerpo: Enviar JSON en POST salvo descarga de PDF/XML.
- Respuesta: JSON con success, message y datos según endpoint. Errores: 400, 401, 403, 404, 409, 500.
- CORS: Access-Control-Allow-Origin: * — usable desde web/app externa.
- Estados: Muchos recursos usan estado A (activo), I (inactivo) o X (eliminado lógico). Inactivo oculta en pedidos pero conserva relaciones (ej. complementos vinculados a productos).
- Totales de línea: total_linea = (precio_unitario + suma de complementos[].precio) × cantidad − descuento + tarrinas. Al crear/actualizar, si complementos traen opcion_id el API completa precio desde el catálogo (no confía en precio 0 del cliente). Al recalcular (crear, editar, cobrar) también repara precios de complemento en 0 cuando el catálogo tiene valor > 0.