📱 إدارة الجلسات
+
إضافة جلسة جديدة
✉️ إرسال رسالة
📢 إرسال جماعي
يمكن لصق أرقام متعددة مفصولة بفواصل أو أسطر
💬 صندوق الرسائل
لا توجد رسائل
🔌 API والتوكنات
🌐 معلومات الخادم
—
وقت التشغيل
—
الذاكرة MB
—
Node.js
—
الجلسات
—
Webhook
🔑 توكنات الجلسات
لا توجد جلسات
🛡️ مفتاح الإدارة (Admin Key)
📋 نسخ
📖 توثيق API
🔐 المصادقة
كل طلب API يحتاج إلى أحد الآتيين:
| الهيدر | الاستخدام |
|---|---|
| x-admin-key: mixi-iraq-admin | وصول كامل لإدارة الجلسات |
| x-api-token: TOKEN | إرسال (/api/send) واستقبال/قراءة (/api/inbox) للجلسة المرتبطة بالتوكن |
| Authorization: Bearer TOKEN | بديل لـ x-api-token |
| ?token=TOKEN | توكن في الـ URL |
📋 نقاط النهاية (Endpoints)
| Method | المسار | الصلاحية | الوصف |
|---|---|---|---|
| GET | /api/status | — | حالة الخادم + webhook (enabled / signing / allMessages) — دون كشف الرابط |
| GET | /api/sessions | Admin | قائمة الجلسات |
| POST | /api/sessions/create | Admin | إنشاء جلسة جديدة |
| POST | /api/sessions/:id/reconnect | Admin | إعادة الاتصال |
| POST | /api/sessions/:id/logout | Admin | تسجيل خروج + QR جديد |
| POST | /api/sessions/:id/regen-token | Admin | إعادة توليد التوكن |
| DELETE | /api/sessions/:id | Admin | حذف الجلسة نهائياً |
| POST | /api/send | Token / Admin | إرسال رسالة |
| POST | /api/broadcast | Token / Admin | إرسال جماعي |
| GET | /api/inbox | Token / Admin | قراءة رسائل الجلسة (وارد/صادر/سجل) |
| GET | /api/messages | Token / Admin | سجل الرسائل: مع x-api-token جلسة واحدة + ?limit وincoming=1؛ مع Admin الكل أو ?sessionId= |
📥 استقبال الرسائل
| الوسيلة | الوصف |
|---|---|
| GET /api/inbox | سحب الرسائل من الذاكرة عبر x-api-token. معاملات: incoming=1 (وارد فقط)، limit (عدد، حتى 300). مع x-admin-key يلزم ?sessionId= |
| Webhook | إشعار POST تلقائي للخادم عند وصول رسالة (يُفعّل بـ WEBHOOK_URL على آلة تشغيل Node) — لجميع الجلسات؛ اختياري WEBHOOK_SECRET وWEBHOOK_ALL_MESSAGES |
💡 أمثلة
إرسال رسالة عبر توكن الجلسة:
curl -X POST https://whtsapp.mixi-iraq.com/api/send \
-H "Content-Type: application/json" \
-H "x-api-token: YOUR_TOKEN" \
-d '{"number":"9647701234567","message":"مرحبا!"}'
قراءة الرسائل الواردة فقط (نفس التوكن):
curl -s "https://whtsapp.mixi-iraq.com/api/inbox?incoming=1&limit=50" \ -H "x-api-token: YOUR_TOKEN"
قراءة inbox عبر Admin (يلزم sessionId):
curl -s "https://whtsapp.mixi-iraq.com/api/inbox?sessionId=SESSION_ID&incoming=1&limit=50" \ -H "x-admin-key: mixi-iraq-admin"
إرسال عبر Admin Key (يحتاج sessionId):
curl -X POST https://whtsapp.mixi-iraq.com/api/send \
-H "Content-Type: application/json" \
-H "x-admin-key: mixi-iraq-admin" \
-d '{"sessionId":"SESSION_ID","number":"9647701234567","message":"Hi"}'
إنشاء جلسة جديدة:
curl -X POST https://whtsapp.mixi-iraq.com/api/sessions/create \
-H "Content-Type: application/json" \
-H "x-admin-key: mixi-iraq-admin" \
-d '{"name":"الجلسة الرئيسية"}'
Webhook للرسائل الواردة (متغيرات البيئة عند تشغيل الخادم):
WEBHOOK_URL=https://example.com/wa-hook WEBHOOK_SECRET=اختياري_للتحقق_HMAC WEBHOOK_ALL_MESSAGES=1 # اختياري: إرسال صادر+وارد (افتراضي: وارد فقط)
يُرسل POST بصيغة JSON: event = "message" مع الحقول نفسها كسجل الرسالة. إن وُجد WEBHOOK_SECRET يُضاف الرأس X-Webhook-Signature: sha256=<hex> لمحتوى الجسم.