توافق API الموروث
إذا كنت تستخدم sms-activate.org أو خدمة مشابهة بالفعل، فانتقل إلى SMSBulk بتغيير عنوان URL الأساسي فقط. جميع النقاط والإجراءات وتنسيقات الاستجابة تبقى متطابقة.
التبديل بسطر واحد
السكربتات والمكتبات والتكاملات الحالية تعمل دون تعديل. معرفات الدول تطابق التعيين القانوني (TR=187، US=12، RU=0، إلخ).
المصادقة
كما في SMS-Activate: مرر مفتاح API كمعامل query string.
# Query string (sms-activate convention)
curl "https://smsbulk.net/stubs/handler_api.php?api_key=YOUR_KEY&action=getBalance"
# Response (plain text)
ACCESS_BALANCE:42.50مرجع الإجراءات
جميع الإجراءات السبعة مدعومة. أسماء الإجراءات والمعاملات وتنسيقات الاستجابة متطابقة مع SMS-Activate.
getBalance
يعيد رصيد محفظتك الحالي بالدولار.
GET /stubs/handler_api.php?api_key=KEY&action=getBalanceACCESS_BALANCE:42.50getNumber
يحجز رقم هاتف افتراضي. المطلوب: كود الخدمة (wa/tg/ig/إلخ) والدولة (معرف رقمي أو ISO أو slug).
GET /stubs/handler_api.php?api_key=KEY&action=getNumber&service=wa&country=187ACCESS_NUMBER:12345678:79991234567getStatus
يستعلم حالة التفعيل. يعيد STATUS_WAIT_CODE أو STATUS_OK:<code> أو STATUS_CANCEL.
GET /stubs/handler_api.php?api_key=KEY&action=getStatus&id=12345678STATUS_OK:123456setStatus
يحدّث حالة التفعيل. status=1 (إرسال SMS)، 3 (طلب SMS آخر)، 6 (اكتمال)، 8 (إلغاء).
GET /stubs/handler_api.php?api_key=KEY&action=setStatus&id=12345678&status=6ACCESS_ACTIVATIONgetNumbersStatus
يعيد عدد المخزون لكل تركيبة خدمة-دولة. dict JSON بمفاتيح مثل 'wa_187'.
GET /stubs/handler_api.php?api_key=KEY&action=getNumbersStatus&country=187{"wa_187":1234,"tg_187":567}getPrices
يعيد الأسعار والمخزون لتركيبات service+country. JSON متداخل حسب معرف الدولة.
GET /stubs/handler_api.php?api_key=KEY&action=getPrices&service=wa&country=187{"187":{"wa":{"cost":0.5,"count":1234}}}getCountries
يعيد القائمة القانونية للدول المدعومة بمعرفات SMS-Activate ورموز ISO.
GET /stubs/handler_api.php?api_key=KEY&action=getCountries[{"id":187,"iso":"TR"},...]قيم setStatus
ما يفعله كل كود حالة والاستجابة التي تحصل عليها.
| القيمة | الإجراء | الاستجابة |
|---|---|---|
| 1 | الإبلاغ عن إرسال SMS (لا شيء) | ACCESS_READY |
| 3 | طلب SMS آخر | ACCESS_RETRY_GET |
| 6 | وضع علامة اكتمال التفعيل | ACCESS_ACTIVATION |
| 8 | إلغاء التفعيل | ACCESS_CANCEL |
معرفات الدول
معرفات SMS-Activate القانونية محفوظة. أهم الدول:
دعم ثلاثي التنسيق: معامل country يقبل المعرف الرقمي (187) أو رمز ISO (TR) أو slug (turkey).
أكواد الأخطاء
جميع الأخطاء تعيد أكواد نصية عادية (text/plain). غير مترجمة أبداً — توافق مع مكتبات البوتات.
| الكود | المعنى |
|---|---|
| BAD_KEY | مفتاح API غير صالح أو مفقود |
| BAD_ACTION | معامل action مفقود أو خاطئ |
| BAD_SERVICE | كود الخدمة غير معروف |
| BAD_COUNTRY | معامل country غير معروف |
| BAD_STATUS | قيمة status غير صالحة لـ setStatus |
| WRONG_ACTION | اسم الإجراء غير مدعوم |
| NO_BALANCE | رصيد المحفظة غير كافٍ |
| NO_NUMBERS | لا توجد أرقام متاحة لهذه service+country |
| NO_ACTIVATION | معرف التفعيل غير موجود أو ليس ملكك |
| RATE_LIMITED | تم تجاوز الحصة اليومية لـ API — راجع رأس Retry-After |
| ERROR_SQL | خطأ خادم داخلي |
جاهز للترحيل؟
احصل على مفتاح API وابدأ بأمر curl واحد. لا تثبيت SDK، لا تغييرات في الكود.
