Endpoints / Usuarios

PATCH

Actualizar contraseña de usuario

Actualiza la contraseña de un usuario de la empresa autenticada sin devolver la contraseña ni el hash generado.

PATCH/users/:id/password

Caso de Uso

Se usa cuando un usuario con rol jefe necesita cambiar o restablecer la contraseña de otro usuario de su misma empresa. Al usarlo, el usuario obtiene una confirmación de que la contraseña fue actualizada correctamente.

Autenticación

Requiere token JWT en el header `Authorization: Bearer <token>`.

Parámetros de ruta

idstringobligatorio

Identificador del usuario al que se le actualizará la contraseña.

Body

uspasswordstringobligatorio

Nueva contraseña del usuario; debe tener al menos 8 caracteres.

Reglas de negocio

1

Solo un usuario autenticado con rol jefe puede actualizar contraseñas.

2

El usuario autenticado debe pertenecer a una empresa activa.

3

El usuario autenticado debe estar activo.

4

El usuario objetivo debe existir en la misma empresa del usuario autenticado.

5

No se permite actualizar la contraseña de usuarios de otra empresa.

6

La contraseña es obligatoria.

7

La contraseña debe tener al menos 8 caracteres.

8

La contraseña se cifra antes de guardarse.

9

La respuesta no incluye la contraseña ni el hash generado.

Errores esperados

400El id de usuario es requerido

No se envió un identificador de usuario válido en la ruta.

401No autorizado

No se envió un token JWT válido o el token no fue aceptado.

404Usuario no encontrado

No existe un usuario con el id indicado dentro de la empresa autenticada.

500La contraseña es requerida

No se envió el campo uspassword en el body.

500La contraseña debe tener al menos 8 caracteres

La contraseña enviada no cumple con la longitud mínima requerida.

500El código de empresa no es inválido

No se encontró la empresa asociada al usuario autenticado.

500La empresa no está activa

La empresa del usuario autenticado no está en estado activo.

500El usuario no existe

No se encontró el usuario autenticado en la empresa.

500El usuario no pertenece a la empresa

El usuario autenticado no pertenece a la empresa asociada al token.

500El usuario no puede acceder a otra empresa

El usuario autenticado intenta operar sobre una empresa diferente.

500El usuario no es jefe, empleado o administrador

El rol del usuario autenticado no está permitido para acceder al módulo de usuarios.

500El usuario no está activo

El usuario autenticado no está en estado activo.

500El usuario no es jefe

El usuario autenticado no tiene el rol requerido para actualizar contraseñas.

500Error updating user by id

Ocurrió un error interno al guardar la nueva contraseña.

Notas de uso

1

Envía el id del usuario en la ruta, no en el body.

2

Envía el body en formato JSON con el header Content-Type: application/json.

3

Usa una contraseña de al menos 8 caracteres.

4

Guarda el token JWT de forma segura y envíalo en cada solicitud protegida.

5

La respuesta confirma la actualización, pero no devuelve información sensible.