ActiveCampaign Connector
Connector-Status: Geplant Noch nicht gebaut. Tajo betreibt diesen Connector heute nicht.
Illustration · Beispieldaten
Sync-Beispiel
Quelle
ActiveCampaign
Connector-Status: Geplant
Ziel
Ihr anderes Tool
Connector-Status: Eigenes Tool
Feldzuordnung
| Quellfeld | Zielfeld | Beispielwert |
|---|---|---|
record.id | source_id | record_1042 |
record.updated_at | updated_at | 2026-10-18T08:00:00Z |
record.value | value | sample_value |
- Entwerfen
- Einen Datensatz prüfen
- Diese Version freigeben
Der Status gilt für einzelne Connectoren und garantiert nicht, dass dieser Sync bereit ist. Felder zur Veranschaulichung. Prüfen Sie vor dem Sync das tatsächliche Schema und die Berechtigungen.
Verbinde dein ActiveCampaign-Konto über Tajo mit Brevo für eine umfassende Kontaktmigration, Deal-Pipeline-Synchronisation, Automations-Mapping und plattformübergreifend einheitliche Marketingdaten.
Überblick
| Eigenschaft | Wert |
|---|---|
| Plattform | ActiveCampaign |
| Kategorie | Marketing |
| Einrichtungsaufwand | Mittel |
| Offizielle Integration | Nein |
| Synchronisierte Daten | Kontakte, Deals, Automationen, Events |
| API-Basis-URL | https://{account}.api-us1.com/api/3 |
Funktionen
- Kontaktmigration - Migriere Kontakte inklusive Custom Fields, Tags und Listenmitgliedschaften
- Deal-Pipeline-Synchronisation - Synchronisiere Deal-Phasen, -Werte und -Verantwortliche für das Umsatz-Tracking
- Automations-Mapping - Ordne ActiveCampaign-Automationen den Brevo-Workflow-Triggern zu
- Event-Tracking - Synchronisiere Site-Tracking und Custom Events für eine verhaltensbasierte Segmentierung
- Listen- und Tag-Synchronisation - Repliziere Listenstrukturen und tag-basierte Segmente in Brevo
- E-Commerce-Integration - Synchronisiere Deep Data (Orders, Customers, Carts) zu Brevo
- Custom-Object-Sync - Ordne ActiveCampaign-Custom-Objects den Brevo-Attributen zu
- Score-Synchronisation - Übertrage Lead- und Kontakt-Scores in Brevo-Attribute
Voraussetzungen
Bevor du beginnst, stelle sicher, dass du Folgendes hast:
- Ein ActiveCampaign-Konto (Lite, Plus, Professional oder Enterprise)
- API-URL und API-Schlüssel aus Settings > Developer
- Ein Brevo-Konto mit API-Zugriff
- Ein Tajo-Konto
Authentifizierung
API-Schlüssel-Authentifizierung
ActiveCampaign nutzt einen API-Schlüssel, der als Header oder Query-Parameter übergeben wird.
curl "https://{account}.api-us1.com/api/3/contacts" \ -H "Api-Token: YOUR_API_KEY" \ -H "Content-Type: application/json"Du findest deine API-URL und deinen API-Schlüssel in den ActiveCampaign-Einstellungen unter Settings > Developer.
API-URL
Deine API-URL ist für dein Konto einzigartig (z. B. https://yourcompany.api-us1.com). Nutze immer diese URL, nicht die Dashboard-URL.
Konfiguration
Grundeinrichtung
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": 52Feldzuordnung
Ordne ActiveCampaign-Felder den Brevo-Kontaktattributen zu:
Standardzuordnungen
| Parameter | Type | Description |
|---|---|---|
email required | string | E-Mail des Kontakts (eindeutige Kennung) |
firstName optional | string | Wird dem FIRSTNAME-Attribut zugeordnet |
lastName optional | string | Wird dem LASTNAME-Attribut zugeordnet |
phone optional | string | Wird dem SMS-Attribut zugeordnet |
tags optional | array | Kontakt-Tags für die Segmentierung |
score optional | integer | Engagement-Score des Kontakts |
deals optional | array | Zugeordnete Deal-Datensätze |
fieldValues optional | array | Werte benutzerdefinierter Felder |
Zuordnung benutzerdefinierter Felder
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-Endpunkte
Kontakte
| Methode | Endpoint | Beschreibung |
|---|---|---|
GET | /api/3/contacts | Alle Kontakte auflisten |
POST | /api/3/contacts | Einen Kontakt erstellen |
PUT | /api/3/contacts/{id} | Einen Kontakt aktualisieren |
GET | /api/3/contacts/{id} | Einen Kontakt abrufen |
POST | /api/3/contact/sync | Einen Kontakt synchronisieren (Create oder Update) |
POST | /api/3/import/bulk_import | Kontakte per Bulk-Import importieren |
Deals
| Methode | Endpoint | Beschreibung |
|---|---|---|
GET | /api/3/deals | Alle Deals auflisten |
POST | /api/3/deals | Einen Deal erstellen |
PUT | /api/3/deals/{id} | Einen Deal aktualisieren |
GET | /api/3/dealStages | Alle Deal-Phasen auflisten |
GET | /api/3/dealPipelines | Alle Pipelines auflisten |
Automationen
| Methode | Endpoint | Beschreibung |
|---|---|---|
GET | /api/3/automations | Automationen auflisten |
GET | /api/3/automations/{id} | Eine Automation abrufen |
POST | /api/3/contactAutomations | Kontakt einer Automation hinzufügen |
E-Commerce (Deep Data)
| Methode | Endpoint | Beschreibung |
|---|---|---|
POST | /api/3/ecomOrders | Eine Bestellung anlegen |
GET | /api/3/ecomOrders | Bestellungen auflisten |
POST | /api/3/ecomCustomers | Eine Kundschaft anlegen |
GET | /api/3/ecomCustomers | Kund:innen auflisten |
Event-Tracking
| Methode | Endpoint | Beschreibung |
|---|---|---|
POST | /api/3/tracking/event | Ein Custom Event tracken |
GET | /api/3/eventTrackingEvents | Alle Event-Namen auflisten |
POST | /api/3/eventTrackingEvents | Einen Event-Namen anlegen |
Events
Kontakt-Events
| Event | Auslöser | Anwendungsfall |
|---|---|---|
contact_add | Neuer Kontakt erstellt | Willkommens-Flow |
contact_update | Kontaktdaten geändert | Attribut-Synchronisation |
contact_tag_added | Tag zugewiesen | Segment-Aktualisierung |
contact_tag_removed | Tag entfernt | Segment-Bereinigung |
Deal-Events
| Event | Auslöser | Anwendungsfall |
|---|---|---|
deal_add | Neuer Deal erstellt | Vertriebsbenachrichtigung |
deal_update | Deal-Phase geändert | Pipeline-Automatisierung |
deal_tasktype_add | Aufgabe einem Deal hinzugefügt | Aktivitäts-Tracking |
Automation-Events
| Event | Auslöser | Anwendungsfall |
|---|---|---|
automation_contact_add | Kontakt in Automation eingetreten | Flow-Tracking |
automation_contact_complete | Kontakt hat Automation abgeschlossen | Trigger für nächsten Schritt |
Code-Beispiele
Connector initialisieren
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});Kontakte zu Brevo migrieren
// 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// }Custom Events tracken
// Forward ActiveCampaign events to Brevoawait tajo.activecampaign.trackEvent({ event: 'product_demo_requested', eventData: { product: 'Enterprise Plan', source: 'website' }});Rate Limits
Rate Limits der ActiveCampaign-API:
| Plan | Rate Limit | Details |
|---|---|---|
| Lite | 5 Anfragen/Sekunde | Pro Konto |
| Plus | 10 Anfragen/Sekunde | Pro Konto |
| Professional | 10 Anfragen/Sekunde | Pro Konto |
| Enterprise | 20 Anfragen/Sekunde | Pro Konto |
Weitere Limits:
- Bulk-Import: 250 Kontakte pro Batch
- Bulk-Import-Frequenz: 1 Import gleichzeitig
- Event-Tracking: 2 Anfragen/Sekunde
- Tageslimit: Kein explizites Tageslimit (nur ratenbasiert)
Umgang mit Rate Limits
ActiveCampaign antwortet mit 429 Too Many Requests, sobald die Limits überschritten werden. Implementiere eine Retry-Logik auf Basis des Retry-After-Header-Werts.
Fehlerbehebung
Häufige Probleme
| Problem | Ursache | Lösung |
|---|---|---|
| 403 Forbidden | Ungültiger API-Schlüssel oder ungültige URL | Prüfe API-URL und -Schlüssel in den AC-Einstellungen unter Settings > Developer |
| Kontakt nicht synchronisiert | Umgang mit doppelten E-Mail-Adressen | Nutze den Endpoint /contact/sync für ein Upsert-Verhalten |
| Custom Field leer | Abweichende Feld-ID | Ordne Felder per ID zu, nicht per Label (Labels können sich ändern) |
| Webhook nicht empfangen | Webhook nicht konfiguriert | Richte Webhooks in den AC-Einstellungen unter Settings > Developer > Webhooks ein |
| Deal nicht erstellt | Fehlende Pflichtfelder | Stelle sicher, dass Pipeline, Phase und Kontakt übergeben werden |
Debug-Modus
Ausführliches Logging aktivieren:
connectors: activecampaign: debug: true log_level: verbose log_webhooks: trueVerbindung testen
tajo connectors test activecampaign# ✓ API connection successful# ✓ Contacts readable# ✓ Deals readable# ✓ Automations accessible# ✓ Event tracking enabledBest Practices
- Contact-Sync-Endpoint nutzen - Verwende
/contact/syncfür Upsert-Operationen statt getrennter Create-/Update-Aufrufe - Felder per ID zuordnen - IDs von Custom Fields sind stabil; Labels können sich ändern
- Listenmitgliedschaften bewahren - Migriere Listenzuordnungen gemeinsam mit den Kontaktdaten
- Deal-Pipelines synchronisieren - Ordne Pipeline-Phasen für ein konsistentes CRM-Reporting zu
- Event-Tracking umsetzen - Nutze Site-Tracking, um verhaltensbasierte Daten in Brevo zu erhalten
- Batch-Importe verwenden - Nutze Bulk-Import für Datensätze mit mehr als 1.000 Kontakten
Sicherheit
- API-Schlüssel-Authentifizierung - Token-basierter Zugriff über den
Api-Token-Header - Webhook-Verifizierung - Prüfe die Quell-IP-Bereiche von Webhooks
- TLS-Verschlüsselung - Die gesamte API-Kommunikation wird via HTTPS verschlüsselt
- Zugriff auf Kontoebene - Der API-Schlüssel bietet vollen Kontozugriff; gehe sorgsam damit um
- IP-Beschränkungen - Verfügbar in Enterprise-Plänen