المصادقة

يوفر MorisBox نوعين من المفاتيح بحسب نوع الحساب.

الحساببادئة المفتاحالاستخدام
الشريكsk_… (باستثناء sk_dev_)Partner API كاملة (/messages والروبوتات والقوالب…)
المطورsk_dev_…API المطورين فقط (/dev/*): قوالب MorisBox

لا تستخدم JWT الخاص بالمستخدم النهائي في نظام خلفي لشريك أو مطور.


الترويسة المشتركة

Authorization: Bearer <api_key>
Content-Type: application/json

تقبل مفاتيح المطورين أيضًا X-Api-Key: sk_dev_….


مفاتيح الشركاء

الخاصيةالوصف
التنسيقمعتم (sk_…)
التخزينتجزئة على جانب الخادم؛ ويُعرض السر مرة واحدة فقط
النطاقاتsend وread وtemplates وfull
قائمة IP المسموح بهااختيارية لكل مفتاح

إنشاء مفتاح (Partner Hub)

  1. سجّل الدخول إلى Partner Hub
  2. الإدارة ← مفاتيح API ← إنشاء
  3. انسخ السر فورًا

الإنشاء برمجيًا

POST /api/v1/settings/api-keys
Authorization: Bearer <clé_existante>
{
  "name": "Backend production",
  "scopes": "send"
}

تسجيل الدخول إلى Partner Hub (الواجهة)

نقطة النهايةالوظيفة
POST /api/v1/auth/partner/loginتسجيل الدخول + كلمة المرور ← مفتاح جلسة
POST /api/v1/auth/partner/logoutإلغاء مفتاح الجلسة
Onboardingطلب حساب شريك

يجب أن تفضّل تكاملات الخادم مفاتيح API مخصصة، لا جلسة الواجهة.


مفاتيح المطورين

راجع الدليل الكامل: حسابات المطورين.

نقطة النهايةالوظيفة
POST /api/v1/auth/developer/registerإنشاء حساب + أول مفتاح
POST /api/v1/auth/developer/loginجلسة اللوحة
GET/POST /api/v1/dev/api-keysإدارة المفاتيح
DELETE /api/v1/dev/api-keys/{id}إلغاء المفتاح

لا يستخدم المطورون نقطة نهاية الشركاء /api/v1/messages، بل يستخدمون /api/v1/dev/messages فقط مع template_code.


قائمة تحقق الأمان

  • HTTPS في الإنتاج / Sandbox العام
  • تدوير المفاتيح في حال تسرّبها
  • مبدأ الحد الأدنى من الامتيازات (النطاقات)
  • عدم تضمين أي مفتاح في تطبيق هاتف عام
  • التحقق من توقيعات خطافات الويب (خطافات الويب)

استجابات غير مصرح بها

{
  "error": {
    "code": "unauthorized",
    "message": "Invalid or expired API key."
  }
}

الحالات: 401 (مفتاح غير صالح) أو 403 (النطاق / عنوان IP / الدور).