Meta Ads-koppling

Anslut Meta Ads (Facebook & Instagram) till Brevo via Tajo för att synkronisera Custom Audiences, importera konverteringshändelser via Conversions API och koppla betald social annonsering till livscykelmarknadsautomation.

Översikt

EgenskapVärde
PlattformMeta Ads (Facebook, Instagram, Messenger, WhatsApp)
KategoriMarknadsföring
InstallationskomplexitetAvancerad
Officiell integrationNej
Data som synkasMålgrupper, konverteringar, kampanjer, leads
Tillgängliga skills8
API-versionv25.0 (Graph API)

Funktioner

  • Synk av Custom Audience - Ladda upp Brevo-kontaktlistor som Meta Custom Audiences
  • Conversions API (CAPI) - Skicka konverteringshändelser på serversidan för exakt attribution
  • Synk av lead-formulär - Importera Facebook Lead Ads-inskickningar direkt till Brevo-kontakter
  • Kampanjinsikter - Hämta annonsprestandamått till Tajo-dashboards
  • Lookalike-målgrupper - Skapa Lookalike Audiences från synkade Brevo-segment
  • Katalogsynk - Synka produktkataloger för dynamiska produktannonser
  • Flera plattformar - En integration täcker Facebook-, Instagram-, Messenger- och WhatsApp-annonser

Förutsättningar

Innan du börjar, se till att du har:

  1. Ett Meta Business Manager-konto
  2. En Facebook-app med Marketing API-åtkomst
  3. En System User med lämpliga behörigheter
  4. En Access Token med behörigheterna ads_management och ads_read
  5. Ett Brevo-konto med API-åtkomst
  6. Ett Tajo-konto med API-uppgifter

Autentisering

Access Token för System User

Meta rekommenderar System User-tokens för integrationer server till server. Dessa tokens går inte ut.

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

Autentisering på apppnivå

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"

Konfiguration

Grundläggande konfiguration

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"

Konfiguration för Custom Audience

Synka Brevo-listor till 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"

Konfiguration för 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-ändpunkter

MetodÄndpunktBeskrivning
POST/v25.0/act_{id}/customaudiencesSkapa en Custom Audience
POST/v25.0/{audience_id}/usersLägg till användare i Custom Audience
DELETE/v25.0/{audience_id}/usersTa bort användare från Custom Audience
POST/v25.0/{pixel_id}/eventsSkicka Conversions API-händelser
GET/v25.0/act_{id}/campaignsLista kampanjer
GET/v25.0/act_{id}/insightsHämta kampanjinsikter
GET/v25.0/{form_id}/leadsHämta lead-formulärinskickningar
POST/v25.0/act_{id}/adcreativesSkapa annonskreativ
GET/v25.0/{catalog_id}/productsLista katalogprodukter

Kodexempel

Initiera Meta Ads-kopplingen

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

Skicka Conversions API-händelser

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

Synka Custom Audience från Brevo-lista

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

Hämta kampanjinsikter

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

API-gränser

ResursGränsDetaljer
Marketing APITier-baseratBaserat på appens åtkomstnivå och spend
Custom Audience-uppladdningar700 förfrågningar/timmePer annonskonto
Conversions API2 000 händelser/sekPer pixel
Insights API200 anrop/timmePer annonskonto
Lead-hämtning200 anrop/timmePer sida
Batch-förfrågningar50 förfrågningar/batchPer batch-anrop

Företagsverifiering krävs

Full åtkomst till Marketing API kräver företagsverifiering i Meta Business Manager. Overifierade appar är begränsade till utvecklingsläge med begränsade rate limits.

Felsökning

ProblemOrsakLösning
OAuthExceptionToken utgången eller ogiltigGenerera om System User access token
Låg matchningsgrad för Custom AudienceDålig datakvalitetHasha all PII med SHA-256, inkludera flera match keys
Konverteringar attribueras intefbc/fbp-parametrar saknasSkicka Facebook Click ID och Browser ID från cookies
RATE_LIMIT_REACHEDFör många API-anropImplementera exponentiell backoff, kontrollera API-åtkomstnivån
Lead-formulär synkas inteBehörigheten leads_retrieval saknasLägg till behörigheten för System User
Händelser i testlägetest_event_code är fortfarande sattTa bort testhändelsekoden i produktion

Bästa praxis

  1. Använd System User-tokens - System Users tillhandahåller stabila, icke-utgående tokens för serverintegrationer
  2. Hasha all PII - Hasha all personligt identifierbar information med SHA-256 innan den skickas till Meta
  3. Skicka både CAPI och Pixel - Använd både Conversions API och Meta Pixel för redundant spårning med deduplicering
  4. Inkludera event-ID:n - Sätt event_id på både CAPI- och Pixel-händelser för att möjliggöra deduplicering
  5. Skicka fbc och fbp - Inkludera Facebook Click ID och Browser ID för maximal konverteringsattribution
  6. Verifiera ditt företag - Slutför företagsverifieringen för full API-åtkomst och högre rate limits
  7. Använd test_event_code - Testa Conversions API-händelser i Events Manager innan du går live

Säkerhet

  • System User-tokens - Icke-personliga, företagsscopade autentiseringstokens
  • SHA-256-hashning - All PII hashas innan överföring till Metas servrar
  • App Secret Proof - Valbart extra säkerhetslager för autentisering
  • Företagsscoping - Behörigheter scopas till specifika annonskonton och sidor
  • Meta-efterlevnad - Omfattas av Meta Platform Terms och annonspolicyer
  • Data Processing Terms - Metas Data Processing Terms gäller för EU-data

Relaterade resurser

Subscribe to updates

developer-docs

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

auto-detect
AI-assistent

Hej! Fråga mig om dokumentationen.