TypeScript · Nuxt
Envoyez un e-mail depuis une route serveur Nuxt (un gestionnaire d'événements Nitro) avec @messagebird/sdk. Vous avez besoin d'une clé Bird API : créez-en une dans Developers > Clés API (Envoyer votre premier e-mail détaille la procédure), puis ajoutez-la dans .env sous le nom BIRD_API_KEY.
1. Installer
npm create nuxt@latest my-app -- --packageManager npm --no-modules
cd my-app
npm install @messagebird/sdk2. Envoyer
Créez server/api/send.post.ts. Tout ce qui se trouve sous server/ s'exécute uniquement côté serveur :
import { BirdClient } from "@messagebird/sdk";
const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });
export default defineEventHandler(async () => {
const msg = await bird.email.send({
from: "onboarding@messagebird.dev",
to: ["delivered@messagebird.dev"],
subject: "Hello from Bird",
html: "<p>My first Bird email.</p>",
});
console.log(msg.id, msg.status); // "em_…", "accepted"
return { id: msg.id, status: msg.status };
});onboarding@messagebird.dev est l'expéditeur d'intégration partagé de Bird et delivered@messagebird.dev est un destinataire sandbox qui aboutit toujours : aucune vérification de domaine n'est nécessaire. Le SDK déduit la région à partir du préfixe bk_us1_ / bk_eu1_ de votre clé (aucune URL de base à configurer) et génère automatiquement un Idempotency-Key par appel, ce qui rend les envois relancés sûrs.
3. Tester
Lancez le serveur de développement et envoyez un POST à la route :
npm run dev
curl -X POST http://localhost:3000/api/sendBird accepte l'e-mail avec un 202 et le distribue de manière asynchrone ; votre route renvoie l'ID em_ et le statut :
{
"id": "em_01ky7ma8y2es1s2akzk53tmjn0",
"status": "accepted"
}Étapes suivantes
- Guide e-mail TypeScript SDK : la surface e-mail complète (
send,get,list) et le modèle d'erreur. - Envoyer votre premier e-mail : création d'une clé API et liste complète des adresses sandbox.
- Domaines d'envoi : vérifiez votre propre domaine pour l'envoi en production.
- Référence e-mail API : le schéma complet de requête et de réponse.
Ressources associées
Poursuivez avec la documentation, les guides et les exemples sur ce sujet.