Klaviyo Connector
Poveži Klaviyo z Brevo prek Tajo za migracijo ali sinhronizacijo marketinških podatkov med platformama. Sinhroniziraj profile, dogodke, sezname, segmente, tokove in podatke kampanj za enotno večkanalno marketinško strategijo.
Pregled
| Lastnost | Vrednost |
|---|---|
| Platforma | Klaviyo |
| Kategorija | Marketing |
| Zahtevnost nastavitve | Srednja |
| Uradna integracija | Ne |
| Sinhronizirani podatki | Profili, dogodki, seznami, segmenti, kampanje |
| Razpoložljivi Skills | 10 |
| API standard | JSON:API |
Funkcionalnosti
- Sinhronizacija profilov – dvosmerna sinhronizacija profilov strank med Klaviyo in Brevo
- Posredovanje dogodkov – posreduj sledene dogodke Klaviyo v Brevo za sprožilce avtomatizacij
- Migracija seznamov – sinhroniziraj sezname Klaviyo v sezname stikov Brevo
- Sinhronizacija segmentov – izvozi segmente Klaviyo kot sezname ali segmente Brevo
- Izvoz podatkov o tokovih – pridobi podatke o uspešnosti tokov za medfplatformno analitiko
- Sinhronizacija kampanj – usklajuj kampanje med kanali Klaviyo in Brevo
- Sinhronizacija kataloga – zrcali kataloge izdelkov med platformama
- Upravljanje kuponov – sinhroniziraj kode kuponov in podatke o porabi
Predpogoji
Preden začneš, se prepričaj, da imaš:
- Račun Klaviyo z dostopom do API
- Zasebni API ključ z ustreznimi obsegi
- Javni API ključ Klaviyo (6-znakovna ID podjetja)
- Brevo račun z dostopom do API
- Tajo račun s poverilnicami API
Avtentikacija
Zasebni API ključ
Klaviyo za avtentikacijo na strani strežnika uporablja zasebne API ključe z obsegastim dostopom. Nastavi ključ v glavi Authorization:
curl https://a.klaviyo.com/api/profiles/ \ -H "Authorization: Klaviyo-API-Key your-private-api-key" \ -H "revision: 2026-01-15"Obsegi API ključev
Pri ustvarjanju zasebnega ključa konfiguriraj obsege:
| Obseg | Dostop | Opis |
|---|---|---|
profiles | Read/Full | Dostop do profilov stikov |
events | Read/Full | Dostop do sledenih dogodkov |
lists | Read/Full | Dostop do seznamov stikov |
segments | Read | Dostop do segmentov |
campaigns | Read | Dostop do podatkov kampanj |
metrics | Read | Dostop do definicij metrik |
flows | Read | Dostop do konfiguracij tokov |
catalogs | Read | Dostop do katalogov izdelkov |
Javni API ključ
Za sledenje na strani odjemalca uporabi 6-znakovno ID podjetja:
curl -X POST "https://a.klaviyo.com/client/events/?company_id=COMPANY_ID" \ -H "Content-Type: application/json" \ -d '{"data": {...}}'OAuth (partnerske integracije)
Klaviyo podpira OAuth za tehnološke partnerje, ki ponujata izboljšano varnost in višje omejitve hitrosti:
curl https://a.klaviyo.com/api/profiles/ \ -H "Authorization: Bearer YOUR_OAUTH_TOKEN" \ -H "revision: 2026-01-15"Konfiguracija
Osnovna nastavitev
connectors: klaviyo: enabled: true private_api_key: "your-klaviyo-private-key" public_api_key: "XXXXXX" api_revision: "2026-01-15"
# Data sync options sync: profiles: true events: true lists: true segments: true catalogs: false
# Brevo list assignment lists: all_contacts: 20 subscribers: 21 high_value: 22Preslikava profilov
Preslikaj lastnosti profilov Klaviyo v atribute stikov Brevo:
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
# Custom properties lifetime_value: LTV total_orders: ORDER_COUNT last_order_date: LAST_ORDER_DATE preferred_channel: CHANNEL_PREFPreslikava dogodkov
Preslikaj metrike Klaviyo v dogodke Brevo:
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"Končne točke API
| Metoda | Končna točka | Opis |
|---|---|---|
GET | /api/profiles/ | Seznam profilov |
POST | /api/profiles/ | Ustvarjanje profila |
PATCH | /api/profiles/{id}/ | Posodabljanje profila |
POST | /api/profile-merge/ | Združevanje podvojenih profilov |
GET | /api/events/ | Seznam dogodkov |
POST | /api/events/ | Ustvarjanje dogodka |
GET | /api/lists/ | Seznam vseh list |
POST | /api/lists/{id}/relationships/profiles/ | Dodaj profile na listo |
GET | /api/segments/ | Seznam segmentov |
GET | /api/campaigns/ | Seznam kampanj |
GET | /api/flows/ | Seznam tokov |
GET | /api/metrics/ | Seznam metrik |
POST | /api/metric-aggregates/ | Poizvedba agregatov metrik |
GET | /api/catalog-items/ | Seznam elementov kataloga |
Primeri kode
Inicializacija konektorja Klaviyo
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Klaviyo accountawait tajo.connectors.connect('klaviyo', { privateApiKey: process.env.KLAVIYO_PRIVATE_KEY, publicApiKey: process.env.KLAVIYO_PUBLIC_KEY});Sinhronizacija profilov v Brevo
// Fetch Klaviyo profiles and sync to 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();
// Each profile follows 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 }// }// }Ustvarjanje dogodka
// Track an event in Klaviyo (forwarded to Brevo via Tajo)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 } } })});Poizvedba agregatov metrik
// Get aggregate metric data for reportingawait 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)'] } } })});Omejitve hitrosti
| Avtentikacija | Omejitev sunka | Stabilna omejitev |
|---|---|---|
| Zasebni API ključ | 75 zahtevkov/s | 700 zahtevkov/min |
| OAuth | 150 zahtevkov/s | 1.500 zahtevkov/min |
| API odjemalca | 100 zahtevkov/s | Ni ustrezno |
| Množične operacije | 10 zahtevkov/s | 100 zahtevkov/min |
Zahtevana glava API revizije
Vsi zahtevki Klaviyo API zahtevajo glavo revision nastavljeno na veljavni datum različice API (npr. 2026-01-15). Zahtevki brez te glave bodo zavrnjeni.
Odpravljanje težav
| Težava | Vzrok | Rešitev |
|---|---|---|
400 Bad Request | Neveljaven ali manjkajoč API ključ | Preveri pravilnost zasebnega API ključa |
403 Forbidden | Nezadosten obseg | Preveri, ali obsegi API ključa ustrezajo zahtevanim dovoljenjem |
Manjkajoča glava revision | Glava ni nastavljena | Dodaj revision: 2026-01-15 vsem zahtevkom |
| Profil ni najden | Napačen identifikator | Za iskanja uporabi ID profila Klaviyo, ne e-maila |
| Dogodki se ne sinhronizirajo | Napačno ime metrike | Ujemaj natančna imena metrik, kot so definirana v Klaviyo |
429 Too Many Requests | Presežena omejitev hitrosti | Implementiraj eksponentni odlog, za višje omejitve razmisli o OAuth |
| Napake oblike JSON:API | Napačna vrsta vsebine | Za glave Content-Type in Accept uporabi application/vnd.api+json |
Najboljše prakse
- Uporabi obliko JSON:API – za vse koristne tovore zahtevkov in odgovorov upoštevaj specifikacijo JSON:API
- Nastavi glavo revizije – vedno vključi glavo
revisionz najnovejšim datumom različice API - Uporabi redka naborja polj – zahtevaj samo potrebna polja z
?fields[profile]=email,first_nameza zmanjšanje velikosti koristne tovore - Izkoristi razmerja – z parametrom
includeJSON:API pridobi sorodne vire v enem zahtevku - Uporabi paginacijo s kazalcem – po velikih nizih rezultatov se pomikaj s parametrom
page[cursor] - Implementiraj množične operacije – za paketni uvoz profilov in ustvarjanje dogodkov uporabi množične končne točke
- Za višje omejitve uporabi OAuth – avtentikacija OAuth zagotavlja 2-krat višje omejitve hitrosti kot zasebni ključi
Varnost
- Obsegi zasebnega API ključa – granularni nadzor dostopa za branje/polni dostop po vrsti vira
- Podpora za OAuth – varno avtentikacijo na osnovi žetonov za partnerske integracije
- Izolacija javnega ključa – ključi na strani odjemalca omejeni na operacije samo za ustvarjanje
- TLS 1.2+ – vsa komunikacija API šifrirana med prenosom
- SOC 2 Type II – Klaviyo je certificiran po SOC 2 Type II
- Skladnost z GDPR – API za zasebnost podatkov za zahteve brisanja profilov