موصل Klaviyo

اربط Klaviyo بـ Brevo من خلال Tajo لترحيل أو مزامنة بيانات التسويق بين المنصات. زامن الملفات الشخصية، والأحداث، والقوائم، والشرائح، والتدفقات، وبيانات الحملات لاستراتيجية تسويقية موحدة متعددة القنوات.

نظرة عامة

الخاصيةالقيمة
المنصةKlaviyo
الفئةالتسويق
تعقيد الإعدادمتوسط
تكامل رسميلا
البيانات المُزامَنةملفات شخصية، أحداث، قوائم، شرائح، حملات
المهارات المتاحة10
معيار واجهة البرمجةJSON:API

الميزات

  • مزامنة الملفات الشخصية - مزامنة ثنائية الاتجاه لملفات العملاء بين Klaviyo وBrevo
  • إعادة توجيه الأحداث - إعادة توجيه أحداث Klaviyo المتتبعة إلى Brevo لمحفزات الأتمتة
  • ترحيل القوائم - مزامنة قوائم Klaviyo مع قوائم جهات اتصال Brevo
  • مزامنة الشرائح - تصدير شرائح Klaviyo كقوائم أو شرائح Brevo
  • تصدير بيانات التدفقات - سحب بيانات أداء التدفقات للتحليلات عبر المنصات
  • مزامنة الحملات - تنسيق الحملات عبر قنوات Klaviyo وBrevo
  • مزامنة الكتالوج - عكس كتالوجات المنتجات بين المنصات
  • إدارة القسائم - مزامنة رموز القسائم وبيانات الاستخدام

المتطلبات الأساسية

قبل البدء، تأكد من توفر ما يلي:

  1. حساب Klaviyo مع وصول إلى API
  2. مفتاح Private API بنطاقات مناسبة
  3. مفتاح Klaviyo Public API (معرّف الشركة المكوّن من 6 أحرف)
  4. حساب Brevo مع وصول إلى API
  5. حساب Tajo مع بيانات اعتماد API

المصادقة

مفتاح Private API

يستخدم Klaviyo مفاتيح API خاصة بوصول مقيّد للمصادقة من جانب الخادم. عيّن المفتاح في ترويسة Authorization:

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

نطاقات مفتاح API

اضبط النطاقات عند إنشاء مفتاحك الخاص:

النطاقالوصولالوصف
profilesRead/Fullالوصول إلى ملفات جهات الاتصال
eventsRead/Fullالوصول إلى الأحداث المتتبعة
listsRead/Fullالوصول إلى قوائم جهات الاتصال
segmentsReadالوصول إلى الشرائح
campaignsReadالوصول إلى بيانات الحملات
metricsReadالوصول إلى تعريفات المقاييس
flowsReadالوصول إلى إعدادات التدفقات
catalogsReadالوصول إلى كتالوجات المنتجات

مفتاح Public API

للتتبع من جانب العميل، استخدم معرّف الشركة المكوّن من 6 أحرف:

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

OAuth (تكاملات الشركاء)

يدعم Klaviyo OAuth لشركاء التكنولوجيا، ويوفر أمانًا محسنًا وحدود معدل أعلى:

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

الإعداد

الإعداد الأساسي

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:

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:

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"

نقاط نهاية واجهة البرمجة

الطريقةنقطة النهايةالوصف
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/سرد التدفقات
GET/api/metrics/سرد المقاييس
POST/api/metric-aggregates/استعلام تجميعات المقاييس
GET/api/catalog-items/سرد عناصر الكتالوج

أمثلة على الكود

تهيئة موصل 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
});

مزامنة الملفات الشخصية مع Brevo

// جلب ملفات Klaviyo ومزامنتها مع 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();
// كل ملف شخصي يتبع تنسيق JSON:API
// {
// "type": "profile",
// "id": "01ABCDEF",
// "attributes": {
// "email": "[email protected]",
// "first_name": "Jane",
// "last_name": "Kim",
// "phone_number": "+15551234567",
// "properties": { "lifetime_value": 450.00 }
// }
// }

إنشاء حدث

// تتبع حدث في Klaviyo (يُعاد توجيهه إلى Brevo عبر 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
}
}
})
});

استعلام تجميعات المقاييس

// الحصول على بيانات المقاييس المجمّعة للتقارير
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)']
}
}
})
});

حدود المعدل

المصادقةحد الدفعاتالحد المستقر
مفتاح Private API75 طلب/ثانية700 طلب/دقيقة
OAuth150 طلب/ثانية1,500 طلب/دقيقة
Client API100 طلب/ثانيةلا ينطبق
العمليات المجمّعة10 طلبات/ثانية100 طلب/دقيقة

ترويسة API revision مطلوبة

تتطلب جميع طلبات Klaviyo API ترويسة revision مضبوطة على تاريخ إصدار API صالح (مثلاً، 2026-01-15). ستُرفَض الطلبات بدون هذه الترويسة.

استكشاف الأخطاء وإصلاحها

المشكلةالسببالحل
400 Bad Requestمفتاح API غير صالح أو مفقودتحقق من صحة مفتاح Private API
403 Forbiddenنطاق غير كافٍتحقق من تطابق نطاقات مفتاح API مع الصلاحيات المطلوبة
ترويسة revision مفقودةالترويسة غير مضبوطةأضف revision: 2026-01-15 إلى جميع الطلبات
الملف الشخصي غير موجودمعرّف خاطئاستخدم معرّف ملف Klaviyo، وليس البريد الإلكتروني، للبحث
الأحداث لا تتزامناسم مقياس خاطئطابق أسماء المقاييس بدقة كما هي معرّفة في Klaviyo
429 Too Many Requestsتجاوز حد المعدلطبّق التراجع الأُسّي، فكّر في OAuth لحدود أعلى
أخطاء تنسيق JSON:APIنوع محتوى خاطئاستخدم application/vnd.api+json لترويسات Content-Type وAccept

أفضل الممارسات

  1. استخدم تنسيق JSON:API - اتّبع مواصفة JSON:API لجميع حمولات الطلب والاستجابة
  2. اضبط ترويسة revision - ضمّن دائمًا ترويسة revision بتاريخ أحدث إصدار API
  3. استخدم مجموعات حقول متفرقة - اطلب فقط الحقول المطلوبة بـ ?fields[profile]=email,first_name لتقليل حجم الحمولة
  4. استفد من العلاقات - استخدم معامل include في JSON:API لجلب الموارد ذات الصلة في طلب واحد
  5. استخدم ترقيم المؤشر - تنقّل عبر مجموعات النتائج الكبيرة بمعامل page[cursor]
  6. طبّق العمليات المجمّعة - استخدم نقاط النهاية المجمّعة لاستيراد الملفات الشخصية بالدفعات وإنشاء الأحداث
  7. استخدم OAuth للحدود الأعلى - توفر مصادقة OAuth ضعف حدود المعدل مقارنة بالمفاتيح الخاصة

الأمان

  • نطاقات مفتاح Private API - تحكم دقيق في الوصول للقراءة/الكاملة لكل نوع مورد
  • دعم OAuth - مصادقة آمنة قائمة على الرموز لتكاملات الشركاء
  • عزل المفتاح العام - مفاتيح من جانب العميل مقيدة بعمليات الإنشاء فقط
  • TLS 1.2+ - جميع اتصالات API مشفرة أثناء النقل
  • SOC 2 Type II - Klaviyo معتمد من SOC 2 Type II
  • الامتثال لـ GDPR - واجهة Data Privacy API لطلبات حذف الملفات الشخصية

موارد ذات صلة

Subscribe to updates

developer-docs

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

auto-detect
مساعد AI

مرحباً! اسألني أي شيء عن الوثائق.