Dimar FZC LLC
Flamingo Villas A-32-01-05-03 25314 Zjednoczone Emiraty Arabskie, Adżman
+971585072431, /assets/img/icons/logo/logo.svg, [email protected]

Protokół API do współpracy z SMS-Activate

API to protokół komunikacji między Twoim oprogramowaniem a naszym serwerem

API jest potrzebne do automatyzacji procesu odbierania sms, otp i pva po Twojej stronie

Nasze API jest w pełni kompatybilne ze stronami konkurencji

Wszystkie żądania muszą być kierowane na https://api.sms-activate.ai/stubs/handler_api.php

Żądanie POST lub GET.

Wszystkie żądania muszą zawierać klucz API w postaci parametru GET api_key

Pobierz implementację protokołu w PHP Pobierz gotową implementację protokołu w Pythonie

API aktywacji

Sprawdź dostępną ilość wirtualnych numerów
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getNumbersStatus&country=$country&operator=$operator

Parametry:

$api_key - Klucz API

$country * - numer kraju zobacz tabelę

$operator * numery operatorów komórkowych, możesz podać kilka numerów oddzielonych przecinkami (dostępne tylko dla:

Rosja
megafon, mts, beeline, tele2, rostelecom, any
Ukraina
kyivstar, life, utel, mts, vodafone
Kazachstan
tele2, beeline, activ, altel

** dostępne dla $country = 0, $country = 1, $country = 2

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{"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}
Gdzie przed myślnikiem znajduje się nazwa usługi, a po oznaczeniu, czy konieczne jest przekierowanie. 0 – nie. 1 – tak.

Pełna lista usług

Zapytanie o najpopularniejsze kraje według usługi FreePrice
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getTopCountriesByService&service=$service&freePrice=$freePrice

Parametry:

$api_key - Klucz API

$service * - Usługa zobacz tabelę

* parametr opcjonalny. Jeśli nie zostanie określony, domyślnie wyświetlone zostaną najlepsze kraje dla wszystkich usług.

$freePrice * - parametr opcjonalny. Jeśli zostanie podany true, ilość i cena zostaną podane zgodnie z Free Price

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{ 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 } }, ... }
Sprawdzenie salda
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getBalance

Zapytanie o saldo z uwzględnieniem konta cashback:

https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getBalanceAndCashBack

* zwraca saldo z uwzględnieniem zgromadzonego cashbacku, jeśli w ustawieniach konta cashback zaznaczono pole „Wydawaj cashback na aktywacje”

Parametry:

$api_key - Klucz API

ODPOWIEDŹ:

ACCESS_BALANCE: „saldo konta”

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

ERROR_SQL - błąd serwera SQL

Zapytanie o dostępnych operatorów
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getOperators&country=$country

* zwraca wszystkich operatorów dostępnych dla przekazanego kraju; jeśli kraj nie został przekazany, zwróci wszystkich operatorów dostępnych dla każdego kraju

Parametry:

$api_key - Klucz API

$country - kod kraju

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON:

{"status":"success", "countryOperators": {
"Country1Code": ["operator1Name","operator2Name","operator3Name", ...],
"Country2Code": ["operator1Name","operator2Name","operator3Name", ...],
...
}}

Przykład:

{"status":"success", "countryOperators": {
"0": ["beeline","megafon","mts", ...],
"1": ["life","mts","kyivstar","utel" ...],
...
}}

* wewnątrz 'countryOperators' kluczem będzie kod kraju

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

ERROR_SQL - błąd serwera SQL

OPERATORS_NOT_FOUND - nie znaleziono rekordów (np. przekazano nieistniejący kraj)

Zapytanie o aktywne aktywacje
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getActiveActivations

Parametry:

$api_key - Klucz API

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie 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ŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

ERROR_SQL - błąd serwera SQL

NO_ACTIVATIONS - nie znaleziono wpisów (brak aktywnych aktywacji)

Zamów numer FreePrice
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getNumber&service=$service&forward=$forward&operator=$operator&ref=$ref&country=$country&phoneException=$phoneException&maxPrice=maxPrice&useCashBack=$useCashBack&activationType=$activationType&language=$language&userId=$userId

Parametry:

$api_key - Klucz API

$service - usługa do zamówienia zobacz tabelę

$forward * - czy należy zamówić numer z przekierowaniem

* parametr opcjonalny, przyjmuje wartości 0 (nie wykonuj, ustawione domyślnie), 1 (wykonaj)

$maxPrice * - maksymalna cena, za którą jesteś gotowy kupić numer w ramach Free Price

* parametr opcjonalny; jeśli nie zostanie określony, zakup zostanie dokonany po regularnej cenie

$phoneException * - wykluczenie prefiksów dla numerów rosyjskich. Wprowadzaj oddzielone przecinkami. Format zapisu: kod kraju i od 3 do 6 cyfr maski (np. 7918, 7900111). Domyślną wartością jest wartość określona w koncie.

$operator* to operator komórkowy numeru, możesz podać kilku z nich oddzielonych przecinkami (dostępne tylko dla **)

$activationType - typ aktywacji: 0 - z SMS (domyślnie), 1 - z numerem, 2 - z połączeniem głosowym

$language - język parsowania (wymagany przy aktywacji głosowej) zobacz tabelę

$userId * - ID użytkownika do zbanowania za słabe statystyki aktywacji, ale konto samego resellera nie jest objęte tym ograniczeniem.

Rosja
megafon, mts, beeline, tele2, rostelecom, any
Ukraina
kyivstar, life, utel, mts, vodafone
Kazachstan
tele2, beeline, activ, altel

* pole opcjonalne

** dostępne dla $country = 0, $country = 1, $country = 2

$ref - przekaż ID referencyjne.

$country - numer kraju zobacz tabelę

$useCashBack* - przyjmuje wartość logiczną; jeśli parametr ma wartość 'true', zakup numeru zostanie sfinansowany ze środków cashback. Po wyczerpaniu środków na koncie cashback wszystkie kolejne zakupy będą realizowane z głównego salda. WAŻNE jest pamiętanie, że wszystkie kolejne zakupy będą najpierw korzystały z cashbacku, a dopiero potem z głównego salda (nawet jeśli później przekażesz parametr 'false').

* parametr opcjonalny, akceptuje wartość 'true'

Zamawiając numer przez API, zgadzasz się z zasady projektu zasady projektu

MOŻLIWE BŁĘDY:

WRONG_MAX_PRICE:$min- określona maksymalna cena jest niższa niż dozwolona

$min - minimalna dopuszczalna cena

BAD_ACTION - nieprawidłowa akcja

BAD_SERVICE - nieprawidłowa nazwa usługi

BAD_KEY - nieprawidłowy klucz API

ERROR_SQL - błąd serwera SQL

BANNED:'YYYY-m-d H-i-s' - czas, na który konto jest zablokowane

WRONG_EXCEPTION_PHONE - nieprawidłowe prefiksy wykluczeń

NO_BALANCE_FORWARD - niewystarczające środki na zakup przekierowania połączeń

CHANNELS_LIMIT - konto zablokowane

NO_NUMBERS - brak numerów

Jeśli spróbujesz uzyskać numer od konkretnego operatora, który nie działa w wybranym kraju lub nie obsługuje wybranej usługi, zwrócony zostanie numer pierwszego operatora spełniającego parametry zapytania

Żądanie numeru V2 FreePrice
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getNumberV2&service=$service&forward=$forward&operator=$operator&ref=$ref&country=$country&phoneException=$phoneException&maxPrice=maxPrice&activationType=$activationType&language=$language&userId=$userId

metoda działa podobnie do metody getNumber, przyjmuje te same parametry oraz dodatkowe opisane poniżej, ale zwraca dodatkowe informacje o aktywacji

Parametry:

$orderId- ID aktywacji z systemu resellera. Podczas zakupu dane te są porównywane z ID aktywacji i resellerem w naszym systemie. W ten sposób chcemy osiągnąć idempotentność (to samo zamówienie nie zostanie przetworzone ponownie).

ODPOWIEDŹ:

Jeśli żądanie zostanie pomyślnie przetworzone, odpowiedź będzie miała następujący format:

{
"activationId": 635468024,
"phoneNumber": "79584******",
"activationCost": "12.50",
"countryCode": "0",
"canGetAnotherSms": "1",
"activationTime": "2022-06-01 17:30:57",
"activationOperator": "mtt"
}

Jeśli spróbujesz uzyskać numer od konkretnego operatora, który nie działa w wybranym kraju lub nie obsługuje wybranej usługi, zwrócony zostanie numer pierwszego operatora spełniającego parametry zapytania

MOŻLIWE BŁĘDY:

ORDER_ALREADY_EXISTS- zamówienie zostało już utworzone

Webhooki

Gdy otrzymasz SMS na numer, jeśli w ustawieniach włączyłeś funkcję Webhooks, wyślemy informacje o SMS-ie na podane przez Ciebie adresy za pomocą żądania POST

ODPOWIEDŹ:

Format odpowiedzi będzie następujący:

{
"activationId": 635468024,
"service": "go",
"text": "Your sms text",
"code": "Your sms code",
"country": 0,
"receivedAt": "2022-06-01 17:30:57",
}

Podczas wysyłania żądania będziemy oczekiwać odpowiedzi od Twojego skryptu ze statusem HTTP 200. Jeśli Twój skrypt nie odpowie, wyślemy ponowne żądanie w ciągu 2 godzin, ale nie więcej niż 8 razy.

Możesz włączyć tę funkcjonalność w ustawieniach profilu

Zamawianie wirtualnego numeru dla kilku usług
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getMultiServiceNumber&multiService=$service&multiForward=$forward&operator=$operator&ref=$ref&country=$country

Parametry:

$api_key - Klucz API

$service - usługa do zamówienia zobacz tabelę

$forward * - czy należy zamówić numer z przekierowaniem

* parametr opcjonalny, znaki przekierowania są oddzielone przecinkami, liczba cyfr przekierowania musi odpowiadać liczbie usług przekazanych w parametrze $service. Dozwolone jest przekazanie tylko 1 usługi z przekierowaniem, np. „0,1,0,0” – poprawnie, „0,1,1,0” – niepoprawnie. Przyjmuje wartości 0 (nie wykonuj, domyślnie), 1 (wykonaj)

$operator * - operator sieci komórkowej numeru, możesz podać kilka numerów oddzielonych przecinkami (dostępne tylko dla **):

Rosja
megafon, mts, beeline, tele2, rostelecom, any
Ukraina
kyivstar, life, utel, mts, vodafone
Kazachstan
tele2, beeline, activ, altel

$ref - przekaż ID referencyjne.

$country - numer kraju zobacz tabelę

Zamawiając numer przez API, zgadzasz się z zasady projektu zasady projektu

ODPOWIEDŹ:

NO_NUMBERS - brak numerów

NO_BALANCE - brak środków na koncie

{{'phone':phone,'activation':activation,'service':service},
{'phone':phone,'activation':activation,'service':service}}
, gdzie (phone - ID operacji, activation - Numer telefonu, service - Usługa)

MOŻLIWE BŁĘDY:

BAD_ACTION - nieprawidłowa akcja

BAD_SERVICE - nieprawidłowa nazwa usługi

BAD_KEY - nieprawidłowy klucz API

ERROR_SQL - błąd serwera SQL

BANNED:'YYYY-m-d H-i-s' - czas, na który konto jest zablokowane

Zmiana statusu aktywacji
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=setStatus&status=$status&id=$id&forward=$forward

Parametry:

$api_key - Klucz API

$id - ID aktywacji

$forward * - numer telefonu, na który chcesz przekierować

* wymagane tylko jeśli parametr został przekazany z getNumber forward=1.

$status - status aktywacji

1 - powiadom o dostępności numeru (SMS wysłany na numer)

3 - poproś o kolejny kod (bezpłatnie)

6 - zakończ aktywację *

8 - zgłoś fakt, że numer został już użyty i anuluj aktywację

* jeśli był status 'kod otrzymany' - oznacza go jako pomyślny i kończy, jeśli był 'przygotowanie' - usuwa i oznacza błąd, jeśli był status 'oczekiwanie na ponowienie' - przenosi aktywację do oczekujących SMS-ów

** Nie można zmienić statusu aktywacji, dla której wybrano metodę weryfikacji poprzez połączenie, jeśli numer już dotarł

Prosta logika chronologii pracy z API:

Pobranie numeru za pomocą metody getNumber, następnie dostępne są następujące działania:

8 - anuluj aktywację (jeśli numer Ci nie odpowiada)

1 - poinformuj, że SMS został wysłany (opcjonalnie)

Dla aktywacji ze statusem 1:

8 - anuluj aktywację

Natychmiast po otrzymaniu kodu:

3 - poproś o kolejny SMS

6 - potwierdź kod SMS i zakończ aktywację

Dla aktywacji ze statusem 3:

6 - potwierdź kod SMS i zakończ aktywację

ODPOWIEDŹ:

ACCESS_READY - gotowość numerów potwierdzona

ACCESS_RETRY_GET - oczekiwanie na nowy SMS

ACCESS_ACTIVATION - usługa została pomyślnie aktywowana

ACCESS_CANCEL - aktywacja anulowana

MOŻLIWE BŁĘDY:

EARLY_CANCEL_DENIED - anulowanie numeru w ciągu pierwszych 2 minut jest niedozwolone

ERROR_SQL - błąd serwera SQL

NO_ACTIVATION - identyfikator aktywacji nie istnieje

BAD_SERVICE - nieprawidłowa nazwa usługi

BAD_STATUS - nieprawidłowy status

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

WRONG_ACTIVATION_ID - nieprawidłowy ID lub ID nie jest liczbą.

Pobierz status aktywacji
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getStatus&id=$id

Parametry:

$api_key - Klucz API

$id - ID aktywacji

ODPOWIEDŹ:

STATUS_WAIT_CODE - oczekiwanie na SMS

STATUS_WAIT_RETRY: 'przeszły, niedopasowany kod' - oczekiwanie na wyjaśnienie kodu

STATUS_WAIT_RESEND - oczekiwanie na ponowne wysłanie SMS *

* oprogramowanie musi nacisnąć przycisk ponownego wysłania SMS i zmienić status na 6

STATUS_CANCEL - aktywacja anulowana

STATUS_OK: 'kod aktywacyjny' - kod otrzymany

MOŻLIWE BŁĘDY:

NO_ACTIVATION - identyfikator aktywacji nie istnieje

ERROR_SQL - błąd serwera SQL

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

Pobierz status aktywacji Wersja 2
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getStatusV2&id=$id

Parametry:

$api_key - Klucz API

$id - ID aktywacji

ODPOWIEDŹ:

Format odpowiedzi będzie następujący:

{
"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 - aktywacja anulowana

MOŻLIWE BŁĘDY:

NO_ACTIVATION - identyfikator aktywacji nie istnieje

ERROR_SQL - błąd serwera SQL

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

Pobierz historię aktywacji
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getHistory&start=$start&end=$end&offset=$offset&limit=$limit

Parametry:

$api_key - Klucz API

$start - znacznik czasu w formacie Unix Timestamp (opcjonalnie) - od jakiej daty uwzględniać aktywacje

$end - znacznik czasu w formacie Unix Timestamp (opcjonalnie) - do jakiej daty uwzględniać aktywacje

$offset - przesunięcie pierwszego elementu zwracanego w odpowiedzi. Domyślnie 0

$limit - maksymalna liczba zwracanych rekordów. Maksimum to 100. Domyślnie 50.

ODPOWIEDŹ:

Format odpowiedzi będzie następujący:

[{
"id": 635468024,
"date": "2022-11-12 15:58:39",
"phone": "79918529716",
"sms": "sms":"["Your sms code"]",
"cost": 100 //Если активация не завершена, то cost = 0,
"status": "4",
}]

MOŻLIWE BŁĘDY:

ERROR_SQL - błąd serwera SQL

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

Pobierz TOP 10 krajów dla danej usługi
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getListOfTopCountriesByService&service=$service

Parametry:

$api_key - Klucz API

$service - nazwa usługi

ODPOWIEDŹ:

Format odpowiedzi będzie następujący:

[{
"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ŻLIWE BŁĘDY:

ERROR_SQL - błąd serwera SQL

BAD_KEY - nieprawidłowy klucz API

WRONG_SERVICE - nieprawidłowa usługa

BAD_ACTION - nieprawidłowa akcja

Pobierz status połączenia przychodzącego
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getIncomingCallStatus&activationId=$id

Parametry:

$api_key - Klucz API

$id - ID aktywacji

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{"status":"2","phone":false}

MOŻLIWE STATUSY:

2 - nowa aktywacja

3 - pomyślnie zakończona

4 - anulowana

5 - zwrócona

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

NIEPRAWIDŁOWY_ID_AKTYWACJI - Nieprawidłowy identyfikator aktywacji

Pobierz aktualne ceny według kraju
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getPrices&service=$service&country=$country

Parametry:

$api_key - Klucz API

$serviceKrótka nazwa usługi (opcjonalnie, domyślnie wszystkie usługi) zobacz tabelę

$countryNazwa kodu kraju (opcjonalnie, domyślnie wszystkie kraje) zobacz tabelę

ODPOWIEDŹ:

JSON - obiekt w formacie
{"Kraj":{"Usługa":{"koszt":Koszt,"ilość":Ilość}}}

Pobierz aktualne ceny usług weryfikacyjnych
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getPricesVerification&service=$service

Parametry:

$api_key - Klucz API

$serviceKrótka nazwa usługi (opcjonalnie, domyślnie wszystkie usługi) zobacz tabelę

ODPOWIEDŹ:

JSON - obiekt w formacie
{"Usługa":{"Kraj":{"ilość":Ilość,"cena":"Cena"}}}

Pobierz listę wszystkich krajów
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getCountries

Parametry:

$api_key - Klucz API

ODPOWIEDŹ:

JSON - obiekt w formacie {{'Страна':{'id':0,'rus':"Россия","eng:"Russia","chn":"俄罗斯","visible":1,"retry":1,"rent":1,"multiService":1}},

gdzie (

id : ID kraju;

rus : nazwa kraju w języku rosyjskim;

eng : nazwa kraju w języku angielskim;

chn : nazwa kraju w języku chińskim;

visible : 0 - kraj nie jest wyświetlany na stronie, 1 - wyświetlany;

retry : 0 - ponowne wysłanie SMS niedostępne, 1 - dostępne;

rent : 0 - kraj nie dostępny do wynajęcia, 1 - dostępny;

multiService : 0 - kraj NIE jest dostępny dla usług wieloservice, 1 - dostępny.)

Pobierz listę wszystkich usług
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getServicesList

Parametry:

$api_key- Klucz API

$country *- ID kraju. Jeśli podano kraj, zwracamy usługi, które mają cenę dla wybranego kraju

$lang *- język, w którym ma być podana `name`. Możliwe wartości: 'ru', 'en', 'es', 'cn'. Domyślnie 'en'

* parametr opcjonalny

ODPOWIEDŹ:

JSON - obiekt w formacie { "status": "success", "services": [ { "code": "aoo", "name": "Pegasus Airlines" } ] }

Dodatkowa usługa dla numerów z przekierowaniem

Po otrzymaniu pierwszego SMS-a dla numerów przekierowanych możesz kupić inne powiązane usługi, takie jak Yula, Yandex, Avito lub dowolne inne

Koszt dodatkowej usługi to tylko 5 gr

https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getAdditionalService&service=$service&id=$id

Parametry:

$api_key - Klucz API

$service - krótką nazwę usługi znajdziesz w tabeli zobacz tabelę

$id - ID aktywacji nadrzędnej

ODPOWIEDŹ:

DODATKOWA:$id:$telefon - nowa aktywacja została pomyślnie utworzona. Gdzie ID to identyfikator dodatkowej aktywacji, a telefon to numer telefonu

MOŻLIWE BŁĘDY:

BŁĘDNA_DODATKOWA_USŁUGA - Nieprawidłowa dodatkowa usługa (dozwolone są tylko usługi przekierowania)

WRONG_ACTIVATION_ID - Nieprawidłowy identyfikator aktywacji nadrzędnej

BŁĄD_BEZPIECZEŃSTWA - wystąpił błąd podczas próby przesłania identyfikatora aktywacji bez przekierowania lub zakończonej/nieaktywnej aktywacji

PONÓW_DODATKOWĄ_USŁUGĘ - błąd występuje przy próbie ponownego zamówienia już zakupionej usługi BRAK_SALDA - Niewystarczające środki

ERROR_SQL- błąd bazy danych, skontaktuj się z obsługą klienta

Reaktywacja wirtualnego numeru

Jeśli udało Ci się pomyślnie aktywować numer, możesz zrobić to ponownie.

Koszt dodatkowej aktywacji zależy od kraju i usługi. Szczegółowy koszt można uzyskać z .

https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getExtraActivation&activationId=$activationId

Parametry:

$api_key - Klucz API

$activationId - ID aktywacji nadrzędnej

ODPOWIEDŹ:

DOSTĘP_DO_NUMERU:$id:$telefon - nowa aktywacja została pomyślnie utworzona. Gdzie $id to identyfikator dodatkowej aktywacji, a $telefon to numer telefonu

MOŻLIWE BŁĘDY:

REAKTYWACJA_NIEDOSTĘPNA- numer nie jest dostępny do dodatkowej aktywacji

WRONG_ACTIVATION_ID - Nieprawidłowy identyfikator aktywacji nadrzędnej

ERROR_SQL- błąd bazy danych, skontaktuj się z obsługą klienta

NOWA_AKTYWACJA_NIEMOŻLIWA- nie można wykonać dodatkowej aktywacji

NO_BALANCE - brak środków na koncie

Sprawdź cenę dodatkowej aktywacji numeru

Możesz sprawdzić dostępność numeru do dodatkowej aktywacji i poznać jego koszt

https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=checkExtraActivation&activationId=$activationId

Parametry:

$api_key - Klucz API

$activationId - ID aktywacji nadrzędnej

ODPOWIEDŹ:

JSON - obiekt w formacie {'status': 'success', 'cost':200,"service":"tw","phone":777777777,"country":14},

MOŻLIWE BŁĘDY:

REAKTYWACJA_NIEDOSTĘPNA- numer nie jest dostępny do dodatkowej aktywacji

WRONG_ACTIVATION_ID - Nieprawidłowy identyfikator aktywacji nadrzędnej

SIM_OFFLINE - Karta SIM offline

Ponowne parsowanie głosu
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=parseCall&id=$id&newLang=$newLang

Parametry:

$api_keyklucz API

$id - ID aktywacji

$newLang - nowy język parsowania zobacz tabelę

ODPOWIEDŹ:

Format odpowiedzi będzie następujący:

{
"result": "OK"
}

STATUS_CANCEL - aktywacja anulowana

BRAK_POŁĄCZENIA- nie otrzymano połączenia

PARSE_COUNT_EXCEED- przekroczono limit prób parsowania (maksymalnie 4)

MOŻLIWE BŁĘDY:

WRONG_ACTIVATION_ID - nieprawidłowy identyfikator, aktywacja nie istnieje

ERROR_SQL - błąd serwera SQL

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

API wynajmu

Zapytanie o dostępne kraje i usługi
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getRentServicesAndCountries&rent_time=$time&operator=$operator&country=$country&incomingCall=$incomingCall

Parametry:

$api_key - Klucz API

$time* - czas wynajmu (domyślnie: 4 godziny)

$operator* - operator sieci komórkowej numeru; można podać kilku operatorów oddzielonych przecinkami (domyślnie: Dowolny)

$country* - kraj (domyślnie: Rosja)

$incomingCall * - jeśli przekazano "true"uzyskaj numer obsługujący funkcję odbierania połączeń

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{ "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ŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

OUT_OF_STOCK - numery dla tego kraju są niedostępne

Zamów wynajem wirtualnego numeru
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getRentNumber&service=$service&rent_time=$time&operator=$operator&country=$country&url=$url&incomingCall=$incomingCall

Parametry:

$api_key - Klucz API

$service - usługa, dla której potrzebujesz numeru

$time* - czas wynajmu w godzinach (domyślnie: 4 godziny). Kolejne dostępne okresy to 12 godzin, a następnie 24 godziny. Przy zamawianiu wynajmu na dzień lub dłużej należy podać: 24, 48, 72 itd.

$operator* - operator sieci komórkowej numeru; można podać kilku operatorów oddzielonych przecinkami (domyślnie: Dowolny)

$country* - kraj (domyślnie: Rosja)

$url * - link do webhooka (domyślnie nie jest brany pod uwagę)

$incomingCall * - jeśli przekazano "true"uzyskaj numer obsługujący funkcję odbierania połączeń

Co to jest webHook?

* parametr opcjonalny. Jeśli nie zostanie określony, użyty zostanie domyślny parametr.

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564" } }

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

Odpowiedź w formacie JSON:

{ "status": "error", "message": "*possible_answer*" }


Możliwe odpowiedzi w polu "message":

BAD_SERVICE - nie określono usługi lub nazwa jest nieprawidłowa

NO_BALANCE - brak środków na koncie

NO_NUMBERS - brak numerów

ACCOUNT_INACTIVE - brak numerów

SERVER_ERROR - błąd serwera

CHANNELS_LIMIT - konto zablokowane

pobierz status wynajmu
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getRentStatus&id=$id&page=$page&size=$size

Parametry:

$api_key - Klucz API

$id - ID wynajmu otrzymane w odpowiedzi przy zamawianiu numeru

$page* - numer strony, od której rozpoczyna się wybór (numeracja stron zaczyna się od 0, od najnowszych do najstarszych; domyślnie 0)

$size* - rozmiar strony (domyślnie 10)

* parametr opcjonalny. Jeśli nie zostanie określony, użyty zostanie domyślny parametr.

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{ "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" } } }

* powodzenie tylko wtedy, gdy istnieje SMS (pole 'quantity' > 0).

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

Odpowiedź w formacie JSON:

{ "status": "error", "message": "*possible_answer*" }

Możliwe odpowiedzi w polu "message":

NO_ID_RENT - nie określono ID wynajmu

INVALID_PHONE - numer jest wynajmowany nie przez Ciebie (nieprawidłowy ID wynajmu)

STATUS_FINISH - wynajem opłacony i zakończony

STATUS_CANCEL - wynajem anulowany ze zwrotem środków

STATUS_WAIT_CODE - oczekiwanie na pierwszy SMS

STATUS_REVOKE - Numer został zablokowany, Twoje środki zostały zwrócone

Zmiana statusu wynajmu
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=setRentStatus&id=$id&status=$status

Parametry:

$api_key - Klucz API

$id - ID wynajmu otrzymane w odpowiedzi przy zamawianiu numeru

$status - kod do zmiany statusu (numeru)

Status może być:

1
Zakończ
2
Anuluj

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON:

{ "status": "success" }

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

Odpowiedź w formacie JSON:

{ "status": "error", "message": "*possible_answer*" }

Możliwe odpowiedzi w polu "message":

NO_ID_RENT - nie określono ID wynajmu

INCORECT_STATUS - brakujący lub nieprawidłowo określony status

CANT_CANCEL - nie można anulować wynajmu (minęło więcej niż 20 min.)

INVALID_PHONE - numer jest wynajmowany nie przez Ciebie (nieprawidłowy ID wynajmu)

ALREADY_FINISH - wynajem został już zakończony

ALREADY_CANCEL - wynajem został już anulowany

SERVER_ERROR - błąd serwera

Lista bieżących aktywacji
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getRentList

👉Uwaga! Ta metoda wyświetla tylko ostatnie 10 numerów. Jeśli potrzebujesz więcej numerów, użyj metody getRentStatus do sprawdzania statusów.

Parametry:

$api_key - Klucz API

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON:

{ "status": "success", "values": { "0": { "id": "12345", "phone": "79181234567" }, "1": { "id": "12345", "phone": "79181234568" } } }

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja


Odpowiedź w formacie JSON:

{ "status": "error", "message": "*possible_answer*" }


Możliwe odpowiedzi w polu "message":

NO_NUMBERS - brak wynajętych numerów

SERVER_ERROR - błąd serwera

Przedłuż swój wynajem
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=continueRentNumber&id=$id&rent_time=$time

Parametry:

$api_key - Klucz API

$id - id wynajmu

$rent_time- czas wynajmu (domyślnie: 4 godziny)

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON:

{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564"} }

Po przedłużeniu zakończonego wynajmu zostanie on ponownie zamówiony, a nowy id zostanie przydzielony

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

SERVER_ERROR - błąd serwera


Odpowiedź w formacie JSON:

{ "status": "error", "message": "*possible_answer*", "info": "*details*" }


Możliwe odpowiedzi w polu "message":

NO_ID_RENT - brak ID wynajmu

INVALID_TIME - nieprawidłowy czas. Dostępny czas od 4 do 1344 godzin

MAX_HOURS_EXCEED - Przekroczono maksymalny dostępny czas

info:

max - maksymalny dostępny czas

INVALID_PHONE - nieprawidłowy ID wynajmu

RENT_DIE - nie można przedłużyć wynajmu, ponieważ numer wygasł

NO_BALANCE - niewystarczające środki

CHANNELS_LIMIT - konto zablokowane

Pobierz koszt odnowienia wynajmu
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getContinueRentPriceNumber&id=$id&rent_time=$time

* ta metoda jest dostępna tylko przy wynajmie z operatorem MTT.

Parametry:

$api_key - Klucz API

$id - id wynajmu

$rent_time - czas wynajmu

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON:

{ "status": "success", "price": 6.33 }

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

SERVER_ERROR - błąd serwera


Odpowiedź w formacie JSON:

{ "status": "error", "message": "*possible_answer*" }


Możliwe odpowiedzi w polu "message":

NO_ID_RENT - brak ID wynajmu

INVALID_PHONE - nieprawidłowy ID wynajmu

INVALID_TIME - nieprawidłowe ustawienie czasu

RENT_DIE - nie można przedłużyć wynajmu, ponieważ numer wygasł

MAX_HOURS_EXCEED - Przekroczono maksymalny dostępny czas

info:

max - maksymalny dostępny czas

CHANNELS_LIMIT - konto zablokowane

API JAVA

Rozpoczęcie pracy

Dołącz bibliotekę w Mavenie

<zależność><groupId>ru.sms-activate</groupId>
<artifactId>SMSActivateApi</artifactId>
<version>1.0</version>
</dependecy>

Przykład rejestracji możesz zobaczyć pod linkiem do MavenRepository

Zaimportuj główną klasę do interakcji z API SMS-Activate.

import ru.sms_activate.SMSActivateApi

Aby korzystać z biblioteki, potrzebny jest klucz API, który możesz uzyskać na tej stronie oraz pod poniższym linkiem.

Klucz API SMS-Activate
Przykład pracy z saldem

Aby sprawdzić aktualne saldo na koncie, użyj metody getBalance... Jeśli oprócz salda interesuje Cię także cashback, wywołaj metodę getBalanceAndCashBack.

Metoda getBalanceAndCashBack zwraca obiekt klasySMSActivateGetBalanceAndCashBack.

getBalance: Pobierz aktualne saldo konta

Parametry:

BRAK

TYP ZWRACANY:

BigDecimal

getBalanceAndCashBack: Pobierz saldo i kwotę cashbacku jako pełne saldo

Parametry:

BRAK

getNumber: Uzyskaj aktywację

Parametry:

countryId(Integer) - identyfikator kraju.

service(String) - krótka nazwa usługi.

forward*(boolean) - czy żądać numeru z przekierowaniem połączeń.

operatorSet*(Zbiór) - zbiór operatorów.

phoneException*(Zbiór) - wykluczenie prefiksów tylko dla Rosji, zbiór numerów od 3 do 6 cyfr (7918,7900111).

* pole opcjonalne. Jeśli nic nie zostanie określone, domyślna ilość zostanie przydzielona zgodnie z ustawieniami w profilu.

TYP ZWRACANY:

SMSActivateActivation

getNumberStatus: Pobierz informacje o dostępnych usługach

Parametry:

countryId(Integer) - identyfikator kraju.

operatorSet*(Zbiór) - zbiór operatorów dostępnych dla danej usługi

getAdditionalService: Zwraca dodatkową usługę dla numeru przekierowania połączeń.

Parametry:

id(Liczba całkowita) - identyfikator aktywacji

service(String) - krótka nazwa usługi.

Zamiast identyfikatora aktywacji można przekazać otrzymany obiekt klasy SMSActivateActivation po użyciu metody getNumber lub jedną z aktywacji po użyciu getMultiServiceNumber.

getMultiServiceNumber: Uzyskaj aktywację dla wielu usług

Parametry:

countryId(Integer) - identyfikator kraju.

serviceMap(Zbiór) - zbiór usług, dla których kupowana jest aktywacja

multiForwardList(Lista) - lista usług z dostępnym przekierowaniem połączeń

operatorSet(Zbiór) - zbiór operatorów.

getAllPrices: Pobierz pełną listę cen aktywacji

Parametry:

BRAK

TYP ZWRACANY:

SMSActivateGetPriceInfo

getPricesByCountryIdAndServiceShortName: Pobierz listę cen aktywacji według kraju i usługi

Parametry:

countryId(Integer) - identyfikator kraju.

service(String) - krótka nazwa usługi.

TYP ZWRACANY:

SMSActivateGetPriceInfo

getPricesAllServicesByCountryId: Pobierz listę cen aktywacji według kraju

Parametry:

countryId(Integer) - identyfikator kraju.

TYP ZWRACANY:

SMSActivateGetPriceInfo

getStatus: Pobierz status aktywacji

Parametry:

activationId(Liczba całkowita) - identyfikator aktywacji

Zamiast identyfikatora aktywacji można przekazać otrzymany obiekt klasy SMSActivateActivation po użyciu metody getNumber lub jedną z aktywacji po użyciu getMultiServiceNumber.

setStatus: Ustaw status aktywacji

Parametry:

id(Liczba całkowita) - identyfikator aktywacji

status(SMSActivateClientStatus) - status, który ma zostać ustawiony dla aktywacji

Zamiast identyfikatora aktywacji można przekazać otrzymany obiekt klasy SMSActivateActivation po użyciu metody getNumber lub jedną z aktywacji po użyciu getMultiServiceNumber.

getCountries: Pobierz informacje o krajach

Parametry:

BRAK

getFullSms: Pobierz pełny tekst SMS z numeru

Parametry:

activationId(Liczba całkowita) - identyfikator aktywacji

Zamiast identyfikatora aktywacji można przekazać otrzymany obiekt klasy SMSActivateActivation po użyciu metody getNumber lub jedną z aktywacji po użyciu getMultiServiceNumber.

Algorytm otrzymywania pełnego tekstu SMS podczas aktywacji

Pobranie numeru za pomocą metody getNumber, następnie dostępne są następujące działania:

CANCEL - 8 - Anuluj aktywację (jeśli numer Ci nie odpowiada)

MESSAGE_WAS_SENT – Informacja o wysłaniu SMS-a (wymagane do otrzymania pełnej treści wiadomości)

Po obowiązkowym ustawieniu statusu MESSAGE_WAS_SENT, skonfiguruj zmienną do odbioru SMS za pomocą metody waitSMS, podając parametry aktywacji oraz czas oczekiwania na wiadomość.

Po otrzymaniu SMS-a możesz pobrać go za pomocą metody getFullSMS, a następnie wyświetlić pełną treść, używając metody getText().

Następnie możesz ustawić następujące statusy aktywacji:

Aby aktywować ze statusem MESSAGE_WAS_SENT:

CANCEL – Anuluj aktywację

Natychmiast po otrzymaniu kodu:

REQUEST_ONE_MORE_CODE – Poproś o kolejny kod SMS

FINISH – Potwierdź kod SMS i zakończ aktywację

Aby aktywować ze statusem REQUEST_ONE_MORE_CODE:

FINISH – Potwierdź kod SMS i zakończ aktywację

getRentNumber: Pobierz numer z opcją wynajmu

Parametry:

countryId(Integer) - identyfikator kraju.

service(String) - krótka nazwa usługi.

hours (Integer)* – czas wynajmu

operator (String)* – nazwa operatora komórkowego

urlWebhook (String)* – link do webhooka (domyślnie nie jest brany pod uwagę)

Co to jest webHook?

* parametr opcjonalny. Jeśli nie zostanie określony, zostanie użyta wartość domyślna

GetRentServicesAndCountriesRun: Pobierz usługi i kraje dostępne do wynajmu

Parametry:

countryId(Integer) - identyfikator kraju.

operatorSet(Zbiór) - zestaw operatorów komórkowych

hours (Integer)* – czas wynajmu

* parametr opcjonalny. Jeśli nie zostanie określony, zostanie użyta wartość domyślna

GetRentStatusJava: Pobierz status wynajmu

Parametry:

rentId (Integer) - identyfikator wynajętego numeru

Zamiast rentId możesz przekazać obiekt klasy wynikowej SMSActivateRentActivation po użyciu metody getRentNumber

TYP ZWRACANY:

SMSActivateRentStatus

API e-mail

Opis statusów API

3 – Oczekiwanie

4 – Anulowano

5 – Sukces

Mail API Wersja 2

OPIS:

Ściślejsze przestrzeganie zasad REST API oraz zwiększona liczba skrzynek gmail.com do rejestracji kont na Telegramie.

Pobierz listę ofert
https://api.sms-activate.ai/stubs/handler_api.php?action=getDomains&api_key=$api_key&site=$site

Parametry:

$api_key - Klucz API

$site- Strona, dla której potrzebujesz adresu e-mail

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{
                        "status":"OK",
                        "response":{
                            "zones":[
                                {
                                "name":"info",
                                "cost":2.5
                                },
                                ...
                            ],
                            "popular":[
                                {
                                "name":"mail.ru",
                                "cost":6,
                                "count":159008
                                },
                                ...
                            ]
                        }
                        }

MOŻLIWE BŁĘDY:

BAD_SITE- Nie określono strony

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

Kup weryfikację przez e-mail
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=buyMailActivation&site=$site&mail_type=$mail_type&mail_domain=$mail_domain

Parametry:

$api_key - Klucz API

$site - strona, dla której potrzebujesz adresu e-mail

$mail_type - typ poczty: popularne domeny lub strefy (1 – strefy, 2 – popularne)

$mail_domain - wybrana strefa lub domena

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{
                        "status":"OK",
                        "response":{"email":"[email protected]","id":241}
                        }

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

MAIL_TYPE_ERROR - nie ma takiej domeny dla określonej witryny

CHANNELS_LIMIT - konto zablokowane

Ponowna aktywacja poczty
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=reorderMailActivation&id=$id

Parametry:

$api_key - Klucz API

$id- Identyfikator wiadomości e-mail, dla której wymagana jest ponowna aktywacja

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{
                            "status": "OK",
                        "response": {
                            "email": "[email protected]",
                            "id": 360
                            }
                        }

MOŻLIWE BŁĘDY:

BAD_KEY - nieprawidłowy klucz API

BAD_ACTION - nieprawidłowa akcja

BLOCKED_SITE - zablokowana strona internetowa

BAD_BALANCE - niewystarczające środki

ACTIVATION_NOT_FOUND - nie znaleziono aktywacji

CHANNELS_LIMIT - konto zablokowane

Pobierz listę aktywnych zakupów
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getMailHistory&page=$page&per_page=$per_page&search=$search&sort=$sort

Parametry:

$api_key - Klucz API

$page- numer strony

$per_page- liczba zakupów na każdej stronie

$search- pasek wyszukiwania

$sort- kierunek sortowania (desc, asc)

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{
                        "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
                        }
                        }
Anuluj zakup e-maila
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=cancelMailActivation&id=$id

Parametry:

$api_key - Klucz API

$id- identyfikator zakupu

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{
                        "status":"OK",
                        "response":true
                        }

MOŻLIWE BŁĘDY:

EARLY_CANCEL_DENIED - Nie można anulować poczty przez pierwsze 2 minuty.

Sprawdź, czy e-mail został odebrany
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=checkMailActivation&id=$id

Parametry:

$api_key - Klucz API

$id- identyfikator zakupionego adresu e-mail, zwracany po dokonaniu zakupu

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{
                        "status":"OK",
                        "response":{
                            "value":"Содержания письма"
                        }
                        }

Oprogramowanie dla partnerów API

Kup oprogramowanie partnerskie
https://api.sms-activate.ai/stubs/handler_api.php?action=buyPartnerProduct&productId=$id&api_key=$api_key

Parametry:

$api_key - Klucz API

$id- Identyfikator oprogramowania, które chcesz kupić

ODPOWIEDŹ:

Odpowiedź usługi będzie w formacie JSON, przykład:

{                            
                            "status": "success",
                            "key": "F5qrzFoY6afj3zrEq7SeMplbx",
                            "manual": "Software download link:"                            
                        }

MOŻLIWE BŁĘDY:

BAD_DATA - Nieprawidłowy identyfikator lub identyfikator nie jest liczbą

BAD_ACTION - nieprawidłowa akcja lub sprzedawca detaliczny nie jest zweryfikowany.

                        <?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.wiki 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

{{ texts.verificationVoiceTextFirst }}

{{ texts.verificationVoiceTextSecond }}

{{ texts.verificationVoiceTextThird }}