ActiveCampaign Connector
Forbind din ActiveCampaign-konto til Brevo via Tajo for omfattende kontaktmigrering, synkronisering af deal-pipelines, automatiseringsmapping og forenede marketingdata på tværs af begge platforme.
Oversigt
| Egenskab | Værdi |
|---|---|
| Platform | ActiveCampaign |
| Kategori | Marketing |
| Opsætningskompleksitet | Mellem |
| Officiel integration | Ja |
| Synkroniserede data | Kontakter, deals, automatiseringer, hændelser |
| API-base-URL | https://{account}.api-us1.com/api/3 |
Funktioner
- Kontaktmigrering - Migrér kontakter med brugerdefinerede felter, tags og listemedlemskaber
- Synkronisering af deal-pipeline - Synkronisér dealfaser, værdier og ejere til omsætningssporing
- Automatiseringsmapping - Knyt ActiveCampaign-automatiseringer til Brevo-workflow-triggere
- Hændelsessporing - Synkronisér site-tracking og brugerdefinerede hændelser til adfærdssegmentering
- Liste- og tagsynkronisering - Replicér listestrukturer og tagbaserede segmenter i Brevo
- E-handelsintegration - Synkronisér Deep Data (ordrer, kunder, kurve) til Brevo
- Synkronisering af brugerdefinerede objekter - Knyt ActiveCampaign-brugerdefinerede objekter til Brevo-attributter
- Score-synkronisering - Overfør lead- og kontaktscores til Brevo-attributter
Forudsætninger
Før du begynder, skal du sikre dig, at du har:
- En ActiveCampaign-konto (Lite, Plus, Professional eller Enterprise)
- API URL og API-nøgle fra Settings > Developer
- En Brevo-konto med API-adgang
- En Tajo-konto
Autentifikation
API-nøgle-autentifikation
ActiveCampaign bruger en API-nøgle sendt som en header eller query-parameter.
curl "https://{account}.api-us1.com/api/3/contacts" \ -H "Api-Token: YOUR_API_KEY" \ -H "Content-Type: application/json"Find din API-URL og -nøgle i ActiveCampaign Settings > Developer.
API-URL
Din API-URL er unik for din konto (f.eks. https://yourcompany.api-us1.com). Brug altid denne URL og ikke dashboard-URL’en.
Konfiguration
Grundlæggende opsætning
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": 52Feltmapping
Knyt ActiveCampaign-felter til Brevo-kontaktattributter:
Standardmappings
| Parameter | Type | Description |
|---|---|---|
email required | string | Kontaktens e-mail (unik identifikator) |
firstName optional | string | Mapper til FIRSTNAME-attribut |
lastName optional | string | Mapper til LASTNAME-attribut |
phone optional | string | Mapper til SMS-attribut |
tags optional | array | Kontakttags til segmentering |
score optional | integer | Kontaktens engagementscore |
deals optional | array | Tilknyttede deal-poster |
fieldValues optional | array | Brugerdefinerede feltværdier |
Brugerdefineret feltmapping
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_TIERAPI-endpoints
Kontakter
| Metode | Endpoint | Beskrivelse |
|---|---|---|
GET | /api/3/contacts | Vis alle kontakter |
POST | /api/3/contacts | Opret en kontakt |
PUT | /api/3/contacts/{id} | Opdatér en kontakt |
GET | /api/3/contacts/{id} | Hent en kontakt |
POST | /api/3/contact/sync | Synkronisér en kontakt (opret eller opdatér) |
POST | /api/3/import/bulk_import | Massimport af kontakter |
Deals
| Metode | Endpoint | Beskrivelse |
|---|---|---|
GET | /api/3/deals | Vis alle deals |
POST | /api/3/deals | Opret en deal |
PUT | /api/3/deals/{id} | Opdatér en deal |
GET | /api/3/dealStages | Vis alle dealfaser |
GET | /api/3/dealPipelines | Vis alle pipelines |
Automatiseringer
| Metode | Endpoint | Beskrivelse |
|---|---|---|
GET | /api/3/automations | Vis automatiseringer |
GET | /api/3/automations/{id} | Hent en automatisering |
POST | /api/3/contactAutomations | Tilføj kontakt til automatisering |
E-handel (Deep Data)
| Metode | Endpoint | Beskrivelse |
|---|---|---|
POST | /api/3/ecomOrders | Opret en ordre |
GET | /api/3/ecomOrders | Vis ordrer |
POST | /api/3/ecomCustomers | Opret en kunde |
GET | /api/3/ecomCustomers | Vis kunder |
Hændelsessporing
| Metode | Endpoint | Beskrivelse |
|---|---|---|
POST | /api/3/tracking/event | Spor en brugerdefineret hændelse |
GET | /api/3/eventTrackingEvents | Vis alle hændelsesnavne |
POST | /api/3/eventTrackingEvents | Opret et hændelsesnavn |
Hændelser
Kontakthændelser
| Hændelse | Trigger | Anvendelse |
|---|---|---|
contact_add | Ny kontakt oprettet | Velkomst-flow |
contact_update | Kontaktdata ændret | Attributsynkronisering |
contact_tag_added | Tag tildelt | Segmentopdatering |
contact_tag_removed | Tag fjernet | Segmentoprydning |
Deal-hændelser
| Hændelse | Trigger | Anvendelse |
|---|---|---|
deal_add | Ny deal oprettet | Salgsnotifikation |
deal_update | Dealfase ændret | Pipeline-automatisering |
deal_tasktype_add | Opgave tilføjet deal | Aktivitetssporing |
Automatiseringshændelser
| Hændelse | Trigger | Anvendelse |
|---|---|---|
automation_contact_add | Kontakt kom ind i automatisering | Flow-sporing |
automation_contact_complete | Kontakt fuldførte automatisering | Næste-skridt-trigger |
Kodeeksempler
Initialisér konnektor
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect ActiveCampaignawait tajo.connectors.connect('activecampaign', { apiUrl: process.env.AC_API_URL, apiKey: process.env.AC_API_KEY});Migrér kontakter til Brevo
// Full contact migration with custom fields and tagsawait tajo.connectors.sync('activecampaign', { type: 'full', resources: ['contacts', 'deals', 'events'], options: { includeTags: true, includeCustomFields: true, includeScores: true, includeListMemberships: true }});
// Check sync statusconst status = await tajo.connectors.status('activecampaign');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsMigrated: 28000,// dealsSynced: 4500,// eventsSynced: 120000// }Spor brugerdefinerede hændelser
// Forward ActiveCampaign events to Brevoawait tajo.activecampaign.trackEvent({ event: 'product_demo_requested', eventData: { product: 'Enterprise Plan', source: 'website' }});Ratebegrænsninger
ActiveCampaign API-ratebegrænsninger:
| Plan | Ratebegrænsning | Detaljer |
|---|---|---|
| Lite | 5 forespørgsler/sekund | Per konto |
| Plus | 10 forespørgsler/sekund | Per konto |
| Professional | 10 forespørgsler/sekund | Per konto |
| Enterprise | 20 forespørgsler/sekund | Per konto |
Yderligere grænser:
- Bulk-import: 250 kontakter per batch
- Bulk-importfrekvens: 1 import ad gangen
- Hændelsessporing: 2 forespørgsler/sekund
- Daglig grænse: Ingen eksplicit daglig grænse (kun ratebaseret)
Håndtering af ratebegrænsninger
ActiveCampaign returnerer 429 Too Many Requests, når grænser overskrides. Implementér retry-logik med værdien fra Retry-After-headeren.
Fejlfinding
Almindelige problemer
| Problem | Årsag | Løsning |
|---|---|---|
| 403 Forbidden | Ugyldig API-nøgle eller -URL | Verificér API-URL og -nøgle i AC Settings > Developer |
| Kontakt ikke synkroniseret | Håndtering af duplikerede e-mails | Brug /contact/sync-endpoint til upsert-adfærd |
| Brugerdefineret felt tomt | Felt-id matcher ikke | Map felter efter id, ikke label (labels kan ændres) |
| Webhook ikke modtaget | Webhook ikke konfigureret | Opsæt webhooks i AC Settings > Developer > Webhooks |
| Deal ikke oprettet | Manglende påkrævede felter | Sørg for, at pipeline, fase og kontakt er angivet |
Fejlfindingstilstand
Aktivér udførlig logning:
connectors: activecampaign: debug: true log_level: verbose log_webhooks: trueTest forbindelse
tajo connectors test activecampaign# ✓ API connection successful# ✓ Contacts readable# ✓ Deals readable# ✓ Automations accessible# ✓ Event tracking enabledBest practices
- Brug contact sync-endpoint - Brug
/contact/synctil upsert-operationer i stedet for separat opret/opdatér - Map felter efter id - Brugerdefinerede felt-id’er er stabile; labels kan ændres
- Bevar listemedlemskaber - Migrér listetildelinger sammen med kontaktdata
- Synkronisér deal-pipelines - Map pipeline-faser til konsekvent CRM-rapportering
- Implementér hændelsessporing - Brug site-tracking til adfærdsdata i Brevo
- Batch-importer - Brug bulk-import til datasæt større end 1.000 kontakter
Sikkerhed
- API-nøgle-autentifikation - Tokenbaseret adgang via
Api-Token-header - Webhook-verifikation - Validér webhook-kildens IP-intervaller
- TLS-kryptering - Al API-kommunikation krypteret via HTTPS
- Adgang på kontoniveau - API-nøglen giver fuld kontoadgang; brug med omtanke
- IP-restriktioner - Tilgængelig på Enterprise-planer