API protokol za delo s storitvijo SMS-Activate
API je protokol med vašo programsko opremo in našim strežnikom
API je potreben za avtomatizacijo procesa prejemanja SMS-ov, OTP kod in PVA na vaši strani
Naš API je popolnoma združljiv s konkurenčnimi stranmi
Vsi zahtevki morajo biti usmerjeni na https://api.sms-activate.ai/stubs/handler_api.php
POST ali GET zahtevek.
Vsi zahtevki morajo vsebovati API ključ v obliki GET parametra api_key
Prenesite implementacijo protokola v PHP-ju Prenesite pripravljeno implementacijo protokola v PythonuAPI za aktivacijo
Parametri:
$api_key - API ključ
$country * - številka države glej tabelo
$operator * številke mobilnih operaterjev, lahko navedete več številk, ločenih z vejicami (na voljo samo za:
** na voljo za $country = 0, $country = 1, $country = 2
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{"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}
Kjer je ime storitve pred vezajem, oznaka za tem pa določa, ali je potrebno vključiti preusmeritev. 0 - ne. 1 - da.
Parametri:
$api_key - API ključ
$service * - Storitev glej tabelo
* izbirni parameter. Če ni naveden, bodo privzeto prikazane najboljše države za vse storitve.
$freePrice * - izbirni parameter. Če je naveden true, bosta količina in cena podani glede na Free Price
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{
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
}
}, ...
}
Zahteva za stanje z računom za povračilo denarja (cashback):
* vrne stanje ob upoštevanju zbranega povračila denarja, če je v nastavitvah računa za povračilo označeno polje 'Porabi povračilo za aktivacijo'
Parametri:
$api_key - API ključ
ODGOVOR:
ACCESS_BALANCE: 'stanje na računu'
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
ERROR_SQL - napaka SQL strežnika
* vrne vse operaterje, ki so na voljo za posredovano državo; če država ni posredovana, vrne vse operaterje, ki so na voljo za vsako državo
Parametri:
$api_key - API ključ
$country - koda države
ODGOVOR:
Odgovor storitve bo v formatu JSON:
{"status":"success", "countryOperators": {
"Country1Code": ["operator1Name","operator2Name","operator3Name", ...],
"Country2Code": ["operator1Name","operator2Name","operator3Name", ...],
...
}}
Primer:
{"status":"success", "countryOperators": {
"0": ["beeline","megafon","mts", ...],
"1": ["life","mts","kyivstar","utel" ...],
...
}}
* znotraj 'countryOperators' bo ključ koda države
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
ERROR_SQL - napaka SQL strežnika
OPERATORS_NOT_FOUND - zapisi niso najdeni (npr. posredovana neobstoječa država)
Parametri:
$api_key - API ključ
ODGOVOR:
Odgovor storitve bo v formatu 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",
}]
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
ERROR_SQL - napaka SQL strežnika
NO_ACTIVATIONS - vnosi niso najdeni (ni aktivnih aktivacij)
Parametri:
$api_key - API ključ
$service - storitev za naročilo glej tabelo
$forward * - ali je treba zahtevati številko s preusmeritvijo
* izbirni parameter, sprejme 0 (ne izvedi, nastavljeno privzeto), 1 (izvedi)
$maxPrice * - največja cena, po kateri ste pripravljeni kupiti številko pri Free Price
* izbirni parameter; če ni naveden, bo nakup opravljen po redni ceni
$phoneException * - izključitev predpon za ruske številke. Vnesite z vejico. Format zapisa: koda države in 3 do 6 številk maske (npr. 7918, 7900111). Privzeta vrednost je vrednost, določena v računu.
$operator* je mobilni operater številke, lahko jih navedete več, ločenih z vejico (na voljo samo za **)
$activationType - vrsta aktivacije: 0 - s SMS-om (privzeto), 1 - s številko, 2 - z glasovnim klicem
$language - jezik razčlenjevanja (obvezno za aktivacijo z glasovnim klicem) glej tabelo
$userId * - ID uporabnika za prepoved zaradi slabih statistik aktivacij, vendar to ne vpliva na račun posrednika.
* izbirno polje
** na voljo za $country = 0, $country = 1, $country = 2
$ref - posredujte ID napotitve.
$country - številka države glej tabelo
$useCashBack* - sprejema logično vrednost; če je parameter 'true', bo nakup številke opravljen s porabo povračila denarja. Ko zmanjka sredstev na stanju povračila, se vsi nadaljnji nakupi opravijo z glavnim stanjem. POMEMBNO je vedeti, da bodo vsi nadaljnji nakupi najprej uporabili povračilo denarja in šele nato glavno stanje (tudi če kasneje posredujete parameter 'false').
* izbirni parameter, sprejema 'true'
Z pridobitvijo številke prek API-ja se strinjate s pogoji pravila projekta pravila projekta
MOŽNE NAPAKE:
WRONG_MAX_PRICE:$min- navedena največja cena je nižja od dovoljene
$min - najnižja dovoljena cena
BAD_ACTION - nepravilno dejanje
BAD_SERVICE - nepravilno ime storitve
BAD_KEY - neveljaven API ključ
ERROR_SQL - napaka SQL strežnika
BANNED:'YYYY-m-d H-i-s' - čas, za katerega je račun blokiran
WRONG_EXCEPTION_PHONE - nepravilne izključene predpone
NO_BALANCE_FORWARD - premalo sredstev za nakup preusmeritve klicev
CHANNELS_LIMIT - račun blokiran
NO_NUMBERS - ni številk
Če poskušate pridobiti številko določenega operaterja, ki ne deluje v izbrani državi ali ki nima izbrane storitve, bo vrnjena številka prvega operaterja, ki ustreza parametrom zahteve
metoda deluje podobno kot metoda getNumber, sprejema iste parametre in dodatne, opisane spodaj, vendar vrača dodatne informacije o aktivaciji
Parametri:
$orderId- ID aktivacije iz sistema posrednika. Ob nakupu se ti podatki primerjajo z ID-jem aktivacije in posrednikom v našem sistemu. Tako želimo doseči idempotentnost (isti naročilo ne bo obdelano znova).
ODGOVOR:
Če je zahtevek uspešen, bo odgovor v naslednji obliki:
{
"activationId": 635468024,
"phoneNumber": "79584******",
"activationCost": "12.50",
"countryCode": "0",
"canGetAnotherSms": "1",
"activationTime": "2022-06-01 17:30:57",
"activationOperator": "mtt"
}
Če poskušate pridobiti številko določenega operaterja, ki ne deluje v izbrani državi ali ki nima izbrane storitve, bo vrnjena številka prvega operaterja, ki ustreza parametrom zahteve
MOŽNE NAPAKE:
ORDER_ALREADY_EXISTS- naročilo je že bilo ustvarjeno
Ko prejmete SMS na številko in imate v nastavitvah omogočeno funkcijo Webhooks, bomo podatke o SMS-u poslali na navedene naslove z zahtevkom POST
ODGOVOR:
Oblika odgovora bo naslednja:
{
"activationId": 635468024,
"service": "go",
"text": "Your sms text",
"code": "Your sms code",
"country": 0,
"receivedAt": "2022-06-01 17:30:57",
}
Pri pošiljanju zahtevka bomo počakali na odgovor vašega skripta s statusom HTTP 200. Če vaš skript ne odgovori, bomo zahtevek ponovno poslali v roku 2 ur, vendar največ 8-krat.
To funkcionalnost lahko omogočite v nastavitvah profila
Parametri:
$api_key - API ključ
$service - storitev za naročilo glej tabelo
$forward * - ali je treba zahtevati številko s preusmeritvijo
* izbirni parameter, znaki za posredovanje so ločeni z vejicami, število mest za posredovanje mora ustrezati številu storitev, prenesenih v parametru $service. Dovoljeno je posredovati samo 1 storitev s preusmeritvijo, na primer "0,1,0,0" - pravilno, "0,1,1,0" - nepravilno. Vrednosti: 0 (ne izvedi, privzeto), 1 (izvedi)
$operator * - mobilni operater številke, lahko navedete več številk, ločenih z vejicami (na voljo samo za **):
$ref - posredujte ID napotitve.
$country - številka države glej tabelo
Z pridobitvijo številke prek API-ja se strinjate s pogoji pravila projekta pravila projekta
ODGOVOR:
NO_NUMBERS - ni številk
NO_BALANCE - stanje je porabljeno
{{'phone':phone,'activation':activation,'service':service},
{'phone':phone,'activation':activation,'service':service}}, kjer (phone - ID operacije, activation - Telefonska številka, service - Storitev)
MOŽNE NAPAKE:
BAD_ACTION - nepravilno dejanje
BAD_SERVICE - nepravilno ime storitve
BAD_KEY - neveljaven API ključ
ERROR_SQL - napaka SQL strežnika
BANNED:'YYYY-m-d H-i-s' - čas, za katerega je račun blokiran
Parametri:
$api_key - API ključ
$id - ID aktivacije
$forward * - telefonska številka, na katero želite posredovati
* zahtevano le, če je bil parameter posredovan z getNumber forward=1.
$status - status aktivacije
1 - obvesti o razpoložljivosti številke (SMS poslan na številko)
3 - zahtevaj še eno kodo (brezplačno)
6 - končaj aktivacijo *
8 - sporoči, da je bila številka že uporabljena, in prekliči aktivacijo
* če je obstajal status 'koda prejeta' - označi kot uspešno in zaključi, če je bil status 'priprava' - izbriše in označi napako, če je bil status 'čakanje na ponovni poskus' - prenese aktivacijo med čakajoče SMS-e
** Ni mogoče spremeniti statusa aktivacije, za katero je bila izbrana metoda preverjanja s klicem, če je številka že prispela
Preprosta logika kronologije dela z API-jem:
Pridobitev številke z metodo getNumber, nato so na voljo naslednja dejanja:
8 - prekliči aktivacijo (če številka ni ustrezna)
1 - obvesti, da je bil SMS poslan (izbirno)
Za aktivacijo s statusom 1:
8 - prekliči aktivacijo
Takoj po prejemu kode:
3 - zahtevaj še en SMS
6 - potrdi SMS-kodo in končaj aktivacijo
Za aktivacijo s statusom 3:
6 - potrdi SMS-kodo in končaj aktivacijo
ODGOVOR:
ACCESS_READY - pripravljenost številk potrjena
ACCESS_RETRY_GET - čakanje na novo SMS sporočilo
ACCESS_ACTIVATION - storitev je bila uspešno aktivirana
ACCESS_CANCEL - aktivacija preklicana
MOŽNE NAPAKE:
EARLY_CANCEL_DENIED - preklic številke v prvih 2 minutah ni dovoljen
ERROR_SQL - napaka SQL strežnika
NO_ACTIVATION - ID aktivacije ne obstaja
BAD_SERVICE - nepravilno ime storitve
BAD_STATUS - nepravilen status
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
WRONG_ACTIVATION_ID - napačen ID ali ID ni število.
Parametri:
$api_key - API ključ
$id - ID aktivacije
ODGOVOR:
STATUS_WAIT_CODE - čakanje na SMS
STATUS_WAIT_RETRY: 'preteklo, neujemanje kode' - čakanje na pojasnitev kode
STATUS_WAIT_RESEND - čakanje na ponovno pošiljanje SMS *
* programska oprema mora pritisniti gumb za ponovno pošiljanje SMS in spremeniti status na 6
STATUS_CANCEL - aktivacija preklicana
STATUS_OK: 'aktivacijska koda' - koda prejeta
MOŽNE NAPAKE:
NO_ACTIVATION - ID aktivacije ne obstaja
ERROR_SQL - napaka SQL strežnika
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
Parametri:
$api_key - API ključ
$id - ID aktivacije
ODGOVOR:
Oblika odgovora bo naslednja:
{
"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 - aktivacija preklicana
MOŽNE NAPAKE:
NO_ACTIVATION - ID aktivacije ne obstaja
ERROR_SQL - napaka SQL strežnika
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
Parametri:
$api_key - API ključ
$start - časovni žig v formatu Unix Timestamp (izbirno) - od katerega datuma upoštevati aktivacije
$end - časovni žig v formatu Unix Timestamp (izbirno) - do katerega datuma upoštevati aktivacije
$offset - zamik prvega elementa, vrnjenega v odgovoru. Privzeta vrednost je 0
$limit - največje število vrnjenih zapisov. Največ je 100. Privzeta vrednost je 50.
ODGOVOR:
Oblika odgovora bo naslednja:
[{
"id": 635468024,
"date": "2022-11-12 15:58:39",
"phone": "79918529716",
"sms": "sms":"["Your sms code"]",
"cost": 100 //Если активация не завершена, то cost = 0,
"status": "4",
}]
MOŽNE NAPAKE:
ERROR_SQL - napaka SQL strežnika
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
Parametri:
$api_key - API ključ
$service - ime storitve
ODGOVOR:
Oblika odgovora bo naslednja:
[{
"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)
}]
MOŽNE NAPAKE:
ERROR_SQL - napaka SQL strežnika
BAD_KEY - neveljaven API ključ
WRONG_SERVICE - nepravilna storitev
BAD_ACTION - nepravilno dejanje
Parametri:
$api_key - API ključ
$id - ID aktivacije
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{"status":"2","phone":false}
MOŽNI STATUSI:
2 - nova aktivacija
3 - uspešno zaključeno
4 - preklicano
5 - vrnjeno
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
NEVELJAVEN_ID_AKTIVACIJE - Neveljaven ID aktivacije
Parametri:
$api_key - API ključ
$serviceKratko ime storitve (izbirno, privzeto vse storitve) glej tabelo
$countryIme kode države (izbirno, privzeto vse države) glej tabelo
ODGOVOR:
JSON - objekt v formatu
{"Država":{"Storitev":{"cena":Cena,"število":Število}}}
Parametri:
$api_key - API ključ
$serviceKratko ime storitve (izbirno, privzeto vse storitve) glej tabelo
ODGOVOR:
JSON - objekt v formatu
{"Storitev":{"Država":{"število":Količina,"cena":"Cena"}}}
Parametri:
$api_key - API ključ
ODGOVOR:
JSON - objekt v formatu {{'Страна':{'id':0,'rus':"Россия","eng:"Russia","chn":"俄罗斯","visible":1,"retry":1,"rent":1,"multiService":1}},
kjer (
id : ID države;
rus : ime države v rusščini;
eng : ime države v angleščini;
chn : ime države v kitajščini;
visible : 0 - država ni prikazana na spletnem mestu, 1 - prikazana;
retry : 0 - ponovni SMS NI na voljo, 1 - na voljo;
rent : 0 - država ni najeta, 1 - najeta;
multiService : 0 - država NI na voljo za več storitev, 1 - na voljo.)
Parametri:
$api_key- API ključ
$country *- ID države. Če ste navedli državo, vam vrnemo storitve, ki imajo ceno za izbrano državo
$lang *- kateri jezik uporabiti za zagotavljanje `name`. Možne vrednosti: 'ru', 'en', 'es', 'cn'. Privzeto je 'en'
* neobvezen parameter
ODGOVOR:
JSON - objekt v formatu { "status": "success", "services": [ { "code": "aoo", "name": "Pegasus Airlines" } ] }
Ko prejmete prvi SMS za preusmerjene številke, lahko kupite druge povezane storitve, kot so Yula, Yandex, Avito ali katere koli druge
Strošek dodatne storitve znaša le 5p
Parametri:
$api_key - API ključ
$service - za kratko ime storitve glejte tabelo glej tabelo
$id - ID nadrejene aktivacije
ODGOVOR:
DODATNO:$id:$telefon - nova aktivacija je bila uspešno ustvarjena. Kjer je ID ID dodatne aktivacije, telefon pa telefonska številka
MOŽNE NAPAKE:
NAPAČNA_DODATNA_STORITEV - Neveljavna dodatna storitev (dovoljene so samo storitve za posredovanje)
WRONG_ACTIVATION_ID - Nepravilen ID nadrejene aktivacije
NAPAČNA_VARNOST - prišlo je do napake pri poskusu prenosa ID-ja aktivacije brez preusmeritve ali dokončane/neaktivne aktivacije
PONOVITEV_DODATNE_STORITVE - napaka se pojavi pri poskusu ponovnega naročila že kupljene storitve NO_BALANCE - Nezadostna sredstva
ERROR_SQL- napaka v bazi podatkov, kontaktirajte podporo strankam
Če ste s številko uspešno izvedli aktivacijo, jo lahko ponovite.
Strošek dodatne aktivacije je odvisen od države in storitve. Točen strošek lahko pridobite prek .
Parametri:
$api_key - API ključ
$activationId - ID nadrejene aktivacije
ODGOVOR:
DOSTOP_DO_ŠTEVILKE:$id:$telefon - nova aktivacija je bila uspešno ustvarjena. Kjer je $id ID dodatne aktivacije, $phone pa telefonska številka
MOŽNE NAPAKE:
OBNOVA_AKTIVACIJE_NI_MOŽNA- številka ni na voljo za dodatno aktivacijo
WRONG_ACTIVATION_ID - Nepravilen ID nadrejene aktivacije
ERROR_SQL- napaka v bazi podatkov, kontaktirajte podporo strankam
NOVA_AKTIVACIJA_NI_MOŽNA- dodatna aktivacija ni mogoča
NO_BALANCE - na računu ni denarja
Preverite lahko razpoložljivost številke za dodatno aktivacijo in izveste njeno ceno
Parametri:
$api_key - API ključ
$activationId - ID nadrejene aktivacije
ODGOVOR:
JSON - objekt v formatu {'status': 'success', 'cost':200,"service":"tw","phone":777777777,"country":14},
MOŽNE NAPAKE:
OBNOVA_AKTIVACIJE_NI_MOŽNA- številka ni na voljo za dodatno aktivacijo
WRONG_ACTIVATION_ID - Nepravilen ID nadrejene aktivacije
SIM_KARTICA_OFFLINE - SIM kartica je offline
ODGOVOR:
Oblika odgovora bo naslednja:
{
"result": "OK"
}
STATUS_CANCEL - aktivacija preklicana
NI_KLICA- klic ni bil prejet
PARSE_COUNT_EXCEED- omejitev števila poskusov razčlenjevanja (največ 4)
MOŽNE NAPAKE:
WRONG_ACTIVATION_ID - neveljaven ID, aktivacija ne obstaja
ERROR_SQL - napaka SQL strežnika
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
Najem API
Parametri:
$api_key - API ključ
$time* - čas najema (privzeto: 4 ure)
$operator* - mobilni operater številke, lahko navedete več operaterjev, ločenih z vejicami (privzeto: katerikoli)
$country* - država (privzeto: Rusija)
$incomingCall * - če je preusmerjeno "true"pridobite številko s podporo za funkcijo prejemanja klicev
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{ "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 } } }
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
OUT_OF_STOCK - številke za to državo niso na voljo
Parametri:
$api_key - API ključ
$service - storitev, za katero potrebujete številko
$time* - čas najema v urah (privzeto: 4 ure). Naslednji razpoložljivi časovni intervali so 12 ur, nato 24 ur. Pri zahtevi za najem za en dan ali več morate navesti: 24, 48, 72 itd.
$operator* - mobilni operater številke, lahko navedete več operaterjev, ločenih z vejicami (privzeto: katerikoli)
$country* - država (privzeto: Rusija)
$url * - povezava za webhook (privzeto se ne upošteva)
$incomingCall * - če je preusmerjeno "true"pridobite številko s podporo za funkcijo prejemanja klicev
* izbirni parameter. Če ni določen, se uporabi privzeti parameter.
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564" } }
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
Odgovor v formatu JSON:
{ "status": "error", "message": "*možen_odgovor*" }
Možni odgovori v polju "message":
BAD_SERVICE - storitev ni določena ali pa je ime napačno
NO_BALANCE - na računu ni denarja
NO_NUMBERS - ni številk
ACCOUNT_INACTIVE - ni številk
SERVER_ERROR - napaka strežnika
CHANNELS_LIMIT - račun blokiran
Parametri:
$api_key - API ključ
$id - ID najema, prejet v odgovoru ob naročilu številke
$page* - številka strani, od katere se začne izbor (številčenje strani se začne z 0, od novejših proti starejšim; privzeto je 0)
$size* - velikost strani (privzeto 10)
* izbirni parameter. Če ni določen, se uporabi privzeti parameter.
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{ "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" } } }
* uspešno le, ko obstaja SMS (polje 'quantity' > 0).
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
Odgovor v formatu JSON:
{ "status": "error", "message": "*možen_odgovor*" } Možni odgovori v polju "message": NO_ID_RENT - ID najema ni določen INVALID_PHONE - številka ni najeta s strani vas (neveljaven ID najema) STATUS_FINISH - najem plačan in zaključen STATUS_CANCEL - najem preklican z vračilom sredstev STATUS_WAIT_CODE - čakanje na prvo SMS sporočilo STATUS_REVOKE - številka je blokirana, vaša sredstva so bila vrnjena
Parametri:
$api_key - API ključ
$id - ID najema, prejet v odgovoru ob naročilu številke
$status - koda za spremembo statusa (številke)
Status je lahko:
ODGOVOR:
Odgovor storitve bo v formatu JSON:
{ "status": "success" }
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
Odgovor v formatu JSON:
{ "status": "error", "message": "*možen_odgovor*" }
Možni odgovori v polju "message":
NO_ID_RENT - ID najema ni določen
INCORECT_STATUS - manjkajoč ali nepravilno določen status
CANT_CANCEL - najema ni mogoče preklicati (več kot 20 min.)
INVALID_PHONE - številka ni najeta s strani vas (neveljaven ID najema)
ALREADY_FINISH - najem je že zaključen
ALREADY_CANCEL - najem je že preklican
SERVER_ERROR - napaka strežnika
👉Pozor! Ta metoda prikazuje le zadnjih 10 številk. Če potrebujete več številk, uporabite getRentStatus metodo za preverjanje statusov.
Parametri:
$api_key - API ključ
ODGOVOR:
Odgovor storitve bo v formatu JSON:
{ "status": "success", "values": { "0": { "id": "12345", "phone": "79181234567" }, "1": { "id": "12345", "phone": "79181234568" } } }
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
Odgovor v formatu JSON:
{ "status": "error", "message": "*možen_odgovor*" }
Možni odgovori v polju "message":
NO_NUMBERS - ni najetih številk
SERVER_ERROR - napaka strežnika
Parametri:
$api_key - API ključ
$id - id najema
$rent_time- čas najema (privzeto: 4 ure)
ODGOVOR:
Odgovor storitve bo v formatu JSON:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564"} }
Ko se zaključen najem podaljša, bo ponovno naročen in dodeljen nov ID
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
SERVER_ERROR - napaka strežnika
Odgovor v formatu JSON:
{ "status": "error", "message": "*possible_answer*", "info": "*details*" }
Možni odgovori v polju "message":
NO_ID_RENT - ni ID-ja najema
INVALID_TIME - napačen čas. Na voljo je od 4 do 1344 ur
MAX_HOURS_EXCEED - presežen je bil največji razpoložljivi čas
max - največji razpoložljivi čas
INVALID_PHONE - neveljaven ID najema
RENT_DIE - najema ni mogoče podaljšati, ker je številka potekla
NO_BALANCE - nezadostna sredstva
CHANNELS_LIMIT - račun blokiran
* ta metoda je na voljo samo za najem pri operaterju MTT.
Parametri:
$api_key - API ključ
$id - id najema
$rent_time - čas najema
ODGOVOR:
Odgovor storitve bo v formatu JSON:
{ "status": "success", "price": 6.33 }
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
SERVER_ERROR - napaka strežnika
Odgovor v formatu JSON:
{ "status": "error", "message": "*možen_odgovor*" }
Možni odgovori v polju "message":
NO_ID_RENT - ni ID-ja najema
INVALID_PHONE - neveljaven ID najema
INVALID_TIME - nepravilna nastavitev časa
RENT_DIE - najema ni mogoče podaljšati, ker je številka potekla
MAX_HOURS_EXCEED - presežen je bil največji razpoložljivi čas
max - največji razpoložljivi čas
CHANNELS_LIMIT - račun blokiran
API JAVA
Vključite knjižnico v Maven
<artifactId>SMSActivateApi</artifactId>
<version>1.0</version>
</dependecy>
Primer registracije si lahko ogledate na povezavi do MavenRepository
Uvozite glavni razred za interakcijo z API-jem SMS-Activate.
Za uporabo knjižnice potrebujete ključ API, ki ga lahko pridobite na tej strani in prek spodnje povezave.
SMS-Activate API-ključZa pridobitev trenutnega stanja na vašem računu uporabite metodo getBalance... Če vas poleg stanja zanima tudi povračilo denarja (cashback), pokličite metodo getBalanceAndCashBack.
Metoda getBalanceAndCashBack vrne objekt razredaSMSActivateGetBalanceAndCashBack.
Parametri:
NONE
VRNITVENI TIP:
BigDecimal
Parametri:
NONE
VRNITVENI TIP:
Parametri:
countryId(Integer) - identifikator države.
service(String) - kratko ime storitve.
forward*(boolean) - ali zahtevati številko s posredovanjem klicev.
operatorSet*(Nabor) - nabor operaterjev.
phoneException*(Nabor) - izključitev predpon samo za Rusijo, nabor številk od 3 do 6 (7918,7900111).
* opcijsko polje. Če ni določeno ničesar, bo privzeta količina dodeljena glede na nastavitve v profilu.
VRNITVENI TIP:
Parametri:
countryId(Integer) - identifikator države.
operatorSet*(Nabor) - nabor operaterjev, ki so na voljo za storitev
VRNITVENI TIP:
Parametri:
id(Celo število) - identifikator aktivacije
service(String) - kratko ime storitve.
Namesto identifikatorja aktivacije lahko posredujete prejeti objektni razred SMSActivateActivation po uporabi metode getNumber ali eno od aktivacij po uporabi getMultiServiceNumber.
VRNITVENI TIP:
Parametri:
countryId(Integer) - identifikator države.
serviceMap(Nabor) - nabor storitev, za katere je kupljena aktivacija
multiForwardList(Seznam) - seznam storitev z možnostjo preusmeritve klicev
operatorSet(Nabor) - nabor operaterjev.
VRNITVENI TIP:
Parametri:
NONE
VRNITVENI TIP:
Parametri:
countryId(Integer) - identifikator države.
service(String) - kratko ime storitve.
VRNITVENI TIP:
Parametri:
countryId(Integer) - identifikator države.
VRNITVENI TIP:
Parametri:
activationId(Celo število) - identifikator aktivacije
Namesto identifikatorja aktivacije lahko posredujete prejeti objektni razred SMSActivateActivation po uporabi metode getNumber ali eno od aktivacij po uporabi getMultiServiceNumber.
VRNITVENI TIP:
Parametri:
id(Celo število) - identifikator aktivacije
status(SMSActivateClientStatus) - status, ki ga želite nastaviti za aktivacijo
Namesto identifikatorja aktivacije lahko posredujete prejeti objektni razred SMSActivateActivation po uporabi metode getNumber ali eno od aktivacij po uporabi getMultiServiceNumber.
VRNITVENI TIP:
Parametri:
NONE
VRNITVENI TIP:
Parametri:
activationId(Celo število) - identifikator aktivacije
Namesto identifikatorja aktivacije lahko posredujete prejeti objektni razred SMSActivateActivation po uporabi metode getNumber ali eno od aktivacij po uporabi getMultiServiceNumber.
VRNITVENI TIP:
Algoritem za prejemanje celotnega besedila SMS-a z aktivacijo
Pridobitev številke z metodo getNumber, nato so na voljo naslednja dejanja:
CANCEL - 8 - Prekliči aktivacijo (če vam številka ne ustreza)
MESSAGE_WAS_SENT - Obvestilo, da je bil SMS poslan (obvezno za prejemanje celotnega besedila SMS-a)
Po obvezni nastavitvi statusa MESSAGE_WAS_SENT nastavite spremenljivko za prejemanje SMS-ov z uporabo metode waitSMS s parametri aktivacije in časom čakanja na SMS.
Po prejemu SMS-a ga lahko pridobite z metodo getFullSMS in nato prikažete celotno besedilo z metodo getText().
Nato lahko aktivacije nastavite na naslednje statusе:
Za aktivacijo s statusom MESSAGE_WAS_SENT:
CANCEL - Prekliči aktivacijo
Takoj po prejemu kode:
REQUEST_ONE_MORE_CODE - Zahtevaj še en SMS
FINISH - Potrdi kodo SMS in dokončaj aktivacijo
Za aktivacijo s statusom REQUEST_ONE_MORE_CODE:
FINISH - Potrdi kodo SMS in dokončaj aktivacijo
Parametri:
countryId(Integer) - identifikator države.
service(String) - kratko ime storitve.
hours(Integer)* - čas najema
operator(String)* - ime mobilnega operaterja
urlWebhook(String)* - povezava za webhook (privzeto ni upoštevano)
Kaj je webHook?* izbirni parameter. Če ni določen, bo privzeti
VRNITVENI TIP:
Parametri:
countryId(Integer) - identifikator države.
operatorSet(Nabor) - niz mobilnih operaterjev
hours(Integer)* - čas najema
* izbirni parameter. Če ni določen, bo privzeti
VRNITVENI TIP:
Parametri:
rentId(Integer) - identifikator najete številke
Namesto rentId lahko posredujete dobljeni objektni razred SMSActivateRentActivation po uporabi metode getRentNumber
VRNITVENI TIP:
E-poštni API
Opis API statusov
3 - Čakanje
4 - Preklic
5 - Uspeh
OPIS:
Strožje upoštevanje načel REST API-ja in povečano število e-poštnih naslovov gmail.com za registracijo računov Telegram.
Parametri:
$api_key - API ključ
$site- Spletna stran, za katero potrebujete e-pošto
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{
"status":"OK",
"response":{
"zones":[
{
"name":"info",
"cost":2.5
},
...
],
"popular":[
{
"name":"mail.ru",
"cost":6,
"count":159008
},
...
]
}
}
MOŽNE NAPAKE:
BAD_SITE- Spletna stran ni določena
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
Parametri:
$api_key - API ključ
$site - spletna stran, za katero potrebujete e-pošto
$mail_type - vrsta e-pošte: priljubljene domene ali cone (1 - cone, 2 - priljubljene)
$mail_domain - izbrana cona ali domena
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{
"status":"OK",
"response":{"email":"[email protected]","id":241}
}
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
MAIL_TYPE_ERROR - za navedeno spletno mesto ne obstaja takšna domena
CHANNELS_LIMIT - račun blokiran
Parametri:
$api_key - API ključ
$id- ID e-poštnega naslova, za katerega je potrebna ponovna aktivacija
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{
"status": "OK",
"response": {
"email": "[email protected]",
"id": 360
}
}
MOŽNE NAPAKE:
BAD_KEY - neveljaven API ključ
BAD_ACTION - nepravilno dejanje
BLOCKED_SITE - blokirano spletno mesto
BAD_BALANCE - nezadostna sredstva
ACTIVATION_NOT_FOUND - aktivacija ni bila najdena
CHANNELS_LIMIT - račun blokiran
Parametri:
$api_key - API ključ
$page- številka strani
$per_page- število nakupov na stran
$search- iskalna vrstica
$sort- smer razvrščanja (desc, asc)
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{
"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
}
}
Parametri:
$api_key - API ključ
$id- ID nakupa
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{
"status":"OK",
"response":true
}
MOŽNE NAPAKE:
EARLY_CANCEL_DENIED - E-pošte ne morete preklicati v prvih 2 minutah.
Parametri:
$api_key - API ključ
$id- ID kupljenega e-poštnega naslova; vrne se po nakupu e-pošte
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{
"status":"OK",
"response":{
"value":"Содержания письма"
}
}
Programska oprema za API partnerje
Parametri:
$api_key - API ključ
$id- ID programske opreme, ki jo morate kupiti
ODGOVOR:
Odgovor storitve bo v formatu JSON, primer:
{
"status": "success",
"key": "F5qrzFoY6afj3zrEq7SeMplbx",
"manual": "Software download link:"
}
MOŽNE NAPAKE:
BAD_DATA - Nepravilen ID ali ID ni številka
BAD_ACTION - neveljavno dejanje ali preprodajalec ni preverjen.
<?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.homes 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





















































