TypeScript · Astro
Senden Sie eine E-Mail aus einer Astro-API-Route mit @messagebird/sdk. Sie benötigen einen Bird-API-Schlüssel: Erstellen Sie einen unter Developers > API keys (Ihre erste E-Mail senden führt Sie durch den Vorgang) und hinterlegen Sie ihn in .env als BIRD_API_KEY.
1. Installieren
Codebeispiel
npm create astro@latest my-app -- --template minimal --install --no-git --no-ai --yes
cd my-app
npm install @messagebird/sdk2. Senden
Erstellen Sie src/pages/api/send.ts. prerender = false bewirkt, dass diese Route on demand auf dem Server gerendert wird; Astro stellt .env-Werte über import.meta.env bereit, und BIRD_API_KEY hat kein PUBLIC_-Präfix, bleibt also nur auf dem Server:
Codebeispiel
import type { APIRoute } from "astro";
import { BirdClient } from "@messagebird/sdk";
export const prerender = false;
const bird = new BirdClient({ apiKey: import.meta.env.BIRD_API_KEY! });
export const POST: APIRoute = 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 Response.json({ id: msg.id, status: msg.status });
};onboarding@messagebird.dev ist der gemeinsame Onboarding-Absender von Bird, und delivered@messagebird.dev ist ein Sandbox-Empfänger, der immer zugestellt wird: keine Domain-Verifizierung nötig. Der SDK leitet die Region aus dem bk_us1_-/bk_eu1_-Präfix Ihres Schlüssels ab (keine Base-URL zu konfigurieren) und erzeugt pro Aufruf automatisch eine Idempotency-Key, sodass wiederholte Sends sicher sind.
3. Ausprobieren
Starten Sie den Dev-Server und senden Sie einen POST an die Route:
Codebeispiel
npm run dev
curl -X POST http://localhost:4321/api/sendBird nimmt die E-Mail mit einem 202 an und stellt sie asynchron zu; Ihre Route gibt die em_-ID und den Status zurück:
Codebeispiel
{
"id": "em_01ky7ma8y2es1s2akzk53tmjn0",
"status": "accepted"
}Um On-Demand-Routen in Produktion bereitzustellen, fügen Sie einen Server-Adapter wie @astrojs/node oder @astrojs/vercel hinzu. Rein statische Builds können sie nicht ausführen.
Nächste Schritte
- TypeScript-E-Mail-SDK: die vollständige E-Mail-Oberfläche (send, get, list) und das Fehlermodell.
- Ihre erste E-Mail senden: einen API-Schlüssel erstellen und alle Sandbox-Adressen im Überblick.
- Sende-Domains: Verifizieren Sie Ihre eigene Domain für den Produktionsversand.
- E-Mail-API-Referenz: das vollständige Request- und Response-Schema.
Verwandte Ressourcen
Weiter mit der Dokumentation, Anleitungen und Beispielen zu diesem Thema. Die Ressourcen sind auf Englisch.
Anleitung ansehenGetting started with emailDas Konzept verstehenShould I use a Bird SDK or call the API directly?Die Funktion erkundenEmailDem Lernpfad folgenBuild your first integration
Übung ausprobieren und ein Implementierungs-Briefing erhalten