Email OTP

En aperçu

Vérifiez par e-mail, sur un vrai réseau e-mail.

Configuration en :
Cursor

La vérification par e-mail envoie un code à usage unique à une adresse e-mail : aucun numéro de téléphone requis, et ce canal atteint toute personne disposant d'une boîte de réception. Bird l'envoie sur la même infrastructure qui achemine les e-mails transactionnels à grande échelle, depuis un expéditeur partagé ou votre propre domaine vérifié, et le vérifie par destinataire.

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: { email_address: "ada@example.com" },
}).safe();

const { data } = await bird.verify.verifications.check({
  to:   { email_address: "ada@example.com" },
  code: userInput,
}).safe();

Le canal de vérification qui ne nécessite aucun numéro de téléphone.

L'e-mail est un canal à part entière sur l<hub>API Bird Verify</hub> : envoyez une vérification avec une adresse e-mail et nous envoyons le code depuis lexpéditeur partagé Authifly, otp@verify.authifly.com, ou votre propre domaine vérifié. C'est indépendant du pays, donc cela fonctionne partout de la même manière, et cela s'appuie sur le même réseau que Bird utilise pour les e-mails transactionnels à grande échelle.

Ce que vous obtenez avec une vérification par e-mail.

Intégré, à chaque envoi.

  1. 01

    Adressé par e-mail.

    Transmettez une simple adresse e-mail. Pas de numéro de téléphone, pas de pays : l'e-mail est le seul canal qui atteint toute personne disposant d'une boîte de réception.

  2. 02

    Domaine partagé ou le vôtre.

    Envoyez depuis l'expéditeur partagé Authifly (otp@verify.authifly.com) sans configuration, ou utilisez un domaine que vous avez déjà vérifié pour l'envoi.

  3. 03

    Un e-mail OTP prêt à l'emploi.

    Le code arrive dans un template par défaut épuré et optimisé pour mobile : le code bien en vue, une note d'expiration et un rappel de ne jamais le partager. Rien à concevoir avant de lancer.

  4. 04

    Sur le réseau e-mail Bird.

    Vos codes empruntent la même infrastructure de livraison que les e-mails transactionnels de votre produit : signés, routés et surveillés.

  5. 05

    Codes générés côté serveur et hachés.

    Un code à 6 chiffres par défaut (configurable de 4 à 10), généré avec une source aléatoire cryptographique et stocké uniquement sous forme de HMAC.

  6. 06

    Vérification par destinataire.

    Confirmez le code par l'adresse e-mail à laquelle il a été envoyé : aucun identifiant de vérification à conserver, et renvoyer l'appel de création relance l'envoi au sein de la session.

Envoyez à une adresse, vérifiez par la même adresse.

Une vérification par e-mail repose sur les deux mêmes appels que tout autre canal : seule la forme du destinataire change, passant d'un numéro de téléphone à une adresse e-mail.

email-otp.ts
200
await bird.verify.verifications.create({
  to: { email_address: "ada@example.com" },
}).safe();

const { data } = await bird.verify.verifications.check({
  to:   { email_address: "ada@example.com" },
  code: userInput,
}).safe();

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

Vos codes de vérification sur le réseau qui gère votre e-mail.

L'e-mail est un canal de Bird Verify : SMS et WhatsApp sont inclus, et la voix est en cours de déploiement, le tout sur les deux mêmes endpoints.

Commencez avec un seul canal.
Ajoutez les autres quand vous êtes prêt.

Une clé API de test est disponible immédiatement. L'accès production se débloque dès que vous ajoutez un moyen de paiement et vérifiez un expéditeur.

Vous utilisez Claude Code, Cursor ou Codex ? Copiez un prompt de configuration et votre agent installe la CLI Bird et les compétences pour vous. Choisissez le vôtre :

Cursor