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

SvojstvoVrijednost
PlatformaKlaviyo
KategorijaMarketing
Složenost postavljanjaSrednje
Službena integracijaNe
Sinkronizirani podaciProfili, Događaji, Popisi, Segmenti, Kampanje
Dostupne vještine10
API standardJSON: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:

  1. Klaviyo račun s API pristupom
  2. Privatni API ključ s odgovarajućim opsezima
  3. Vaš Klaviyo javni API ključ (6-znakasti ID tvrtke)
  4. Brevo račun s API pristupom
  5. 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:

Terminal window
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:

OpsegPristupOpis
profilesČitanje/PunoPristup profilima kontakata
eventsČitanje/PunoPristup praćenim događajima
listsČitanje/PunoPristup popisima kontakata
segmentsČitanjePristup segmentima
campaignsČitanjePristup podacima o kampanjama
metricsČitanjePristup definicijama metrika
flowsČitanjePristup konfiguracijama toka
catalogsČitanjePristup katalozima proizvoda

Javni API ključ

Za praćenje na strani klijenta, koristite 6-znakasti ID tvrtke:

Terminal window
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:

Terminal window
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: 22

Mapiranje 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_PREF

Mapiranje 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

MetodaKrajnja točkaOpis
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čun
await 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 Brevo
const 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: {
data: { type: 'profile', attributes: { email: '[email protected]' } }
},
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šćivanje
await 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

AutentifikacijaBurst ograničenjeSteady ograničenje
Privatni API ključ75 zahtjeva/sek700 zahtjeva/min
OAuth150 zahtjeva/sek1.500 zahtjeva/min
Client API100 zahtjeva/sekN/A
Skupne operacije10 zahtjeva/sek100 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

ProblemUzrokRješenje
400 Bad RequestNevažeći ili nedostaje API ključVerificirajte da je privatni API ključ ispravan
403 ForbiddenNedovoljan opsegProvjerite podudaraju li se opsezi API ključa s potrebnim dozvolama
Nedostaje zaglavlje revisionZaglavlje nije postavljenoDodajte revision: 2026-01-15 svim zahtjevima
Profil nije pronađenPogrešan identifikatorKoristite Klaviyo ID profila, ne e-mail, za pretraživanja
Događaji se ne sinkronizirajuPogrešan naziv metrikeUskladite točne nazive metrika kako su definirani u Klaviyu
429 Too Many RequestsPremašeno ograničenje brzineImplementirajte eksponencijalni povratak, razmotrite OAuth za viša ograničenja
Greške JSON:API formataPogrešan tip sadržajaKoristite application/vnd.api+json za zaglavlja Content-Type i Accept

Preporučene prakse

  1. Koristite JSON:API format - Slijedite specifikaciju JSON:API za sva tijela zahtjeva i odgovora
  2. Postavite zaglavlje revizije - Uvijek uključite zaglavlje revision s najnovijim datumom verzije API-ja
  3. Koristite rijetka polja - Zatražite samo potrebna polja s ?fields[profile]=email,first_name za smanjenje veličine opterećenja
  4. Iskoristite veze - Koristite JSON:API parametar include za dohvaćanje povezanih resursa u jednom zahtjevu
  5. Koristite paginaciju kursorom - Navigirajte kroz velike skupove rezultata s parametrom page[cursor]
  6. Implementirajte skupne operacije - Koristite skupne krajnje točke za skupni uvoz profila i kreiranje događaja
  7. 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

Povezani resursi

Subscribe to updates

developer-docs

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

auto-detect
AI asistent

Bok! Pitajte me o dokumentaciji.