Skip to main content

Activar/Desactivar sistema PIN

Endpoint: POST /auth/pin/toggle


Permite activar o desactivar el sistema PIN de seguridad para el usuario autenticado. Requiere verificación del PIN actual para confirmar la operación.


🔐 Requiere autenticación JWT

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

Authorization: Bearer <accessToken>

📝 Cuerpo de la solicitud

{
"active": false,
"pin": "123456"
}

Parámetros:

  • active: true para activar, false para desactivar el sistema PIN
  • pin: PIN actual para verificar la autorización

📋 Respuestas

✅ 200 OK

  • PIN desactivado correctamente

    {
    "code": 1007,
    "message": "PIN disabled successfully",
    "data": {
    "pinActive": false,
    "updatedAt": "2025-01-20T14:45:00.000Z"
    }
    }
  • PIN activado correctamente

    {
    "code": 1006,
    "message": "PIN enabled successfully",
    "data": {
    "pinActive": true,
    "updatedAt": "2025-01-20T14:45:00.000Z"
    }
    }

❌ 400 Bad Request

  • PIN incorrecto

    {
    "code": 4007,
    "message": "Invalid PIN"
    }
  • PIN no configurado

    {
    "code": 4006,
    "message": "PIN not configured for this user"
    }
  • Faltan campos requeridos

    {
    "message": "Active status is required."
    }
    {
    "message": "PIN is required for verification."
    }

❌ 401 Unauthorized

  • Sin token válido

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

🔄 Comportamiento del sistema

Al desactivar el PIN:

  • Se revocan todas las sesiones PIN activas del usuario
  • Los endpoints protegidos dejarán de requerir verificación PIN
  • El PIN configurado se mantiene pero se marca como inactivo
  • El usuario puede reactivarlo en cualquier momento

Al activar el PIN:

  • Se requiere verificación PIN inmediata para acceder a operaciones sensibles
  • Se reactiva la protección en todos los endpoints configurados
  • Las sesiones PIN anteriores siguen revocadas

📝 Notas

  • El PIN debe estar previamente configurado usando /auth/pin/configure
  • La desactivación requiere verificación del PIN como medida de seguridad
  • Desactivar el PIN no lo elimina, solo lo marca como inactivo
  • El estado se puede consultar en cualquier momento con /auth/pin/status

⚡ Efectos inmediatos

  • Desactivación: Los endpoints protegidos serán accesibles sin verificación PIN
  • Activación: Los endpoints protegidos requerirán nueva verificación PIN
  • Sesiones: Todas las sesiones PIN activas se revocan al cambiar el estado

Requisito: El PIN debe estar configurado previamente antes de poder usar este endpoint. Usa /auth/pin/configure si es necesario.