---
title: "Mailchimp Connector"
description: "Vollständiger Leitfaden zur Mailchimp-Integration für die Synchronisation von Audiences, Kampagnen, Automationen und Engagement-Daten mit Brevo über Tajo."
url: https://tajo.io/de/docs/connectors/marketing/mailchimp/
markdown: https://tajo.io/de/docs/connectors/marketing/mailchimp.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.

# Mailchimp Connector

Connector-Status: In Arbeit Im Aufbau. Noch nicht verifiziert.

| 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 Mailchimp-Konto über Tajo mit Brevo für eine nahtlose Audience-Migration, die Synchronisation von Kampagnendaten und einheitliche Marketing-Automatisierung über beide Plattformen hinweg.

## Überblick

| Eigenschaft | Wert |
| --- | --- |
| **Plattform** | Mailchimp |
| **Kategorie** | Marketing |
| **Einrichtungsaufwand** | Einfach |
| **Offizielle Integration** | Nein |
| **Synchronisierte Daten** | Kontakte, Kampagnen, Automationen, Events |
| **API-Basis-URL** | `https://{dc}.api.mailchimp.com/3.0` |

## Funktionen

- **Audience-Sync** - Migriere und synchronisiere Mailchimp-Audiences mit Brevo-Kontaktlisten
- **Kampagnendaten** - Synchronisiere Kampagnen-Performance-Daten für ein einheitliches Reporting
- **Automations-Migration** - Ordne Mailchimp-Automationen Brevo-Workflows zu
- **Engagement-Metriken** - Synchronisiere Öffnungen, Klicks und Bounce-Daten in Brevo-Attribute
- **Segment-Mapping** - Repliziere Mailchimp-Segmente als Brevo-Listen oder -Segmente
- **E-Commerce-Daten** - Synchronisiere Store-, Produkt- und Bestelldaten aus Mailchimp E-Commerce
- **Tag-Sync** - Ordne Mailchimp-Tags Brevo-Kontaktattributen oder -Listen zu
- **Template-Migration** - Exportiere Mailchimp-Templates zur Nutzung in Brevo-Kampagnen

## Voraussetzungen

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

1. Ein Mailchimp-Konto (Free, Essentials, Standard oder Premium)
2. Einen Mailchimp-API-Schlüssel oder eine OAuth-App
3. Ein Brevo-Konto mit API-Zugriff
4. Ein Tajo-Konto

## Authentifizierung

### API-Schlüssel-Authentifizierung

Erzeuge einen API-Schlüssel unter Mailchimp Account > Extras > API Keys.

```bash
curl https://{dc}.api.mailchimp.com/3.0/ping \
  --user "anystring:{api_key}" \
  -H "Content-Type: application/json"
```

Das Data-Center-Präfix `{dc}` ist der letzte Teil deines API-Schlüssels (z. B. `us21`).

### OAuth 2.0

Für Integrationen mit mehreren Konten:

```bash
# Authorization URL
https://login.mailchimp.com/oauth2/authorize?
  response_type=code&
  client_id={client_id}&
  redirect_uri={redirect_uri}

# Token exchange
curl -X POST https://login.mailchimp.com/oauth2/token \
  -d "grant_type=authorization_code" \
  -d "client_id={client_id}" \
  -d "client_secret={client_secret}" \
  -d "redirect_uri={redirect_uri}" \
  -d "code={auth_code}"
```

Data Center

Extrahiere das Data Center immer aus deinem API-Schlüssel oder dem OAuth-Metadata-Endpoint. Ein falsches Data Center führt zu Authentifizierungsfehlern.

## Konfiguration

### Grundeinrichtung

```yaml
connectors:
  mailchimp:
    enabled: true
    api_key: "${MAILCHIMP_API_KEY}"
    data_center: "us21"

    # Data sync options
    sync:
      audiences: true
      campaigns: true
      automations: true
      ecommerce: true

    # Audience to Brevo list mapping
    audience_mapping:
      "Main Audience": 40
      "Newsletter": 41
      "Customers": 42
```

### Feldzuordnung

Ordne Mailchimp-Merge-Fields den Brevo-Kontaktattributen zu:

#### Standardzuordnungen

| Parameter | Type | Description |
| --- | --- | --- |
| `email_address` required | string | E-Mail des Abonnenten (eindeutige Kennung) |
| `FNAME` optional | string | Merge-Feld für den Vornamen, wird FIRSTNAME zugeordnet |
| `LNAME` optional | string | Merge-Feld für den Nachnamen, wird LASTNAME zugeordnet |
| `PHONE` optional | string | Merge-Feld für die Telefonnummer, wird SMS zugeordnet |
| `status` optional | string | Abonnementstatus (subscribed, unsubscribed, cleaned, pending) |
| `tags` optional | array | Tags der Abonnent:innen für die Segmentierung |
| `stats.avg_open_rate` optional | number | Durchschnittliche E-Mail-Open-Rate |
| `stats.avg_click_rate` optional | number | Durchschnittliche E-Mail-Click-Rate |

#### Zuordnung benutzerdefinierter Merge Fields

```yaml
field_mapping:
  # Standard fields
  email_address: email
  FNAME: FIRSTNAME
  LNAME: LASTNAME
  PHONE: SMS

  # Engagement metrics
  stats.avg_open_rate: AVG_OPEN_RATE
  stats.avg_click_rate: AVG_CLICK_RATE
  member_rating: ENGAGEMENT_SCORE

  # E-commerce fields
  ecommerce_data.total_revenue: TOTAL_REVENUE
  ecommerce_data.number_of_orders: ORDER_COUNT

  # Custom merge fields
  MMERGE5: COMPANY_NAME
  MMERGE6: CUSTOMER_TYPE
```

## API-Endpoints

### Audiences (Lists)

| Methode | Endpoint | Beschreibung |
| --- | --- | --- |
| `GET` | `/3.0/lists` | Alle Audiences auflisten |
| `GET` | `/3.0/lists/{list_id}` | Details einer Audience abrufen |
| `GET` | `/3.0/lists/{list_id}/members` | Mitglieder einer Audience auflisten |
| `POST` | `/3.0/lists/{list_id}/members` | Ein Mitglied hinzufügen |
| `PUT` | `/3.0/lists/{list_id}/members/{hash}` | Ein Mitglied aktualisieren |
| `POST` | `/3.0/lists/{list_id}` | Batch subscribe/unsubscribe |

### Kampagnen

| Methode | Endpoint | Beschreibung |
| --- | --- | --- |
| `GET` | `/3.0/campaigns` | Kampagnen auflisten |
| `GET` | `/3.0/campaigns/{id}` | Kampagnendetails abrufen |
| `GET` | `/3.0/reports/{id}` | Kampagnen-Report abrufen |
| `GET` | `/3.0/reports/{id}/email-activity` | E-Mail-Aktivität abrufen |

### Automationen

| Methode | Endpoint | Beschreibung |
| --- | --- | --- |
| `GET` | `/3.0/automations` | Automationen auflisten |
| `GET` | `/3.0/automations/{id}` | Details einer Automation abrufen |
| `GET` | `/3.0/automations/{id}/emails` | E-Mails einer Automation auflisten |

### E-Commerce

| Methode | Endpoint | Beschreibung |
| --- | --- | --- |
| `GET` | `/3.0/ecommerce/stores` | Verbundene Stores auflisten |
| `GET` | `/3.0/ecommerce/stores/{id}/customers` | Kund:innen eines Stores auflisten |
| `GET` | `/3.0/ecommerce/stores/{id}/orders` | Bestellungen eines Stores auflisten |
| `GET` | `/3.0/ecommerce/stores/{id}/products` | Produkte eines Stores auflisten |

## Events

### Kampagnen-Events

| Event | Auslöser | Anwendungsfall |
| --- | --- | --- |
| `campaign.sent` | Kampagne zugestellt | Performance-Tracking |
| `campaign.opened` | E-Mail geöffnet | Engagement-Scoring |
| `campaign.clicked` | Link angeklickt | Interessen-Tracking |
| `campaign.bounced` | E-Mail ist gebounced | Listen-Hygiene |

### Subscriber-Events

| Event | Auslöser | Anwendungsfall |
| --- | --- | --- |
| `subscribe` | Neue:r Abonnent:in hinzugefügt | Willkommens-Flow |
| `unsubscribe` | Abmeldung durch Abonnent:in | Präferenz-Management |
| `profile` | Profil aktualisiert | Attribut-Synchronisation |
| `cleaned` | E-Mail bereinigt (Bounce) | Listen-Wartung |

### E-Commerce-Events

| Event | Auslöser | Anwendungsfall |
| --- | --- | --- |
| `ecommerce.order` | Bestellung aufgegeben | Post-Purchase-Flow |
| `ecommerce.cart` | Warenkorb aktualisiert | Recovery abgebrochener Warenkörbe |

## 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 Mailchimp
await tajo.connectors.connect('mailchimp', {
  apiKey: process.env.MAILCHIMP_API_KEY
});
```

### Audiences zu Brevo migrieren

```javascript
// Full audience migration from Mailchimp to Brevo
await tajo.connectors.sync('mailchimp', {
  type: 'full',
  resources: ['audiences', 'campaigns', 'ecommerce'],
  options: {
    preserveTags: true,
    migrateSegments: true,
    includeUnsubscribed: false
  }
});

// Check migration status
const status = await tajo.connectors.status('mailchimp');
console.log(status);
// {
//   connected: true,
//   lastSync: '2024-01-15T10:30:00Z',
//   contactsMigrated: 52000,
//   campaignsSynced: 245,
//   segmentsMapped: 18
// }
```

### Kampagnen-Engagement-Daten synchronisieren

```javascript
// Sync campaign performance to Brevo attributes
await tajo.connectors.sync('mailchimp', {
  type: 'incremental',
  resources: ['campaigns'],
  options: {
    syncEngagement: true,
    updateContactMetrics: true,
    since: '2024-01-01'
  }
});
```

## Rate Limits

Rate Limits der Mailchimp Marketing API:

| Typ | Limit | Details |
| --- | --- | --- |
| Standard | 10 parallele Anfragen | Pro API-Schlüssel |
| Batch-Operationen | 500 Operationen pro Batch | Pro Anfrage |
| Export-Limit | 1 paralleler Export | Pro Konto |
| Transactional | 25 Anfragen/Sekunde | Pro API-Schlüssel |

Rate-Limit-Strategie

Mailchimp begrenzt parallele Verbindungen, nicht Anfragen pro Sekunde. Nutze Batch-Endpoints und implementiere Retry-Logik mit exponentiellem Backoff bei `429`-Antworten.

## Fehlerbehebung

### Häufige Probleme

| Problem | Ursache | Lösung |
| --- | --- | --- |
| 401 Unauthorized | Ungültiger API-Schlüssel oder falsches Data Center | API-Schlüssel prüfen und das richtige `dc`-Präfix extrahieren |
| Member exists | E-Mail ist bereits in der Audience | PUT statt POST verwenden, um bestehende Mitglieder zu aktualisieren |
| Compliance state | DSGVO-Löschung verhindert erneutes Hinzufügen | Kontakt muss sich erneut über ein Anmeldeformular anmelden |
| Batch-Timeout | Große Batch-Operation | In kleinere Batches zu je 500 Operationen aufteilen |
| Fehlende Merge-Fields | Custom Fields nicht angelegt | Merge-Fields in Mailchimp anlegen, bevor du sie zuordnest |

### Debug-Modus

Ausführliches Logging aktivieren:

```yaml
connectors:
  mailchimp:
    debug: true
    log_level: verbose
    log_api_calls: true
```

### Verbindung testen

```bash
tajo connectors test mailchimp
# ✓ API connection successful
# ✓ Audiences readable
# ✓ Campaigns readable
# ✓ E-commerce data accessible
# ✓ Webhook configured
```

## Best Practices

1. **Batch-Operationen nutzen** - Verwende Batch-Subscribe/-Unsubscribe für Massenupdates
2. **Abonnementstatus bewahren** - Respektiere die Einwilligung der Abonnent:innen bei der Migration
3. **Merge-Fields zuerst mappen** - Lege entsprechende Brevo-Attribute vor der Synchronisation an
4. **Engagement-Daten synchronisieren** - Importiere Open-/Click-Rates für eine historische Segmentierung
5. **Compliance-Status beachten** - Respektiere DSGVO- und permanente Löschstatus
6. **Inkrementellen Sync verwenden** - Synchronisiere nur die seit dem letzten Sync geänderten Daten, um API-Nutzung zu reduzieren

## Sicherheit

- **API-Schlüssel-Authentifizierung** - Secret-Key als HTTP-Basic-Auth-Passwort übergeben
- **OAuth 2.0** - Token-basierte Autorisierung für den Zugriff auf mehrere Konten
- **TLS-Verschlüsselung** - Die gesamte API-Kommunikation wird per HTTPS verschlüsselt
- **Webhook-Verifizierung** - Validiere die Webhook-Quelle mit einem Shared Secret
- **Data-Center-Isolation** - Daten werden in regionsspezifischen Data Centers gespeichert

## Verwandte Ressourcen

- [Mailchimp Marketing API Reference](https://mailchimp.com/developer/marketing/api/)
- [Mailchimp API Guides](https://mailchimp.com/developer/marketing/guides/quick-start/)
- [Brevo Connector](https://tajo.io/de/docs/connectors/marketing/brevo)
- [ActiveCampaign Connector](https://tajo.io/de/docs/connectors/marketing/activecampaign)
- [Customer-Sync-Skill](https://tajo.io/de/docs/skills/data-sync/customer-sync)
