ActiveCampaign-connector

Verbind je ActiveCampaign-account met Brevo via Tajo voor uitgebreide contactmigratie, deal-pipelinesynchronisatie, automation-mapping en uniforme marketingdata over beide platforms.

Overzicht

EigenschapWaarde
PlatformActiveCampaign
CategorieMarketing
SetupcomplexiteitGemiddeld
Officiële integratieJa
Gesynchroniseerde dataContacten, Deals, Automatiseringen, Events
API base URLhttps://{account}.api-us1.com/api/3

Functies

  • Contactmigratie - Migreer contacten met custom velden, tags en lijstlidmaatschappen
  • Deal-pipelinesync - Synchroniseer deal-stages, -waarden en -eigenaren voor omzettracking
  • Automation-mapping - Koppel ActiveCampaign-automatiseringen aan Brevo-workflowtriggers
  • Event-tracking - Synchroniseer site tracking en custom events voor gedragsgerichte segmentatie
  • Lijst- en tagsync - Repliceer lijststructuren en tag-gebaseerde segmenten in Brevo
  • E-commerce-integratie - Synchroniseer Deep Data (bestellingen, klanten, winkelwagens) naar Brevo
  • Custom object-sync - Koppel ActiveCampaign-customobjects aan Brevo-attributen
  • Scoresync - Breng lead- en contactscores over naar Brevo-attributen

Vereisten

Voordat je begint, zorg dat je beschikt over:

  1. Een ActiveCampaign-account (Lite, Plus, Professional of Enterprise)
  2. API-URL en API-sleutel uit Settings > Developer
  3. Een Brevo-account met API-toegang
  4. Een Tajo-account

Authenticatie

API-sleutel-authenticatie

ActiveCampaign gebruikt een API-sleutel die als header of query-parameter wordt meegegeven.

Terminal window
curl "https://{account}.api-us1.com/api/3/contacts" \
-H "Api-Token: YOUR_API_KEY" \
-H "Content-Type: application/json"

Je API-URL en -sleutel vind je in ActiveCampaign Settings > Developer.

API-URL

Je API-URL is uniek voor je account (bijv. https://yourcompany.api-us1.com). Gebruik altijd deze URL, niet de dashboard-URL.

Configuratie

Basisopzet

connectors:
activecampaign:
enabled: true
api_url: "https://yourcompany.api-us1.com"
api_key: "${AC_API_KEY}"
# Data sync options
sync:
contacts: true
deals: true
automations: true
events: true
ecommerce: true
# List mapping to Brevo
list_mapping:
"Main List": 50
"Newsletter": 51
"Customers": 52

Veldmapping

Koppel ActiveCampaign-velden aan Brevo-contactattributen:

Standaard-mappings

Parameter Type Description
email required
string

E-mailadres contact (unieke identifier)

firstName optional
string

Koppelt aan FIRSTNAME-attribuut

lastName optional
string

Koppelt aan LASTNAME-attribuut

phone optional
string

Koppelt aan SMS-attribuut

tags optional
array

Contact-tags voor segmentatie

score optional
integer

Engagementscore van het contact

deals optional
array

Gekoppelde deal-records

fieldValues optional
array

Waarden van custom velden

Custom veldmapping

field_mapping:
# Standard fields
email: email
firstName: FIRSTNAME
lastName: LASTNAME
phone: SMS
# Engagement fields
score: LEAD_SCORE
rating: ENGAGEMENT_RATING
# Deal fields
deals.value: DEAL_VALUE
deals.stage: DEAL_STAGE
deals.owner: DEAL_OWNER
# Custom fields
fieldValues.company: COMPANY_NAME
fieldValues.industry: INDUSTRY
fieldValues.plan_tier: PLAN_TIER

API-endpoints

Contacts

MethodeEndpointBeschrijving
GET/api/3/contactsAlle contacten opvragen
POST/api/3/contactsContact aanmaken
PUT/api/3/contacts/{id}Contact bijwerken
GET/api/3/contacts/{id}Contact ophalen
POST/api/3/contact/syncContact synchroniseren (create or update)
POST/api/3/import/bulk_importBulk import van contacten

Deals

MethodeEndpointBeschrijving
GET/api/3/dealsAlle deals opvragen
POST/api/3/dealsDeal aanmaken
PUT/api/3/deals/{id}Deal bijwerken
GET/api/3/dealStagesAlle deal-stages opvragen
GET/api/3/dealPipelinesAlle pipelines opvragen

Automations

MethodeEndpointBeschrijving
GET/api/3/automationsAutomations opvragen
GET/api/3/automations/{id}Automation ophalen
POST/api/3/contactAutomationsContact aan automation toevoegen

E-commerce (Deep Data)

MethodeEndpointBeschrijving
POST/api/3/ecomOrdersBestelling aanmaken
GET/api/3/ecomOrdersBestellingen opvragen
POST/api/3/ecomCustomersKlant aanmaken
GET/api/3/ecomCustomersKlanten opvragen

Event-tracking

MethodeEndpointBeschrijving
POST/api/3/tracking/eventCustom event tracken
GET/api/3/eventTrackingEventsAlle eventnamen opvragen
POST/api/3/eventTrackingEventsEventnaam aanmaken

Events

Contact-events

EventTriggerUse case
contact_addNieuw contact aangemaaktWelkomstflow
contact_updateContactdata gewijzigdAttribuutsync
contact_tag_addedTag toegewezenSegmentupdate
contact_tag_removedTag verwijderdSegment opschonen

Deal-events

EventTriggerUse case
deal_addNieuwe deal aangemaaktSalesnotificatie
deal_updateDeal-stage gewijzigdPipeline-automatisering
deal_tasktype_addTaak aan deal toegevoegdActiviteitentracking

Automation-events

EventTriggerUse case
automation_contact_addContact in automation gestartFlowtracking
automation_contact_completeContact heeft automation voltooidVolgende-stap-trigger

Codevoorbeelden

Connector initialiseren

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect ActiveCampaign
await tajo.connectors.connect('activecampaign', {
apiUrl: process.env.AC_API_URL,
apiKey: process.env.AC_API_KEY
});

Contacten migreren naar Brevo

// Full contact migration with custom fields and tags
await tajo.connectors.sync('activecampaign', {
type: 'full',
resources: ['contacts', 'deals', 'events'],
options: {
includeTags: true,
includeCustomFields: true,
includeScores: true,
includeListMemberships: true
}
});
// Check sync status
const status = await tajo.connectors.status('activecampaign');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsMigrated: 28000,
// dealsSynced: 4500,
// eventsSynced: 120000
// }

Custom events tracken

// Forward ActiveCampaign events to Brevo
await tajo.activecampaign.trackEvent({
event: 'product_demo_requested',
eventData: {
product: 'Enterprise Plan',
source: 'website'
}
});

Ratelimits

ActiveCampaign API-ratelimits:

PlanRatelimitDetails
Lite5 requests/secondePer account
Plus10 requests/secondePer account
Professional10 requests/secondePer account
Enterprise20 requests/secondePer account

Aanvullende limieten:

  • Bulk import: 250 contacten per batch
  • Bulk import-frequentie: 1 import tegelijk
  • Event-tracking: 2 requests/seconde
  • Daglimiet: Geen expliciete daglimiet (alleen op basis van rate)

Ratelimit-afhandeling

ActiveCampaign geeft 429 Too Many Requests terug wanneer limieten worden overschreden. Implementeer retry-logica met de waarde uit de Retry-After-header.

Probleemoplossing

Veelvoorkomende problemen

ProbleemOorzaakOplossing
403 ForbiddenOngeldige API-sleutel of URLVerifieer API-URL en -sleutel in AC Settings > Developer
Contact niet gesynchroniseerdDuplicaat-e-mail-afhandelingGebruik het /contact/sync-endpoint voor upsert-gedrag
Custom veld leegMismatch tussen veld-ID’sKoppel velden op ID, niet op label (labels kunnen wijzigen)
Webhook niet ontvangenWebhook niet geconfigureerdStel webhooks in onder AC Settings > Developer > Webhooks
Deal niet aangemaaktVereiste velden ontbrekenZorg dat pipeline, stage en contact worden meegegeven

Debugmodus

Activeer uitgebreide logging:

connectors:
activecampaign:
debug: true
log_level: verbose
log_webhooks: true

Verbinding testen

Terminal window
tajo connectors test activecampaign
# ✓ API connection successful
# ✓ Contacts readable
# ✓ Deals readable
# ✓ Automations accessible
# ✓ Event tracking enabled

Best practices

  1. Gebruik het contact sync-endpoint - Gebruik /contact/sync voor upsert-operaties in plaats van aparte create/update
  2. Koppel velden op ID - Custom field-ID’s zijn stabiel; labels kunnen wijzigen
  3. Behoud lijstlidmaatschappen - Migreer lijsttoewijzingen samen met contactdata
  4. Synchroniseer deal-pipelines - Koppel pipeline-stages voor consistente CRM-rapportage
  5. Implementeer event-tracking - Gebruik site tracking voor gedragsdata in Brevo
  6. Batch-imports - Gebruik bulk import voor datasets groter dan 1.000 contacten

Beveiliging

  • API-sleutel-authenticatie - Tokengebaseerde toegang via de Api-Token-header
  • Webhook-verificatie - Valideer webhook-bron-IP-ranges
  • TLS-encryptie - Alle API-communicatie versleuteld via HTTPS
  • Toegang op accountniveau - API-sleutel biedt volledige accounttoegang; gebruik zorgvuldig
  • IP-beperkingen - Beschikbaar op Enterprise-plannen

Gerelateerde resources

Subscribe to updates

developer-docs

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

auto-detect
AI-assistent

Hallo! Stel me vragen over de documentatie.