---
title: "Connettore ActiveCampaign"
description: "Guida completa all'integrazione di ActiveCampaign per sincronizzare contatti, deal, automazioni ed eventi di engagement con Brevo tramite Tajo."
url: https://tajo.io/it/docs/connectors/marketing/activecampaign/
markdown: https://tajo.io/it/docs/connectors/marketing/activecampaign.md
lang: it-IT
robots: noindex
---

Richiedi l’accesso anticipato

Inserisci il tuo nome e indirizzo email aziendale. Ti invieremo un link per confermare la richiesta di accesso a Tajo.

# Connettore ActiveCampaign

Stato del connettore: Pianificato Non ancora realizzato. Oggi Tajo non esegue questo connettore.

| Campo di origine | Campo di destinazione | Valore di esempio |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Collega il tuo account ActiveCampaign a Brevo tramite Tajo per una migrazione completa dei contatti, sincronizzazione della pipeline dei deal, mappatura delle automazioni e dati marketing unificati tra entrambe le piattaforme.

## Panoramica

| Proprietà | Valore |
| --- | --- |
| **Piattaforma** | ActiveCampaign |
| **Categoria** | Marketing |
| **Complessità di setup** | Media |
| **Integrazione ufficiale** | Sì |
| **Dati sincronizzati** | Contatti, Deal, Automazioni, Eventi |
| **API Base URL** | `https://{account}.api-us1.com/api/3` |

## Funzionalità

- **Migrazione dei contatti** - Migra i contatti con campi personalizzati, tag e appartenenze a liste
- **Sincronizzazione pipeline deal** - Sincronizza stage, valori e proprietari dei deal per il tracciamento dei ricavi
- **Mappatura delle automazioni** - Mappa le automazioni ActiveCampaign sui trigger di workflow Brevo
- **Tracciamento eventi** - Sincronizza tracking del sito ed eventi personalizzati per la segmentazione comportamentale
- **Sync di liste e tag** - Replica le strutture di lista e i segmenti basati su tag in Brevo
- **Integrazione e-commerce** - Sincronizza i Deep Data (ordini, clienti, carrelli) verso Brevo
- **Sync oggetti personalizzati** - Mappa gli oggetti personalizzati ActiveCampaign agli attributi Brevo
- **Sync dei punteggi** - Trasferisci i punteggi di lead e contatti agli attributi Brevo

## Prerequisiti

Prima di iniziare, assicurati di avere:

1. Un account ActiveCampaign (Lite, Plus, Professional o Enterprise)
2. URL e chiave API da Settings > Developer
3. Un account Brevo con accesso API
4. Un account Tajo

## Autenticazione

### Autenticazione con chiave API

ActiveCampaign usa una chiave API passata come header o parametro di query.

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

Trova URL e chiave API in ActiveCampaign Settings > Developer.

URL API

Il tuo URL API è univoco per il tuo account (es. `https://yourcompany.api-us1.com`). Usa sempre questo URL, non quello della dashboard.

## Configurazione

### Setup di base

```yaml
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
```

### Mappatura dei campi

Mappa i campi ActiveCampaign agli attributi di contatto Brevo:

#### Mappature predefinite

| Parameter | Type | Description |
| --- | --- | --- |
| `email` required | string | Email del contatto (identificatore univoco) |
| `firstName` optional | string | Mappato all'attributo FIRSTNAME |
| `lastName` optional | string | Mappato all'attributo LASTNAME |
| `phone` optional | string | Mappato all'attributo SMS |
| `tags` optional | array | Tag del contatto per la segmentazione |
| `score` optional | integer | Punteggio di engagement del contatto |
| `deals` optional | array | Record dei deal associati |
| `fieldValues` optional | array | Valori dei campi personalizzati |

#### Mappatura dei campi personalizzati

```yaml
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
```

## Endpoint API

### Contatti

| Metodo | Endpoint | Descrizione |
| --- | --- | --- |
| `GET` | `/api/3/contacts` | Elenca tutti i contatti |
| `POST` | `/api/3/contacts` | Crea un contatto |
| `PUT` | `/api/3/contacts/{id}` | Aggiorna un contatto |
| `GET` | `/api/3/contacts/{id}` | Recupera un contatto |
| `POST` | `/api/3/contact/sync` | Sincronizza un contatto (crea o aggiorna) |
| `POST` | `/api/3/import/bulk_import` | Importa contatti in blocco |

### Deal

| Metodo | Endpoint | Descrizione |
| --- | --- | --- |
| `GET` | `/api/3/deals` | Elenca tutti i deal |
| `POST` | `/api/3/deals` | Crea un deal |
| `PUT` | `/api/3/deals/{id}` | Aggiorna un deal |
| `GET` | `/api/3/dealStages` | Elenca tutti gli stage dei deal |
| `GET` | `/api/3/dealPipelines` | Elenca tutte le pipeline |

### Automazioni

| Metodo | Endpoint | Descrizione |
| --- | --- | --- |
| `GET` | `/api/3/automations` | Elenca le automazioni |
| `GET` | `/api/3/automations/{id}` | Recupera un’automazione |
| `POST` | `/api/3/contactAutomations` | Aggiungi un contatto a un’automazione |

### E-commerce (Deep Data)

| Metodo | Endpoint | Descrizione |
| --- | --- | --- |
| `POST` | `/api/3/ecomOrders` | Crea un ordine |
| `GET` | `/api/3/ecomOrders` | Elenca gli ordini |
| `POST` | `/api/3/ecomCustomers` | Crea un cliente |
| `GET` | `/api/3/ecomCustomers` | Elenca i clienti |

### Tracciamento eventi

| Metodo | Endpoint | Descrizione |
| --- | --- | --- |
| `POST` | `/api/3/tracking/event` | Traccia un evento personalizzato |
| `GET` | `/api/3/eventTrackingEvents` | Elenca tutti i nomi degli eventi |
| `POST` | `/api/3/eventTrackingEvents` | Crea un nome di evento |

## Eventi

### Eventi contatto

| Evento | Trigger | Caso d’uso |
| --- | --- | --- |
| `contact_add` | Nuovo contatto creato | Flusso di benvenuto |
| `contact_update` | Dati del contatto modificati | Sync degli attributi |
| `contact_tag_added` | Tag assegnato | Aggiornamento del segmento |
| `contact_tag_removed` | Tag rimosso | Pulizia del segmento |

### Eventi deal

| Evento | Trigger | Caso d’uso |
| --- | --- | --- |
| `deal_add` | Nuovo deal creato | Notifica vendite |
| `deal_update` | Stage del deal modificato | Automazione pipeline |
| `deal_tasktype_add` | Task aggiunto al deal | Tracciamento attività |

### Eventi di automazione

| Evento | Trigger | Caso d’uso |
| --- | --- | --- |
| `automation_contact_add` | Contatto entrato in automazione | Tracciamento del flusso |
| `automation_contact_complete` | Contatto ha completato l’automazione | Trigger del passo successivo |

## Esempi di codice

### Inizializza il connettore

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

### Migra i contatti su Brevo

```javascript
// 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
// }
```

### Traccia eventi personalizzati

```javascript
// Forward ActiveCampaign events to Brevo
await tajo.activecampaign.trackEvent({
  email: 'customer@example.com',
  event: 'product_demo_requested',
  eventData: {
    product: 'Enterprise Plan',
    source: 'website'
  }
});
```

## Limiti di velocità

Limiti di velocità dell’API ActiveCampaign:

| Piano | Limite | Dettagli |
| --- | --- | --- |
| Lite | 5 richieste/secondo | Per account |
| Plus | 10 richieste/secondo | Per account |
| Professional | 10 richieste/secondo | Per account |
| Enterprise | 20 richieste/secondo | Per account |

Limiti aggiuntivi:

- **Importazione in blocco**: 250 contatti per batch
- **Frequenza importazione in blocco**: 1 import alla volta
- **Tracciamento eventi**: 2 richieste/secondo
- **Limite giornaliero**: Nessun limite giornaliero esplicito (solo basato sulla velocità)

Gestione dei limiti di velocità

ActiveCampaign restituisce `429 Too Many Requests` quando i limiti vengono superati. Implementa la logica di retry con il valore dell’header `Retry-After`.

## Risoluzione dei problemi

### Problemi comuni

| Problema | Causa | Soluzione |
| --- | --- | --- |
| 403 Forbidden | URL o chiave API non validi | Verifica URL e chiave API in AC Settings > Developer |
| Contatto non sincronizzato | Gestione email duplicate | Usa l’endpoint `/contact/sync` per il comportamento upsert |
| Campo personalizzato vuoto | ID del campo non corrispondente | Mappa i campi per ID, non per label (le label possono cambiare) |
| Webhook non ricevuto | Webhook non configurato | Imposta i webhook in AC Settings > Developer > Webhooks |
| Deal non creato | Campi obbligatori mancanti | Assicurati che pipeline, stage e contatto siano forniti |

### Modalità debug

Abilita il logging dettagliato:

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

### Testa la connessione

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

## Best practice

1. **Usa l’endpoint contact sync** - Usa `/contact/sync` per le operazioni di upsert invece di create/update separate
2. **Mappa i campi per ID** - Gli ID dei campi personalizzati sono stabili; le label possono cambiare
3. **Preserva le appartenenze alle liste** - Migra le assegnazioni a liste insieme ai dati dei contatti
4. **Sincronizza le pipeline dei deal** - Mappa gli stage delle pipeline per una reportistica CRM coerente
5. **Implementa il tracciamento eventi** - Usa il site tracking per dati comportamentali in Brevo
6. **Importazioni in batch** - Usa il bulk import per dataset più grandi di 1.000 contatti

## Sicurezza

- **Autenticazione con chiave API** - Accesso basato su token tramite header `Api-Token`
- **Verifica webhook** - Convalida gli intervalli IP di origine dei webhook
- **Cifratura TLS** - Tutte le comunicazioni API cifrate via HTTPS
- **Accesso a livello di account** - La chiave API fornisce accesso completo all’account; usala con cura
- **Restrizioni IP** - Disponibili sui piani Enterprise

## Risorse correlate

- [Documentazione API ActiveCampaign](https://developers.activecampaign.com/reference/overview)
- [Guida ai webhook ActiveCampaign](https://developers.activecampaign.com/page/webhooks)
- [Connettore Mailchimp](https://tajo.io/it/docs/connectors/marketing/mailchimp)
- [Connettore Brevo](https://tajo.io/it/docs/connectors/marketing/brevo)
- [Skill Customer Sync](https://tajo.io/it/docs/skills/data-sync/customer-sync)
