1
ربط رقم واتساب
أدخل اسمًا للجلسة ثم امسح رمز QR من تطبيق واتساب
2
إرسال رسالة
أرسل رسالة واتساب لأي رقم في العالم
0/4096
API & Webhook
اربط موقعك مع واتساب واستخدم الـ API لإرسال رسائل تلقائية
🔑 مفتاح API
••••••••••••••••••••••
.env
🌐 عنوان الخادم (Base URL)
📡 نقاط النهاية (Endpoints)
POST
/webhook/send
إرسال رسالة
إرسال رسالة واتساب لأي رقم. مثالية لإشعارات الموقع.
cURL
curl -X POST http://localhost:3000/webhook/send \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{
"phone": "5XXXXXXXX",
"message": "مرحبا من موقعي!",
"countryCode": "966"
}'
PHP
<?php
$ch = curl_init('http://localhost:3000/webhook/send');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-API-Key: YOUR_API_KEY'
],
CURLOPT_POSTFIELDS => json_encode([
'phone' => '5XXXXXXXX',
'message' => 'مرحبا من موقعي!',
'countryCode' => '966'
])
]);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
?>
JavaScript (Fetch)
const response = await fetch('http://localhost:3000/webhook/send', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'YOUR_API_KEY'
},
body: JSON.stringify({
phone: '5XXXXXXXX',
message: 'مرحبا من موقعي!',
countryCode: '966'
})
});
const result = await response.json();
POST
/webhook/send-verification
إرسال كود تحقق
إرسال كود تحقق (OTP) للتسجيل أو تسجيل الدخول. يُولّد الكود تلقائيًا ويُرسل عبر واتساب.
| الحقل | النوع | الوصف |
|---|---|---|
phone | string | رقم الهاتف (مطلوب) |
countryCode | string | كود الدولة (افتراضي: 966) |
codeLength | number | طول الكود (افتراضي: 6) |
expiresIn | number | مدة الصلاحية بالثواني (افتراضي: 300) |
appName | string | اسم التطبيق في الرسالة |
template | string | قالب مخصص (استخدم {code} و {app} و {expiry}) |
PHP - إرسال كود التحقق
<?php
// ===== الخطوة 1: إرسال كود التحقق =====
function sendVerificationCode($phone) {
$ch = curl_init('http://localhost:3000/webhook/send-verification');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-API-Key: YOUR_API_KEY'
],
CURLOPT_POSTFIELDS => json_encode([
'phone' => $phone,
'countryCode' => '966',
'codeLength' => 6,
'expiresIn' => 300,
'appName' => 'موقعي'
])
]);
$response = curl_exec($ch);
curl_close($ch);
return json_decode($response, true);
}
// ===== الخطوة 2: التحقق من الكود =====
function verifyCode($verificationId, $code) {
$ch = curl_init('http://localhost:3000/webhook/verify-code');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-API-Key: YOUR_API_KEY'
],
CURLOPT_POSTFIELDS => json_encode([
'verificationId' => $verificationId,
'code' => $code
])
]);
$response = curl_exec($ch);
curl_close($ch);
return json_decode($response, true);
}
// ===== الاستخدام =====
// عند التسجيل: إرسال الكود
$result = sendVerificationCode('5XXXXXXXX');
$verificationId = $result['verificationId'];
// خزن $verificationId في الجلسة
// عند إدخال المستخدم للكود
$verify = verifyCode($verificationId, $_POST['code']);
if ($verify['verified']) {
echo "تم التحقق بنجاح! ✅";
}
?>
POST
/webhook/verify-code
التحقق من الكود
التحقق من صحة كود التحقق المُدخل من المستخدم.
Request Body
{
"verificationId": "uuid-from-send-verification",
"code": "123456"
}
Response (Success)
{
"success": true,
"verified": true,
"phone": "9665XXXXXXXX",
"message": "تم التحقق بنجاح ✅"
}
POST
/webhook/send-template
إرسال من قالب
إرسال رسالة من قوالب مُعدّة مسبقًا (ترحيب، تأكيد طلب، إلخ).
| القالب | الوصف | المتغيرات |
|---|---|---|
welcome | رسالة ترحيب | name, app |
order_confirm | تأكيد طلب | name, orderId, amount, app |
password_reset | إعادة كلمة المرور | code, app |
appointment | تذكير موعد | name, date, time, app |
shipping | تحديث شحن | orderId, status, trackingId, app |
invoice | فاتورة | name, invoiceId, amount, dueDate, app |
login_alert | تنبيه تسجيل دخول | location, device, time, app |
PHP
<?php
$ch = curl_init('http://localhost:3000/webhook/send-template');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-API-Key: YOUR_API_KEY'
],
CURLOPT_POSTFIELDS => json_encode([
'phone' => '5XXXXXXXX',
'countryCode' => '966',
'templateName' => 'order_confirm',
'variables' => [
'name' => 'أحمد',
'orderId' => '#12345',
'amount' => '150 ريال',
'app' => 'متجري'
]
])
]);
$response = curl_exec($ch);
curl_close($ch);
?>
POST
/webhook/send-bulk
إرسال جماعي
إرسال نفس الرسالة لمجموعة أرقام دفعة واحدة.
Request Body
{
"phones": ["5XXXXXXX1", "5XXXXXXX2", "5XXXXXXX3"],
"message": "عرض خاص لكم!",
"countryCode": "966"
}
GET
/webhook/status
حالة الاتصال
التحقق من حالة اتصال واتساب وحدود الإرسال.
Response
{
"success": true,
"connected": true,
"status": "connected",
"info": {
"pushname": "اسم المستخدم",
"phone": "9665XXXXXXXX"
},
"rateLimit": {
"hourly": { "used": 5, "max": 100, "remaining": 95 },
"daily": { "used": 12, "max": 500, "remaining": 488 }
}
}