SMS OTP

Code per SMS senden. Prüfung nach Empfänger.

Einrichtung in:
Cursor

Die SMS-Verifizierung sendet einen Einmalcode an eine Telefonnummer und bestätigt, dass die Person, die ihn eingibt, tatsächlich Zugriff auf diese Nummer hat. Bird generiert den Code, versendet ihn, setzt Limits pro Empfänger durch und prüft ihn anhand des Empfängers – so müssen Sie keine ID speichern und keinen Resend-Endpunkt anbinden.

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;

SMS OTP ist ein Aufruf zum Senden und einer zum Prüfen.

SMS ist ein Phone-Family-Kanal auf der Bird Verify API: Senden Sie eine Verifizierung mit einer Telefonnummer, und wir übermitteln den Code über einen von Bird verwalteten gemeinsamen Absender – standardmäßig Bird Verify oder auf Wunsch Authifly. Die Prüfung erfolgt anhand derselben Nummer. Ein erneutes Senden des Create-Requests ist der Resend (Create-or-Retry), und jeder Code in der Sitzung bleibt gültig, bis er verifiziert wird, abläuft oder die maximale Anzahl an Versuchen erreicht ist.

Was Sie bei einer SMS-Verifizierung erhalten.

Integriert, bei jedem Versand.

  1. 01

    Adressierung per Telefonnummer.

    Übergeben Sie eine einzelne E.164-Telefonnummer. Wir normalisieren sie und senden per SMS über den für das jeweilige Land aufgelösten Absender.

  2. 02

    Serverseitig generierte, gehashte Codes.

    Standardmäßig ein 6-stelliger Code (4–10 konfigurierbar), erzeugt mit einer kryptografisch sicheren Zufallsquelle und nur als HMAC gespeichert. Sie sehen den Klartext nie.

  3. 03

    Resend ist derselbe Aufruf.

    Senden Sie den Create-Request erneut, sobald die 60-Sekunden-Abklingzeit abgelaufen ist: gleiche Sitzung, neuer Code, beide weiterhin gültig. Kein separater Resend-Endpunkt.

  4. 04

    Limits pro Empfänger inklusive.

    Ein Sendelimit pro Empfänger begrenzt das Sendevolumen und unkontrollierte Kosten – mit einem 429 und Retry-After.

  5. 05

    Reichweite, die sich länderspezifisch erweitert.

    SMS wird derzeit über einen von Bird verwalteten gemeinsamen Absender versendet – Bird Verify oder Authifly. Dabei wird eine gebrandete Absender-ID angezeigt, wo ein Land dies erlaubt, und ein Short Code oder eine lokale Nummer, wo dies erforderlich ist – mit dedizierten und registrierten Absendern, die die Reichweite erweitern, sobald sie verfügbar sind.

Der gesamte Ablauf, zwei Aufrufe.

Create-or-Retry sendet den Code an die Telefonnummer; Check bestätigt ihn anhand dieser Nummer. Es gibt keine ID, die zwischen den beiden Aufrufen verknüpft werden muss: Der Empfänger ist der Schlüssel.

sms-otp.ts
200
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;

// data.success is true or false; data.reason elaborates ("incorrect_code", "expired", "attempts_exhausted")

Die Verifizierungs-API, bei der Sie nichts speichern müssen.

SMS ist ein Kanal von Bird Verify: E-Mail und WhatsApp sind bereits integriert, Voice wird gerade ausgerollt – alles über dieselben zwei Endpunkte.

Starten Sie mit einem Kanal.
Fügen Sie die anderen hinzu, wenn Sie bereit sind.

Ein Test-API-Key steht Ihnen sofort zur Verfügung. Der Produktivzugang wird freigeschaltet, sobald Sie eine Zahlungsmethode hinzufügen und einen Absender verifizieren.

Sie nutzen Claude Code, Cursor oder Codex? Kopieren Sie einen Setup-Prompt und Ihr Agent installiert die Bird CLI und Skills für Sie. Wählen Sie Ihren:

Cursor