Connettore Mailchimp

Collega il tuo account Mailchimp a Brevo tramite Tajo per una migrazione fluida delle audience, sincronizzazione dei dati delle campagne e marketing automation unificata tra entrambe le piattaforme.

Panoramica

ProprietàValore
PiattaformaMailchimp
CategoriaMarketing
Complessità di setupFacile
Integrazione ufficiale
Dati sincronizzatiContatti, Campagne, Automazioni, Eventi
API Base URLhttps://{dc}.api.mailchimp.com/3.0

Funzionalità

  • Sync delle audience - Migra e sincronizza le audience Mailchimp con le liste contatti Brevo
  • Dati di campagna - Sincronizza i dati di performance delle campagne per una reportistica unificata
  • Migrazione automazioni - Mappa le automazioni Mailchimp ai workflow Brevo
  • Metriche di engagement - Sincronizza dati di aperture, click e bounce agli attributi Brevo
  • Mappatura dei segmenti - Replica i segmenti Mailchimp come liste o segmenti Brevo
  • Dati e-commerce - Sincronizza dati di store, prodotti e ordini dall’e-commerce Mailchimp
  • Sync dei tag - Mappa i tag Mailchimp agli attributi o liste contatti Brevo
  • Migrazione template - Esporta i template Mailchimp per l’uso nelle campagne Brevo

Prerequisiti

Prima di iniziare, assicurati di avere:

  1. Un account Mailchimp (Free, Essentials, Standard o Premium)
  2. Una chiave API Mailchimp o un’app OAuth
  3. Un account Brevo con accesso API
  4. Un account Tajo

Autenticazione

Autenticazione con chiave API

Genera una chiave API da 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"

Il prefisso del data center {dc} è l’ultima parte della tua chiave API (es. us21).

OAuth 2.0

Per integrazioni multi-account:

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

Data center

Estrai sempre il data center dalla tua chiave API o dall’endpoint dei metadati OAuth. L’uso del data center sbagliato comporterà fallimenti di autenticazione.

Configurazione

Setup di base

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

Mappatura dei campi

Mappa i merge field Mailchimp agli attributi di contatto Brevo:

Mappature predefinite

Parameter Type Description
email_address required
string

Email dell'iscritto (identificatore univoco)

FNAME optional
string

Merge field nome, mappato a FIRSTNAME

LNAME optional
string

Merge field cognome, mappato a LASTNAME

PHONE optional
string

Merge field telefono, mappato a SMS

status optional
string

Stato iscrizione (subscribed, unsubscribed, cleaned, pending)

tags optional
array

Tag dell'iscritto per la segmentazione

stats.avg_open_rate optional
number

Tasso medio di apertura email

stats.avg_click_rate optional
number

Tasso medio di click email

Mappatura dei merge field personalizzati

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

Endpoint API

Audience (Liste)

MetodoEndpointDescrizione
GET/3.0/listsElenca tutte le audience
GET/3.0/lists/{list_id}Ottieni i dettagli di un’audience
GET/3.0/lists/{list_id}/membersElenca i membri di un’audience
POST/3.0/lists/{list_id}/membersAggiungi un membro
PUT/3.0/lists/{list_id}/members/{hash}Aggiorna un membro
POST/3.0/lists/{list_id}Iscrivi/disiscrivi in batch

Campagne

MetodoEndpointDescrizione
GET/3.0/campaignsElenca le campagne
GET/3.0/campaigns/{id}Ottieni i dettagli di una campagna
GET/3.0/reports/{id}Ottieni il report di una campagna
GET/3.0/reports/{id}/email-activityOttieni l’attività email

Automazioni

MetodoEndpointDescrizione
GET/3.0/automationsElenca le automazioni
GET/3.0/automations/{id}Ottieni i dettagli di un’automazione
GET/3.0/automations/{id}/emailsElenca le email di un’automazione

E-commerce

MetodoEndpointDescrizione
GET/3.0/ecommerce/storesElenca gli store collegati
GET/3.0/ecommerce/stores/{id}/customersElenca i clienti dello store
GET/3.0/ecommerce/stores/{id}/ordersElenca gli ordini dello store
GET/3.0/ecommerce/stores/{id}/productsElenca i prodotti dello store

Eventi

Eventi di campagna

EventoTriggerCaso d’uso
campaign.sentCampagna recapitataTracciamento performance
campaign.openedEmail apertaEngagement scoring
campaign.clickedLink cliccatoTracciamento interesse
campaign.bouncedEmail respintaIgiene della lista

Eventi iscritto

EventoTriggerCaso d’uso
subscribeNuovo iscritto aggiuntoFlusso di benvenuto
unsubscribeIscritto opt-outGestione preferenze
profileProfilo aggiornatoSync attributi
cleanedEmail pulita (bounce)Manutenzione lista

Eventi e-commerce

EventoTriggerCaso d’uso
ecommerce.orderOrdine effettuatoFlusso post-acquisto
ecommerce.cartCarrello aggiornatoRecupero carrello abbandonato

Esempi di codice

Inizializza il connettore

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
});

Migra le audience su 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
// }

Sincronizza i dati di engagement delle campagne

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

Limiti di velocità

Limiti di velocità della Mailchimp Marketing API:

TipoLimiteDettagli
Standard10 richieste concorrentiPer chiave API
Operazioni batch500 operazioni per batchPer richiesta
Limite esportazione1 esportazione concorrentePer account
Transazionale25 richieste/secondoPer chiave API

Strategia limite di velocità

Mailchimp limita le connessioni concorrenti piuttosto che le richieste al secondo. Usa endpoint batch e implementa la logica di retry con backoff esponenziale sulle risposte 429.

Risoluzione dei problemi

Problemi comuni

ProblemaCausaSoluzione
401 UnauthorizedChiave API non valida o data center erratoVerifica chiave API ed estrai il prefisso dc corretto
Membro esistenteEmail già nell’audienceUsa PUT invece di POST per aggiornare i membri esistenti
Stato di complianceL’eliminazione GDPR impedisce la riaggiuntaIl contatto deve riscriversi tramite un signup form
Timeout batchOperazione batch grandeSuddividi in batch più piccoli di 500 operazioni
Merge field mancantiCampi personalizzati non creatiCrea i merge field in Mailchimp prima della mappatura

Modalità debug

Abilita il logging dettagliato:

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

Testa la connessione

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

Best practice

  1. Usa le operazioni batch - Usa subscribe/unsubscribe in batch per aggiornamenti in blocco
  2. Preserva lo stato dell’iscritto - Rispetta il consenso all’iscrizione durante la migrazione
  3. Mappa prima i merge field - Crea gli attributi Brevo corrispondenti prima della sync
  4. Sincronizza i dati di engagement - Importa i tassi di apertura/click per la segmentazione storica
  5. Gestisci gli stati di compliance - Rispetta gli stati GDPR e di eliminazione permanente
  6. Usa la sync incrementale - Sincronizza solo le modifiche dall’ultima sync per ridurre l’uso dell’API

Sicurezza

  • Autenticazione con chiave API - Chiave segreta passata come password HTTP Basic Auth
  • OAuth 2.0 - Autorizzazione basata su token per accesso multi-account
  • Cifratura TLS - Tutte le comunicazioni API cifrate via HTTPS
  • Verifica webhook - Convalida l’origine del webhook con un secret condiviso
  • Isolamento data center - Dati conservati in data center specifici per regione

Risorse correlate

Subscribe to updates

developer-docs

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

auto-detect
Assistente AI

Ciao! Chiedimi qualsiasi cosa sulla documentazione.