Conector ActiveCampaign
Conecte sua conta ActiveCampaign ao Brevo via Tajo para uma migração abrangente de contatos, sincronização do pipeline de negócios, mapeamento de automações e dados de marketing unificados entre as duas plataformas.
Visão geral
| Propriedade | Valor |
|---|---|
| Plataforma | ActiveCampaign |
| Categoria | Marketing |
| Complexidade de configuração | Média |
| Integração oficial | Sim |
| Dados sincronizados | Contatos, Negócios, Automações, Eventos |
| URL base da API | https://{account}.api-us1.com/api/3 |
Recursos
- Migração de contatos - Migre contatos com campos personalizados, tags e associações de listas
- Sincronização do pipeline de negócios - Sincronize estágios, valores e responsáveis de negócios para acompanhamento de receita
- Mapeamento de automações - Mapeie automações do ActiveCampaign para gatilhos de workflow do Brevo
- Rastreamento de eventos - Sincronize rastreamento de site e eventos personalizados para segmentação comportamental
- Sincronização de listas e tags - Replique estruturas de listas e segmentos baseados em tags no Brevo
- Integração com e-commerce - Sincronize Deep Data (pedidos, clientes, carrinhos) para o Brevo
- Sincronização de objetos personalizados - Mapeie objetos personalizados do ActiveCampaign para atributos do Brevo
- Sincronização de pontuações - Transfira pontuações de leads e contatos para atributos do Brevo
Pré-requisitos
Antes de começar, certifique-se de ter:
- Uma conta ActiveCampaign (Lite, Plus, Professional ou Enterprise)
- URL da API e chave de API em Settings > Developer
- Uma conta Brevo com acesso à API
- Uma conta Tajo
Autenticação
Autenticação por chave API
O ActiveCampaign usa uma chave API passada como cabeçalho ou parâmetro de consulta.
curl "https://{account}.api-us1.com/api/3/contacts" \ -H "Api-Token: YOUR_API_KEY" \ -H "Content-Type: application/json"Encontre sua URL da API e chave em ActiveCampaign Settings > Developer.
URL da API
Sua URL da API é única para sua conta (por exemplo, https://yourcompany.api-us1.com). Sempre use essa URL, não a URL do dashboard.
Configuração
Configuração básica
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": 52Mapeamento de campos
Mapeie campos do ActiveCampaign para atributos de contato do Brevo:
Default Mappings
| Parameter | Type | Description |
|---|---|---|
email required | string | E-mail do contato (identificador único) |
firstName optional | string | Mapeia para o atributo FIRSTNAME |
lastName optional | string | Mapeia para o atributo LASTNAME |
phone optional | string | Mapeia para o atributo SMS |
tags optional | array | Tags de contato para segmentação |
score optional | integer | Pontuação de engajamento do contato |
deals optional | array | Registros de negócios associados |
fieldValues optional | array | Valores de campos personalizados |
Mapeamento de campos personalizados
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_TIEREndpoints da API
Contatos
| Método | Endpoint | Descrição |
|---|---|---|
GET | /api/3/contacts | Listar todos os contatos |
POST | /api/3/contacts | Criar um contato |
PUT | /api/3/contacts/{id} | Atualizar um contato |
GET | /api/3/contacts/{id} | Obter um contato |
POST | /api/3/contact/sync | Sincronizar um contato (criar ou atualizar) |
POST | /api/3/import/bulk_import | Importação em massa de contatos |
Negócios
| Método | Endpoint | Descrição |
|---|---|---|
GET | /api/3/deals | Listar todos os negócios |
POST | /api/3/deals | Criar um negócio |
PUT | /api/3/deals/{id} | Atualizar um negócio |
GET | /api/3/dealStages | Listar todos os estágios de negócio |
GET | /api/3/dealPipelines | Listar todos os pipelines |
Automações
| Método | Endpoint | Descrição |
|---|---|---|
GET | /api/3/automations | Listar automações |
GET | /api/3/automations/{id} | Obter uma automação |
POST | /api/3/contactAutomations | Adicionar contato a uma automação |
E-commerce (Deep Data)
| Método | Endpoint | Descrição |
|---|---|---|
POST | /api/3/ecomOrders | Criar um pedido |
GET | /api/3/ecomOrders | Listar pedidos |
POST | /api/3/ecomCustomers | Criar um cliente |
GET | /api/3/ecomCustomers | Listar clientes |
Rastreamento de eventos
| Método | Endpoint | Descrição |
|---|---|---|
POST | /api/3/tracking/event | Rastrear um evento personalizado |
GET | /api/3/eventTrackingEvents | Listar todos os nomes de eventos |
POST | /api/3/eventTrackingEvents | Criar um nome de evento |
Eventos
Eventos de contato
| Evento | Gatilho | Caso de uso |
|---|---|---|
contact_add | Novo contato criado | Fluxo de boas-vindas |
contact_update | Dados do contato alterados | Sincronização de atributos |
contact_tag_added | Tag atribuída | Atualização de segmento |
contact_tag_removed | Tag removida | Limpeza de segmento |
Eventos de negócio
| Evento | Gatilho | Caso de uso |
|---|---|---|
deal_add | Novo negócio criado | Notificação de vendas |
deal_update | Estágio do negócio alterado | Automação de pipeline |
deal_tasktype_add | Tarefa adicionada ao negócio | Rastreamento de atividade |
Eventos de automação
| Evento | Gatilho | Caso de uso |
|---|---|---|
automation_contact_add | Contato entrou na automação | Rastreamento de fluxo |
automation_contact_complete | Contato concluiu a automação | Gatilho para próximo passo |
Exemplos de código
Inicializar o conector
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});Migrar contatos para o 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// }Rastrear eventos personalizados
// Forward ActiveCampaign events to Brevoawait tajo.activecampaign.trackEvent({ event: 'product_demo_requested', eventData: { product: 'Enterprise Plan', source: 'website' }});Limites de taxa
Limites de taxa da API do ActiveCampaign:
| Plano | Limite de taxa | Detalhes |
|---|---|---|
| Lite | 5 requisições/segundo | Por conta |
| Plus | 10 requisições/segundo | Por conta |
| Professional | 10 requisições/segundo | Por conta |
| Enterprise | 20 requisições/segundo | Por conta |
Limites adicionais:
- Importação em massa: 250 contatos por lote
- Frequência de importação em massa: 1 importação por vez
- Rastreamento de eventos: 2 requisições/segundo
- Limite diário: Sem limite diário explícito (apenas baseado em taxa)
Tratamento de limite de taxa
O ActiveCampaign retorna 429 Too Many Requests quando os limites são excedidos. Implemente lógica de retry com o valor do cabeçalho Retry-After.
Solução de problemas
Problemas comuns
| Problema | Causa | Solução |
|---|---|---|
| 403 Forbidden | Chave de API ou URL inválida | Verifique a URL da API e a chave em AC Settings > Developer |
| Contato não sincronizado | Tratamento de e-mail duplicado | Use o endpoint /contact/sync para comportamento de upsert |
| Campo personalizado vazio | Incompatibilidade de ID de campo | Mapeie campos por ID, não por rótulo (rótulos podem mudar) |
| Webhook não recebido | Webhook não configurado | Configure webhooks em AC Settings > Developer > Webhooks |
| Negócio não criado | Campos obrigatórios ausentes | Certifique-se de fornecer pipeline, estágio e contato |
Modo de depuração
Ative o log detalhado:
connectors: activecampaign: debug: true log_level: verbose log_webhooks: trueTestar conexão
tajo connectors test activecampaign# ✓ API connection successful# ✓ Contacts readable# ✓ Deals readable# ✓ Automations accessible# ✓ Event tracking enabledMelhores práticas
- Use o endpoint de sincronização de contatos - Use
/contact/syncpara operações de upsert em vez de criar/atualizar separadamente - Mapeie campos por ID - IDs de campos personalizados são estáveis; rótulos podem mudar
- Preserve associações de lista - Migre atribuições de lista junto com os dados do contato
- Sincronize pipelines de negócios - Mapeie estágios de pipeline para relatórios de CRM consistentes
- Implemente rastreamento de eventos - Use rastreamento de site para dados comportamentais no Brevo
- Importações em lote - Use importação em massa para conjuntos de dados maiores que 1.000 contatos
Segurança
- Autenticação por chave API - Acesso baseado em token via cabeçalho
Api-Token - Verificação de webhook - Valide faixas de IP de origem do webhook
- Criptografia TLS - Toda comunicação com a API é criptografada via HTTPS
- Acesso em nível de conta - A chave API fornece acesso total à conta; use com cuidado
- Restrições de IP - Disponível em planos Enterprise