Sandbox وLive (وضع الحساب)
لمصطلح «Sandbox» معنيان مختلفان في MorisBox:
| المفهوم | المعنى |
|---|---|
| مضيفات النشر | بيئة مشتركة (api.morisbox.com وPartner Hub وApplication Client) |
| Sandbox الحساب | لكل شريك: تقتصر الرسائل الصادرة على هاتف اختبار واحد |
تتناول هذه الصفحة وضع Sandbox / Live للحساب.
الوضع الافتراضي: Sandbox
يُنشأ كل شريك جديد في وضع Sandbox:
- لا يمكنه الإرسال إلا إلى هاتف E.164 واحد مسموح به (
sandbox_allowed_phone) - تكون عمليات البث محظورة
- تستخدم دعوات التدفقات ودردشة الوكيل قيد الهاتف نفسه
- يكون شريك المنصة
seed360دائمًا في وضع Live (OTP / النظام)
إعداد هاتف الاختبار
Partner Hub ← الإعدادات ← Sandbox / Live، أو:
PUT /api/v1/settings/sandbox
Authorization: Bearer sk_…
Content-Type: application/json
{
"sandbox_allowed_phone": "+228XXXXXXXX"
}
ثم:
POST /api/v1/messages
Authorization: Bearer sk_…
Content-Type: application/json
{
"phone": "+228XXXXXXXX",
"body": "Hello sandbox"
}
يُرجع الإرسال إلى أي رقم آخر الحالة 403 مع error.code = sandbox_restricted.
طلب وضع Live
عندما تكون مستعدًا لحركة الإنتاج:
POST /api/v1/settings/sandbox/request-live
Authorization: Bearer sk_…
Content-Type: application/json
{
"note": "Production launch for SEED notifications"
}
يجب أن يوافق مسؤول منصة MorisBox. وحتى ذلك الحين، تظل في Sandbox.
المركز: Sandbox / Live ← طلب Live.
الإدارة (شريك المنصة)
يمكن لمشغلي المنصة:
| الإجراء | الأثر |
|---|---|
| الموافقة على Live | sandbox_mode=false |
| رفض الخروج | البقاء في Sandbox، وحالة الخروج rejected |
| إعادة ضبط Sandbox | فرض Sandbox مجددًا (مثلًا بعد مشكلات KYC)؛ مع الاحتفاظ بهاتف الاختبار |
API (مفتاح إدارة seed360):
GET /api/v1/admin/sandbox
POST /api/v1/admin/sandbox/partners/{id}/approve-live
POST /api/v1/admin/sandbox/partners/{id}/reject-live
POST /api/v1/admin/sandbox/partners/{id}/reset
المركز: إدارة Sandbox (للمنصة فقط).
المضيفات (النشر)
| الخدمة | عنوان URL |
|---|---|
| Partner API | https://api.morisbox.com/api/v1 |
| Partner Hub | https://partner.morisbox.com |
| وثائق الشركاء | https://docs.morisbox.com/partners |
| وثائق المطورين | https://developers.morisbox.com/developers |
| Application Client | https://morisbox.com |
لا يوجد مفتاح API عام مشترك. يستخدم كل شريك بيانات اعتماده الخاصة.
قائمة تحقق اختبارات الدخان (الشريك)
- شريك جديد ← Sandbox افتراضي
POST /messagesمن دون هاتف مسموح ← 403 sandbox_restricted- تعيين الهاتف المسموح ← الإرسال إلى ذلك الرقم ← 201
- الإرسال إلى رقم آخر ← 403
POST /broadcastsفي Sandbox ← 403- طلب Live ← موافقة المسؤول ← الإرسال إلى أي هاتف
curl للشريك (Sandbox)
export SEED360_API_BASE="https://api.morisbox.com/api/v1"
export SEED360_API_KEY="sk_…"
curl -sS -X PUT "$SEED360_API_BASE/settings/sandbox" \
-H "Authorization: Bearer $SEED360_API_KEY" \
-H "Content-Type: application/json" \
-d '{"sandbox_allowed_phone":"+228XXXXXXXX"}'
curl -sS -X POST "$SEED360_API_BASE/messages" \
-H "Authorization: Bearer $SEED360_API_KEY" \
-H "Content-Type: application/json" \
-d '{"phone":"+228XXXXXXXX","body":"Hello MorisBox"}'