---
title: "Brevo Connector"
description: "Vollständiger Leitfaden zur Brevo-Integration für die Synchronisation von Kontakten, Transactional E-Mails, SMS, WhatsApp-Kampagnen und Marketing-Automatisierung mit Tajo."
url: https://tajo.io/de/docs/connectors/marketing/brevo/
markdown: https://tajo.io/de/docs/connectors/marketing/brevo.md
lang: de-DE
robots: noindex
---

Beantrage frühzeitigen Zugang

Gib deinen Vornamen und deine geschäftliche E-Mail-Adresse ein. Wir senden dir einen Link, mit dem du deine Anfrage für den Tajo-Zugang bestätigst.

# Brevo Connector

Connector-Status: Aktiv Verifiziert. Tajo betreibt diesen Connector heute.

| Quellfeld | Zielfeld | Beispielwert |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Verbinde dein Brevo-Konto mit Tajo für einheitliches Kontaktmanagement, Transactional Messaging über E-Mail, SMS und WhatsApp sowie umfassende Marketing-Automatisierung.

## Überblick

| Eigenschaft | Wert |
| --- | --- |
| **Plattform** | Brevo |
| **Kategorie** | Marketing |
| **Einrichtungsaufwand** | Einfach |
| **Offizielle Integration** | Ja |
| **Synchronisierte Daten** | Kontakte, Kampagnen, Transactional Messages, Events, eCommerce |
| **API-Basis-URL** | `https://api.brevo.com/v3` |

## Funktionen

- **Multi-Channel-Messaging** - Versende Transactional E-Mails, SMS und WhatsApp-Nachrichten über eine einheitliche API
- **Kontaktmanagement** - Lege Kontakte mit benutzerdefinierten Attributen an, aktualisiere sie und segmentiere sie
- **Marketing-Kampagnen** - Erstelle und versende E-Mail-Kampagnen programmatisch
- **Event-Tracking** - Tracke Custom Events und Website-Aktivität über den Brevo-Tracker
- **eCommerce-Sync** - Synchronisiere Produkte, Bestellungen und Warenkorbdaten für personalisierte Kampagnen
- **Loyalty-Programme** - Verwalte Loyalty-Abonnements, Punkte und Mitgliederdaten
- **Webhook-Unterstützung** - Echtzeitbenachrichtigungen für Transactional-, Marketing- und CRM-Events
- **Conversations** - Integration des Live-Chat-Widgets und programmatisches Nachrichtenmanagement

## Voraussetzungen

Bevor du beginnst, stelle sicher, dass du Folgendes hast:

1. Ein Brevo-Konto (Free-, Starter-, Business- oder Enterprise-Plan)
2. Einen API-Schlüssel, der in Brevo unter Settings > API Keys erstellt wurde
3. Ein Tajo-Konto mit API-Zugriff
4. Eine verifizierte Absender-Domain für den E-Mail-Versand

## Authentifizierung

Brevo unterstützt zwei Authentifizierungsmethoden:

### API-Schlüssel-Authentifizierung (Empfohlen)

Füge deinen API-Schlüssel bei jeder Anfrage im `api-key`-Header ein. Am besten geeignet für direkte Integrationen und Server-zu-Server-Kommunikation.

```bash
curl -X GET "https://api.brevo.com/v3/account" \
  -H "api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json"
```

### OAuth-2.0-Authentifizierung

Nutze OAuth 2.0 für private Integrationen innerhalb einer Organisation, die delegierten Zugriff und benutzerspezifische Berechtigungen erfordern. OAuth bietet ein token-basiertes System mit definierten Gültigkeitszeiträumen.

OAuth-Verfügbarkeit

OAuth steht aktuell ausschließlich für private Integrationen innerhalb einer Organisation zur Verfügung. OAuth-Integrationen sind nicht für eine öffentliche Verbreitung oder einen Marketplace-Eintrag gedacht.

## Konfiguration

### Grundeinrichtung

```yaml
connectors:
  brevo:
    enabled: true
    api_key: "${BREVO_API_KEY}"
    api_version: "v3"

    # Data sync options
    sync:
      contacts: true
      campaigns: true
      transactional: true
      events: true
      ecommerce: true

    # List assignment
    lists:
      all_customers: 5
      newsletter: 6
      buyers: 7
```

### Feldzuordnung

Ordne deine Datenfelder den Brevo-Kontaktattributen zu:

#### Standardzuordnungen

| Parameter | Type | Description |
| --- | --- | --- |
| `email` required | string | E-Mail-Adresse des Kontakts (eindeutige Kennung) |
| `FIRSTNAME` optional | string | Vorname des Kontakts |
| `LASTNAME` optional | string | Nachname des Kontakts |
| `SMS` optional | string | Telefonnummer für SMS- und WhatsApp-Nachrichten |
| `OPT_IN` optional | boolean | Einwilligungsstatus für Marketing-Opt-in |
| `ORDER_COUNT` optional | integer | Gesamtzahl der aufgegebenen Bestellungen |
| `TOTAL_REVENUE` optional | number | Lifetime-Umsatz des Kontakts |
| `LOYALTY_POINTS` optional | integer | Aktueller Punktestand im Loyalty-Programm |

#### Zuordnung benutzerdefinierter Attribute

```yaml
field_mapping:
  # Standard fields
  email: email
  first_name: FIRSTNAME
  last_name: LASTNAME
  phone: SMS

  # Marketing fields
  opt_in: OPT_IN
  signup_source: SIGNUP_SOURCE
  preferred_language: LANGUAGE

  # eCommerce metrics
  orders_count: ORDER_COUNT
  total_spent: TOTAL_REVENUE
  last_order_date: LAST_ORDER_DATE

  # Loyalty fields
  loyalty_tier: VIP_TIER
  loyalty_points: LOYALTY_POINTS
```

## API-Endpoints

### Kern-Endpoints

| Methode | Endpoint | Beschreibung |
| --- | --- | --- |
| `POST` | `/v3/smtp/email` | Transactional E-Mail versenden |
| `POST` | `/v3/transactionalSMS/send` | Transactional SMS versenden |
| `POST` | `/v3/whatsapp/sendMessage` | Transactional WhatsApp-Nachricht versenden |
| `POST` | `/v3/contacts` | Einen Kontakt erstellen |
| `PUT` | `/v3/contacts/{email}` | Einen Kontakt aktualisieren |
| `GET` | `/v3/contacts/{identifier}` | Kontaktdetails abrufen |
| `POST` | `/v3/contacts/import` | Kontakte per Bulk-Import importieren |

### eCommerce-Endpoints

| Methode | Endpoint | Beschreibung |
| --- | --- | --- |
| `POST` | `/v3/orders/status` | Bestellstatus anlegen oder aktualisieren |
| `POST` | `/v3/products` | Produkte anlegen oder aktualisieren |
| `POST` | `/v3/categories` | Produktkategorien anlegen oder aktualisieren |
| `POST` | `/v3/events` | Custom Events tracken |

### Kampagnen-Endpoints

| Methode | Endpoint | Beschreibung |
| --- | --- | --- |
| `POST` | `/v3/emailCampaigns` | Eine E-Mail-Kampagne anlegen |
| `POST` | `/v3/emailCampaigns/{id}/sendNow` | Eine Kampagne sofort senden |
| `GET` | `/v3/emailCampaigns` | Alle E-Mail-Kampagnen auflisten |
| `GET` | `/v3/smtp/statistics/events` | E-Mail-Event-Statistiken abrufen |

## Events

### Transactional Events

| Event | Auslöser | Anwendungsfall |
| --- | --- | --- |
| `delivered` | E-Mail im Posteingang zugestellt | Zustellbestätigung |
| `opened` | E-Mail von Empfänger:in geöffnet | Engagement-Tracking |
| `clicked` | Link in E-Mail angeklickt | Click-Through-Tracking |
| `bounced` | E-Mail ist gebounced | Listen-Hygiene |
| `spam` | Als Spam markiert | Compliance-Monitoring |
| `unsubscribed` | Kontakt hat sich abgemeldet | Präferenz-Management |

### eCommerce-Events

| Event | Auslöser | Anwendungsfall |
| --- | --- | --- |
| `order_completed` | Bestellung erfolgreich aufgegeben | Post-Purchase-Flows |
| `cart_updated` | Warenkorbinhalt geändert | Tracking abgebrochener Warenkörbe |
| `cart_deleted` | Warenkorb geleert oder abgelaufen | Cart-Recovery |
| `product_viewed` | Produktseite aufgerufen | Browse-Abandonment |

## Code-Beispiele

### Connector initialisieren

```javascript
import { TajoClient } from '@tajo/sdk';

const tajo = new TajoClient({
  apiKey: process.env.TAJO_API_KEY,
  brevoApiKey: process.env.BREVO_API_KEY
});

// Connect Brevo account
await tajo.connectors.connect('brevo', {
  apiKey: process.env.BREVO_API_KEY
});
```

### Transactional E-Mail versenden

```javascript
// Send a transactional email via Brevo
await tajo.brevo.sendTransactionalEmail({
  to: [{ email: 'customer@example.com', name: 'John Doe' }],
  templateId: 12,
  params: {
    ORDER_ID: '12345',
    ORDER_TOTAL: '$59.99',
    DELIVERY_DATE: '2024-02-15'
  }
});
```

### Kontakte synchronisieren

```javascript
// Bulk import contacts to Brevo
await tajo.connectors.sync('brevo', {
  type: 'full',
  resources: ['contacts'],
  options: {
    listIds: [5, 6],
    updateExisting: true,
    emptyContactsAttributes: false
  }
});

// Check sync status
const status = await tajo.connectors.status('brevo');
console.log(status);
// {
//   connected: true,
//   lastSync: '2024-01-15T10:30:00Z',
//   contactsSynced: 25400,
//   campaignsSent: 142,
//   eventsTracked: 89320
// }
```

### Custom Events tracken

```javascript
// Track a custom event for a contact
await tajo.brevo.trackEvent({
  email: 'customer@example.com',
  event: 'product_purchased',
  eventdata: {
    id: 'txn_98765',
    data: {
      product_name: 'Premium Widget',
      price: 49.99,
      currency: 'USD'
    }
  }
});
```

## Rate Limits

Brevo wendet Rate Limits in drei Stufen abhängig von deinem Plan an:

| Endpoint | Free/Starter | Professional | Enterprise |
| --- | --- | --- | --- |
| `POST /v3/smtp/email` | 1.000 RPS | 2.000 RPS | 6.000 RPS |
| `POST /v3/transactionalSMS/send` | 150 RPS | 200 RPS | 250 RPS |
| `POST /v3/events` | 10 RPS | 20 RPS | 60 RPS |
| `/v3/contacts/*` | 10 RPS | 20 RPS | 60 RPS |
| Alle anderen Endpoints | 100 RPH | 200 RPH | 600 RPH |

Antwort bei Rate Limits

Wenn du ein Rate Limit überschreitest, gibt die API den Statuscode `429 Too Many Requests` zurück. Beobachte die Rate-Limit-Header in den Antworten, um deine Nutzung zu überwachen.

## Fehlerbehebung

### Häufige Probleme

| Problem | Ursache | Lösung |
| --- | --- | --- |
| 401 Unauthorized | Ungültiger API-Schlüssel | API-Schlüssel in den Brevo-Einstellungen neu generieren |
| Kontakt nicht erstellt | Fehlendes E-Mail-Feld | Stelle sicher, dass für alle Kontakte eine E-Mail angegeben ist |
| E-Mail nicht zugestellt | Nicht verifizierte Absender-Domain | Domain in den Brevo-Absendereinstellungen verifizieren |
| Webhook nicht empfangen | Falsche URL oder Serverfehler | Erreichbarkeit der Webhook-URL und Logs prüfen |
| SMS nicht versendet | Ungültiges Telefonformat | Internationales Format mit Ländervorwahl verwenden |

### Debug-Modus

Ausführliches Logging aktivieren:

```yaml
connectors:
  brevo:
    debug: true
    log_level: verbose
    log_webhooks: true
```

### Verbindung testen

```bash
tajo connectors test brevo
# ✓ API connection successful
# ✓ Contacts API accessible
# ✓ Transactional email ready
# ✓ SMS sending configured
# ✓ Webhooks registered
```

## Best Practices

1. **API-Schlüssel rotieren** - Rotiere API-Schlüssel regelmäßig aus Sicherheitsgründen
2. **Webhook-Verifizierung umsetzen** - Prüfe Webhook-Signaturen per Username-/Passwort-Authentifizierung
3. **Kontaktimporte bündeln** - Nutze Bulk-Import für große Datensätze statt einzelner API-Aufrufe
4. **Rate Limits überwachen** - Prüfe die Rate-Limit-Header, um 429-Fehler zu vermeiden
5. **Event-Tracking nutzen** - Implementiere den Brevo-Tracker für umfassende Daten zum Kundenverhalten
6. **Saubere Absender-Authentifizierung einrichten** - Konfiguriere SPF, DKIM und DMARC für eine optimale E-Mail-Zustellbarkeit

## Sicherheit

- **API-Schlüssel-Authentifizierung** - Token-basierter Zugriff per Secret über den `api-key`-Header
- **OAuth 2.0** - Token-basierter delegierter Zugriff für private Integrationen
- **Webhook-Verifizierung** - Authentifizierung per Username und Passwort für sichere Webhook-Aufrufe
- **TLS-Verschlüsselung** - Die gesamte API-Kommunikation wird bei der Übertragung verschlüsselt
- **IP-Whitelisting** - Optionale IP-Beschränkungen in Enterprise-Plänen verfügbar

## Verwandte Ressourcen

- [Brevo API-Dokumentation](https://developers.brevo.com/docs/getting-started)
- [Brevo-Authentifizierungsleitfaden](https://developers.brevo.com/docs/authentication-schemes)
- [Brevo Rate Limits](https://developers.brevo.com/docs/api-limits)
- [Shopify Connector](https://tajo.io/de/docs/connectors/ecommerce/shopify)
- [Customer-Sync-Skill](https://tajo.io/de/docs/skills/data-sync/customer-sync)
- [Brevo Contacts API](https://tajo.io/de/docs/contact-management)
