SMS-Activate ile çalışmak için API protokolü
API, yazılımınız ile sunucumuz arasındaki bir protokoldür
API, tarafınızda sms, otp ve pva alma sürecinin otomasyonu için gereklidir
API'miz rakip sitelerle tamamen uyumludur
Tüm istekler https://api.sms-activate.ai/stubs/handler_api.php adresine yapılmalıdır
POST veya GET isteği.
Tüm istekler api_key GET parametresi şeklinde bir API anahtarı içermelidir
Protokolün php uygulamasını indirin Protokolün Python'da hazır uygulamasını indirinAktivasyon API'si
Parametreler:
$api_key - API anahtarı
$country * - ülke numarası tabloya bakın
$operatör * mobil operatör numaraları, virgülle ayrılmış birkaç numara belirtebilirsiniz (yalnızca şunlar için mevcuttur:
** mevcut için $country = 0, $country = 1, $country = 2
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{"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}
Tire işaretinden önceki kısım hizmetin adıdır, ardından yönlendirmenin gerekli olup olmadığını belirten gösterge gelir. 0 - hayır. 1 - evet.
Parametreler:
$api_key - API anahtarı
$service * - Hizmet tabloya bakın
* isteğe bağlı parametre. Belirtilmezse, varsayılan olarak tüm hizmetler için en popüler ülkeler görüntülenecektir.
$freePrice * - isteğe bağlı parametre. Sağlanırsa true, miktar ve fiyat Ücretsiz Fiyat'a göre sağlanacaktır
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{
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
}
}, ...
}
Nakit iade hesabı ile bakiye sorgulama:
* nakit iade hesabı ayarlarında 'Aktivasyon için nakit iade kullan' kutucuğu işaretlenmişse, biriken nakit iadeyi dikkate alarak bakiyeyi döndürür
Parametreler:
$api_key - API anahtarı
CEVAP:
ACCESS_BALANCE: 'hesap bakiyesi'
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
ERROR_SQL - sql-server hatası
* aktarılan ülke için mevcut tüm operatörleri döndürür; ülke belirtilmemişse her ülke için mevcut tüm operatörleri döndürür
Parametreler:
$api_key - API anahtarı
$country - ülke kodu
CEVAP:
Hizmetin yanıtı json formatında olacaktır:
{"status":"success", "countryOperators": {
"Country1Code": ["operator1Name","operator2Name","operator3Name", ...],
"Country2Code": ["operator1Name","operator2Name","operator3Name", ...],
...
}}
Örnek:
{"status":"success", "countryOperators": {
"0": ["beeline","megafon","mts", ...],
"1": ["life","mts","kyivstar","utel" ...],
...
}}
* 'countryOperators' içinde - anahtar ülke kodu olacaktır
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
ERROR_SQL - sql-server hatası
OPERATORS_NOT_FOUND - kayıt bulunamadı (örneğin, var olmayan bir ülke aktarıldı)
Parametreler:
$api_key - API anahtarı
CEVAP:
Hizmetin yanıtı json formatında olacaktır:
{"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",
}]
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
ERROR_SQL - sql-server hatası
NO_ACTIVATIONS - giriş bulunamadı (aktif aktivasyon yok)
Parametreler:
$api_key - API anahtarı
$service - sipariş hizmeti tabloya bakın
$forward * - yönlendirmeli bir numara istenmesi gerekli mi
* isteğe bağlı parametre, 0 (yürütme, varsayılan olarak ayarlanır), 1 (yürüt) değerlerini kabul eder
$maxPrice * - Serbest Fiyat ile bir numara satın almaya hazır olduğunuz maksimum fiyat
* isteğe bağlı parametre, belirtilmezse satın alma normal fiyatta gerçekleşir
$phoneException * - Rus numaraları için öneklerin hariç tutulması. Virgülle girin. Kayıt formatı: ülke kodu ve maskenin 3 ila 6 basamağı (örn. 7918, 7900111). Varsayılan değer, hesapta belirtilen değerdir.
$operator* numaranın mobil operatörüdür, virgülle ayırarak birden fazla belirtebilirsiniz (yalnızca ** için geçerlidir)
$activationType - aktivasyon türü: 0 - SMS ile (varsayılan), 1 - numara ile, 2 - sesli arama ile
$language - ayrıştırma dili (sesli aktivasyon için gereklidir) tabloya bakın
$userId * - kötü aktivasyon istatistikleri nedeniyle yasaklanacak kullanıcı kimliği, ancak bayinin kendi hesabı bundan etkilenmez.
* isteğe bağlı alan
** mevcut için $country = 0, $country = 1, $country = 2
$ref - yönlendirme kimliğini aktarın.
$country - ülke numarası tabloya bakın
$useCashBack* - boolean değer alır; parametre 'true' ise, numara satın alma işlemi nakit iade bakiyesi kullanılarak yapılır. Nakit iade bakiyeniz tükendiğinde, sonraki tüm satın alımlar ana bakiyeden yapılır. Şunu hatırlamak ÖNEMLİDİR: Tüm sonraki satın alımlar öncelikle nakit iade bakiyesini kullanır, ardından ana bakiye devreye girer (bundan sonra parametreyi 'false' olarak geçseniz bile).
* isteğe bağlı parametre, 'true' değerini kabul eder
API üzerinden numara alarak şunları kabul etmiş olursunuz: proje kuralları proje kuralları
OLASI HATALAR:
WRONG_MAX_PRICE:$min- belirtilen maksimum fiyat, izin verilenden daha düşük
$min - izin verilen minimum fiyat
BAD_ACTION - hatalı işlem
BAD_SERVICE - hatalı hizmet adı
BAD_KEY - geçersiz API anahtarı
ERROR_SQL - sql-server hatası
BANNED:'YYYY-m-d H-i-s' - hesabın bloke edildiği süre
WRONG_EXCEPTION_PHONE - hatalı hariç tutma ön ekleri
NO_BALANCE_FORWARD - çağrı yönlendirme satın almak için yeterli bakiye yok
CHANNELS_LIMIT - hesap bloke edildi
NO_NUMBERS - numara yok
Seçili ülkede faaliyet göstermeyen veya seçili hizmeti sunmayan belirli bir operatörün numarasını almaya çalışırsanız, istek parametreleriyle eşleşen ilk operatörün numarası döndürülür
bu yöntem, şu yöntemle benzer şekilde çalışır: getNumber, aynı parametreleri ve aşağıda açıklanan ek parametreleri kabul eder, ancak ek aktivasyon bilgileri döndürür
Parametreler:
$orderId- bayinin sisteminden gelen aktivasyon kimliği. Satın alma sırasında bu veri, sistemimizdeki aktivasyon kimliği ve bayi ile karşılaştırılır. Böylece idempotensi (aynı siparişin tekrar işlenmemesini) sağlamayı amaçlıyoruz.
CEVAP:
İstek başarılı olursa, yanıt aşağıdaki formatta olacaktır:
{
"activationId": 635468024,
"phoneNumber": "79584******",
"activationCost": "12.50",
"countryCode": "0",
"canGetAnotherSms": "1",
"activationTime": "2022-06-01 17:30:57",
"activationOperator": "mtt"
}
Seçili ülkede faaliyet göstermeyen veya seçili hizmeti sunmayan belirli bir operatörün numarasını almaya çalışırsanız, istek parametreleriyle eşleşen ilk operatörün numarası döndürülür
OLASI HATALAR:
ORDER_ALREADY_EXISTS- sipariş zaten oluşturuldu
Bir numaraya SMS aldığınızda, ayarlarınızda Webhooks özelliğini etkinleştirdiyseniz, SMS bilgilerini belirttiğiniz adreslere POST isteği kullanarak göndereceğiz
CEVAP:
Yanıt formatı şu şekilde olacaktır:
{
"activationId": 635468024,
"service": "go",
"text": "Your sms text",
"code": "Your sms code",
"country": 0,
"receivedAt": "2022-06-01 17:30:57",
}
İstek gönderirken, komut dosyanızdan HTTP durumu 200 ile yanıt bekleyeceğiz. Komut dosyanız yanıt vermezse, 2 saat içinde ancak en fazla 8 kez olmak üzere tekrar istek göndereceğiz.
Bu işlevselliği şurada etkinleştirebilirsiniz: profil ayarları
Parametreler:
$api_key - API anahtarı
$service - sipariş hizmeti tabloya bakın
$forward * - yönlendirmeli bir numara istenmesi gerekli mi
* isteğe bağlı parametre, yönlendirme karakterleri virgülle ayrılır; yönlendirme basamaklarının sayısı, parametrede iletilen hizmet sayısıyla eşleşmelidir $service. Yönlendirme ile yalnızca 1 hizmet iletilmesine izin verilir, örneğin "0,1,0,0" - doğru, "0,1,1,0" - yanlış. 0 (uygulama, varsayılan), 1 (uygula) değerlerini alır
$operator * - numaranın mobil operatörü, virgülle ayrılmış birkaç numara belirtebilirsiniz (yalnızca ** için geçerlidir):
$ref - yönlendirme kimliğini aktarın.
$country - ülke numarası tabloya bakın
API üzerinden numara alarak şunları kabul etmiş olursunuz: proje kuralları proje kuralları
CEVAP:
NO_NUMBERS - numara yok
NO_BALANCE - bakiye tükendi
{{'phone':phone,'activation':activation,'service':service},
{'phone':phone,'activation':activation,'service':service}}, burada (phone - işlem kimliği, activation - Telefon numarası, service - Hizmet)
OLASI HATALAR:
BAD_ACTION - hatalı işlem
BAD_SERVICE - hatalı hizmet adı
BAD_KEY - geçersiz API anahtarı
ERROR_SQL - sql-server hatası
BANNED:'YYYY-m-d H-i-s' - hesabın bloke edildiği süre
Parametreler:
$api_key - API anahtarı
$id - Aktivasyon Kimliği
$forward * - yönlendirmek istediğiniz telefon numarası
* yalnızca getNumber forward=1 parametresi iletilmişse gereklidir.
$status - aktivasyon durumu
1 - numara kullanılabilirliğini bildir (numaraya sms gönderildi)
3 - bir kod daha iste (ücretsiz)
6 - aktivasyonu sonlandır *
8 - numaranın zaten kullanıldığını bildir ve aktivasyonu iptal et
* eğer 'kod alındı' durumu varsa - başarıyla işaretler ve tamamlar, 'hazırlık' durumu varsa - siler ve hata olarak işaretler, 'yeniden deneme bekleniyor' durumu varsa - aktivasyonu bekleyen SMS'e aktarır
** Numara zaten geldiyse, arama yoluyla doğrulama yöntemi seçilen aktivasyonun durumunu değiştirmek mümkün değildir
API ile çalışma kronolojisinin basit mantığı:
getNumber yöntemini kullanarak bir numara alma, ardından aşağıdaki işlemler mevcuttur:
8 - aktivasyonu iptal et (numara size uygun değilse)
1 - SMS'in gönderildiğini bildir (isteğe bağlı)
Durumu 1 olan aktivasyon için:
8 - aktivasyonu iptal et
Kodu aldıktan hemen sonra:
3 - bir SMS daha iste
6 - SMS kodunu onayla ve aktivasyonu bitir
Durumu 3 olan aktivasyon için:
6 - SMS kodunu onayla ve aktivasyonu bitir
CEVAP:
ACCESS_READY - numaraların hazır olduğu onaylandı
ACCESS_RETRY_GET - yeni SMS bekleniyor
ACCESS_ACTIVATION - servis başarıyla etkinleştirildi
ACCESS_CANCEL - aktivasyon iptal edildi
OLASI HATALAR:
EARLY_CANCEL_DENIED - ilk 2 dakika içinde numara iptaline izin verilmez
ERROR_SQL - sql-server hatası
NO_ACTIVATION - aktivasyon ID'si mevcut değil
BAD_SERVICE - hatalı hizmet adı
BAD_STATUS - hatalı durum
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
WRONG_ACTIVATION_ID - geçersiz ID veya ID bir sayı değil.
Parametreler:
$api_key - API anahtarı
$id - Aktivasyon Kimliği
CEVAP:
STATUS_WAIT_CODE - SMS bekleniyor
STATUS_WAIT_RETRY: 'geçmiş, eşleşmeyen kod' - kod netleştirme bekleniyor
STATUS_WAIT_RESEND - SMS'in yeniden gönderilmesi bekleniyor *
* yazılımın SMS'i yeniden gönder butonuna basması ve durumu 6 olarak değiştirmesi gerekir
STATUS_CANCEL - aktivasyon iptal edildi
STATUS_OK: 'aktivasyon kodu' - kod alındı
OLASI HATALAR:
NO_ACTIVATION - aktivasyon ID'si mevcut değil
ERROR_SQL - sql-server hatası
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
Parametreler:
$api_key - API anahtarı
$id - Aktivasyon Kimliği
CEVAP:
Yanıt formatı şu şekilde olacaktır:
{
"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 - aktivasyon iptal edildi
OLASI HATALAR:
NO_ACTIVATION - aktivasyon ID'si mevcut değil
ERROR_SQL - sql-server hatası
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
Parametreler:
$api_key - API anahtarı
$start - Unix Timestamp formatında zaman damgası (isteğe bağlı) - hangi tarihten itibaren aktivasyonların dikkate alınacağı
$end - Unix Timestamp formatında zaman damgası (isteğe bağlı) - hangi tarihe kadar aktivasyonların dikkate alınacağı
$offset - yanıtta döndürülen ilk elemanın ofseti. Varsayılan 0'dır
$limit - döndürülecek maksimum kayıt sayısı. Maksimum 100'dür. Varsayılan 50'dir.
CEVAP:
Yanıt formatı şu şekilde olacaktır:
[{
"id": 635468024,
"date": "2022-11-12 15:58:39",
"phone": "79918529716",
"sms": "sms":"["Your sms code"]",
"cost": 100 //Если активация не завершена, то cost = 0,
"status": "4",
}]
OLASI HATALAR:
ERROR_SQL - sql-server hatası
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
Parametreler:
$api_key - API anahtarı
$service - servis adı
CEVAP:
Yanıt formatı şu şekilde olacaktır:
[{
"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)
}]
OLASI HATALAR:
ERROR_SQL - sql-server hatası
BAD_KEY - geçersiz API anahtarı
WRONG_SERVICE - hatalı servis
BAD_ACTION - hatalı işlem
Parametreler:
$api_key - API anahtarı
$id - Aktivasyon Kimliği
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{"status":"2","phone":false}
OLASI DURUMLAR:
2 - yeni aktivasyon
3 - başarıyla tamamlandı
4 - iptal edildi
5 - iade edildi
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
GEÇERSİZ_AKTİVASYON_ID - Geçersiz aktivasyon ID'si
Parametreler:
$api_key - API anahtarı
$serviceHizmetin kısa adı (İsteğe bağlı, varsayılan olarak tüm hizmetler) tabloya bakın
$countryÜlke kodu adı (İsteğe bağlı, varsayılan olarak tüm ülkeler) tabloya bakın
CEVAP:
JSON - formatında nesne
{"Country":{"Service":{"cost":Cost,"count":Count}}}
Parametreler:
$api_key - API anahtarı
$serviceHizmetin kısa adı (İsteğe bağlı, varsayılan olarak tüm hizmetler) tabloya bakın
CEVAP:
JSON - formatında nesne
{"Service":{"Country":{"count":Quantity,"price":"Price"}}}
Parametreler:
$api_key - API anahtarı
CEVAP:
JSON - formatında nesne {{'Страна':{'id':0,'rus':"Россия","eng:"Russia","chn":"俄罗斯","visible":1,"retry":1,"rent":1,"multiService":1}},
burada (
id : ülke kimliği;
rus : ülkenin Rusça adı;
eng : ülkenin İngilizce adı;
chn : ülkenin Çince adı;
visible : 0 - ülke sitede görüntülenmiyor, 1 - görüntüleniyor;
retry : 0 - tekrarlanan SMS mevcut değil, 1 - mevcut;
rent : 0 - ülke kiralanmamış, 1 - kiralanmış;
multiService : 0-ülke çoklu hizmet için mevcut değil, 1- mevcut.)
Parametreler:
$api_key- API anahtarı
$country *- Ülke Kimliği. Ülke belirtildiğinde, seçilen ülke için fiyatı olan hizmetleri döndürürüz
$lang *- `name` sağlamak için kullanılacak dil. Olası değerler: 'ru', 'en', 'es', 'cn'. Varsayılan 'en'dir
* isteğe bağlı parametre
CEVAP:
JSON - formatında nesne { "status": "success", "services": [ { "code": "aoo", "name": "Pegasus Havayolları" } ] }
Yönlendirilen numaralar için ilk SMS'i aldıktan sonra, Yula, Yandex, Avito ve diğerleri gibi ilgili diğer hizmetleri satın alabilirsiniz.
Ek hizmetin maliyeti sadece 5p'dir
Parametreler:
$api_key - API anahtarı
$service - hizmetin kısa adı için tabloya bakın tabloya bakın
$id - Ana Aktivasyon ID'si
CEVAP:
EK:$id:$telefon - yeni bir aktivasyon başarıyla oluşturuldu. Burada ID ek aktivasyonun ID'si, telefon ise telefon numarasıdır
OLASI HATALAR:
YANLIŞ_EK_HIZMET - Geçersiz ek hizmet (yalnızca yönlendirme için olan hizmetlere izin verilir)
WRONG_ACTIVATION_ID - Hatalı ana aktivasyon ID'si
YANLIŞ_GÜVENLİK - Yönlendirme olmadan bir aktivasyon ID'si iletilmeye çalışıldığında veya tamamlanmış/pasif bir aktivasyonda hata oluştu
TEKRAR_EK_HIZMET - Satın alınan bir hizmeti tekrar sipariş etmeye çalışırken hata oluşur NO_BALANCE - Yetersiz bakiye
ERROR_SQL- veritabanı hatası, müşteri hizmetleriyle iletişime geçin
Numara üzerinde başarılı bir aktivasyon yaptıysanız, bunu tekrar yapabilirsiniz.
Ek aktivasyonun maliyeti ülkeye ve hizmete göre belirlenir. Spesifik maliyet . adresinden alınabilir.
Parametreler:
$api_key - API anahtarı
$activationId - Ana Aktivasyon ID'si
CEVAP:
ERİŞİM_NUMARA:$id:$telefon - yeni bir aktivasyon başarıyla oluşturuldu. Burada $id ek aktivasyonun ID'si, $telefon ise telefon numarasıdır
OLASI HATALAR:
YENİLEME_AKTİVASYON_MUSAIT_DEGIL- Numara ek aktivasyon için uygun değil
WRONG_ACTIVATION_ID - Hatalı ana aktivasyon ID'si
ERROR_SQL- veritabanı hatası, müşteri hizmetleriyle iletişime geçin
YENI_AKTIVASYON_IMKANSIZ- Ek aktivasyon yapmak imkansızdır
NO_BALANCE - hesapta para yok
Numaranın ek aktivasyon için uygunluğunu öğrenebilir ve maliyetini alabilirsiniz
Parametreler:
$api_key - API anahtarı
$activationId - Ana Aktivasyon ID'si
CEVAP:
JSON - formatında nesne {'status': 'success', 'cost':200,"service":"tw","phone":777777777,"country":14},
OLASI HATALAR:
YENİLEME_AKTİVASYON_MUSAIT_DEGIL- Numara ek aktivasyon için uygun değil
WRONG_ACTIVATION_ID - Hatalı ana aktivasyon ID'si
SIM_CEVRIMDISI - SIM kart çevrimdışı
Parametreler:
$api_keyapi anahtarı
$id - Aktivasyon Kimliği
$newLang - yeni ayrıştırma dili tabloya bakın
CEVAP:
Yanıt formatı şu şekilde olacaktır:
{
"result": "OK"
}
STATUS_CANCEL - aktivasyon iptal edildi
ARAMA_YOK- arama alınmadı
PARSE_COUNT_EXCEED- ayrıştırma denemesi sınırı (maksimum 4)
OLASI HATALAR:
WRONG_ACTIVATION_ID - geçersiz ID, aktivasyon mevcut değil
ERROR_SQL - sql-server hatası
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
Kiralama API'si
Parametreler:
$api_key - API anahtarı
$time* - kiralama süresi (varsayılan: 4 saat)
$operator* - numaranın mobil operatörü, virgülle ayırarak birden fazlasını belirtebilirsiniz (varsayılan: Herhangi biri)
$country* - ülke (varsayılan: Rusya)
$incomingCall * - aktarıldıysa "true"arama alma işlevini destekleyen bir numara alın
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{ "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 } } }
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
OUT_OF_STOCK - o ülke için numaralar kullanılamıyor
Parametreler:
$api_key - API anahtarı
$service - numara almanız gereken hizmet
$time* - saat cinsinden kiralama süresi (varsayılan: 4 saat). Sonraki kullanılabilir süre dilimleri 12 saat, ardından 24 saattir. Bir gün veya daha uzun süreli kiralama talep ederken şu değerleri aktarmalısınız: 24, 48, 72 vb.
$operator* - numaranın mobil operatörü, virgülle ayırarak birden fazlasını belirtebilirsiniz (varsayılan: Herhangi biri)
$country* - ülke (varsayılan: Rusya)
$url * - webhook için bir bağlantı (varsayılan olarak dikkate alınmaz)
$incomingCall * - aktarıldıysa "true"arama alma işlevini destekleyen bir numara alın
* isteğe bağlı parametre. Belirtilmezse varsayılan parametre kullanılır.
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564" } }
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
JSON formatında yanıt:
{ "status": "error", "message": "*possible_answer*" }
Alandaki olası yanıtlar "message":
BAD_SERVICE - hizmet belirtilmedi veya ad hatalı
NO_BALANCE - hesapta para yok
NO_NUMBERS - numara yok
ACCOUNT_INACTIVE - numara yok
SERVER_ERROR - sunucu hatası
CHANNELS_LIMIT - hesap bloke edildi
Parametreler:
$api_key - API anahtarı
$id - Numara siparişi verirken yanıtta alınan Kiralama ID'si
$page* - seçimin başladığı sayfa numarası (sayfa numaralandırması 0'dan başlar, yeniden eskiye doğru; varsayılan 0'dır)
$size* - sayfa boyutu (varsayılan 10)
* isteğe bağlı parametre. Belirtilmezse varsayılan parametre kullanılır.
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{ "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" } } }
* yalnızca SMS mevcut olduğunda başarılı olur ('quantity' kutusu > 0).
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
JSON formatında yanıt:
{ "status": "error", "message": "*possible_answer*" } Alandaki olası yanıtlar "message": NO_ID_RENT - kiralama ID'si belirtilmedi INVALID_PHONE - numara sizin tarafınızdan kiralanmamış (geçersiz kira kimliği) STATUS_FINISH - kira ödendi ve tamamlandı STATUS_CANCEL - kira iade ile iptal edildi STATUS_WAIT_CODE - ilk SMS bekleniyor STATUS_REVOKE - Numara engellendi, bakiyeniz iade edildi
Parametreler:
$api_key - API anahtarı
$id - Numara siparişi verirken yanıtta alınan Kiralama ID'si
$status - durumu değiştirmek için kod (numara)
Durum şu olabilir:
CEVAP:
Hizmetin yanıtı json formatında olacaktır:
{ "status": "success" }
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
JSON formatında yanıt:
{ "status": "error", "message": "*possible_answer*" }
Alandaki olası yanıtlar "message":
NO_ID_RENT - kiralama ID'si belirtilmedi
INCORECT_STATUS - eksik veya hatalı belirtilmiş durum
CANT_CANCEL - kiranın iptal edilmesi imkansız (20 dakikadan fazla)
INVALID_PHONE - numara sizin tarafınızdan kiralanmamış (geçersiz kira kimliği)
ALREADY_FINISH - kira zaten tamamlandı
ALREADY_CANCEL - kira zaten iptal edildi
SERVER_ERROR - sunucu hatası
👉Dikkat! Bu yöntem yalnızca son 10 numarayı gösterir. Daha fazla numaraya ihtiyacınız varsa, getRentStatus yöntemini kullanarak durumları kontrol edin.
Parametreler:
$api_key - API anahtarı
CEVAP:
Hizmetin yanıtı json formatında olacaktır:
{ "status": "success", "values": { "0": { "id": "12345", "phone": "79181234567" }, "1": { "id": "12345", "phone": "79181234568" } } }
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
JSON formatında yanıt:
{ "status": "error", "message": "*possible_answer*" }
Alandaki olası yanıtlar "message":
NO_NUMBERS - kiralanmış numara yok
SERVER_ERROR - sunucu hatası
Parametreler:
$api_key - API anahtarı
$id - kira kimliği
$rent_time- kiralama süresi (varsayılan: 4 saat)
CEVAP:
Hizmetin yanıtı json formatında olacaktır:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564"} }
Tamamlanmış bir kira uzatıldığında, yeniden sipariş verilir ve yeni bir kimlik sağlanır
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
SERVER_ERROR - sunucu hatası
JSON formatında yanıt:
{ "status": "error", "message": "*possible_answer*", "info": "*details*" }
Alandaki olası yanıtlar "message":
NO_ID_RENT - kira kimliği yok
INVALID_TIME - yanlış süre. Mevcut saat aralığı 4 ile 1344 arasındadır
MAX_HOURS_EXCEED - Maksimum mevcut süre aşıldı
maks - maksimum mevcut süre
INVALID_PHONE - geçersiz kira kimliği
RENT_DIE - numaranın süresi dolduğu için kiralama uzatılamaz
NO_BALANCE - yetersiz bakiye
CHANNELS_LIMIT - hesap bloke edildi
* bu yöntem yalnızca MTT operatörü ile kiralamalar için kullanılabilir.
Parametreler:
$api_key - API anahtarı
$id - kira kimliği
$rent_time - kiralama süresi
CEVAP:
Hizmetin yanıtı json formatında olacaktır:
{ "status": "success", "price": 6.33 }
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
SERVER_ERROR - sunucu hatası
JSON formatında yanıt:
{ "status": "error", "message": "*possible_answer*" }
Alandaki olası yanıtlar "message":
NO_ID_RENT - kira kimliği yok
INVALID_PHONE - geçersiz kira kimliği
INVALID_TIME - hatalı zaman ayarı
RENT_DIE - numaranın süresi dolduğu için kiralama uzatılamaz
MAX_HOURS_EXCEED - Maksimum mevcut süre aşıldı
maks - maksimum mevcut süre
CHANNELS_LIMIT - hesap bloke edildi
API JAVA
Kütüphaneyi Maven'a ekleyin
<artifactId>SMSActivateApi</artifactId>
<version>1.0</version>
</bağımlılık>
Kayıt örneğini şu adreste görebilirsiniz: MavenRepository bağlantısı
SMS-Activate API ile etkileşim kurmak için ana sınıfı içe aktarın.
Kütüphaneyi kullanmak için bir API anahtarına ihtiyacınız vardır; bunu bu sayfadan ve aşağıdaki bağlantıdan alabilirsiniz.
SMS-Activate API AnahtarıHesabınızdaki mevcut bakiyeyi öğrenmek için şu yöntemi kullanın getBalance... Bakiyenize ek olarak iade (cashback) miktarıyla da ilgileniyorsanız, şu yöntemi çağırın getBalanceAndCashBack.
Yöntem getBalanceAndCashBack bir sınıf nesnesi döndürürSMSActivateGetBalanceAndCashBack.
Parametreler:
YOK
DÖNÜŞ TİPİ:
BigDecimal
Parametreler:
YOK
DÖNÜŞ TİPİ:
Parametreler:
countryId(Integer) - ülke tanımlayıcısı.
service(String) - hizmetin kısa adı.
forward*(boolean) - çağrı yönlendirmeli bir numara talep edilip edilmeyeceği.
operatorSet*(Küme) - operatör kümesi.
phoneException*(Küme) - yalnızca Rusya için hariç tutulan ön ekler, 3 ila 6 basamaklı numara kümesi (7918,7900111).
* isteğe bağlı alan. Hiçbir şey belirtilmezse, profildeki ayara göre varsayılan miktar verilir.
DÖNÜŞ TİPİ:
Parametreler:
countryId(Integer) - ülke tanımlayıcısı.
operatorSet*(Küme) - hizmet için mevcut olan operatör kümesi
DÖNÜŞ TİPİ:
Parametreler:
id(Tamsayı) - aktivasyon tanımlayıcısı
service(String) - hizmetin kısa adı.
Aktivasyon tanımlayıcısı yerine, alınan sınıf nesnesini iletebilirsiniz SMSActivateActivation yöntemi kullandıktan sonra getNumber veya kullanımdan sonraki aktivasyonlardan biri getMultiServiceNumber.
DÖNÜŞ TİPİ:
Parametreler:
countryId(Integer) - ülke tanımlayıcısı.
serviceMap(Küme) - aktivasyonu satın alınan hizmetlerin kümesi
multiForwardList(Liste) - çağrı yönlendirmenin mevcut olduğu hizmetlerin listesi
operatorSet(Küme) - operatör kümesi.
DÖNÜŞ TİPİ:
Parametreler:
YOK
DÖNÜŞ TİPİ:
Parametreler:
countryId(Integer) - ülke tanımlayıcısı.
service(String) - hizmetin kısa adı.
DÖNÜŞ TİPİ:
Parametreler:
countryId(Integer) - ülke tanımlayıcısı.
DÖNÜŞ TİPİ:
Parametreler:
activationId(Tamsayı) - aktivasyon tanımlayıcısı
Aktivasyon tanımlayıcısı yerine, alınan sınıf nesnesini iletebilirsiniz SMSActivateActivation yöntemi kullandıktan sonra getNumber veya kullanımdan sonraki aktivasyonlardan biri getMultiServiceNumber.
DÖNÜŞ TİPİ:
Parametreler:
id(Tamsayı) - aktivasyon tanımlayıcısı
status(SMSActivateClientStatus) - aktivasyon için ayarlanacak durum
Aktivasyon tanımlayıcısı yerine, alınan sınıf nesnesini iletebilirsiniz SMSActivateActivation yöntemi kullandıktan sonra getNumber veya kullanımdan sonraki aktivasyonlardan biri getMultiServiceNumber.
DÖNÜŞ TİPİ:
Parametreler:
YOK
DÖNÜŞ TİPİ:
Parametreler:
activationId(Tamsayı) - aktivasyon tanımlayıcısı
Aktivasyon tanımlayıcısı yerine, alınan sınıf nesnesini iletebilirsiniz SMSActivateActivation yöntemi kullandıktan sonra getNumber veya kullanımdan sonraki aktivasyonlardan biri getMultiServiceNumber.
DÖNÜŞ TİPİ:
Aktivasyon ile SMS'in tam metnini alma algoritması
getNumber yöntemini kullanarak bir numara alma, ardından aşağıdaki işlemler mevcuttur:
CANCEL - 8 - Aktivasyonu iptal et (numara size uymuyorsa)
MESSAGE_WAS_SENT - SMS'in gönderildiğini bildirir (SMS'in tam metnini almak için zorunludur)
MESSAGE_WAS_SENT durumunun zorunlu olarak ayarlanmasından sonra, aktivasyon parametreleri ve SMS bekleme süresi ile waitSMS yöntemini kullanarak SMS'i almak için değişkeni ayarlayın.
SMS'i aldıktan sonra, getFullSMS yöntemini kullanarak alabilir ve ardından getText() yöntemiyle tam metni görüntüleyebilirsiniz.
Bundan sonra, aktivasyonları aşağıdaki durumlara ayarlayabilirsiniz:
MESSAGE_WAS_SENT durumuyla aktivasyon için:
CANCEL - Aktivasyonu iptal et
Kodu aldıktan hemen sonra:
REQUEST_ONE_MORE_CODE - Başka bir SMS iste
FINISH - SMS kodunu onayla ve aktivasyonu tamamla
REQUEST_ONE_MORE_CODE durumuyla aktivasyon için:
FINISH - SMS kodunu onayla ve aktivasyonu tamamla
Parametreler:
countryId(Integer) - ülke tanımlayıcısı.
service(String) - hizmetin kısa adı.
hours(Tam Sayı)* - kiralama süresi
operator(Dize)* - mobil operatörün adı
urlWebhook(Dize)* - webhook bağlantısı (Varsayılan olarak dikkate alınmaz)
WebHook nedir?* isteğe bağlı parametre. Belirtilmezse, varsayılan değer şu olacaktır:
DÖNÜŞ TİPİ:
Parametreler:
countryId(Integer) - ülke tanımlayıcısı.
operatorSet(Küme) - mobil operatörler kümesi
hours(Tam Sayı)* - kiralama süresi
* isteğe bağlı parametre. Belirtilmezse, varsayılan değer şu olacaktır:
DÖNÜŞ TİPİ:
Parametreler:
rentId(Tam Sayı) - kiralanmış numaranın tanımlayıcısı
rentId yerine, elde edilen sınıf nesnesini geçirebilirsiniz SMSActivateRentActivation yöntemi kullandıktan sonra getRentNumber
DÖNÜŞ TİPİ:
E-posta API'si
API durumlarının açıklaması
3 - Bekleniyor
4 - İptal
5 - Başarılı
AÇIKLAMA:
REST API ilkelerine daha sıkı uyum ve Telegram hesapları kaydı için gmail.com posta kutularının sayısının artırılması.
Parametreler:
$api_key - API anahtarı
$site- E-posta ihtiyacınız olan site
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{
"status":"OK",
"response":{
"zones":[
{
"name":"info",
"cost":2.5
},
...
],
"popular":[
{
"name":"mail.ru",
"cost":6,
"count":159008
},
...
]
}
}
OLASI HATALAR:
BAD_SITE- Site belirtilmedi
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
Parametreler:
$api_key - API anahtarı
$site - e-posta ihtiyacınız olan site
$mail_type - posta türü: popüler alan adları veya bölgeler (1 - bölgeler 2 - popüler)
$mail_domain - seçilen bölge veya alan adı
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{
"status":"OK",
"response":{"email":"[email protected]","id":241}
}
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
MAIL_TYPE_ERROR - belirtilen site için böyle bir alan adı yok
CHANNELS_LIMIT - hesap bloke edildi
Parametreler:
$api_key - API anahtarı
$id- Yeniden aktivasyon gerektiren postanın Kimliği
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{
"status": "OK",
"response": {
"email": "[email protected]",
"id": 360
}
}
OLASI HATALAR:
BAD_KEY - geçersiz API anahtarı
BAD_ACTION - hatalı işlem
BLOCKED_SITE - engellenen web sitesi
BAD_BALANCE - yetersiz bakiye
ACTIVATION_NOT_FOUND - aktivasyon bulunamadı
CHANNELS_LIMIT - hesap bloke edildi
Parametreler:
$api_key - API anahtarı
$page- sayfa numarası
$per_page- her sayfadaki satın alma sayısı
$search- arama çubuğu
$sort- sıralama yönü. (azalan, artan)
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{
"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
}
}
Parametreler:
$api_key - API anahtarı
$id- satın alma kimliği
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{
"status":"OK",
"response":true
}
OLASI HATALAR:
EARLY_CANCEL_DENIED - İlk 2 dakika içinde postayı iptal edemezsiniz.
Parametreler:
$api_key - API anahtarı
$id- satın alınan e-postanın kimliği, e-posta satın alındıktan sonra döndürülür
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{
"status":"OK",
"response":{
"value":"Содержания письма"
}
}
API Partner yazılımı
Parametreler:
$api_key - API anahtarı
$id- Satın almanız gereken yazılımın Kimliği
CEVAP:
Hizmetin yanıtı json formatında olacaktır, örnek:
{
"status": "success",
"key": "F5qrzFoY6afj3zrEq7SeMplbx",
"manual": "Software download link:"
}
OLASI HATALAR:
BAD_DATA - Hatalı Kimlik veya Kimlik bir sayı değil
BAD_ACTION - geçersiz işlem veya satıcı doğrulanmamış.
<?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 sms-activate.club 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





















































