Conector Mailchimp
Conectați contul Mailchimp la Brevo prin Tajo pentru migrarea fără probleme a audiențelor, sincronizarea datelor de campanie și automatizarea unificată a marketingului pe ambele platforme.
Prezentare generală
| Proprietate | Valoare |
|---|---|
| Platformă | Mailchimp |
| Categorie | Marketing |
| Complexitate configurare | Ușoară |
| Integrare oficială | Da |
| Date sincronizate | Contacte, Campanii, Automatizări, Evenimente |
| URL de bază API | https://{dc}.api.mailchimp.com/3.0 |
Funcționalități
- Sincronizare audiențe - Migrați și sincronizați audiențele Mailchimp cu listele de contacte Brevo
- Date campanii - Sincronizați datele de performanță ale campaniei pentru raportare unificată
- Migrare automatizări - Mapați automatizările Mailchimp la fluxurile de lucru Brevo
- Metrici de implicare - Sincronizați datele de deschideri, clicuri și respingeri la atributele Brevo
- Mapare segmente - Replicați segmentele Mailchimp ca liste sau segmente Brevo
- Date e-commerce - Sincronizați datele de magazin, produs și comandă din e-commerce Mailchimp
- Sincronizare etichete - Mapați etichetele Mailchimp la atributele de contact sau listele Brevo
- Migrare șabloane - Exportați șabloanele Mailchimp pentru utilizare în campaniile Brevo
Cerințe preliminare
Înainte de a începe, asigurați-vă că aveți:
- Un cont Mailchimp (Free, Essentials, Standard sau Premium)
- O cheie API Mailchimp sau o aplicație OAuth
- Un cont Brevo cu acces API
- Un cont Tajo
Autentificare
Autentificare cu cheie API
Generați o cheie API din Mailchimp Account > Extras > API Keys.
curl https://{dc}.api.mailchimp.com/3.0/ping \ --user "anystring:{api_key}" \ -H "Content-Type: application/json"Prefixul {dc} al centrului de date este ultima parte a cheii API (ex: us21).
OAuth 2.0
Pentru integrări cu mai multe conturi:
# 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}"Centru de date
Extrageți întotdeauna centrul de date din cheia API sau din punctul final de metadate OAuth. Utilizarea centrului de date greșit va duce la eșecuri de autentificare.
Configurare
Configurare de bază
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": 42Mapare câmpuri
Mapați câmpurile de fuzionare Mailchimp la atributele de contact Brevo:
Mapări implicite
| Parameter | Type | Description |
|---|---|---|
email_address required | string | E-mailul abonatului (identificator unic) |
FNAME optional | string | Câmp de fuzionare prenume, mapează la FIRSTNAME |
LNAME optional | string | Câmp de fuzionare nume, mapează la LASTNAME |
PHONE optional | string | Câmp de fuzionare telefon, mapează la SMS |
status optional | string | Statusul abonamentului (subscribed, unsubscribed, cleaned, pending) |
tags optional | array | Etichetele abonatului pentru segmentare |
stats.avg_open_rate optional | number | Rata medie de deschidere a e-mailului |
stats.avg_click_rate optional | number | Rata medie de clic pe e-mail |
Mapare câmpuri de fuzionare personalizate
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_TYPEPuncte finale API
Audiențe (Liste)
| Metodă | Punct final | Descriere |
|---|---|---|
GET | /3.0/lists | Listează toate audiențele |
GET | /3.0/lists/{list_id} | Obține detalii audiență |
GET | /3.0/lists/{list_id}/members | Listează membrii audiențelor |
POST | /3.0/lists/{list_id}/members | Adaugă un membru |
PUT | /3.0/lists/{list_id}/members/{hash} | Actualizează un membru |
POST | /3.0/lists/{list_id} | Abonare/dezabonare în lot |
Campanii
| Metodă | Punct final | Descriere |
|---|---|---|
GET | /3.0/campaigns | Listează campaniile |
GET | /3.0/campaigns/{id} | Obține detalii campanie |
GET | /3.0/reports/{id} | Obține raportul campaniei |
GET | /3.0/reports/{id}/email-activity | Obține activitatea e-mail |
Automatizări
| Metodă | Punct final | Descriere |
|---|---|---|
GET | /3.0/automations | Listează automatizările |
GET | /3.0/automations/{id} | Obține detalii automatizare |
GET | /3.0/automations/{id}/emails | Listează e-mailurile automatizării |
E-commerce
| Metodă | Punct final | Descriere |
|---|---|---|
GET | /3.0/ecommerce/stores | Listează magazinele conectate |
GET | /3.0/ecommerce/stores/{id}/customers | Listează clienții magazinului |
GET | /3.0/ecommerce/stores/{id}/orders | Listează comenzile magazinului |
GET | /3.0/ecommerce/stores/{id}/products | Listează produsele magazinului |
Evenimente
Evenimente campanii
| Eveniment | Declanșator | Caz de utilizare |
|---|---|---|
campaign.sent | Campanie livrată | Urmărire performanță |
campaign.opened | E-mail deschis | Scorare implicare |
campaign.clicked | Link accesat | Urmărire interes |
campaign.bounced | E-mail respins | Igienă listă |
Evenimente abonați
| Eveniment | Declanșator | Caz de utilizare |
|---|---|---|
subscribe | Abonat nou adăugat | Flux de bun venit |
unsubscribe | Abonat dezabonat | Gestionare preferințe |
profile | Profil actualizat | Sincronizare atribute |
cleaned | E-mail curățat (respins) | Întreținere listă |
Evenimente e-commerce
| Eveniment | Declanșator | Caz de utilizare |
|---|---|---|
ecommerce.order | Comandă plasată | Flux post-cumpărare |
ecommerce.cart | Coș actualizat | Recuperare coș abandonat |
Exemple de cod
Inițializare conector
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});Migrare audiențe la 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// }Sincronizare date implicare campanii
// Sync campaign performance to Brevo attributesawait tajo.connectors.sync('mailchimp', { type: 'incremental', resources: ['campaigns'], options: { syncEngagement: true, updateContactMetrics: true, since: '2024-01-01' }});Limite de rată
Limite de rată API Marketing Mailchimp:
| Tip | Limită | Detalii |
|---|---|---|
| Standard | 10 cereri concurente | Per cheie API |
| Operații în lot | 500 operații per lot | Per cerere |
| Limită export | 1 export concurent | Per cont |
| Tranzacțional | 25 cereri/secundă | Per cheie API |
Strategie limite de rată
Mailchimp limitează conexiunile concurente mai degrabă decât cererile per secundă. Utilizați punctele finale batch și implementați logică de reîncercare cu backoff exponențial la răspunsurile 429.
Depanare
Probleme frecvente
| Problemă | Cauză | Soluție |
|---|---|---|
| 401 Neautorizat | Cheie API invalidă sau centru de date greșit | Verificați cheia API și extrageți prefixul dc corect |
| Membrul există | E-mail deja în audiență | Utilizați PUT în loc de POST pentru a actualiza membrii existenți |
| Stare conformitate | Ștergerea GDPR împiedică re-adăugarea | Contactul trebuie să se re-aboneze printr-un formular de înscriere |
| Timeout lot | Operație mare în lot | Împărțiți în loturi mai mici de 500 operații |
| Câmpuri de fuzionare lipsă | Câmpuri personalizate necreat | Creați câmpurile de fuzionare în Mailchimp înainte de mapare |
Modul de depanare
Activați jurnalizarea verbosă:
connectors: mailchimp: debug: true log_level: verbose log_api_calls: trueTestare conexiune
tajo connectors test mailchimp# ✓ API connection successful# ✓ Audiences readable# ✓ Campaigns readable# ✓ E-commerce data accessible# ✓ Webhook configuredBune practici
- Utilizați operații în lot - Utilizați abonare/dezabonare în lot pentru actualizări în bloc
- Păstrați statusul abonaților - Respectați consimțământul de abonare în timpul migrării
- Mapați câmpurile de fuzionare mai întâi - Creați atributele Brevo corespunzătoare înainte de sincronizare
- Sincronizați datele de implicare - Importați ratele de deschidere/clic pentru segmentarea istorică
- Gestionați stările de conformitate - Respectați stările de ștergere GDPR și permanente
- Utilizați sincronizarea incrementală - Sincronizați doar modificările de la ultima sincronizare pentru a reduce utilizarea API
Securitate
- Autentificare cu cheie API - Cheie secretă transmisă ca parolă HTTP Basic Auth
- OAuth 2.0 - Autorizare bazată pe token pentru acces multi-cont
- Criptare TLS - Toate comunicațiile API criptate prin HTTPS
- Verificare webhook - Validați sursa webhook cu secretul partajat
- Izolare centru de date - Date stocate în centre de date specifice regiunii