El módulo de empleados permite a los administradores gestionar el personal del restaurante. Todos los endpoints requieren el permisoDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/AbyssDevs/CUSCATLECO/llms.txt
Use this file to discover all available pages before exploring further.
gestionar_usuarios, el cual únicamente está asignado al rol Administrador. Los empleados se crean como usuarios activos en el sistema y se les asigna un rol que determina sus permisos dentro del POS.
POST /api/empleados
Crea un nuevo empleado en el sistema. El correo electrónico debe ser único. La contraseña se almacena cifrada con bcrypt (mínimo 8 caracteres). Al crearse, el empleado queda activo y con el rol especificado. Permiso requerido:gestionar_usuarios
Cuerpo de la solicitud
Nombre completo del empleado (máximo 100 caracteres).
Correo electrónico del empleado. Debe ser único en el sistema. Se usa para iniciar sesión.
Contraseña del empleado en texto plano. Debe tener al menos 8 caracteres. El servidor la cifra antes de almacenarla.
Número de teléfono del empleado (máximo 15 caracteres).
Nombre del rol a asignar al empleado. Valores válidos:
Administrador, Mesero, Cajero, Cocina.Respuesta exitosa — 200
Mensaje de confirmación:
"Empleado creado correctamente".Ejemplo
cURL
Respuesta 200
Errores
| Código | Descripción |
|---|---|
400 | Faltan campos requeridos, la contraseña tiene menos de 8 caracteres, el email ya existe, o el rol especificado no existe en el sistema. |
401 | Sesión no activa. |
403 | Sin permiso gestionar_usuarios. |
GET /api/empleados
Lista todos los empleados activos del sistema. Los empleados eliminados (marcados como inactivos) no aparecen en este listado. Los resultados se ordenan de más reciente a más antiguo. Permiso requerido:gestionar_usuarios
Respuesta exitosa — 200
Retorna un array de objetos empleado.Identificador único del empleado en el sistema.
Nombre completo del empleado.
Correo electrónico del empleado.
Número de teléfono del empleado.
Nombre del rol asignado al empleado.
Fecha en que se creó el empleado, en formato
YYYY-MM-DD.Ejemplo
cURL
Respuesta 200
Errores
| Código | Descripción |
|---|---|
401 | Sesión no activa. |
403 | Sin permiso gestionar_usuarios. |
500 | Error interno al consultar los empleados. |
DELETE /api/empleados/:id
Desactiva a un empleado del sistema. La operación no elimina físicamente el registro; en su lugar, marca el campousuario_activo como false, lo que impide que el empleado pueda iniciar sesión y lo excluye del listado.
Permiso requerido: gestionar_usuarios
Parámetros de ruta
ID del empleado a desactivar.
Respuesta exitosa — 200
Mensaje de confirmación:
"Empleado eliminado correctamente".Ejemplo
cURL
Respuesta 200
Errores
| Código | Descripción |
|---|---|
401 | Sesión no activa. |
403 | Sin permiso gestionar_usuarios. |
500 | Error interno al desactivar el empleado. |
La eliminación es una desactivación lógica. Los pedidos, auditorías y facturas asociadas al empleado conservan su referencia histórica. Si necesitas reactivar un empleado, deberás hacerlo directamente en la base de datos o mediante una funcionalidad administrativa futura.
PUT /api/empleados/:id
Actualiza los datos de un empleado existente. Permite cambiar el nombre, correo, teléfono, rol y opcionalmente la contraseña. Si no se envíapassword, la contraseña actual se conserva sin cambios.
Permiso requerido: gestionar_usuarios
Parámetros de ruta
ID del empleado a editar.
Cuerpo de la solicitud
Nombre completo actualizado del empleado.
Correo electrónico actualizado. Debe ser único si se cambia.
Teléfono actualizado del empleado.
Nuevo rol a asignar. Valores válidos:
Administrador, Mesero, Cajero, Cocina.Nueva contraseña en texto plano. Si se omite, la contraseña actual no se modifica. Si se envía, debe tener al menos 8 caracteres.
Respuesta exitosa — 200
Mensaje de confirmación:
"Empleado actualizado correctamente".Ejemplo
cURL
Respuesta 200
Ejemplo con cambio de contraseña
cURL
Errores
| Código | Descripción |
|---|---|
401 | Sesión no activa. |
403 | Sin permiso gestionar_usuarios. |
500 | Error interno al actualizar el empleado o el rol especificado no existe. |