Connettore Meta Ads

Collega Meta Ads (Facebook e Instagram) a Brevo tramite Tajo per sincronizzare le Custom Audiences, importare eventi di conversione tramite la Conversions API e collegare la pubblicità social a pagamento all’automation di marketing lifecycle.

Panoramica

ProprietàValore
PiattaformaMeta Ads (Facebook, Instagram, Messenger, WhatsApp)
CategoriaMarketing
Complessità di setupAvanzata
Integrazione ufficialeNo
Dati sincronizzatiAudience, Conversioni, Campagne, Lead
Skill disponibili8
Versione APIv25.0 (Graph API)

Funzionalità

  • Sync Custom Audience - Carica le liste contatti Brevo come Custom Audience Meta
  • Conversions API (CAPI) - Invia eventi di conversione server-side per un’attribuzione accurata
  • Sync Lead Form - Importa le sottomissioni dei Facebook Lead Ads direttamente nei contatti Brevo
  • Insight delle campagne - Estrai metriche di performance pubblicitaria nelle dashboard Tajo
  • Lookalike Audience - Crea Lookalike Audience dai segmenti Brevo sincronizzati
  • Sync del catalogo - Sincronizza i cataloghi prodotti per dynamic product ads
  • Multi-platform - Una singola integrazione copre Facebook, Instagram, Messenger e WhatsApp ads

Prerequisiti

Prima di iniziare, assicurati di avere:

  1. Un account Meta Business Manager
  2. Un’app Facebook con accesso Marketing API
  3. Un System User con i permessi appropriati
  4. Un Access Token con i permessi ads_management e ads_read
  5. Un account Brevo con accesso API
  6. Un account Tajo con credenziali API

Autenticazione

System User Access Token

Meta consiglia di usare i token System User per le integrazioni server-to-server. Questi token non scadono.

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

Autenticazione a livello 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"

Configurazione

Setup di base

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"

Configurazione Custom Audience

Sincronizza le liste Brevo con le Custom Audience 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"

Configurazione 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"

Endpoint API

MetodoEndpointDescrizione
POST/v25.0/act_{id}/customaudiencesCrea una Custom Audience
POST/v25.0/{audience_id}/usersAggiungi utenti a una Custom Audience
DELETE/v25.0/{audience_id}/usersRimuovi utenti da una Custom Audience
POST/v25.0/{pixel_id}/eventsInvia eventi Conversions API
GET/v25.0/act_{id}/campaignsElenca le campagne
GET/v25.0/act_{id}/insightsOttieni gli insight delle campagne
GET/v25.0/{form_id}/leadsRecupera le sottomissioni dei lead form
POST/v25.0/act_{id}/adcreativesCrea creatività pubblicitarie
GET/v25.0/{catalog_id}/productsElenca i prodotti del catalogo

Esempi di codice

Inizializza il connettore 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'
});

Invia eventi 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
})
}
);

Sincronizza una Custom Audience da una lista 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'
});

Estrai insight delle campagne

// 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'
});

Limiti di velocità

RisorsaLimiteDettagli
Marketing APIBasata su tierBasata sul livello di accesso dell’app e sulla spesa
Upload Custom Audience700 richieste/oraPer ad account
Conversions API2.000 eventi/secPer pixel
Insights API200 chiamate/oraPer ad account
Recupero lead200 chiamate/oraPer pagina
Richieste in batch50 richieste/batchPer chiamata batch

Verifica business richiesta

L’accesso completo alla Marketing API richiede la verifica business in Meta Business Manager. Le app non verificate sono limitate alla modalità sviluppo con limiti di velocità ridotti.

Risoluzione dei problemi

ProblemaCausaSoluzione
OAuthExceptionToken scaduto o non validoRigenera il token di accesso System User
Match rate basso Custom AudienceQualità dati scarsaHash di tutti i PII con SHA-256, includi più match key
Conversioni non attribuiteParametri fbc/fbp mancantiPassa Facebook Click ID e Browser ID dai cookie
RATE_LIMIT_REACHEDTroppe chiamate APIImplementa il backoff esponenziale, controlla il tier di accesso API
Lead form non sincronizzatiPermesso leads_retrieval mancanteAggiungi il permesso al System User
Eventi in modalità testtest_event_code ancora impostatoRimuovi il test event code per la produzione

Best practice

  1. Usa i token System User - I System User forniscono token stabili e non scadenti per integrazioni server
  2. Hash di tutti i PII - Esegui l’hash SHA-256 di tutte le informazioni personali identificabili prima dell’invio a Meta
  3. Invia sia CAPI che Pixel - Usa sia Conversions API che Meta Pixel per un tracciamento ridondante con deduplicazione
  4. Includi event ID - Imposta event_id sia sugli eventi CAPI che Pixel per abilitare la deduplicazione
  5. Passa fbc e fbp - Includi Facebook Click ID e Browser ID per la massima attribuzione delle conversioni
  6. Verifica il tuo business - Completa la Business Verification per l’accesso API completo e limiti di velocità più alti
  7. Usa test_event_code - Testa gli eventi Conversions API in Events Manager prima di andare live

Sicurezza

  • Token System User - Token di autenticazione non personali, scopati al business
  • Hashing SHA-256 - Tutti i PII hashati prima della trasmissione ai server Meta
  • App Secret Proof - Livello aggiuntivo opzionale di sicurezza dell’autenticazione
  • Scope business - Permessi limitati a specifici ad account e pagine
  • Conformità Meta - Soggetto ai Meta Platform Terms e alle policy pubblicitarie
  • Termini di Data Processing - Si applicano i Data Processing Terms di Meta per i dati UE

Risorse correlate

Subscribe to updates

developer-docs

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

auto-detect
Assistente AI

Ciao! Chiedimi qualsiasi cosa sulla documentazione.