Konektor Meta Ads
Połącz Meta Ads (Facebook i Instagram) z Brevo przez Tajo, aby synchronizować Custom Audiences, importować zdarzenia konwersji przez Conversions API i łączyć płatną reklamę w mediach społecznościowych z automatyzacją marketingu cyklu życia.
Przegląd
| Właściwość | Wartość |
|---|---|
| Platforma | Meta Ads (Facebook, Instagram, Messenger, WhatsApp) |
| Kategoria | Marketing |
| Poziom konfiguracji | Zaawansowany |
| Integracja oficjalna | Nie |
| Synchronizowane dane | Odbiorcy, Konwersje, Kampanie, Leady |
| Dostępne Skills | 8 |
| Wersja API | v25.0 (Graph API) |
Funkcje
- Synchronizacja Custom Audience - Przesyłaj listy kontaktów Brevo jako Meta Custom Audiences
- Conversions API (CAPI) - Wysyłaj zdarzenia konwersji po stronie serwera dla dokładnej atrybucji
- Synchronizacja formularzy leadów - Importuj przesłania Facebook Lead Ads bezpośrednio jako kontakty Brevo
- Wglądy w kampanie - Pobierz metryki wydajności reklam do dashboardów Tajo
- Odbiorcy Lookalike - Twórz Lookalike Audiences z zsynchronizowanych segmentów Brevo
- Synchronizacja katalogu - Synchronizuj katalogi produktów dla dynamicznych reklam produktów
- Wieloplatformowe - Jedna integracja obejmuje reklamy na Facebook, Instagram, Messenger i WhatsApp
Wymagania wstępne
Zanim zaczniesz, upewnij się, że masz:
- Konto Meta Business Manager
- Aplikację Facebook z dostępem do Marketing API
- Użytkownika systemowego z odpowiednimi uprawnieniami
- Token dostępu z uprawnieniami
ads_managementiads_read - Konto Brevo z dostępem do API
- Konto Tajo z poświadczeniami API
Uwierzytelnianie
Token dostępu użytkownika systemowego
Meta zaleca używanie tokenów użytkowników systemowych dla integracji serwer-serwer. Te tokeny nie wygasają.
# Required permissions for System Userads_managementads_readbusiness_managementleads_retrievalpages_read_engagementcatalog_managementUwierzytelnianie na poziomie aplikacji
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"Konfiguracja
Podstawowa konfiguracja
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"Konfiguracja Custom Audience
Synchronizuj listy Brevo z 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"Konfiguracja 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"Endpointy API
| Metoda | Endpoint | Opis |
|---|---|---|
POST | /v25.0/act_{id}/customaudiences | Utwórz Custom Audience |
POST | /v25.0/{audience_id}/users | Dodaj użytkowników do Custom Audience |
DELETE | /v25.0/{audience_id}/users | Usuń użytkowników z Custom Audience |
POST | /v25.0/{pixel_id}/events | Wyślij zdarzenia Conversions API |
GET | /v25.0/act_{id}/campaigns | Lista kampanii |
GET | /v25.0/act_{id}/insights | Pobierz wglądy kampanii |
GET | /v25.0/{form_id}/leads | Pobierz przesłania formularzy leadów |
POST | /v25.0/act_{id}/adcreatives | Utwórz kreacje reklam |
GET | /v25.0/{catalog_id}/products | Lista produktów katalogu |
Przykłady kodu
Inicjalizacja konektora 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 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'});Wysyłaj zdarzenia Conversions API
// 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 }) });Synchronizuj Custom Audience z listy Brevo
// 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'});Pobierz wglądy kampanii
// 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'});Limity API
| Zasób | Limit | Szczegóły |
|---|---|---|
| Marketing API | Oparty na poziomie | Na podstawie poziomu dostępu aplikacji i wydatków |
| Przesyłanie Custom Audience | 700 żądań/godzinę | Na konto reklamowe |
| Conversions API | 2 000 zdarzeń/sek | Na piksel |
| Insights API | 200 wywołań/godzinę | Na konto reklamowe |
| Pobieranie leadów | 200 wywołań/godzinę | Na stronę |
| Żądania wsadowe | 50 żądań/partię | Na wywołanie wsadowe |
Wymagana weryfikacja firmy
Pełny dostęp do Marketing API wymaga weryfikacji firmy w Meta Business Manager. Niezweryfikowane aplikacje są ograniczone do trybu deweloperskiego ze zmniejszonymi limitami szybkości.
Rozwiązywanie problemów
| Problem | Przyczyna | Rozwiązanie |
|---|---|---|
OAuthException | Token wygasł lub nieprawidłowy | Wygeneruj ponownie token dostępu użytkownika systemowego |
| Niski wskaźnik dopasowania Custom Audience | Niska jakość danych | Hashuj wszystkie PII SHA-256, uwzględnij wiele kluczy dopasowania |
| Konwersje nie atrybułowane | Brakujące parametry fbc/fbp | Przekazuj Facebook Click ID i Browser ID z cookies |
RATE_LIMIT_REACHED | Za dużo wywołań API | Wdrożyj wykładnicze wycofanie, sprawdź poziom dostępu API |
| Formularze leadów nie synchronizują się | Brakujące uprawnienie leads_retrieval | Dodaj uprawnienie do użytkownika systemowego |
| Zdarzenia w trybie testowym | test_event_code wciąż ustawiony | Usuń kod zdarzenia testowego dla produkcji |
Najlepsze praktyki
- Używaj tokenów użytkowników systemowych - Użytkownicy systemowi zapewniają stabilne, niewygasające tokeny dla integracji serwerowych
- Hashuj wszystkie PII - Hashuj SHA-256 wszystkie dane osobowe przed wysłaniem do Meta
- Wysyłaj zarówno CAPI jak i Pixel - Używaj zarówno Conversions API jak i Meta Pixel dla redundantnego śledzenia z deduplikacją
- Uwzględnij ID zdarzeń - Ustaw
event_idzarówno na zdarzeniach CAPI jak i Pixel, aby włączyć deduplikację - Przekazuj
fbcifbp- Uwzględnij Facebook Click ID i Browser ID dla maksymalnej atrybucji konwersji - Zweryfikuj firmę - Ukończ weryfikację firmy dla pełnego dostępu do API i wyższych limitów szybkości
- Używaj
test_event_code- Testuj zdarzenia Conversions API w Events Manager przed uruchomieniem na produkcji
Bezpieczeństwo
- Tokeny użytkowników systemowych - Nieosobowe, tokeny uwierzytelniania o zakresie biznesowym
- Hashowanie SHA-256 - Wszystkie PII hashowane przed transmisją do serwerów Meta
- App Secret Proof - Opcjonalna dodatkowa warstwa bezpieczeństwa uwierzytelniania
- Zakres biznesowy - Uprawnienia ograniczone do określonych kont reklamowych i stron
- Zgodność Meta - Podlega Meta Platform Terms i politykom reklamowym
- Data Processing Terms - Meta’s Data Processing Terms mają zastosowanie dla danych z UE