د SMS-Activate سره د کار کولو لپاره API پروتوکول
API د ستاسو سافټویر او زموږ سرور ترمنځ پروتوکول دی
API د ستاسو په خوا کې د sms، otp، او pva ترلاسه کولو پروسې اتومات کولو لپاره اړین دی
زموږ API د رقابتی سایټونو سره په بشپړ ډول مطابقت لري
ټولې غوښتنې باید https://api.sms-activate.ai/stubs/handler_api.php ته واستول شي
POST یا GET غوښتنه.
ټولې غوښتنې باید د api_key GET پارامتر په بڼه د API کیلي ولري
په php کې د پروتوکول تطبیق ډاونلوډ کړئ په Python کې د پروتوکول چمتو شوي تطبیق ډاونلوډ کړئد فعالولو API
پارامترونه:
$api_key - د API کیلي
$country * - د هیواد شمیره جدول وګورئ
$operator * د موبایل آپریټر شمیرې، تاسو کولی شئ څو شمیرې مشخص کړئ چې د کاما په واسطه جلا شوي وي (یوازې د لاندې لپاره شتون لري:
** شتون لري د $country = 0, $country = 1, $country = 2
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{"vk_0":76,"ok_0":139,"wa_0":90,"vi_0":223,"tg_0":158,"wb_0":106,"go_0":182,"av_0":244,"av_1":211,"fb_0":107}
چیرې چې د ډیش وروسته د خدمت نوم دی، وروسته له نښې کول اړینه ده که ریدایرکشن شامل شي. ۰ - نه. ۱ - هو.
پارامترونه:
$api_key - د API کیلي
$service * - خدمت جدول وګورئ
* اختیاري پارامتر. که مشخص نه شي، نو د ټولو خدماتو لپاره غوره هیوادونه به په اتومات ډول وښودل شي.
$freePrice * - اختیاري پارامتر. که چمتو شي true, مقدار او قیمت به د Free Price سره سم وړاندې شي
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{
0: {
"country: 0,
"count": 43575,
"price": 15.00,
"retail_price": 30.00
}, ...
}
$freePrice = true:
{
0: {
"country: 0,
"count": 43575,
"price": 15.00,
"retail_price": 30.00,
"freePriceMap": {
"15.00": 43242,
"18.00": 333
}
}, ...
}
د پیسو بیرته ترلاسه کولو (cashback) حساب سره د بیلانس غوښتنه:
* هغه بیلانس راستنوي چې راټول شوی cashback پکې شامل وي، که چیرې د cashback حساب تنظیماتو کې 'د فعالولو لپاره cashback مصرف کړئ' چیک باکس ټیک شوی وي
پارامترونه:
$api_key - د API کیلي
ځواب:
ACCESS_BALANCE: 'د حساب بیلانس'
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
ERROR_SQL - د sql-server تېروتنه
* ټول آپریټرونه چې د لیږد شوي هیواد لپاره شتون لري راستنوي، که هیواد ونه لیږدول شي - نو د هر هیواد لپاره شتون لرونکي ټول آپریټرونه به راستنه کړي
پارامترونه:
$api_key - د API کیلي
$country - د هیواد کوډ
ځواب:
د خدمت ځواب به په json بڼه وي:
{"status":"success", "countryOperators": {
"Country1Code": ["operator1Name","operator2Name","operator3Name", ...],
"Country2Code": ["operator1Name","operator2Name","operator3Name", ...],
...
}}
مثال:
{"status":"success", "countryOperators": {
"0": ["beeline","megafon","mts", ...],
"1": ["life","mts","kyivstar","utel" ...],
...
}}
* د 'countryOperators' دننه - کیلي به د هیواد کوډ وي
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
ERROR_SQL - د sql-server تېروتنه
OPERATORS_NOT_FOUND - هیڅ ریکارډونه ونه موندل شول (لکه د نه شتون لرونکي هیواد لیږد)
پارامترونه:
$api_key - د API کیلي
ځواب:
د خدمت ځواب به په json بڼه وي:
{"status":"success", "activeActivations": [
{
"activationId" : "635468021",
"serviceCode" : "vk",
"phoneNumber" : "79********1",
"activationCost" : "12.50",
"activationStatus" : "4",
"smsCode" : ["CODE"],
"smsText" : "[Your CODE registration code]",
"activationTime" : "2022-06-01 16:59:16",
"discount" : "0.00",
"repeated" : "0",
"countryCode" : "0",
"countryName" : "Russia",
"canGetAnotherSms" : "1",
}]
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
ERROR_SQL - د sql-server تېروتنه
NO_ACTIVATIONS - داخلې ونه موندل شوې (هیڅ فعالې فعالونې شتون نلري)
پارامترونه:
$api_key - د API کیلي
$service - د امر کولو لپاره خدمت جدول وګورئ
$forward * - ایا دا اړینه ده چې شمیره د فارورډینګ سره وغوښتل شي
* اختیاري پارامتر، ۰ مني (نه اجرا کیږي، په اتومات ډول ټاکل شوی)، ۱ (اجرا کیږي)
$maxPrice * - اعظمي قیمت چې تاسو یې د Free Price کې د شمیرې اخیستلو لپاره ورکولو ته چمتو یاست
* اختیاري پارامتر، که مشخص نه شي، نو پیرود به په عادي قیمت ترسره شي
$phoneException * - د روسي شمیرو لپاره د مخکنیو برخو استثنا. د کاما سره ولیکئ. د ثبت بڼه: د هیواد کوډ او د ماسک ۳ تر ۶ عددونه (لکه 7918, 7900111). اصلي ارزښت هغه دی چې په حساب کې ټاکل شوی.
$operator* د شمیرې موبایل آپریټر دی، تاسو کولی شئ څو یې د کاما په واسطه مشخص کړئ (یوازې د ** لپاره شتون لري)
$activationType - د فعالولو ډول: 0 - د SMS سره (اصلي)، 1 - د شمیرې سره، 2 - د غږ سره
$language - د پارسینګ ژبه (د غږ سره د فعالولو لپاره اړینه ده) جدول وګورئ
$userId * - هغه کارن ID چې د ضعیف فعالولو احصایې له مخې بندیز کیږي، مګر د بیا پلورونکي خپل حساب نه اغیزمن کیږي.
* اختیاري ساحه
** شتون لري د $country = 0, $country = 1, $country = 2
$ref - د راجع کولو ID انتقال کړئ.
$country - د هیواد شمیره جدول وګورئ
$useCashBack* - بولین ارزښت اخلي، که پارامتر 'true' وي، د شمیرې پیرود به د کش بیک مصرفولو سره ترسره شي. کله چې ستاسو د کش بیک بیلانس پیسې خلاصې شي، نور ټول پیرودونه به د اصلي بیلانس څخه ترسره شي. دا مهمه ده چې په یاد ولرئ چې ټول وروسته پیرودونه به لومړی کش بیک وکاروي، او بیا به اصلي بیلانس وکاروي (حتی که وروسته پارامتر 'false' تیر کړئ).
* اختیاري پارامتر، 'true' مني
د API له لارې د شمیرې ترلاسه کولو سره، تاسو د د پروژې قواعد د پروژې قواعد
احتمالي تېروتنې:
WRONG_MAX_PRICE:$min- مشخص شوی اعظمي قیمت د اجازه ورکړل شوي قیمت څخه کم دی
$min - لږترلږه اجازه ورکړل شوی قیمت
BAD_ACTION - ناسم عمل
BAD_SERVICE - ناسم خدمت نوم
BAD_KEY - ناسم API کیلي
ERROR_SQL - د sql-server تېروتنه
BANNED:'YYYY-m-d H-i-s' - هغه وخت چې حساب بند شوی دی
WRONG_EXCEPTION_PHONE - ناسم استثنا پریفیکسونه
NO_BALANCE_FORWARD - د زنګ لیږد د پیرودلو لپاره کافي بودیجه نشته
CHANNELS_LIMIT - حساب بند شوی دی
NO_NUMBERS - هیڅ شمیرې شتون نلري
که تاسو هڅه وکړئ چې د یو خاص آپریټر شمیره ترلاسه کړئ چې په انتخاب شوي هیواد کې فعالیت نه کوي یا انتخاب شوی خدمت نلري، نو د لومړي آپریټر شمیره به راستنه شي چې د غوښتنې پارامترونو سره سمون لري
دا طریقه د طریقی سره ورته کار کوي getNumber, همغه پارامترونه او اضافي پارامترونه مني چې لاندې تشریح شوي، مګر اضافي د فعالولو معلومات راستنوي
پارامترونه:
$orderId- د بیا پلورونکي سیسټم څخه د فعالولو ID. د پیرودلو پر مهال، دا معلومات زموږ په سیسټم کې د فعالولو ID او بیا پلورونکي سره پرتله کیږي. په دې توګه، موږ غواړو ایډیمپوټینسي ترلاسه کړو (همغه امر به بیا پردازش نشي).
ځواب:
که غوښتنه بریالۍ وي، ځواب به په لاندې بڼه وي:
{
"activationId": 635468024,
"phoneNumber": "79584******",
"activationCost": "12.50",
"countryCode": "0",
"canGetAnotherSms": "1",
"activationTime": "2022-06-01 17:30:57",
"activationOperator": "mtt"
}
که تاسو هڅه وکړئ چې د یو خاص آپریټر شمیره ترلاسه کړئ چې په انتخاب شوي هیواد کې فعالیت نه کوي یا انتخاب شوی خدمت نلري، نو د لومړي آپریټر شمیره به راستنه شي چې د غوښتنې پارامترونو سره سمون لري
احتمالي تېروتنې:
ORDER_ALREADY_EXISTS- امر لا دمخه جوړ شوی دی
کله چې تاسو یو SMS ترلاسه کړئ، که تاسو په خپلو تنظیماتو کې د Webhooks فعالیت فعال کړی وي، موږ به د SMS معلومات هغو پتهګانو ته واستوو چې تاسو یې د POST غوښتنې له لارې مشخص کړي دي
ځواب:
د ځواب بڼه به په لاندې ډول وي:
{
"activationId": 635468024,
"service": "go",
"text": "Your sms text",
"code": "Your sms code",
"country": 0,
"receivedAt": "2022-06-01 17:30:57",
}
کله چې غوښتنه لیږل کیږي، موږ به ستاسو له سکریپت څخه د HTTP حالت 200 سره ځواب ته انتظار وکړو. که ستاسو سکریپت ځواب ور نه کړي، موږ به په 2 ساعتونو کې غوښتنه واستوو، خو له 8 ځلو څخه زیات نه.
تاسو کولی شئ دا فعالیت فعال کړئ په د پروفایل تنظیمات
پارامترونه:
$api_key - د API کیلي
$service - د امر کولو لپاره خدمت جدول وګورئ
$forward * - ایا دا اړینه ده چې شمیره د فارورډینګ سره وغوښتل شي
* اختیاري پارامتر، د فارورډینګ حروف د کاما په واسطه جلا کیږي، د فارورډینګ عددونو شمیر باید د پارامتر کې لیږل شوي خدماتو له شمیر سره سمون ولري $service. یوازې د 1 خدمت لیږل د ریډایرکشن سره اجازه لري، د مثال په توګه "0,1,0,0" - صحیح، "0,1,1,0" - ناصحیح. 0 اخلي (نه اجرا کیږي، اصلي)، 1 (اجرا کیږي)
$operator * - د شمیرې موبایل آپریټر، تاسو کولی شئ څو شمیرې مشخص کړئ چې د کاما په واسطه جلا شوي وي (یوازې د ** لپاره شتون لري):
$ref - د راجع کولو ID انتقال کړئ.
$country - د هیواد شمیره جدول وګورئ
د API له لارې د شمیرې ترلاسه کولو سره، تاسو د د پروژې قواعد د پروژې قواعد
ځواب:
NO_NUMBERS - هیڅ شمیرې شتون نلري
NO_BALANCE - بیلانس پای ته رسیدلی دی
{{'phone':phone,'activation':activation,'service':service},
{'phone':phone,'activation':activation,'service':service}}, چیرته چې (phone - د عملیاتو ID، activation - د ټیلیفون شمیره، service - خدمت)
احتمالي تېروتنې:
BAD_ACTION - ناسم عمل
BAD_SERVICE - ناسم خدمت نوم
BAD_KEY - ناسم API کیلي
ERROR_SQL - د sql-server تېروتنه
BANNED:'YYYY-m-d H-i-s' - هغه وخت چې حساب بند شوی دی
پارامترونه:
$api_key - د API کیلي
$id - د فعالولو ID
$forward * - د ټیلیفون شمیره چې تاسو یې غواړئ فارورډ کړئ
* یوازې هغه وخت اړین دی که چیرې د getNumber forward=1 سره یو پارامتر لیږل شوی وي.
$status - د فعالولو حالت
1 - د شمیرې د شتون په اړه خبر ورکول (SMS شمیرې ته لیږل شوی)
3 - یو بل کوډ وغواړئ (وړیا)
6 - فعالول پای ته ورسوئ *
8 - راپور ورکړئ چې شمیره لا دمخه کارول شوې ده او فعالول لغوه کړئ
* که چیرې د 'کوډ ترلاسه شوی' حالت شتون ولري - دا په بریالیتوب سره نښه کوي او بشپړوي، که چیرې 'چمتوالی' وي - حذف کوي او تېروتنه نښه کوي، که چیرې د 'بیا ازموینې ته انتظار' حالت وي - فعالول د SMS انتظار ته لیږدي
** د فعالولو حالت بدلول ممکن نه دی چې د تماس له لارې د تایید طریقه ورته انتخاب شوې وي که چیرې شمیره لا دمخه راغلې وي
د API سره د کار کولو د ترتیب ساده منطق:
د getNumber میتود په کارولو سره د شمیرې ترلاسه کول، بیا لاندې اقدامات شتون لري:
8 - فعالول لغوه کړئ (که شمیره تاسو ته مناسبه نه وي)
1 - خبر ورکړئ چې SMS لیږل شوی (اختیاري)
د فعالولو لپاره چې حالت 1 لري:
8 - فعالول لغوه کړئ
سملاسي د کوډ ترلاسه کولو وروسته:
3 - یو بل SMS وغواړئ
6 - د SMS-کوډ تایید کړئ او فعالول پای ته ورسوئ
د فعالولو لپاره چې حالت 3 لري:
6 - د SMS-کوډ تایید کړئ او فعالول پای ته ورسوئ
ځواب:
ACCESS_READY - د شمیرو چمتوالی تایید شوی
ACCESS_RETRY_GET - د نوي SMS لپاره انتظار
ACCESS_ACTIVATION - خدمت په بریالیتوب سره فعال شو
ACCESS_CANCEL - فعالول لغوه شول
احتمالي تېروتنې:
EARLY_CANCEL_DENIED - د لومړیو ۲ دقیقو دننه د شمیرې لغوه کول اجازه نلري
ERROR_SQL - د sql-server تېروتنه
NO_ACTIVATION - د فعالولو ID شتون نلري
BAD_SERVICE - ناسم خدمت نوم
BAD_STATUS - ناسم حالت
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
WRONG_ACTIVATION_ID - ناسم ID یا ID عدد نه دی.
پارامترونه:
$api_key - د API کیلي
$id - د فعالولو ID
ځواب:
STATUS_WAIT_CODE - د SMS لپاره انتظار
STATUS_WAIT_RETRY: 'تیر، نامطابق کوډ' - د کوډ روښانتیا ته انتظار
STATUS_WAIT_RESEND - د SMS بیا لیږلو ته انتظار *
* سافټویر باید د SMS بیا لیږل فشار ورکړي او حالت ۶ ته بدل کړي
STATUS_CANCEL - فعالول لغوه شول
STATUS_OK: 'د فعالولو کوډ' - کوډ ترلاسه شو
احتمالي تېروتنې:
NO_ACTIVATION - د فعالولو ID شتون نلري
ERROR_SQL - د sql-server تېروتنه
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
پارامترونه:
$api_key - د API کیلي
$id - د فعالولو ID
ځواب:
د ځواب بڼه به په لاندې ډول وي:
{
"verificationType": 2,
"sms": {
"dateTime": "0000-00-00 00:00:00",
"code": "code",
"text": "sms text",
},
"call": {
"from": "phone",
"text": "voice text",
"dateTime": "0000-00-00 00:00:00",
"url": "voice file url",
"parsingCount": 1,
}
}
STATUS_CANCEL - فعالول لغوه شول
احتمالي تېروتنې:
NO_ACTIVATION - د فعالولو ID شتون نلري
ERROR_SQL - د sql-server تېروتنه
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
پارامترونه:
$api_key - د API کیلي
$start - په Unix Timestamp بڼه وخت (اختیاري) - له کومې نیټې څخه فعالول په پام کې ونیول شي
$end - په Unix Timestamp بڼه وخت (اختیاري) - تر کومې نیټې پورې فعالول په پام کې ونیول شي
$offset - په ځواب کې د راستنیدونکو لومړي عنصر آفسیټ. اصلي ارزښت ۰ دی
$limit - اعظمي شمیر بیرته راستنیدونکي ریکارډونه. اعظمي حد ۱۰۰ دی. اصلي ارزښت ۵۰ دی.
ځواب:
د ځواب بڼه به په لاندې ډول وي:
[{
"id": 635468024,
"date": "2022-11-12 15:58:39",
"phone": "79918529716",
"sms": "sms":"["Your sms code"]",
"cost": 100 //Если активация не завершена, то cost = 0,
"status": "4",
}]
احتمالي تېروتنې:
ERROR_SQL - د sql-server تېروتنه
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
پارامترونه:
$api_key - د API کیلي
$service - د خدمت نوم
ځواب:
د ځواب بڼه به په لاندې ډول وي:
[{
"country": 0,
"share": 50 - // (Purchases of the chosen service by country as a percentage of the total quantity of purchases at our service),
"rate": 50 - // (% of successful activations among the total number of activations by the country)
}]
احتمالي تېروتنې:
ERROR_SQL - د sql-server تېروتنه
BAD_KEY - ناسم API کیلي
WRONG_SERVICE - ناسم خدمت
BAD_ACTION - ناسم عمل
پارامترونه:
$api_key - د API کیلي
$id - د فعالولو ID
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{"status":"2","phone":false}
POSSIBLE STATUSES:
۲ - نوې فعالول
۳ - په بریالیتوب سره پای ته رسیدلی
۴ - لغوه شوی
۵ - بیرته راستنیدلی
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
INVALID_ACTIVATION_ID - د فعالولو ناسم ID
پارامترونه:
$api_key - د API کیلي
$serviceد خدمت لنډ نوم (اختیاري، په تلواله ټول خدمتونه) جدول وګورئ
$countryد هیواد کوډ نوم (اختیاري، په تلواله ټول هیوادونه) جدول وګورئ
ځواب:
JSON - په بڼه کې شی (object)
{"Country":{"Service":{"cost":Cost,"count":Count}}}
پارامترونه:
$api_key - د API کیلي
$serviceد خدمت لنډ نوم (اختیاري، په تلواله ټول خدمتونه) جدول وګورئ
ځواب:
JSON - په بڼه کې شی (object)
{"Service":{"Country":{"count":Quantity,"price":"Price"}}}
پارامترونه:
$api_key - د API کیلي
ځواب:
JSON - په بڼه کې شی (object) {{'Страна':{'id':0,'rus':"Россия","eng:"Russia","chn":"俄罗斯","visible":1,"retry":1,"rent":1,"multiService":1}},
چیرې چې (
id : د هېواد آی ډي؛
rus : د هېواد نوم په روسي ژبه؛
eng : د هېواد نوم په انګلیسي ژبه؛
chn : د هېواد نوم په چینايي ژبه؛
visible : ۰ - هېواد په ویب پاڼه نه ښودل کیږي، ۱ - ښودل کیږي؛
retry : ۰ - تکراري SMS شتون نلري، ۱ - شتون لري؛
rent : ۰ - هېواد کرایه نه دی ورکړل شوی، ۱ - کرایه ورکړل شوی؛
multiService : ۰- هېواد د څو خدمتونو لپاره شتون نلري، ۱- شتون لري.)
پارامترونه:
$api_key- د API کیلي
$country *- د هېواد آی ډي. که تاسو هېواد مشخص کړی وي، موږ هغه خدمتونه درته راستنوو چې د انتخاب شوي هېواد لپاره یې قیمت شتون لري
$lang *- کومه ژبه د `name` چمتو کولو لپاره وکارول شي. ممکن ارزښتونه: 'ru', 'en', 'es', 'cn'. اصلي ارزښت 'en' دی
* اختیاري پارامتر
ځواب:
JSON - په بڼه کې شی (object) { "status": "success", "services": [ { "code": "aoo", "name": "Pegasus Airlines" } ] }
کله چې تاسو د لېږد شویو شمېرو لپاره لومړی SMS ترلاسه کړئ، تاسو کولی شئ نور اړوند خدمتونه لکه Yula, Yandex, Avito او یا بل هر یو واخلئ.
د اضافي خدمت لګښت یوازې 5p دی
پارامترونه:
$api_key - د API کیلي
$service - د خدمت د لنډ نوم لپاره، جدول وګورئ جدول وګورئ
$id - د مورني فعالولو ID
ځواب:
ADDITIONAL:$id:$phone - یوه نوې فعالونه په بریالیتوب سره جوړه شوه. چیرته چې ID د اضافي فعالولو ID دی، او phone د ټیلیفون شمیره ده
احتمالي تېروتنې:
WRONG_ADDITIONAL_SERVICE - ناسم اضافي خدمت (یوازې هغه خدمتونه اجازه لري چې د فاروارډینګ لپاره وي)
WRONG_ACTIVATION_ID - ناسم مورنی فعالولو ID
WRONG_SECURITY - کله چې هڅه وشوه د فعالولو ID پرته له لېږد څخه انتقال شي، یا یوه بشپړه/غیر فعاله فعالونه ولېږدول شي، یوه تېروتنه رامنځته شوه
REPEAT_ADDITIONAL_SERVICE - تېروتنه هغه وخت رامنځته کیږي کله چې هڅه وشوه پخوا اخیستل شوی خدمت بیا وغوښتل شي NO_BALANCE - ناکافي بودیجه
ERROR_SQL- د ډاټابیس تېروتنه، د پیرودونکو ملاتړ سره اړیکه ونیسئ
که تاسو په شمیره کې بریالۍ فعالونه ترسره کړې وي، نو تاسو کولی شئ دا بیا ترسره کړئ.
د اضافي فعالولو لګښت د هیواد او خدمت پورې اړه لري. مشخص لګښت ترلاسه کیدی شي له .
پارامترونه:
$api_key - د API کیلي
$activationId - د مورني فعالولو ID
ځواب:
ACCESS_NUMBER:$id:$phone - یوه نوې فعالونه په بریالیتوب سره جوړه شوه. چیرته چې $id د اضافي فعالولو ID دی، $phone د ټیلیفون شمیره ده
احتمالي تېروتنې:
RENEW_ACTIVATION_NOT_AVAILABLE- شمیره د اضافي فعالولو لپاره شتون نلري
WRONG_ACTIVATION_ID - ناسم مورنی فعالولو ID
ERROR_SQL- د ډاټابیس تېروتنه، د پیرودونکو ملاتړ سره اړیکه ونیسئ
NEW_ACTIVATION_IMPOSSIBLE- د اضافي فعالولو ترسره کول ناممکن دي
NO_BALANCE - په حساب کې پیسې نشته
تاسو کولی شئ د اضافي فعالولو لپاره د شمیرې شتون ومومئ او خپل لګښت ترلاسه کړئ
پارامترونه:
$api_key - د API کیلي
$activationId - د مورني فعالولو ID
ځواب:
JSON - په بڼه کې شی (object) {'status': 'success', 'cost':200,"service":"tw","phone":777777777,"country":14},
احتمالي تېروتنې:
RENEW_ACTIVATION_NOT_AVAILABLE- شمیره د اضافي فعالولو لپاره شتون نلري
WRONG_ACTIVATION_ID - ناسم مورنی فعالولو ID
SIM_OFFLINE - سیم کارت آفلاین دی
ځواب:
د ځواب بڼه به په لاندې ډول وي:
{
"result": "OK"
}
STATUS_CANCEL - فعالول لغوه شول
NO_CALL- هیڅ زنګ ترلاسه نه شو
PARSE_COUNT_EXCEED- د تجزیې هڅو حد (اعظمي ۴ دی)
احتمالي تېروتنې:
WRONG_ACTIVATION_ID - ناسم ID، فعالول شتون نلري
ERROR_SQL - د sql-server تېروتنه
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
د API کرایه
پارامترونه:
$api_key - د API کیلي
$time* - د کرایې وخت (په اصلي حالت کې: ۴ ساعته)
$operator* - د شمیرې موبایل آپریټر، تاسو کولی شئ څو یې مشخص کړئ چې په کاما سره جلا شوي وي (په اصلي حالت کې: هر یو)
$country* - هیواد (په اصلي حالت کې: روسیه)
$incomingCall * - که انتقال شوی وي "true"د زنګ ترلاسه کولو فعالیت لرونکی شمیره ترلاسه کړئ
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{ "countries": { "0": 0 }, "operators": { "0": "aiva", "1": "any", "2": "beeline", ... "16": "yota" }, "services": { "full": { "cost": 42.93, "quant": 20 }, "vk": { "cost": 21.95, "quant": 20 }, "ok": { "cost": 7.68, "quant": 55 }, "ot": { "cost": 5.2, "quant": 42 } } }
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
OUT_OF_STOCK - د دې هیواد لپاره شمیرې شتون نلري
پارامترونه:
$api_key - د API کیلي
$service - هغه خدمت چې تاسو ورته شمیره ترلاسه کولو ته اړتیا لرئ
$time* - د کرایې وخت په ساعتونو کې (اصلي: ۴ ساعته). بل شتون لرونکی وخت ۱۲ ساعته دی، بیا ۲۴ ساعته. کله چې د یوې ورځې یا ډیر وخت لپاره کرایه غوښتل کیږي، تاسو باید انتقال کړئ: ۲۴، ۴۸، ۷۲، او نور.
$operator* - د شمیرې موبایل آپریټر، تاسو کولی شئ څو یې مشخص کړئ چې په کاما سره جلا شوي وي (په اصلي حالت کې: هر یو)
$country* - هیواد (په اصلي حالت کې: روسیه)
$url * - د ویب هوک لینک (په اصلي حالت کې نه حسابیږي)
$incomingCall * - که انتقال شوی وي "true"د زنګ ترلاسه کولو فعالیت لرونکی شمیره ترلاسه کړئ
* اختیاري پارامتر. که مشخص نه شي، اصلي پارامتر به کارول کیږي.
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564" } }
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
په json فارمیټ کې ځواب:
{ "status": "error", "message": "*possible_answer*" }
ممکن ځوابونه په ساحه کې "message":
BAD_SERVICE - خدمت نه دی مشخص شوی یا نوم ناسم دی
NO_BALANCE - په حساب کې پیسې نشته
NO_NUMBERS - هیڅ شمیرې شتون نلري
ACCOUNT_INACTIVE - هیڅ شمیرې شتون نلري
SERVER_ERROR - سرور خطا
CHANNELS_LIMIT - حساب بند شوی دی
پارامترونه:
$api_key - د API کیلي
$id - د شمیرې امر کولو پر مهال په ځواب کې ترلاسه شوی د کرایې ID
$page* - د هغې صفحې شمیره چیرې چې انتخاب پیل کیږي (د صفحو شمیرن له ۰ څخه پیل کیږي، له نوي څخه زوړ ته؛ اصلي ۰ دی)
$size* - د صفحې اندازه (اصلي ۱۰)
* اختیاري پارامتر. که مشخص نه شي، اصلي پارامتر به کارول کیږي.
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{ "status": "success", "quantity": "2", "values": { "0": { "phoneFrom": "79180230628", "text": "5", "service": "ot", "date": "2020-01-30 14:31:58" }, "1": { "phoneFrom": "79180230628", "text": "4", "service": "ot", "date": "2020-01-30 14:04:16" } } }
* یوازې هغه وخت بریالی کله چې SMS شتون ولري (بکس 'quantity' > 0).
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
په json فارمیټ کې ځواب:
{ "status": "error", "message": "*possible_answer*" } ممکن ځوابونه په ساحه کې "message": NO_ID_RENT - د کرایې ID نه دی مشخص شوی INVALID_PHONE - شمېره ستاسو له خوا نه ده کرایه شوې (ناسم کرایه ID) STATUS_FINISH - کرایه ورکړل شوې او بشپړه شوې STATUS_CANCEL - کرایه لغوه شوې او پیسې بیرته راستنې شوي STATUS_WAIT_CODE - د لومړي SMS انتظار STATUS_REVOKE - شمېره بنده شوې، ستاسو پیسې بیرته راستنې شوي دي
پارامترونه:
$api_key - د API کیلي
$id - د شمیرې امر کولو پر مهال په ځواب کې ترلاسه شوی د کرایې ID
$status - د حالت بدلولو کوډ (شمېره)
حالت کیدای شي وي:
ځواب:
د خدمت ځواب به په json بڼه وي:
{ "status": "success" }
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
په json فارمیټ کې ځواب:
{ "status": "error", "message": "*possible_answer*" }
ممکن ځوابونه په ساحه کې "message":
NO_ID_RENT - د کرایې ID نه دی مشخص شوی
INCORECT_STATUS - حالت نشته یا ناسم ښودل شوی
CANT_CANCEL - د کرایې لغوه کول ناممکن دي (له ۲۰ دقیقو څخه زیات)
INVALID_PHONE - شمېره ستاسو له خوا نه ده کرایه شوې (ناسم کرایه ID)
ALREADY_FINISH - کرایه لا دمخه بشپړه شوې
ALREADY_CANCEL - کرایه لا دمخه لغوه شوې
SERVER_ERROR - سرور خطا
👉پام! دا طریقه یوازې وروستي ۱۰ شمېرې ښیي. که تاسو ډیرې شمېرې غواړئ، نو د getRentStatus طریقې څخه د حالتونو د چک کولو لپاره کار واخلئ.
پارامترونه:
$api_key - د API کیلي
ځواب:
د خدمت ځواب به په json بڼه وي:
{ "status": "success", "values": { "0": { "id": "12345", "phone": "79181234567" }, "1": { "id": "12345", "phone": "79181234568" } } }
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
په json فارمیټ کې ځواب:
{ "status": "error", "message": "*possible_answer*" }
ممکن ځوابونه په ساحه کې "message":
NO_NUMBERS - هیڅ کرایه شوې شمېرې نشته
SERVER_ERROR - سرور خطا
پارامترونه:
$api_key - د API کیلي
$id - د کرایې id
$rent_time- د کرایې وخت (په اصلي توګه: ۴ ساعته)
ځواب:
د خدمت ځواب به په json بڼه وي:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564"} }
کله چې بشپړه شوې کرایه وغځول شي، نو بیا به ترتیب شي او نوی id به ورکړل شي
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
SERVER_ERROR - سرور خطا
په json فارمیټ کې ځواب:
{ "status": "error", "message": "*possible_answer*", "info": "*details*" }
ممکن ځوابونه په ساحه کې "message":
NO_ID_RENT - د کرایې ID نشته
INVALID_TIME - ناسم وخت. د ساعتونو شتون له ۴ څخه تر ۱۳۴۴ پورې دی
MAX_HOURS_EXCEED - د شتون لرونکي اعظمي وخت څخه تیر شوی
max - اعظمي شتون لرونکی وخت
INVALID_PHONE - ناسم د کرایې ID
RENT_DIE - د شمېرې د ختمیدو له امله کرایه نه شي غځول کېدی
NO_BALANCE - ناکافي بودیجه
CHANNELS_LIMIT - حساب بند شوی دی
* دا طریقه یوازې د MTT آپریټر سره د کرایې لپاره شتون لري.
پارامترونه:
$api_key - د API کیلي
$id - د کرایې id
$rent_time - د کرایې وخت
ځواب:
د خدمت ځواب به په json بڼه وي:
{ "status": "success", "price": 6.33 }
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
SERVER_ERROR - سرور خطا
په json فارمیټ کې ځواب:
{ "status": "error", "message": "*possible_answer*" }
ممکن ځوابونه په ساحه کې "message":
NO_ID_RENT - د کرایې ID نشته
INVALID_PHONE - ناسم د کرایې ID
INVALID_TIME - ناسم وخت تنظیمول
RENT_DIE - د شمېرې د ختمیدو له امله کرایه نه شي غځول کېدی
MAX_HOURS_EXCEED - د شتون لرونکي اعظمي وخت څخه تیر شوی
max - اعظمي شتون لرونکی وخت
CHANNELS_LIMIT - حساب بند شوی دی
API JAVA
کتابتون په Maven کې شامل کړئ
<artifactId>SMSActivateApi</artifactId>
<version>1.0</version>
</dependecy>
تاسو کولی شئ د ثبتون یوه بیلګه وګورئ د MavenRepository لینک
د SMS-Activate API سره د تعامل لپاره اصلي کلاس وارد کړئ.
د کتابتون د کارولو لپاره، تاسو API کیلي ته اړتیا لرئ، تاسو کولی شئ هغه په دې پاڼه او لاندې لینک کې ترلاسه کړئ.
SMS-Activate API-Keyد خپل حساب اوسني پاتې شوني د موندلو لپاره، دا طریقه وکاروئ getBalance... که تاسو د پاتې شوني ترڅنګ د نقد بیرته ورکولو (cashback) سره علاقه لرئ، نو دا طریقه وغواړئ getBalanceAndCashBack.
طریقہ getBalanceAndCashBack د کلاس یو شی بریالی راګرځويSMSActivateGetBalanceAndCashBack.
پارامترونه:
هیڅ (NONE)
د راستنیدو ډول:
BigDecimal
پارامترونه:
هیڅ (NONE)
د راستنیدو ډول:
پارامترونه:
countryId(Integer) - د هیواد پیژندنه.
service(String) - د خدمت لنډ نوم.
forward*(boolean) - آیا د زنګ مخ پر وړاندې کولو سره شمیره غوښتل کیږي.
د آپریټرونو سیټ (سیټ) - د آپریټرونو یوه ټولګه.
د فون استثنا (سیټ) - یوازې د روسیې لپاره مخکښي شمیرې پرته، له ۳ تر ۶ پورې د شمېرو یوه ټولګه (7918,7900111).
* اختیاري بکس. که هیڅ شی مشخص نه وي، په پروفایل کې د ترتیب سره سم به اصلي مقدار ورکړل شي.
د راستنیدو ډول:
پارامترونه:
countryId(Integer) - د هیواد پیژندنه.
د آپریټرونو سیټ (سیټ) - هغه آپریټرونه چې د خدمت لپاره شتون لري
د راستنیدو ډول:
پارامترونه:
id(عدد) - د فعالولو پیژندنه
service(String) - د خدمت لنډ نوم.
د فعالولو د پیژندنې پرځای، تاسو کولی شئ ترلاسه شوی کلاس آبجیکت ولیږئ SMSActivateActivation د میتود کارولو وروسته getNumber یا د کارولو وروسته یو له فعالیدونو څخه getMultiServiceNumber.
د راستنیدو ډول:
پارامترونه:
countryId(Integer) - د هیواد پیژندنه.
serviceMap(سیټ) - د خدماتو یوه ټولګه چې فعالول یې اخیستل شوي دي
multiForwardList(لیست) - د هغو خدماتو لیست چې د زنګ لیږد شتون لري
operatorSet(سیټ) - د آپریټرونو یوه ټولګه.
د راستنیدو ډول:
پارامترونه:
هیڅ (NONE)
د راستنیدو ډول:
پارامترونه:
countryId(Integer) - د هیواد پیژندنه.
service(String) - د خدمت لنډ نوم.
د راستنیدو ډول:
پارامترونه:
countryId(Integer) - د هیواد پیژندنه.
د راستنیدو ډول:
پارامترونه:
activationId(عدد) - د فعالولو پیژندنه
د فعالولو د پیژندنې پرځای، تاسو کولی شئ ترلاسه شوی کلاس آبجیکت ولیږئ SMSActivateActivation د میتود کارولو وروسته getNumber یا د کارولو وروسته یو له فعالیدونو څخه getMultiServiceNumber.
د راستنیدو ډول:
پارامترونه:
id(عدد) - د فعالولو پیژندنه
status(SMSActivateClientStatus) - هغه حالت چې باید د فعالولو لپاره تنظیم شي
د فعالولو د پیژندنې پرځای، تاسو کولی شئ ترلاسه شوی کلاس آبجیکت ولیږئ SMSActivateActivation د میتود کارولو وروسته getNumber یا د کارولو وروسته یو له فعالیدونو څخه getMultiServiceNumber.
د راستنیدو ډول:
پارامترونه:
هیڅ (NONE)
د راستنیدو ډول:
پارامترونه:
activationId(عدد) - د فعالولو پیژندنه
د فعالولو د پیژندنې پرځای، تاسو کولی شئ ترلاسه شوی کلاس آبجیکت ولیږئ SMSActivateActivation د میتود کارولو وروسته getNumber یا د کارولو وروسته یو له فعالیدونو څخه getMultiServiceNumber.
د راستنیدو ډول:
د فعالولو سره د SMS بشپړ متن ترلاسه کولو الګوریتم
د getNumber میتود په کارولو سره د شمیرې ترلاسه کول، بیا لاندې اقدامات شتون لري:
CANCEL - 8 - فعالول لغوه کړئ (که چیرې شمیره تاسو سره سمون ونه لري)
MESSAGE_WAS_SENT - خبر ورکړئ چې SMS لیږل شوی دی (د SMS بشپړ متن ترلاسه کولو لپاره اړین دی)
د MESSAGE_WAS_SENT حالت د اجباري ټاکلو وروسته، د SMS ترلاسه کولو لپاره متغیر د waitSMS میتود په کارولو سره د فعالولو پیرامیټرونو او د SMS انتظار وخت سره تنظیم کړئ.
د SMS ترلاسه کولو وروسته، تاسو کولی شئ دا د getFullSMS میتود په کارولو سره ترلاسه کړئ او بیا د getText() میتود په کارولو سره بشپړ متن وښایاست getText()
له هغه وروسته، تاسو کولی شئ فعالول په لاندې حالتونو کې تنظیم کړئ:
د MESSAGE_WAS_SENT حالت سره د فعالولو لپاره:
CANCEL - فعالول لغوه کړئ
سملاسي د کوډ ترلاسه کولو وروسته:
REQUEST_ONE_MORE_CODE - بل SMS وغواړئ
FINISH - د SMS کوډ تایید کړئ او فعالول بشپړ کړئ
د REQUEST_ONE_MORE_CODE حالت سره د فعالولو لپاره:
FINISH - د SMS کوډ تایید کړئ او فعالول بشپړ کړئ
پارامترونه:
countryId(Integer) - د هیواد پیژندنه.
service(String) - د خدمت لنډ نوم.
ساعتونه (Integer)* - د کرایې وخت
اپریټر (String)* - د موبایل اپریټر نوم
urlWebhook (String)* - د ویب هوک لینک (په اصلي ډول نه حساب کیږي)
ویب هوک څه شی دی؟* اختیاري پیرامیټر. که مشخص نه وي، نو اصلي به وي
د راستنیدو ډول:
پارامترونه:
countryId(Integer) - د هیواد پیژندنه.
operatorSet(سیټ) - د موبایل اپریټرونو سیټ
ساعتونه (Integer)* - د کرایې وخت
* اختیاري پیرامیټر. که مشخص نه وي، نو اصلي به وي
د راستنیدو ډول:
پارامترونه:
rentId (Integer) - د کرایه شوي شمیرې پیژندونکی
پرځای rentId، تاسو کولی شئ پایله شوې کلاس آبجیکت ولیږئ SMSActivateRentActivation د میتود کارولو وروسته getRentNumber
د راستنیدو ډول:
ایمیل API
د API حالتونو توضیحات
3 - انتظار
4 - لغوه
5 - بریالیتوب
توضیحات:
د REST API اصولو ته سخت درېځی پابندي او د Telegram اکاونتونو د ثبتولو لپاره د gmail.com میل باکسونو زیاتوالی.
پارامترونه:
$api_key - د API کیلي
$site- هغه سایټ چې تاسو ورته ایمیل ته اړتیا لرئ
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{
"status":"OK",
"response":{
"zones":[
{
"name":"info",
"cost":2.5
},
...
],
"popular":[
{
"name":"mail.ru",
"cost":6,
"count":159008
},
...
]
}
}
احتمالي تېروتنې:
BAD_SITE- سایټ نه دی مشخص شوی
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
پارامترونه:
$api_key - د API کیلي
$site - هغه سایټ چې تاسو ورته ایمیل ته اړتیا لرئ
$mail_type - د میل ډول: مشهور ډومینونه یا زونونه (1 - زونونه 2 - مشهور)
$mail_domain - انتخاب شوې سیمه یا ډومین
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{
"status":"OK",
"response":{"email":"[email protected]","id":241}
}
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
MAIL_TYPE_ERROR - د مشخص شوي سایټ لپاره داسې ډومین شتون نلري
CHANNELS_LIMIT - حساب بند شوی دی
پارامترونه:
$api_key - د API کیلي
$id- هغه بریښنالیک ID چې بیا فعالولو ته اړتیا لري
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{
"status": "OK",
"response": {
"email": "[email protected]",
"id": 360
}
}
احتمالي تېروتنې:
BAD_KEY - ناسم API کیلي
BAD_ACTION - ناسم عمل
BLOCKED_SITE - بند شوی ویب سایټ
BAD_BALANCE - ناکافي بودیجه
ACTIVATION_NOT_FOUND - فعالول نه دي موندل شوي
CHANNELS_LIMIT - حساب بند شوی دی
پارامترونه:
$api_key - د API کیلي
$page- د صفحې شمیره
$per_page- په هر صفحه کې د پیرودونو شمیر
$search- د لټون بار
$sort- د ترتیب لوری. (desc, asc)
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{
"status":"OK",
"response":{
"list":[
{
"id":"241",
"site":"apple.com",
"email":"[email protected]",
"status":"3",
"value":null,
"cost":"6.00",
"date":"2023-10-06 14:24:13",
"full_message":""
}
],
"pages":1,
"count":1
}
}
پارامترونه:
$api_key - د API کیلي
$id- د پیرود ID
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{
"status":"OK",
"response":true
}
احتمالي تېروتنې:
EARLY_CANCEL_DENIED - تاسو نشئ کولی چې د لومړیو ۲ دقیقو لپاره بریښنالیک لغوه کړئ.
پارامترونه:
$api_key - د API کیلي
$id- د اخیستل شوي بریښنالیک ID، دا د بریښنالیک له پیرود وروسته راستنیږي
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{
"status":"OK",
"response":{
"value":"Содержания письма"
}
}
د API ملګري سافټویر
پارامترونه:
$api_key - د API کیلي
$id- د هغه سافټویر ID چې تاسو یې باید واخistئ
ځواب:
د خدمت ځواب به په json بڼه وي، مثال:
{
"status": "success",
"key": "F5qrzFoY6afj3zrEq7SeMplbx",
"manual": "Software download link:"
}
احتمالي تېروتنې:
BAD_DATA - ناسم ID یا ID یو عدد نه دی
BAD_ACTION - ناسم عمل یا بیا پلورونکی تایید شوی نه دی.
<?php
include_once ("smsactivateApi.php");//Inclusion of a class in a project
$sms = new SMSActivate($API_KEY);//Create class instance SMSActivate
$freeSlots = $sms->getNumbersStatus(0, 'tele2');//Get the number of available numbers for the country of Russia and the tele2 operator
echo "Номеров Вконтакте: " . $freeSlots['vk']."\n";//Show for Vk
echo "Номеров Whatsapp: " . $freeSlots['wa']."\n";//Show for whatsapp
var_dump($freeSlots); //Show all services with quantity
$array=$activate->getTopCountriesByService(); //Get an array whose elements contain information for each country
$balance = $sms->getBalance();//Get balance
echo "On the account " . $balance." rub.\n";//Show balance
$balance = $sms->getBalanceAndCashBack();//Request a balance with cashback account
echo "On the account " . $balance." rub.\n";//Request a balance with cashback account
$operators = $sms->getOperators();
//Get operators for all countries
if (in_array('mts', $operators['countryOperators'][0])) {
//check if 'mts' is available for Russia
//perform an action
}
if (in_array('chinamobile', $operators['countryOperators'][3])) {
//check if 'chinamobile' is available for China
//perform an action
}
$activations = $sms->getActiveActivations();
$number = $sms->getNumber('ok',0, 0, 'tele2');//Get Odnoklassniki number without forwarding
echo "Activation № " . $number['id']. "Phone ". $number['number'] \n";//Show id and activation number
$result = $sms->getNumber('vk', 0 , 1);
if (!is_array($result)) {
echo 'Ошибка: ' . $result . '\n';//If an error occurs, a string will be returned, if successful, an array will be returned.
} else {
echo 'Id: ' . $result['id'] ."\n";
echo 'Номер: ' . $result['number'] ."\n";
}
$result = $sms->getNumberV2('vk', 0 , 1);
$number = $sms->getMultiServiceNumber('ok,vk,vi,av','0,0,0,1', 0, 'tele2');//Get a number for services Odnoklassniki, Vkontakte, Viber without call forwarding and Avito with call forwarding
foreach ($number as $value) {
echo "Activation № " . $value['activation']. " for service ". $value['service'] ."\n";
}
echo "Number " . $value['phone'] ."\n";//Show activation id and number
$status = $sms->setStatus($number['id'], 3);//Change activation status by id (get 1 more code)
$status = $sms->getStatus($number['id']);//Get activation status by id
if (is_array($status) {
echo "статус : " . $status['status'];//Can be STATUS_OK or STATUS_WAIT_RETRY, otherwise a line with error text will be returned
echo "код: " . $status['code'];
} else {
echo $status ."\n";
}
$incomingCall = $sms->getIncomingCallStatus($id);//Get activation data by call
echo $incomingCall['phone'] //Show incoming number
$prices = $sms->getPrices(1, 'vk');//Get the current price for the service
echo "Price for VK (Ukraine) : " .$prices[1]['vk']['cost']." rub. quantity: ". $prices[1]['vk']['count'];//Show the result
$countries = $sms->getCountries();//Get a list of all countries
$additional = $sms->getAdditionalService('fx', $id);//Get additional activation for PGbonus service based on id activation
echo "Activation no.: " . $additional[id] . " Telephone: " . $additional[number];//Show the result
$getAvailableRentNumbers = $sms->getRentServicesAndCountries('2');//Request available countries for rent and services (for 2 hours for all operators)
echo "Full rental - Cost:" . $getAvailableRentNumbers['services']['full']['cost'] . " Quant :" .$getAvailableRentNumbers['services']['full']['quant'] ." \n"; //Display full price information
foreach( $getAvailableRentNumbers['operators'] as $value) {
echo " Operator " . $value ."\n"; }//List operators
$getRentNumber = $sms->getRentNumber('vk','10','0','yota');//Get a number for rent for Vkontakte for 10 hours, operator 'Yota', country - Russia
if ($getRentNumber['status'] === 'success'){
echo "The rental was successful! Your phone number is: " . $getRentNumber['phone']['number']." \nRent expiration : ". $getRentNumber['phone']['endDate']." \nId numbers :" .$getRentNumber['phone']['id'] ; }//Display rental information
else
echo "Error code : " . $getRentNumber['message'];
$getRentStatus = $sms->getRentStatus($getRentNumber['phone']['id']);//Get the rent status with id from the received number
if ($getRentStatus['status'] == 'success'){
foreach( $getRentStatus['values']as $index => $value) {
echo " Message " . $index .": from the number - " . $value['phoneFrom'] . " Service - " . $value ['service'] . "message text - " . $value['text'] . "Date - " . $value['date']; } }//display a list of messages received while renting a phone
else
echo "Error code : " . $getRentStatus['message'];
$setRentStatus = $sms->setRentStatus($getRentNumber['phone']['id'],1);//Set rental status 'finish' with id from received number
if ($setRentStatus['status'] == 'success')
echo " Status change was successful! ";
else
echo "Error code : " . $setRentStatus['message'];
$getRentList = $sms->getRentList();//Get a list of currently rented numbers
if (getRentList['status'] == 'success')
foreach( $getRentList['values'] as $value) {
echo " ID " . $value["id"] . " Number " . $value["phone"] ."\n"; }//List numbers
else
echo "Error code : " . $getRentList['message'];
$result = $sms->continueRentNumber($id);//Extend the lease of activation id for 4 hours (by default)
if ($result['status'] == 'success') {
echo "Number: " . $result['phone']['number']"//Display number
echo "id: " . $result['phone']['id']"//Display activation id
echo "The lease is valid until: " . $result['phone']['endDate']"//Display the date and time of the end of the lease
} else {
echo "Error code : " . $result['msg'];
}
$result = $sms->getContinueRentPriceNumber($id, 12);//Get the cost of renewing the lease to activate the id for 12 hours
if ($result['status'] == 'success') {
echo " Renewal cost " . $result['price'];//Withdraw the cost
} else {
echo "Error code: " . $result['message']; //Display error code
}
from smsactivate.help import SMSActivateAPI
# SMSActivateAPI Contains all basic tools for working with the SMSActivate API
sa = SMSActivateAPI(API_KEY)
sa.debug_mode = True
# Used for debugging. When debug_mode is active, all responses from the server and class will be output to the console
print(sa.version())
# Returns the current version of the library
status = sa.getNumbersStatus(country=0, operator='tele2')
try:
print(status['vk_0']) # 274789
except:
print(status['message']) # Error text
result = sa.getTopCountriesByService('vk')
try:
print(result[0]['count']) # 2350
except:
print(result['message']) # Error text
balance = sa.getBalance() # {'balance': '100.00'}
try:
print(balance['balance']) # 100.00
except:
print(balance['message']) # Error text
balance = sa.getBalanceAndCashBack() # {'balance': '100.00'}
try:
print(balance['balance']) # 100.00
except:
print(balance['message']) # Error text
operators = sa.getOperators(country=0)
try:
print(operators['countryOperators']['0'])
except:
print(operators['error']) # Error status
activations = sa.getActiveActivations()
try:
print(activations['activeActivations'])
except:
print(activations['error']) # Error status
number = sa.getNumber(service='vk', operator='tele2', country=0, verification="true") # {'activation_id': 000000000, 'phone': 79999999999}
try:
print(number['phone']) # 79999999999
except:
print(number['message']) # Error text
number = sa.getNumberV2(service='vk', country=0)
try:
print(number['phoneNumber']) # 79999999999
except:
print(number['message']) # Error text
multinumber = sa.getMultiServiceNumber(service='fb,ig', operator='tele2', country=0) # [{'phone': '79999999999', 'activation': 000000000, 'service': 'fb'}, {'phone': '79999999999', 'activation': 000000001, 'service': 'ig'}]
try:
print(multinumber[0]['phone']) # 79999999999
except:
print(multinumber['message']) # Error text
status = sa.setStatus(id=000000000, status=1) # ACCESS_READY
try:
print(status) # ACCESS_READY
except:
print(status['message']) # Error text
status = sa.getStatus(id=000000000) # STATUS_WAIT_CODE
try:
print(sa.activationStatus(status)) # {'status': 'STATUS_WAIT_CODE', 'message': 'Ожидание смс'}
except:
print(status['message']) # Error text
status = sa.getIncomingCallStatus(id=000000000)
try:
print(status['status']) # 2
except:
print(status['message']) # Error text
prices = sa.getPrices(service='fb', country=0)
try:
print(prices['0']) # {'fb': {'cost': 9, 'count': 27934}}
except:
print(prices['message']) # Error text
countries = sa.getCountries()
try:
print(countries['0']['eng']) # Russia
except:
print(countries['message']) # Error text
service = sa.getAdditionalService(id=000000000, service='ig')
try:
print(service['phone']) # 79999999999
except:
print(service['message']) # Error text
service = sa.getRentServicesAndCountries(time=4, operator='tele2', country=0)
try:
print(service['services']['full']['cost']) # 100.00
except:
print(service['message']) # Error text
rent = sa.getRentNumber(service='ig', time=4, operator='tele2', country=0)
try:
print(rent['phone']['number']) # 79999999999
except:
print(rent['message']) # Error text
status = sa.getRentStatus(000000000)
try:
print(status['values']['0']['text']) # SMS
except:
print(status['message']) # Error text
status = sa.setRentStatus(id=000000000, status=1)
try:
print(status['status']) # success
except:
print(status['message']) # Error text
rent = sa.getRentList()
try:
print(rent['values']['0']['phone']) # 79999999999
except:
print(rent['message']) # Error text
rent = sa.continueRentNumber(id=000000000, time=4)
try:
print(rent['phone']['number']) # 79999999999
except:
print(rent['message']) # Error text
rent = sa.getContinueRentPriceNumber(000000000)
try:
print(status['price']) # 4.00
except:
print(status['message']) # Error text
import ru.sms_activate.SMSActivateApi;//Inclusion of a class in a project
SMSActivateApi smsActivateApi = new SMSActivate("API_KEY");//Create an instance of the SMSActivate class
BigDecimal balance = smsActivateApi.getBalance();//Get the current account balance
System.out.println("Balance: "+ balance)//Withdraw the received balance
SMSActivateGetBalanceAndCashbackResponse smsActivateGetBalanceAndCashbackResponse = smsActivateApi.getBalanceAndCashback();//Get current balance and cashback
System.out.println("Cashback + balance: "+ smsActivateGetBalanceAndCashbackResponse.getBalanceAndCashback());//Withdraw the amount of balance and cashback
SMSActivateActivation activation=smsActivateApi.getNumber(0,"vk")//Get activation for the Vkontakte service in Russia
System.out.println(activation);//Withdraw the received activation
SMSActivateGetNumbersStatusResponse smsActivateGetNumbersStatusResponse= smsActivateApi.getNumberStatus(0,null);//Get information about available services for Russia
SMSActivateServiceInfo go = smsActivateGetNumbersStatusResponse.getSMSActivateServiceInfoByShortName("go");//Getting information about numbers for the Google service
System.out.println("Short name service: " + go.getShortName();//Get the short name of the service
System.out.println("count phone numbers: "+ go.getCountPhoneNumber();//Get the number of numbers for the service
System.out.println(""Forwarding is available: "+ go.isForward() ? "yes" : "no"//Find out if the service has a redirect
SMSActivateActivation activation=smsActivateApi.getNumbersStatus(0,"ot",true);//Activations
smsActivateApi.setStatus(activation, SMSActivateClientStatus.MESSAGE_WAS_SENT);//Setting the MESSAGE_WAS_SENT status after sending SMS for the number
SMSActivateActivation childActivation =smsActivateApi.getAdditionalService(activation,"av");//Requesting a new activation for an additional service
System.out.println(childActivation);//Displaying information about additional activation
Set<String>operatorSet= new HashSet<>();
operatorSet.add("mts");//Adding an MTS operator to the set of operators
Map<String,Boolean>serviceMap= new HashMap<>();
serviceMap.put("av",false);//Adding the Avito service to the list of services (specify true if you need a service with redirection)
SMSActivateGetMultiServiceNumberResponse multiServiceNumberResponse=smsActivateApi.getMultiServiceNumber(0, serviceMap, operatorSet);//Getting activation for multiple services
multiServiceNumberResponse.getSMSActivateActivationList().forEach(activation->{
System.out.println("Id: " + activation.getId());
System.out.println("Number: " + activation.getNumber());
System.out.println("Service name: " + activation.getShortName());
}
//Displaying information about received activations
SMSActivateGetPricesResponse smsActivateGetPricesResponse=smsActivateApi.getPricesByCountryIdAndServiceShortName(0, "vk");//Obtaining a list of prices for Russia on the Vkontakte service. For a complete list of prices, use the getAllPrices () method;
SMSActivateGetPriceInfo vk=smsActivateGetPricesResponse.getPriceInfo(0, "vk");//Getting information about the Vkontakte service for Russia
System.out.println(">>> Cost: "+ vk.getCost());//Get a price for the service
System.out.println(">>> count phone numbers: " + vk.getCountPhoneNumbers());//Get the number of numbers for the service
SMSActivateActivation activation=smsActivateApi.getNumber(0,"vk")//Get activation for the Vkontakte service in Russia
System.out.println(activation);//Withdraw the received activation
SMSActivateGetStatusResponse getResponse = smsActivateApi.getStatus(activation);//Getting a status for activation
System.out.println(getResponse.getSMSActivateGetStatus());//Displaying information about the activation status
smsActivateApi.setStatus(activation, SMSActivateClientStatus.MESSAGE_WAS_SENT);//Setting the MESSAGE_WAS_SENT status after receiving SMS for the number
smsActivateApi.setStatus(activation, SMSActivateClientStatus.FINISH);//Setting the FINISH status after receiving SMS for the number
SMSActivateGetCountriesResponse smsActivateGetCountriesResponse =smsActivateApi.getCountries();//Getting a list of countries with information
SMSActivateCountryInfo countryInfo = smsActivateGetCountriesResponse.get(0)//Getting information about the first country on the list
System.out.println("Russian name: "+countryInfo.getRussianName();//Display the Russian name of the country
System.out.println("English name: "+countryInfo.getEnglishName();//Display the Russian name of the country
System.out.println("Support multi-service: "+ countryInfo.isSupportMultiService() ? "yes" : "no"//Show if the country supports multi-services
SMSActivateActivation activation=smsActivateApi.getNumber(0,"vk")//Get activation for the Vkontakte service in Russia
smsActivateApi.setStatus(activation, SMSActivateClientStatus.MESSAGE_WAS_SENT);//Setting the MESSAGE_WAS_SENT status after sending SMS for the number
String code=smsActivateApi.waitSms(activation,2)//Set receiving sms within 2 minutes
if(code == null) {
smsActivateApi.setStatus(activation, SMSActivateClientStatus.CANCEL);//Setting the CANCEL status if sms has not arrived
}
else{
SMSActivateGetFullSmsResponse smsActivateGetFullSmsResponse=smsActivateApi.getFullSms(activation)//Receiving sms text
System.out.println("Full SMS: "+smsActivateGetFullSmsResponse.getText());//SMS text output
}
SMSActivateRentActivation rentActivation= smsActivateApi.getRentNumber(0, "vk", 6);//Getting a number with rent
System.out.println(">> ID: "+rentActivation.getId());//Activation ID withdrawal
System.out.println(">> Number: "+rentActivation.getId());//Displaying the activation number
System.out.println(">> End date: "+rentActivation.getId());//Displaying the activation expiration date
SMSActivateGetRentServicesAndCountriesResponse smsActivateGetRentServicesAndCountriesResponse= smsActivateApi.getRentServicesAndCountries(0, null, 4);//Obtaining information on services and countries that support rental
smsActivateGetRentServicesAndCountriesResponse.getAllRentServices().forEach((serviceShortName, smsActivateRentService)->{
System.out.println("Service shortname: " + serviceShortName);
System.out.println(" count phone numbers: " + smsActivateRentService.getCountPhoneNumbers());
System.out.println(">> Cost: " + smsActivateRentService.getCost());
}
//Displaying information about received services
SMSActivateRentActivation rentActivation= smsActivateApi.getRentNumber(0, "vk");//Getting a number with rent
SMSActivateGetRentStatusResponse smsActivateGetRentStatusResponse= smsActivateApi.getRentStatus(rentActivation);//Getting activation status
System.out.println(">> Count sms: "+ smsActivateGetRentStatusResponse.getCountSms());//Displaying the number of sms on the rented number





















































