مسؤولية نظام التاجر
- إنشاء كود التحقق.
- حفظ الكود في نظام التاجر.
- تحديد مدة صلاحية الكود.
- التحقق من الكود الذي يدخله العميل.
طريقة المصادقة
كل طلب يجب أن يحتوي على `Authorization` و`Content-Type`. لا تضع التوكن الحقيقي في صفحة عامة أو داخل كود JavaScript يعمل في متصفح الزائر.
Authorization: Bearer YOUR_API_TOKEN
Content-Type: application/json
إرسال رسالة واتساب
يستخدم لإرسال رسالة نصية إلى رقم واتساب. `project_name` اختياري ويساعد التاجر في تمييز مصدر الطلب داخل السجلات.
{
"to": "966501234567",
"message": "مرحباً! هذه رسالة تجريبية.",
"project_name": "My CRM"
}
إرسال OTP
نبيه يرسل الكود الذي يولده نظام التاجر فقط. لا يوجد توليد، تخزين، انتهاء صلاحية، أو تحقق من الكود داخل نبيه.
{
"phone": "966501234567",
"code": "123456"
}
{
"phone": "966501234567",
"code": "123456",
"message": "رمز التحقق الخاص بك هو: 123456"
}
أمثلة الربط
استبدل `YOUR_API_TOKEN` داخل نظام موقعك أو متجرك فقط. لا تضع هذه الأمثلة في صفحة عامة أو في كود يعمل على جهاز الزائر.
curl -X POST https://naabih.com/api/send-message \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"to": "966501234567",
"message": "مرحباً! هذه رسالة تجريبية.",
"project_name": "My CRM"
}'
curl -X POST https://naabih.com/api/v1/otp/send \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"phone": "966501234567",
"code": "123456"
}'
استخدم هذا المثال في نظام موقعك أو متجرك فقط، ولا تضع التوكن في صفحة يراها الزائر.
const response = await fetch('https://naabih.com/api/send-message', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.NAABIH_API_TOKEN}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
to: '966501234567',
message: 'مرحباً! هذه رسالة تجريبية.',
project_name: 'My CRM'
})
});
const otpResponse = await fetch('https://naabih.com/api/v1/otp/send', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.NAABIH_API_TOKEN}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
phone: '966501234567',
code: '123456'
})
});
<?php
$token = getenv('NAABIH_API_TOKEN');
$payload = [
'to' => '966501234567',
'message' => 'مرحباً! هذه رسالة تجريبية.',
'project_name' => 'My CRM',
];
$ch = curl_init('https://naabih.com/api/send-message');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $token,
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode($payload, JSON_UNESCAPED_UNICODE),
]);
$response = curl_exec($ch);
curl_close($ch);
$otpPayload = [
'phone' => '966501234567',
'code' => '123456',
];
$otp = curl_init('https://naabih.com/api/v1/otp/send');
curl_setopt_array($otp, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $token,
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode($otpPayload, JSON_UNESCAPED_UNICODE),
]);
$otpResponse = curl_exec($otp);
curl_close($otp);
أكواد الأخطاء العامة
| الكود | المعنى |
|---|---|
| 200 | تم تنفيذ الطلب بنجاح |
| 400 | البيانات المرسلة غير صحيحة |
| 401 | التوكن غير صحيح أو غير موجود |
| 403 | حساب العميل غير مفعل |
| 429 | طلبات كثيرة خلال وقت قصير |
| 503 | واتساب غير متصل |
| 500 | خطأ مؤقت في النظام |
ملاحظات الأمان
استخدم API Token داخل نظام موقعك أو متجرك فقط.
التوكن الحقيقي يظهر فقط داخل لوحة تحكم العميل بعد تسجيل الدخول.
هذه الصفحة لا تعرض بيانات الحساب أو بيانات الجلسة أو أي مفاتيح حقيقية.