توثيق API - الواتس المباشر

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

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

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

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

سجل دخول أولاً لعرض مفتاحك

المصادقة

يمكنك المصادقة بأي طريقة من الطرق التالية:

الطريقة 1: مفتاح API (مستحسن)

أضف الـ Header التالي لكل طلب:

X-API-Key: wsk_xxxxx

الطريقة 2: اسم المستخدم وكلمة المرور (Basic Auth)

استخدم رقم الهاتف وكلمة المرور المسجلة في لوحة التحكم:

# curl - تلقائي
curl -u "966500000000:yourpassword" https://wa.smart-whats.com/api/messages

# أو يدوياً بترميز Base64
Authorization: Basic base64(phone:password)
// JavaScript
fetch('https://wa.smart-whats.com/api/messages', {
  headers: {
    'Authorization': 'Basic ' + btoa('966500000000:yourpassword')
  }
})

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

POST /api/messages

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

الحقلالنوعمطلوبالوصف
phonestringنعمرقم الهاتف (مثال: 966500000000)
contentstringلانص الرسالة
attachmentfileلاملف مرفق - صورة، فيديو، PDF (حد أقصى 16MB)
// 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: 'مرحباً! هذه رسالة تجريبية'
  })
})
// JavaScript - نص + مرفق
const formData = new FormData();
formData.append('phone', '966500000000');
formData.append('content', 'شوف المرفق');
formData.append('attachment', fileInput.files[0]);

fetch('https://wa.smart-whats.com/api/messages', {
  method: 'POST',
  headers: { 'X-API-Key': 'wsk_xxxxx' },
  body: formData
})
# curl - نص فقط (API Key)
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":"مرحباً!"}'

# curl - نص فقط (Basic Auth)
curl -u "966500000000:yourpassword" \
  -X POST https://wa.smart-whats.com/api/messages \
  -H "Content-Type: application/json" \
  -d '{"phone":"966500000000","content":"مرحباً!"}'

# curl - نص + مرفق
curl -u "966500000000:yourpassword" \
  -X POST https://wa.smart-whats.com/api/messages \
  -F "phone=966500000000" \
  -F "content=شوف الصورة" \
  -F "attachment=@/path/to/image.jpg"

الاستجابة:

{ "id": "abc123...", "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 ميجابايت.