Konektor Mailchimp
Połącz swoje konto Mailchimp z Brevo przez Tajo dla bezproblemowej migracji odbiorców, synchronizacji danych kampanii i ujednoliconej automatyzacji marketingu na obu platformach.
Przegląd
| Właściwość | Wartość |
|---|---|
| Platforma | Mailchimp |
| Kategoria | Marketing |
| Poziom konfiguracji | Łatwy |
| Integracja oficjalna | Tak |
| Synchronizowane dane | Kontakty, Kampanie, Automatyzacje, Zdarzenia |
| Bazowy URL API | https://{dc}.api.mailchimp.com/3.0 |
Funkcje
- Synchronizacja odbiorców - Migruj i synchronizuj odbiorców Mailchimp z listami kontaktów Brevo
- Dane kampanii - Synchronizuj dane wydajności kampanii dla ujednoliconego raportowania
- Migracja automatyzacji - Mapuj automatyzacje Mailchimp na workflow Brevo
- Metryki zaangażowania - Synchronizuj otwarcia, kliknięcia i dane odrzuceń z atrybutami Brevo
- Mapowanie segmentów - Replikuj segmenty Mailchimp jako listy lub segmenty Brevo
- Dane e-commerce - Synchronizuj dane sklepów, produktów i zamówień z e-commerce Mailchimp
- Synchronizacja tagów - Mapuj tagi Mailchimp na atrybuty kontaktów Brevo lub listy
- Migracja szablonów - Eksportuj szablony Mailchimp do użytku w kampaniach Brevo
Wymagania wstępne
Zanim zaczniesz, upewnij się, że masz:
- Konto Mailchimp (Free, Essentials, Standard lub Premium)
- Klucz API Mailchimp lub aplikację OAuth
- Konto Brevo z dostępem do API
- Konto Tajo
Uwierzytelnianie
Uwierzytelnianie kluczem API
Wygeneruj klucz API z Mailchimp Account > Extras > API Keys.
curl https://{dc}.api.mailchimp.com/3.0/ping \ --user "anystring:{api_key}" \ -H "Content-Type: application/json"Prefiks centrum danych {dc} to ostatnia część Twojego klucza API (np. us21).
OAuth 2.0
Dla integracji wielu kont:
# Authorization URLhttps://login.mailchimp.com/oauth2/authorize? response_type=code& client_id={client_id}& redirect_uri={redirect_uri}
# Token exchangecurl -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}"Centrum danych
Zawsze wyodrębniaj centrum danych z klucza API lub endpointu metadanych OAuth. Użycie złego centrum danych spowoduje błędy uwierzytelniania.
Konfiguracja
Podstawowa konfiguracja
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": 42Mapowanie pól
Mapuj pola scalające Mailchimp na atrybuty kontaktów Brevo:
Domyślne mapowania
| Parameter | Type | Description |
|---|---|---|
email_address required | string | E-mail subskrybenta (unikalny identyfikator) |
FNAME optional | string | Pole scalające imienia, mapuje na FIRSTNAME |
LNAME optional | string | Pole scalające nazwiska, mapuje na LASTNAME |
PHONE optional | string | Pole scalające telefonu, mapuje na SMS |
status optional | string | Status subskrypcji (subscribed, unsubscribed, cleaned, pending) |
tags optional | array | Tagi subskrybenta do segmentacji |
stats.avg_open_rate optional | number | Średni wskaźnik otwarć e-maili |
stats.avg_click_rate optional | number | Średni wskaźnik kliknięć e-maili |
Niestandardowe mapowanie pól scalających
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_TYPEEndpointy API
Odbiorcy (Listy)
| Metoda | Endpoint | Opis |
|---|---|---|
GET | /3.0/lists | Lista wszystkich odbiorców |
GET | /3.0/lists/{list_id} | Szczegóły odbiorcy |
GET | /3.0/lists/{list_id}/members | Lista członków odbiorcy |
POST | /3.0/lists/{list_id}/members | Dodaj członka |
PUT | /3.0/lists/{list_id}/members/{hash} | Zaktualizuj członka |
POST | /3.0/lists/{list_id} | Zbiorowa subskrypcja/rezygnacja |
Kampanie
| Metoda | Endpoint | Opis |
|---|---|---|
GET | /3.0/campaigns | Lista kampanii |
GET | /3.0/campaigns/{id} | Szczegóły kampanii |
GET | /3.0/reports/{id} | Raport kampanii |
GET | /3.0/reports/{id}/email-activity | Aktywność e-mailowa |
Automatyzacje
| Metoda | Endpoint | Opis |
|---|---|---|
GET | /3.0/automations | Lista automatyzacji |
GET | /3.0/automations/{id} | Szczegóły automatyzacji |
GET | /3.0/automations/{id}/emails | Lista e-maili automatyzacji |
E-commerce
| Metoda | Endpoint | Opis |
|---|---|---|
GET | /3.0/ecommerce/stores | Lista podłączonych sklepów |
GET | /3.0/ecommerce/stores/{id}/customers | Lista klientów sklepu |
GET | /3.0/ecommerce/stores/{id}/orders | Lista zamówień sklepu |
GET | /3.0/ecommerce/stores/{id}/products | Lista produktów sklepu |
Zdarzenia
Zdarzenia kampanii
| Zdarzenie | Wyzwalacz | Przypadek użycia |
|---|---|---|
campaign.sent | Kampania dostarczona | Śledzenie wydajności |
campaign.opened | E-mail otwarty | Scoring zaangażowania |
campaign.clicked | Link kliknięty | Śledzenie zainteresowania |
campaign.bounced | E-mail odrzucony | Higiena listy |
Zdarzenia subskrybentów
| Zdarzenie | Wyzwalacz | Przypadek użycia |
|---|---|---|
subscribe | Dodano nowego subskrybenta | Przepływ powitalny |
unsubscribe | Subskrybent zrezygnował | Zarządzanie preferencjami |
profile | Profil zaktualizowany | Synchronizacja atrybutów |
cleaned | E-mail wyczyszczony (odrzucony) | Utrzymanie listy |
Zdarzenia e-commerce
| Zdarzenie | Wyzwalacz | Przypadek użycia |
|---|---|---|
ecommerce.order | Złożono zamówienie | Przepływ po zakupie |
ecommerce.cart | Koszyk zaktualizowany | Odzyskiwanie porzuconego koszyka |
Przykłady kodu
Inicjalizacja konektora
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Mailchimpawait tajo.connectors.connect('mailchimp', { apiKey: process.env.MAILCHIMP_API_KEY});Migruj odbiorców do Brevo
// Full audience migration from Mailchimp to Brevoawait tajo.connectors.sync('mailchimp', { type: 'full', resources: ['audiences', 'campaigns', 'ecommerce'], options: { preserveTags: true, migrateSegments: true, includeUnsubscribed: false }});
// Check migration statusconst status = await tajo.connectors.status('mailchimp');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsMigrated: 52000,// campaignsSynced: 245,// segmentsMapped: 18// }Synchronizuj dane zaangażowania kampanii
// Sync campaign performance to Brevo attributesawait tajo.connectors.sync('mailchimp', { type: 'incremental', resources: ['campaigns'], options: { syncEngagement: true, updateContactMetrics: true, since: '2024-01-01' }});Limity API
Limity szybkości Mailchimp Marketing API:
| Typ | Limit | Szczegóły |
|---|---|---|
| Standard | 10 jednoczesnych żądań | Na klucz API |
| Operacje wsadowe | 500 operacji na partię | Na żądanie |
| Limit eksportu | 1 jednoczesny eksport | Na konto |
| Transakcyjny | 25 żądań/sekundę | Na klucz API |
Strategia limitów szybkości
Mailchimp ogranicza jednoczesne połączenia, nie żądania na sekundę. Używaj endpointów zbiorczych i wdrożyj logikę ponownych prób z wykładniczym wycofaniem na odpowiedzi 429.
Rozwiązywanie problemów
Typowe problemy
| Problem | Przyczyna | Rozwiązanie |
|---|---|---|
| 401 Unauthorized | Nieprawidłowy klucz API lub złe centrum danych | Zweryfikuj klucz API i wyodrębnij prawidłowy prefiks dc |
| Członek istnieje | E-mail już w odbiorcy | Używaj PUT zamiast POST do aktualizacji istniejących członków |
| Stan zgodności | Usunięcie RODO uniemożliwia ponowne dodanie | Kontakt musi ponownie zapisać się przez formularz subskrypcji |
| Timeout partii | Duża operacja wsadowa | Podziel na mniejsze partie po 500 operacji |
| Brakujące pola scalające | Niestandardowe pola nie utworzone | Utwórz pola scalające w Mailchimp przed mapowaniem |
Tryb debug
Włącz szczegółowe logowanie:
connectors: mailchimp: debug: true log_level: verbose log_api_calls: trueTest połączenia
tajo connectors test mailchimp# ✓ API connection successful# ✓ Audiences readable# ✓ Campaigns readable# ✓ E-commerce data accessible# ✓ Webhook configuredNajlepsze praktyki
- Używaj operacji wsadowych - Używaj zbiorczej subskrypcji/rezygnacji dla zbiorczych aktualizacji
- Zachowaj status subskrybenta - Szanuj zgodę na subskrypcję podczas migracji
- Najpierw mapuj pola scalające - Utwórz odpowiednie atrybuty Brevo przed synchronizacją
- Synchronizuj dane zaangażowania - Importuj wskaźniki otwarć/kliknięć dla historycznej segmentacji
- Obsługuj stany zgodności - Szanuj stany RODO i trwałego usunięcia
- Używaj synchronizacji przyrostowej - Synchronizuj tylko zmiany od ostatniej synchronizacji, aby zmniejszyć zużycie API
Bezpieczeństwo
- Uwierzytelnianie kluczem API - Klucz sekretny przekazywany jako hasło HTTP Basic Auth
- OAuth 2.0 - Autoryzacja oparta na tokenach dla dostępu do wielu kont
- Szyfrowanie TLS - Cała komunikacja API szyfrowana przez HTTPS
- Weryfikacja webhooków - Waliduj źródło webhooka ze wspólnym sekretem
- Izolacja centrum danych - Dane przechowywane w regionalno-specyficznych centrach danych