---
title: "Klaviyo конектор"
description: "Пълно ръководство за интеграция с Klaviyo за синхронизация на профили, събития, списъци, сегменти и данни за кампании с Brevo през Tajo."
url: https://tajo.io/bg/docs/connectors/marketing/klaviyo/
markdown: https://tajo.io/bg/docs/connectors/marketing/klaviyo.md
lang: bg-BG
robots: noindex
---

Заявете ранен достъп

Въведете собственото си име и служебен имейл адрес. Ще ви изпратим връзка за потвърждение на заявката за достъп до Tajo.

# Klaviyo конектор

Статус на конектора: В разработка В процес на изграждане. Все още не е проверен.

| Поле източник | Целево поле | Примерна стойност |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Свържи Klaviyo с Brevo през Tajo, за да мигрираш или синхронизираш маркетингови данни между платформите. Синхронизирай профили, събития, списъци, сегменти, flows и данни за кампании за унифицирана multi-channel маркетингова стратегия.

## Преглед

| Свойство | Стойност |
| --- | --- |
| **Платформа** | Klaviyo |
| **Категория** | Маркетинг |
| **Сложност на настройка** | Средна |
| **Официална интеграция** | Не |
| **Синхронизирани данни** | Профили, събития, списъци, сегменти, кампании |
| **Налични скилове** | 10 |
| **API стандарт** | JSON:API |

## Функции

- **Синхронизация на профили** – Двупосочна синхронизация на клиентски профили между Klaviyo и Brevo
- **Препращане на събития** – Препращай проследените в Klaviyo събития към Brevo за automation тригери
- **Миграция на списъци** – Синхронизирай Klaviyo списъци към списъци с контакти в Brevo
- **Синхронизация на сегменти** – Експортирай Klaviyo сегменти като списъци или сегменти в Brevo
- **Експорт на данни от flow** – Извличай performance данни от flow за cross-platform аналитика
- **Синхронизация на кампании** – Координирай кампании между каналите на Klaviyo и Brevo
- **Синхронизация на каталог** – Mirror-ирай продуктови каталози между платформите
- **Управление на купони** – Синхронизирай кодове за купони и данни за използване

## Предварителни условия

Преди да започнеш, увери се, че имаш:

1. Акаунт в Klaviyo с API достъп
2. Private API Key с подходящи обхвати
3. Твоя Klaviyo Public API Key (6-символен company ID)
4. Акаунт в Brevo с API достъп
5. Акаунт в Tajo с API credentials

## Автентикация

### Private API Key

Klaviyo използва private API ключове с scoped достъп за server-side автентикация. Задай ключа в хедъра `Authorization`:

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

### API обхвати на ключ

Конфигурирай обхватите при създаване на private ключа:

| Обхват | Достъп | Описание |
| --- | --- | --- |
| `profiles` | Read/Full | Достъп до контактни профили |
| `events` | Read/Full | Достъп до проследени събития |
| `lists` | Read/Full | Достъп до списъци с контакти |
| `segments` | Read | Достъп до сегменти |
| `campaigns` | Read | Достъп до данни за кампании |
| `metrics` | Read | Достъп до дефиниции на метрики |
| `flows` | Read | Достъп до flow конфигурации |
| `catalogs` | Read | Достъп до продуктови каталози |

### Public API Key

За client-side проследяване използвай 6-символния company ID:

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

### OAuth (партньорски интеграции)

Klaviyo поддържа OAuth за tech партньори, предлагайки подобрена сигурност и rate limits:

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

## Конфигурация

### Основна настройка

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

### Мапване на профили

Мапвай свойства на профили в Klaviyo към атрибути на контактите в Brevo:

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

### Мапване на събития

Мапвай Klaviyo метрики към събития в Brevo:

```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 крайни точки

| Метод | Крайна точка | Описание |
| --- | --- | --- |
| `GET` | `/api/profiles/` | Списък с профили |
| `POST` | `/api/profiles/` | Създаване на профил |
| `PATCH` | `/api/profiles/{id}/` | Обновяване на профил |
| `POST` | `/api/profile-merge/` | Обединяване на дублирани профили |
| `GET` | `/api/events/` | Списък със събития |
| `POST` | `/api/events/` | Създаване на събитие |
| `GET` | `/api/lists/` | Списък с всички списъци |
| `POST` | `/api/lists/{id}/relationships/profiles/` | Добавяне на профили към списък |
| `GET` | `/api/segments/` | Списък със сегменти |
| `GET` | `/api/campaigns/` | Списък с кампании |
| `GET` | `/api/flows/` | Списък с flows |
| `GET` | `/api/metrics/` | Списък с метрики |
| `POST` | `/api/metric-aggregates/` | Заявка за агрегати на метрики |
| `GET` | `/api/catalog-items/` | Списък с артикули от каталога |

## Примери с код

### Инициализация на Klaviyo конектор

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

### Синхронизация на профили към 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 }
//   }
// }
```

### Създаване на събитие

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

### Заявка за агрегати на метрики

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

## Ограничения на заявките

| Автентикация | Burst Limit | Steady Limit |
| --- | --- | --- |
| **Private API Key** | 75 заявки/сек | 700 заявки/мин |
| **OAuth** | 150 заявки/сек | 1 500 заявки/мин |
| **Client API** | 100 заявки/сек | N/A |
| **Bulk операции** | 10 заявки/сек | 100 заявки/мин |

Изисква се API ревизия

Всички Klaviyo API заявки изискват хедъра `revision` да е зададен на валидна дата на версия на API (напр. `2026-01-15`). Заявките без този хедър ще бъдат отхвърлени.

## Отстраняване на проблеми

| Проблем | Причина | Решение |
| --- | --- | --- |
| `400 Bad Request` | Невалиден или липсващ API ключ | Провери дали private API ключът е правилен |
| `403 Forbidden` | Недостатъчен обхват | Провери дали обхватите на API ключа съвпадат с необходимите разрешения |
| Липсващ хедър `revision` | Хедърът не е зададен | Добави `revision: 2026-01-15` към всички заявки |
| Профилът не е намерен | Грешен идентификатор | Използвай Klaviyo profile ID, не имейл, за справки |
| Събитията не се синхронизират | Грешно име на метрика | Съпоставяй точните имена на метрики, както са дефинирани в Klaviyo |
| `429 Too Many Requests` | Превишен rate limit | Внедри exponential backoff, обмисли OAuth за по-високи лимити |
| JSON:API format грешки | Грешен content type | Използвай `application/vnd.api+json` за Content-Type и Accept хедърите |

## Добри практики

1. **Използвай JSON:API формат** – Следвай JSON:API спецификацията за всички request и response payloads
2. **Задай revision хедъра** – Винаги включвай хедъра `revision` с най-новата дата на API версията
3. **Използвай sparse fieldsets** – Заявявай само необходимите полета с `?fields[profile]=email,first_name`, за да намалиш размера на payload-а
4. **Използвай relationships** – Използвай JSON:API параметъра `include`, за да извличаш свързани ресурси с една заявка
5. **Използвай cursor пагинация** – Навигирай големи набори от резултати с параметъра `page[cursor]`
6. **Внедри bulk операции** – Използвай bulk крайни точки за пакетни импорти на профили и създаване на събития
7. **Използвай OAuth за по-високи лимити** – OAuth автентикация предоставя 2x по-високи rate limits от private keys

## Сигурност

- **Обхвати на Private API ключ** – Гранулиран Read/Full контрол на достъпа на ниво тип ресурс
- **OAuth поддръжка** – Сигурна token-базирана автентикация за партньорски интеграции
- **Изолация на public key** – Client-side ключовете са ограничени до create-only операции
- **TLS 1.2+** – Цялата API комуникация е криптирана при пренос
- **SOC 2 Type II** – Klaviyo е SOC 2 Type II сертифициран
- **GDPR съвместимост** – Data Privacy API за заявки за изтриване на профил

## Свързани ресурси

- [Brevo конектор](https://tajo.io/bg/docs/connectors/marketing/brevo)
- [Google Ads конектор](https://tajo.io/bg/docs/connectors/marketing/google-ads)
- [Meta Ads конектор](https://tajo.io/bg/docs/connectors/marketing/meta-ads)
- [Customer Sync скил](https://tajo.io/bg/docs/skills/data-sync/customer-sync)
