توثيق API - المرسل الذكي

أرسل رسائل واتساب من أي تطبيق أو نظام خارجي

العودة للوحة التحكم

مفتاح API الخاص بك

استخدم هذا المفتاح في الـ Header لكل طلب:

سجل دخول أولاً لعرض مفتاحك
المصادقة: أضف الـ Header التالي لكل طلب: X-API-Key: wsk_xxxxx

إرسال الرسائل

POST /api/messages

إرسال رسالة لرقم واحد. الرسالة تدخل في قائمة الانتظار وترسل من الإضافة.

الحقلالنوعمطلوبالوصف
phonestringنعمرقم الهاتف (مثال: 966500000000)
contentstringلانص الرسالة
// JavaScript
fetch('https://wa.smart-whats.com/api/messages', {
  method: 'POST',
  headers: {
    'X-API-Key': 'wsk_xxxxx',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    phone: '966500000000',
    content: 'مرحباً! هذه رسالة تجريبية'
  })
})
# curl
curl -X POST https://wa.smart-whats.com/api/messages \
  -H "X-API-Key: wsk_xxxxx" \
  -H "Content-Type: application/json" \
  -d '{"phone":"966500000000","content":"مرحباً!"}'

الاستجابة:

{ "id": 1, "status": "pending" }

POST /api/messages/bulk

إرسال رسائل جماعية لعدة أرقام (مع دعم المرفقات).

الحقلالنوعمطلوبالوصف
phonesJSON arrayنعممصفوفة الأرقام (JSON string)
contentstringلانص الرسالة
attachmentfileلاملف مرفق (حد أقصى 16MB)
// JavaScript - إرسال جماعي
const formData = new FormData();
formData.append('phones', JSON.stringify(['966500000001', '966500000002']));
formData.append('content', 'عرض خاص لعملائنا!');

fetch('https://wa.smart-whats.com/api/messages/bulk', {
  method: 'POST',
  headers: { 'X-API-Key': 'wsk_xxxxx' },
  body: formData
})

الاستجابة:

{ "batchId": "uuid...", "count": 2, "status": "pending" }

عرض الرسائل والإحصائيات

GET /api/messages

عرض رسائلك مع فلاتر (الحالة، batch_id، صفحة).

الحقلالنوعمطلوبالوصف
statusqueryلاpending / sent / failed
batch_idqueryلامعرف الدُفعة
pagequeryلارقم الصفحة (افتراضي: 1)
fetch('https://wa.smart-whats.com/api/messages?status=sent&page=1', {
  headers: { 'X-API-Key': 'wsk_xxxxx' }
})

GET /api/stats

إحصائيات رسائلك (إجمالي، في الانتظار، مرسلة، فاشلة).

fetch('https://wa.smart-whats.com/api/stats', {
  headers: { 'X-API-Key': 'wsk_xxxxx' }
})

الاستجابة:

{ "total": 150, "pending": 5, "sending": 1, "sent": 140, "failed": 4 }

تحديث حالة الرسائل

PATCH /api/messages/:id/status

تحديث حالة رسالة (تُستخدم من الإضافة عادةً).

الحقلالنوعمطلوبالوصف
statusstringنعمpending / sending / sent / failed
error_messagestringلارسالة الخطأ (في حالة الفشل)

حذف الرسائل

DELETE /api/messages

حذف رسائل حسب الدُفعة أو الحالة أو حذف الكل.

الحقلالنوعمطلوبالوصف
batch_idstringلاحذف دُفعة محددة
statusstringلاحذف حسب الحالة
ملاحظات:
- الرسائل تدخل في قائمة الانتظار (status: pending) وترسل تلقائياً من إضافة كروم المتصلة.
- تأكد أن الإضافة متصلة ومفتوحة على واتساب ويب لإرسال الرسائل.
- حد أقصى للمرفقات: 16 ميجابايت.