API Документация
Используйте наш API для автоматической покупки номеров и получения SMS.
С чего начать
API совместим с протоколом SMS-Activate: если ваш софт уже умеет с ним работать, замените в настройках хост — больше менять нечего. Все запросы идут методом GET на один адрес, действие передаётся параметром action.
Адрес
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getBalanceКлюч передаётся параметром api_key. Создать его можно в личном кабинете, в разделе «API доступ».
Текущий баланс аккаунта.
Ответы
ACCESS_BALANCE:100.5
{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getBalanceПокупает номер и списывает деньги с баланса. Возвращает ID активации — по нему потом спрашивают статус. Тариф выбираем мы: перебираем предложения от дешёвого к дорогому в пределах maxPrice, пока номер не найдётся. NO_NUMBERS приходит только когда номеров нет ни у одного поставщика.
Параметры
servicestringобязательныйКод сервиса из getServicesList.countryintegerобязательныйID страны из getCountries.maxPricenumberПотолок цены. Дороже него номер куплен не будет; не задан — берётся самый дешёвый тариф.Ответы
Номер куплен
ACCESS_NUMBER:123456:+79001234567
Номеров нет
NO_NUMBERS
{
"title": "WRONG_MAX_PRICE",
"details": "The maximum price is less than the permitted price",
"info": {
"min": 0.5
}
}{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "NO_BALANCE",
"details": "Payment Required"
}{
"title": "CHANNELS_LIMIT",
"details": "You have reached the maximum number of concurrent threads (purchases) allowed for your account. Contact the technical support."
}{
"title": "UNPROCESSABLE_ENTITY",
"details": "Validation failed",
"info": {
"field": "service",
"code": "REQUIRED",
"message": "Param 'service' is required."
}
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getNumberЭто действие меняет данные и тратит деньги, поэтому со страницы оно не выполняется. Скопируйте адрес и вызовите его из своего кода.
То же, что getNumber, но ответ приходит объектом. Параметры и ошибки совпадают.
Параметры
servicestringобязательныйКод сервиса из getServicesList.countryintegerобязательныйID страны из getCountries.maxPricenumberПотолок цены. Дороже него номер куплен не будет; не задан — берётся самый дешёвый тариф.Ответы
Номер куплен
{
"activationId": "123456",
"phoneNumber": "+79001234567",
"activationCost": 0.5,
"currency": 840,
"countryCode": 123,
"canGetAnotherSms": true,
"activationTime": "2026-07-17T12:00:00+00:00",
"activationEndTime": "2026-07-17T12:20:00+00:00",
"activationOperator": "any"
}Номеров нет — приходит строкой
NO_NUMBERS
{
"title": "WRONG_MAX_PRICE",
"details": "The maximum price is less than the permitted price",
"info": {
"min": 0.5
}
}{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "NO_BALANCE",
"details": "Payment Required"
}{
"title": "UNPROCESSABLE_ENTITY",
"details": "Validation failed",
"info": {
"field": "service",
"code": "REQUIRED",
"message": "Param 'service' is required."
}
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getNumberV2Это действие меняет данные и тратит деньги, поэтому со страницы оно не выполняется. Скопируйте адрес и вызовите его из своего кода.
Текущее состояние активации. Код приходит в STATUS_OK после двоеточия.
Параметры
idintegerобязательныйID активации — тот, что вернул getNumber.Ответы
Ждём SMS
STATUS_WAIT_CODE
Ждём повторную SMS
STATUS_WAIT_RESEND
Код получен
STATUS_OK:123456
Активация отменена
STATUS_CANCEL
{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "NOT_FOUND",
"details": "Activation Not Found"
}{
"title": "UNPROCESSABLE_ENTITY",
"details": "Validation failed",
"info": {
"field": "service",
"code": "REQUIRED",
"message": "Param 'service' is required."
}
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getStatusТо же, что getStatus, но с текстом SMS и временем. Пока SMS не пришла, ответ приходит строкой, как в getStatus.
Параметры
idintegerобязательныйID активации — тот, что вернул getNumber.Ответы
Код получен
{
"verificationType": 1,
"sms": {
"dateTime": "2026-07-17 12:05:00",
"code": "123456",
"text": "Your code is 123456"
}
}SMS ещё нет — приходит строкой
STATUS_WAIT_CODE
{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "NOT_FOUND",
"details": "Activation Not Found"
}{
"title": "UNPROCESSABLE_ENTITY",
"details": "Validation failed",
"info": {
"field": "service",
"code": "REQUIRED",
"message": "Param 'service' is required."
}
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getStatusV2Запрашивает повторную SMS, завершает активацию или отменяет её с возвратом денег.
Параметры
idintegerобязательныйID активации — тот, что вернул getNumber.statusintegerобязательный3 — запросить SMS повторно, 6 — завершить активацию, 8 — отменить и вернуть деньги.Ответы
status=3
ACCESS_RETRY_GET
status=6
ACCESS_ACTIVATION
status=8
ACCESS_CANCEL
{
"title": "BAD_STATUS",
"details": "Wrong status code"
}{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "NOT_FOUND",
"details": "Activation Not Found"
}Отменять ещё рано
{
"title": "EARLY_CANCEL_DENIED",
"details": "Activation cannot be cancelled at this time. Minimum activation period must pass."
}Код уже пришёл — отмена невозможна
{
"title": "OTP_RECEIVED",
"details": "Cannot terminate activation - OTP has been received on this number"
}Активация уже завершена
{
"title": "ACTIVATION_NOT_ACTIVE",
"details": "Activation is terminated/refunded and Otp cannot be retrieved"
}{
"title": "UNPROCESSABLE_ENTITY",
"details": "Validation failed",
"info": {
"field": "service",
"code": "REQUIRED",
"message": "Param 'service' is required."
}
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=setStatusЭто действие меняет данные и тратит деньги, поэтому со страницы оно не выполняется. Скопируйте адрес и вызовите его из своего кода.
То же, что setStatus со status=6. При успехе возвращает 204 без тела.
Параметры
idintegerобязательныйID активации — тот, что вернул getNumber.Ответы
{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "NOT_FOUND",
"details": "Activation Not Found"
}{
"title": "ACTIVATION_NOT_ACTIVE",
"details": "Activation is terminated/refunded and Otp cannot be retrieved"
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=finishActivationЭто действие меняет данные и тратит деньги, поэтому со страницы оно не выполняется. Скопируйте адрес и вызовите его из своего кода.
То же, что setStatus со status=8: отменяет активацию и возвращает деньги. При успехе возвращает 204 без тела.
Параметры
idintegerобязательныйID активации — тот, что вернул getNumber.Ответы
{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "NOT_FOUND",
"details": "Activation Not Found"
}Отменять ещё рано
{
"title": "EARLY_CANCEL_DENIED",
"details": "Activation cannot be cancelled at this time. Minimum activation period must pass."
}Код уже пришёл
{
"title": "OTP_RECEIVED",
"details": "Cannot terminate activation - OTP has been received on this number"
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=cancelActivationЭто действие меняет данные и тратит деньги, поэтому со страницы оно не выполняется. Скопируйте адрес и вызовите его из своего кода.
Цены и количество номеров: страна → сервис → тариф. Показывается самая дешёвая цена по стране.
Параметры
servicestringКод сервиса из getServicesList.countryintegerID страны из getCountries.Ответы
Цены получены
{
"123": {
"tg": {
"cost": 0.5,
"count": 200,
"physicalCount": 200
}
}
}Неизвестный сервис
{
"status": "false",
"msg": "service is incorrect"
}Неизвестная страна
{
"status": "false",
"msg": "country is incorrect"
}Неверный ключ — строкой
BAD_KEY
Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getPricesСтраны, доступные для покупки. Поле id — то, что передаётся в getNumber.
Ответы
[
{
"id": 123,
"rus": "Казахстан",
"eng": "Казахстан",
"chn": "Казахстан",
"visible": 1,
"retry": 1
}
]Неверный ключ — строкой
BAD_KEY
Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getCountriesСервисы, доступные для покупки. Поле code — то, что передаётся в getNumber.
Ответы
{
"status": "success",
"services": [
{
"code": "tg",
"name": "Telegram"
}
]
}Неверный ключ — строкой
BAD_KEY
Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getServicesListНомера, которые сейчас ждут SMS.
Параметры
startintegerСдвиг от начала списка, а в getHistory — начало периода (Unix timestamp).limitintegerСколько записей вернуть, максимум 100.Ответы
{
"status": "success",
"data": [
{
"activationId": "123456",
"serviceCode": "tg",
"phoneNumber": "+79001234567",
"activationCost": 0.5,
"activationStatus": "4",
"smsCode": null,
"smsText": null,
"activationTime": "2026-07-17 12:00:00",
"discount": "0.00",
"repeated": "0",
"countryCode": "123",
"countryName": "Казахстан",
"canGetAnotherSms": "1",
"currency": 840
}
]
}{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getActiveActivationsВсе ваши активации, включая завершённые и отменённые.
Параметры
startintegerСдвиг от начала списка, а в getHistory — начало периода (Unix timestamp).endintegerКонец периода, Unix timestamp.offsetintegerСдвиг от начала списка.sizeintegerСколько записей вернуть, максимум 100.Ответы
[
{
"id": "123456",
"date": "2026-07-17 12:00:00",
"phone": "+79001234567",
"sms": "Your code is 123456",
"cost": 0.5,
"status": "6",
"currency": 840
}
]{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getHistoryСообщения, пришедшие на номер.
Параметры
idintegerобязательныйID активации — тот, что вернул getNumber.sizeintegerСколько записей вернуть, максимум 100.pageintegerНомер страницы, с единицы.Ответы
{
"data": [
{
"id": "1",
"phoneFrom": "Telegram",
"code": "123456",
"text": "Your code is 123456",
"service": "tg",
"date": "2026-07-17T12:05:00+00:00",
"type": "sms"
}
],
"meta": {
"total": 1,
"service": "tg"
}
}{
"title": "BAD_KEY",
"details": "Unauthorized"
}{
"title": "NO_KEY",
"details": "Unauthorized"
}{
"title": "NOT_FOUND",
"details": "Activation Not Found"
}{
"title": "ACTIVATION_NOT_ACTIVE",
"details": "Activation is terminated/refunded and Otp cannot be retrieved"
}{
"title": "SERVER_ERROR",
"details": "Server Gone"
}Попробовать
https://www.krasmedinfo.ru/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getAllSms