Contactar al soporte técnico
Endpoint: POST /users/contact-support
Permite a un usuario contactar al equipo de soporte técnico.
Valida los campos del formulario y verifica un token JWT firmado con una clave secreta personalizada (CONTACT_KEY).
Actualmente, se previene el spam limitando los envíos a uno cada 10 minutos por dirección de correo.
📝 Cuerpo de la solicitud (application/json)
{
"firstname": "Juan",
"lastname": "Pérez",
"email": "juan@example.com",
"Message": "Necesito ayuda con mi cuenta.",
"token": "<JWT firmado con CONTACT_KEY>"
}
🔐 Autenticación
- Tipo: JWT personalizado
- Validación: El email dentro del token debe coincidir con el campo
emaildel body. - Clave secreta:
process.env.CONTACT_KEY
✅ Validaciones
- Todos los campos (
firstname,email,Message,token) son obligatorios. - Rechaza solicitudes repetidas desde el mismo email dentro de los últimos 10 minutos.
📋 Respuestas
- 200 OK – Mensaje enviado correctamente.
- 400 Bad Request – Faltan campos requeridos o se envió el mensaje recientemente.
- 401 Unauthorized – Token inválido o el
emailno coincide con el token.
Nota:
Actualmente se utiliza un token JWT para validar la autenticidad de la solicitud. En el futuro, se migrará a un sistema basado en captcha para mejorar la experiencia del usuario y la protección contra spam.