Registrar número telefónico
Registra un número telefónico y envía un código SMS de verificación. La respuesta incluye un sessionId que se utiliza en el paso de verificación.
📌 Registro y envío de SMS
Este endpoint genera un código SMS de 6 dígitos y devuelve un sessionId para completar la verificación en el Paso 2.
POST
/auth/phone/registerEnvía un SMS con un código de verificación y retorna sessionId
📋 Parámetros
phonestringrequeridoNúmero en formato internacional (solo dígitos, sin el símbolo +)
📤 Respuesta
{
"event": {
"code": 1010,
"message": "SMS sent successfully"
},
"data": {
"sessionId": "phone-session-uuid"
}
}Requiere autenticación
JWT requerido
Debes enviar un JWT válido:
Authorization: Bearer <accessToken>
Validación de entrada
Formato de número telefónico
Formato requerido:
- Solo dígitos (
0-9) - Longitud: 10 a 15 dígitos
- Sin
+, espacios, guiones ni paréntesis
Ejemplos válidos:
54351339126912125551234447911123456
Request Body
{
"phone": "543513391269"
}
Respuestas
✅ Éxito (1010)
SMS enviado
{
"event": {
"code": 1010,
"message": "SMS sent successfully"
},
"data": {
"sessionId": "phone-session-uuid"
}
}
Notas:
- Guarda
sessionIdpara el Paso 2 (/auth/phone/verify). - El código SMS es de 6 dígitos y es válido por 5 minutos.
❌ Errores de validación (400)
Datos faltantes / formato inválido (4006)
Caso 1: phone faltante
{
"code": 4006,
"message": "Missing or invalid data"
}
Caso 2: formato inválido
{
"code": 4006,
"message": "Invalid phone number format"
}
❌ No autorizado (401)
Unauthorized
{
"statusCode": 401,
"message": "Unauthorized"
}
❌ Error del servidor (500)
Error enviando SMS
{
"statusCode": 500,
"message": "Failed to send verification SMS"
}
En algunos casos el mensaje puede indicar un fallo de autenticación del proveedor SMS.
Ejemplo (JavaScript)
async function registerPhone(accessToken, phone) {
const res = await fetch('https://api.swapbits.co/auth/phone/register', {
method: 'POST',
headers: {
Authorization: `Bearer ${accessToken}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ phone }),
});
const data = await res.json();
if (res.ok && data?.event?.code === 1010) {
return data.data.sessionId;
}
throw new Error(data?.message || data?.event?.message || 'Error registering phone');
}
Enlaces relacionados
- Verificar número (Paso 2) - POST /auth/phone/verify
- Login - POST /auth/login