Disable user (Admin only)
DELETE/company/users/delete/:id
Deshabilita un usuario estableciendo status=false. El usuario permanece en la base de datos pero no puede iniciar sesión.
Objective
Permitir a administradores deshabilitar usuarios temporalmente sin eliminarlos permanentemente de la base de datos.
Use Cases
- Deshabilitar temporalmente un usuario
- Suspender acceso mientras se investiga un incidente
- Bloquear usuario temporalmente por seguridad
Authentication & Authorization
- Requiere JWT válido (middleware m.isLoged)
- Requiere rol admin o dev (middleware m.isAdmin)
Behavior
- Busca usuario por ID
- Establece user.status = false
- Retorna usuario actualizado
- No elimina el registro de la base de datos
Notes
- Este endpoint solo deshabilita (status=false)
- NO elimina físicamente el registro
- Diferente de DELETE /:id que sí hace soft delete
- El usuario puede ser reactivado cambiando status a true
Comparison
- DELETE /:id: Soft delete completo (deleted=true, deletedAt set)
- DELETE /delete/:id: Solo deshabilita (status=false)
- PUT /disabled/disable/:id: Soft delete con razón adicional
Request
Responses
- 200
- 401
- 403
- 404
Usuario deshabilitado exitosamente
No autorizado (se requiere rol admin o dev)
Prohibido (usuario no es administrador)
Usuario no encontrado