Connecteur Mailchimp

Connectez votre compte Mailchimp à Brevo via Tajo pour une migration fluide des audiences, la synchronisation des données de campagnes, et une automatisation marketing unifiée sur les deux plateformes.

Vue d’ensemble

PropriétéValeur
PlateformeMailchimp
CatégorieMarketing
Complexité de configurationFacile
Intégration officielleOui
Données synchroniséesContacts, Campagnes, Automatisations, Événements
URL de base APIhttps://{dc}.api.mailchimp.com/3.0

Fonctionnalités

  • Synchronisation d’audiences - Migration et synchronisation des audiences Mailchimp avec les listes de contacts Brevo
  • Données de campagnes - Synchronisation des données de performance des campagnes pour un reporting unifié
  • Migration d’automatisations - Mappage des automatisations Mailchimp vers les workflows Brevo
  • Métriques d’engagement - Synchronisation des ouvertures, clics et rebonds vers les attributs Brevo
  • Mappage de segments - Réplication des segments Mailchimp en tant que listes ou segments Brevo
  • Données e-commerce - Synchronisation des données de boutique, produits et commandes depuis Mailchimp e-commerce
  • Synchronisation des tags - Mappage des tags Mailchimp vers les attributs ou listes de contacts Brevo
  • Migration de templates - Export des templates Mailchimp pour utilisation dans les campagnes Brevo

Prérequis

Avant de commencer, assurez-vous d’avoir :

  1. Un compte Mailchimp (Free, Essentials, Standard ou Premium)
  2. Une clé API Mailchimp ou une application OAuth
  3. Un compte Brevo avec accès API
  4. Un compte Tajo

Authentification

Authentification par clé API

Générez une clé API depuis 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"

Le préfixe de data center {dc} est la dernière partie de votre clé API (ex. us21).

OAuth 2.0

Pour les intégrations multi-comptes :

Terminal window
# URL d'autorisation
https://login.mailchimp.com/oauth2/authorize?
response_type=code&
client_id={client_id}&
redirect_uri={redirect_uri}
# Échange de jeton
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

Extrayez toujours le data center de votre clé API ou de l’endpoint de métadonnées OAuth. L’utilisation du mauvais data center entraînera des échecs d’authentification.

Configuration

Configuration de base

connectors:
mailchimp:
enabled: true
api_key: "${MAILCHIMP_API_KEY}"
data_center: "us21"
# Options de synchronisation des données
sync:
audiences: true
campaigns: true
automations: true
ecommerce: true
# Mappage audience vers liste Brevo
audience_mapping:
"Main Audience": 40
"Newsletter": 41
"Customers": 42

Mappage de champs

Mappez les merge fields Mailchimp aux attributs de contact Brevo :

Mappages par défaut

Parameter Type Description
email_address required
string

Email de l'abonné (identifiant unique)

FNAME optional
string

Merge field prénom, mappé vers FIRSTNAME

LNAME optional
string

Merge field nom, mappé vers LASTNAME

PHONE optional
string

Merge field téléphone, mappé vers SMS

status optional
string

Statut d'abonnement (subscribed, unsubscribed, cleaned, pending)

tags optional
array

Tags de l'abonné pour la segmentation

stats.avg_open_rate optional
number

Taux d'ouverture email moyen

stats.avg_click_rate optional
number

Taux de clic email moyen

Mappage personnalisé des merge fields

field_mapping:
# Champs standards
email_address: email
FNAME: FIRSTNAME
LNAME: LASTNAME
PHONE: SMS
# Métriques d'engagement
stats.avg_open_rate: AVG_OPEN_RATE
stats.avg_click_rate: AVG_CLICK_RATE
member_rating: ENGAGEMENT_SCORE
# Champs e-commerce
ecommerce_data.total_revenue: TOTAL_REVENUE
ecommerce_data.number_of_orders: ORDER_COUNT
# Merge fields personnalisés
MMERGE5: COMPANY_NAME
MMERGE6: CUSTOMER_TYPE

Endpoints API

Audiences (Listes)

MéthodeEndpointDescription
GET/3.0/listsLister toutes les audiences
GET/3.0/lists/{list_id}Obtenir les détails d’une audience
GET/3.0/lists/{list_id}/membersLister les membres de l’audience
POST/3.0/lists/{list_id}/membersAjouter un membre
PUT/3.0/lists/{list_id}/members/{hash}Mettre à jour un membre
POST/3.0/lists/{list_id}Abonnement/désabonnement en batch

Campagnes

MéthodeEndpointDescription
GET/3.0/campaignsLister les campagnes
GET/3.0/campaigns/{id}Obtenir les détails d’une campagne
GET/3.0/reports/{id}Obtenir le rapport de campagne
GET/3.0/reports/{id}/email-activityObtenir l’activité email

Automatisations

MéthodeEndpointDescription
GET/3.0/automationsLister les automatisations
GET/3.0/automations/{id}Obtenir les détails d’une automatisation
GET/3.0/automations/{id}/emailsLister les emails d’automatisation

E-commerce

MéthodeEndpointDescription
GET/3.0/ecommerce/storesLister les boutiques connectées
GET/3.0/ecommerce/stores/{id}/customersLister les clients de la boutique
GET/3.0/ecommerce/stores/{id}/ordersLister les commandes de la boutique
GET/3.0/ecommerce/stores/{id}/productsLister les produits de la boutique

Événements

Événements de campagne

ÉvénementDéclencheurCas d’usage
campaign.sentCampagne livréeSuivi de performance
campaign.openedEmail ouvertScoring d’engagement
campaign.clickedLien cliquéSuivi d’intérêt
campaign.bouncedEmail rejetéHygiène de liste

Événements d’abonné

ÉvénementDéclencheurCas d’usage
subscribeNouvel abonné ajoutéFlow de bienvenue
unsubscribeAbonné désinscritGestion des préférences
profileProfil mis à jourSynchronisation d’attributs
cleanedEmail nettoyé (rejeté)Maintenance de liste

Événements e-commerce

ÉvénementDéclencheurCas d’usage
ecommerce.orderCommande passéeFlow post-achat
ecommerce.cartPanier mis à jourRécupération de panier abandonné

Exemples de code

Initialiser le connecteur

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connecter Mailchimp
await tajo.connectors.connect('mailchimp', {
apiKey: process.env.MAILCHIMP_API_KEY
});

Migrer les audiences vers Brevo

// Migration complète d'audience de Mailchimp vers Brevo
await tajo.connectors.sync('mailchimp', {
type: 'full',
resources: ['audiences', 'campaigns', 'ecommerce'],
options: {
preserveTags: true,
migrateSegments: true,
includeUnsubscribed: false
}
});
// Vérifier le statut de migration
const status = await tajo.connectors.status('mailchimp');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsMigrated: 52000,
// campaignsSynced: 245,
// segmentsMapped: 18
// }

Synchroniser les données d’engagement des campagnes

// Synchroniser la performance des campagnes vers les attributs Brevo
await tajo.connectors.sync('mailchimp', {
type: 'incremental',
resources: ['campaigns'],
options: {
syncEngagement: true,
updateContactMetrics: true,
since: '2024-01-01'
}
});

Limites de taux

Limites de taux de l’API Marketing Mailchimp :

TypeLimiteDétails
Standard10 requêtes concurrentesPar clé API
Opérations batch500 opérations par batchPar requête
Limite d’export1 export concurrentPar compte
Transactionnel25 requêtes/secondePar clé API

Stratégie de limite de taux

Mailchimp limite les connexions concurrentes plutôt que les requêtes par seconde. Utilisez les endpoints batch et implémentez une logique de retry avec backoff exponentiel sur les réponses 429.

Dépannage

Problèmes courants

ProblèmeCauseSolution
401 UnauthorizedClé API invalide ou mauvais data centerVérifiez la clé API et extrayez le bon préfixe dc
Membre existeEmail déjà dans l’audienceUtilisez PUT au lieu de POST pour mettre à jour les membres existants
État de conformitéLa suppression RGPD empêche le ré-ajoutLe contact doit se réabonner via un formulaire d’inscription
Timeout de batchOpération batch volumineuseDivisez en plus petits batchs de 500 opérations
Merge fields manquantsChamps personnalisés non créésCréez les merge fields dans Mailchimp avant le mappage

Mode debug

Activer la journalisation détaillée :

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

Tester la connexion

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

Bonnes pratiques

  1. Utilisez les opérations batch - Utilisez l’abonnement/désabonnement en batch pour les mises à jour en masse
  2. Préservez le statut d’abonné - Respectez le consentement d’abonnement pendant la migration
  3. Mappez les merge fields en premier - Créez les attributs Brevo correspondants avant la synchronisation
  4. Synchronisez les données d’engagement - Importez les taux d’ouverture/clic pour la segmentation historique
  5. Gérez les états de conformité - Respectez le RGPD et les états de suppression permanente
  6. Utilisez la synchronisation incrémentielle - Synchronisez uniquement les changements depuis la dernière synchronisation pour réduire l’utilisation API

Sécurité

  • Authentification par clé API - Clé secrète transmise comme mot de passe HTTP Basic Auth
  • OAuth 2.0 - Autorisation par jetons pour l’accès multi-comptes
  • Chiffrement TLS - Toutes les communications API chiffrées via HTTPS
  • Vérification de webhook - Validation de la source des webhooks avec un secret partagé
  • Isolation des data centers - Données stockées dans des data centers spécifiques à la région

Ressources liées

Subscribe to updates

developer-docs

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

auto-detect
Assistant AI

Bonjour ! Posez-moi vos questions sur la documentation.