---
title: "موصل Customer.io"
description: "دليل تكامل Customer.io الشامل لمزامنة الأشخاص، والأحداث، والحملات، وبيانات سير العمل مع Brevo عبر Tajo."
url: https://tajo.io/ar/docs/connectors/marketing/customerio/
markdown: https://tajo.io/ar/docs/connectors/marketing/customerio.md
lang: ar-SA
robots: noindex
---

اطلب الوصول المبكر

أدخل اسمك الأول وعنوان بريدك الإلكتروني للعمل. سنرسل إليك رابطًا لتأكيد طلب الوصول إلى Tajo.

# موصل Customer.io

حالة الموصل: مخطط له لم يُبنَ بعد. لا يشغّل Tajo هذا الموصل اليوم.

| حقل المصدر | حقل الوجهة | قيمة نموذجية |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

اربط منصة رسائل Customer.io الخاصة بك مع Brevo لبيانات عملاء موحدة، وتنسيق حملات عبر المنصات، وتحليلات تفاعل مدمجة.

## نظرة عامة

| الخاصية | القيمة |
| --- | --- |
| **المنصة** | Customer.io |
| **الفئة** | التسويق |
| **تعقيد الإعداد** | متوسط |
| **تكامل رسمي** | لا |
| **البيانات المُزامَنة** | أشخاص، أحداث، حملات، شرائح |
| **واجهات البرمجة المستخدمة** | Track API، App API، Pipelines API |
| **المصادقة** | Site ID + مفتاح API / مفتاح App API |
| **عناوين URL الأساسية** | `track.customer.io`، `api.customer.io` |

## الميزات

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

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

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

1. حساب Customer.io مع وصول إلى API
2. Site ID ومفتاح Track API (موجود في Settings > API Credentials)
3. مفتاح App API لقراءة بيانات الحملات والشرائح
4. حساب Brevo مع وصول إلى API
5. حساب Tajo مع اشتراك نشط

## المصادقة

يستخدم Customer.io واجهتي API منفصلتين بطرق مصادقة مختلفة:

### Track API (البيانات السلوكية)

تُستخدم لإرسال الأشخاص والأحداث وبيانات الأجهزة. تُصادق بـ Site ID ومفتاح API عبر Basic Auth.

```bash
# Basic Auth: Site ID as username, API Key as password
curl -X POST https://track.customer.io/api/v1/customers/user123 \
  -u "$SITE_ID:$API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"email": "user@example.com"}'
```

### App API (قراءة البيانات)

تُستخدم لاسترجاع الحملات والشرائح وبيانات العملاء. تُصادق برمز Bearer token.

```bash
curl -X GET https://api.customer.io/v1/campaigns \
  -H "Authorization: Bearer $APP_API_KEY"
```

فصل مفاتيح API

مفتاح Track API ومفتاح App API بيانات اعتماد مختلفة. يُستخدم مفتاح Track API لكتابة البيانات، بينما مفتاح App API لقراءة البيانات. كلاهما مطلوب لتكامل Tajo كامل.

### الاتصال بـ Tajo

```bash
tajo connectors install customerio \
  --site-id $CIO_SITE_ID \
  --track-api-key $CIO_TRACK_API_KEY \
  --app-api-key $CIO_APP_API_KEY
```

## الإعداد

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

```yaml
connectors:
  customerio:
    enabled: true
    region: "us"  # or "eu" for EU data center

    sync:
      people: true
      events: true
      campaigns: true
      segments: true
      objects: false

    lists:
      all_contacts: 12
      active_subscribers: 13
      churned: 14
```

### تعيين الحقول

ربط سمات الشخص في Customer.io بسمات جهات اتصال Brevo:

```yaml
field_mapping:
  # Standard fields
  id: CIO_ID
  email: email
  first_name: FIRSTNAME
  last_name: LASTNAME
  phone: SMS

  # Engagement metrics
  created_at: SIGNUP_DATE
  last_activity: LAST_ACTIVE
  plan: PLAN_NAME

  # Custom attributes
  company: COMPANY
  role: JOB_TITLE
  mrr: MONTHLY_REVENUE
  lifecycle_stage: LIFECYCLE_STAGE
```

### تعيين الأحداث

```yaml
event_mapping:
  # Customer.io event -> Brevo event
  purchase_completed: ORDER_PLACED
  subscription_started: SUBSCRIPTION_START
  feature_activated: FEATURE_USED
  support_ticket_opened: SUPPORT_REQUEST
```

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

يتكامل Tajo مع نقاط نهاية Customer.io API التالية:

| نقطة النهاية | الطريقة | API | الغرض |
| --- | --- | --- | --- |
| `/api/v1/customers/{id}` | PUT | Track | إنشاء أو تحديث شخص |
| `/api/v1/customers/{id}/events` | POST | Track | تتبع حدث لشخص |
| `/api/v1/events` | POST | Track | تتبع الأحداث المجهولة |
| `/api/v2/entity` | POST | Track | إنشاء أو تحديث أشخاص/كائنات (Pipelines) |
| `/v1/campaigns` | GET | App | سرد الحملات |
| `/v1/campaigns/{id}/metrics` | GET | App | مقاييس أداء الحملة |
| `/v1/segments` | GET | App | سرد الشرائح |
| `/v1/segments/{id}/membership` | GET | App | الحصول على أعضاء الشريحة |
| `/v1/customers/{id}/attributes` | GET | App | الحصول على سمات العميل |
| `/v1/customers/{id}/activities` | GET | App | الحصول على سجل نشاط العميل |

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

### تهيئة الموصل

```javascript
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('customerio', {
  siteId: process.env.CIO_SITE_ID,
  trackApiKey: process.env.CIO_TRACK_API_KEY,
  appApiKey: process.env.CIO_APP_API_KEY,
  region: 'us'
});
```

### مزامنة الأشخاص مع Brevo

```javascript
// مزامنة تزايدية لأشخاص Customer.io
await tajo.connectors.sync('customerio', {
  type: 'incremental',
  resources: ['people'],
  since: '2024-01-01',
  batchSize: 100
});

const status = await tajo.connectors.status('customerio');
console.log(status);
// {
//   connected: true,
//   lastSync: '2024-03-15T14:20:00Z',
//   peopleCount: 32500,
//   campaignsTracked: 18,
//   eventsProcessed: 87000
// }
```

### إعادة توجيه الأحداث

```javascript
// إعادة توجيه أحداث webhook لتقارير Customer.io إلى Brevo
app.post('/webhooks/customerio', async (req, res) => {
  const events = req.body;

  for (const event of events) {
    await tajo.connectors.handleEvent('customerio', {
      type: event.metric,
      payload: {
        customerId: event.data.customer_id,
        campaignId: event.data.campaign_id,
        timestamp: event.timestamp
      }
    });
  }

  res.status(200).send('OK');
});
```

### تصدير الشريحة

```javascript
const result = await tajo.connectors.exportSegment('customerio', {
  segmentId: 42,
  targetList: 13,
  includeAttributes: ['email', 'first_name', 'last_name', 'plan']
});

console.log(`Exported ${result.count} people to Brevo list 13`);
```

## حدود المعدل

يفرض Customer.io حدود معدل مختلفة لكل API:

| API | حد المعدل | ملاحظات |
| --- | --- | --- |
| **Track API** | ~100 طلب/ثانية | لكل مساحة عمل |
| **App API** | 10 طلبات/ثانية | لكل مفتاح API |
| **Pipelines API** | 100 طلب/ثانية | موصى به للبيانات بالجملة |
| **نقطة نهاية الدفعات** | 1,000 شخص لكل طلب | الحمولة القصوى 500 كيلوبايت |

استخدم نقاط نهاية الدفعات

للمزامنات الكبيرة، يستخدم Tajo نقطة نهاية الدفعات في Customer.io لإرسال ما يصل إلى 1,000 شخص لكل طلب، مما يقلل بشكل كبير حجم استدعاءات API.

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

### المشاكل الشائعة

| المشكلة | السبب | الحل |
| --- | --- | --- |
| 401 Unauthorized | Site ID أو مفتاح API غير صالح | تحقق من بيانات الاعتماد في Customer.io Settings > API |
| الأشخاص لا يتزامنون | معرّف مفقود | تأكد من أن كل شخص لديه `id` أو `email` |
| الأحداث لا تُتبَع | نوع مفتاح API خاطئ | استخدم مفتاح Track API للأحداث، وليس مفتاح App API |
| بيانات EU غير قابلة للوصول | المنطقة المُكَوَّنة خاطئة | اضبط المنطقة على `eu` لمساحات عمل EU |
| أخطاء حد المعدل | استدعاءات App API كثيرة جدًا | قلل تكرار استطلاع بيانات الحملة |

### وضع التصحيح

```yaml
connectors:
  customerio:
    debug: true
    log_level: verbose
    log_api_calls: true
```

### اختبار الاتصال

```bash
tajo connectors test customerio
# ✓ Track API connection successful
# ✓ App API connection successful
# ✓ People accessible
# ✓ Campaigns readable
# ✓ Segments listable
```

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

1. **استخدم Pipelines API للبيانات بالجملة** - تم تحسين Pipelines API الأحدث للاستيعاب عالي الحجم
2. **إعداد webhooks للتقارير** - أعد توجيه أحداث البريد الإلكتروني في Customer.io إلى Tajo في الوقت الفعلي
3. **عيّن مراحل دورة الحياة** - زامن عضوية شرائح Customer.io مع سمات Brevo
4. **استخدم معرّفات متسقة** - طابق حقول `id` عبر Customer.io وBrevo
5. **المزامنة التزايدية** - تجنب التصديرات الكاملة؛ استفد من طوابع `last_activity` الزمنية
6. **راقب تسليم webhook** - إعداد تنبيهات لتسليمات webhook الفاشلة

## الأمان

- **Basic Auth** - يصادق Track API باستخدام Site ID ومفتاح API
- **Bearer Token** - يستخدم App API رموز bearer بنمط OAuth
- **HTTPS فقط** - جميع اتصالات API مشفرة عبر TLS 1.2+
- **مراكز بيانات إقليمية** - خيار مركز بيانات EU للامتثال لـ GDPR
- **تخزين مشفر** - جميع بيانات الاعتماد مشفرة في حالة السكون في Tajo
- **توقيعات Webhook** - تحقق من حمولات webhook بتوقيعات HMAC

## موارد ذات صلة

- [موصل Braze](https://tajo.io/ar/docs/connectors/marketing/braze)
- [موصل Iterable](https://tajo.io/ar/docs/connectors/marketing/iterable)
- [مهارة مزامنة العملاء](https://tajo.io/ar/docs/skills/data-sync/customer-sync)
- [واجهة جهات اتصال Brevo](https://tajo.io/ar/docs/contact-management)
