SIP API

Программный интерфейс SIP API позволяет управлять SIP ID в приложении аккаунта МТС Exolve.

SIP (Session Initiary Protocol) — это протокол установления сеанса связи через Интернет. В МТС Exolve используется для совершения и приёма звонков. SIP-протокол позволяет открывать несколько сеансов связи одновременно без потери скорости и качества обработки информации. Отличается высоким уровенем безопасности благодаря шифрованию входных и выходных каналов связи.

SIP API Exolve предлагает пользователям следующие методы для работы:

  • Create - создает SIP ID в приложении аккаунта;

  • Delete - удаляет созданный SIP ID в приложении аккаунта;

  • GetFees - получает абонентскую плату за использование SIP ID;

  • GetAttributes - получает информацию о параметрах созданного SIP ID;

  • GetSIPList - получает информацию обо всех SIP ID приложения по заданным параметрам;

  • SetDisplayNumber - устанавливает определяемый номера на SIP ID;

  • ChangePassword - меняет пароль от SIP ID.


Для звонков используются IP-адреса:

  • 80.75.130.99 — звонка с/на Static IP
  • 80.75.130.100 — звонка с/на SIP ID
  • 80.75.130.101 — переадресация на SIP-соединение

Решения, где используется SIP API

Попробовать бесплатно

Метод Create

Примените метод Create для создания SIP ID — вы сможете использовать этот ресурс для исходящих и входящих звонков.

Точка подключения: Выполните POST-запрос с входными параметрами к точке подключения:

POST: https://api.exolve.ru/sip/v1/Create

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие параметры в теле запроса в JSON-формате. Параметры, отмеченные жирным шрифтом, являются обязательными.

Параметр Тип Описание
sip_name string название SIP ID
number uint64 определяемый номер
description string описание SIP ID
call_record boolean подключение записи разговоров. True — подключить запись разговоров, False — не подключать запись разговоров

Примечание
Чтобы подключить запись разговоров на SIP ID, предварительно подключите эту услугу в настройках приложения в Личном кабинете разработчика.

Определяемый номер используется для исходящих звонков при выходе в телефонную сеть общего пользования. В качестве такого номера можно назначить только один из номеров этого же приложения.


Выходные параметры

Параметр Тип Описание
sip_resource_id uint64 идентификатор SIP ID
username string юзернейм SIP ID

Примеры

Входные параметры:

{
    "sip_name": "Test",
    "number": 74991112233,
    "description": "Test SIP ID",
    "call_record": true
}

Выходные параметры:

{
    "sip_resource_id": "1111",
    "username": "88314011122"
}

Возможные ошибки

Код Статус Пример сообщения Описание
401 Unauthorized Unauthorized отсутствует/невалидный API-ключ
400 Bad Request Error adding SIP: sip name is not unique on the application SIP ID с таким именем уже есть в приложении
400 Bad Request Error adding SIP: not enough money on account попытка купить 4 SIP ID при нулевом балансе
400 Bad Request Error adding SIP: customer is not active аккаунт пользователя не активен
409 Conflict Error adding SIP: call record is disabled on the app услуга записи звонков не включена в настройках приложения
500 Internal Server Error Application [app_name] does not own resource [number] указанный номер не принадлежит приложению
400 Bad Request invalid value [value] в одном из полей невалидный формат
400 Bad Request value length must be between 3 and 40 runes, inclusive поле sip_name должно содержать от 3 до 40 символов включительно

Метод Delete

Примените метод Delete для удаления SIP ID.

Точка подключения: Выполните POST-запрос с входными параметрами к точке подключения:

POST: https://api.exolve.ru/sip/v1/Delete

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие параметры в теле запроса в JSON-формате. Параметры, отмеченные жирным шрифтом, являются обязательными.

Параметр Тип Описание
sip_resource_id uint64 идентификатор SIP ID

Выходные параметры

Пустой JSON c 200 OK статусом.

Примеры

Входные параметры:

{
    "sip_resource_id": "111"
}

Выходные параметры:

{}

Возможные ошибки

Код Статус Пример сообщения Описание
401 Unauthorized Unauthorized отсутствует/не валидный API-ключ
400 Bad Request Error deleting sip: SIP is missing in the application заданный SIP ID не принадлежит приложению
400 Bad Request Error adding SIP: customer is not active аккаунт пользователя не активен
400 Bad Request invalid value for uint64 type значение в поле sip_resource_id не валидно
400 Bad Request Error adding SIP: customer is not active аккаунт пользователя не активен

Метод GetFees

Примените метод GetFees для получения стоимости использования SIP ID — абонентской платы и стоимости подключения.

Точка подключения: Выполните POST-запрос с входными параметрами к точке подключения:

POST: https://api.exolve.ru/sip/v1/GetFees

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте пустой JSON в теле запроса.

Выходные параметры

Параметр Тип Описание
install_fee float стоимость подключения
subscription_fee float ежемесячная абонентская плата

Примеры

Входные параметры:

{}

Выходные параметры:

{
    "install_fee": 0,
    "subscription_fee": 90
}

Возможные ошибки

Код Статус Пример сообщения Описание
401 Unauthorized Unauthorized отсутствует/невалидный API-ключ
400 Bad Request invalid value [value] невалидное значение в запросе
400 Bad Request Error adding SIP: customer is not active аккаунт пользователя неактивен

Метод GetAttributes

Примените метод GetAttributes для получения деталей (атрибутов) конкретного SIP ID.

Точка подключения: Выполните POST-запрос с входными параметрами к точке подключения:

POST: https://api.exolve.ru/sip/v1/GetAttributes

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие параметры в теле запроса в JSON-формате. Параметры, отмеченные жирным шрифтом, являются обязательными.

Параметр Тип Описание
sip_resource_id uint64 идентификатор SIP ID

Выходные параметры

Параметр Тип Описание
application_uuid string идентификатор приложения, в котором создан этот SIP ID
sip_resource_id uint64 идентификатор SIP ID
sip_name string название SIP ID
description string описание SIP ID
number_code uint64 юзернейм SIP ID в формате 88314XXXXXXXXXX
attributes SipAttributes атрибуты SIP ID
create_date string дата создания SIP ID в формате RFC-3339 / ISO-8601
numbers_with_call_forwarding repeated uint64 номера, с которых переадресуются входящие звонки на этот SIP ID

SipAttributes

Параметр Тип Описание
login sting логин SIP ID
password string пароль SIP ID
install_fee float стоимость подключения
subscription_fee float абонентская плата
username string юзернейм SIP ID
domain string домен для подключения
call_record boolean запись звонков. True — подключено, False — отключено
cli string определяемый номер для исходящих звонков в ТфОП

Примеры

Входные параметры:

{
    "sip_resource_id": 1111
}

Выходные параметры:

{
    "application_uuid": "178ec145-6898-4b06-a92a-75f63cb57046",
    "sip_resource_id": "1111",
    "sip_name": "sip_name",
    "description": "",
    "number_code": "883140123456789",
    "attributes": {
        "login": "883140123456789",
        "password": "password123",
        "subscription_fee": 0,
        "install_fee": 0,
        "username": "883140123456789",
        "domain": "sip.exolve.ru",
        "call_record": false,
        "cli": "79991112233"
    },
    "create_date": "2025-05-20T12:35:56.122610Z",
    "numbers_with_call_forwarding": [
        "79998887766"
    ]
}

Возможные ошибки

Код Статус Пример сообщения Описание
400 Bad Request Error getting sip info: SIP is missing in the application искомый SIP ID не принадлежит этому приложению
400 Bad Request invalid value for uint64 type [value] значение поля sip_resource_id невалидно
400 Bad Request Error adding SIP: customer is not active аккаунт пользователя неактивен
400 Bad Request “error”: “invalid value *” невалидное значение поля
400 Bad Request “error”: “unknown field *” невалидное значение поля
401 Unauthorized malformed token отсутствует API-ключ
401 Unauthorized Unauthorized невалидный API-ключ

Метод GetSIPList

Примените метод GetSIPList для получения информации о всех SIP ID приложения по заданным параметрам.

Точка подключения: Выполните POST-запрос с входными параметрами к точке подключения:

POST: https://api.exolve.ru/number/customer/v1/GetSIPList

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие параметры в теле запроса в JSON-формате. Параметры, отмеченные жирным шрифтом, являются обязательными.

Параметр Тип Описание
search_filter_by_name string название SIP ID
limit uint64 лимит выводимых данных
offset uint64 номер строки, с которой начинать выборку (начинается с 0)
date_from string дата создания SIP ID в формате RFC-3339 / ISO-8601, от которой начинать выборку
date_to string дата создания SIP ID в формате RFC-3339 / ISO-8601, до которой продолжать выборку
username_filter string юзернейм SIP ID в формате 88314XXXXXXXXXX
clis_filter string определяемый номер, который используется в искомом SIP ID для исходящих звонков
order_by oneof OrderBy тип сортировки

OrderBy

Параметр Тип Описание
order_by_name enum OrderByName сортировка по имени
order_by_date enum OrderByDate сортировка по дате

OrderByName/OrderByDate

Параметр Тип Описание
1 enum ascending order (по возрастанию)
2 enum descending order (по убыванию) — по умолчанию для даты

Выходные параметры

Параметр Тип Описание
sips SIPListElement список SIP ID и информация о них

SIPListElement

Параметр Тип Описание
application_uuid string идентификатор приложения, в котором создан SIP ID
sip_name string название SIP ID
subscription_fee float абонентская плата
install_fee float стоимость подключения
sip_resource_id uint64 идентификатор SIP ID
user_name string юзернейм SIP ID
domain string домен для подключения
number_code string юзернейм SIP ID
create_date string дата создания SIP ID в формате RFC-3339 / ISO-8601
cli string определяемый номер, используется для исходящих звонков с SIP ID

Примеры

Входные параметры:

{
    "limit": 10,
    "offset": 0,
    "date_from": "2022-12-19T12:35:56.122610Z",
    "date_to": "2025-05-21T12:35:56.122610Z",
    "clis_filter":
    [
     "79999999999",
     "79133333333"
    ],
    "order_by_name": 1
}

Выходные параметры:

{
    "sips": [
        {
            "application_uuid": "178ec145-6898-4b06-a92a-75f63cb57046",
            "sip_name": "sip_name_1",
            "subscription_fee": 0,
            "install_fee": 0,
            "sip_resource_id": "1111",
            "user_name": "883140123456789",
            "domain": "sip.exolve.ru",
            "number_code": "883140123456789",
            "create_date": "2023-12-20T12:35:56.122610Z",
            "cli": "79991112233"
        },
        {
            "application_uuid": "178ec145-6898-4b06-a92a-75f63cb57046",
            "sip_name": "sip_name_2",
            "subscription_fee": 0,
            "install_fee": 0,
            "sip_resource_id": "2222",
            "user_name": "883140987654321",
            "domain": "sip.exolve.ru",
            "number_code": "883140987654321",
            "create_date": "2023-10-10T11:28:38.316920Z",
            "cli": "79994445566"
        }
    ]
}

Возможные ошибки

Код Статус Пример сообщения Описание
400 Bad Request “unknown field ‘*’” в одном из полей невалидный формат данных
400 Bad Request “unexpected token *” в одном из полей невалидный формат
400 Bad Request “invalid value *” в одном из полей невалидный формат данных
400 Bad Request “invalid value for uint64 field limit: *” значение поля limit невалидного формата
400 Bad Request “invalid value for uint64 field offset: *” значение поля offset невалидного формата
400 Bad Request “invalid value for string field searchFilterByName: *” значение поля searchFilterByName невалидного формата
400 Bad Request “invalid value for string field ip: *” значение поля ip невалидного формата
400 Bad Request “invalid value for enum field orderByName: *” в поле order_by_name должно быть одно из определённых значений
400 Bad Request “invalid value for enum field orderByDate: *” в поле order_by_date должно быть одно из определённых значений
401 Unauthorized malformed token отсутствует API-ключ
401 Unauthorized unauthorized невалидный API-ключ

Метод SetDisplayNumber

Примените метод SetDisplayNumber для установки определяемого номера на SIP ID — это нужно для исходящих звонков на номера телефонной сети общего пользования (ТфОП).

Точка подключения: Выполните POST-запрос с входными параметрами к точке подключения:

POST: https://api.exolve.ru/sip/v1/SetDisplayNumber

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие параметры в теле запроса в JSON-формате. Параметры, отмеченные жирным шрифтом, являются обязательными.

Параметр Тип Описание
sip_resource_id uint64 идентификатор SIP ID
number uint64 определяемый номер для исходящих звонков в ТфОП

Выходные параметры

Пустой JSON с 200 OK статусом.

Возможные ошибки

Код Статус Пример сообщения Описание
401 Unauthorized Unauthorized отсутствует/невалидный API-ключ
400 Bad Request Error set sip display number: incorrect number format неправильный формат номера в поле number
400 Bad Request Error set sip display number: number is missing in the application указанный номер не принадлежит приложению
400 Bad Request Error getting sip info: SIP is missing in the application заданный SIP ID не принадлежит приложению
400 Bad Request Error adding SIP: customer is not active аккаунт пользователя неактивен

Примеры

Входные параметры:

{
    "sip_resource_id": 1111,
    "number": 79991112233
}

Выходные параметры:

{}

Метод ChangePassword

Примените этот метод для смены пароля от SIP ID. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.

Точка подключения:

POST: https://api.exolve.ru/sip/v1/ChangePassword

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.

Параметр Тип Описание
sip_resource_id uint64 уникальный идентификатор ресурса SIP ID

Выходные параметры

Пустой JSON с 200 OK статусом.

Возможные ошибки

Код Статус Пример сообщения Описание
401 Unauthorized Unauthorized отсутствует/не валидный API-ключ
400 Bad Request Error getting sip info: SIP is missing in the application заданный SIP ID не принадлежит приложению
400 Bad Request Error adding SIP: customer is not active аккаунт пользователя не активен
400 Bad Request invalid value [value] значение в поле sip_resource_id не валидно

Примеры

Входные параметры:

{
    "sip_resource_id": 1111,
}

Выходные параметры:

{}