Klaviyo-kobling

Koble Klaviyo til Brevo gjennom Tajo for å migrere eller synkronisere markedsføringsdata mellom plattformer. Synkroniser profiler, hendelser, lister, segmenter, flows og kampanjedata for en enhetlig tverrkanalsmarkedsføringsstrategi.

Oversikt

EgenskapVerdi
PlattformKlaviyo
KategoriMarkedsføring
OppsettskompleksitetModerat
Offisiell integrasjonNei
Synkroniserte dataProfiler, hendelser, lister, segmenter, kampanjer
Tilgjengelige ferdigheter10
API-standardJSON:API

Funksjoner

  • Profilsynkronisering - Toveis synkronisering av kundeprofiler mellom Klaviyo og Brevo
  • Hendelsesvideresending - Videresend sporede Klaviyo-hendelser til Brevo for automatiseringsutløsere
  • Listemigrering - Synkroniser Klaviyo-lister til Brevo-kontaktlister
  • Segmentsynkronisering - Eksporter Klaviyo-segmenter som Brevo-lister eller -segmenter
  • Flow-dataeksport - Hent flow-ytelsesdata for tverrplattform-analyse
  • Kampanjesynkronisering - Koordiner kampanjer på tvers av Klaviyo- og Brevo-kanaler
  • Katalogsynkronisering - Speil produktkataloger mellom plattformer
  • Kupongadministrasjon - Synkroniser kupongkoder og bruksdata

Forutsetninger

Før du begynner, sørg for at du har:

  1. En Klaviyo-konto med API-tilgang
  2. En Private API Key med passende scopes
  3. Din Klaviyo Public API Key (6-tegns selskaps-ID)
  4. En Brevo-konto med API-tilgang
  5. En Tajo-konto med API-påloggingsdetaljer

Autentisering

Private API Key

Klaviyo bruker private API-nøkler med avgrenset tilgang for tjenersideautentisering. Sett nøkkelen i Authorization-headeren:

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

API-nøkkelscopes

Konfigurer scopes når du oppretter den private nøkkelen:

ScopeTilgangBeskrivelse
profilesRead/FullTilgang til kontaktprofiler
eventsRead/FullTilgang til sporede hendelser
listsRead/FullTilgang til kontaktlister
segmentsReadTilgang til segmenter
campaignsReadTilgang til kampanjedata
metricsReadTilgang til metrikkdefinisjoner
flowsReadTilgang til flow-konfigurasjoner
catalogsReadTilgang til produktkataloger

Public API Key

For sporing på klientsiden, bruk 6-tegns selskaps-ID:

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

OAuth (partnerintegrasjoner)

Klaviyo støtter OAuth for tekniske partnere, noe som gir forbedret sikkerhet og høyere ratebegrensninger:

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

Konfigurasjon

Grunnleggende oppsett

connectors:
klaviyo:
enabled: true
private_api_key: "your-klaviyo-private-key"
public_api_key: "XXXXXX"
api_revision: "2026-01-15"
# Synkroniseringsalternativer
sync:
profiles: true
events: true
lists: true
segments: true
catalogs: false
# Tildeling av Brevo-lister
lists:
all_contacts: 20
subscribers: 21
high_value: 22

Profilmapping

Mapp Klaviyo-profilegenskaper til Brevo-kontaktattributter:

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
# Egendefinerte egenskaper
lifetime_value: LTV
total_orders: ORDER_COUNT
last_order_date: LAST_ORDER_DATE
preferred_channel: CHANNEL_PREF

Hendelsesmapping

Mapp Klaviyo-metrikker til Brevo-hendelser:

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-endepunkter

MetodeEndepunktBeskrivelse
GET/api/profiles/List profiler
POST/api/profiles/Opprett en profil
PATCH/api/profiles/{id}/Oppdater en profil
POST/api/profile-merge/Slå sammen duplikatprofiler
GET/api/events/List hendelser
POST/api/events/Opprett en hendelse
GET/api/lists/List alle lister
POST/api/lists/{id}/relationships/profiles/Legg profiler til en liste
GET/api/segments/List segmenter
GET/api/campaigns/List kampanjer
GET/api/flows/List flows
GET/api/metrics/List metrikker
POST/api/metric-aggregates/Spør metrikkaggregater
GET/api/catalog-items/List katalogelementer

Kodeeksempler

Initialiser Klaviyo-kobling

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

Synkroniser profiler til Brevo

// Hent Klaviyo-profiler og synkroniser til 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();
// Hver profil følger 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 }
// }
// }

Opprett en hendelse

// Spor en hendelse i Klaviyo (videresendes til 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
}
}
})
});

Spør om metrikkaggregater

// Hent aggregerte metrikkdata for rapportering
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)']
}
}
})
});

Ratebegrensninger

AutentiseringBurstgrenseKontinuerlig grense
Private API Key75 forespørsler/sek700 forespørsler/min
OAuth150 forespørsler/sek1 500 forespørsler/min
Client API100 forespørsler/sekN/A
Bulkoperasjoner10 forespørsler/sek100 forespørsler/min

API-revisjon kreves

Alle Klaviyo API-forespørsler krever revision-headeren satt til en gyldig API-versjonsdato (f.eks. 2026-01-15). Forespørsler uten denne headeren vil bli avvist.

Feilsøking

ProblemÅrsakLøsning
400 Bad RequestUgyldig eller manglende API-nøkkelVerifiser at privat API-nøkkel er korrekt
403 ForbiddenUtilstrekkelig scopeSjekk at API-nøkkelens scopes samsvarer med nødvendige rettigheter
Manglende revision-headerHeader ikke sattLegg til revision: 2026-01-15 på alle forespørsler
Profil ikke funnetFeil identifikatorBruk Klaviyo-profil-ID, ikke e-post, for oppslag
Hendelser synkroniseres ikkeFeil metrikknavnMatch eksakte metrikknavn som definert i Klaviyo
429 Too Many RequestsRatebegrensning overskredetImplementer eksponentiell backoff, vurder OAuth for høyere grenser
JSON:API-formatfeilFeil content typeBruk application/vnd.api+json for Content-Type- og Accept-headere

Beste praksis

  1. Bruk JSON:API-format - Følg JSON:API-spesifikasjonen for alle forespørsels- og svar-payloads
  2. Sett revision-headeren - Inkluder alltid revision-headeren med den nyeste API-versjonsdatoen
  3. Bruk sparse fieldsets - Be kun om nødvendige felt med ?fields[profile]=email,first_name for å redusere payload-størrelsen
  4. Utnytt relasjoner - Bruk JSON:API-parameteren include for å hente relaterte ressurser i én forespørsel
  5. Bruk markørpaginering - Naviger store resultatsett med page[cursor]-parameteren
  6. Implementer bulkoperasjoner - Bruk bulkendepunkter for batch-profilimporter og hendelsesopprettelse
  7. Bruk OAuth for høyere grenser - OAuth-autentisering gir 2x høyere ratebegrensninger enn private nøkler

Sikkerhet

  • Scopes for privat API-nøkkel - Granulær Read/Full-tilgangskontroll per ressurstype
  • OAuth-støtte - Sikker token-basert autentisering for partnerintegrasjoner
  • Isolering av offentlig nøkkel - Klientsidenøkler begrenset til kun opprettelsesoperasjoner
  • TLS 1.2+ - All API-kommunikasjon kryptert under transport
  • SOC 2 Type II - Klaviyo er SOC 2 Type II-sertifisert
  • GDPR-samsvar - Data Privacy API for forespørsler om profilsletting

Relaterte ressurser

Subscribe to updates

developer-docs

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

auto-detect
AI-assistent

Hei! Spør meg om dokumentasjonen.