Conector Klaviyo

Conectați Klaviyo la Brevo prin Tajo pentru a migra sau sincroniza datele de marketing între platforme. Sincronizați profiluri, evenimente, liste, segmente, fluxuri și date de campanie pentru o strategie de marketing multi-canal unificată.

Prezentare generală

ProprietateValoare
PlatformăKlaviyo
CategorieMarketing
Complexitate configurareMedie
Integrare oficialăNu
Date sincronizateProfiluri, Evenimente, Liste, Segmente, Campanii
Skilluri disponibile10
Standard APIJSON:API

Funcționalități

  • Sincronizare profiluri - Sincronizare bidirecțională a profilurilor clienților între Klaviyo și Brevo
  • Redirecționare evenimente - Redirecționați evenimentele urmărite Klaviyo la Brevo pentru declanșatoare de automatizare
  • Migrare liste - Sincronizați listele Klaviyo la listele de contacte Brevo
  • Sincronizare segmente - Exportați segmentele Klaviyo ca liste sau segmente Brevo
  • Export date flux - Extrageți date de performanță ale fluxurilor pentru analize cross-platformă
  • Sincronizare campanii - Coordonați campaniile între canalele Klaviyo și Brevo
  • Sincronizare catalog - Oglindirea cataloagelor de produse între platforme
  • Gestionare cupoane - Sincronizați codurile de cupon și datele de utilizare

Cerințe preliminare

Înainte de a începe, asigurați-vă că aveți:

  1. Un cont Klaviyo cu acces API
  2. O Cheie API privată cu scope-uri corespunzătoare
  3. Cheia API publică Klaviyo (ID companie din 6 caractere)
  4. Un cont Brevo cu acces API
  5. Un cont Tajo cu credențiale API

Autentificare

Cheie API privată

Klaviyo utilizează chei API private cu acces cu scope pentru autentificarea server-side. Setați cheia în antetul Authorization:

Terminal window
curl https://a.klaviyo.com/api/profiles/ \
-H "Authorization: Klaviyo-API-Key your-private-api-key" \
-H "revision: 2026-01-15"

Scope-uri cheie API

Configurați scope-urile la crearea cheii private:

ScopeAccesDescriere
profilesCitire/CompletAcces profiluri contacte
eventsCitire/CompletAcces evenimente urmărite
listsCitire/CompletAcces liste contacte
segmentsCitireAcces segmente
campaignsCitireAcces date campanii
metricsCitireAcces definiții metrici
flowsCitireAcces configurații fluxuri
catalogsCitireAcces cataloage produse

Cheie API publică

Pentru urmărire client-side, utilizați ID-ul companiei din 6 caractere:

Terminal window
curl -X POST "https://a.klaviyo.com/client/events/?company_id=COMPANY_ID" \
-H "Content-Type: application/json" \
-d '{"data": {...}}'

OAuth (Integrări parteneri)

Klaviyo suportă OAuth pentru parteneri tech, oferind securitate și limite de rată îmbunătățite:

Terminal window
curl https://a.klaviyo.com/api/profiles/ \
-H "Authorization: Bearer YOUR_OAUTH_TOKEN" \
-H "revision: 2026-01-15"

Configurare

Configurare de bază

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

Mapare profiluri

Mapați proprietățile profilurilor Klaviyo la atributele de contact 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_PREF

Mapare evenimente

Mapați metricile Klaviyo la evenimentele 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"

Puncte finale API

MetodăPunct finalDescriere
GET/api/profiles/Listează profiluri
POST/api/profiles/Creează un profil
PATCH/api/profiles/{id}/Actualizează un profil
POST/api/profile-merge/Combină profiluri duplicate
GET/api/events/Listează evenimente
POST/api/events/Creează un eveniment
GET/api/lists/Listează toate listele
POST/api/lists/{id}/relationships/profiles/Adaugă profiluri la o listă
GET/api/segments/Listează segmentele
GET/api/campaigns/Listează campaniile
GET/api/flows/Listează fluxurile
GET/api/metrics/Listează metricile
POST/api/metric-aggregates/Interogați agregate de metrici
GET/api/catalog-items/Listează articolele din catalog

Exemple de cod

Inițializare conector Klaviyo

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect Klaviyo account
await tajo.connectors.connect('klaviyo', {
privateApiKey: process.env.KLAVIYO_PRIVATE_KEY,
publicApiKey: process.env.KLAVIYO_PUBLIC_KEY
});

Sincronizare profiluri la Brevo

// Fetch Klaviyo profiles and sync to 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();
// 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 }
// }
// }

Creare eveniment

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

Interogare agregate de metrici

// Get aggregate metric data for reporting
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)']
}
}
})
});

Limite de rată

AutentificareLimită burstLimită stabilă
Cheie API privată75 cereri/sec700 cereri/min
OAuth150 cereri/sec1.500 cereri/min
Client API100 cereri/secN/A
Operații în bloc10 cereri/sec100 cereri/min

Antet de revizuire API obligatoriu

Toate cererile API Klaviyo necesită antetul revision setat la o dată validă a versiunii API (ex: 2026-01-15). Cererile fără acest antet vor fi respinse.

Depanare

ProblemăCauzăSoluție
400 Bad RequestCheie API invalidă sau lipsăVerificați că cheia API privată este corectă
403 ForbiddenScope insuficientVerificați că scope-urile cheii API corespund permisiunilor necesare
Antet revision lipsăAntet nesetatAdăugați revision: 2026-01-15 la toate cererile
Profil negăsitIdentificator greșitUtilizați ID-ul profilului Klaviyo, nu e-mailul, pentru căutări
Evenimente nesincronizateNume metric greșitPotriviți exact numele metricilor definite în Klaviyo
429 Too Many RequestsLimită de rată depășităImplementați backoff exponențial, luați în considerare OAuth pentru limite mai mari
Erori format JSON:APITip de conținut greșitUtilizați application/vnd.api+json pentru antetele Content-Type și Accept

Bune practici

  1. Utilizați formatul JSON:API - Urmați specificația JSON:API pentru toate payload-urile de cerere și răspuns
  2. Setați antetul de revizuire - Includeți întotdeauna antetul revision cu cea mai recentă dată a versiunii API
  3. Utilizați câmpuri sparse - Solicitați doar câmpurile necesare cu ?fields[profile]=email,first_name pentru a reduce dimensiunea payload-ului
  4. Valorificați relațiile - Utilizați parametrul include JSON:API pentru a prelua resursele conexe într-o singură cerere
  5. Utilizați paginarea cu cursor - Navigați seturi de rezultate mari cu parametrul page[cursor]
  6. Implementați operații în bloc - Utilizați punctele finale bulk pentru importuri de profiluri în lot și crearea de evenimente
  7. Utilizați OAuth pentru limite mai mari - Autentificarea OAuth oferă limite de rată de 2x mai mari față de cheile private

Securitate

  • Scope-uri cheie API privată - Control acces granular Citire/Complet per tip de resursă
  • Suport OAuth - Autentificare securizată bazată pe token pentru integrările partenerilor
  • Izolare cheie publică - Cheile client limitate la operații numai de creare
  • TLS 1.2+ - Toate comunicațiile API criptate în tranzit
  • SOC 2 Tip II - Klaviyo este certificat SOC 2 Tip II
  • Conformitate GDPR - Data Privacy API pentru cereri de ștergere profiluri

Resurse conexe

Subscribe to updates

developer-docs

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

auto-detect
Asistent AI

Bună! Întreabă-mă orice despre documentație.