Numbering API
Numbering API — программный интерфейс, который позволяет пользователям управлять номерами приложения в Личном кабинете: покупать свободные номера, удалять их, настраивать переадресацию и т.д.
Numbering API Exolve предлагает пользователям следующие методы для управления номерами:
-
GetList - получает справку о параметрах номеров, доступных в Exolve. Характеристики можно использовать при поиске свободных номеров для покупки;
-
GetFree - получает список свободных номеров для покупки по заданным параметрам;
-
Lock - бронирует свободный номер для покупки;
-
Unlock - отменяет бронирование номера;
-
Buy - покупает бронированный номер;
-
Delete - удаляет купленный номер;
-
GetInfo - получает информацию о купленном номере;
-
SetCallForwarding - настраивает переадресацию входящих на номер вызовов;
-
DeleteCallForwarding - удаляет переадресацию входящих на номер вызовов;
-
GetAttributes - получает информацию о настройках переадресации и записи разговоров на номере.
Решения, где используется Numbering API
Метод GetList
Примените этот метод для получения справочника по характеристикам номеров (тип, категория, регион, и проект). Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/reference/v1/GetList
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте пустой JSON в теле запроса.
Параметр | Описание |
---|---|
{} | пустой JSON |
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
types | NumberTypes | сопоставляет наименование типа номера и его идентификатор |
categories | Categories | сопоставляет имя категории и ее идентификатор, а также принадлежащие к ней тип номера и его идентификатор |
regions | Regions | сопоставляет название региона с его идентификатором и кодом |
NumberTypes
Параметр | Тип | Описание |
---|---|---|
type_id | uint32 | идентификатор типа номера |
type_name | string | наименование типа номера |
Categories
Параметр | Тип | Описание |
---|---|---|
category_id | uint32 | идентификатор категории |
type_id | uint32 | идентификатор типа номера |
type_name | string | наименование типа номера |
category_name | string | имя категории |
Regions
Параметр | Тип | Описание |
---|---|---|
project_id | uint32 | идентификатор проекта |
region_id | uint32 | идентификатор региона |
parent_region_id | uint32 | идентификатор родительского региона |
region_code | string | код региона |
region_name | string | имя региона (латиница) |
description | string | имя региона (кириллица) |
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
400 | Bad Request | proto: syntax error (line 1:2): unexpected token | некорректный формат запроса |
400 | Bad Request | proto: syntax error (line 1:2): invalid value | невалидный запрос |
Примеры
Входные параметры:
{}
Выходные параметры:
{
"regions": [
{
"project_id": 10008,
"region_id": 10257,
"parent_region_id": 10084,
"region_code": "SLH",
"region_name": "Salekhard",
"description": "Салехард"
}
],
"types": [
{
"type_id": 1104,
"type_name": "DEF"
}
],
"categories": [
{
"category_id": 10003,
"type_id": 1107,
"type_name": "CEN",
"category_name": "REGULAR"
}
]
}
Метод GetFree
Примените этот метод для получения списка свободных номеров для покупки. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/v1/GetFree
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
type_id | uint32 | идентификатор типа номера |
region_id | uint32 | идентификатор региона |
category_id | uint32 | идентификатор категории номера |
random | boolean | True вернет номера в случайном порядке |
mask | string | маска |
limit | uint32 | лимит выводимых строк |
offset | uint32 | номер строки, с которой начинать выборку (начинается с 0) |
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
numbers | array NumberElement | список номеров с информацией по ним |
NumberElement
Параметр | Тип | Описание |
---|---|---|
type_name | string | наименование типа номера |
region_name | string | имя региона |
category_name | string | имя категории номера |
number_code | uint64 | код номера |
subscription_fee | float | абонентская плата |
install_fee | float | стоимость покупки номера |
Список типов номеров (type_id)
Название | ID типа номера |
---|---|
Мобильный (DEF) | 1104 |
Городской (ABC) | 1105 |
7-800 (KDU) | 1106 (использовать только с регионом Россия) |
Список категорий номеров (category_id)
Название | ID категории номера для типа мобильный | ID категории номера для типа городской | ID категории номера для типа 7-800 |
---|---|---|---|
Обычный | 10000 | 10001 | 10002 |
Бронзовый | 10010 | 10011 | 10012 |
Серебряный | 10020 | 10021 | 10022 |
Золотой | 10030 | 10031 | 10032 |
Платиновый | 10040 | 10041 | 10042 |
Эксклюзивный | 10050 | 10051 | 10052 |
Список регионов (region_id)
Название | ID типа номера |
---|---|
Россия | 10084 |
Магнитогорск | 10186 |
Пермь | 10181 |
Санкт-Петербург | 10182 |
Москва | 10230 |
Ростов-на-Дону | 10231 |
Омск | 10196 |
Новороссийск | 10221 |
Екатеринбург | 10190 |
Казань | 10195 |
Сочи | 10153 |
Самара | 10192 |
Краснодар | 10184 |
Нижний Новгород | 10189 |
Новосибирск | 10183 |
Красноярск | 10191 |
Челябинск | 10229 |
Тольятти | 10227 |
Воронеж | 10193 |
Маска
Символ | Назначение |
---|---|
Точка ( . ) / Подчёркивание ( _ ) | пропускает один символ параметра number_code в поиске |
Звёздочка ( * ) / Знак процента ( % ) | пропускает несколько символов параметра number_code в поиске |
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
400 | Bad Request | proto: syntax error (line 1:2): unexpected token | пустое значение в поле type_id |
400 | Bad Request | proto: syntax error (line 1:2): invalid value | значение в поле type_id не валидно |
Примеры
Пример получения свободных номеров для региона - Москва, категории- Обычный, тип - Мобильный:
// Входные параметры
{
"type_id": 1104,
"region_id": 10230,
"category_id": 10000,
"random": true,
"mask": "7986...5275",
"limit": 1
}
// Выходные параметры
{
"numbers": [
{
"number_code": "79862285275",
"type_name": "DEF",
"region_name": "Moscow",
"category_name": "REGULAR",
"subscription_fee": 150,
"install_fee": 590
}
]
}
Пример получения свободных номеров для региона - Санкт-Петербург, категории- Бронзовый, тип - Городской:
// Входные параметры
{
"type_id": 1105,
"region_id": 10182,
"category_id": 10011,
"random": true,
"mask": "781221*",
"limit": 1
}
// Выходные параметры
{
"numbers": [
{
"number_code": "78122133337",
"type_name": "ABC",
"region_name": "St. Petersburg",
"category_name": "BRONZE",
"subscription_fee": 200,
"install_fee": 1000
}
]
}
Пример получения свободных номеров для региона - Россия, категории- Серебряный, тип - 7-800:
// Входные параметры
{
"type_id": 1106,
"region_id": 10084,
"category_id": 10022,
"random": true,
"limit": 1
}
// Выходные параметры
{
"numbers": [
{
"number_code": "78003333623",
"type_name": "KDU",
"region_name": "Russia",
"category_name": "SILVER",
"subscription_fee": 3500,
"install_fee": 50000
}
]
}
Метод Lock
Примените этот метод для бронирования номера перед его покупкой. Для этого выполните POST-запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/v1/Lock
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON-формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
number_code | uint64 | номер в формате 79999999999 |
seconds | uint32 | время бронирования в секундах (от 60 до 600 секунд) |
description | string | комментарий к бронированию номера |
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
Id | uint32 | идентификатор бронирования |
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
500 | Internal Server Error | Номер {number} не в статусе free | заданный в поле number_code номер не свободен для покупки |
400 | Internal Server Error | Номер {number} не существует | заданный в поле number_code номер не существует |
400 | Bad Request | proto: syntax error (line 2:20): unexpected token , | пустое значение в поле number_code |
Примеры
Входные параметры:
{
"number_code": 74951340002,
"seconds": 500
}
Выходные параметры:
{
"Id": 1001884
}
Метод Unlock
Примените этот метод для отмены бронирования номера. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/v1/Unlock
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
number_code | uint64 | номер |
uid | uint32 | идентификатор бронирования |
Выходные параметры
Пустой JSON с 200 OK статусом.
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
500 | Internal Server Error | Номер {number} не в статусе Reserved | указанный в поле number_code номер не зарезервирован |
400 | Bad Request | proto: syntax error (line 2:20): invalid value к | значение в поле number_code не валидно |
400 | Bad Request | proto: syntax error (line 2:20): unexpected token , | не задано значение в поле number_code |
500 | Internal Server Error | UID резерва для номера {number} неправильный | некорректный формат в поле uid |
400 | Bad Request | proto: (line 4:1): invalid value for uint32 type: } | не задано значение в поле uid |
400 | Bad Request | proto: syntax error (line 3:20): invalid value к | значение в поле uid не валидно |
Примеры
Входные параметры:
{
"number_code": 73412209107,
"uid": 1000988
}
Выходные параметры:
{}
Метод Lock
Примените этот метод для бронирования номера перед его покупкой. Для этого выполните POST-запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/v1/Lock
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON-формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
number_code | uint64 | номер в формате 79999999999 |
seconds | uint32 | время бронирования в секундах (от 60 до 600 секунд) |
description | string | комментарий к бронированию номера |
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
Id | uint32 | идентификатор бронирования |
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
500 | Internal Server Error | Номер {number} не в статусе free | заданный в поле number_code номер не свободен для покупки |
400 | Internal Server Error | Номер {number} не существует | заданный в поле number_code номер не существует |
400 | Bad Request | proto: syntax error (line 2:20): unexpected token , | пустое значение в поле number_code |
Примеры
Входные параметры:
{
"number_code": 74951340002,
"seconds": 500
}
Выходные параметры:
{
"Id": 1001884
}
Метод Buy
Примените этот метод для покупки ранее бронированного номера. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/v1/Buy
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
number_code | uint64 | номер |
reserve_uid | uint32 | идентификатор забронированного номера (возвращаемое поле id , после выполнения запроса LockNumber) |
Выходные параметры
Пустой JSON с 200 OK статусом.
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
500 | Internal Server Error | Error buying number: number isn’t reserved | указанный в поле number_code номер не зарезервирован |
400 | Bad Request | proto: syntax error (line 2:20): invalid value к | значение в поле number_code не валидно |
400 | Bad Request | proto: syntax error (line 2:20): unexpected token , | не задано значение в поле number_code |
400 | Bad Request | proto: (line 4:1): invalid value for uint32 type: } | не задано значение в поле reserved_uid |
400 | Bad Request | proto: syntax error (line 3:20): invalid value к | значение в поле reserved_uid не валидно |
Примеры
Входные параметры:
{
"number_code": 74996480010,
"reserve_uid": 1000993
}
Выходные параметры:
{}
Метод Delete
Примените этот метод для удаления ранее купленного номера. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/v1/Delete
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
number_code | uint64 | код номера |
Выходные параметры
Пустой JSON с 200 OK статусом.
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
500 | Internal Server Error | Application [ID] does not own resource [number] | указанный в поле number_code номер не принадлежит указанному приложению |
400 | Bad Request | proto: syntax error (line 2:20): invalid value п | значение в поле number_code не валидно |
400 | Bad Request | proto: (line 3:1): invalid value for uint64 type: } | не задано значение в поле number_code |
Примеры
Входные параметры:
{
"number_code": 74951341115
}
Выходные параметры:
{}
Метод GetInfo
Примените этот метод для получения информации об одном купленном номере. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/customer/v1/GetInfo
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
number_code | uint64 | купленный номер |
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
number_name | string | номер |
type_name | string | наименование типа номера |
region_name | string | имя региона |
application_name | string | имя приложения |
subscription_fee | float | стоимость абонентской платы |
install_fee | float | стоимость покупки номера |
create_date | string | дата покупки номера в формате RFC-3339 / ISO-8601 |
application_uuid | string | уникальный идентификатор приложения |
category_name | string | наименование категории |
Примеры
Входные параметры:
{
"number_code": 79011550006
}
Выходные параметры:
{
"number_name": "79016220127",
"type_name": "DEF",
"region_name": "Moscow",
"application_name": "test data_феекшигеуы",
"subscription_fee": 150,
"install_fee": 333,
"create_date": "2022-12-06T07:37:34.543471Z",
"application_uuid": "828b86c9-f3e5-4312-aa87-b2cb93f0ded2",
"category_name": "REGULAR"
}
Метод SetCallForwarding
Примените этот метод для настройки переадресации входящих вызовов. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/v1/SetCallForwarding
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
number_code | uint64 | номер Exolve, на который устанавливается переадресация |
call_forwarding_type | enum CallForwardingType | тип переадресации |
call_forwarding_data | oneof CallForwardingData | настройка переадресации |
CallForwardingType
Параметр | Тип | Описание |
---|---|---|
0 | enum | переадресация не определена |
2 | enum | переадресация на номер или SIP ID |
3 | enum | переадресация на URL |
4 | enum | переадресация на SIP-транк (Static IP) |
CallForwardingData
Параметр | Тип | Описание |
---|---|---|
call_forwarding_number | CallForwardingNumber | данные для переадресации на номер или SIP ID |
call_forwarding_ipcr | CallForwardingIpcr | данные для переадресации на URL |
call_forwarding_static | CallForwardingStatic | данные для переадресации на SIP-транк (Static IP) |
CallForwardingNumber
Параметр | Тип | Описание |
---|---|---|
redirect_type | enum RedirectType | тип переадресации |
call_control | CallControl | управление входящим вызовом |
event_url | string | URL для отправки уведомлений о ходе звонка |
event_extended | boolean | True для получения расширенных уведомлений. False для получения стандартного набора уведомлений |
client_id | string | сквозной идентификатор вызова от API клиента |
file_to_a | string | аудиосообщение звонящему абоненту |
file_to_b | string | аудиосообщение принимающему абоненту |
masking | boolean | True для скрытия номера звонящего абонента. False для показа оригинального номера звонящего абонента |
display_number | string | номер, который показывается абоненту C (номер переадресации). Зависит от параметра masking . Если значение masking - false , абоненту C показывается реальный номер звонящего. Если параметр masking - true , пользователь может передать любой номер Exolve, принадлежащий приложению |
RedirectType
Параметр | Тип | Описание |
---|---|---|
1 | enum | одиночная переадресация |
2 | enum | последовательная переадресация |
3 | enum | параллельная переадресация |
CallControl
Параметр | Тип | Описание |
---|---|---|
redirect_number | string | номер или юзернейм SIP ID для переадресации |
timeout | uint32 | время ожидания ответа в секундах |
active | boolean | True для переадресации вызова на redirect_number , False для сброса вызова |
name | string | символьное имя номера для переадресации вызова |
CallForwardingIpcr
Параметр | Тип | Описание |
---|---|---|
url | string | URL для переадресации звонка |
reserve | string | резервный номер для переадресации, если URL будет недоступен |
CallForwardingStatic
Параметр | Тип | Описание |
---|---|---|
static_ip | string | IP адрес |
port | uint32 | порт |
timeout | uint32 | таймаут переадресации |
did | uint64 | DID номер |
Выходные параметры
Пустой JSON с 200 OK статусом.
Примеры
Входные параметры для переадресации на номер или SIP ID:
{
"number_code": 74991112233,
"call_forwarding_type": 2,
"call_forwarding_number": {
"redirect_type": 1,
"call_control":[
{
"timeout": "16",
"active": true,
"name": "звонит клиент",
"redirect_number": "74992223344" // или 883140XXXXXXXXX (SIP ID)
}
],
"event_url": "https://example.com/",
"event_extended": true,
"client_id": "test",
"file_to_a": "12345",
"file_to_b": "54321",
"masking": true,
"display_number": "74995556677"
}
}
Входные параметры для переадресации на URL:
{
"number_code": 74991112233,
"call_forwarding_type": 3,
"call_forwarding_ipcr": {
"url": "https://example.com/",
"reserve": "74993334455"
}
}
Входные параметры для переадресации на SIP-транк (Static IP):
{
"number_code": 74991112233,
"call_forwarding_type": 4,
"call_forwarding_static": {
"static_ip": "127.0.0.1",
"port": 10,
"timeout": 30,
"did": 111
}
}
Выходные параметры:
{}
Примечание к отправке уведомлений при входящем звонке
Вы можете настроить отправку уведомлении на URL о ходе входящих звонков двумя способами:
-
Установить URL для определённого номера, передав значение в поле “event_url” при выполнения метода SetCallForwarding.
-
Установить URL в настройках приложения в блоке “Уведомления о событиях” в Личном кабинете разработчика. Установленный URL применяется ко всем номерам приложения.
При отправке уведомлений о ходе входящего звонка платформа Exolve сначала проверяет, указан ли URL индивидуально на номере вызова. Если URL не указан на номере, проверяет, указан ли в приложении. Подробнее:
- Если URL указан и на номере, и в приложении, то уведомления будут отправлены на URL из индивидуальных настроек номера.
- Если URL указан на номере, но пуст в приложении, то уведомления будут отправлены на URL из индивидуальных настроек номера.
- Если URL не указан на номере, но указан в приложении, то уведомления будут отправлены на URL из приложения
Метод DeleteCallForwarding
Примените этот метод для удаления настроек переадресации входящих вызовов. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/v1/DeleteCallForwarding
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
number_code | uint64 | код номера |
Выходные параметры
Пустой JSON с 200 OK статусом.
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
500 | Internal Server Error | Application [ID] does not own resource [number] | указанный в поле number_code номер не принадлежит указанному приложению |
400 | Bad Request | proto: syntax error (line 2:20): invalid value п | значение в поле number_code не валидно |
400 | Bad Request | proto: (line 3:1): invalid value for uint64 type: } | не задано значение в поле number_code |
Примеры
Входные параметры:
{
"number_code": 74951341115
}
Выходные параметры:
{}
Метод GetAttributes
Примените этот метод для получения информации о настройке купленного номера (переадресация, запись разговоров). Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/number/v1/GetAttributes
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
number_code | uint64 | код номера |
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
number_resource_id | uint64 | код номера |
status_name | string | наименование статуса |
attributes | NumberAttributes | атрибуты номера, информация о настройке |
NumberAttributes
Параметр | Тип | Описание |
---|---|---|
call_record | boolean | True если функция записи звонка включена. False если функция записи звонка отключена |
call_forwarding_type | enum ForwardingType | тип переадресации |
call_forwarding_number | enum ForwardingNumber | настройки номера, на который происходит переадресация |
call_forwarding_ipcr | enum ForwardingIpcr | URL, на который происходит переадресация |
ForwardingType
Параметр | Тип | Описание |
---|---|---|
CALL_FORWARDING_TYPE_NUMBER = 2 | string | переадресация на номер |
CALL_FORWARDING_TYPE_IPCR = 3 | string | переадресация на URL |
CALL_FORWARDING_TYPE_UNSPECIFIED = 0 | string | переадресация не определена |
ForwardingNumber
Параметр | Тип | Описание |
---|---|---|
redirect_type | int64 | тип переадресации: 1 - одиночная, 2 - последовательная, 3 - параллельная |
call_control | CallControl | управление входящим вызовом |
event_url | string | URL для отправки уведомлений о ходе звонка |
event_extended | boolean | True для получения расширенных уведомлений. False для получения стандартного набора уведомлений |
file_to_a | string | аудиосообщение звонящему абоненту |
file_to_b | string | аудиосообщение принимающему абоненту |
answer | boolean | True для проигрывания аудиосообщения в предответном состоянии. False для проигрывания аудиосообщения в ответном состоянии (False по умолчанию) |
masking | boolean | True для скрытия номер звонящего абонента. False для показа оригинального номера звонящего абонента |
display_number | string | номер Exolve, который видит звонящий абоненту при вызове |
CallControl
Параметр | Тип | Описание |
---|---|---|
period | string | период переадресации входящего вызова |
period_description | string | описание периода переадресации вызова |
timeout | uint32 | время ожидания ответа в секундах |
active | boolean | True для переадресации вызова на redirect_number , False для сброса вызова |
name | string | символьное имя номера для переадресации вызова |
redirect_number | string | номер для переадресации |
dtmf | string | добавочный номер |
ForwardingIpcr
Параметр | Тип | Описание |
---|---|---|
url | string | URL, на который происходит переадресация |
reserve | string | номер, на который происходит переадресация, если URL не доступен |
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
500 | Internal Server Error | Application [ID] does not own resource [number] | указанный в поле number_code номер не принадлежит указанному приложению или не верно задан формат номера |
400 | Bad Request | proto: syntax error (line 2:20): invalid value п | значение в поле number_code не валидно |
400 | Bad Request | proto: (line 3:1): invalid value for uint64 type: } | не задано значение в поле number_code |
Примеры
Входные параметры:
{
"number_code": 74996487174
}
Выходные параметры для номера с переадресацией на номер:
{
"number_resource_id": "94004",
"status_name": "Active",
"attributes": {
"call_record": false,
"call_forwarding_type": 2,
"call_forwarding_number": {
"redirect_type": 1,
"call_control":[
{
"period": "always",
"period_description": "всегда переадресовывать",
"timeout": "16",
"active": true,
"name": "звонит клиент",
"redirect_number": "74996480184",
"dtmf": "896"
}
],
"event_url": "https://example.com/",
"event_extended": true,
"file_to_a": "12345",
"file_to_b": "54321",
"answer": true,
"masking": true,
"display_number": "74995557890"
}
}
}
Входные параметры для переадресации на URL:
{
"number_resource_id": "51802",
"status_name": "",
"attributes": {
"call_record": true,
"call_forwarding_type": "CALL_FORWARDING_TYPE_IPCR",
"call_forwarding_ipcr": {
"url": "http://example.com",
"reserve": "74996482846"
}
}
}