Общая информация

Перед началом работы с API необходимо ознакомиться с соглашениями, которые используются в примерах.

Все запросы выполняются по протоколу HTTPS. В описании делее Домен и АТС идентичные понятия и обозначают выделенное виртуальное Если поле является обязательным, то в имени добавляется * Модели всех объектов содержат поле числовое поле ID. В примерах используются переменные, обозначенные как {{ Переменная }}:

Используемые переменные:

Переменная

Описание

v2_host

Адрес личного кабинета платформы

username

Логин пользователя

password

Пароль пользователя

auth_token

Ключ, полученные в результате выполнения Авторизация

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

POST http://{{v2_host}}/api/
Content-Type: application/json
Authorization: Bearer {{auth_token}}

{
  "action": "list",
  "obj": "DomainUser",
  "action_id": "123",
  "params": {
    "domain_id": 3
  }
}

Как правило, для всех объектов доступен следующий набор методов:

Действие

Описание

list

Получение списка объектов.

get

Получение объекта.

append

Добавление объекта.

update

Обновление объекта.

delete

Удаление объета.

При выполнении запросов к API выполняется проверка на наличие токена, наличие прав на работу с объектом, корректность заполненных данных и связанность объектов.

Коды ошибок:

msg_id

Описание

100

Не типизированная ошибка, описание в поле text.

10000

Не найдено поле domain_id для поиска домена. Возникает только в объектах Домена.

10001

Не удалось найти домена по его id.

10002

Не удалось найти побъект по указанным параметрам. Парметры в поле filter.

10003

Ошибка проверки уникальности. fields и values содержат значения для проверки.

10004

Запрашиваемое действие не доступно для объекта.

10005

Ошибка в значении поля. Коды ошибок.

10006

Ошибка связанности объектов. К примеру запрашивают объект из чужого Домена.

10007

Обибка связанности объекто на уровне базы данных.

10008

Ошибка конвертации аудио файла.

10009

Ошибка выполнения действия над объектом, связанная с его содержимом.

10010

Параметры запроса конфликтуют с другими данными.

10011

Ошибка действий на выключенным объектом.

10012

Ошибка ограничения количества объектов.

10013

Ошибка параметров элементов диалплана.

10014

Ошибка данных, передаваемых в диалплане.

10015

Ошибка, связанная с тарифными ограничениями.

10016

Ошибка, связанная с ограничениями лицензии на платформу.

10017

Ошибка изменения режима работы домена. Домен содержит элементы большего режима.

10018

Ошибка тестирования интеграций

10019

Попытка доступа к интеграции, не доступной в Домене.

10020

Ошибка, связанная с запретом дейтсвия над объектов.

Справочник кодов ошибок 10005:

msg_id

Описание

1

Значение должно быть из списка разрешенных.

2

Поле обязательное для заполнения.

3

Значение поля должно быть в формате UUID.

4

Слишком длинное значение строки.

5

Слишком короткое значение строки.

6

Строка не соответствует формату.

7

Формат данных не соответствует UTF-8.

8

Значение должно быть больше или равно установленного значения.

9

Значение должно быть меньше или равно установленного значения.

10

Некорректное значение хеша.

11

Значение не может быть хешем.

12

Не могу распарсить значение.

13

Данные не соответствуют формату URL.

14

Данные не соответствуют формату email.

15

Значение не является числом.

16

Необходимо более одного значения.

17

Не могу распарсить значение как список.

Типы данных:

Тип

Описание

StringType

Строка произвольной длинны.

IntType

Целое число.

DictType

Json формат вида {«Ключ»: «Значение», ….}.

ListType

Json формат вида [1, 2, 4, …].

EmailType

Строка соответствующая RFC 5322.

ModelType

Json формат, включающий модель объекта.

IPv4Type

Строка содержащая IP адрес RFC1918.

Статусы объектов:

ID

Описание

1

Объект включен.

0

Объект выключен.