Conector de Meta Ads

Conecta Meta Ads (Facebook e Instagram) con Brevo a través de Tajo para sincronizar Custom Audiences, importar eventos de conversión vía la Conversions API y unir la publicidad social de pago con la automatización de marketing de ciclo de vida.

Resumen

PropiedadValor
PlataformaMeta Ads (Facebook, Instagram, Messenger, WhatsApp)
CategoríaMarketing
Complejidad de configuraciónAvanzada
Integración oficialNo
Datos sincronizadosAudiencias, Conversiones, Campañas, Leads
Skills disponibles8
Versión de APIv25.0 (Graph API)

Funcionalidades

  • Sincronización de Custom Audiences - Sube listas de contactos de Brevo como Custom Audiences de Meta
  • Conversions API (CAPI) - Envía eventos de conversión server-side para una atribución precisa
  • Sincronización de formularios de lead - Importa los envíos de Lead Ads de Facebook directamente a contactos de Brevo
  • Insights de campañas - Trae las métricas de rendimiento de anuncios a los dashboards de Tajo
  • Lookalike Audiences - Crea Lookalike Audiences a partir de segmentos de Brevo sincronizados
  • Sincronización de catálogos - Sincroniza catálogos de productos para anuncios dinámicos
  • Multiplataforma - Una sola integración cubre anuncios en Facebook, Instagram, Messenger y WhatsApp

Requisitos previos

Antes de empezar, asegúrate de tener:

  1. Una cuenta de Meta Business Manager
  2. Una app de Facebook con acceso a la Marketing API
  3. Un System User con los permisos adecuados
  4. Un Access Token con permisos ads_management y ads_read
  5. Una cuenta de Brevo con acceso a la API
  6. Una cuenta de Tajo con credenciales de API

Autenticación

Access Token de System User

Meta recomienda usar tokens de System User para integraciones servidor a servidor. Estos tokens no expiran.

Terminal window
# Required permissions for System User
ads_management
ads_read
business_management
leads_retrieval
pages_read_engagement
catalog_management

Autenticación a nivel de app

Terminal window
curl -G "https://graph.facebook.com/v25.0/act_AD_ACCOUNT_ID/campaigns" \
-d "access_token=SYSTEM_USER_ACCESS_TOKEN" \
-d "fields=name,status,objective"

Configuración

Configuración básica

connectors:
meta_ads:
enabled: true
app_id: "your-facebook-app-id"
app_secret: "your-facebook-app-secret"
access_token: "your-system-user-access-token"
ad_account_id: "act_123456789"
business_id: "987654321"
pixel_id: "111222333444"
# Data sync options
sync:
custom_audiences: true
conversions_api: true
lead_forms: true
campaign_insights: true
# API version
api_version: "v25.0"

Configuración de Custom Audiences

Sincroniza listas de Brevo con Custom Audiences de Meta:

custom_audiences:
enabled: true
lists:
- brevo_list_id: 5
audience_name: "All Customers"
subtype: "CUSTOM"
- brevo_list_id: 6
audience_name: "High LTV Customers"
subtype: "CUSTOM"
- brevo_list_id: 7
audience_name: "Recent Purchasers"
subtype: "CUSTOM"
# Matching fields
match_keys:
- EMAIL
- PHONE
- FN # First name
- LN # Last name
- CT # City
- ST # State
- ZIP
- COUNTRY
schedule: "daily"
sync_mode: "mirror"

Configuración de la Conversions API

conversions_api:
enabled: true
pixel_id: "111222333444"
test_event_code: "" # Set for testing, clear for production
events:
- brevo_event: "order_completed"
meta_event: "Purchase"
value_field: "revenue"
currency_field: "currency"
- brevo_event: "cart_updated"
meta_event: "AddToCart"
- brevo_event: "customer_created"
meta_event: "Lead"
- brevo_event: "page_viewed"
meta_event: "ViewContent"

Endpoints de la API

MétodoEndpointDescripción
POST/v25.0/act_{id}/customaudiencesCrear una Custom Audience
POST/v25.0/{audience_id}/usersAñadir usuarios a una Custom Audience
DELETE/v25.0/{audience_id}/usersEliminar usuarios de una Custom Audience
POST/v25.0/{pixel_id}/eventsEnviar eventos de la Conversions API
GET/v25.0/act_{id}/campaignsListar campañas
GET/v25.0/act_{id}/insightsObtener insights de campaña
GET/v25.0/{form_id}/leadsObtener los envíos de formularios de lead
POST/v25.0/act_{id}/adcreativesCrear creatividades
GET/v25.0/{catalog_id}/productsListar productos del catálogo

Ejemplos de código

Inicializar el conector de Meta Ads

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect Meta Ads account
await tajo.connectors.connect('meta-ads', {
appId: process.env.META_APP_ID,
appSecret: process.env.META_APP_SECRET,
accessToken: process.env.META_ACCESS_TOKEN,
adAccountId: 'act_123456789',
pixelId: '111222333444'
});

Enviar eventos por la Conversions API

// Send a purchase event via Conversions API
const response = await fetch(
`https://graph.facebook.com/v25.0/${PIXEL_ID}/events`,
{
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
data: [{
event_name: 'Purchase',
event_time: Math.floor(Date.now() / 1000),
action_source: 'website',
user_data: {
em: [hashSHA256('[email protected]')],
ph: [hashSHA256('+15551234567')],
fn: [hashSHA256('jane')],
ln: [hashSHA256('kim')],
client_ip_address: '192.168.1.1',
client_user_agent: 'Mozilla/5.0...',
fbc: 'fb.1.1234567890.AbCdEfG', // Click ID
fbp: 'fb.1.1234567890.987654321' // Browser ID
},
custom_data: {
value: 89.99,
currency: 'USD',
content_ids: ['SKU-001'],
content_type: 'product'
}
}],
access_token: process.env.META_ACCESS_TOKEN
})
}
);

Sincronizar una Custom Audience desde una lista de Brevo

// Upload a Brevo contact list as a Meta Custom Audience
await tajo.connectors.syncAudience('meta-ads', {
brevoListId: 5,
audienceName: 'High Value Customers',
matchKeys: ['EMAIL', 'PHONE', 'FN', 'LN'],
syncMode: 'mirror'
});

Obtener insights de campañas

// Get campaign performance metrics
const insights = await tajo.connectors.query('meta-ads', {
resource: 'campaigns',
fields: ['campaign_name', 'impressions', 'clicks', 'spend',
'actions', 'cost_per_action_type'],
dateRange: { since: '2024-01-01', until: '2024-01-31' },
level: 'campaign'
});

Límites de velocidad

RecursoLímiteDetalles
Marketing APIPor nivelesSegún el nivel de acceso de la app y el gasto
Subidas a Custom Audience700 peticiones/horaPor cuenta publicitaria
Conversions API2.000 eventos/sPor píxel
Insights API200 llamadas/horaPor cuenta publicitaria
Obtención de leads200 llamadas/horaPor página
Peticiones por lotes50 peticiones/lotePor llamada batch

Se requiere verificación de empresa

El acceso completo a la Marketing API requiere verificación de empresa en Meta Business Manager. Las apps no verificadas están limitadas al modo desarrollo con límites de velocidad restringidos.

Resolución de problemas

ProblemaCausaSolución
OAuthExceptionToken expirado o no válidoRegenera el access token del System User
Bajo match rate en Custom AudienceCalidad de datos deficienteHashea toda la información personal con SHA-256 e incluye varias match keys
Conversiones no atribuidasFaltan parámetros fbc/fbpPasa el Facebook Click ID y el Browser ID desde las cookies
RATE_LIMIT_REACHEDDemasiadas llamadas a la APIImplementa backoff exponencial; revisa el nivel de acceso de la API
Formularios de lead no se sincronizanFalta el permiso leads_retrievalAñade el permiso al System User
Eventos en modo testtest_event_code aún activoElimina el test event code en producción

Buenas prácticas

  1. Usa tokens de System User - Los System Users proporcionan tokens estables y sin expiración para integraciones de servidor
  2. Hashea toda la información personal - Haz hash SHA-256 de toda la información personal antes de enviarla a Meta
  3. Envía por CAPI y por Pixel - Usa tanto la Conversions API como el Meta Pixel para tracking redundante con deduplicación
  4. Incluye event IDs - Establece event_id en los eventos de CAPI y de Pixel para permitir la deduplicación
  5. Pasa fbc y fbp - Incluye el Facebook Click ID y el Browser ID para maximizar la atribución de conversiones
  6. Verifica tu empresa - Completa la verificación de empresa para obtener acceso completo a la API y límites de velocidad más altos
  7. Usa test_event_code - Prueba los eventos de la Conversions API en Events Manager antes de pasar a producción

Seguridad

  • Tokens de System User - Tokens de autenticación no personales, limitados al negocio
  • Hash SHA-256 - Toda la información personal se hashea antes de transmitirse a los servidores de Meta
  • App Secret Proof - Capa adicional opcional de seguridad en la autenticación
  • Limitación por negocio - Permisos limitados a cuentas publicitarias y páginas concretas
  • Cumplimiento de Meta - Sujeto a los Términos de Plataforma y las políticas publicitarias de Meta
  • Condiciones de procesamiento de datos - Se aplican las Condiciones de procesamiento de datos de Meta para datos de la UE

Recursos relacionados

Subscribe to updates

developer-docs

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

auto-detect
Asistente AI

¡Hola! Pregúntame lo que quieras sobre la documentación.