---
title: "Klaviyo-koppling"
description: "Komplett integrationsguide för Klaviyo för att synka profiler, händelser, listor, segment och kampanjdata med Brevo via Tajo."
url: https://tajo.io/se/docs/connectors/marketing/klaviyo/
markdown: https://tajo.io/se/docs/connectors/marketing/klaviyo.md
lang: sv-SE
robots: noindex
---

Ansök om tidig åtkomst

Ange ditt förnamn och din e-postadress på jobbet. Vi skickar en länk för att bekräfta din begäran om åtkomst till Tajo.

# Klaviyo-koppling

Kopplingens status: Under utveckling Byggs. Inte verifierad än.

| Källfält | Målfält | Exempelvärde |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Anslut Klaviyo till Brevo via Tajo för att migrera eller synkronisera marknadsföringsdata mellan plattformarna. Synka profiler, händelser, listor, segment, flöden och kampanjdata för en enhetlig marknadsföringsstrategi i flera kanaler.

## Översikt

| Egenskap | Värde |
| --- | --- |
| **Plattform** | Klaviyo |
| **Kategori** | Marknadsföring |
| **Installationskomplexitet** | Medel |
| **Officiell integration** | Nej |
| **Data som synkas** | Profiler, händelser, listor, segment, kampanjer |
| **Tillgängliga skills** | 10 |
| **API-standard** | JSON:API |

## Funktioner

- **Profilsynk** - Dubbelriktad synk av kundprofiler mellan Klaviyo och Brevo
- **Vidarebefordran av händelser** - Vidarebefordra Klaviyo-spårade händelser till Brevo som automationstriggers
- **Listmigrering** - Synka Klaviyo-listor till Brevos kontaktlistor
- **Segmentsynk** - Exportera Klaviyo-segment som Brevo-listor eller -segment
- **Export av flödesdata** - Hämta prestandadata från flöden för tvärplattformsanalys
- **Kampanjsynk** - Koordinera kampanjer över Klaviyo- och Brevo-kanaler
- **Katalogsynk** - Spegla produktkataloger mellan plattformarna
- **Hantering av rabattkoder** - Synka rabattkoder och användningsdata

## Förutsättningar

Innan du börjar, se till att du har:

1. Ett Klaviyo-konto med API-åtkomst
2. En privat API-nyckel med lämpliga scopes
3. Din publika API-nyckel från Klaviyo (6-tecken långt företags-ID)
4. Ett Brevo-konto med API-åtkomst
5. Ett Tajo-konto med API-uppgifter

## Autentisering

### Privat API-nyckel

Klaviyo använder privata API-nycklar med scope-baserad åtkomst för serverbaserad autentisering. Ange nyckeln i `Authorization`-headern:

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

### Scopes för API-nyckeln

Konfigurera scopes när du skapar din privata nyckel:

| Scope | Åtkomst | Beskrivning |
| --- | --- | --- |
| `profiles` | Read/Full | Åtkomst till kontaktprofiler |
| `events` | Read/Full | Åtkomst till spårade händelser |
| `lists` | Read/Full | Åtkomst till kontaktlistor |
| `segments` | Read | Åtkomst till segment |
| `campaigns` | Read | Åtkomst till kampanjdata |
| `metrics` | Read | Åtkomst till metrikdefinitioner |
| `flows` | Read | Åtkomst till flödeskonfigurationer |
| `catalogs` | Read | Åtkomst till produktkataloger |

### Publik API-nyckel

För klientbaserad spårning, använd ditt 6-tecken långa företags-ID:

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

### OAuth (partnerintegrationer)

Klaviyo stöder OAuth för tech partners, vilket ger förbättrad säkerhet och högre rate limits:

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

## Konfiguration

### Grundläggande konfiguration

```yaml
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
```

### Profilmappning

Mappa Klaviyo-profilegenskaper till Brevos kontaktattribut:

```yaml
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
```

### Händelsemappning

Mappa Klaviyo-metriker till Brevo-händelser:

```yaml
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-ändpunkter

| Metod | Ändpunkt | Beskrivning |
| --- | --- | --- |
| `GET` | `/api/profiles/` | Lista profiler |
| `POST` | `/api/profiles/` | Skapa en profil |
| `PATCH` | `/api/profiles/{id}/` | Uppdatera en profil |
| `POST` | `/api/profile-merge/` | Slå ihop duplicerade profiler |
| `GET` | `/api/events/` | Lista händelser |
| `POST` | `/api/events/` | Skapa en händelse |
| `GET` | `/api/lists/` | Lista alla listor |
| `POST` | `/api/lists/{id}/relationships/profiles/` | Lägg till profiler i en lista |
| `GET` | `/api/segments/` | Lista segment |
| `GET` | `/api/campaigns/` | Lista kampanjer |
| `GET` | `/api/flows/` | Lista flöden |
| `GET` | `/api/metrics/` | Lista metriker |
| `POST` | `/api/metric-aggregates/` | Kör metrikaggregatfrågor |
| `GET` | `/api/catalog-items/` | Lista katalogobjekt |

## Kodexempel

### Initiera Klaviyo-kopplingen

```javascript
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
});
```

### Synka profiler till Brevo

```javascript
// 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": "jane@example.com",
//     "first_name": "Jane",
//     "last_name": "Kim",
//     "phone_number": "+15551234567",
//     "properties": { "lifetime_value": 450.00 }
//   }
// }
```

### Skapa en händelse

```javascript
// 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: 'jane@example.com' } }
        },
        properties: {
          OrderId: 'ORD-1234',
          Value: 89.99,
          Items: [
            { ProductName: 'Widget Pro', Price: 89.99, Quantity: 1 }
          ]
        },
        value: 89.99
      }
    }
  })
});
```

### Fråga efter metrikaggregat

```javascript
// 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)']
      }
    }
  })
});
```

## API-gränser

| Autentisering | Burst-gräns | Jämn gräns |
| --- | --- | --- |
| **Privat API-nyckel** | 75 förfrågningar/sek | 700 förfrågningar/min |
| **OAuth** | 150 förfrågningar/sek | 1 500 förfrågningar/min |
| **Client API** | 100 förfrågningar/sek | – |
| **Bulkoperationer** | 10 förfrågningar/sek | 100 förfrågningar/min |

API-revision krävs

Alla Klaviyo API-förfrågningar kräver att `revision`-headern är satt till ett giltigt datum för API-version (t.ex. `2026-01-15`). Förfrågningar utan denna header avvisas.

## Felsökning

| Problem | Orsak | Lösning |
| --- | --- | --- |
| `400 Bad Request` | Ogiltig eller saknad API-nyckel | Verifiera att den privata API-nyckeln är korrekt |
| `403 Forbidden` | Otillräckligt scope | Kontrollera att API-nyckelns scopes matchar nödvändiga behörigheter |
| `revision`-header saknas | Header ej satt | Lägg till `revision: 2026-01-15` i alla förfrågningar |
| Profil hittades inte | Fel identifierare | Använd Klaviyo-profil-ID, inte e-post, för uppslag |
| Händelser synkar inte | Fel metriknamn | Matcha exakta metriknamn som definierats i Klaviyo |
| `429 Too Many Requests` | Rate limit överskriden | Implementera exponentiell backoff, överväg OAuth för högre gränser |
| Format-fel i JSON:API | Fel content type | Använd `application/vnd.api+json` för Content-Type- och Accept-headrar |

## Bästa praxis

1. **Använd JSON:API-format** - Följ JSON:API-specifikationen för alla förfråge- och svarsdata
2. **Sätt revision-headern** - Inkludera alltid `revision`-headern med det senaste API-versionsdatumet
3. **Använd sparse fieldsets** - Begär endast nödvändiga fält med `?fields[profile]=email,first_name` för att minska svarsstorleken
4. **Utnyttja relationer** - Använd JSON:API-parametern `include` för att hämta relaterade resurser i en enda förfrågan
5. **Använd cursor-paginering** - Navigera stora resultatmängder med parametern `page[cursor]`
6. **Implementera bulkoperationer** - Använd bulk-ändpunkter för batch-profilimporter och händelseskapande
7. **Använd OAuth för högre gränser** - OAuth-autentisering ger dubbelt så höga rate limits som privata nycklar

## Säkerhet

- **Scopes för privata API-nycklar** - Granulär Read/Full-åtkomstkontroll per resurstyp
- **OAuth-stöd** - Säker tokenbaserad autentisering för partnerintegrationer
- **Isolering av publik nyckel** - Klientbaserade nycklar begränsade till create-operationer
- **TLS 1.2+** - All API-kommunikation krypteras under transport
- **SOC 2 Type II** - Klaviyo är SOC 2 Type II-certifierat
- **GDPR-efterlevnad** - Data Privacy API för begäran om profilradering

## Relaterade resurser

- [Brevo-koppling](https://tajo.io/se/docs/connectors/marketing/brevo)
- [Google Ads-koppling](https://tajo.io/se/docs/connectors/marketing/google-ads)
- [Meta Ads-koppling](https://tajo.io/se/docs/connectors/marketing/meta-ads)
- [Skill för kundsynk](https://tajo.io/se/docs/skills/data-sync/customer-sync)
