موصل Iterable
حالة الموصل: مخطط له لم يُبنَ بعد. لا يشغّل Tajo هذا الموصل اليوم.
رسم توضيحي · بيانات تجريبية
مثال على المزامنة
المصدر
Iterable
حالة الموصل: مخطط له
الوجهة
أداتك الأخرى
حالة الموصل: أداة مخصصة
ربط الحقول
| حقل المصدر | حقل الوجهة | قيمة نموذجية |
|---|---|---|
record.id | source_id | record_1042 |
record.updated_at | updated_at | 2026-10-18T08:00:00Z |
record.value | value | sample_value |
- الصياغة
- راجع سجلاً واحداً
- اعتمد هذه النسخة
تصف الحالات كل موصل على حدة، ولا تضمن جاهزية هذه المزامنة. حقول توضيحية. راجع المخطط الفعلي والأذونات قبل تشغيل المزامنة.
اربط منصة تسويق النمو Iterable الخاصة بك مع Brevo لتفاعل موحد مع العملاء، وتنسيق حملات عبر القنوات، وتحليلات مدمجة عبر أدوات التسويق.
نظرة عامة
| الخاصية | القيمة |
|---|---|
| المنصة | Iterable |
| الفئة | التسويق |
| تعقيد الإعداد | متوسط |
| تكامل رسمي | لا |
| البيانات المُزامَنة | مستخدمون، أحداث، حملات، كتالوجات |
| نوع واجهة البرمجة | REST API |
| المصادقة | مفتاح API |
| عنوان URL الأساسي | https://api.iterable.com/api/ |
الميزات
- مزامنة ملفات المستخدمين - مزامنة ثنائية الاتجاه لبيانات المستخدمين مع جهات اتصال Brevo
- تحليلات الحملات - مزامنة مقاييس إرسال الحملات والفتح والنقرات للتقارير الموحدة
- بيانات التجارب - تتبع نتائج اختبار A/B والمتغيرات الفائزة
- مزامنة الكتالوج - مزامنة كتالوجات المنتجات والمحتوى عبر المنصات
- أحداث سير العمل - إعادة توجيه أحداث تشغيل وإتمام سير العمل إلى Brevo
- مزامنة تفضيلات القنوات - نسخ تفضيلات الاتصال الخاصة بالمستخدم في Brevo
المتطلبات الأساسية
قبل البدء، تأكد من توفر ما يلي:
- حساب Iterable مع وصول إلى API
- مفتاح Iterable API بصلاحيات مناسبة
- معرّف مشروع Iterable الخاص بك
- حساب Brevo مع وصول إلى API
- حساب Tajo مع اشتراك نشط
المصادقة
يستخدم Iterable مصادقة مفتاح API يُمرَّر في ترويسة الطلب.
إنشاء مفتاح API
- سجّل الدخول إلى لوحة Iterable
- انتقل إلى Integrations > API Keys
- انقر على New API Key
- سمّه “Tajo Integration”
- اختر نوع مفتاح Server-side
- امنح الصلاحيات التالية:
Users: Read/WriteEvents: Read/WriteCampaigns: ReadLists: Read/WriteCatalogs: ReadExperiments: ReadWorkflows: ReadTemplates: ReadChannels: ReadMessage Types: Readنوع المفتاح مهم
استخدم دائمًا مفتاح API من نوع Server-side لتكامل Tajo. تحتوي مفاتيح Mobile وJavaScript-side على صلاحيات مقيدة ولا يمكنها الوصول إلى جميع نقاط النهاية المطلوبة.
الاتصال بـ Tajo
tajo connectors install iterable \ --api-key $ITERABLE_API_KEYالإعداد
الإعداد الأساسي
connectors: iterable: enabled: true
sync: users: true events: true campaigns: true catalogs: true experiments: true
lists: all_users: 16 engaged_users: 17 inactive_users: 18تعيين الحقول
ربط حقول مستخدم Iterable بسمات جهات اتصال Brevo:
field_mapping: # Standard fields userId: ITERABLE_ID email: email firstName: FIRSTNAME lastName: LASTNAME phoneNumber: SMS
# Engagement data signupDate: SIGNUP_DATE totalPurchases: TOTAL_PURCHASES lastPurchaseDate: LAST_PURCHASE
# Custom fields plan_name: PLAN_NAME company_size: COMPANY_SIZE preferred_channel: PREFERRED_CHANNEL lifecycle_stage: LIFECYCLE_STAGEإعداد الأحداث
event_mapping: # Iterable event -> Brevo event purchase: ORDER_PLACED addToCart: CART_UPDATED pageView: PAGE_VIEWED appOpen: APP_OPENED pushOpen: PUSH_ENGAGEDنقاط نهاية واجهة البرمجة
يتكامل Tajo مع نقاط نهاية Iterable API التالية:
| نقطة النهاية | الطريقة | الغرض |
|---|---|---|
/users/update | POST | تحديث ملفات المستخدمين |
/users/{email} | GET | استرجاع مستخدم بالبريد الإلكتروني |
/users/bulkUpdate | POST | تحديث المستخدمين بالدفعات |
/events/track | POST | تتبع الأحداث المخصصة |
/events/trackBulk | POST | تتبع الأحداث بالدفعات |
/campaigns | GET | سرد جميع الحملات |
/campaigns/metrics | GET | بيانات أداء الحملة |
/experiments/metrics | GET | نتائج التجارب |
/lists | GET | سرد جميع قوائم المستخدمين |
/lists/subscribe | POST | إضافة مستخدمين إلى قائمة |
/lists/unsubscribe | POST | إزالة مستخدمين من قائمة |
/catalogs/{catalogName}/items | GET | استرجاع عناصر الكتالوج |
/channels | GET | سرد قنوات المراسلة |
/export/data.json | GET | تصدير بيانات الأحداث الخام |
أمثلة على الكود
تهيئة الموصل
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
await tajo.connectors.connect('iterable', { apiKey: process.env.ITERABLE_API_KEY});مزامنة المستخدمين
// مزامنة تزايدية للمستخدمين من Iterable إلى Brevoawait tajo.connectors.sync('iterable', { type: 'incremental', resources: ['users'], since: '2024-01-01', batchSize: 50});
const status = await tajo.connectors.status('iterable');console.log(status);// {// connected: true,// lastSync: '2024-03-15T09:45:00Z',// usersCount: 58700,// campaignsTracked: 42,// eventsProcessed: 210000// }تتبع الأحداث
// إعادة توجيه أحداث Iterable إلى Brevoawait tajo.connectors.handleEvent('iterable', { type: 'custom_event', payload: { eventName: 'subscription_upgraded', dataFields: { previousPlan: 'starter', newPlan: 'pro', mrr: 99.00 } }});معالج Webhook
// التعامل مع webhooks نظام Iterableapp.post('/webhooks/iterable', async (req, res) => { const event = req.body;
await tajo.connectors.handleWebhook('iterable', { type: event.eventName, payload: event });
res.status(200).send('OK');});حدود المعدل
يفرض Iterable حدود المعدل بناءً على خطتك:
| الخطة | حد المعدل | حد نقاط النهاية المجمّعة |
|---|---|---|
| Growth | 500 طلب/ثانية | 500 طلب/ثانية |
| Enterprise | مخصص | مخصص |
حدود نقاط نهاية محددة:
| نقطة النهاية | الحد |
|---|---|
/users/update | 500 طلب/ثانية |
/users/bulkUpdate | 500 طلب/ثانية (1,000 مستخدم لكل طلب) |
/events/track | 500 طلب/ثانية |
/events/trackBulk | 500 طلب/ثانية (8,000 حدث لكل طلب) |
/export/data.json | 4 طلبات متزامنة |
نقاط النهاية المجمّعة
يجمّع Tajo تلقائيًا تحديثات المستخدمين (حتى 1,000 لكل استدعاء) وتتبعات الأحداث (حتى 8,000 لكل استدعاء) لتعظيم الإنتاجية مع البقاء ضمن حدود المعدل.
استكشاف الأخطاء وإصلاحها
المشاكل الشائعة
| المشكلة | السبب | الحل |
|---|---|---|
| 401 Unauthorized | مفتاح API غير صالح | تحقق من المفتاح في Iterable > Integrations > API Keys |
| المستخدمون لا يتزامنون | عدم تطابق نوع المفتاح | تأكد من استخدامك مفتاح API من نوع Server-side |
| بيانات الحملة مفقودة | صلاحيات غير كافية | أضف صلاحية Campaigns Read إلى مفتاح API |
| انتهاء مهلة التصدير | حجم بيانات كبير | استخدم عوامل تصفية نطاق التاريخ لتقليل حجم التصدير |
| مستخدمون مكررون | معرّفات غير متسقة | استخدم البريد الإلكتروني كمعرّف أساسي باتساق |
وضع التصحيح
connectors: iterable: debug: true log_level: verbose log_api_calls: trueاختبار الاتصال
tajo connectors test iterable# ✓ API connection successful# ✓ User data accessible# ✓ Campaign list readable# ✓ Event tracking operational# ✓ List management availableأفضل الممارسات
- استخدم نقاط النهاية المجمّعة - فضّل دائمًا
bulkUpdateوtrackBulkلأحجام البيانات الكبيرة - إزالة التكرار بالبريد الإلكتروني - استخدم البريد الإلكتروني كمعرّف متسق عبر Iterable وBrevo
- المزامنة التزايدية - استخدم نطاقات التواريخ لتجنب إعادة معالجة البيانات التاريخية
- عيّن تفضيلات القنوات - زامن حالة الاشتراك/إلغاء الاشتراك للحفاظ على الامتثال
- راقب مهام التصدير - قد تستغرق التصديرات الكبيرة وقتًا؛ إعداد استطلاع الحالة
- اختبر مع مشروع غير إنتاجي - تحقق من التعيينات قبل مزامنة بيانات الإنتاج
الأمان
- مصادقة مفتاح API - مفاتيح Server-side بصلاحيات دقيقة
- HTTPS فقط - جميع اتصالات API مشفرة عبر TLS 1.2+
- تدوير المفاتيح - دعم مفاتيح API نشطة متعددة أثناء التدوير
- تخزين مشفر - بيانات اعتماد API مشفرة في حالة السكون في Tajo
- JWT Webhooks - حمولات webhook موقّعة بـ JWT للتحقق