موصل Brevo

موصل Brevo

اربط حساب Brevo الخاص بك بـ Tajo لإدارة موحدة لجهات الاتصال، والمراسلة الإجرائية عبر البريد الإلكتروني و SMS و WhatsApp، وأتمتة تسويق شاملة.

نظرة عامة

الخاصيةالقيمة
المنصةBrevo
الفئةالتسويق
تعقيد الإعدادسهل
تكامل رسمينعم
البيانات المتزامنةجهات الاتصال، الحملات، الرسائل الإجرائية، الأحداث، التجارة الإلكترونية
عنوان API الأساسيhttps://api.brevo.com/v3

الميزات

  • مراسلة متعددة القنوات - أرسل البريد الإلكتروني الإجرائي و SMS و WhatsApp من API موحد
  • إدارة جهات الاتصال - أنشئ وحدّث وقسّم جهات الاتصال بسمات مخصصة
  • حملات التسويق - أنشئ وأرسل حملات البريد الإلكتروني برمجيًا
  • تتبع الأحداث - تتبع الأحداث المخصصة ونشاط الموقع عبر Brevo Tracker
  • مزامنة التجارة الإلكترونية - زامن المنتجات والطلبات وبيانات السلة للحملات المخصصة
  • برامج الولاء - أدر اشتراكات الولاء والنقاط وبيانات الأعضاء
  • دعم Webhook - إشعارات فورية للأحداث الإجرائية والتسويقية وأحداث CRM
  • المحادثات - تكامل ودجت الدردشة الحية وإدارة الرسائل برمجيًا

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

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

  1. حساب Brevo (خطة Free أو Starter أو Business أو Enterprise)
  2. مفتاح API تم إنشاؤه من Brevo Settings > API Keys
  3. حساب Tajo مع وصول API
  4. نطاق مرسل مُوثَّق لإرسال البريد الإلكتروني

المصادقة

يدعم Brevo طريقتي مصادقة:

مصادقة مفتاح API (موصى بها)

أدرج مفتاح API الخاص بك في رأس api-key مع كل طلب. الأفضل لعمليات التكامل المباشرة والاتصال من خادم إلى خادم.

Terminal window
curl -X GET "https://api.brevo.com/v3/account" \
-H "api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"

مصادقة OAuth 2.0

استخدم OAuth 2.0 لعمليات التكامل الخاصة داخل مؤسسة تتطلب وصولًا مُفَوَّضًا وأذونات خاصة بالمستخدم. يوفر OAuth نظامًا قائمًا على الرمز بفترات صلاحية محددة.

توفر OAuth

OAuth متاح حاليًا فقط لعمليات التكامل الخاصة داخل مؤسسة. عمليات تكامل OAuth غير مُخصصة للتوزيع العام أو إدراج السوق.

الإعداد

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

connectors:
brevo:
enabled: true
api_key: "${BREVO_API_KEY}"
api_version: "v3"
# Data sync options
sync:
contacts: true
campaigns: true
transactional: true
events: true
ecommerce: true
# List assignment
lists:
all_customers: 5
newsletter: 6
buyers: 7

ربط الحقول

اربط حقول بياناتك بسمات جهات اتصال Brevo:

التعيينات الافتراضية

Parameter Type Description
email required
string

عنوان البريد الإلكتروني لجهة الاتصال (معرف فريد)

FIRSTNAME optional
string

سمة الاسم الأول لجهة الاتصال

LASTNAME optional
string

سمة اسم العائلة لجهة الاتصال

SMS optional
string

رقم الهاتف للمراسلة عبر SMS و WhatsApp

OPT_IN optional
boolean

حالة موافقة الاشتراك التسويقي

ORDER_COUNT optional
integer

إجمالي عدد الطلبات الموضوعة

TOTAL_REVENUE optional
number

إيرادات جهة الاتصال مدى الحياة

LOYALTY_POINTS optional
integer

رصيد نقاط برنامج الولاء الحالي

ربط السمات المخصصة

field_mapping:
# Standard fields
email: email
first_name: FIRSTNAME
last_name: LASTNAME
phone: SMS
# Marketing fields
opt_in: OPT_IN
signup_source: SIGNUP_SOURCE
preferred_language: LANGUAGE
# eCommerce metrics
orders_count: ORDER_COUNT
total_spent: TOTAL_REVENUE
last_order_date: LAST_ORDER_DATE
# Loyalty fields
loyalty_tier: VIP_TIER
loyalty_points: LOYALTY_POINTS

نقاط نهاية API

نقاط النهاية الأساسية

الطريقةنقطة النهايةالوصف
POST/v3/smtp/emailإرسال بريد إلكتروني إجرائي
POST/v3/transactionalSMS/sendإرسال SMS إجرائي
POST/v3/whatsapp/sendMessageإرسال WhatsApp إجرائي
POST/v3/contactsإنشاء جهة اتصال
PUT/v3/contacts/{email}تحديث جهة اتصال
GET/v3/contacts/{identifier}الحصول على تفاصيل جهة الاتصال
POST/v3/contacts/importاستيراد جهات اتصال مجمع

نقاط نهاية التجارة الإلكترونية

الطريقةنقطة النهايةالوصف
POST/v3/orders/statusإنشاء أو تحديث حالة الطلب
POST/v3/productsإنشاء أو تحديث المنتجات
POST/v3/categoriesإنشاء أو تحديث فئات المنتجات
POST/v3/eventsتتبع الأحداث المخصصة

نقاط نهاية الحملات

الطريقةنقطة النهايةالوصف
POST/v3/emailCampaignsإنشاء حملة بريد إلكتروني
POST/v3/emailCampaigns/{id}/sendNowإرسال حملة فورًا
GET/v3/emailCampaignsعرض جميع حملات البريد الإلكتروني
GET/v3/smtp/statistics/eventsالحصول على إحصائيات أحداث البريد الإلكتروني

الأحداث

الأحداث الإجرائية

الحدثالمشغلحالة الاستخدام
deliveredتم تسليم البريد الإلكتروني إلى البريد الواردتأكيد التسليم
openedفتح المستلم البريد الإلكترونيتتبع التفاعل
clickedالنقر على رابط في البريد الإلكترونيتتبع النقر
bouncedارتد البريد الإلكترونينظافة القائمة
spamتم تمييزه كبريد عشوائيمراقبة الامتثال
unsubscribedألغى جهة الاتصال الاشتراكإدارة التفضيلات

أحداث التجارة الإلكترونية

الحدثالمشغلحالة الاستخدام
order_completedتم وضع الطلب بنجاحتدفقات ما بعد الشراء
cart_updatedتغير محتويات السلةتتبع السلة المهجورة
cart_deletedتم تنظيف السلة أو انتهتاستعادة السلة
product_viewedتمت زيارة صفحة المنتجهجر التصفح

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

تهيئة الموصل

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect Brevo account
await tajo.connectors.connect('brevo', {
apiKey: process.env.BREVO_API_KEY
});

إرسال بريد إلكتروني إجرائي

// Send a transactional email via Brevo
await tajo.brevo.sendTransactionalEmail({
to: [{ email: '[email protected]', name: 'John Doe' }],
templateId: 12,
params: {
ORDER_ID: '12345',
ORDER_TOTAL: '$59.99',
DELIVERY_DATE: '2024-02-15'
}
});

مزامنة جهات الاتصال

// Bulk import contacts to Brevo
await tajo.connectors.sync('brevo', {
type: 'full',
resources: ['contacts'],
options: {
listIds: [5, 6],
updateExisting: true,
emptyContactsAttributes: false
}
});
// Check sync status
const status = await tajo.connectors.status('brevo');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsSynced: 25400,
// campaignsSent: 142,
// eventsTracked: 89320
// }

تتبع الأحداث المخصصة

// Track a custom event for a contact
await tajo.brevo.trackEvent({
event: 'product_purchased',
eventdata: {
id: 'txn_98765',
data: {
product_name: 'Premium Widget',
price: 49.99,
currency: 'USD'
}
}
});

حدود المعدل

يفرض Brevo حدود معدل عبر ثلاث فئات بناءً على خطتك:

نقطة النهايةFree/StarterProfessionalEnterprise
POST /v3/smtp/email1,000 RPS2,000 RPS6,000 RPS
POST /v3/transactionalSMS/send150 RPS200 RPS250 RPS
POST /v3/events10 RPS20 RPS60 RPS
/v3/contacts/*10 RPS20 RPS60 RPS
جميع نقاط النهاية الأخرى100 RPH200 RPH600 RPH

استجابة حد المعدل

عند تجاوز حد المعدل، يُرجع API رمز الحالة 429 Too Many Requests. راقب رؤوس حدود المعدل في الاستجابات لتتبع استخدامك.

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

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

المشكلةالسببالحل
401 Unauthorizedمفتاح API غير صالحأعد توليد مفتاح API في Brevo Settings
لم تُنشأ جهة الاتصالحقل البريد الإلكتروني مفقودتأكد من توفير البريد الإلكتروني لجميع جهات الاتصال
لم يُسلَّم البريد الإلكترونينطاق المرسل غير مُوثَّقوثّق النطاق في إعدادات Brevo Senders
Webhook لم يُستلمعنوان URL غير صحيح أو خطأ خادمتحقق من إمكانية الوصول إلى عنوان webhook والسجلات
SMS لم يُرسلتنسيق هاتف غير صالحاستخدم التنسيق الدولي برمز البلد

وضع التصحيح

فعّل تسجيلًا مفصلاً:

connectors:
brevo:
debug: true
log_level: verbose
log_webhooks: true

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

Terminal window
tajo connectors test brevo
# ✓ API connection successful
# ✓ Contacts API accessible
# ✓ Transactional email ready
# ✓ SMS sending configured
# ✓ Webhooks registered

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

  1. استخدم تدوير مفتاح API - دوّر مفاتيح API دوريًا للأمان
  2. نفّذ التحقق من webhook - تحقق من توقيعات webhook باستخدام مصادقة اسم المستخدم/كلمة المرور
  3. جمّع استيراد جهات الاتصال - استخدم الاستيراد المجمع لمجموعات البيانات الكبيرة بدلاً من استدعاءات API الفردية
  4. راقب حدود المعدل - تحقق من رؤوس حدود المعدل لتجنب أخطاء 429
  5. استخدم تتبع الأحداث - نفّذ Brevo Tracker لبيانات سلوك العملاء الشاملة
  6. اضبط مصادقة المرسل بشكل صحيح - اضبط SPF و DKIM و DMARC لقابلية التسليم المثلى

الأمان

  • مصادقة مفتاح API - وصول قائم على الرمز السري عبر رأس api-key
  • OAuth 2.0 - وصول مُفَوَّض قائم على الرمز لعمليات التكامل الخاصة
  • التحقق من webhook - مصادقة اسم المستخدم وكلمة المرور لاستدعاءات webhook الآمنة
  • تشفير TLS - جميع اتصالات API مشفرة أثناء النقل
  • قائمة IPs البيضاء - قيود IP اختيارية متاحة في خطط Enterprise

موارد ذات صلة

Subscribe to updates

developer-docs

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

مساعد AI

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

ابدأ مجانًا مع Brevo