رموز الخطأ — واجهة برمجة تطبيقات بيانات واتساب
تتبع جميع استجابات الخطأ نفس النمط: حالة HTTP + رسالة الخطأ + الرمز الرقمي + الطابع الزمني.
أشكال الأظرف (المُلاحَظة)
يقوم الوكيل بإرجاع أحد شكلين حسب نمط الفشل:
خطأ قصير (المصادقة / حد الاندفاع / التحقق):
{ "error": "Requests must be at least 0.5 seconds apart" }خطأ تفصيلي (فشل البحث في /number/no_picture/{n}, /number-simple/{n}) — لا يزال يتم تحليل النص كـ WhatsAppEntry مع حقول إضافية:
{
"number": "13105551234",
"isWAContact": true,
"error": "Whatsapp number doesn't exist",
"exists": false,
"reason": "not_found",
"status": 404,
...
}تحقق دائمًا من حقل الخطأ حتى في استجابات 200 (على سبيل المثال، يمكن أن تُرجع /number_cache 200 مع رسالة خطأ في الداخل).
حالات HTTP الشائعة
| HTTP | معنى | فعل |
|---|---|---|
| 400 | رقم هاتف غير صالح — يجب أن يتطابق مع ^[0-9]+$ (أرقام فقط، بدون علامة +). | قم بإزالة الأرقام غير الرقمية قبل الإرسال. تحقق من صحة البيانات باستخدام مكتبة libphonenumber محليًا. |
| 401 | رأس x-rapidapi-key مفقود أو غير صالح. | أضف الرؤوس x-rapidapi-key و x-rapidapi-host: wp-data.p.rapidapi.com. |
| 403 | الخطة النشطة مطلوبة، أو تم استنفاد الحصة، أو أن نقطة النهاية ليست ضمن خطتك. | تحقق من اشتراكك في RapidAPI. قم بترقية خطتك أو شحن رصيدك. |
| 404 | لم يتم العثور على نقطة النهاية أو المورد. | تحقق من مسار عنوان URL. بالنسبة إلى /number/{number}، لا يزال الرقم غير المعروف يُرجع WhatsAppEntry مع isWAContact: false — تحقق من نص الرسالة، وليس الحالة. |
| 429 | حدّ التدافع — الطلبات متقاربة جدًا. نص الطلب: {"error":"Requests must be at least 0.5 seconds apart"}. | انتظر 500 مللي ثانية على الأقل بين الطلبات (طلبان/ثانية). ميجا: 250 مللي ثانية (4 طلبات/ثانية). اقرأ /api-key-stats → roleInfo.minIntervalSeconds للتأكد من وتيرة خطتك. |
| 500 | عطل غير متوقع من جانب الخادم. | أعد المحاولة مع التراجع الأسي. أبلغ عن المشكلة إذا استمرت. |
| 502 / 503 | دليل واتساب الأصلي غير متوفر، أو أن معدل الخدمة محدود من المصدر. | أعد المحاولة مع مراعاة فترة التراجع. تحقق من حالة واجهة برمجة التطبيقات (/api-status). |
| 504 | انتهت مهلة البحث في المصدر. | أعد المحاولة مرة أخرى. جرب /number/no_picture/{number} للحصول على استجابة أسرع. |
استراتيجية إعادة المحاولة
- إعادة المحاولة: 429 (مع إعادة المحاولة بعد ذلك)، 500، 502، 503، 504.
- لا تعيد المحاولة: 400، 401، 403، 404.
- التراجع: يتزايد بشكل أُسّي مع تذبذب. الحد الأقصى 5 محاولات. يجب دائمًا مراعاة إعادة المحاولة بعد ذلك.
مثال 429 جسم
HTTP/1.1 429 Too Many Requests
content-type: application/json
{ "error": "Requests must be at least 0.5 seconds apart" }متعلق ب
ما يقوله مستخدمونا
تقييمات حقيقية من عملائنا الراضين
جارٍ تحميل التقييمات...