واجهة برمجة التحقق عبر SMS — SMSNoKYC
أتمتة التحقق بالرمز من البداية إلى النهاية. احجز أرقاماً افتراضية في أكثر من 190 دولة، واقرأ رموز الرسائل في ثوانٍ، واستأجر خطوطاً مخصّصة طويلة الأمد، وتحكّم بكل طلب عبر واجهة REST واحدة — دون مفتاح واجهة، دون تحقق هوية، بالدفع بالعملة المشفّرة.
لماذا يختار المطورون واجهة SMSNoKYC البرمجية؟
تُعدّ SMSNoKYC واجهة API التحقق عبر SMS الأكثر مرونةً للمطورين الذين يحتاجون إلى الخصوصية والتغطية العالمية والتسعير المتوقع. على خلاف مزودي SMS-OTP التقليديين الذين يشترطون عقودًا مؤسسية وحدودًا شهرية دنيا واستبيانات KYC، تعمل SMSNoKYC مع أي عميل HTTPS وتفرض رسومًا صارمةً بحسب عدد الأرقام، وتقبل أكثر من 20 عملة مشفرة بما فيها Bitcoin وMonero وEthereum وUSDT وUSDC وSolana وLitecoin وXRP وTRON وToncoin.
تشمل حالات الاستخدام الشائعة: أتمتة إنشاء الحسابات لاختبارات QA على نطاق واسع، واسترداد كلمات المرور لمرة واحدة لوكلاء headless وبوتات CI، والتحقق من مسارات تشترط رقم هاتف ضمن بيئات التكامل المستمر، واستئجار أرقام مخصصة طويلة الأمد لحسابات Telegram أو WhatsApp التي تحتاج إلى استقبال SMS دون انقطاع، وتشغيل عمليات التحقق الجغرافي الموزع عبر 190+ دولة مع التحكم الصريح في مستوى المشغل — افتراضي أو فعلي أو مميز.
المصادقة
تستخدم API مصادقة الجلسة القائمة على ملفات تعريف الارتباط. للمصادقة برمجيًا:
- أرسل طلب POST إلى
/auth-api.phpمع عبارة seed الخاصة بك - خزّن ملف تعريف ارتباط الجلسة من الاستجابة
- أدرج ملف تعريف الارتباط في جميع طلبات API اللاحقة
قم بالمصادقة باستخدام عبارة seed الخاصة بك وأنشئ جلسة.
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
| action | string | مطلوب | يجب أن يكون "login" |
| seed | string | مطلوب | عبارة seed الوصول المكونة من 16 حرفًا (مثال: AbC3-dEf4-gHj5-kLm6) |
الرابط الأساسي
جميع نقاط نهاية API نسبية إلى:
جميع الاستجابات بتنسيق JSON. تقبل نقاط نهاية POST أجسام الطلبات application/json و application/x-www-form-urlencoded.
حدود الطلبات
تفرض API حدود المعدل التالية:
| نقطة النهاية | الحد | النافذة |
|---|---|---|
| المصادقة | 5 محاولات | 15 دقيقة |
| جميع endpoints الأخرى | بدون حد صارم | — |
تحديد المعدل: المصادقة محدودة بـ 5 محاولات كل 15 دقيقة. endpoints الأخرى غير محدودة حاليًا، لكن الاستخدام المفرط قد يتم تقييده. استخدم فترات طلب معقولة.
معالجة الأخطاء
تُرجع جميع الأخطاء كائن JSON مع حقل <code>error</code>:
| رمز HTTP | المعنى |
|---|---|
| 200 | نجاح (تحقق من نص الاستجابة لأخطاء مستوى التطبيق) |
| 403 | رمز CSRF غير صالح |
| 405 | طريقة HTTP خاطئة (مثال: GET على endpoint يقبل POST فقط) |
| 429 | تم تجاوز حد المعدل |
أخطاء شائعة على مستوى التطبيق:
| خطأ | السبب |
|---|---|
"Login required" | انتهت الجلسة أو غير مصادق عليه |
"Insufficient balance" | أموال غير كافية — يتضمن حقلي need وhave |
"Service not available for this country" | لا يوجد مخزون أو الخدمة غير نشطة للدولة المحددة |
"Missing country or service" | لم يتم تقديم المعاملات المطلوبة |
قائمة الدول
يُرجع جميع الدول النشطة مع الأرقام الافتراضية المتاحة. لا يتطلب مصادقة.
قائمة الخدمات
يُرجع الخدمات المتاحة لدولة محددة، بما في ذلك الأسعار والمخزون. بدون رمز الدولة، يُرجع جميع الخدمات بدون أسعار.
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
| country | string | اختياري | رمز الدولة ISO 3166-1 alpha-2 (مثال: us، gb، de) |
قائمة المشغّلين
يُرجع المشغلين (الناقلين) المتاحين لدولة محددة. لكل مشغل نوع ومضاعف سعر يُطبق على سعر الخدمة الأساسي.
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
| country | string | مطلوب | رمز الدولة ISO 3166-1 alpha-2 |
أنواع المشغلين: virtual — أرقام VoIP، الأرخص، قد تُحظر من بعض الخدمات. physical — بطاقات SIM حقيقية، معدل نجاح أعلى. premium — أسرع تسليم (~10 ثوانٍ)، أعلى معدل نجاح.
شراء رقم (تفعيل SMS)
اشترِ رقمًا افتراضيًا للتحقق عبر SMS لمرة واحدة. الرقم نشط لمدة 20 دقيقة. إذا لم يتم استلام أي SMS، يتم استرداد رصيدك تلقائيًا.
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
| country | string | مطلوب | رمز الدولة (مثال: us) |
| service_id | integer | مطلوب | معرّف الخدمة من قائمة الخدمات |
| operator_id | integer | اختياري | معرّف المشغل من قائمة المشغلين. اتركه فارغًا للمشغل الافتراضي. |
عرض الطلبات
يُرجع أحدث 50 طلبًا لك، بما في ذلك أرقام الهواتف ورموز SMS. استعلم عن هذا endpoint للتحقق من رموز SMS الواردة على الطلبات النشطة.
حالات الطلب: active — بانتظار SMS. completed — تم استلام SMS. cancelled — ألغاه المستخدم. refunded — استرداد تلقائي (لم يتم استلام SMS قبل انتهاء المهلة). expired — انتهت المهلة.
الحصول على سعر الإيجار
احصل على سعر استئجار رقم مخصص من مشغل محدد لفترة معينة.
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
| country | string | مطلوب | رمز الدولة |
| operator_id | integer | مطلوب | معرّف المشغل |
| duration | integer | مطلوب | مدة الإيجار بالأيام: 7، 14، 30، أو 90 |
استئجار رقم
استأجر رقم هاتف مخصصًا واحدًا أو أكثر. الرقم حصري لك طوال فترة الإيجار ويستقبل رسائل SMS واردة غير محدودة.
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
| country | string | مطلوب | رمز الدولة |
| operator_id | integer | مطلوب | معرّف المشغل |
| duration | integer | مطلوب | 7، 14، 30، أو 90 يومًا |
| qty | integer | اختياري | عدد الأرقام للاستئجار (1–10، الافتراضي: 1) |
الحصول على معلومات المستخدم
يُرجع معلومات حساب المستخدم الحالي والرصيد. استخدمه للتحقق من حالة المصادقة والأموال المتاحة.
مثال على سير العمل الكامل
إليك مثال Python كامل يقوم بالمصادقة، ويجد خدمة، ويشتري رقمًا، ويستعلم عن رمز SMS: