Skip to main content

Solicitar actualización de PIN

Endpoint: POST /auth/pin/update/request


Permite solicitar la actualización del PIN de seguridad mediante un flujo de dos pasos. Este endpoint verifica el PIN actual y genera un token de validación que será usado en el siguiente paso.


🔐 Requiere autenticación JWT

Debes enviar un token JWT válido en el header:

Authorization: Bearer <accessToken>

📝 Cuerpo de la solicitud

{
"currentPin": "123456"
}
  • currentPin: PIN actual de exactamente 6 dígitos numéricos

📋 Respuestas

✅ 200 OK

  • Usuario sin 2FA configurado

    {
    "code": 1010,
    "message": "PIN update request processed. Use the validation token to confirm.",
    "data": {
    "validationToken": "uuid-validation-token",
    "requires2FA": false,
    "message": "PIN update request processed. Use the validation token to confirm."
    }
    }
  • Usuario con 2FA configurado

    {
    "code": 1010,
    "message": "PIN update request processed. 2FA code required for confirmation.",
    "data": {
    "validationToken": "uuid-validation-token",
    "requires2FA": true,
    "message": "PIN update request processed. 2FA code required for confirmation."
    }
    }

❌ 400 Bad Request

  • PIN actual incorrecto

    {
    "code": 4007,
    "message": "Current PIN is incorrect"
    }
  • PIN no configurado

    {
    "code": 4006,
    "message": "PIN not configured for this user"
    }
  • Formato de PIN inválido

    {
    "code": 4006,
    "message": "PIN must be exactly 6 digits"
    }

❌ 401 Unauthorized

  • Sin token válido

    {
    "statusCode": 401,
    "message": "Unauthorized"
    }

🔄 Flujo de actualización

  1. Solicitud de actualización: Llamar a este endpoint con el PIN actual
  2. Obtener token de validación: Recibir el validationToken y verificar si requiere 2FA
  3. Confirmar actualización: Usar el token en /auth/pin/update para completar el proceso

📝 Notas

  • El validationToken tiene una duración de 10 minutos
  • Si el usuario tiene 2FA habilitado, será requerido en el siguiente paso
  • Este flujo de dos pasos proporciona mayor seguridad que la actualización directa
  • El PIN actual debe coincidir exactamente con el almacenado

Siguiente paso: Usar el validationToken recibido en /auth/pin/update para completar la actualización del PIN.