Направления API
API телефонии закрывает несколько задач. Сейчас в разделе доступны методы авторизации, отправки сообщений и работы со звонками, а также инструменты для разработчиков. Список будет пополняться.
Одноразовые коды, обратный звонок и подтверждение номера.
К методам → 02 · Сообщения WhatsAppОтправка сообщений через подключённый WhatsApp.
К методам → 03 · Звонки VOIP APIИстория звонков и управление звонками.
К методам → 04 · Инструменты PostmanКоллекция запросов и параметры для разработки.
К методам →Общие сведения
API решает несколько групп задач: авторизация, сообщения и звонки. У каждой группы свой базовый адрес, а общие правила — токен, формат JSON и обработка ошибок — совпадают.
| Группа | Базовый URL | Назначение |
|---|---|---|
| Авторизация | https://api.telefon-ip.ru/api/v1/authcalls/ | Flash Calls, Back Calls, SMS, Telegram, статусы и биллинг |
| Сообщения | https://api.telefon-ip.ru/whatsapp/ | Отправка сообщений WhatsApp |
| Звонки | https://api.telefon-ip.ru/api/v1/voip/ | История и управление звонками |
| MobileID | https://api.telefon-ip.ru/mobileid/v1/ | Подтверждение номера через оператора: push или SMS-код |
Для методов авторизации используется адрес:
https://api.telefon-ip.ru/api/v1/authcalls/{token}/{action}/{params}| Параметр | Тип | Описание |
|---|---|---|
| token | string | Ключ доступа из личного кабинета или по запросу на support@telefon-ip.ru |
| action | string | Метод API: get_code, reverse_auth_phone_get, get_sms_code, get_tg_code и другие |
| params | string | Параметры конкретного метода — обычно номер телефона, идентификатор или дата |
Токен выдаётся в личном кабинете. Для методов авторизации доступно 50 тестовых запросов. Для защиты от спама используйте капчу и ограничивайте число отправок на один номер.
{
"success": true,
"error": "",
"data": {}
}
Ошибка 401 означает неверный токен. Ошибка 400 — неверный формат номера или отсутствует обязательный параметр. По умолчанию действует лимит 3 отправки в сутки на один номер; лимит можно изменить при подключении.
Flash Calls — авторизация звонком
Сервис звонит на указанный номер. Код подтверждения — последние четыре цифры номера, с которого поступил звонок. Пользователь вводит их в интерфейсе. Если включён параметр sms=true, при неудачном дозвоне автоматически отправляется SMS с кодом.
https://api.telefon-ip.ru/api/v1/authcalls/{token}/get_code/{phone}/get_code — получение кода
| Параметр | Тип | Описание |
|---|---|---|
| token | string | Ключ доступа |
| phone | string | Номер абонента в формате 89XXXXXXXXX |
| sms | boolean | true — отправить SMS, если звонок не доставлен; по умолчанию false |
{
"success": true,
"error": "",
"data": {
"phone": "79244501003",
"code": "1003",
"id": 168
}
}
Пример запроса с резервной SMS:
https://api.telefon-ip.ru/api/v1/authcalls/{token}/get_code/89243555100?sms=trueBack Calls — обратная авторизация
Пользователь сам звонит на выделенный номер, после чего вызов сбрасывается. Номер пользователя возвращается по webhook или через отдельный GET-запрос. Время жизни номера для авторизации — 120 секунд.
reverse_auth_phone_get — получить номер для звонка
https://api.telefon-ip.ru/api/v1/authcalls/{token}/reverse_auth_phone_get?phone={phone}| Параметр | Тип | Описание |
|---|---|---|
| token | string | Ключ доступа |
| phone | string | Номер пользователя в формате 89XXXXXXXXX |
{
"success": true,
"error": "",
"data": {
"auth_phone": "79644115786",
"id": 122760,
"url_image": "https://api.telefon-ip.ru/api/v1/authcalls/get_qr_image/2841621/"
}
}
reverse_auth_phone_post — получить номер с webhook
https://api.telefon-ip.ru/api/v1/authcalls/{token}/reverse_auth_phone_post| Параметр | Тип | Описание |
|---|---|---|
| phone | string | Номер пользователя в формате 89XXXXXXXXX |
| webhook | string | URL, на который придёт результат авторизации |
После звонка на указанный webhook приходит запрос с параметрами success, phone и id.
https://your-webhook.example/?success=True&phone=89243555100&id=2841621reverse_auth_phone_check — проверить номер
https://api.telefon-ip.ru/api/v1/authcalls/{token}/reverse_auth_phone_check/{id}| Параметр | Тип | Описание |
|---|---|---|
| id | integer | Идентификатор авторизации, полученный при запросе номера |
{
"success": true,
"error": "",
"data": {
"phone": "89243555100",
"id": 122760,
"status": "ok"
}
}
Пока абонент не позвонил, ответ 200 с status: "waiting" и пустым phone. Если id не найден или истёк — 408 (status: "expired"), неверный id — 400; 401 — неверный токен.
SMS Code — авторизация по SMS
Код подтверждения отправляется в SMS на указанный номер. Подпись в тексте SMS согласовывается по адресу support@telefon-ip.ru.
https://api.telefon-ip.ru/api/v1/authcalls/{token}/get_sms_code/{phone}/get_sms_code — запросить SMS с кодом
| Параметр | Тип | Описание |
|---|---|---|
| phone | string | Номер абонента |
| code | string | Свой код до 4 символов; если не указан — генерируется автоматически |
{
"success": true,
"error": "",
"data": {
"phone": "79244501003",
"code": "1003",
"id": 168
}
}
TG Code — авторизация в Telegram
Код отправляется в Telegram на номер, привязанный к аккаунту. Время отображения кода в чате — 90 секунд.
https://api.telefon-ip.ru/api/v1/authcalls/{token}/get_tg_code/{phone}/get_tg_code — отправить код в Telegram
| Параметр | Тип | Описание |
|---|---|---|
| phone | string | Номер абонента |
| code | string | Код из 4 символов; если не указан — генерируется автоматически |
{
"success": true,
"error": "",
"data": {
"phone": "79243555100",
"code": "6681",
"id": 11084059,
"operator_name": "ООО «МегаФон»",
"channel": "telegram",
"status": true,
"status_info": "send ok"
}
}
MobileID — подтверждение номера
Номер подтверждает оператор: пользователь не вводит код, а нажимает «Подтвердить» в push-уведомлении на телефоне. Если push не дошёл, оператор отправляет SMS с кодом, и вы показываете поле ввода. Результат — sub, устойчивый идентификатор абонента: к нему привязывается аккаунт, а не к номеру телефона (номер может перейти другому человеку).
Адрес — https://api.telefon-ip.ru/mobileid/v1/{token}/, токен тот же, что у авторизации звонком.
auth — начать вход
https://api.telefon-ip.ru/mobileid/v1/{token}/auth| Параметр | Тип | Описание |
|---|---|---|
| phone | string | Номер абонента: +7…, 8… или 10 цифр. Работают только мобильные номера |
| url_webhook | string | Необязательный HTTPS-адрес: на него придёт результат. Можно задать один раз в личном кабинете |
{
"success": true,
"data": {
"session_id": "f7e71a68-6669-4027-8dc1-0c77020d9785",
"status": "pending",
"phone": "79123456789",
"sub": "",
"amr": "",
"expires_at": "2026-11-07T09:56:29+00:00"
}
}
auth/{id} — статус входа
https://api.telefon-ip.ru/mobileid/v1/{token}/auth/{session_id}Статус опрашивается раз в 2 секунды, пока не станет финальным. Время жизни входа — 5 минут. Статус меняется в момент уведомления от оператора, опрос только читает его.
| status | Значение | Что делать |
|---|---|---|
pending | Push отправлен, ждём подтверждения | Продолжать опрос |
sms_sent | Push не прошёл, отправлена SMS с кодом | Показать ввод кода и вызвать code |
approved | Номер подтверждён | Взять sub и amr, пустить пользователя |
denied | Пользователь отказался или истёк push | Показать отказ, предложить начать заново |
expired | 5 минут прошли | Начать новый вход |
error | Сбой на стороне оператора | Показать ошибку, начать заново |
amr показывает, чем подтвердили: SIM_OK — push, OTP_OK или SMS_OTP — код из SMS, SEAM_OK — подтверждение сетью оператора.
auth/{id}/code — SMS-код
https://api.telefon-ip.ru/mobileid/v1/{token}/auth/{session_id}/code| Параметр | Тип | Описание |
|---|---|---|
| code | string | Код из SMS. Не более 3 попыток на вход |
{
"success": true,
"data": {
"session_id": "f7e71a68-6669-4027-8dc1-0c77020d9785",
"status": "sms_sent",
"accepted": true
}
}
accepted: true означает «код принят оператором», а не «вход выполнен». Финальный результат — в статусе: дождитесь approved.
Вебхук — результат без опроса
Если при старте передан url_webhook, результат приходит POST-запросом на этот адрес. Опрос при этом остаётся доступен как страховка.
| event | Когда приходит |
|---|---|
sms_sent | Push не прошёл, отправлена SMS — пора показать ввод кода |
approved | Номер подтверждён |
denied | Отказ или таймаут |
expired | Время ожидания истекло |
Запрос содержит те же поля, что и статус, плюс event и occurred_at. Подпись тела — в заголовке X-MobileID-Signature: sha256=… (HMAC-SHA256 на ключе токена клиента): проверяйте её, иначе кто угодно сможет прислать вам фальшивый approved.
{
"event": "approved",
"session_id": "f7e71a68-6669-4027-8dc1-0c77020d9785",
"status": "approved",
"phone": "79123456789",
"sub": "sub-123",
"amr": "SIM_OK",
"error": "",
"occurred_at": "2026-11-07T09:56:52+00:00"
}
Правила доставки: три попытки — сразу, через 20 и ещё через 20 секунд, таймаут 5 секунд на попытку, успех — любой ответ 2xx. После трёх неудач повторов нет: результат забирается опросом. События могут повторяться — дедуплицируйте по session_id и event. Адрес принимается только по HTTPS и только публичный: внутренние и служебные адреса отклоняются.
Ошибки
| HTTP | error | Причина |
|---|---|---|
| 401 | unauthorized | Неизвестный токен |
| 401 | client_blocked | Клиент отключён в личном кабинете |
| 400 | phone_limit | Исчерпан суточный лимит запросов на номер (по умолчанию 3) |
| 400 | invalid_phone | Не мобильный номер или мусор вместо номера |
| 400 | invalid_webhook | Адрес вебхука не HTTPS или ведёт во внутреннюю сеть |
| 429 | too_many_requests | Слишком много стартов по одному номеру за час |
| 409 | code_not_requested | Код отправлен до того, как сервис перешёл на SMS |
| 409 | code_expired | Оператор уже принял код по этой сессии |
| 400 | code_rejected | Неверный код |
| 429 | too_many_attempts | Больше 3 попыток ввода кода |
| 404 | not_found | Сессии нет или она принадлежит другому клиенту |
Вспомогательные функции
Методы для проверки статуса, баланса и истории операций. Базовый URL — тот же: https://api.telefon-ip.ru/api/v1/authcalls/{token}/.
| Метод | Запрос | Назначение |
|---|---|---|
| get_status | GET /get_status/{id}/ | Статус авторизации по идентификатору |
| get_balance | GET /get_balance/ | Текущий баланс |
| get_billing_record | GET /get_billing_record/{count}/ | Последние транзакции, не более 100 |
| get_billing_csv | GET /get_billing_csv/{start_date}/ | Экспорт транзакций в CSV с даты YYYY-MM-DD |
| post_billing_date | POST /post_billing_date/ | Транзакции за период: start_date, end_date в формате YYYY-MM-DD |
get_status — статус авторизации
https://api.telefon-ip.ru/api/v1/authcalls/{token}/get_status/{id}/{
"success": true,
"error": "",
"data": {
"id": 454733,
"created_at": "2023-04-02T12:54:31",
"phone": "89243555100",
"status": 1,
"status_info": "Ok: SIP 200 OK",
"price": 0.2
}
}
get_balance — баланс
https://api.telefon-ip.ru/api/v1/authcalls/{token}/get_balance/{
"success": true,
"error": "",
"data": {
"balance": 5.0
}
}
Для get_billing_record количество записей не должно превышать 100. Для get_billing_csv дата передаётся в формате YYYY-MM-DD; в ответ приходит CSV-файл.
WhatsApp — отправка сообщений
Отправка сообщений через WhatsApp. В личном кабинете TELEFON-IP.RU привяжите WhatsApp через связанные устройства в разделе рассылок. Сообщение ставится в очередь рассылки и уходит через подключённое приложение.
https://api.telefon-ip.ru/whatsapp/send_messages/{token}?phone={phone}&message={text}&app={id}send_messages — отправить сообщение
| Параметр | Тип | Описание |
|---|---|---|
| phone | string | Номер в формате 79XXXXXXXXX |
| message | string | Текст сообщения |
| app | integer | Идентификатор приложения WhatsApp; необязателен при одном подключении |
{
"success": true,
"error": "",
"data": {
"task_detail_id": 12345,
"data_time_utc": "2026-08-01T10:15:30"
}
}
VOIP API
API для управления звонками. В текущей версии доступна история звонков за период.
Получение истории звонков
https://api.telefon-ip.ru/api/v1/voip/app/callhistory/{token}?start_date=YYYYMMDD&end_date=YYYYMMDD| Параметр | Тип | Описание |
|---|---|---|
| token | string | Ключ доступа |
| start_date | string | Дата начала в формате YYYYMMDD; по умолчанию — вчера |
| end_date | string | Дата окончания в формате YYYYMMDD; по умолчанию — текущий момент |
{
"success": true,
"error": "",
"timezone": "Europe/Moscow",
"data": [
{
"uniqueid": "1597532580.42",
"calldate": "2026-08-01 10:15:30+03:00",
"src": "74951234567",
"dst": "79261234567",
"duration": 85,
"billsec": 80,
"disposition": "ANSWERED",
"userfield": "in-main",
"direction": "in"
}
]
}
Поля duration и billsec — в секундах. direction — направление звонка, disposition — результат. При неверном формате даты вернётся ошибка 400.
Postman
Для разработки можно скачать коллекцию запросов и сгенерировать код под свой проект. Коллекция обновлена 2026-11-06: в ней все методы из этой страницы и переменные host и token.
host—https://api.telefon-ip.ru;token— ключ из личного кабинета.