---
title: "موصل Mixpanel"
description: "دليل التكامل الكامل لـ Mixpanel لمزامنة أحداث تحليلات المنتج وملفات المستخدمين والمجموعات مع Brevo عبر Tajo."
url: https://tajo.io/ar/docs/connectors/custom/mixpanel/
markdown: https://tajo.io/ar/docs/connectors/custom/mixpanel.md
lang: ar-SA
robots: noindex
---

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

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

# موصل Mixpanel

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

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

اربط Mixpanel بـ Brevo عبر Tajo لتجسير تحليلات المنتج مع أتمتة التسويق. زامن ملفات المستخدمين والأحداث السلوكية والمجموعات لإنشاء حملات مدفوعة بالبيانات مبنية على الاستخدام الفعلي للمنتج.

## نظرة عامة

| الخاصية | القيمة |
| --- | --- |
| **المنصة** | Mixpanel |
| **الفئة** | تحليلات (مخصص) |
| **تعقيد الإعداد** | متوسط |
| **تكامل رسمي** | لا |
| **البيانات المتزامنة** | الأحداث، الملفات، المجموعات، المجموعات التنظيمية |
| **المهارات المتاحة** | 7 |

## الميزات

- **استيعاب الأحداث** - استيراد أحداث التتبع عبر Mixpanel Ingestion API إلى سير عمل Brevo
- **مزامنة ملفات المستخدمين** - ربط خصائص ملفات مستخدمي Mixpanel بسمات جهات اتصال Brevo
- **تصدير المجموعات** - مزامنة مجموعات Mixpanel إلى قوائم جهات اتصال Brevo لحملات مستهدفة
- **تحليلات المجموعات** - مزامنة البيانات على مستوى المجموعة للتسويق القائم على الحسابات B2B
- **إدارة الهوية** - الاستفادة من دمج الهوية في Mixpanel لملفات عملاء موحدة
- **استعلامات JQL** - تشغيل استعلامات JQL مخصصة لاستخراج مجموعات بيانات محددة لـ Brevo
- **جداول البحث** - مزامنة بيانات الإثراء من جداول البحث في Mixpanel

## المتطلبات المسبقة

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

1. حساب Mixpanel مع مشروع تم إنشاؤه
2. Mixpanel Project Token الخاص بك للتتبع من جانب العميل
3. Service Account بأذونات مناسبة للوصول إلى API من جانب الخادم
4. حساب Brevo مع وصول API
5. حساب Tajo مع بيانات اعتماد API

## المصادقة

### Service Accounts (موصى بها)

يوصي Mixpanel باستخدام Service Accounts لمصادقة API. تستخدم حسابات الخدمة HTTP Basic Auth مع اسم المستخدم (اسم مستخدم حساب الخدمة) وكلمة المرور (سر حساب الخدمة).

```bash
# Service Account authentication
curl https://mixpanel.com/api/app/me \
  -u "SERVICE_ACCOUNT_USERNAME:SERVICE_ACCOUNT_SECRET"
```

### Project Token

يُستخدم Project Token لتتبع الأحداث من جانب العميل وهو آمن للتضمين في كود العميل:

```javascript
// Client-side initialization
mixpanel.init("YOUR_PROJECT_TOKEN");
```

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

لتكاملات التطبيقات التي تصل إلى مشاريع متعددة:

```bash
curl https://mixpanel.com/api/2.0/engage \
  -H "Authorization: Bearer YOUR_OAUTH_TOKEN"
```

## الإعداد

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

```yaml
connectors:
  mixpanel:
    enabled: true
    project_token: "your-project-token"
    service_account:
      username: "your-service-account-username"
      secret: "your-service-account-secret"
    project_id: "12345"
    data_residency: "US"  # or "EU"

    # Data sync options
    sync:
      events: true
      profiles: true
      cohorts: true
      groups: false

    # Brevo list assignment
    lists:
      all_users: 15
      engaged_users: 16
      at_risk: 17
```

### ربط الأحداث

اربط أحداث Mixpanel بأنواع أحداث Brevo:

```yaml
event_mapping:
  # Mixpanel event -> Brevo event
  "Purchase": "order_completed"
  "Sign Up": "customer_created"
  "Add to Cart": "cart_updated"
  "Page View": "page_viewed"
  "$experiment_started": "experiment_started"

  # Custom events
  "Feature Activated": "feature_used"
  "Subscription Renewed": "subscription_renewed"
```

### ربط خصائص الملف الشخصي

اربط خصائص مستخدمي Mixpanel بسمات جهات اتصال Brevo:

```yaml
property_mapping:
  $email: email
  $first_name: FIRSTNAME
  $last_name: LASTNAME
  $phone: SMS
  $city: CITY
  $region: REGION
  $country_code: COUNTRY
  plan: PLAN_TYPE
  company: COMPANY
  signup_date: SIGNUP_DATE
  total_revenue: LTV
```

## نقاط نهاية API

| الطريقة | نقطة النهاية | الوصف |
| --- | --- | --- |
| `POST` | `/import` | استيراد الأحداث (Ingestion API) |
| `POST` | `/track` | تتبع الأحداث (من جانب العميل) |
| `POST` | `/engage#$set` | ضبط خصائص ملف المستخدم |
| `POST` | `/engage#$set_once` | ضبط الخصائص فقط إذا لم تكن مضبوطة |
| `POST` | `/engage#$delete` | حذف ملف مستخدم |
| `POST` | `/engage#$union` | دمج إلى خصائص القائمة |
| `POST` | `/groups` | ضبط خصائص ملف المجموعة |
| `GET` | `/export` | تصدير بيانات الأحداث الخام |
| `POST` | `/cohorts/list` | عرض المجموعات المحفوظة |
| `POST` | `/engage/query` | استعلام ملفات المستخدمين |
| `POST` | `/jql` | تشغيل استعلامات JQL مخصصة |
| `GET` | `/segmentation` | استعلام تقارير التقسيم |
| `GET` | `/retention` | استعلام تقارير الاحتفاظ |
| `GET` | `/funnels` | استعلام تقارير القمع |

## أمثلة البرمجة

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

```javascript
import { TajoClient } from '@tajo/sdk';

const tajo = new TajoClient({
  apiKey: process.env.TAJO_API_KEY,
  brevoApiKey: process.env.BREVO_API_KEY
});

// Connect Mixpanel project
await tajo.connectors.connect('mixpanel', {
  projectToken: process.env.MIXPANEL_TOKEN,
  serviceAccountUser: process.env.MIXPANEL_SA_USER,
  serviceAccountSecret: process.env.MIXPANEL_SA_SECRET,
  projectId: process.env.MIXPANEL_PROJECT_ID
});
```

### استيراد الأحداث عبر Ingestion API

```javascript
// Import events to Mixpanel (automatically forwarded to Brevo)
const response = await fetch('https://api.mixpanel.com/import', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Basic ' + btoa(
      `${process.env.MIXPANEL_SA_USER}:${process.env.MIXPANEL_SA_SECRET}`
    )
  },
  body: JSON.stringify([
    {
      event: "Purchase",
      properties: {
        distinct_id: "user_123",
        $insert_id: "evt_abc123",
        time: Math.floor(Date.now() / 1000),
        revenue: 89.99,
        product_id: "SKU-001",
        product_name: "Widget Pro"
      }
    }
  ])
});

// Expected response: { "code": 200, "status": "OK", "num_records_imported": 1 }
```

### مزامنة مجموعة إلى Brevo

```javascript
// Export a Mixpanel cohort and sync to a Brevo list
const cohort = await tajo.connectors.syncCohort('mixpanel', {
  cohortId: 12345,
  targetList: 16,
  syncMode: 'mirror'
});

console.log(cohort);
// {
//   cohortName: "Engaged Users (Last 7 Days)",
//   membersCount: 3200,
//   syncedToBrevo: 3200,
//   listId: 16
// }
```

### ضبط خصائص ملف المستخدم

```javascript
// Set user properties via the Engage API
const response = await fetch('https://api.mixpanel.com/engage#$set', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify([{
    $token: process.env.MIXPANEL_TOKEN,
    $distinct_id: "user_123",
    $set: {
      $email: "jane@example.com",
      $first_name: "Jane",
      $last_name: "Kim",
      plan: "premium",
      total_orders: 12,
      lifetime_value: 1250.00
    }
  }])
});
```

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

| API | الحد | التفاصيل |
| --- | --- | --- |
| **Ingestion API** | 2 GB/دقيقة | لكل مشروع |
| **Track API** | لا حد صارم | تسليم بأفضل جهد |
| **Engage API** | 2,000 تحديث/دُفعة | بحد أقصى 2 GB/دقيقة لكل مشروع |
| **Query API** | 60 طلبًا/ساعة | لكل مشروع (Service Account) |
| **Export API** | 60 طلبًا/ساعة | حد أقصى 100 يوم لكل استعلام |
| **JQL API** | 60 طلبًا/ساعة | لكل مشروع |
| **تصدير المجموعة** | 60 طلبًا/ساعة | لكل مشروع |

إلغاء تكرار الأحداث

يُلغي Mixpanel تكرار الأحداث باستخدام خاصية `$insert_id`. أدرج دائمًا `$insert_id` فريدًا لمنع الأحداث المكررة عند إعادة محاولة الاستيرادات الفاشلة.

## استكشاف الأخطاء

| المشكلة | السبب | الحل |
| --- | --- | --- |
| الأحداث لا تظهر | رمز مشروع خاطئ | تحقق من أن الرمز يتطابق مع المشروع المستهدف |
| خصائص الملف مفقودة | استخدام API خاطئ | استخدم `/engage#$set` لخصائص الملف، وليس `/track` |
| فشل تصدير المجموعة | أذونات غير كافية | تأكد من أن Service Account لديه دور Admin أو Analyst |
| أحداث مكررة | `$insert_id` مفقود | أدرج `$insert_id` فريدًا في كل حدث |
| 402 Payment Required | تجاوز حدود البيانات | تحقق من حدود خطة Mixpanel وقم بالترقية إذا لزم الأمر |
| بيانات EU لا تُوجَّه | إقامة بيانات خاطئة | استخدم `api-eu.mixpanel.com` لمشاريع EU |
| مشاكل دمج الهوية | distinct\_id غير صحيح | اتبع أفضل ممارسات إدارة الهوية في Mixpanel |

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

1. **استخدم Service Accounts** - فضّل Service Accounts على Project Secret للمصادقة من جانب الخادم
2. **أدرج `$insert_id`** - اضبط دائمًا معرف إدراج فريد لإلغاء تكرار الأحداث
3. **جمّع تحديثات الملفات** - أرسل حتى 2,000 تحديث ملف لكل طلب للكفاءة
4. **استخدم نقاط نهاية EU** - لإقامة بيانات EU، استخدم `api-eu.mixpanel.com` لجميع استدعاءات API
5. **زامن المجموعات وفق جدول** - اضبط مزامنة يومية أو أسبوعية للمجموعات بدلاً من الاستطلاع المستمر
6. **اربط الخصائص المحجوزة** - استخدم خصائص Mixpanel المحجوزة (`$email`، `$first_name`) لبيانات الملف
7. **راقب الاستيعاب** - استخدم صفحة الأحداث في Mixpanel للتحقق من استلام الأحداث بشكل صحيح

## الأمان

- **HTTPS فقط** - جميع اتصالات API تتطلب تشفير TLS
- **عزل Service Account** - وصول محدد النطاق لكل مشروع مع أذونات قائمة على الأدوار
- **إلغاء تكرار الأحداث** - إلغاء تكرار مدمج عبر `$insert_id` يمنع مشاكل سلامة البيانات
- **SOC 2 Type II** - Mixpanel معتمد SOC 2 Type II
- **GDPR/CCPA** - يدعم حذف بيانات المستخدم عبر GDPR API
- **إقامة بيانات EU** - مركز بيانات EU متاح للامتثال الأوروبي

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

- [موصل Segment](https://tajo.io/ar/docs/connectors/custom/segment)
- [موصل Amplitude](https://tajo.io/ar/docs/connectors/custom/amplitude)
- [مهارة مزامنة العملاء](https://tajo.io/ar/docs/skills/data-sync/customer-sync)
- [Brevo Events API](https://tajo.io/ar/docs/events-engagement/create-event)
