1/4
Для получения виртуального номера пополните баланс личного кабинета. Нажмите на «0.00 ₽» в правой верхней части сайта.

API протокол для работы с SMS-Activate

API - это протокол взаимодействия между вашим ПО и нашим сервером активаций.

API нужен для того, чтобы автоматизировать процесс получение смс сообщений на вашей стороне

Наше API полностью совместимо с сайтами конкурентов

Все запросы должны идти на https://api.sms-activate.org/stubs/handler_api.php

POST или GET запросом.

Во всех запросах должен присутствовать API ключ в виде параметра api_key

Скачать готовую реализацию протокола на php Скачать готовую реализацию протокола на Python

API Активаций

Запрос количества доступных номеров
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getNumbersStatus&country=$country&operator=$operator

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$country * - страна номера смотрите таблицу

* необязательное поле. Если не указано, то по умолчанию будет выдано количество в соответствии с настройкой в левом меню.

$operator * - сотовый оператор номера, можно указывать несколько через запятую (доступно только для **):

Россия
megafon, mts, beeline, tele2, rostelecom, any
Украина
kyivstar, life, utel, mts, vodafone
Казахстан
tele2, beeline, activ, altel

** доступно для $country = 0, $country = 1, $country = 2

ОТВЕТ:

Ответ сервиса будет в json формате. Пример:

{"vk_0":76,"ok_0":139,"wa_0":90,"vi_0":223,"tg_0":158,"wb_0":106,"go_0":182,"av_0":244,"av_1":211,"fb_0":107}
Где до черточки - название сервиса, после обозначение нужно ли включать переадресацию. 0 - нет. 1 - да.

Полный список сервисов

Запрос топ стран по сервису
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getTopCountriesByService&service=$service&freePrice=$freePrice

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$service * - сервис смотрите таблицу

* необязательный параметр. Если не указано, то по умолчанию будет выданы топ страны по всем сервисам.

$freePrice * - необязательный параметр. Если true, количество и цена будет передано в соответствии с Free Price **:

ОТВЕТ:

Ответ сервиса будет в json формате. Пример:

{ 0: { "freePriceMap": { "15.00": 43242, "18.00": 333 }, "country: 0, "count": 43575, "price": 15.00 }... }
Запрос баланса
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getBalance

Запрос баланса с кэшбэк-счетом:

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

* возвращает баланс с учётом накопленного кэшбэка, если установлена галочка в настройках кэшбэк-счёта 'Тратить кэшбэк на активации'

ПАРАМЕТРЫ:

$api_key - ключ АПИ

ОТВЕТ:

ACCESS_BALANCE:'баланс на счету'

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

ERROR_SQL - ошибка SQL-сервера

Запрос доступных операторов
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getOperators&country=$country

* возвращает всех операторов доступных по переданной стране, если страна не передана - вернет всех операторов доступных по каждой стране

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$country - код страны

ОТВЕТ:

Ответ сервиса будет в json формате:

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

Пример:

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

* внутри 'countryOperators' - ключом будет код страны

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

ERROR_SQL - ошибка SQL-сервера

OPERATORS_NOT_FOUND - записи не найдены (например передана несуществующая страна)

Запрос активных активаций
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getActiveActivations

ПАРАМЕТРЫ:

$api_key - ключ АПИ

ОТВЕТ:

Ответ сервиса будет в json формате:

{"status":"success", "activeActivations": [
{
"activationId" : "635468021",
"serviceCode" : "vk",
"phoneNumber" : "79********1",
"activationCost" : "12.50",
"activationStatus" : "4",
"smsCode" : "CODE",
"smsText" : "Ваш код для регистрации CODE",
"activationTime" : "2022-06-01 16:59:16",
"discount" : "0.00",
"repeated" : "0",
"countryCode" : "0",
"countryName" : "Russia",
"canGetAnotherSms" : "1",
}]

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

ERROR_SQL - ошибка SQL-сервера

NO_ACTIVATIONS - записи не найдены (нет активных активаций)

Запрос номера
https://sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getNumber&service=$service&forward=$forward&operator=$operator&ref=$ref&country=$country&phoneException=$phoneException&freePrice=$freePrice&maxPrice=maxPrice&verification=$verification

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$service - сервис для заказа смотрите таблицу

$forward * - необходимо ли запросить номер с переадресацией

$freePrice * - купить номер с использованием Free Price.

* необязательный параметр, принимает  true(использовать Free Price). Также нужно передавать параметр $maxPrice

$maxPrice * - указать максимальную цену, по который вы готовы купить номер по Free Price.

* необязательный параметр, указывается только если $freePrice = true

$phoneException * - исключающие префиксы для номеров России. Указывать через запятую. Формат записи: код страны и от 3 до 6 цифр маски ( например 7918,7900111). По умолчанию берётся значение, заданное в левом меню.

* необязательный параметр, принимает 0 (не выполнять , установлено по умолчанию), 1 (выполнять)

$operator * - сотовый оператор номера, можно указывать несколько через запятую (доступно только для **):

$verification * - Если передано true, получить номер с возможностью приема звонка (при передаче параметра $verification параметры $multiService и $freePrice не работают)

Россия
megafon, mts, beeline, tele2, rostelecom, any
Украина
kyivstar, life, utel, mts, vodafone
Казахстан
tele2, beeline, activ, altel

* необязательное поле. Если не указано, то по умолчанию будет выдано количество в соответствии с настройкой в левом меню.

** доступно для $country = 0, $country = 1, $country = 2

$ref - передать реферальный идентификатор. Подробнее

$country - страна номера смотрите таблицу

Получая номер через API Вы подтверждаете согласие с правилами проекта

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_ACTION - некорректное действие

BAD_SERVICE - некорректное наименование сервиса

BAD_KEY - неверный API-ключ

ERROR_SQL - ошибка SQL-сервера

BANNED:'YYYY-m-d H-i-s' - время на которое аккаунт заблокирован

WRONG_EXCEPTION_PHONE - некорректные исключающие префиксы

NO_BALANCE_FORWARD - недостаточно средств для покупки переадресации

Запрос номера V2
https://sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getNumberV2&service=$service&forward=$forward&operator=$operator&ref=$ref&country=$country&phoneException=$phoneException&freePrice=$freePrice&maxPrice=maxPrice&verification=$verification

action = getNumberV2

Метод работает аналогично методу getNumber, принимает те же параметры, но возвращает дополнительную информацию об активации

ОТВЕТ:

При успешном запросе ответ будет в формате:

{
"activationId": 635468024,
"phoneNumber": "79584******",
"activationCost": "12.50",
"countryCode": "0",
"canGetAnotherSms": "1",
"activationTime": "2022-06-01 17:30:57",
"activationOperator": "mtt"
}
Заказ номера для нескольких сервисов
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getMultiServiceNumber&multiService=$service&multiForward=$forward&operator=$operator&ref=$ref&country=$country

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$service - сервис для заказа смотрите таблицу

$forward * - необходимо ли запросить номер с переадресацией

* необязательный параметр, символы переадресации указываются через запятую, количество цифр переадресации должно совпадать с количеством передаваемых сервисов в параметре $service Допустимо передавать только 1 сервис с переадресацией, например "0,1,0,0" - корректно, "0,1,1,0" - некорректно. Принимает 0 (не выполнять , установлено по умолчанию), 1 (выполнять)

$operator * - сотовый оператор номера, можно указывать несколько через запятую (доступно только для **):

Россия
megafon, mts, beeline, tele2, rostelecom, any
Украина
kyivstar, life, utel, mts, vodafone
Казахстан
tele2, beeline, activ, altel

* необязательное поле. Если не указано, то по умолчанию будет выдано количество в соответствии с настройкой в левом меню.

$ref - передать реферальный идентификатор. Подробнее

$country - страна номера смотрите таблицу

Получая номер через API Вы подтверждаете согласие с правилами проекта

ОТВЕТ:

NO_NUMBERS - нет номеров

NO_BALANCE - закончился баланс

{{'phone':phone,'activation':activation,'service':service},
{'phone':phone,'activation':activation,'service':service}}
, где (phone - id операции, activation - номер телефона, service - сервис)

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_ACTION - некорректное действие

BAD_SERVICE - некорректное наименование сервиса

BAD_KEY - неверный API-ключ

ERROR_SQL - ошибка SQL-сервера

BANNED:'YYYY-m-d H-i-s' - время на которое аккаунт заблокирован

Изменение статуса активации
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=setStatus&status=$status&id=$id&forward=$forward

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$id - id активации

$forward * - номер телефона на который нужно выполнить переадресацию

* обязательно, только если при getNumber был передан параметр forward=1.

$status - статус активации

1 сообщить о готовности номера (смс на номер отправлено)

3 запросить еще один код (бесплатно)

6 завершить активацию *

8 сообщить о том, что номер использован и отменить активацию

* если был статус 'код получен' - помечает успешно и завершает, если был 'подготовка' - удаляет и помечает ошибка, если был статус 'ожидает повтора' - переводит активацию в ожидание смс

** Изменить статус активации для которой был выбран метод верификации по звонку, невозможно, если номер уже пришел

Простая логика хронологии работы с апи:

Получить номер используя метод getNumber после этого доступны следующие действия:

8 - Отменить активацию (если номер Вам не подошел)

1 - Сообщить, что SMS отправлена (необязательно)

Для активации со статусом 1:

8 - Отменить активацию

Сразу после получения кода:

3 - Запросить еще одну смс

6 - Подтвердить SMS-код и завершить активацию

Для активации со статусом 3:

6 - Подтвердить SMS-код и завершить активацию

ОТВЕТ:

ACCESS_READY - готовность номера подтверждена

ACCESS_RETRY_GET - ожидание нового смс

ACCESS_ACTIVATION - сервис успешно активирован

ACCESS_CANCEL - активация отменена

ВОЗМОЖНЫЕ ОШИБКИ:

ERROR_SQL - ошибка SQL-сервера

NO_ACTIVATION - id активации не существует

BAD_SERVICE - некорректное наименование сервиса

BAD_STATUS - некорректный статус

BAD_KEY - неверный API-ключ

BAD_ACTION - некорректное действие

Получить состояние активации
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getStatus&id=$id

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$id - id активации

ОТВЕТ:

STATUS_WAIT_CODE - ожидание смс

STATUS_WAIT_RETRY:'прошлый, неподошедший код' - ожидание уточнения кода

STATUS_WAIT_RESEND - ожидание повторной отправки смс *

* софт должен нажать повторно выслать смс и выполнить изменение статуса на  6

STATUS_CANCEL - активация отменена

STATUS_OK: 'код активации' - код получен

ВОЗМОЖНЫЕ ОШИБКИ:

NO_ACTIVATION - id активации не существует

ERROR_SQL - ошибка SQL-сервера

BAD_KEY - неверный API-ключ

BAD_ACTION - некорректное действие

Получить статус входящего звонка
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getIncomingCallStatus&activationId=$id

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$id - id активации

ОТВЕТ:

Ответ сервиса будет в json формате. Пример:

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

Возможные статусы:

2 новая активация

3 успешно закрыта

4 отменена

5 возвращена

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

INVALID_ACTIVATION_ID - неверный id активации

Получить актуальные цены по странам
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getPrices&service=$service&country=$country

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$service - краткое наименование сервиса (необязательно, по умолчанию все сервисы) смотрите таблицу

$country - кодовое наименование страны (необязательно, по умолчанию все страны) смотрите таблицу

ОТВЕТ:

JSON - объект в формате
{"Страна":{"Сервис":{"cost":Стоимость,"count":Количество}}}

Получить актуальные цены по сервисам для верификации
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getPricesVerification&service=$service

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$service - краткое наименование сервиса (необязательно, по умолчанию все сервисы) смотрите таблицу

ОТВЕТ:

JSON - объект в формате
{"Сервис":{"Страна":{"count":Количество,"price":"Цена"}}}

Получить список всех стран
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getCountries

ПАРАМЕТРЫ:

$api_key - ключ АПИ

ОТВЕТ:

JSON - объект в формате {{'Страна':{'id':0,'rus':"Россия","eng:"Russia","chn":"俄罗斯","visible":1,"retry":1,"rent":1,"multiService":1}},

где (

id : id страны;

rus : наименование страны на русском;

eng : наименование страны на английском;

chn : наименование страны на китайском;

visible : 0 - страна не отображается на сайте, 1 - отображается;

retry : 0 - повторная смс НЕ доступна, 1 - доступна;

rent : 0-страны нет в аренде, 1 - есть в аренде;

multiService : 0-страна НЕ доступна для мультисервиса, 1- доступна.)

Дополнительный сервис для номеров с переадресацией

Получив первую смс для номеров с переадресацией можно докупить другие смежные сервисы такие как Юла, Яндекс, Авито, Любой другой

Стоимость дополнительного сервиса составляет всего 5р

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

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$service - краткое наименование сервиса смотрите таблицу

$id - ID родительской активации

ОТВЕТ:

ADDITIONAL:$id:$phone - Успешно создалась новая активация. Где ID - ID дополнительной активации, phone - номер телефона

ВОЗМОЖНЫЕ ОШИБКИ:

WRONG_ADDITIONAL_SERVICE - Неверный дополнительный сервис (допустимы только сервисы для переадресации)

WRONG_ACTIVATION_ID - Неверный ID родительской активации

WRONG_SECURITY - Ошибка при попытке передать ID активации без переадресации, или же завершенной/не активной активации

REPEAT_ADDITIONAL_SERVICE - Ошибка возникает при попытке заказать купленный сервис еще раз NO_BALANCE - Не хватает средств

ERROR_SQL - Ошибка базы данных, обратитесь в поддержку

Дополнительная активация номера

Если вы совершили успешную активацию на номере, то вы можете совершить её повторно.

Стоимость дополнительной активации определяется в зависимости от страны и сервиса. Конкретную стоимость можно получить по этому запросу.

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

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$activationId - ID родительской активации

ОТВЕТ:

ACCESS_NUMBER:$id:$phone - Успешно создалась новая активация. Где $id - ID дополнительной активации, $phone - номер телефона

ВОЗМОЖНЫЕ ОШИБКИ:

RENEW_ACTIVATION_NOT_AVAILABLE - номер недоступен для дополнительной активации

WRONG_ACTIVATION_ID - Неверный ID родительской активации

ERROR_SQL - Ошибка базы данных, обратитесь в поддержку

NEW_ACTIVATION_IMPOSSIBLE - совершить дополнительную активацию невозможно

NO_BALANCE - нет денег на счету

Получить цену за дополнительную активацию номера

Вы можете узнать доступность номера для совершения дополнительной активации и получить её стоимость

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

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$activationId - ID родительской активации

ОТВЕТ:

JSON - объект в формате {'status': 'success', 'cost':200,"service":"tw","phone":777777777,"country":14},

ВОЗМОЖНЫЕ ОШИБКИ:

RENEW_ACTIVATION_NOT_AVAILABLE - номер недоступен для дополнительной активации

WRONG_ACTIVATION_ID - Неверный ID родительской активации

Позвонить на сервис

Вы можете заказать исходящий звонок с номера который получили для активации.

https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=createTaskForCall&activationId=$activationId&phone=$phone

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$activationId - ID активации

$phone - Номер на который необходимо совершить звонок

ОТВЕТ:

JSON - объект в формате {'status': 'success', 'msg':'Заявка на звонок успешно создана.'},

ВОЗМОЖНЫЕ ОШИБКИ:

CALL_TASK_ALREADY_EXIST - Заявка на звонок уже создана.

WRONG_ACTIVATION_ID - Неверный ID активации

NUMBER_NOT_EXIST - Номер, на который вы пытаетесь совершить звонок, не существует

Проверить статус исходящего звонка

После заказа исходящего звонка, вы можете проверить статус заявки (заявок). По умолчанию возвращаются заявки за текущий день

https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getOutgoingCalls&date=$date&activationId=$activationId

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$activationId - ID активации, необязательный параметр, если не передано - вернется список всех заявок

$date - Дата в формате 'ГГГГ-ММ-ДД', не обязательный параметр, если не передано - вернется список за текущий день

ОТВЕТ:

JSON - объект в формате {"958874106":{"date":"2022-07-29 16:03:23","phoneFrom":"79912556393","status":"IN_PROCESS"}},

API АРЕНДЫ

Запросить доступные страны и сервисы
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getRentServicesAndCountries&rent_time=$time&operator=$operator&country=$country

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$time * - время аренды

* необязательный параметр. Если не указано, то по умолчанию будет 4 часа.

$operator * - сотовый оператор номера, можно указывать несколько через запятую

$country * - страна (По умолчанию: Россия)

* необязательный параметр. Если не указано, то по умолчанию будет любой.

ОТВЕТ:

Ответ сервиса будет в json формате. Пример:

{ "countries": { "0": 0 }, "operators": { "0": "aiva", "1": "any", "2": "beeline", ... "16": "yota" }, "services": { "full": { "cost": 42.93, "quant": 20 }, "vk": { "cost": 21.95, "quant": 20 }, "ok": { "cost": 7.68, "quant": 55 }, "ot": { "cost": 5.2, "quant": 42 } } }

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

Заказ номера для Аренды
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getRentNumber&service=$service&rent_time=$time&operator=$operator&country=$country&url=$url

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$service - сервис на который необходимо получить номер

$time * - время аренды в часах (По умолчанию: 4 часа). Следующий доступный временной период 12 часов, далее 24 часа. При запросе аренды на сутки и более, необходимо передавать: 24, 48, 72 и т.д.

$operator * - сотовый оператор номера, можно указывать несколько через запятую (По умолчанию: Любой)

$country * - страна (По умолчанию: Россия)

$url * - ссылка для webhook (По умолчанию не учитывается)

Что такое webHook?

* необязательный параметр. Если не указано, то будет использован параметр по умолчанию.

ОТВЕТ:

Ответ сервиса будет в json формате. Пример:

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

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

Ответ в json формате:

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

Возможные ответы в поле "message":

BAD_SERVICE - сервис не указан или название неверно

NO_BALANCE - нет денег на счету

NO_NUMBERS - свободных номеров нет

ACCOUNT_INACTIVE - свободных номеров нет

SQL_ERROR - ошибка sql сервера

Получить статус для Аренды
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getRentStatus&id=$id

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$id - id аренды, полученный в ответе при заказе номера

ОТВЕТ:

Ответ сервиса будет в json формате. Пример:

{ "status": "success", "quantity": "2", "values": { "0": { "phoneFrom": "79180230628", "text": "5", "service": "ot", "date": "2020-01-30 14:31:58" }, "1": { "phoneFrom": "79180230628", "text": "4", "service": "ot", "date": "2020-01-30 14:04:16" } } }

* успешно только в случае, когда есть смс ( поле 'quantity' > 0).

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

Ответ в json формате:

{ "status": "error", "message": "*possible_answer*" }
Возможные ответы в поле "message":

NO_ID_RENT - не указан id Аренды

INVALID_PHONE - номер арендован не вами (неправильный id аренды)

STATUS_FINISH - аренда оплачена и завершена

STATUS_CANCEL - аренда отменена с возвратом денег

STATUS_WAIT_CODE - ожидание первой смс

Изменение статуса для Аренды
https://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=setRentStatus&id=$id&status=$status

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$id - id аренды, полученный в ответе при заказе номера

$status - код для смены статуса (число)

Статус может быть принимать значения:

1
Финиш
2
Отмена

ОТВЕТ:

Ответ сервиса будет в json формате:

{ "status": "success" }

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

Ответ в json формате:

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

Возможные ответы в поле "message":

NO_ID_RENT - не указан id Аренды

INCORECT_STATUS - отсутствует или неправильно указан статус

CANT_CANCEL - невозможно отменить аренду (более 20 мин.)

INVALID_PHONE - номер арендован не вами (неправильный id аренды)

ALREADY_FINISH - аренда уже завершена

ALREADY_CANCEL - аренда уже отменена

SQL_ERROR - ошибка sql сервера

Вывести список текущих активаций
http://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getRentList

ПАРАМЕТРЫ:

$api_key - ключ АПИ

ОТВЕТ:

Ответ сервиса будет в json формате:

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

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

BAD_ACTION - некорректное действие


Ответ в json формате:

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


Возможные ответы в поле "message":

NO_NUMBERS - арендованных номеров нет

SQL_ERROR - ошибка sql сервера

Продлить аренду
http://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=continueRentNumber&id=$id&rent_time=$time

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$id - id аренды

$api_key - время аренды(По умолчанию 4 часа)

* необязательный параметр. Если не указано, то будет использован параметр по умолчанию.

ОТВЕТ:

Ответ сервиса будет в json формате:

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

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

BAD_ACTION - некорректное действие


Ответ в json формате:

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


Возможные ответы в поле "message":

NO_ID_RENT - отсутствует id аренды

INVALID_TIME - неверное время. Доступное количество часов от 4 до 1344

MAX_HOURS_EXCEED - превышено максимальное доступное время

info:

max - максимально доступное время

INVALID_PHONE - неверный id аренды

RENT_DIE - аренду невозможно продлить, так как срок жизни номера истёк

SERVER_ERROR - ошибка сервера

NO_BALANCE - недостаточно средств

Получить стоимость продления аренды
http://api.sms-activate.org/stubs/handler_api.php?api_key=$api_key&action=getContinueRentPriceNumber&id=$id

* данный метод доступен только для аренды с оператором MTT.

ПАРАМЕТРЫ:

$api_key - ключ АПИ

$id - id аренды

ОТВЕТ:

Ответ сервиса будет в json формате:

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

ВОЗМОЖНЫЕ ОШИБКИ:

BAD_KEY - неверный API-ключ

BAD_ACTION - некорректное действие


Ответ в json формате:

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


Возможные ответы в поле "message":

NO_ID_RENT - отсутствует id аренды

INVALID_PHONE - неверный id аренды

INVALID_TIME - неверно заданное время

RENT_DIE - аренду невозможно продлить, так как срок жизни номера истёк

MAX_HOURS_EXCEED - превышено максимальное доступное время

info:

max - максимально доступное время

SERVER_ERROR - ошибка сервера

API JAVA

Начало работы

Включите библиотеку в maven

<dependecy><groupId>ru.sms-activate</groupId>
<artifactId>SMSActivateApi</artifactId>
<version>1.0</version>
</dependecy>

Пример оформления Вы можете посмотреть по ссылке на MavenRepository

Импортируйте главный класс для взаимодействия с API SMS-Activate.

import ru.sms_activate.SMSActivateApi

Для использования библиотеки Вам необходим API ключ, его можно получить на данной странице и по ссылке ниже.

SMS-Activate API-Key
Пример работы с балансом

Для получения текущего баланса на вашем аккаунте используйте метод getBalance. Если Вас интересует помимо баланса кэшбэк, то вызовите метод getBalanceAndCashBack.

Метод getBalanceAndCashBack возвращает объект класса SMSActivateGetBalanceAndCashBack.

getBalance: Получить текущий баланс на аккаунте

ПАРАМЕТРЫ:

ОТСУТСТВУЮТ

ВОЗВРАЩАЕМЫЙ ТИП:

BigDecimal

getBalanceAndCashBack:Получить сумму баланса и кэшбека, как полный баланс

ПАРАМЕТРЫ:

ОТСУТСТВУЮТ

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetBalanceAndCashBack

getNumber: получить активацию

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор страны.

service(String) - Короткое имя сервиса.

forward*(boolean) -Необходимо ли запросить номер с переадресацией.

operatorSet*(Set) - Набор операторов.

phoneException*(Set) - Исключающие префиксы только для России, набор чисел от 3 до 6 (7918,7900111).

* необязательное поле. Если не указано, то по умолчанию будет выдано количество в соответствии с настройкой в левом меню.

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateActivation

getNumberStatus: получить информацию о доступных сервисах

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор страны.

operatorSet*(Set) - Набор операторов, которые доступны у сервиса

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetNumbersStatus

getAdditionalService:Возвращает дополнительный сервис для номера с переадресацией.

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор активации.

service(String) - Короткое имя сервиса.

Вместо идентификатора активации можно передать полученный объект класса SMSActivateActivation после использования метода getNumber или одну из активаций после использования getMultiServiceNumber.

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetNumbersStatus

getMultiServiceNumber: получить активацию для нескольких сервисов

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор страны.

serviceMap(Set) - Набор сервисов, для которых приобретается активация.

multiForwardList(List) - Список сервисов с переадресацией

operatorSet(Set) - Набор операторов.

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetMultiServiceNumberResponse

getAllPrices: Получить полный список цен на активации

ПАРАМЕТРЫ:

ОТСУТСТВУЮТ

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetPriceInfo

getPricesByCountryIdAndServiceShortName: получить список цен на активации по стране и сервису

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор страны.

service(String) - Короткое имя сервиса.

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetPriceInfo

getPricesAllServicesByCountryId: получить список цен на активации по стране

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор страны.

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetPriceInfo

getStatus: получить статус активации

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор активации.

Вместо идентификатора активации можно передать полученный объект класса SMSActivateActivation после использования метода getNumber или одну из активаций после использования getMultiServiceNumber.

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetStatusResponse

setStatus: установить статус активации

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор активации.

status(SMSActivateClientStatus) - Статус, который нужно установить активации

Вместо идентификатора активации можно передать полученный объект класса SMSActivateActivation после использования метода getNumber или одну из активаций после использования getMultiServiceNumber.

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateSetStatusResponse

getCountries: получить информацию о странах

ПАРАМЕТРЫ:

ОТСУТСТВУЮТ

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetCountriesResponse

getQiwiRequisites: получить информацию о Qiwi-реквизитах

ПАРАМЕТРЫ:

ОТСУТСТВУЮТ

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetQiwiRequisitesResponse

getFullSms: получить полный текст смс с номера

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор активации.

Вместо идентификатора активации можно передать полученный объект класса SMSActivateActivation после использования метода getNumber или одну из активаций после использования getMultiServiceNumber.

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetFullSmsResponse

Алгоритм получения полного текста смс с активации

Получить номер используя метод getNumber после этого доступны следующие действия:

CANCEL - Отменить активацию (если номер Вам не подошел)

MESSAGE_WAS_SENT - Сообщить, что SMS отправлена (Обязательно для получения полного текста sms)

После обязательной установки статуса MESSAGE_WAS_SENT установить переменной получение SMS с помощью метода waitSMS с параметрами активации и времени, которое нужно ждать SMS.

После получения SMS можно получить его с помощью метода getFullSMS и затем вывести полный текст с помощью метода getText()

После этого Вы можете установить активации следующие статусы:

Для активации со статусом MESSAGE_WAS_SENT:

CANCEL - Отменить активацию

Сразу после получения кода:

REQUEST_ONE_MORE_CODE - Запросить еще одну смс

FINISH - Подтвердить SMS-код и завершить активацию

Для активации со статусом REQUEST_ONE_MORE_CODE:

FINISH - Подтвердить SMS-код и завершить активацию

getRentNumber: получить номер с арендой

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор страны.

service(String) - Короткое имя сервиса.

hours(Integer)* - Время аренды.

operator(String)* - Имя мобильного оператора.

urlWebhook(String)* - ссылка для webhook (По умолчанию не учитывается)

Что такое webHook?

* необязательный параметр. Если не указано, то будет значение по умолчанию

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateRentActivation

GetRentServicesAndCountriesRun: получить сервисы и страны для аренды

ПАРАМЕТРЫ:

countryId(Integer) - Идентификатор страны.

operatorSet(Set) - Набор сотовых операторов

hours(Integer)* - Время аренды.

* необязательный параметр. Если не указано, то будет значение по умолчанию

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateGetRentServicesAndCountriesResponse

GetRentStatusJava: получить статус для аренды

ПАРАМЕТРЫ:

rentId(Integer) - Идентификатор арендованного номера.

Вместо rentId можно передать полученный объект класса SMSActivateRentActivation после использования метода getRentNumber

ВОЗВРАЩАЕМЫЙ ТИП:

SMSActivateRentStatus

<?php
                    include_once ("smsactivateApi.php");//Включение класса в проект
                        $sms = new SMSActivate($API_KEY);//Создать экземпляр класса SMSActivate

$freeSlots = $sms->getNumbersStatus(0, 'tele2');//Получить количество доступных номеров для страны Россия и оператора теле2 echo "Номеров Вконтакте: " . $freeSlots['vk']."\n";//Показать для Vk
echo "Номеров Whatsapp: " . $freeSlots['wa']."\n";//Показать для Whatsapp
var_dump($freeSlots); //Отобразить все сервисы с количеством
$array=$activate->getTopCountriesByService(); //Получить массив, элементы которого содержат информацию по каждой стране $balance = $sms->getBalance();//Получить баланс echo "На счету " . $balance." руб.\n";//Показать баланс
$balance = $sms->getBalanceAndCashBack();//Получить баланс с кэшбэком echo "На счету " . $balance." руб.\n";//Показать баланс с кэшбэком
$operators = $sms->getOperators(); //Получить операторов для всех стран if (in_array('mts', $operators['countryOperators'][0])) { //проверить доступен ли 'mts' для России //выполнить действие } if (in_array('chinamobile', $operators['countryOperators'][3])) { //проверить доступен ли 'chinamobile' для Китая //выполнить действие } $activations = $sms->getActiveActivations(); $number = $sms->getNumber('ok',0, 0, 'tele2');//Получить номер Одноклассники без переадресации echo "Активация № " . $number['id']. "телефон ". $number['number'] \n";//Показать id и номер активации
$result = $sms->getNumber('vk', 0 , 1); if (!is_array($result)) { echo 'Ошибка: ' . $result . '\n';//В случае ошибки вернется строка, в случае успеха - массив } 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');//Получить номер для сервисов Одноклассники, Вконтакте, Viber без переадресации и Авито с переадресацией foreach ($number as $value) { echo "Активация № " . $value['activation']. " для сервиса ". $value['service'] ."\n"; }
echo "Номер " . $value['phone'] ."\n";//Показать id активаций и номер
$status = $sms->setStatus($number['id'], 3);//Изменить статус активации по id (получить ещё 1 код) $status = $sms->getStatus($number['id']);//Получить статус активации по id if (is_array($status) { echo "статус : " . $status['status'];//Может быть STATUS_OK или STATUS_WAIT_RETRY, в противном случае вернется строка с текстом ошибки echo "код: " . $status['code']; } else { echo $status ."\n"; } $incomingCall = $sms->getIncomingCallStatus($id);//Получить данные активации по звонку echo $incomingCall['phone'] //Показать входящий номер $prices = $sms->getPrices(1, 'vk');//Получить актуальную цену на сервис echo "Цена для Вк(Украина) : " .$prices[1]['vk']['cost']." руб. количество: ". $prices[1]['vk']['count'];//Показать результат $countries = $sms->getCountries();//Получить список всех стран $additional = $sms->getAdditionalService('fx', $id);//Получить дополнительную активацию для сервиса PGbonus на основе активации id echo "Активация №: " . $additional[id] . " Телефон: " . $additional[number];//Показать результат $sms->createTaskForCall(958874106, 78006007664);//Создать заявку на исходящий вызов по активации №958874106, позвонить на номер 78006007664 $sms->getOutgoingCalls('2022-07-27');//Посмотреть заявки на звонок созданные 27 июля 2022 $getAvailableRentNumbers = $sms->getRentServicesAndCountries('2');//Запросить доступные для аренды страны и сервисы ( на 2 часа для всех операторов ) echo "Полная аренда - Стоимость:" . $getAvailableRentNumbers['services']['full']['cost'] . " Количество :" .$getAvailableRentNumbers['services']['full']['quant'] ." \n"; //Вывести информацию о полной стоимости
foreach( $getAvailableRentNumbers['operators'] as $value) { echo " Оператор " . $value ."\n"; }//Вывести список операторов
$getRentNumber = $sms->getRentNumber('vk','10','0','yota');//Получить номер для аренды для Вконтакте на 10 часов, оператор 'Yota', страна - Россия if ($getRentNumber['status'] === 'success'){ echo "Аренда прошла успешно! Ваш номер: " . $getRentNumber['phone']['number']." \nДата окончания аренды : ". $getRentNumber['phone']['endDate']." \nId номера :" .$getRentNumber['phone']['id'] ; }//Вывести информацию об аренде
else echo "Код ошибки : " . $getRentNumber['message'];
$getRentStatus = $sms->getRentStatus($getRentNumber['phone']['id']);//Получить статус аренды с id от полученного номера if ($getRentStatus['status'] == 'success'){ foreach( $getRentStatus['values']as $index => $value) { echo " Сообщение " . $index .": от номера - " . $value['phoneFrom'] . " сервис - " . $value ['service'] . "текст сообщения - " . $value['text'] . "дата - " . $value['date']; } }//вывести список сообщений полученных во время аренды номера else echo "Код ошибки : " . $getRentStatus['message']; $setRentStatus = $sms->setRentStatus($getRentNumber['phone']['id'],1);//Установить статус аренды 'финиш' с id от полученного номера if ($setRentStatus['status'] == 'success') echo " Изменение статуса прошло успешно! "; else echo "Код ошибки : " . $setRentStatus['message']; $getRentList = $sms->getRentList();//Получить список арендованных номеров на данный момент if (getRentList['status'] == 'success') foreach( $getRentList['values'] as $value) { echo " ID " . $value["id"] . " Номер " . $value["phone"] ."\n"; }//Вывести список номеров else echo "Код ошибки : " . $getRentList['message']; $result = $sms->continueRentNumber($id);//Продлить аренду активации id на 4 часа (по умолчанию) if ($result['status'] == 'success') { echo "Номер: " . $result['phone']['number']"//Вывести номер echo "id: " . $result['phone']['id']"//Вывести id активации echo "Аренда действует до: " . $result['phone']['endDate']"//Вывести дату и время окончания аренды } else { echo "Код ошибки : " . $result['msg']; } $result = $sms->getContinueRentPriceNumber($id, 12);//Получить стоимость продления аренды для активации id на 12 часов if ($result['status'] == 'success') { echo " Стоимость продления: " . $result['price'];//Вывести стоимость } else { echo "Код ошибки: " . $result['message']; //Вывести код ошибки }
                    
                        from smsactivate.api import SMSActivateAPI
                         # SMSActivateAPI Содержит все основные инструменты для работы с API SMSActivate
                        sa = SMSActivateAPI(API_KEY)
sa.debug_mode = True # Используется для отладки. При активном debug_mode все ответы от сервера и класса будут выводиться в консоль print(sa.version()) # Возвращает текущую версию библиотеки status = sa.getNumbersStatus(country=0, operator='tele2') try: print(status['vk_0']) # 274789 except: print(status['message']) # Текст ошибки
result = sa.getTopCountriesByService('vk') try: print(result[0]['count']) # 2350 except: print(result['message']) # Текст ошибки balance = sa.getBalance() # {'balance': '100.00'} try: print(balance['balance']) # 100.00 except: print(balance['message']) # Текст ошибки
balance = sa.getBalanceAndCashBack() # {'balance': '100.00'} try: print(balance['balance']) # 100.00 except: print(balance['message']) # Текст ошибки
operators = sa.getOperators(country=0) try: print(operators['countryOperators']['0']) except: print(operators['error']) # Статус ошибки activations = sa.getActiveActivations() try: print(activations['activeActivations']) except: print(activations['error']) # Статус ошибки 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']) # Текст ошибки number = sa.getNumberV2(service='vk', country=0) try: print(number['phoneNumber']) # 79999999999 except: print(number['message']) # Текст ошибки 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']) # Текст ошибки status = sa.setStatus(id=000000000, status=1) # ACCESS_READY try: print(status) # ACCESS_READY except: print(status['message']) # Текст ошибки status = sa.getStatus(id=000000000) # STATUS_WAIT_CODE try: print(sa.activationStatus(status)) # {'status': 'STATUS_WAIT_CODE', 'message': 'Ожидание смс'} except: print(status['message']) # Текст ошибки status = sa.getIncomingCallStatus(id=000000000) try: print(status['status']) # 2 except: print(status['message']) # Текст ошибки prices = sa.getPrices(service='fb', country=0) try: print(prices['0']) # {'fb': {'cost': 9, 'count': 27934}} except: print(prices['message']) # Текст ошибки countries = sa.getCountries() try: print(countries['0']['eng']) # Russia except: print(countries['message']) # Текст ошибки service = sa.getAdditionalService(id=000000000, service='ig') try: print(service['phone']) # 79999999999 except: print(service['message']) # Текст ошибки service = sa.getRentServicesAndCountries(time=4, operator='tele2', country=0) try: print(service['services']['full']['cost']) # 100.00 except: print(service['message']) # Текст ошибки rent = sa.getRentNumber(service='ig', time=4, operator='tele2', country=0) try: print(rent['phone']['number']) # 79999999999 except: print(rent['message']) # Текст ошибки status = sa.getRentStatus(000000000) try: print(status['values']['0']['text']) # SMS except: print(status['message']) # Текст ошибки status = sa.setRentStatus(id=000000000, status=1) try: print(status['status']) # success except: print(status['message']) # Текст ошибки rent = sa.getRentList() try: print(rent['values']['0']['phone']) # 79999999999 except: print(rent['message']) # Текст ошибки rent = sa.continueRentNumber(id=000000000, time=4) try: print(rent['phone']['number']) # 79999999999 except: print(rent['message']) # Текст ошибки rent = sa.getContinueRentPriceNumber(000000000) try: print(status['price']) # 4.00 except: print(status['message']) # Текст ошибки
                    
                        
                            import ru.sms_activate.SMSActivateApi;//Включение класса в проект
SMSActivateApi smsActivateApi = new SMSActivate("API_KEY");//Создать экземпляр класса SMSActivate
BigDecimal balance = smsActivateApi.getBalance();//Получить текущий баланс на аккаунте System.out.println("Balance: "+ balance)//Вывести полученный баланс SMSActivateGetBalanceAndCashbackResponse smsActivateGetBalanceAndCashbackResponse = smsActivateApi.getBalanceAndCashback();//Получить текущий баланс и кэшбек System.out.println("Cashback + balance: "+ smsActivateGetBalanceAndCashbackResponse.getBalanceAndCashback());//Вывести сумму баланса и кэшбека SMSActivateActivation activation=smsActivateApi.getNumber(0,"vk")//Получить активацию для сервиса Вконтакте в России System.out.println(activation);//Вывести полученную активацию SMSActivateGetNumbersStatusResponse smsActivateGetNumbersStatusResponse= smsActivateApi.getNumberStatus(0,null);//Получить информацию о доступных сервисах для России
SMSActivateServiceInfo go = smsActivateGetNumbersStatusResponse.getSMSActivateServiceInfoByShortName("go");//Получение информации о номерах для сервиса Google
System.out.println("Short name service: " + go.getShortName();//Получить короткое имя сервиса System.out.println("count phone numbers: "+ go.getCountPhoneNumber();//Получить количество номеров для сервиса System.out.println(""Forwarding is available: "+ go.isForward() ? "yes" : "no"//Узнать, есть ли переадресация у сервиса
SMSActivateActivation activation=smsActivateApi.getNumbersStatus(0,"ot",true);//Получение активации
smsActivateApi.setStatus(activation, SMSActivateClientStatus.MESSAGE_WAS_SENT);//Установка статуса MESSAGE_WAS_SENT после отправки смс для номера
SMSActivateActivation childActivation =smsActivateApi.getAdditionalService(activation,"av");//Запрос новой активации для дополнительного сервиса
System.out.println(childActivation);//Вывод информации о дополнительной активации
Set<String>operatorSet= new HashSet<>(); operatorSet.add("mts");//Добавление оператора МТС в набор операторов Map<String,Boolean>serviceMap= new HashMap<>(); serviceMap.put("av",false);//Добавление сервиса Авито в список сервисов(указывать true, если нужен сервис с переадресацией)
SMSActivateGetMultiServiceNumberResponse multiServiceNumberResponse=smsActivateApi.getMultiServiceNumber(0, serviceMap, operatorSet);//Получение активации для нескольких сервисов
multiServiceNumberResponse.getSMSActivateActivationList().forEach(activation->{ System.out.println("Id: " + activation.getId()); System.out.println("Number: " + activation.getNumber()); System.out.println("Service name: " + activation.getShortName()); } //Вывод информации о полученных активациях
SMSActivateGetPricesResponse smsActivateGetPricesResponse=smsActivateApi.getPricesByCountryIdAndServiceShortName(0, "vk");//Получение списка цен для России по сервису Вконтакте. Для получения полного списка цен используйте метод getAllPrices();
SMSActivateGetPriceInfo vk=smsActivateGetPricesResponse.getPriceInfo(0, "vk");//Получение информации о сервисе Вконтакте для России
System.out.println(">>> Cost: "+ vk.getCost());//Получить цену для сервиса System.out.println(">>> count phone numbers: " + vk.getCountPhoneNumbers());//Получить количество номеров для сервиса
SMSActivateActivation activation=smsActivateApi.getNumber(0,"vk")//Получить активацию для сервиса Вконтакте в России System.out.println(activation);//Вывести полученную активацию SMSActivateGetStatusResponse getResponse = smsActivateApi.getStatus(activation);//Получение статуса для активации
System.out.println(getResponse.getSMSActivateGetStatus());//Вывод информации о статусе активации
smsActivateApi.setStatus(activation, SMSActivateClientStatus.MESSAGE_WAS_SENT);//Установка статуса MESSAGE_WAS_SENT после получения смс для номера
smsActivateApi.setStatus(activation, SMSActivateClientStatus.FINISH);//Установка статуса FINISH после получения смс для номера
SMSActivateGetCountriesResponse smsActivateGetCountriesResponse =smsActivateApi.getCountries();//Получение списка стран с информацией SMSActivateCountryInfo countryInfo = smsActivateGetCountriesResponse.get(0)//Получение информации о первой стране в списке
System.out.println("Russian name: "+countryInfo.getRussianName();//Вывести русское название страны System.out.println("English name: "+countryInfo.getEnglishName();//Вывести русское название страны System.out.println("Support multi-service: "+ countryInfo.isSupportMultiService() ? "yes" : "no"//Вывести, поддерживает ли страна мульти-сервисы
SMSActivateGetQiwiRequisitesResponse smsActivateGetQiwiRequisitesResponse=smsActivateApi.getQiwiRequisites();//Получение информации о Qiwi System.out.println("Comment: "+smsActivateGetQiwiRequisitesResponse.getComment()//Вывод комментария к реквизитам System.out.println("Wallet: "+smsActivateGetQiwiRequisitesResponse.getWallet());//Вывод кошелька System.out.println("Up to date: "+smsActivateGetQiwiRequisitesResponse.getUpToDate());//Вывод даты пополнения SMSActivateActivation activation=smsActivateApi.getNumber(0,"vk")//Получить активацию для сервиса Вконтакте в России smsActivateApi.setStatus(activation, SMSActivateClientStatus.MESSAGE_WAS_SENT);//Установка статуса MESSAGE_WAS_SENT после отправки смс для номера String code=smsActivateApi.waitSms(activation,2)//Установить получение sms в течение 2 минут if(code == null) { smsActivateApi.setStatus(activation, SMSActivateClientStatus.CANCEL);//Установка статуса CANCEL, если sms не пришла }
else{
SMSActivateGetFullSmsResponse smsActivateGetFullSmsResponse=smsActivateApi.getFullSms(activation)//Получение текста sms System.out.println("Full SMS: "+smsActivateGetFullSmsResponse.getText());//Вывод текста SMS }
SMSActivateRentActivation rentActivation= smsActivateApi.getRentNumber(0, "vk", 6);//Получение номера с арендой System.out.println(">> ID: "+rentActivation.getId());//Вывод ID активации System.out.println(">> Number: "+rentActivation.getId());//Вывод номера активации System.out.println(">> End date: "+rentActivation.getId());//Вывод даты окончания активации SMSActivateGetRentServicesAndCountriesResponse smsActivateGetRentServicesAndCountriesResponse= smsActivateApi.getRentServicesAndCountries(0, null, 4);//Получение информации о сервисах и странах, поддерживающих аренду
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()); }
//Вывод информации о полученных сервисах
SMSActivateRentActivation rentActivation= smsActivateApi.getRentNumber(0, "vk");//Получение номера с арендой SMSActivateGetRentStatusResponse smsActivateGetRentStatusResponse= smsActivateApi.getRentStatus(rentActivation);//Получение статуса активации System.out.println(">> Count sms: "+ smsActivateGetRentStatusResponse.getCountSms());//Вывод количество sms на арендованном номере