Doelgroepen & contacten

Schone lijsten, ingebouwd.

Geïntegreerd in:

Sla je contacten ��n keer op, uniek per e-mailadres, en groepeer ze in audiences die je vanuit een broadcast target. Een getypeerd property-register houdt je data schoon, en een batch-upsert van 1.000 rijen zet een lijst er snel in.

welcome.tsx
200 · 1.2s
import { BirdClient } from "@messagebird/sdk";
import { render } from "@react-email/render";
import { WelcomeEmail } from "./emails/welcome";

const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });

const { data, error } = await bird.email.send({
  from:    "Bird <hello@bird.com>",
  to:      ["ada@example.com"],
  subject: "Your invite is ready",
  html:    await render(<WelcomeEmail name="Ada" />),
}).safe();

if (error) throw error;
console.log(data.id);
// → "em_2bX91Yk8h..."

Eén contactrecord. Attributen die niet afdrijven.

Audiences zijn onderdeel van de Bird Email API: een contact is uniek per e-mailadres en wordt gedeeld over je audiences, een audience is gewoon een set van die contacten, en attributen staan altijd op het contact, niet gekopieerd op elke lijst. Het property-register betekent dat een verkeerd getypt veld bij het schrijven wordt geweigerd, niet pas in een campagne ontdekt.

Vijf dingen die je data schoon houden.

Het datamodel doet de boekhouding, zodat je lijsten niet verrotten.

  1. 01

    E�n record per persoon.

    E�n contact per e-mailadres, met voor- en achternaam, een externe ID en je eigen custom data.

  2. 02

    Doelgroepen zijn lidmaatschap.

    Een audience is een set contacten die je vrij toevoegt en verwijdert. Attributen staan altijd op het contact, nooit gekopieerd op de lijst.

  3. 03

    Getypeerd property-register.

    Definieer je custom velden vooraf: string, number of boolean, met optionele fallbacks. Onbekende keys en verkeerd getypeerde waarden worden bij het schrijven geweigerd.

  4. 04

    Batch-upsert tot 1.000.

    Upsert maximaal 1.000 contacten in ��n call en koppel ze in dezelfde request aan een audience.

  5. 05

    Exacte-match-opzoeking.

    Vind een contact via een exacte e-mailmatch, zodat je eigen systemen kunnen synchroniseren zonder elk record te scannen.

Voeg een hele lijst toe met één call.

Upsert is idempotent op e-mailadres, dus een import opnieuw draaien werkt bij in plaats van te dupliceren. Voeg maximaal 1.000 contacten toe en koppel ze in dezelfde request aan een audience, zonder aparte membership-stap en zonder dedupe-ronde achteraf. Grotere lijsten gaan in batches van 1.000 omhoog. Elke call is onafhankelijk, dus een onderbroken import kun je veilig hervatten waar die stopte.

import.ts
202
// Upsert up to 1,000 contacts and add them to an audience at once.
await bird.email.contacts.batchUpsert({
  audienceId: "aud_2bX91Yk8h",
  contacts: [
    { email: "ada@example.com",   firstName: "Ada",   data: { plan: "growth" } },
    { email: "grace@example.com", firstName: "Grace", data: { plan: "free" } },
  ],
});

Velden die niet kunnen afdrijven.

Custom contactdata loopt via een getypeerd register. Declareer elk veld ��n keer als string, number of boolean, met een optionele fallback, en een verkeerd getypte key of verkeerd getypeerde waarde wordt geweigerd op het moment dat je hem schrijft, niet halverwege een campagne ontdekt. Omdat attributen op het contact staan en niet op de lijst, laat het verplaatsen van iemand tussen audiences nooit een verouderde kopie achter.

Werkt samen met de rest van Email.

Target de doelgroepen die je hier bouwt vanuit een broadcast, en dezelfde contacten ontvangen transactionele mail via de verzend-API.

Doelgroepen & contacten FAQ

Zijn contacten per doelgroep of globaal?+
Globaal. Een contact is uniek per e-mailadres, en audiences verwijzen er alleen naar. Verplaats een contact tussen audiences en zijn attributen volgen mee, want ze staan op het contact, niet op de lijst.
Wat is het property-register?+
Een gesloten, getypeerd schema voor je aangepaste contactvelden. Je declareert het type van elk veld (string, number of boolean) met een optionele fallback vooraf; onbekende keys of verkeerd getypeerde waarden worden bij het schrijven afgewezen, zodat je data schoon blijft.
Hoe importeer ik een lijst?+
Batch-upsert maximaal 1.000 contacten in ��n call en koppel ze in dezelfde request aan een audience, zonder aparte toevoegstap. Upsert is idempotent op e-mailadres, dus een import opnieuw draaien werkt bij in plaats van te dupliceren.
Hoe verhouden doelgroepen zich tot broadcasts?+
Een broadcast target één doelgroep. Bouw en onderhoud de doelgroep hier; verwijs ernaar op ID wanneer je verstuurt.

Ongeveer 40% van alle commerciële e-mail ter wereld draait al op Bird.

Transactionele en marketing-e-mail op infrastructuur die we al tien jaar draaien. Audiences zijn ��n van de mogelijkheden van de Bird Email API: verzenden, broadcasts, deliverability, suppression en analytics horen er standaard bij.

Begin met één kanaal.
Voeg de rest toe wanneer je er klaar voor bent.

Een test-API-key is direct beschikbaar. Productietoegang wordt ontgrendeld zodra je een betaalmethode toevoegt en een afzender verifieert.

Gebruik je Claude Code, Cursor of Codex? Kopieer een setup-prompt en je agent installeert de Bird CLI en skills voor je. Kies de jouwe: