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ść
PlatformaMailchimp
KategoriaMarketing
Poziom konfiguracjiŁatwy
Integracja oficjalnaTak
Synchronizowane daneKontakty, Kampanie, Automatyzacje, Zdarzenia
Bazowy URL APIhttps://{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:

  1. Konto Mailchimp (Free, Essentials, Standard lub Premium)
  2. Klucz API Mailchimp lub aplikację OAuth
  3. Konto Brevo z dostępem do API
  4. Konto Tajo

Uwierzytelnianie

Uwierzytelnianie kluczem API

Wygeneruj klucz API z Mailchimp Account > Extras > API Keys.

Terminal window
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:

Terminal window
# 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}"

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": 42

Mapowanie 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_TYPE

Endpointy API

Odbiorcy (Listy)

MetodaEndpointOpis
GET/3.0/listsLista wszystkich odbiorców
GET/3.0/lists/{list_id}Szczegóły odbiorcy
GET/3.0/lists/{list_id}/membersLista członków odbiorcy
POST/3.0/lists/{list_id}/membersDodaj członka
PUT/3.0/lists/{list_id}/members/{hash}Zaktualizuj członka
POST/3.0/lists/{list_id}Zbiorowa subskrypcja/rezygnacja

Kampanie

MetodaEndpointOpis
GET/3.0/campaignsLista kampanii
GET/3.0/campaigns/{id}Szczegóły kampanii
GET/3.0/reports/{id}Raport kampanii
GET/3.0/reports/{id}/email-activityAktywność e-mailowa

Automatyzacje

MetodaEndpointOpis
GET/3.0/automationsLista automatyzacji
GET/3.0/automations/{id}Szczegóły automatyzacji
GET/3.0/automations/{id}/emailsLista e-maili automatyzacji

E-commerce

MetodaEndpointOpis
GET/3.0/ecommerce/storesLista podłączonych sklepów
GET/3.0/ecommerce/stores/{id}/customersLista klientów sklepu
GET/3.0/ecommerce/stores/{id}/ordersLista zamówień sklepu
GET/3.0/ecommerce/stores/{id}/productsLista produktów sklepu

Zdarzenia

Zdarzenia kampanii

ZdarzenieWyzwalaczPrzypadek użycia
campaign.sentKampania dostarczonaŚledzenie wydajności
campaign.openedE-mail otwartyScoring zaangażowania
campaign.clickedLink klikniętyŚledzenie zainteresowania
campaign.bouncedE-mail odrzuconyHigiena listy

Zdarzenia subskrybentów

ZdarzenieWyzwalaczPrzypadek użycia
subscribeDodano nowego subskrybentaPrzepływ powitalny
unsubscribeSubskrybent zrezygnowałZarządzanie preferencjami
profileProfil zaktualizowanySynchronizacja atrybutów
cleanedE-mail wyczyszczony (odrzucony)Utrzymanie listy

Zdarzenia e-commerce

ZdarzenieWyzwalaczPrzypadek użycia
ecommerce.orderZłożono zamówieniePrzepływ po zakupie
ecommerce.cartKoszyk zaktualizowanyOdzyskiwanie 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 Mailchimp
await tajo.connectors.connect('mailchimp', {
apiKey: process.env.MAILCHIMP_API_KEY
});

Migruj odbiorców do Brevo

// 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
// }

Synchronizuj dane zaangażowania kampanii

// Sync campaign performance to Brevo attributes
await 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:

TypLimitSzczegóły
Standard10 jednoczesnych żądańNa klucz API
Operacje wsadowe500 operacji na partięNa żądanie
Limit eksportu1 jednoczesny eksportNa konto
Transakcyjny25 żą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

ProblemPrzyczynaRozwiązanie
401 UnauthorizedNieprawidłowy klucz API lub złe centrum danychZweryfikuj klucz API i wyodrębnij prawidłowy prefiks dc
Członek istniejeE-mail już w odbiorcyUżywaj PUT zamiast POST do aktualizacji istniejących członków
Stan zgodnościUsunięcie RODO uniemożliwia ponowne dodanieKontakt musi ponownie zapisać się przez formularz subskrypcji
Timeout partiiDuża operacja wsadowaPodziel na mniejsze partie po 500 operacji
Brakujące pola scalająceNiestandardowe pola nie utworzoneUtwó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: true

Test połączenia

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

Najlepsze praktyki

  1. Używaj operacji wsadowych - Używaj zbiorczej subskrypcji/rezygnacji dla zbiorczych aktualizacji
  2. Zachowaj status subskrybenta - Szanuj zgodę na subskrypcję podczas migracji
  3. Najpierw mapuj pola scalające - Utwórz odpowiednie atrybuty Brevo przed synchronizacją
  4. Synchronizuj dane zaangażowania - Importuj wskaźniki otwarć/kliknięć dla historycznej segmentacji
  5. Obsługuj stany zgodności - Szanuj stany RODO i trwałego usunięcia
  6. 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

Powiązane zasoby

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
Asystent AI

Cześć! Zapytaj mnie o dokumentację.