Autenticación de dos factores

Añade un segundo factor en dos llamadas.

Configura en:
Cursor

La autenticación en dos factores añade una segunda prueba además de la contraseña: un código de un solo uso en un canal que controla el usuario. Con Bird Verify, es una llamada de envío en el momento del inicio de sesión y una llamada de verificación cuando el usuario introduce el código: SMS, WhatsApp o correo electrónico hoy, configuración de canal por país y nada que almacenar entre ambas.

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, error } = await bird.verify.verifications.check({
  to:   { phone_number: "+15551234567" },
  code: userInput,
}).safe();
if (error) throw error;

2FA es el flujo de verificación, orientado al inicio de sesión.

Under the hood, 2FA is the same flow the Bird Verify API runs everywhere: create a verification for the user's phone or email when they sign in, then check the code they enter. Because the check is by recipient, your login handler keeps no per-attempt state, and the workspace's routing decides which channel a given user gets. Drop the password in front of it and the same flow becomes passwordless login.

Lo que configuras para 2FA.

Dos llamadas y una configuración.

  1. 01

    Envía al iniciar sesión, verifica al enviar.

    Crea una verificación cuando el usuario se autentica con su primer factor; comprueba el código cuando lo introduce. Esa es toda la integración.

  2. 02

    SMS, WhatsApp o email como factor.

    Usa el canal que ya tienes para el usuario: un número de teléfono por SMS o WhatsApp, un email por email. Voice se está implementando para más opciones.

  3. 03

    One configuration, workspace-wide.

    Routing, code rules, and channel plan live in a single configuration for the whole workspace, already covering login, signup, and high-value actions.

  4. 04

    La fuerza bruta está limitada.

    El bloqueo por intentos y los límites de envío por destinatario vienen integrados, para que un segundo factor no se convierta en una nueva superficie de ataque.

El flujo en el momento del inicio de sesión.

Envía el código una vez que la contraseña es correcta; verifícalo cuando el usuario lo envía. Un código incorrecto es un resultado sobre el que decides, no una excepción que capturar.

two-factor.ts
200
// Send the second factor once the password checks out.
await bird.verify.verifications.create({
  to: { phone_number: user.phone },
}).safe();

const { data, error } = await bird.verify.verifications.check({
  to:   { phone_number: user.phone },
  code: submitted,
}).safe();
if (error) throw error;

if (data.success) grantSession(user);

Autenticación de dos factores, en la misma API que tus otros canales.

Bird Verify es el factor basado en código para tu inicio de sesión y registro: SMS, correo electrónico y WhatsApp ahora, con voz en proceso de lanzamiento.

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