Meta Ads konektor
Poveži Meta Ads (Facebook i Instagram) sa Brevo putem Tajo da sinhronizuješ Custom Audiences, uvezuješ konverzijske događaje putem Conversions API-ja i premostiš plaćeno socijalno oglašavanje sa marketing automatizacijom životnog ciklusa.
Pregled
| Svojstvo | Vrednost |
|---|---|
| Platforma | Meta Ads (Facebook, Instagram, Messenger, WhatsApp) |
| Kategorija | Marketing |
| Složenost podešavanja | Napredno |
| Zvanična integracija | Ne |
| Sinhronizovani podaci | Publike, Konverzije, Kampanje, Potencijalni kupci |
| Dostupne veštine | 8 |
| Verzija API-ja | v25.0 (Graph API) |
Karakteristike
- Sinhronizacija Custom Audience - Upload Brevo lista kontakata kao Meta Custom Audiences
- Conversions API (CAPI) - Slanje konverzijskih događaja sa strane servera za preciznu atribuciju
- Sinhronizacija formulara za potencijalne kupce - Direktan uvoz podnesaka Facebook Lead Ads u Brevo kontakte
- Uvidi iz kampanja - Povlačenje metrika performansi reklama u Tajo dashboard-e
- Lookalike publike - Kreiranje Lookalike Audiences iz sinhronizovanih Brevo segmenata
- Sinhronizacija kataloga - Sinhronizacija kataloga proizvoda za dinamične reklame proizvoda
- Više platforma - Jedna integracija pokriva Facebook, Instagram, Messenger i WhatsApp reklame
Preduslovi
Pre nego što započneš, proveri da imaš:
- Meta Business Manager nalog
- Facebook aplikaciju sa Marketing API pristupom
- System User sa odgovarajućim dozvolama
- Access Token sa dozvolama
ads_managementiads_read - Brevo nalog sa API pristupom
- Tajo nalog sa API akreditivima
Autentifikacija
System User Access Token
Meta preporučuje korišćenje System User tokena za server-to-server integracije. Ovi tokeni ne ističu.
# Required permissions for System Userads_managementads_readbusiness_managementleads_retrievalpages_read_engagementcatalog_managementAutentifikacija na nivou aplikacije
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"Konfiguracija
Osnovno podešavanje
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"Konfiguracija Custom Audience
Sinhronizacija Brevo lista sa Meta Custom Audiences:
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"Konfiguracija 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"API endpointi
| Metoda | Endpoint | Opis |
|---|---|---|
POST | /v25.0/act_{id}/customaudiences | Kreiranje Custom Audience |
POST | /v25.0/{audience_id}/users | Dodavanje korisnika u Custom Audience |
DELETE | /v25.0/{audience_id}/users | Uklanjanje korisnika iz Custom Audience |
POST | /v25.0/{pixel_id}/events | Slanje Conversions API događaja |
GET | /v25.0/act_{id}/campaigns | Listanje kampanja |
GET | /v25.0/act_{id}/insights | Dohvatanje uvida iz kampanja |
GET | /v25.0/{form_id}/leads | Dohvatanje podnesaka formulara za potencijalne kupce |
POST | /v25.0/act_{id}/adcreatives | Kreiranje reklamnih kreativa |
GET | /v25.0/{catalog_id}/products | Listanje proizvoda kataloga |
Primeri koda
Inicijalizacija Meta Ads konektora
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Meta Ads accountawait 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'});Slanje Conversions API događaja
// Send a purchase event via Conversions APIconst 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: { 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 }) });Sinhronizacija Custom Audience iz Brevo liste
// Upload a Brevo contact list as a Meta Custom Audienceawait tajo.connectors.syncAudience('meta-ads', { brevoListId: 5, audienceName: 'High Value Customers', matchKeys: ['EMAIL', 'PHONE', 'FN', 'LN'], syncMode: 'mirror'});Povlačenje uvida iz kampanja
// Get campaign performance metricsconst 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'});Ograničenja brzine
| Resurs | Limit | Detalji |
|---|---|---|
| Marketing API | Na osnovu nivoa | Zasniva se na nivou pristupa aplikacije i potrošnji |
| Uploadovi Custom Audience | 700 zahteva/sat | Po reklamnom nalogu |
| Conversions API | 2.000 događaja/sek | Po pikselu |
| Insights API | 200 poziva/sat | Po reklamnom nalogu |
| Dohvatanje potencijalnih kupaca | 200 poziva/sat | Po stranici |
| Batch zahtevi | 50 zahteva/batch | Po batch pozivu |
Potrebna verifikacija firme
Pun pristup Marketing API-ju zahteva verifikaciju firme u Meta Business Manager-u. Neoverene aplikacije su ograničene na razvojni režim sa smanjenim ograničenjima brzine.
Rešavanje problema
| Problem | Uzrok | Rešenje |
|---|---|---|
OAuthException | Token istekao ili nevažeći | Regeneriši System User access token |
| Niska stopa podudaranja Custom Audience | Loš kvalitet podataka | Hašuj sva PII sa SHA-256, uključi više ključeva za podudaranje |
| Konverzije nisu atribuirane | Nedostaju fbc/fbp parametri | Prosleđuj Facebook Click ID i Browser ID iz kolačića |
RATE_LIMIT_REACHED | Previše API poziva | Implementiraj eksponencijalno usporavanje, proveri nivo API pristupa |
| Formulari za potencijalne kupce se ne sinhronizuju | Nedostaje dozvola leads_retrieval | Dodaj dozvolu System User-u |
| Događaji u test režimu | test_event_code je još uvek postavljen | Ukloni kod test događaja za produkciju |
Najbolje prakse
- Koristi System User tokene - System Users pružaju stabilne, trajne tokene za serverske integracije
- Hašuj sva PII - SHA-256 hašuj sve lično identifikujuće informacije pre slanja u Meta
- Koristi i CAPI i Pixel - Koristi i Conversions API i Meta Pixel za redundantno praćenje sa deduplikacijom
- Uključi ID-eve događaja - Postavi
event_idi na CAPI i na Pixel događajima da omogućiš deduplikaciju - Prosleđuj
fbcifbp- Uključi Facebook Click ID i Browser ID za maksimalnu atribuciju konverzija - Verifikuj svoju firmu - Završi verifikaciju firme za pun API pristup i više limite brzine
- Koristi
test_event_code- Testiraj Conversions API događaje u Events Manager-u pre nego što kreneš uživo
Bezbednost
- System User tokeni - Nepersonalni, poslovni tokeni za autentifikaciju
- SHA-256 hašovanje - Sva PII hašovana pre prenosa na Meta servere
- App Secret Proof - Opcioni dodatni sloj bezbednosti autentifikacije
- Poslovni opseg - Dozvole skopovane na specifične reklamne naloge i stranice
- Meta usklađenost - Podleže Meta Platform Terms i politikama oglašavanja
- Uslovi obrade podataka - Meta Data Processing Terms se primenjuju za podatke u EU