SMS OTP

En vista previa

Envía un código por SMS. Verifícalo por destinatario.

Configúralo en:
Cursor

La verificación por SMS envía un código de un solo uso a un número de teléfono y confirma que la persona que lo escribe de vuelta tiene acceso a esa línea. Bird genera el código, lo envía, aplica límites por destinatario y lo verifica por destinatario — así que no hay ningún id que almacenar ni endpoint de reenvío que conectar.

verify.ts
200 · pending
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });

// Send the code, then check it by recipient.
await bird.verify.verifications.create({
  to: { phone_number: "+15551234567" },
}).safe();

const { data } = await bird.verify.verifications.check({
  to:   { phone_number: "+15551234567" },
  code: userInput,
}).safe();

SMS OTP es una llamada para enviar y otra para verificar.

SMS es un canal de la familia telefónica en la API de Bird Verify: envía una verificación con un número de teléfono y nosotros mandamos el código a través del remitente SMS compartido de Authifly; verifícalo con ese mismo número. Reenviar la solicitud de creación funciona como reenvío (crear-o-reintentar), y cada código en la sesión sigue siendo válido hasta que se verifica, expira o agota los intentos.

Lo que obtienes en una verificación por SMS.

Incluido en cada envío.

  1. 01

    Dirigido por número de teléfono.

    Pasa un único número de teléfono E.164. Lo normalizamos y lo enviamos por SMS con el remitente asignado a su país.

  2. 02

    Códigos generados en el servidor y hasheados.

    Un código de 6 dígitos por defecto (configurable de 4 a 10), generado con una fuente aleatoria criptográfica y almacenado solo como HMAC. Nunca ves el texto plano.

  3. 03

    El reenvío es la misma llamada.

    Vuelve a enviar la solicitud de creación para reenviar una vez que pase el tiempo de espera de 60 segundos — misma sesión, nuevo código, ambos válidos. Sin endpoint de reenvío separado.

  4. 04

    Límites por destinatario incluidos.

    Un límite de envío por destinatario y una cuota diaria por workspace controlan el volumen de envío y el gasto descontrolado, cada uno con un 429 y Retry-After.

  5. 05

    Alcance que se amplía por país.

    Los SMS se envían hoy con el remitente compartido de Authifly, con entrega donde está registrado, y remitentes dedicados y registrados que amplían el alcance a medida que se incorporan.

Todo el flujo, dos llamadas.

Crear-o-reintentar envía el código al número de teléfono; check lo confirma por ese número. No hay ningún id que enlazar entre las dos — el destinatario es la clave.

sms-otp.ts
200
await bird.verify.verifications.create({
  to: { phone_number: "+15551234567" },
}).safe();

const { data } = await bird.verify.verifications.check({
  to:   { phone_number: "+15551234567" },
  code: userInput,
}).safe();

// data.result is true or false; data.reason elaborates ("expired", "already_verified", …)

Preguntas frecuentes sobre SMS OTP

¿Qué es SMS OTP?+
Un código de un solo uso por SMS es un código corto enviado por mensaje de texto a un número de teléfono que el usuario escribe de vuelta para demostrar que controla ese número. Es el segundo factor y la comprobación de registro más utilizada porque casi todos los teléfonos reciben SMS.
¿Necesito almacenar un id de verificación para comprobar el código?+
No. Bird verifica por destinatario: tú envías el número de teléfono y el código, y nosotros resolvemos la sesión activa a partir del par configuración-número. El id de configuración es una constante; no se almacena nada por verificación.
¿A qué países puedo llegar?+
Los SMS se envían con el remitente compartido de Authifly, que tiene entrega en los países donde está registrado. Las reglas de Sender-ID varían según el país, y los remitentes registrados y dedicados amplían el alcance con el tiempo.
¿Cómo se detiene el SMS pumping y los ataques de fuerza bruta?+
Los límites de envío por destinatario, una cuota diaria por workspace y un límite de intentos por verificación ya están incluidos. Señales de fraude más avanzadas y protección contra SMS pumping están en camino.
¿De quién ven mis usuarios el código?+
Authifly, la marca de verificación de Bird. Es la identidad en cada código que reciben tus usuarios: el email llega desde otp@verify.authifly.com o tu propio dominio verificado, y los SMS y WhatsApp llevan la marca Authifly. authifly.com es una página pública que asegura a los destinatarios que Authifly envía códigos legítimos de un solo uso en nombre de una empresa. Bird es la plataforma sobre la que construyes; Authifly es lo que ve el destinatario.

La API de verificación sin nada que almacenar.

SMS es un canal de Bird Verify: email y WhatsApp se incluyen de serie, y la voz está en camino — todo en los mismos dos endpoints.

Empieza con un canal.
Añade los demás cuando estés listo.

Una clave API de prueba es tuya de inmediato. El acceso a producción se desbloquea cuando añades un método de pago y verificas un remitente.

¿Usas Claude Code, Cursor o Codex? Copia un prompt de configuración y tu agente instalará el Bird CLI y las habilidades por ti. Elige el tuyo:

Cursor