Читать 8

Получение информации по сценариям переадресации


Описание

С помощью данного API метода можно получать информацию о настроенных в проекте сценариях переадресации.

Запрос

POST:

https://api.calltouch.ru/phone-service/v1/api/calltracking/call-redirect/list

HEADERS:

  • Access-Token — API-ключ;
  • SiteId — ID ЛК Calltouch.

Пример тела запроса

Тело запроса в формате JSON.

{
    "redirectOptions": {
        "redirectIds": [123, 345],
        "redirectName": {
            "value": "Номер",
            "filterMode": "star_twith"
        },
        "redirectStatus": "active"
    },    
    "poolOptions": {
        "poolName": {
            "value": "Остальные"
        }
    },
    "phoneNumbers": ["79001112233", "79005554433"]
}

Параметры запроса

Параметр Формат   Обязательный   Описание 
redirectOptions  object  Нет  Объект с фильтрами по настоенной на номерах переадресации. 
redirectOptions.redirectIds  array  Нет  Фильтр по id сценария переадресации.

При указании этого параметра будут выгружены только те номера, у которых настроена переадресации по сценариям с указанными id.

Массив, можно указать несколько id сценариев переадресации в массиве.

Максимум 50 штук.  

redirectOptions.redirectName.value  string  Нет  Фильтр по имени сценария переадресации.

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

Может быть найдено несколько подходящих сценариев переадресации, тогда отдаем все подходящие сценарии.

Максимум 100 символов. 
redirectOptions.redirectName.filterMode string Нет
Режим фильтрации по имени сценария, описание режимов:
  • start_with — начинается с;
  • contains — содержит;
  • exact — полное соответствие (по умолчанию если фильтр не задан).
redirectOptions.redirectStatus string Нет Фильтр по статусу сценария переадресации.

При указании этого параметра будут выгружены только сценарии с искомым статусом.

Возможные значения:

  • "active" — Активен;
  • "error" — Ошибка применения настроек сценария;
  • "sending" — Идет применение настроек сценария.
poolOptions.poolName.value string Нет Фильтр по названию пула.

При указании этого параметра будут выгружены только те сценарии переадресации, которые настроены на номерах в пулах с подходящими названиями. Поиск регистронезависимый. 

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

Максимум 100 символов.
poolOptions.poolName.filterMode  string  Нет  Режим фильтрации по имени пула, в котором используется сценарий переадресации, описание режимов:
  • start_with — начинается с;
  • contains — содержит;
  • exact — полное соответствие (по умолчанию если фильтр не задан).
phoneNumbers  array  Нет  Фильтр по подменным номерам, по которым нужно получить сценарии переадресации.

Формат "79123456789". 

Массив, можно указать несколько номеров в массиве.

Максимум 300 номеров.
Все условия-фильтры во входных параметрах совмещаются по логическому И.

Ответ

Пример ответа

{
  "data": [
    {
      "redirectId": 79105,
      "redirectName": "Транк",
      "redirectType": "sipTrunk",
      "redirectStatus": "active",
      "isComplex": false,
      "redirectParams": {
        "uri": "sip2264.sitnet.ru",
        "login": "login",
        "password": "pa55word",
        "ignoreEarlyMedia": true,
        "reservePhone": {
          "enabled": true,
          "phoneNumber": "79115554433",
          "callTimeout": 60
        }
      },
      "poolOptions": {
        "poolNames": [
          "cb"
        ],
        "poolIds": [
          163738
        ]
      },
      "phoneNumbers": [
        "74996268830"
      ]
    },
    {
      "redirectId": 79106,
      "redirectName": "Номер +79001328426",
      "redirectType": "phone",
      "redirectStatus": "active",
      "isComplex": false,
      "redirectParams": {
        "phoneNumber": "79001328426",
        "ignoreEarlyMedia": true,
        "reservePhone": {
          "enabled": false,
          "phoneNumber": "",
          "callTimeout": null
        }
      },
      "poolOptions": {
        "poolNames": [
          "Остальные",
          "Визитка"
        ],
        "poolIds": [
          123456,
          123321
        ]
      },
      "phoneNumbers": [
        "74996268831",
        "74996268832",
        "74996268833",
        "74996268834",
        "74996268835"
      ]
    },
    {
      "redirectId": 79107,
      "redirectName": "SIP URI",
      "redirectType": "sipUri",
      "redirectStatus": "active",
      "isComplex": false,
      "redirectParams": {
        "login": "00074994449182",
        "server": "vpbx400285819.mangosip.ru",
        "port": "5060",
        "ignoreEarlyMedia": false,
        "reservePhone": {
          "enabled": false,
          "phoneNumber": "",
          "callTimeout": null
        }
      },
      "poolOptions": {},
      "phoneNumbers": []
    },
    {
      "redirectId": 79108,
      "redirectName": "Распределение по времени",
      "redirectType": "timeOfDay",
      "redirectStatus": "active",
      "isComplex": true,
      "redirectParams": {},
      "poolOptions": {},
      "phoneNumbers": []
    },
    {
      ...
    }
  ]
}

Параметры ответа

Параметр   Формат  Описание 
data[n].redirectId  integer  ID сценария переадресации. 
data[n].redirectName  string  Имя сценария переадресации. 
data[n].redirectType  string Тип сценария:
  • "phone" — Переадресация на номер;
  • "sipUri" — Переадресация на SIP URI;
  • "sipTrunk" — Переадресация на SIP Trunk;
  • "timeOfDay" — По времени и дням недели;
  • "timeRule" — По времени и дням недели (расширенная);
  • "autoAttendant" — Голосовое приветствие/меню;
  • "ringGroup" — На группу номеров.
data[n].redirectStatus  string  Статус сценария:
  • "active" — Активен;
  • "error" — Ошибка применения настроек сценария;
  • "sending" — Идет применение настроек сценария.
data[n].isComplex  boolean  Сложный сценарий: true/false 
data[n].redirectParams  object  Подробности настроек сценария, содержание будет отличаться в зависимости от типа сценария (redirectType):
  • "phone": состоит из полей number, ignoreEarlyMedia, reservePhone
  • "sipUri": состоит из полей login, server, port, ignoreEarlyMedia, reservePhone
  • "sipTrunk": состоит из полей uri, login, password, ignoreEarlyMedia, reservePhone
  • "timeOfDay": пустой объект {}
  • "timeRule": пустой объект {}
  • "autoAttendant": пустой объект {}
  • "ringGroup": пустой объект {}
data[n].redirectParams.phoneNumber  string  Используется только если "type": "phone", содержит номер телефона переадресации, формат "79123456789". 
data[n].redirectParams.login  string  Используется только если "type": "sipUri", содержит логин от SIP URI.      
data[n].redirectParams.server   string  Используется только если "type": "sipUri", содержит сервер (IP/домен) от SIP URI. 
data[n].redirectParams.port  string  Используется только если "type": "sipUri", содержит порт SIP URI. 
data[n].redirectParams.uri  string  Используется только если "type": "sipTrunk", содержит адрес сервера транка в Телемире (sipXXXX.sitnet.ru).
data[n].redirectParams.login  string  Используется только если "type": "sipTrunk", содержит логин от SIP транка.  
data[n].redirectParams.password  string  Используется только если "type": "sipTrunk", содержит пароль от SIP транка. 
data[n].redirectParams.ignoreEarlyMedia  boolean  Используется, если "type": "phone", "sipUri" или "sipTrunk".
Настройка "Игнорировать оповещения", может принимать значения true/false.      
data[n].redirectParams.reservePhone  object  Используется, если "type": "phone", "sipUri" или "sipTrunk".
Cодержит настройки резервного номера.  
data[n].redirectParams.reservePhone.enabled   boolean   Используется, если "type": "phone", "sipUri" или "sipTrunk".
Настройка "используется резервный номер телефона", может принимать значения true/false.  
data[n].redirectParams.reservePhone.phoneNumber  string  Используется, если "type": "phone", "sipUri" или "sipTrunk".
Cодержит резервный номер телефона.  
data[n].redirectParams.reservePhone.callTimeout  integer  Используется, если "type": "phone", "sipUri" или "sipTrunk".
Количество секунд до звонка на резервный номер.
Может быть null. 
data[n].poolOptions.poolNames  array  Массив string из названий пулов, в которых подключен данный сценарий. 
data[n].poolOptions.poolIds  array  Массив string из ID пулов, в которых подключен данный сценарий. 
data[n].phoneNumbers  array  Массив string из номеров, которым назначен данный сценарий. 

Типовые ошибки

Ошибки авторизации

Если в запросе указаны некорректные авторизационные данные — то выводится ошибка. Список типовых ответов при запросах с некорректными авторизационными данными, или некорректными данными в теле API запроса вы можете посмотреть в этой статье.

Ошибки валидации

Если в запросе во входных параметрах обнаруживаются ошибки валидации — отвечаем кодом 400 и выводим ошибку, указывающую на проблемное поле, с пояснением, вида:

{
    "meta": [],
    "data": {
        "type": "validationError",
        "validationErrorData": {
            "violations": [
                {
                    "fieldPath": "Указание на ошибочное поле",
                    "message": "Описание в чем именно ошибка"
                }
            ]
        }
    }
}

Список типовых ответов при запросах с некорректными данными в теле API запроса вы можете посмотреть в этой статье.

Система баллов API

Система баллов API — механизм, регулирующий нагрузку на сервера Calltouch. Для каждого проекта выдается индивидуальное суточное количество баллов. За каждый успешно выполненный запрос списываются баллы. Подробнее читайте в статье: Система баллов API Calltouch

Количество запросов в секунду к API Calltouch ограничено — не более 5 запросов в секунду с одного IP-адреса. Например, если в 1 секунду с одного IP-адреса поступит 11 API-запросов, то 5 выполнятся сразу, а остальные API-запросы завершатся с ошибкой c кодом 429 (Too Many Requests).

02 февраля 2026
Не нашли решение проблемы?
Заполните форму, и мы вам поможем.