توثيق API
أتمت شراء الأرقام عبر REST API من iLoveSMS أو بروتوكول SMS-Activate.
مفتاح API الخاص بك موجود في إعدادات الحساب. إنشاء حساب
REST JSON API v1
الرابط الأساسي: https://ilovesms.com.tr/api/v1/ — المصادقة: ?api_key=… / Authorization: Bearer …
| Method | المعاملات | الوصف |
|---|---|---|
GET services | — | الخدمات مع أقل سعر والمخزون. |
GET countries | — | قائمة الدول. |
GET prices | service | الأسعار والمخزون حسب الدولة لخدمة ما. |
GET balance | api_key | رصيدك. |
POST buy | api_key, service, country_id | شراء رقم؛ يُخصم السعر من الرصيد. |
GET status | api_key, id | حالة الطلب ورمز SMS. |
POST cancel | api_key, id | إلغاء طلب قيد الانتظار واسترداده. |
POST finish | api_key, id | إغلاق الرقم بعد استلام الرمز. |
GET orders | api_key | آخر 100 طلب لك. |
# 1) شراء رقم
curl -X POST "https://ilovesms.com.tr/api/v1/buy" -d "api_key=YOUR_API_KEY" -d "service=tg" -d "country_id=12"
{"ok":true,"order":{"id":1042,"service":"Telegram","country":"USA","number":"12025550123",
"price":0.45,"status":"waiting","code":null,"seconds_left":1200}}
# 2) استعلم كل 5 ثوانٍ حتى يصل الرمز
curl "https://ilovesms.com.tr/api/v1/status?api_key=YOUR_API_KEY&id=1042"
{"ok":true,"order":{"id":1042,"status":"received","code":"48213", ...}}
رموز الأخطاء: bad_key, bad_service, insufficient, no_numbers, not_cancelable, cancel_later
Webhooks
بدل الاستعلام المتكرر، أعطنا رابطًا وسنرسل إليه حدث JSON عند وصول رمز أو استرداد طلب.
POST https://your-server.example/sms-webhook
Content-Type: application/json
X-Event: sms.received (sms.received | order.refunded | test)
X-Signature: sha256=<hmac_sha256(body, API_KEY)>
{"event":"sms.received","order":{"id":1042,"service":"Telegram","number":"12025550123","status":"received","code":"48213", ...},"sent_at":"2026-10-30T12:00:00+00:00"}
# PHP
$ok = hash_equals('sha256=' . hash_hmac('sha256', file_get_contents('php://input'), API_KEY), $_SERVER['HTTP_X_SIGNATURE']);
أجب بـ HTTP 2xx خلال 5 ثوانٍ. اضبط رابط webhook في إعدادات الحساب
نقطة اتصال متوافقة مع SMS-Activate
البرامج المصممة لبروتوكول SMS-Activate تعمل دون تعديل: غيّر فقط الرابط الأساسي ومفتاح API.
https://ilovesms.com.tr/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getBalance → ACCESS_BALANCE:12.40
...&action=getNumber&service=tg&country=12 → ACCESS_NUMBER:1042:12025550123
...&action=getStatus&id=1042 → STATUS_WAIT_CODE | STATUS_OK:48213
...&action=setStatus&id=1042&status=8 → ACCESS_CANCEL
...&action=setStatus&id=1042&status=6 → ACCESS_ACTIVATION
...&action=getPrices&service=tg → {"12":{"tg":{"cost":0.45,"count":3120}}}
رموز الخدمات ومعرّفات الدول هي نفسها في طريقتي services وcountries.