Klaviyo Konektor
Povežite Klaviyo s Brevom putem Taja za migraciju ili sinkronizaciju marketinških podataka između platformi. Sinkronizirajte profile, događaje, popise, segmente, tokove i podatke o kampanjama za ujedinjenu multi-kanalnu marketinšku strategiju.
Pregled
| Svojstvo | Vrijednost |
|---|---|
| Platforma | Klaviyo |
| Kategorija | Marketing |
| Složenost postavljanja | Srednje |
| Službena integracija | Ne |
| Sinkronizirani podaci | Profili, Događaji, Popisi, Segmenti, Kampanje |
| Dostupne vještine | 10 |
| API standard | JSON:API |
Značajke
- Sinkronizacija profila - Dvosmjerna sinkronizacija korisničkih profila između Klaviya i Breva
- Prosljeđivanje događaja - Prosljeđivanje Klaviyo praćenih događaja u Brevo za okidače automatizacije
- Migracija popisa - Sinkronizacija Klaviyo popisa na Brevo popise kontakata
- Sinkronizacija segmenata - Izvoz Klaviyo segmenata kao Brevo popisa ili segmenata
- Izvoz podataka toka - Povlačenje podataka o performansama toka za analitiku na više platformi
- Sinkronizacija kampanja - Koordinacija kampanja u Klaviyu i Brevo kanalima
- Sinkronizacija kataloga - Zrcaljenje kataloga proizvoda između platformi
- Upravljanje kuponima - Sinkronizacija kodova kupona i podataka o korištenju
Preduvjeti
Prije nego što počnete, osigurajte da imate:
- Klaviyo račun s API pristupom
- Privatni API ključ s odgovarajućim opsezima
- Vaš Klaviyo javni API ključ (6-znakasti ID tvrtke)
- Brevo račun s API pristupom
- Tajo račun s API vjerodajnicama
Autentifikacija
Privatni API ključ
Klaviyo koristi privatne API ključeve s opseženim pristupom za autentifikaciju na strani servera. Postavite ključ u zaglavlje Authorization:
curl https://a.klaviyo.com/api/profiles/ \ -H "Authorization: Klaviyo-API-Key your-private-api-key" \ -H "revision: 2026-01-15"Opsezi API ključa
Konfigurirajte opseze pri kreiranju privatnog ključa:
| Opseg | Pristup | Opis |
|---|---|---|
profiles | Čitanje/Puno | Pristup profilima kontakata |
events | Čitanje/Puno | Pristup praćenim događajima |
lists | Čitanje/Puno | Pristup popisima kontakata |
segments | Čitanje | Pristup segmentima |
campaigns | Čitanje | Pristup podacima o kampanjama |
metrics | Čitanje | Pristup definicijama metrika |
flows | Čitanje | Pristup konfiguracijama toka |
catalogs | Čitanje | Pristup katalozima proizvoda |
Javni API ključ
Za praćenje na strani klijenta, koristite 6-znakasti ID tvrtke:
curl -X POST "https://a.klaviyo.com/client/events/?company_id=COMPANY_ID" \ -H "Content-Type: application/json" \ -d '{"data": {...}}'OAuth (Partnerske integracije)
Klaviyo podržava OAuth za tehnološke partnere, nudeći poboljšanu sigurnost i ograničenja brzine:
curl https://a.klaviyo.com/api/profiles/ \ -H "Authorization: Bearer YOUR_OAUTH_TOKEN" \ -H "revision: 2026-01-15"Konfiguracija
Osnovna konfiguracija
connectors: klaviyo: enabled: true private_api_key: "your-klaviyo-private-key" public_api_key: "XXXXXX" api_revision: "2026-01-15"
# Opcije sinkronizacije podataka sync: profiles: true events: true lists: true segments: true catalogs: false
# Dodjela Brevo popisa lists: all_contacts: 20 subscribers: 21 high_value: 22Mapiranje profila
Mapirajte svojstva Klaviyo profila na Brevo atribute kontakata:
profile_mapping: email: email first_name: FIRSTNAME last_name: LASTNAME phone_number: SMS city: CITY region: REGION country: COUNTRY zip: ZIP organization: COMPANY title: JOB_TITLE
# Prilagođena svojstva lifetime_value: LTV total_orders: ORDER_COUNT last_order_date: LAST_ORDER_DATE preferred_channel: CHANNEL_PREFMapiranje događaja
Mapirajte Klaviyo metrike na Brevo događaje:
event_mapping: "Placed Order": "order_completed" "Ordered Product": "product_purchased" "Started Checkout": "checkout_started" "Added to Cart": "cart_updated" "Viewed Product": "product_viewed" "Subscribed to List": "customer_subscribed" "Received Email": "email_received" "Opened Email": "email_opened" "Clicked Email": "email_clicked"API krajnje točke
| Metoda | Krajnja točka | Opis |
|---|---|---|
GET | /api/profiles/ | Popis profila |
POST | /api/profiles/ | Kreiraj profil |
PATCH | /api/profiles/{id}/ | Ažuriraj profil |
POST | /api/profile-merge/ | Spoji duplicirane profile |
GET | /api/events/ | Popis događaja |
POST | /api/events/ | Kreiraj događaj |
GET | /api/lists/ | Popis svih popisa |
POST | /api/lists/{id}/relationships/profiles/ | Dodaj profile na popis |
GET | /api/segments/ | Popis segmenata |
GET | /api/campaigns/ | Popis kampanja |
GET | /api/flows/ | Popis tokova |
GET | /api/metrics/ | Popis metrika |
POST | /api/metric-aggregates/ | Upit agregatnih metrika |
GET | /api/catalog-items/ | Popis stavki kataloga |
Primjeri koda
Inicijalizacija Klaviyo konektora
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Povežite Klaviyo računawait tajo.connectors.connect('klaviyo', { privateApiKey: process.env.KLAVIYO_PRIVATE_KEY, publicApiKey: process.env.KLAVIYO_PUBLIC_KEY});Sinkronizacija profila u Brevo
// Dohvatite Klaviyo profile i sinkronizirajte u Brevoconst response = await fetch('https://a.klaviyo.com/api/profiles/', { headers: { 'Authorization': `Klaviyo-API-Key ${PRIVATE_KEY}`, 'revision': '2026-01-15', 'Accept': 'application/vnd.api+json' }});
const { data } = await response.json();
// Svaki profil slijedi JSON:API format// {// "type": "profile",// "id": "01ABCDEF",// "attributes": {// "email": "[email protected]",// "first_name": "Jane",// "last_name": "Kim",// "phone_number": "+15551234567",// "properties": { "lifetime_value": 450.00 }// }// }Kreiranje događaja
// Prati događaj u Klaviyu (proslijeđen u Brevo putem Taja)await fetch('https://a.klaviyo.com/api/events/', { method: 'POST', headers: { 'Authorization': `Klaviyo-API-Key ${PRIVATE_KEY}`, 'revision': '2026-01-15', 'Content-Type': 'application/vnd.api+json', 'Accept': 'application/vnd.api+json' }, body: JSON.stringify({ data: { type: 'event', attributes: { metric: { data: { type: 'metric', attributes: { name: 'Placed Order' } } }, profile: { }, properties: { OrderId: 'ORD-1234', Value: 89.99, Items: [ { ProductName: 'Widget Pro', Price: 89.99, Quantity: 1 } ] }, value: 89.99 } } })});Upit agregatnih metrika
// Dohvatite agregatne podatke metrika za izvješćivanjeawait fetch('https://a.klaviyo.com/api/metric-aggregates/', { method: 'POST', headers: { 'Authorization': `Klaviyo-API-Key ${PRIVATE_KEY}`, 'revision': '2026-01-15', 'Content-Type': 'application/vnd.api+json' }, body: JSON.stringify({ data: { type: 'metric-aggregate', attributes: { metric_id: 'METRIC_ID', measurements: ['count', 'sum_value'], interval: 'day', filter: ['greater-or-equal(datetime,2024-01-01)', 'less-than(datetime,2024-02-01)'] } } })});Ograničenja brzine
| Autentifikacija | Burst ograničenje | Steady ograničenje |
|---|---|---|
| Privatni API ključ | 75 zahtjeva/sek | 700 zahtjeva/min |
| OAuth | 150 zahtjeva/sek | 1.500 zahtjeva/min |
| Client API | 100 zahtjeva/sek | N/A |
| Skupne operacije | 10 zahtjeva/sek | 100 zahtjeva/min |
Potrebna API revizija
Svi Klaviyo API zahtjevi zahtijevaju zaglavlje revision postavljeno na valjani datum verzije API-ja (npr. 2026-01-15). Zahtjevi bez ovog zaglavlja bit će odbijeni.
Rješavanje problema
| Problem | Uzrok | Rješenje |
|---|---|---|
400 Bad Request | Nevažeći ili nedostaje API ključ | Verificirajte da je privatni API ključ ispravan |
403 Forbidden | Nedovoljan opseg | Provjerite podudaraju li se opsezi API ključa s potrebnim dozvolama |
Nedostaje zaglavlje revision | Zaglavlje nije postavljeno | Dodajte revision: 2026-01-15 svim zahtjevima |
| Profil nije pronađen | Pogrešan identifikator | Koristite Klaviyo ID profila, ne e-mail, za pretraživanja |
| Događaji se ne sinkroniziraju | Pogrešan naziv metrike | Uskladite točne nazive metrika kako su definirani u Klaviyu |
429 Too Many Requests | Premašeno ograničenje brzine | Implementirajte eksponencijalni povratak, razmotrite OAuth za viša ograničenja |
| Greške JSON:API formata | Pogrešan tip sadržaja | Koristite application/vnd.api+json za zaglavlja Content-Type i Accept |
Preporučene prakse
- Koristite JSON:API format - Slijedite specifikaciju JSON:API za sva tijela zahtjeva i odgovora
- Postavite zaglavlje revizije - Uvijek uključite zaglavlje
revisions najnovijim datumom verzije API-ja - Koristite rijetka polja - Zatražite samo potrebna polja s
?fields[profile]=email,first_nameza smanjenje veličine opterećenja - Iskoristite veze - Koristite JSON:API parametar
includeza dohvaćanje povezanih resursa u jednom zahtjevu - Koristite paginaciju kursorom - Navigirajte kroz velike skupove rezultata s parametrom
page[cursor] - Implementirajte skupne operacije - Koristite skupne krajnje točke za skupni uvoz profila i kreiranje događaja
- Koristite OAuth za viša ograničenja - OAuth autentifikacija pruža 2x viša ograničenja brzine od privatnih ključeva
Sigurnost
- Opsezi privatnog API ključa - Granularna kontrola pristupa Čitanje/Puno po vrsti resursa
- OAuth podrška - Sigurna autentifikacija temeljena na tokenima za partnerske integracije
- Izolacija javnog ključa - Ključevi na strani klijenta ograničeni na operacije samo kreiranja
- TLS 1.2+ - Sva API komunikacija šifrirana u prijenosu
- SOC 2 Type II - Klaviyo je SOC 2 Type II certificiran
- GDPR usklađenost - Data Privacy API za zahtjeve brisanja profila