Endpoints / Usuarios
Actualizar estado de usuario
Actualiza el estado de un usuario de la empresa autenticada.
/users/:id/statusCaso de Uso
Se usa cuando se necesita activar, inactivar o eliminar lógicamente a un usuario de la misma empresa. Al usarlo, el usuario obtiene una confirmación de que el estado fue actualizado correctamente.
Autenticación
Requiere token JWT en el header `Authorization: Bearer <token>`.
Parámetros de ruta
idstringobligatorioIdentificador del usuario al que se le actualizará el estado.
Body
usestadostringobligatorioNuevo estado del usuario. Valores permitidos: activo, inactivo o eliminado.
Reglas de negocio
El usuario autenticado debe pertenecer a una empresa activa.
El usuario autenticado debe estar activo.
Solo se permite actualizar usuarios de la misma empresa del usuario autenticado.
El usuario objetivo debe existir dentro de la empresa autenticada.
Los estados permitidos son activo, inactivo y eliminado.
Si el usuario objetivo ya está eliminado, no se permite cambiar su estado.
El endpoint solo cambia el estado y no devuelve los datos actualizados del usuario.
Errores esperados
No se envió un identificador de usuario válido en la ruta.
No se envió un token JWT válido o el token no fue aceptado.
No existe un usuario con el id indicado dentro de la empresa autenticada.
No se envió el campo usestado en el body.
El valor enviado en usestado no corresponde a un estado permitido.
No se encontró la empresa asociada al usuario autenticado.
La empresa del usuario autenticado no está en estado activo.
No se encontró el usuario autenticado en la empresa.
El usuario autenticado no pertenece a la empresa asociada al token.
El usuario autenticado intenta operar sobre una empresa diferente.
El rol del usuario autenticado no está permitido para acceder al módulo de usuarios.
El usuario autenticado no está en estado activo.
El usuario objetivo ya está eliminado y no puede volver a modificarse.
Ocurrió un error interno al guardar el nuevo estado.
Notas de uso
Envía el id del usuario en la ruta, no en el body.
Envía el body en formato JSON con el header Content-Type: application/json.
Usa únicamente los valores activo, inactivo o eliminado para usestado.
Usa eliminado para una baja lógica del usuario.
Después de una actualización exitosa, consulta el usuario o la lista de usuarios si necesitas ver el estado actualizado.