Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
d24:develop:v2:backend:v2 [2025/04/28 05:01]
127.0.0.1 внешнее изменение
d24:develop:v2:backend:v2 [2025/04/28 11:35] (текущий)
anton
Строка 1: Строка 1:
 +====== Описание API V2 мобильного приложения Д24 V2 ======
  
 +==== Список URL ====
 +
 +  * URL продакшн сервера https://​ds24.ru/​piedpiper
 +  * URL тестового сервера https://​s0.ds24.ru/​piedpiper
 +  * URL сервера аутентификациии https://​auth.ds24.ru/​api/​
 +  * URL FS API https://​ds24.ru/​fs
 +
 +===== Виды push-уведомлений =====
 +  * З_СП Заявка | принята в работу (переход в заявку с ид object_id при наличии)
 +  * З_СО Заявка | открыта повторно (переход в заявку с ид object_id ​ при наличии)
 +  * З_К Заявка | Комментарий к заявке добавлен (переход в заявку с ид object_id ​ при наличии)
 +  * З_Ф Заявка | Фото к заявке добавлено (переход в заявку с ид object_id ​ при наличии)
 +  * З_Н Заявка | Пользователь назначен исполнителем или ответственным (переход в заявку с ид object_id ​ при наличии)
 +  * О_С Оповещение | Оповещение новое об отключениях (переход в оповещение с ид object_id ​ при наличии)
 +  * Ж_О Журнал звонков | Оповещение об ответе на комментарий к звонку (переход в детализацию звонка с ид object_id при наличии)
 +  * З_СР Заявки | Срочные заявки - открытие приложения с предустановленным фильтром ??????????????​ DEPRECATED
 +  * З_НП Заявки | Не принятые в работу - открытие приложения с предустановленным фильтром (например "1 заявок требуют вашего внимания"​) (фильтры - Мои + Непринятые в работу)
 +  * З_КА Заявки | Посылается запрос по статусу аварийной заявки с быстрой кнопкой «Авария устранена» (переход в заявку с ид object_id ​ при наличии)
 +  * Ч_Н Чек-лист | Пользователь назначен проверяющим (переход в чек-лист с ид object_id ​ при наличии)
 +  * Ч_НП Чек-лист | Находящиеся в работе чек листы
 +  * Ф_С Документы | Создание документа по заявке от пользователя
 +  * Без вида / с видом не определнным - открытие текста пуша в модалке
 +
 +apple
 +<​code>​
 +    let push = {
 +                aps : {
 +                    sound : "​default",​
 +                    alert : {
 +                        title : "​Диспетчер24",​
 +                            body : MESSAGE,
 +                    object_id : OBJECT_ID,
 +                        object : OBJECT_TYPE,​
 +                        msg_id : PUSH_ID
 +                    }
 +                }
 +            };
 +
 +            if (OBJECT_TYPE == '​З_Н'​){  ​
 +                Object.assign(push['​aps'​],​ {category : "​RequestStatus"​});​
 +            }
 +</​code>​
 +===== Константы =====
 +
 +=== Типы помещений ===
 +^значение^описание^
 +|1|квартира|
 +|2|кладовка|
 +|3|парковка|
 +|4|офис|
 +|5|секция|
 +|6|дом|
 +|7|апартаменты|
 +
 +
 +=== Статусы push-уведомления ===
 +^значение^описание^
 +|0|не отправлено|
 +|1|отправлено|
 +|2|прочитано|
 +
 +
 +=== Статусы чек-листа ===
 +^код статуса^описание^
 +|PENDING| ​ К выполнению|
 +|INWORK| ​ В работе|
 +|SUCCESS| ​ Выполнено |
 +|VIOLATION| ​ Есть нарушения |
 +|IMPOSSIBLE| ​ Невозможно выполнить|
 +|FAILED| ​ Не выполнено|
 +|FORCIBLY|Принудительно завершено|
 +
 +=== статусы работ чек-листа ===
 +^Код статуса^описание^
 +|0|в ожидании выполнения|
 +|1|успешно выполнено |
 +|2| есть нарушения |
 +|3| невозможно выполнить |
 +===== Определение адреса сервера =====
 +
 +==== Определение адреса сервера при аутентификации по логину и паролю ====
 +POST https://​auth.ds24.ru/​api/​user/​auth
 +
 +Параметры запроса:​
 +^ Название ​      ^ Тип ​            ^ Обязательный ​      ^ Краткое описание ​   ^
 +| login          | string ​         | Да                 | - |
 +| password ​      | string ​         | Да                 | - |
 +
 +Параметры ответа
 +^ Название ​   ^ Тип ​             ^ Обязательный ​      ​^ ​ Краткое описание ​           ^
 +| ok          | boolean ​         | да                 | Успешно ли выполнился запрос |
 +| server ​     | string ​          | нет ​               | Адрес сервера ​               |
 +|login ​       |string ​           | нет ​               |Логин пользователя,​ если он успешно прошел процесс аутентификации|
 +|hash         ​|string ​           | нет ​               |-|
 +|secret ​      ​|string ​           | нет ​               |-|
 +
 +Пример:​
 +<code javascript>​
 +//Тело запроса
 +{
 +    "​login"​ : "​someuser",​
 +    "​password"​ : "​12345"​
 +}
 +
 +// Ответ
 +{
 +    "​ok":​ true,
 +    "​server":​ "​https://​ds24.ru/",​
 +    "​login":​ "​someuser",​
 +    "​hash":​ "​someuserhash",​
 +    "​secret":​ "​someusersecret"​
 +}
 +</​code>​
 +
 +==== Определение адреса сервера при регистрации по номеру телефона ====
 +POST https://​auth.ds24.ru/​api/​user/​reg
 +
 +Параметры запроса:​
 +^ Название ​      ^ Тип ​            ^ Обязательный ​      ^ Краткое описание ​   ^
 +| login          | string ​         | да                 | Номер телефона для регистрации |
 +
 +Параметры ответа:​
 +^ Название ​      ^ Тип ​            ^ Обязательный ​      ^ Краткое описание ​   ^
 +| ok             | boolean ​        | Да                 | Результат выполнения операции (true / false) |
 +| server ​        | string ​         | Нет ​               | Адрес сервера ​                               |
 +
 +Пример:​
 +
 +<code javascript>​
 +// Тело запроса
 +{
 +    "​login"​ : "​9125212573"​
 +}
 +
 +// Ответ
 +{
 +    "​ok":​ true,
 +    "​server":​ "​https://​ds24.ru/"​
 +}
 +</​code>​
 +
 +===== Уведомления во внешнюю систему =====
 +https://​ds24.ru/​wiki/​doku.php?​id=d24:​develop:​v3:​backend:​webhook
 +
 +===== Аутентификация и Авторизация =====
 +POST http://​server.ru/​registration
 +
 +==== Аутентификация ====
 +Аутентификация происходит путем отправки запроса на указанный выше метод.
 +Запрос должен включать:​
 +  - Заголовок с названием //"​authorization"//​
 +  - Тело запроса
 +=== Формирование значения заголовка authorization ===
 +Первоначальное значение формируется из двух или трех строк, разделенных двоеточием,​ окруженным пробелами (пробел двоеточие пробел).
 +есть 3 варианта формирования этого значения:​
 +  - из логина и пароля \\ В первой строке указывается слово "​login",​ вторая строка - значение логина пользователя,​ третья строка - его пароль. \\ **Пример:​** ​ //login : predeinay : myPassword123//​ \\ Такой формат заголовка отправляется при аутентификации по логину и паролю
 +  - из номера телефона \\ В первой строке указывается слово "​phone",​ вторая строка - номер телефона пользователя. \\ **Пример:​** //phone : 9125212573//​ \\ Такой формат заголовка отправляется при аутентификации по телефону с последующей проверкой кода из смс.
 +  - из номера телефона и проверочного кода из смс \\ В первой строке указывается слово "​phone",​ вторая строка - номер телефона пользователя,​ третья строка - проверочный код. \\ **Пример:​** //phone : 9125212573 : 12345// \\ Такой формат заголовка отправляется при проверке кода из смс.
 +
 +После того, как значение было сформировано,​ полученную строку нужно закодировать в формате base64. \\  ​
 +**Пример:​** строка //login : predeinay : myPassword123//​ превращается в //​bG9naW4gOiBwcmVkZWluYXkgOiBteVBhc3N3b3JkMTIz//​
 +
 +В результате получается такой заголовок:​ \\ 
 +"​authorization":​ "​bG9naW4gOiBwcmVkZWluYXkgOiBteVBhc3N3b3JkMTIz"​
 +
 +Параметры тела запроса:​
 +^ Название ^ Тип ​   ^ Обязательно ^ Описание ^
 +| devType ​ | string | да          | android / ios Тип устройства,​ если интеграция ​ с системой то указывать необходимо int|
 +|pushToken | string | да          | Токен для push-уведомлений |
 +|countrie_id| number | нет ​         | ИД страны,​ если не передать,​ то по умолчанию Россия (1) |
 +
 +Параметры ответа
 +^ Название ​   ^ Тип ​    ^ Обязательно ^ Описание ^
 +| ok          | boolean | да          | true / false. Успешно ли выполнен запрос к серверу.|
 +| credentials | boolean | да          | true / false. Успешность аутентификации. true - аутентификация пройдена,​ false - нет.|
 +| msg         | string ​ | нет ​        | информационное сообщение для вывода пользователю. Отправляется,​ если произошла ошибка и при отправке проверочного кода. ​ |
 +| token       | string ​ | нет ​        | Многоразовый индивидуальный токен авторизации. Используется в последующих запросах к серверу|
 +
 +Пример:​
 +<code javascript>​
 +// Тело запроса
 +{
 +  "​devType" ​  : "​int",​
 +  "​pushToken"​ : "",​
 +  "​countrie_id"​ : 1
 +}
 +// в pushToken необходимо писать уникальный тект, например "​uk_pravii_bereg"​
 +// Ответ
 +{
 +    "​ok" ​         : true,
 +    "​credentials"​ : true,
 +    "​token" ​      : "​someverysecrettoken123123123"​
 +}
 +</​code>​
 +
 +==== Авторизация ====
 +Для получения прав доступа к Д24 необходимо с каждым запросом к системе отправлять заголовок //​authorization//,​ значением которого должен быть полученный в предыдущем пункте токен авторизации,​ закодированный в формате base64. \\ 
 +**Пример:​** ​
 +  * Токен - //"​someverysecrettoken123123123"//​
 +  * Заголовок - "​authorization":"​c29tZXZlcnlzZWNyZXR0b2tlbjEyMzEyMzEyMw=="​
 +
 +===== Обработка ошибок =====
 +**!** В это описание не входят запросы на получение адреса сервера и аутентификацию
 +
 +Состояние запроса передается с помощью кодов состояния http.
 +
 +  * //200// - запрос успешно выполнен.
 +  * //401// - Отказ в авторизации
 +  * //404// - Метод запроса не найден или при выполнении запроса произошла ошибка.
 +
 +**!!!** В описании методов ниже описываются параметры и тип __**только успешного ответа (200)**__, если об ином не сказано в самом описании.
 +
 +Если тип ответа - Массив и данные не были найдены,​ то в ответ будет успешен (с кодом 200) и в ответе будет пустой массив.
 +
 +===== Справочники =====
 +
 +==== Получение списка доступных юридических лиц ====
 +GET http://​server.ru/​v2/​ref/​cnt_list
 +
 +
 +Тип ответа:​ Массив.
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +| cnt       | string | да          | Название юридического лица |
 +| cnt_id ​   | number | да          | Идентификатор юр. лица в базе данных Д24 |
 +| account_id ​   | number | да          | ИД аккаунта |
 +| callback_phone ​  | string | да          | Тел. юр. лица |
 +| support_phone ​   | string | да          | Тел. поддержки юр. лица |
 +
 +**Пример:​**
 +<code javascript>​
 +// ответ
 +[
 +    {
 +        "​cnt":​ "​Жил. трест Кир. р-на (Спартак)",​
 +        "​cnt_id":​ 10983,
 +        "​account_id":​ 2621,
 +        "​callback_phone":​ "​283-05-21",​
 +        "​support_phone":​ "​328-7100"​
 +    }, 
 +    {
 +        "​cnt":​ "​Жил. трест Кир. р-на (Центр)",​
 +        "​cnt_id":​ 11041,
 +        "​account_id":​ 2621,
 +        "​callback_phone":​ "​283-05-21",​
 +        "​support_phone":​ "​328-7100"​
 +    }, 
 +    {
 +        "​cnt":​ "​Жил. трест Кир. р-на ООО РЭУ-25 (Рекорд)",​
 +        "​cnt_id":​ 11081,
 +        "​account_id":​ 2621,
 +        "​callback_phone":​ "​283-05-21",​
 +        "​support_phone":​ "​328-7100"​
 +    }
 +]
 +</​code>​
 +
 +
 +==== Получение списка доступных городов ====
 +GET http://​server.ru/​v2/​ref/​city_list?​cnt_id=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|cnt_id ​    | number | нет ​         | Идентификатор юр. лица в базе данных Д24 |
 +
 +Тип ответа:​ Массив.
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +| city_text ​      | string | да          | Название города |
 +
 +**Пример:​**
 +<code javascript>​
 +// ответ
 +[
 +    {
 +        city_text:"​Курган г"
 +    }
 +]
 +</​code>​
 +
 +==== Получение списка доступных улиц / населенных пунктов ====
 +GET http://​server.ru/​v2/​ref/​street_list?​cnt_id=value&​city_text=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|cnt_id ​    | number | да          | Идентификатор юр. лица в базе данных Д24 |
 +|city_text ​    | strng | нет ​         | Название города |
 +
 +
 +Тип ответа:​ Массив
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +| street | string | да          | Название улицы |
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​street_list?​cnt_id=1
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​street":​ "​Александрова ул"
 +    }, 
 +    {
 +        "​street":​ "​Гурьевская ул"
 +    }, 
 +    {
 +        "​street":​ "​Инициативная ул"
 +    }, 
 +    {
 +        "​street":​ "​Леонова ул"
 +    }, 
 +    {
 +        "​street":​ "​Рекордная ул"
 +    }
 +]
 +</​code>​
 +
 +==== Получение списка доступных домов ====
 +GET http://​server.ru/​v2/​ref/​address_list?​cnt_id=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +| cnt_id | number | нет | идентификатор юр. лица в системе. Если при запросе отсутствует,​ то в ответе будут все улицы/​нас. пункты по доступным юр. лицам|
 +| city_text | string | нет | название города|
 +| street_text | string | нет | название улицы|
 +| flag_active| string | нет | только активные дома Д/Н|
 +
 +Тип ответа:​ Массив с объектами
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +| address | string | да | полный адрес дома|
 +| house_id | number | да | идентификатор дома в системе|
 +| fias | string | нет | идентификатор fias|
 +| flag_active | string | да | активен ли дом Д/Н|
 +| city_text | string | да | город дома|
 +| street_text | string | нет | улица дома|
 +| house_num | string | да | номер дома|
 +| corp | string | нет | корпус дома|
 +| struct | string | нет | строение дома|
 +| is_flat | string | нет | разрешено ли создавать квартиры|
 +| is_office | string | нет | разрешено ли создавать офисы|
 +| is_parking| string | нет | разрешено ли создавать парковки|
 +| is_larder | string | нет | разрешено ли создавать кладовки|
 +| is_section | string | нет | разрешено ли создавать секции|
 +| is_apart | string | нет | разрешено ли создавать апартаменты|
 +| is_alone | string | нет | разрешено ли создавать типы без помещений|
 +| is_moto_parking | string | нет | разрешено ли создавать мотоместа|
 +| is_bike_parking | string | нет | разрешено ли создавать веломеста|
 +| is_non_residential | string | нет | разрешено ли создавать нежилые помещения|
 +| is_strict_flat_select | string | нет | разрешено ли создавать новые flat|
 +
 +
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​address_list?​cnt_id=11601
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​address":"​Кемерово г, Дружбы ул, дом 1Б",
 +        "​house_id":​50136,​
 +        "​fias":​ null,
 +        "​flag_active":​ "​Д",​
 +        "​city_text":​ "​Кемерово г",
 +        "​street_text":​ "​Дружбы ул",
 +        "​house_num":​ "​1Б",​
 +        "​corp":​ null,
 +        "​struct":​ null,
 +        "​is_flat":​ "​Н",​
 +        "​is_office":​ "​Н",​
 +        "​is_parking":​ "​Н",​
 +        "​is_larder":​ "​Н",​
 +        "​is_section":​ "​Н",​
 +        "​is_apart":​ "​Н",​
 +        "​is_alone":​ "​Н",​
 +        "​is_moto_parking":​ "​Н",​
 +        "​is_bike_parking":​ "​Н",​
 +        "​is_non_residential":​ "​Н",​
 +        "​is_strict_flat_select":​ "​Н"​
 +    },
 +    {
 +        "​address":"​Кемерово г, Дружбы ул, дом 1А",
 +        "​house_id":​50135,​
 +        "​fias":​ null,
 +        "​flag_active":​ "​Н",​
 +        "​city_text":​ "​Кемерово г",
 +        "​street_text":​ "​Дружбы ул",
 +        "​house_num":​ "​1А",​
 +        "​corp":​ null,
 +        "​struct":​ null,
 +        "​is_flat":​ "​Н",​
 +        "​is_office":​ "​Н",​
 +        "​is_parking":​ "​Н",​
 +        "​is_larder":​ "​Н",​
 +        "​is_section":​ "​Н",​
 +        "​is_apart":​ "​Н",​
 +        "​is_alone":​ "​Н",​
 +        "​is_moto_parking":​ "​Н",​
 +        "​is_bike_parking":​ "​Н",​
 +        "​is_non_residential":​ "​Н",​
 +        "​is_strict_flat_select":​ "​Н"​
 +    },
 +    ...
 +]
 +</​code>​
 +
 +==== Получение списка групп домов ====
 +GET http://​server.ru/​v2/​ref/​group_obj_list?​cnt_id=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +| cnt_id | number | да | идентификатор юр. лица в системе.|
 +
 +Тип ответа:​ Массив с объектами
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +| description | string | да | название группы |
 +| group_obj_id | number | да | идентификатор группы|
 +
 +
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​group_obj_list?​cnt_id=11601
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​group_obj_id":​ 234,
 +        "​description":​ "​Луначарского"​
 +    },
 +    {
 +        "​group_obj_id":​ 235,
 +        "​description":​ "​Нелуначарского"​
 +    },
 +    ...
 +]
 +</​code>​
 +
 +==== Получение списка доступных подъездов у дома ====
 +GET http://​server.ru/​v2/​ref/​entrance_list?​house_id=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|house_id|number|да|идентификатор дома в системе. Ответ на запрос - список доступных подъездов в этом доме|
 +
 +Тип ответа:​ Массив c объектами
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|entrance|string|да|Номер доступного подъезда|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + GET http://​server.ru/​v2/​ref/​entrance_list?​house_id=1251
 +*/
 +
 +// Ответ
 +[
 +    {"​entrance":"​1"​},​
 +    {"​entrance":"​2"​},​
 +    {"​entrance":"​3"​},​
 +    {"​entrance":"​4"​},​
 +    {"​entrance":"​5"​}
 +]
 +</​code>​
 +
 +
 +==== Получение списка доступных этажей дома ====
 +GET http://​server.ru/​v2/​ref/​floor_list?​house_id=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|house_id|number|да|идентификатор дома в системе. Ответ на запрос - список доступных этажей в этом доме|
 +
 +Тип ответа:​ Массив с объектами
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|floor|number|да|Номер доступного этажа|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​floor_list?​house_id=1251
 +*/
 +
 +// Ответ
 +[
 +    {"​floor":​0},​
 +    {"​floor":​1},​
 +    {"​floor":​2},​
 +    {"​floor":​3},​
 +    {"​floor":​4},​
 +    {"​floor":​5}
 +]
 +</​code>​
 +
 +
 +==== Получение списка доступных квартир ====
 +GET http://​server.ru/​v2/​ref/​flat_list?​house_id=value1&​entrance=value2&​floor=value3
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|house_id|number|да| идентификатор дома в системе.|
 +|entrance|string|нет|номер подъезда в указанном доме|
 +|floor|number|нет|номер этажа в указанном доме|
 +
 +Тип ответа:​ Массив с объектами
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|flat|string|да|текстовое описание доступной квартиры|
 +|flat_id| number|да|идентификатор квартиры в системе|
 +|flat_type|number|да|тип помещения. Смотреть [[d24:​develop:​v2:​backend:​v2#​типы_помещений|описание типов помещений]]|
 +|entrance|string|нет|номер подъезда|
 +|floor|number|нет|номер этажа|
 +|flat_num|string|да|номер квартиры|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​flat_list?​house_id=1251&​entrance=2&​floor=5
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​flat_id":​ 876841,
 +        "​flat":​ "кв 1",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​1",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 1069252,
 +        "​flat":​ "оф 2",
 +        "​flat_type":​ 4,
 +        "​flat_num":​ "​2",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 876842,
 +        "​flat":​ "кв 2",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​2",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 876843,
 +        "​flat":​ "кв 3",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​3",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 876844,
 +        "​flat":​ "кв 4",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​4",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 876845,
 +        "​flat":​ "кв 5",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​5",​
 +        "​entrance":​ "​1",​
 +        "​floor":​ 2
 +    },
 +    {
 +        "​flat_id":​ 876846,
 +        "​flat":​ "кв 6",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​6",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 876847,
 +        "​flat":​ "кв 7",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​7",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 876848,
 +        "​flat":​ "кв 8",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​8",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 876849,
 +        "​flat":​ "кв 9",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​9",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 876850,
 +        "​flat":​ "кв 10",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​10",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 1082244,
 +        "​flat":​ "кв 12",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​12",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 966663,
 +        "​flat":​ "кв 15",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​15",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 2774303,
 +        "​flat":​ "м/м 321",
 +        "​flat_type":​ 3,
 +        "​flat_num":​ "​321",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    {
 +        "​flat_id":​ 2617083,
 +        "​flat":​ "кв 381",
 +        "​flat_type":​ 1,
 +        "​flat_num":​ "​381",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    }
 +]
 +</​code>​
 +
 +
 +==== Получение типов работ ====
 +GET http://​server.ru/​v2/​ref/​type_list
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|type|string|да|Название типа работы|
 +|type_id|number|да|идентификатор типа работы в системе|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​type_list
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​type":​ "​Сантехника",​
 +        "​type_id":​ 23
 +    }, 
 +    {
 +        "​type":​ "​Электричество",​
 +        "​type_id":​ 24
 +    }
 +]
 +</​code>​
 +
 +
 +==== Получение причин обращений ====
 +GET http://​server.ru/​v2/​ref/​ess_list?​type_ids=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|type_ids|string|нет|идентификаторы типов работ, разделенные двоеточием. Пример:​ 23:24|
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|ess|string|да|текст причины обращения|
 +|ess_id|number|да|идентификатор причины обращения в системе|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + GET http://​server.ru/​v2/​ref/​ess_list?​type_ids=23:​24
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​ess":​ "​Восстановить освещение в МОП",​
 +        "​ess_id":​ 1561
 +    },
 +    {
 +        "​ess":​ "​Восстановить освещение в подвале",​
 +        "​ess_id":​ 4204
 +    },
 +    ...
 +]
 +</​code>​
 +
 +
 +==== Получение доступных причин обращений для указанного дома ====
 +GET http://​server.ru/​v2/​ref/​ess_list_search?​house_id&​cnt_id&​find&​type_ids=40:​241&​flag_planned&​flag_emergency&​flag_warranty&​prepay_flag
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|house_id|number|нет|идентификатор дома|
 +|cnt_id|number|нет|идентификатор УК|
 +|find|string|нет|поиск|
 +|type_ids|string|нет|ид типов работ, разделенных :|
 +|flag_planned|string|нет|флаг,​ если хотим только плановые заявки Д \ Н|
 +|flag_emergency|string|нет|флаг,​ если хотим только аварийные заявки Д \ Н|
 +|flag_warranty|string|нет|флаг,​ если хотим только гарантийные заявки Д \ Н|
 +|prepay_flag|string|нет|флаг,​ если хотим только платные заявки Д \ Н|
 +
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|ess|string|да|текст причины обращения|
 +|ess_id|number|да|идентификатор причины обращения в системе|
 +|rtype|string|да|тип заявки|
 +|type|string|да|тип работ|
 +|type_id|number|да|идентификатор типа работ|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + GET http://​server.ru/​v2/​ref/​ess_list_search?​house_id=42243
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​ess_id":​ 2923,
 +        "​rtype":​ " Плановая",​
 +        "​type":​ "​Безопасность и СКУД",​
 +        "​type_id":​ 241,
 +        "​ess":​ "​Неисправность ворот / шлагбаума въезд во двор"​
 +    },
 +    {
 +        "​ess_id":​ 3078,
 +        "​rtype":​ " Плановая",​
 +        "​type":​ "​Безопасность и СКУД",​
 +        "​type_id":​ 241,
 +        "​ess":​ "​Неисправность ворот паркинга"​
 +    },
 +    ...
 +]
 +</​code>​
 +
 +
 +
 +==== Получение списка исполнителей ====
 +GET http://​server.ru/​v2/​ref/​emp_list?​cnt_id=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|cnt_id|number|нет|идентификатор юр. лица. |
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|emp|string|да|ФИО исполнителя|
 +|emp_id|number|да|идентификатор исполнителя в системе|
 +|status|string|да|статус исполнителя|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + GET http://​server.ru/​v2/​ref/​emp_list
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​emp"​ : "​Иванов Иван Иванович",  ​
 +        "​emp_id"​ : 23,
 +        "​status":​ "​Р"​
 +    },
 +    {
 +        "​emp"​ : "​Клабуков Александр Витальевич [deprecated]",  ​
 +        "​emp_id"​ : 12,
 +        "​status":​ "​О"​
 +    },
 +    {
 +        "​emp"​ : "​Григорович Сергей Константинович",  ​
 +        "​emp_id"​ : 13,
 +        "​status":​ "​Р"​
 +    }
 +]
 +</​code>​
 +
 +
 +==== Получение списка ответственных ====
 +GET http://​server.ru/​v2/​ref/​resp_list?​cnt_id=value1&​request_id=value2
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|cnt_id|number|нет|идентификатор юр. лица, для которого нужно получить ответственных|
 +|request_id|number|нет|идентификатор заявки,​ для которой нужно получить ответственных|
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|resp|string|да|ФИО ответственного|
 +|resp_id|number|да|идентификатор ответственного в системе|
 +|status|string|да|статус ответственного|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + GET http://​server.ru/​v2/​ref/​resp_list
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​resp":​ "​Иванов Иван Иванович",​
 +        "​resp_id":​ 35713,
 +        "​status":​ "​Р"​
 +    },
 +    {
 +        "​resp":​ "​Клабуков Александр Игоревич [deprecated]",​
 +        "​resp_id":​ 35293,
 +        "​status":​ "​Р"​
 +    },
 +    {
 +        "​resp":​ "​Пажитнов Алексей Леонидович",​
 +        "​resp_id":​ 28853,
 +        "​status":​ "​Р"​
 +    },
 +    ...
 +]
 +</​code>​
 +
 +
 +==== Получение списка статусов ====
 +GET http://​server.ru/​v2/​ref/​status_list?​request_id=value&​cnt_id=value&​request_type=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|нет|идентификатор заявки в системе|
 +|cnt_id|number|нет|идентификатор управляющей компании|
 +|request_type|number|нет|тип заявки в числовом обозначении|
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|status|string|да|Текстовое описание статуса|
 +|status_id|number|да|идентификатор статуса в системе|
 +|reasons|number|да|количество доступных причин статуса|
 +|need_comment|number|да| необходимо ли обязательно указывать комментарий в момент перевода заявки в данный статус (0 - нет / 1 - да)|
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​status_list?​request_id=1
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​status":​ "​Принята в работу",​
 +        "​status_id":​ 2,
 +        "​reasons":​ 0,
 +        "​need_comment":​ 0
 +    },
 +    {
 +        "​status":​ "​Отложена",​
 +        "​status_id":​ 4,
 +        "​reasons":​ 14,
 +        "​need_comment":​ 0
 +    },
 +    {
 +        "​status":​ "​Открыта повторно",​
 +        "​status_id":​ 5,
 +        "​reasons":​ 3,
 +        "​need_comment":​ 0
 +    },
 +    {
 +        "​status":​ "​Выполнена",​
 +        "​status_id":​ 3,
 +        "​reasons":​ 0,
 +        "​need_comment":​ 1
 +    }
 +]
 +</​code>​
 +
 +
 +==== Получение списка статусов в виде дерева ====
 +DEPRECATED
 +GET http://​server.ru/​v2/​ref/​status_tree_list
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|status| string|да|-|
 +|status_id|string|да|-|
 +|reasons_count|number|да|-|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​status_tree_list
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​status":​ "​Открытые заявки",​
 +        "​status_id":​ "​1:​65:​70:​5:​2:​23:​4",​
 +        "​reasons_count":​ 0
 +    },
 +    {
 +        "​status":​ "​...Новые",​
 +        "​status_id":​ "​1:​65:​70:​5",​
 +        "​reasons_count":​ 0
 +    },
 +    {
 +        "​status":​ "​.....|Зарегистрирована",​
 +        "​status_id":​ "​1",​
 +        "​reasons_count":​ 0
 +    }
 +]
 +</​code>​
 +
 +
 +==== Получение типов заявок ====
 +GET http://​server.ru/​v2/​ref/​req_type_list
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|rtype_id|number|да|идентификатор типа заявки|
 +|rtype|string|да|текстовое описание типа заявки|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​req_type_list
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​rtype_id":​ 1,
 +        "​rtype":​ "​Обычные"​
 +    },
 +    {
 +        "​rtype_id":​ 2,
 +        "​rtype":​ "​Аварийные"​
 +    },
 +    {
 +        "​rtype_id":​ 3,
 +        "​rtype":​ "​Платные"​
 +    },
 +     {
 +        "​rtype_id":​ 5,
 +        "​rtype":​ "​Гарантийные"​
 +    }
 +]
 +</​code>​
 +
 +
 +==== Получение списка причин статусов ====
 +GET http://​server.ru/​v2/​ref/​status_reason_list?​status_id=value&​cnt_id=value&​request_type=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|status_id|number|да|идентификатор статуса,​ для которого нужно получить список причин|
 +|cnt_id|number|да|идентификатор управляющей компании|
 +|request_type|number|нет|тип заявки в числовом обозначении|
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|reason_id|number|да|идентификатор причины статуса в системе|
 +|reason|string|да|текстовое описание причины статуса|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​ref/​status_reason_list?​status_id=25
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​reason_id":​ 7164,
 +        "​reason":​ "​Сделал сам"​
 +    },
 +    {
 +        "​reason_id":​ 7,
 +        "​reason":​ "​заявитель доволен"​
 +    },
 +    {
 +        "​reason_id":​ 8,
 +        "​reason":​ "​невозможно проверить"​
 +    },
 +    {
 +        "​reason_id":​ 9,
 +        "​reason":​ "​автоматически"​
 +    },
 +    ...
 +]
 +</​code>​
 +
 +==== Получение списка причин отказа от заявки ====
 +GET http://​server.ru/​v2/​ref/​request_refuse_reason_list?​is_emergency=value
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|is_emergency|number|нет|1 - аварийная заявка / 0 (или любое другое значение,​ отличное от 1) - не аварийная заявка). В зависимости от параметра приходит разный список отказов.|
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|reject_reason|string|да|текстовое описание причины отказа от заявки|
 +|refuse_id|string|да|идентификатор причины отказа|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос для аварийной заявки
 +/*
 +http://​server.ru/​v2/​ref/​request_refuse_reason_list?​is_emergency=1
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​reject_reason":​ "​Сегодня не работаю",​
 +        "​refuse_id":​ "​5"​
 +    },
 +    {
 +        "​reject_reason":​ "До конца смены менее 30 минут",​
 +        "​refuse_id":​ "​6"​
 +    },
 +    {
 +        "​reject_reason":​ "Не мой профиль",​
 +        "​refuse_id":​ "​7"​
 +    },
 +    {
 +        "​reject_reason":​ "Не аварийный случай",​
 +        "​refuse_id":​ "​8"​
 +    }
 +]
 +
 +//​Запрос для НЕ аварийной заявки
 +/*
 +http://​server.ru/​v2/​ref/​request_refuse_reason_list?​is_emergency=0
 +*/
 +
 +//​Ответ
 +[
 +    {
 +        "​reject_reason":​ "Не мой профиль",​
 +        "​refuse_id":​ "​1"​
 +    },
 +    {
 +        "​reject_reason":​ "Не мой участок",​
 +        "​refuse_id":​ "​2"​
 +    },
 +    {
 +        "​reject_reason":​ "Я на больничном",​
 +        "​refuse_id":​ "​3"​
 +    },
 +    {
 +        "​reject_reason":​ "У меня выходной / отпуск",​
 +        "​refuse_id":​ "​4"​
 +    }
 +]
 +</​code>​
 +
 +
 +
 +==== Получение списка стран и кодов стран (публичный) ====
 +GET http://​server.ru/​v2/​public/​ref/​countries_list
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа (объектов массива)
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|countrie_id|number|да|идентификатор ​ страны|
 +|countrie_name|string|да|название страны|
 +|phone_length|number|да|длина номера телефона в стране|
 +|phone_code|string|да|телефонный код страны|
 +|countrie_code|string|да|символьный код страны|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +/*
 +http://​server.ru/​v2/​public/​ref/​countries_list
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​countrie_id":​ 1,
 +        "​countrie_name":​ "​Россия",​
 +        "​phone_length":​ 10,
 +        "​phone_code":​ "​+7",​
 +        "​countrie_code":​ "​RU"​
 +    },
 +    {
 +        "​countrie_id":​ 2,
 +        "​countrie_name":​ "​Узбекистан",​
 +        "​phone_length":​ 9,
 +        "​phone_code":​ "​+998",​
 +        "​countrie_code":​ "​UZ"​
 +    }
 +]
 +
 +</​code>​
 +
 +===== Оповещения =====
 +
 +==== Создание оповещения ====
 +POST http://​server.ru/​v2/​oi
 +
 +**Параметры тела запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|house_ids|string|да|Идентификаторы домов, на которые будет распространяться оповещение|
 +|type| string |да| Тип оповещения |
 +|start_at|string|неи|Дата и время старта оповещения в формате "​ДД.ММ.ГГГГ ЧЧ.ММ"​|
 +|end_at|string|нет|Дата и время окончания оповещения в формате "​ДД.ММ.ГГГГ ЧЧ.ММ"​|
 +|service_list|string|нет|Набор услуг, разделенных двоеточием. Пример:​ "​Э:​О"​|
 +|resp|string|нет|Зона ответственности|
 +|reason|string|нет|Причина (одиночный выбор)|
 +|what|string|нет|Объект|
 +|note|string|да| описание оповещения |
 +
 +Описание возможных значений параметров:​
 +
 +Тип оповещения:​
 +
 +  * Утечка У
 +  * Опрессовка Р
 +  * Отключение услуг О
 +  * Подвоз воды В
 +  * Подпоры П
 +  * Прочее Д
 +  * Акция А
 +Услуги:​
 +
 +  * ХВС Х
 +  * ГВС Г
 +  * Канализация К
 +  * Отопление О
 +  * Электричество Э
 +  * Газ З
 +  * Лифт Л
 +Зона отвественности:​
 +
 +  * Управляющая компания У
 +  * Ресурсоснабжающая организация Р
 +  * Неизвестно Н
 +Причина (одиночный выбор):​
 +
 +  * Авария А
 +  * Плановые работы П
 +  * Задолженность за оплату З
 +  * Неизвестно Н
 +Объект
 +
 +  * Несколько домов М
 +  * Весь дом Д
 +  * Подъезд П
 +  * Стояк С
 +  * Несколько квартир К
 +  * Неизвестно Н
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|affected_rows|number|да|Количество созданных/​затронутых изменениями строк|
 +|info_id|number|да|идентификатор созданного оповещения в системе|
 +
 +**Примечания:​**
 +
 +Если дома находятся в разных УК, то для каждой УК будет создано свое оповещение. В этом случае affected_rows будет больше 1 а info_id идентификатором последнего созданного оповещения.
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//Тело запроса
 +{
 +    "​house_ids":​ "​34021:​42243",​
 +    "​type":​ "​О",​
 +    "​start_at":​ "​22.01.2016 10:​40",​
 +    "​end_at":​ "​22.01.2016 18:​30",​
 +    "​service_list":​ "​Э:​О",​
 +    "​resp":​ "​Р",​
 +    "​reason":​ "​П",​
 +    "​what":​ "​М",​
 +    "​note":​ "​Тест создания"​
 +}
 +
 +// Ответ
 +{
 +    "​affected_rows":​ 1,
 +    "​info_id":​ 139284
 +}
 +</​code>​
 +
 +==== Изменение оповещения,​ написание комментария ====
 +PUT http://​server.ru/​v2/​oi/:​info_id
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ^ Обязательно ^ Описание^
 +|info_id|number|да|идентификатор оповещения,​ которое нужно обновить|
 +
 +**Параметры тела запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|type|string|нет|тип оповещения|
 +|status|string|нет|статус оповещения|
 +|service_list|string|нет|списог услуг через : (Х:О)|
 +|reason|string|нет|причина|
 +|flag_system|string|нет|флаг для внутреннего пользования|
 +|note|string|нет|описаниеоповещения|
 +|push_text|string|нет|текст уведомления|
 +|what|string|нет|объект|
 +|resp|string|нет|ответственный|
 +|svc_id|number|нет|ид РСО|
 +|employee_id|number|нет|ид исполнителя|
 +|essence_id|number|нет|ид причины обращения|
 +|header|string|нет|заголовок акции|
 +|price|number|нет|стоимость|
 +|more_info_link|string|нет|ссылка для акции|
 +|date_start_tz|string|нет|дата начала в формате DD.MM.YYYY HH:mm|
 +|date_end_tz|string|нет|дата окончания в формате DD.MM.YYYY HH:mm|
 +|comment|string|нет|комментарий|
 +|file_id|number|нет|ид удаляемого файла|
 +|delete_file|boolean|нет|удаляем ли файл|
 +|fileName|string|нет|имя файла|
 +|fileUrl|string|нет|юрл файла|
 +|files|array|нет|массив файлов|
 +
 +files представляет собой массив объектов такого вида и передается в случае загрузки нескольких файлов:​
 +
 +fileName string нет имя файла
 +fileUrl string нет юрл файла
 +
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|affected_rows|number|да|Количество созданных/​затронутых изменениями строк, в том числе и созданный комментарий|
 +|info_id|string|да|идентификатор оповещения,​ которое обновлялось|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 +http://​server.ru/​v2/​oi/​139704
 +*/
 +
 +//Тело запроса
 +{
 +    "​type":​ "​О",​
 +    "​status":​ "​З",​
 +    "​date_start_tz":​ "​02.09.2024 10:​11",​
 +    "​date_end_tz":​ "​02.09.2024 10:​11",​
 +    "​reason":​ "​Н",​
 +    "​flag_system":​ "​Н",​
 +    "​service_list":​ "​Х",​
 +    "​note":​ "​постман",​
 +    "​push_text":​ "​)))",​
 +    "​what":​ "​Д",​
 +    "​resp":​ "​Н",​
 +    "​header":​ "​)))",​
 +    "​price":​ 10,
 +    "​more_info_link":​ "​ссылка",​
 +    "​comment":​ "​ljk",​
 +    "​svc_id":​ 123,
 +    "​employee_id":​ 123,
 +    "​file_id":​ 123,
 +    "​delete_file":​ true,
 +    "​fileName":​ "​123",​
 +    "​fileUrl":​ "url here"
 +
 +}
 +
 +// Ответ
 +{
 +    "​affected_rows":​ 1,
 +    "​info_id":​ "​139704"​
 +}
 +</​code>​
 +
 +==== Получение списка оповещений ====
 +GET http://​server.ru/​v2/​oi?​cnt_id=value1&​status=value2&​house_id=value3&​type=value4&​service_list=value5&​custom_filter=value6&​start=value7&​count=value8
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|с какой позиции начать показывать|
 +|count|number|да|количество элементов,​ которые нужно показать|
 +|cnt_id|number|нет|идентификатор юр. лица|
 +|house_id|number|нет|идентификатор дома|
 +|status|string|нет|статус оповещения "​А"​ - активно "​З"​ - закрыто|
 +|type|string|нет|тип оповещения|
 +|service|string|нет|список услуг через двоеточие|
 +|custom_filter|string|нет|отменяет все прочие фильтры|
 +|date_start|string|нет|дата и время начала в ISO формате|
 +|date_end|string|нет|дата и время конца в ISO формате|
 +|city_text|string|нет|фильтр по городу|
 +|street_text|string|нет|фильтр по улице|
 +|reason|string|нет|причина оповещения|
 +|resp|string|нет|зона ответственности|
 +|svc_id|string|нет|РСО оповещения|
 +|moderation_needed|string|нет|статус модерации Д\Н|
 +
 +
 +
 +
 +**Тип ответа:​** Массив объектов
 +
 +**Параметры ответа** (объектов массива):​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|info_id|number|да|идентификатор оповещения|
 +|type|string|да|тип оповещения|
 +|type_str|string|да|текстовое описание типа оповещения|
 +|start_at|string|да|дата и время начала в часовом поясе пользователя. Формат DD.MM.YYYY hh24:mi|
 +|end_at|string|может быть null|дата и время конца в часовом поясе пользователя. Формат DD.MM.YYYY hh24:mi|
 +|created_at|string|да|дата и время создания оповещения. Формат DD.MM.YYYY hh24:mi|
 +|start_at_tz|string|да|дата и время начала в ISO формате|
 +|end_at_tz|string|может быть null|дата и время конца в ISO формате|
 +|created_on_tz|string|да|дата и время создания оповещения в ISO формате|
 +|updated_on_tz|string|может быть null|дата и время изменения оповещения в ISO формате|
 +|note|string|да|текст оповещения|
 +|last_comments|array|да|список последних комментариев|
 +|reason|string|да|причина оповещения|
 +|reason_str|string|да|текстовое описание причины оповещения|
 +|resp|string|да|зона ответственности|
 +|status|string|да|статус оповещения статус оповещения "​А"​ - активно "​З"​ - закрыто|
 +|status_str|string|да|текстовое описание статуса оповещения|
 +|service_list|string|может быть null|список услуг через двоеточие|
 +|service_list_str|string|может быть null|текстовое описание услуг оповещения через запятую|
 +|all_flags|string|-|все флаги|
 +|area_str|string|-|области ответственности службы|
 +|object_list|array|да|список домов оповещения|
 +|house_state_list|array|да|список домов оповещения со статусами|
 +
 +
 +**Параметры массива last_comments (список последних комментариев):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|note|string|да|текст комментария|
 +
 +**Параметры массива object_list (список домов оповещения):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|street|string|да|улица,​ к домам которой относится оповещение|
 +|houses|string|да|список домов на этой улице, к которым относится оповещение|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​запрос
 +
 +http://​server.ru/​v2/​oi?​start=1&​count=50
 +
 +// Ответ
 +[
 +    {
 +        "​info_id":​ 139284,
 +        "​type":​ "​О",​
 +        "​type_str":​ "​Отключение ",
 +        "​start_at":​ "​22.01.2016 10:​40",​
 +        "​end_at":​ "​22.01.2016 18:​30",​
 +        "​created_at":​ "​15.11.2021 16:​32",​
 +        "​note":​ "​Тест создания",​
 +        "​status":​ "​А",​
 +        "​status_str":​ "​Активно",​
 +        "​service_list":​ "​О:​Э",​
 +        "​all_flags":​ "​ННДДННН",​
 +        "​service_list_str":​ "​Отопление,​ Электричество",​
 +        "​object_list":​ [
 +            {
 +                "​street":​ "​Апрельская ул",
 +                "​houses":​ "​15"​
 +            },
 +            {
 +                "​street":​ "​Ленина ул",
 +                "​houses":​ "​1"​
 +            }
 +        ],
 +        "​house_state_list":​ [
 +        {
 +            "​status_id":​ 360827,
 +            "​house_id":​ 54696,
 +            "​status":​ "​З",​
 +            "​date_start_tz":​ "​2024-09-02T09:​00:​00.000Z",​
 +            "​date_end_tz":​ "​2024-09-02T12:​00:​00.000Z",​
 +            "​address":​ "​Екатеринбург г, Луначарского ул, дом 240",
 +            "​street":​ "​Луначарского ул",
 +            "​house":​ "​240"​
 +        }
 +    ]
 +    },
 +    ...
 +]
 +</​code>​
 +
 +==== Получение детализации оповещения ====
 +GET http://​server.ru/​v2/​oi/:​info_id
 +
 +**переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|info_id|number|да|идентификатор оповещения,​ для которого нужно получить детализацию|
 +
 +Тип ответа:​ Объект
 +
 +Параметры ответа
 +**Параметры ответа**:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|info_id|number|да|идентификатор оповещения|
 +|created_by|number|может быть null|ид сотрудника,​ создавшего оповещение|
 +|request_id|number|может быть null|ид заявки|
 +|employee_id|number|может быть null|ид исполнителя|
 +|essence_id|number|может быть null|ид причины обращения|
 +|owner_id|number|может быть null|ид УК|
 +|flag_system|string|да|для внутреннего пользования Д Н|
 +|type|string|да|тип оповещения|
 +|type_str|string|да|текстовое описание типа оповещения|
 +|start_at|string|да|дата и время начала в часовом поясе пользователя. Формат DD.MM.YYYY hh24:mi|
 +|end_at|string|может быть null|дата и время конца в часовом поясе пользователя. Формат DD.MM.YYYY hh24:mi|
 +|created_at|string|да| дата и время создания оповещения|
 +|start_at_tz|string|да|дата и время начала в часовом поясе пользователя в формате ISO|
 +|end_at_tz|string|да|дата и время конца в часовом поясе пользователя в формате ISO|
 +|created_on_tz|string|да|дата и время создания оповещения в формате ISO|
 +|updated_on_tz|string|да|дата и время обновления оповещения в формате ISO|
 +|note|string|да|текст оповещения|
 +|last_comments|array|да|последние комментарии|
 +|houses|array|да|список домов для оповещения|
 +|status|string|да|статус оповещения статус оповещения "​А"​ - активно "​З"​ - закрыто|
 +|status_str|string|да|текстовое описание статуса оповещения|
 +|service_list|string|может быть null|код услуги,​ к которой относится оповещение|
 +|service_list_str|string|может быть null|услуга,​ к которой относится оповещение|
 +|reason|string|да|Код причины|
 +|reason_str|string|да|текстовое описание причины|
 +|what_str|string|да|текстовое описание объекта|
 +|resp|string|да|код ответственного|
 +|header|string|нет|заголовок акции|
 +|more_info_link|string|нет|ссылка акции|
 +|push_text|string|нет|текст уведомления|
 +|username|string|нет|юзернейм|
 +|position|string|нет|позиция|
 +|access|string|нет|доступ|
 +|essence|string|нет|название ПО|
 +|what|string|нет|объект|
 +|price|number|нет|стоимость|
 +|resp_str|string|да|ответственный. Если РСО, тогда svc_id и svc не null|
 +|emp_str|string|да|исполнитель|
 +|svc_id|number|может быть null| идентификатор РСО|
 +|svc|string|может быть null|название РСО|
 +|house_state_list|array|да|список домов оповещения со статусами|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 + ​http://​server.ru/​v2/​oi/​139704
 +*/
 +
 +// Ответ
 +{
 +    "​info_id":​ 139704,
 +    "​created_by":​ 35753,
 +    "​svc_id":​ null,
 +    "​request_id":​ null,
 +    "​employee_id":​ null,
 +    "​essence_id":​ null,
 +    "​owner_id":​ null,
 +    "​flag_system":​ "​Н",​
 +    "​start_at":​ "​04.05.2024 22:​00",​
 +    "​end_at":​ "​04.05.2024 22:​00",​
 +    "​created_at":​ "​24.08.2022 11:​38",​
 +    "​start_at_tz":​ "​2024-05-04T19:​00:​00.000Z",​
 +    "​end_at_tz":​ "​2024-05-04T19:​00:​00.000Z",​
 +    "​created_on_tz":​ "​2022-08-24T08:​38:​50.278Z",​
 +    "​updated_on_tz":​ "​2024-09-19T09:​41:​34.460Z",​
 +    "​type":​ "​У",​
 +    "​note":​ "​постман",​
 +    "​last_comments":​ [
 +        {
 +            "​note":​ "​hjkhlhl"​
 +        },
 +        {
 +            "​note":​ "​X)D"​
 +        }
 +    ],
 +    "​status":​ "​З",​
 +    "​reason":​ "​Н",​
 +    "​resp":​ "​Н",​
 +    "​header":​ "​)))",​
 +    "​more_info_link":​ "​ссылка",​
 +    "​price":​ 10,
 +    "​push_text":​ "​)))",​
 +    "​what":​ "​Д",​
 +    "​username":​ "​dev",​
 +    "​position":​ "​Технический директор",​
 +    "​access":​ "​С",​
 +    "​emp_str":​ null,
 +    "​essence":​ null,
 +    "​svc":​ null,
 +    "​service_list":​ "​Х",​
 +    "​reason_str":​ "​Неизвестно",​
 +    "​what_str":​ "​Весь дом",​
 +    "​type_str":​ "​Утечка ",
 +    "​status_str":​ "​Закрыто",​
 +    "​service_list_str":​ "​ХВС",​
 +    "​resp_str":​ "​Неизвестно",​
 +    "​houses":​ [
 +        {
 +            "​street":​ "​Луначарского ул",
 +            "​houses":​ "​240"​
 +        }
 +    ],
 +    "​house_state_list":​ [
 +        {
 +            "​status_id":​ 360827,
 +            "​house_id":​ 54696,
 +            "​status":​ "​З",​
 +            "​date_start_tz":​ "​2024-09-02T09:​00:​00.000Z",​
 +            "​date_end_tz":​ "​2024-09-02T12:​00:​00.000Z",​
 +            "​address":​ "​Екатеринбург г, Луначарского ул, дом 240",
 +            "​street":​ "​Луначарского ул",
 +            "​house":​ "​240"​
 +        }
 +    ]
 +}
 +</​code>​
 +==== Получение списка домов, на которые распространяется оповещение в виде списка состояний по каждому дому ==== 
 +GET http://​server.ru/​v2/​oi/:​info_id/​house_state
 +
 +**переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|info_id|number|да|идентификатор оповещения,​ для которого нужно получить список домов|
 +
 +**Тип ответа:​** Массив объектов ​
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|status_id|number|да|id записи состояния|
 +|house_id|number|да|id дома|
 +|status|string|да|статус состояния дома "​А"​ - активно "​З"​ - закрыто|
 +|date_start_tz|string|да|Временная метка по UTC даты начала|
 +|date_end_tz|string|да|Временная метка по UTC даты окончания|
 +|address|string|да|Текстовое представление адреса|
 +|house|string|да|Текстовое представление дома|
 +|street|string|да|Текстовое представление улицы|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 +http://​server.ru/​v2/​oi/​139246/​house_state
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​status_id":​ 4981824,
 +        "​house_id":​ 40783,
 +        "​status":​ "​З",​
 +        "​date_start_tz":​ "​2024-01-15T10:​18:​00.000Z",​
 +        "​date_end_tz":​ null,
 +        "​address":​ "​Курган г, Бурова-Петрова ул, дом 78",
 +        "​house":​ "​78",​
 +        "​street":​ "​Бурова-Петрова ул"
 +    },
 +    {
 +        "​status_id":​ 4981825,
 +        "​house_id":​ 49396,
 +        "​status":​ "​З",​
 +        "​date_start_tz":​ "​2024-01-15T10:​18:​00.000Z",​
 +        "​date_end_tz":​ null,
 +        "​address":​ "​Курган г, Куртамышская ул, дом 18 К1",
 +        "​house":​ "18 К1",
 +        "​street":​ "​Куртамышская ул"
 +    }
 +]
 +</​code>​
 +
 +
 +==== Изменение в списке домов, на которые распространяется оповещение в виде списка состояний по каждому дому ​ ====
 +
 +PUT http://​server.ru/​v2/​oi/:​info_id/​house_state/:​status_id
 +
 +**переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|info_id|number|да|идентификатор оповещения|
 +|status_id|number|да|идентификатор прикрепленного дома|
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|status|string|да|статус|
 +|comment|string|да|комментарий|
 +|date_start_tz|string|да|дата начала в формате DD.MM.YYYY HH:mm|
 +|date_end_tz|string|да|дата окончания в формате DD.MM.YYYY HH:mm|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 +  http://​server.ru/​v2/​oi/​139704/​house_state/​360787
 +*/
 +
 +// Тело запроса
 +{
 +    "​status":​ "​А",​
 +    "​date_start_tz":​ "​25.09.2024 20:​12",​
 +    "​date_end_tz":​ "​25.09.2024 20:​12",​
 +    "​comment":​ "​123"​
 +}
 +
 +//​Ответ
 +
 +{
 +    "​ok":​ true
 +}
 +</​code>​
 +
 +
 +
 +==== Получение списка домов, на которые распространяется оповещение в виде группировки по улицами ==== 
 +GET http://​server.ru/​v2/​oi/:​info_id/​houses
 +
 +**переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|info_id|number|да|идентификатор оповещения,​ для которого нужно получить список домов|
 +
 +**Тип ответа:​** Массив объектов ​
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|street|string|да|улица,​ к домам которой относится оповещение|
 +|houses|string|да|список домов на этой улице, к которым относится оповещение|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 +http://​server.ru/​v2/​oi/​139246/​houses
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​street":​ "​Апрельская ул",
 +        "​houses":​ "​15"​
 +    },
 +    {
 +        "​street":​ "​Ленина ул",
 +        "​houses":​ "​1"​
 +    }
 +]
 +</​code>​
 +
 +==== Получение ленты событий оповещения ====
 +## OLD, смотри /all
 +
 +
 +GET http://​server.ru/​v2/​oi/:​info_id/​feed?​start=value1&​count=value2
 +
 +**переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|info_id|number|да|идентификатор оповещения,​ для которого нужно получить ленту событий|
 +
 +Параметры запроса:​
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|с какой позиции показывать|
 +|count|number|да|количество выдаваемых элементов|
 +
 +Тип ответа:​ Массив объектов
 +
 +Параметры ответа
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|created_at|string|да|дата и время создания|
 +|type|number|да|тип события (0 - комментарий / 1 - активность)|
 +|note|string|да|текстовое описание события|
 +|created_by|string|да|автор события|
 +
 +**Пример:​**
 +<code javascript>​
 +
 +//​Запрос
 +/*
 +http://​server.ru/​v2/​oi/​66776/​feed?​start=1&​count=50
 +*/
 +
 +// Ответ
 +[
 +    {
 +        "​created_at":​ "​29.01.2016 23:​00",​
 +        "​type":​ 1,
 +        "​note":​ "​Статус оповещения изменился с \"​Активное\"​ на \"​Архивное\"​.\r\n",​
 +        "​created_by":​ "​Системный пользователь"​
 +    },
 +    {
 +        "​created_at":​ "​23.01.2016 09:​28",​
 +        "​type":​ 1,
 +        "​note":​ "​Статус оповещения изменился с \"​Плановое\"​ на \"​Активное\"​.\r\n",​
 +        "​created_by":​ "​Лукашевич Светлана"​
 +    }
 +]
 +</​code>​
 +
 +
 +==== Получение деталей табов для оповещения ====
 +GET https://​server.ru/​v2/​oi/:​info_id/​all
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|info_id|number|да|Идентификатор оповещения,​ которую нужно поменять|
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|house|number|нет|хотим ли мы подгружать адреса в ленту|
 +|house_id|number|нет|какие адреса подгружать в ленту, посылаем только если есть house|
 +|comment|number|нет|хотим ли мы подгружать комментарии в ленту|
 +|activity|number|нет|хотим ли мы подгружать историю активности в ленту|
 +|message|number|нет|хотим ли мы подгружать сообщения в ленту|
 +|call|number|нет|хотим ли мы подгружать звонки в ленту|
 +|push|number|нет|хотим ли мы подгружать пуши в ленту|
 +|file|number|нет|хотим ли мы подгружать прикрепленные файлы в ленту|
 +
 +Если не передать ни один из параметров,​ значит будет грузиться все типы, поэтому передавать только в том случае,​ когда нужно получить конкретные типы.
 +
 +Передаются как пример:​ comment=1  ​
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|id|number|да|-|
 +|feed_type|string|да|конкретный тип сущности в ленте|
 +|created_on_tz|string|да|время создания|
 +|user_data|string|да|данные о пользователе в одной строке,​ с разделителем|
 +|payload|string|да|полезная информация в зависимости от типа сущности|
 +|feed_opt_1|string|да|резервные данные с 1 до 10, меняются в зависимости от сущности|
 +|feed_opt_2|string|да|-|
 +|feed_opt_3|string|да|-|
 +|feed_opt_4|string|да|-|
 +|feed_opt_5|string|да|-|
 +|feed_opt_6|string|да|-|
 +|feed_opt_7|string|да|-|
 +|feed_opt_8|string|да|-|
 +|feed_opt_9|string|да|-|
 +|feed_opt_10|string|да|-|
 +|username|string|да|имя пользователя|
 +|position|string|да|позиция|
 +|access|string|да|уровень доступа|
 +
 +<code javascript>​
 +
 +//​Ответ
 +[
 +{
 +        "​id":​ 360787,
 +        "​user_data":​ "​Системный пользователь|Директор|С",​
 +        "​feed_type":​ "​house",​
 +        "​created_on_tz":​ "​2022-08-08T10:​04:​18.521Z",​
 +        "​payload":​ "​Санкт-Петербург г, Афанасьевская ул, дом 1",
 +        "​feed_opt_1":​ "​08.08.2022 13:​59",​
 +        "​feed_opt_2":​ "​08.08.2022 13:​59",​
 +        "​feed_opt_3":​ "​А",​
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​Системный пользователь",​
 +        "​position":​ "​Директор",​
 +        "​access":​ "​С"​
 +    },
 +     {
 +        "​id":​ 75361,
 +        "​user_data":​ "​dev|Технический директор|С",​
 +        "​feed_type":​ "​comment",​
 +        "​created_on_tz":​ "​2023-03-16T04:​24:​11.510Z",​
 +        "​payload":​ "​duck",​
 +        "​feed_opt_1":​ null,
 +        "​feed_opt_2":​ null,
 +        "​feed_opt_3":​ null,
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​dev",​
 +        "​position":​ "​Технический директор",​
 +        "​access":​ "​С"​
 +    },
 +     {
 +        "​id":​ 204715,
 +        "​user_data":​ "​dev|Технический директор|С",​
 +        "​feed_type":​ "​activity",​
 +        "​created_on_tz":​ "​2022-08-24T09:​00:​37.204Z",​
 +        "​payload":​ " Статус оповещения изменился с \"​Активное\"​ на \"​Архивное\"​.\r\n",​
 +        "​feed_opt_1":​ null,
 +        "​feed_opt_2":​ null,
 +        "​feed_opt_3":​ null,
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​dev",​
 +        "​position":​ "​Технический директор",​
 +        "​access":​ "​С"​
 +    },
 +    {
 +        "​id":​ 2159872,
 +        "​user_data":​ "​Предеин Анатолий Юрьевич",​
 +        "​feed_type":​ "​message",​
 +        "​created_on_tz":​ "​2022-08-24T08:​38:​51.346Z",​
 +        "​payload":​ "​Откл Хвс Гвс Тестовая рассылка. Придет письмо при закрытии?​ с 24.08.2022 13:38 до 25.08.2022 13:38 Луначарского ул:​240",​
 +        "​feed_opt_1":​ "​9611111112",​
 +        "​feed_opt_2":​ null,
 +        "​feed_opt_3":​ null,
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​Предеин Анатолий Юрьевич",​
 +        "​position":​ null,
 +        "​access":​ null
 +    },
 +    {
 +        "​id":​ 5312541,
 +        "​user_data":​ null,
 +        "​feed_type":​ "​call",​
 +        "​created_on_tz":​ "​2018-11-21T10:​18:​56.743Z",​
 +        "​payload":​ "​mMXkjhkjhMm",​
 +        "​feed_opt_1":​ "​Собственник",​
 +        "​feed_opt_2":​ "​36543545",​
 +        "​feed_opt_3":​ "​1",​
 +        "​feed_opt_4":​ "​Екатеринбург г, Амундсена ул, дом 118А, кв 14",
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ null,
 +        "​position":​ null,
 +        "​access":​ null
 +    },
 +     {
 +        "​id":​ 301,
 +        "​user_data":​ "​Системный пользователь|Директор|С",​
 +        "​feed_type":​ "​push",​
 +        "​created_on_tz":​ "​2022-08-08T10:​04:​18.690Z",​
 +        "​payload":​ "​Тестовое оповезение",​
 +        "​feed_opt_1":​ null,
 +        "​feed_opt_2":​ null,
 +        "​feed_opt_3":​ null,
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​Системный пользователь",​
 +        "​position":​ "​Директор",​
 +        "​access":​ "​С"​
 +    },
 +     {
 +        "​id":​ 40862,
 +        "​user_data":​ "​Пользователь личного кабинета ​ | |П",
 +        "​feed_type":​ "​file",​
 +        "​created_on_tz":​ "​2024-07-16T05:​34:​54.731Z",​
 +        "​payload":​ "​https://​cdn.ds24.ru/​fs/​3/​1721108011_dsv2s.jpg",​
 +        "​feed_opt_1":​ "​1721108011_dsv2s.jpg",​
 +        "​feed_opt_2":​ null,
 +        "​feed_opt_3":​ "​1",​
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​Пользователь личного кабинета ​ ",
 +        "​position":​ " ",
 +        "​access":​ "​П"​
 +    }
 +]
 +
 +</​code>​
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +===== Счетчики =====
 +
 +==== Получение списка активных показаний по счётчикам для текущего пользователя ====
 +GET https://​server.ru/​v2/​meter?​start=value1&​count=value2&​cnt_id=value3&​house_id=value4&​flat=value5&​term_ids=value6
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|с какой позиции начать получать элементы списка|
 +|count|number|да|количество получаемых элементов списка|
 +|cnt_id|number|нет|идентификатор юр. лица|
 +|house_id|number|нет|идентификатор дома|
 +|flat|string|нет|номер квартиры|
 +|term_ids|string|нет|тип счетчиков через разделитель ":"​. Пример:​ "​1:​5"​|
 +
 +**Тип ответа:​** Массив объектов
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|description|string|да|Назначение счетчика|
 +|house|string|да|Адрес дома, где установлен счетчик|
 +|flat|string|может быть null| Номер квартиры,​ где установлен счетчик|
 +|value|string|может быть null|Текущее показание счетчика|
 +|date|string|может быть null|Дата текущего показания|
 +|prev_value|string|да|Последнее показание|
 +|prev_date|string|да|Дата последнего показания|
 +|meter_id|number|да|идентификатор показания|
 +|meter_id_ext|string|да|"​Внешний"​ идентификатор показания (сторонней системы)|
 +|term|string|да|текстовое описание типа показания|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 +  https://​server.ru/​meter?/​v2/​meter?​start=1&​count=3&​cnt_id=10401&​house_id=40783&​flat=3&​term_ids=1:​5
 +*/
 +
 +//​Ответ
 +
 +[
 +    {
 +        "​description":​ "​ХВС",​
 +        "​house":​ "​Курган г, Бурова-Петрова ул, дом 78",
 +        "​flat":​ "​3",​
 +        "​value":​ null,
 +        "​date":​ null,
 +        "​prev_value":​ "​.087",​
 +        "​prev_date":​ "​25.06.2021",​
 +        "​meter_id":​ 4075904,
 +        "​meter_id_ext":​ "​3672939",​
 +        "​term":​ "​Холодная вода"​
 +    }
 +]
 +</​code>​
 +
 +
 +==== Получение списка квартир,​ которые связаны с активными показаниями ====
 +GET https://​server.ru/​v2/​meter/​flat_list?​house_id=value
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|house_id ​  | number | да          | Идентификатор дома в системе,​ для которого нужно получить список квартир|
 +
 +**Тип ответа:​** Массив объектов
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +| flat      | string | да          | Номер квартиры |
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​meter/​flat_list?​house_id=40783
 +*/
 +
 +//​Ответ
 +[
 +    {
 +        "​flat":​ "​1"​
 +    },
 +    {
 +        "​flat":​ "​2"​
 +    },
 +    {
 +        "​flat":​ "​3"​
 +    },
 +    {
 +        "​flat":​ "​4"​
 +    },
 +    {
 +        "​flat":​ "​5"​
 +    },
 +    {
 +        "​flat":​ "​6"​
 +    }
 +]
 +
 +</​code>​
 +
 +
 +==== Получение списка типов счетчиков для дальнейшей фильтрации ====
 +GET https://​server.ru/​v2/​meter/​term_list
 +
 +**Тип ответа:​** Массив объектов
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|term_id|number|да|идентификатор типа счетчика|
 +|term|string|да|текстовое описание типа счетчика|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​meter/​term_list
 +*/
 +
 +//​Ответ
 +
 +[
 +    {
 +        "​term_id":​ 6,
 +        "​term":​ "​Газ"​
 +    },
 +    {
 +        "​term_id":​ 5,
 +        "​term":​ "​Горячая вода"​
 +    },
 +    {
 +        "​term_id":​ 7,
 +        "​term":​ "​Отопление"​
 +    },
 +    {
 +        "​term_id":​ 1,
 +        "​term":​ "​Холодная вода"​
 +    },
 +    {
 +        "​term_id":​ 3,
 +        "​term":​ "​Электроэнергия"​
 +    },
 +    {
 +        "​term_id":​ 221,
 +        "​term":​ "​Электроэнергия ночь"​
 +    }
 +]
 +</​code>​
 +
 +==== Сохранение показаний ====
 +
 +PUT https://​server.ru/​v2/​meter/:​meter_id
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|meter_id ​  | number | да          |идентификатор счетчика|
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|value|string|да|значение показания счетчика|
 +|image_url|string|-|-|
 +|image_name|string|-|-|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|affected_rows|number|да|Количество созданных / затронутых изменениями строк|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 +  https://​server.ru/​meter/​121281
 +*/
 +
 +// Тело запроса
 +{
 +    "​value":​ "​150",​
 +    "​image_url"​ : "​https://​ds24.ru/​fs/​static/​2017/​08/​14/​some_test.jpg",​
 +    "​image_name"​ : "​image"​
 +}
 +
 +//​Ответ
 +
 +{
 +    "​affected_rows":​ 2
 +}
 +</​code>​
 +
 +===== Контакты =====
 +
 +==== Получение списка контактов ====
 +GET https://​server.ru/​v2/​contact?​start=value1&​count=value2&​cnt_id=value3&​phone=value4&​house_id=value5&​flat_id=value6&​floor=value7&​entrance=value8
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|с какой позиции начать показывать|
 +|count|number|да|сколько контактов показать|
 +|cnt_id|number|нет|идентификатор юр. лица|
 +|phone|string|нет|номер телефона|
 +|house_id|number|нет|идентификатор дома|
 +|entrance|string|нет|подъезд|
 +|floor|number|нет|этаж|
 +|flat_id|number|нет|идентификатор квартиры|
 +
 +**Тип ответа:​** Массив объектов
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|phone_id|number|да| Ид записи сномером телефона|
 +|phone|string|да| Номер телефона|
 +|house|string|да|Адрес дома|
 +|flat|string|да|номер квартиры|
 +|created_on_tz|string|да|дата создания в формате ISO|
 +|last_call_on_tz|string|да|последний звонок в формате ISO|
 +|fio|string|да|ФИО|
 +|flag_sms_notify|string|да|флаг для оповещения смс, может быть А, Д или Н|
 +|oico|string|да|флаг смс из ОЙКО, может быть Д или Н|
 +|entrance|string|может быть null| обозначение подъезда|
 +|floor|number|может быть null|номер этажа|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​contact?​cnt_id=10401&​house_id=40783&​start=1&​count=5
 +*/
 +
 +//​Ответ
 +[
 +    {
 +        "​phone":​ "​9223223223",​
 +        "​house":​ "​Курган г, Бурова-Петрова ул, дом 78",
 +        "​flat":​ "​тест-24",​
 +        "​entrance":​ "​2",​
 +        "​floor":​ 3
 +    },
 +    {
 +        "​phone":​ "​9223223224",​
 +        "​house":​ "​Курган г, Бурова-Петрова ул, дом 78",
 +        "​flat":​ "​тест-25",​
 +        "​entrance":​ null,
 +        "​floor":​ null
 +    },
 +    ...
 +]
 +</​code>​
 +
 +===== Заявки РСО =====
 +
 +==== Создание заявки ====
 +POST https://​server.ru/​v2/​request_rso
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|house_id|number|да|ИД Дома|
 +|owner_id|number|нет|ИД Управляющей компании|
 +|svc_id|number|да|идентификатор РСО|
 +|note| string|да|Комметрарий от заявки|
 +|rso_comment| string|да|Комметрарий к заявке РСО|
 +|request_id|number|да|ИД Заявки|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_rso_id|number|да|ид заявки рсо|
 +|house_id|number|да|ид дома|
 +|owner_id|number|да|ид управляющей компании|
 +|svc_id|number|да|идентификатор РСО|
 +|note|string|да|комментарий заявки рсо|
 +|created_on_tz|string|да|время создания заявки|
 +|status_id|number|да|ид статуса|
 +|rso_status_name|string|да|имя статуса|
 +|request_id|number|да|ид заявки,​ на основе которой создана заявка рсо|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +//Тело запроса
 +
 +{
 +    "​house_id"​ : 34021,
 +    "​svc_id:"​ : 1533,
 +    "​owner_id"​ : 23,
 +    "​request_id"​ : 1300673,
 +    "​note"​ : "​123",​
 +}
 + 
 +//​Ответ
 +
 +{
 +    "​request_rso_id":​ 77470,
 +    "​house_id":​ 54696,
 +    "​owner_id":​ 13521,
 +    "​svc_id":​ 5484,
 +    "​note":​ "​123",​
 +    "​created_on_tz":​ "​2024-03-28T07:​19:​10.826Z",​
 +    "​status_id":​ 1,
 +    "​rso_status_name":​ "​Зарегистрирована",​
 +    "​request_id":​ 1300673
 +}
 +
 +</​code>​
 +
 +
 +
 +===== Заявки =====
 +
 +==== Создание заявки ====
 +POST https://​server.ru/​v2/​request
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|house_id|number|да|ид дома|
 +|ess_id|number|да|ид причины обращения|
 +|type_id|number|да|ид типа работ|
 +|flat_id|number|нет|ид квартиры|
 +|note| string|да|заметка|
 +|contphone|string|нет|номер телефона|
 +|flat|string|нет|номер помещения|
 +|entr|string|нет|подъезд|
 +|floor|string|нет|этаж|
 +|flat_type|number|нет|тип помещения. Смотреть [[d24:​develop:​v2:​backend:​v2#​типы_помещений|описание типов помещений]]|
 +|email|string|нет|электронная почта|
 +|fio|string|нет|фио|
 +|appeal_num|string|нет|номер обращения|
 +|appeal_date|string|нет|дата создания номера обращения|
 +|desired_time_start|string|нет|желаемое время выполнения|
 +|check_work_id|number|нет|идентификатор работы|
 +|tag_ids|string|нет|идентификаторы тэгов для сохранения,​ указанные через запятую Пример:​ «1,2,3». |
 +|files|array|нет|массив файлов|
 +|comments|array|нет|массив комментариев|
 +
 +files представляет собой массив объектов такого вида и передается в случае загрузки нескольких файлов:​
 +|flag_webhook|string|нет|вебхук,​ отправлять жителю или нет|
 +|fileName|string|нет|имя файла|
 +|fileUrl|string|нет|юрл файла|
 +
 +commentsпредставляет собой массив объектов такого вида и передается в случае прикрепления нескольких комментариев:​
 +|note|string|нет|текст комментария|
 +|flag_webhook|string|нет|вебхук,​ отправлять жителю или нет|
 +
 +**Тип ответа:​** ​
 +
 +**Параметры ответа:​**
 +Заявка как в детализации заявки
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +//Тело запроса
 +
 +{
 +    "​house_id"​ : 34021,
 +    "​ess_id"​ : 1533,
 +    "​type_id"​ : 23,
 +    "​flat_id":​ 111,
 +    "​note"​ : "​Тест ppostman",​
 +    "​contphone"​ : "​9125212573",​
 +    "​flat"​ : "​123",​
 +    "​entr"​ : "​1",​
 +    "​floor"​ : "​9",​
 +    "​email"​ : "​predeinay@gmail.com",​
 +    "​fio":​ "​ФИО",​
 +    "​appeal_num":​ "​123",​
 +    "​appeal_date":​ "​2023-10-13T19:​00:​00.000Z",​
 +    "​desired_time_start":​ "​2024-04-05T19:​00:​00.000Z",​
 +    "​check_work_id":​ 123,
 +    "​flat_type":​ 1,
 +    "​tag_ids":​ "​666,​901,​902",​
 +    "​files":​ [
 +        {
 +            "​fileName":​ "​9826171613_2.jpg",​
 +            "​fileUrl":​ "​https://​cdn.ds24.ru/​fs/​static/​2024/​01/​17/​request_1705469628.jpg",​
 +            "​flag_webhook":​ "​Н"​
 +        },
 +        {
 +            "​fileName":​ "​9826171613_0.jpg",​
 +            "​fileUrl":​ "​https://​cdn.ds24.ru/​fs/​static/​2024/​02/​01/​request_1706764444.pdf",​
 +            "​flag_webhook":​ "​Д"​
 +        }
 +    ],
 +    "​comments":​ [
 +        {
 +            "​note":​ "​комментарий 1",
 +            "​flag_webhook":​ "​Н"​
 +        },
 +        {
 +            "​note":​ "​комментарий 2",
 +            "​flag_webhook":​ "​Н"​
 +        },
 +    ],
 +}
 + 
 +//​Ответ
 +
 +{
 +    "​request_id":​ 1302749,
 +    "​rtype":​ "​Плановая",​
 +    "​req_type":​ "​plan",​
 +    "​flag_emergency":​ "​Н",​
 +    "​is_paid":​ "​Н",​
 +    "​is_local_need":​ "​Н",​
 +    "​is_favorites":​ "​Н",​
 +    "​is_closed":​ "​N",​
 +    "​is_oico_account":​ 0,
 +    "​house":​ "​Белинского ул, дом 123",
 +    "​full_address":​ "​Екатеринбург г, Белинского ул, дом 123",
 +    "​fias":​ null,
 +    "​flat":​ "кв 5",
 +    "​flat_num":​ "​5",​
 +    "​flat_type":​ 1,
 +    "​cnt_id":​ 13521,
 +    "​house_id":​ 55056,
 +    "​flat_id":​ 1211608,
 +    "​type_id":​ 21,
 +    "​ess_id":​ 3303,
 +    "​status_id":​ 1,
 +    "​reason_id":​ null,
 +    "​emp_id":​ null,
 +    "​resp_id":​ 35374,
 +    "​priority_id":​ null,
 +    "​request_rso_id":​ null,
 +    "​check_id":​ null,
 +    "​execution_time":​ "​19.04.2024 06:​19",​
 +    "​closing_time":​ null,
 +    "​created_at":​ "​05.04.2024 06:​19",​
 +    "​updated_at":​ null,
 +    "​deadline_at":​ "​19.04.2024",​
 +    "​local_at":​ null,
 +    "​appointed_at":​ "​05.04.2024 19:​00",​
 +    "​execution_time_on_tz":​ "​2024-04-19T06:​19:​44.000Z",​
 +    "​closing_time_on_tz":​ null,
 +    "​created_on_tz":​ "​2024-04-05T06:​19:​44.309Z",​
 +    "​updated_on_tz":​ null,
 +    "​scheduled_execution_time_on_tz":​ "​2024-04-19T06:​19:​44.000Z",​
 +    "​desired_time_start_on_tz":​ "​2024-04-05T19:​00:​00.000Z",​
 +    "​note":​ "123 123",
 +    "​fio":​ "​123",​
 +    "​emp_note":​ null,
 +    "​floor":​ 1,
 +    "​entr":​ "​11",​
 +    "​autophone":​ null,
 +    "​contphone":​ "​123",​
 +    "​email":​ "​123@123.ert",​
 +    "​tags":​ null,
 +    "​last_comments":​ [],
 +    "​price":​ null,
 +    "​material_price":​ null,
 +    "​paid":​ null,
 +    "​ess":​ "​Запрос записи разговора диспетчерской",​
 +    "​emp":​ null,
 +    "​resp":​ "​Системный пользователь ​ ",
 +    "​created_by":​ "​dev",​
 +    "​emp_phone":​ null,
 +    "​resp_phone":​ null,
 +    "​uploads_count":​ 0,
 +    "​status":​ "​Зарегистрирована",​
 +    "​rso_status_name":​ null,
 +    "​ext_pay_system_id":​ "​42",​
 +    "​inn":​ "​7203333262",​
 +    "​what_was_done":​ null,
 +    "​oi_id":​ null,
 +    "​oi_status":​ null,
 +    "​rsfat_value":​ null,
 +    "​rsft_value":​ null,
 +    "​reason":​ null,
 +    "​type":​ "​Прочее",​
 +    "​rate":​ null,
 +    "​deadline_str":​ 14,
 +    "​appointed_str":​ "​Сегодня с 19:​00",​
 +    "​cnt_callback_phone":​ "​34332830521",​
 +    "​request_tags":​ []
 +}
 +</​code>​
 +==== Изменение данных в заявке,​ добавление комментария ====
 +PUT https://​server.ru/​v2/​request/:​request_id
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|Идентификатор заявки,​ которую нужно поменять|
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|status_id|number | нет | ид статуса заявки |
 +|reason_id|number | нет | ид причины закрытия заявки |
 +|emp_id| ​  ​number | нет | ид исполнителя |
 +|resp_id| ​ number | нет | ид ответственного |
 +|deadline_at| string | нет | срок выполнения заявки |
 +|tag_ids| ​    ​string | нет | идентификаторы тэгов для сохранения,​ указанные через запятую Пример:​ "​1,​2,​3"​. чтобы удалить все тэги необходимо послать "​0"​ |
 +|emp_note| ​   string | нет | заметка от исполнителя |
 +|appeal_num| ​   string | нет | номер обращения |
 +|appeal_date| ​  ​string | нет | дата обращения |
 +|comment| ​    ​string | нет | комментарий |
 +|entrance| ​    ​string | нет | подъезд |
 +|floor| ​    ​number | нет | этаж |
 +|fio|     ​string| нет | фио|
 +|note|string|нет| заметка |
 +|comment_flag_webhook| ​    ​string | нет | Отправлять ли жителю Д\Н |
 +|image_url| ​  ​string | нет | Ссылка на изображение. Отправляется обязательно вместе с image_name |
 +|image_name| ​ string | нет | Название изображения |
 +|appointed_at|string | нет | Дата, когда придёт исполнитель. Принимает "​today"​ / "​tomorrow"​ / "​next_week"​ / дату в формате "​ДД.ММ.ГГГГ HH24:​MI"​ |
 +|local_at| ​   string | нет | Дата, когда исполнитель локализовал аварию по заявке "​ДД.ММ.ГГГГ ЧЧ:​ММ"​ |
 +|material_price| number | нет | Стоимость материалов по заявке ​ |
 +|price|number | нет | цена |
 +|what_was_done|string|нет| что было сделано |
 +|paid|number|нет| сколько оплачено |
 +|is_favorites|string|нет| Добавить/​убрать из избранного (Д/Н) |
 +|contphone|string|нет| Контактный номер телефона жителя |
 +|flag_payment|string|нет| Оплачена ли заявка (Д/Н) |
 +|email|string|нет| Электронная почта |
 +|essence_id|number|нет| ИД причины обращения |
 +|priority_id|number|нет| Приоритет заявки |
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|affected_rows|number|да|количество затронутых изменениями / созданных строк (вместе с комментариями)|
 +|request|-|да|обновленная заявка с полями как в детализации|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 +   ​https://​server.ru/​v2/​request/​1298371
 +*/
 +
 +// Тело запроса
 +
 +{
 +    "​status_id" ​  : 2,
 +    "​reason_id" ​  : 9,
 +    "​emp_id" ​     : 123,
 +    "​resp_id" ​    : 123,
 +    "​deadline_at"​ : "​01.01.2017",​
 +    "​tag_ids" ​    : "​1,​2,​3,​4,​5",​
 +    "​emp_note" ​   : "​типа скрытый от операторов текст",​
 +    "​comment" ​    : "​Типа коммент от исполнителя",​
 +    "​comment_flag_webhook":​ "​Д",​
 +    "​image_url" ​  : "​https://​ds24.ru/​fs/​static/​2017/​08/​14/​some_test.jpg",​
 +    "​image_name" ​ : "some test",
 +    "​appointed_at":​ null,
 +    "​fio":​ "​фио",​
 +    "​type_id":​ "21,
 +    "​local_at" ​   : "​12.12.2020 12:​12",​
 +    "​material_price"​ : 333,
 +    "​price":​ 100.2,
 +    "​what_was_done":​ "​что-то сделано",​
 +    "​paid":​ 100.3,
 +    "​is_favorites"​ : "​Д",​
 +    "​phone_contact":​ "​9754936397",​
 +    "​flag_payment"​ : "​Д",​
 +    "​entrance"​ : "​11"​
 +    "​floor"​ : "​11",​
 +    "​email":​ "​email@email.ru",​
 +    "​essence_id":​ 111,
 +    "​priority_id":​ 2
 +}
 +
 +//​Ответ
 +{
 +    "​affected_rows":​ 1,
 +    "​request":​ {
 +        "​request_id":​ 1300673,
 +        "​rtype":​ "​Плановая",​
 +        "​req_type":​ "​plan",​
 +        "​flag_emergency":​ "​Н",​
 +        "​is_paid":​ "​Д",​
 +        "​is_local_need":​ "​Н",​
 +        "​is_favorites":​ "​Н",​
 +        "​is_closed":​ "​N",​
 +        "​is_oico_account":​ 1,
 +        "​house":​ "​Луначарского ул, дом 240",
 +        "​full_address":​ "​Екатеринбург г, Луначарского ул, дом 240",
 +        "​fias":​ null,
 +        "​flat":​ "кв 100",
 +        "​flat_num":​ "​100",​
 +        "​flat_type":​ 1,
 +        "​cnt_id":​ 13521,
 +        "​house_id":​ 54696,
 +        "​flat_id":​ 1206770,
 +        "​type_id":​ 21,
 +        "​ess_id":​ 4114,
 +        "​status_id":​ 1,
 +        "​reason_id":​ null,
 +        "​emp_id":​ 36059,
 +        "​resp_id":​ 35574,
 +        "​priority_id":​ null,
 +        "​request_rso_id":​ 77530,
 +        "​check_id":​ null,
 +        "​execution_time":​ "​04.04.2022 00:​00",​
 +        "​closing_time":​ null,
 +        "​created_at":​ "​01.08.2023 20:​37",​
 +        "​updated_at":​ "​02.04.2024 05:​56",​
 +        "​deadline_at":​ "​04.04.2022",​
 +        "​local_at":​ "​2024-04-01T00:​00:​00.000Z",​
 +        "​appointed_at":​ "​02.04.2024",​
 +        "​execution_time_on_tz":​ "​2022-04-04T00:​00:​00.000Z",​
 +        "​closing_time_on_tz":​ null,
 +        "​created_on_tz":​ "​2023-08-01T20:​37:​01.705Z",​
 +        "​updated_on_tz":​ "​2024-04-02T05:​56:​44.009Z",​
 +        "​scheduled_execution_time_on_tz":​ null,
 +        "​desired_time_start_on_tz":​ "​2024-04-02T00:​00:​00.000Z",​
 +        "​note":​ "​test1",​
 +        "​fio":​ null,
 +        "​emp_note":​ "​emp_note",​
 +        "​floor":​ 11,
 +        "​entr":​ "​11",​
 +        "​autophone":​ null,
 +        "​contphone":​ "​123",​
 +        "​email":​ "​mail@mail.ru",​
 +        "​tags":​ "<​span >​тест</​span><​span style=\"​background-color:#​ADFFB2\">​ожидает оплаты</​span>",​
 +        "​last_comments":​ [
 +            {
 +                "​note":​ "​1"​
 +            },
 +            {
 +                "​note":​ "​note1"​
 +            }
 +        ],
 +        "​price":​ 0,
 +        "​material_price":​ 10,
 +        "​paid":​ 100,
 +        "​ess":​ "​Запросы по раскрытию информации по 731 пп",
 +        "​emp":​ "​dsfjhskbskdf5",​
 +        "​resp":​ "​\"'​`Alexander Galimov",​
 +        "​created_by":​ "​Пользователь личного кабинета ​ ",
 +        "​emp_phone":​ "​1746538770",​
 +        "​resp_phone":​ null,
 +        "​uploads_count":​ 24,
 +        "​status":​ "​Зарегистрирована",​
 +        "​rso_status_name":​ "​Зарегистрирована",​
 +        "​ext_pay_system_id":​ "​42",​
 +        "​inn":​ "​7203333262",​
 +        "​what_was_done":​ "​qwe1",​
 +        "​oi_id":​ null,
 +        "​oi_status":​ null,
 +        "​rsfat_value":​ 6623,
 +        "​rsft_value":​ 90,
 +        "​reason":​ null,
 +        "​type":​ "​Прочее",​
 +        "​rate":​ null,
 +        "​deadline_str":​ -732,
 +        "​appointed_str":​ "​02.04.2024",​
 +        "​cnt_callback_phone":​ "​34332830521",​
 +        "​request_tags":​ [
 +            {
 +                "​color":​ "#​ADFFB2",​
 +                "​title":​ "​ожидает оплаты"​
 +            }
 +        ]
 +    }
 +}
 +</​code>​
 +==== Получение списка заявок ====
 +
 +GET https://​server.ru/​v2/​request/​iot?​start&​count&​cnt_id&​street&​house_id&​flat_id&​type_id&​type_ids&​ess_id&​ess_ids&​emp_id&​resp_id&​status_ids&​rtype_id
 +&​rtype_ids&​request_id&​date_start&​date_end&​keywords&​custom_filter&​is_only_my&​custom_order&​house_ids&​flat_ids&​emp_ids&​resp_ids&​search_phone
 +&​house_group_ids&​period_exec
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|C какой позиции получить заявки|
 +|count|number|да|Сколько заявок получить|
 +|cnt_id|number|нет| идентификатор юр. лица|
 +|city|string|нет| Название города|
 +|street|string|нет|улица|
 +|type_id|number|нет|идентификатор типа работ|
 +|flat_type|number|нет|тип помещения|
 +|type_ids|string|нет| список идентификаторов типов работ разделенных двоеточием. Пример:​ "​3:​12"​|
 +|ess_ids|string|нет| список идентификаторов причин обращения через двоеточие. Пример:​ "​21:​32:​77"​|
 +|tag_ids|string|нет| идентификаторы тэгов для заявок|
 +|status_ids|string|нет|список идентификаторов статусов через двоеточие. Пример:​ "​1:​2:​3"​|
 +|rtype_ids|string|нет|список идентификаторов типов заявки через двоеточие. Пример:​ "​1:​2:​3"​|
 +|request_id|number|нет|идентификатор заявки|
 +|date_start|string|нет|дата начала (фильтруется по дате создания) в формате DD.MM.YYYY|
 +|date_end|string|нет|дата окончания (фильтруется по дате создания) в формате DD.MM.YYYY|
 +|keywords|string|нет|ключевые слова|
 +|is_only_my|number|нет|фильтр,​ определяющий необходимо ли показывать все заявки или только те, у которых пользователь - ответственный / исполнитель ​ ( 0 - все / 1 - пользователя)|
 +|house_ids|string|нет|список идентификаторов домов через двоеточие. Пример:​ "​1:​2:​3"​|
 +|flat_ids|string|нет|список идентификаторов помещений через двоеточие. Пример:​ "​1:​2:​3"​|
 +|emp_ids|string|нет|список идентификаторов ответственных через двоеточие. Пример:​ "​1:​2:​3"​|
 +|resp_ids|string|нет|список идентификаторов исполнителей через двоеточие. Пример:​ "​1:​2:​3"​|
 +|search_phone|string|нет|фильтр по номеру телефона.|
 +|house_group_ids|string|нет|список идентификаторов групп домов через двоеточие. Пример:​ "​1:​2:​3"​|
 +|period_exec|string|нет|фильтр по срокам выполнения. Просроченные:​ П,На сегодня:​ С,На завтра:​ З,На ближайшие 3 дня: Т,На неделю:​ Н, Все: В|
 +|is_favorites|number|нет|фильтр,​ определяющий необходимо ли показывать все заявки или только те, которые у пользователя в избранном ​ ( 0 - все / 1 - избранные)|
 +|add_type|string|нет|фильтр SLA. Тип фильтра. значения:​ RSFAT - первое принятие в работу;​ RSFT - время до выполнения|
 +|add_more_than|number|нет|фильтр SLA. Больше чем. указывается в количестве секунд. Не будет работать,​ если не указан add_type|
 +|add_less_than|number|нет|фильтр SLA. Меньше чем. указывается в количестве секунд. Не будет работать,​ если не указан add_type|
 +
 +**Тип ответа:​** Массив объектов
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|rn|number|да|порядковый номер выборки|
 +|request_id|number|да|идентификатор заявки|
 +|flag_emergency|string|да| Аварийная ли заявка. "​Д"​ - аварийная заявка / "​Н"​ - не аварийная заявка|
 +|note|string|да|текст заявки|
 +|tags|string|нет|тэги заявки|
 +|last_comments|array|да|список последних комментариев|
 +|rate|string|нет|рейтинг заявки|
 +|house|string|да|Адрес дома|
 +|ext_request_id|string|нет|идентификатор заявки из внешней системы (например,​ ойко)|
 +|request_type |number|нет|тип заявки в числовом обозначении|
 +|cnt_id |number|нет|ид УК|
 +|flat|string|может быть null|номер квартиры|
 +|fias|string|может быть null|номер фиаса|
 +|full_address|string|да|текстовое представление адреса|
 +|entr|string|нет|обозначение подъезда|
 +|resp_id|number|нет|идентификатор ответственного сотрудника|
 +|resp|string|нет|ответственный сотрудник|
 +|status|string|да|текстовое описание статуса|
 +|status_id|number|да|идентификатор статуса|
 +|created_at|string|да|дата и время создания заявки в часовом поясе пользователя|
 +|updated_at|string|нет| дата и время обновления заявки|
 +|execution_time|string|нет|дата и время выполнения заявки|
 +|scheduled_execution_time_on_tz|string|нет|срок выполнения по регламенту в формате ISO|
 +|closing_time|string|нет|дата и время закрытия заявки|
 +|price|number|может быть null| Цена заявки. Определена,​ если заявка платная,​ если нет, то null|
 +|material_price|number|-|стоимость материалов по заявке|
 +|request_tags|array|может быть []|тэги заявки|
 +|uploads_count|number|-|кол-во скачиваний заявки|
 +|appointed_str|string|может быть null|время прихода специалиста в формате сегодня / завтра / вчера / дата c hh:mm( до hh:mm)|
 +|appointed_at|string|может быть null|Дата и время прихода специалиста|
 +|deadline_str|number|да|количество дней до конца ожидания выполнения заявки. Может иметь отрицательное значение.|
 +|emp|string|может быть null|ФИО исполнителя|
 +|emp_id|number|может быть null|идентификатор исполнителя|
 +|is_closed|string|да|закрыта ли заявка Y / N|
 +|req_type|string|да|тип заявки '​plan',​ '​pay',​ '​emerg',​ '​warranty'​|
 +|reason|string|может быть null|текстовое описание причины статуса|
 +|reason_id|number|нет|идентификатор причины статуса|
 +|local_at|string|может быть null|Дата,​ когда исполнитель локализовал аварию по заявке «ДД.ММ.ГГГГ ЧЧ:​ММ» ​ |
 +|contphone|string|да|Номер телефона клиента обратившегося с заявкой|
 +|house_id|number|нет|идентификатор дома|
 +|flat_id|number|нет|идентификатор помещения|
 +|flat_type|number|нет|тип помещения|
 +|flat_num|string|нет|номер помещения|
 +|autophone|string|нет|АОН|
 +|ess_id|number|нет|идентификатор причины обращения|
 +|request_rso_id|number|нет|номер заявки в РСО|
 +|editable|string|нет|редактируема ли Y / N|
 +|type_id|number|нет|идентификатор типа заявки|
 +|is_favorites|string|да|добавлена ли заявка в избранное Д/Н|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​request/​iot?​start=1&​count=5
 +*/
 +
 +//​Ответ
 +
 +[
 +    {
 +        "​rn":​ 1,
 +        "​request_id":​ 1305732,
 +        "​flag_emergency":​ "​Н",​
 +        "​note":​ "И ставит",​
 +        "​house":​ "​Академика Бардина ул, дом 200",
 +        "​full_address":​ "​Екатеринбург г, Академика Бардина ул, дом 200",
 +        "​fias":​ null,
 +        "​flat":​ "кв 1",
 +        "​request_type ": 1,
 +        "​cnt_id ": 100,
 +        "​flat_num":​ "​1",​
 +        "​flat_type":​ 1,
 +        "​entr":​ "​12",​
 +        "​status":​ "​Принята в работу",​
 +        "​created_at":​ "​29.07.2024 13:​24",​
 +        "​updated_at":​ "​29.07.2024 13:​28",​
 +        "​execution_time":​ "​02.02.2026 00:​00",​
 +        "​scheduled_execution_time_on_tz":​ "​2024-04-19T06:​19:​44.000Z",​
 +        "​closing_time":​ null,
 +        "​price":​ null,
 +        "​material_price":​ null,
 +        "​tags":​ "<​span >​тест</​span><​span style=\"​background-color:#​ADFFB2\">​ожидает оплаты</​span>",​
 +        "​request_tags":​ [
 +            { 
 +                "​color":​ "#​FF00FF", ​
 +                "​title":​ "​123"​
 +            }
 +        ],
 +        "​last_comments":​ [
 +            {
 +                "​note":​ "​оле ле ола ла"
 +            }
 +        ],
 +        "​uploads_count":​ 0,
 +        "​appointed_str":​ null,
 +        "​appointed_at":​ null,
 +        "​emp":​ "​kfkfkfkfkfkf",​
 +        "​resp":​ "​Системный пользователь ​ ",
 +        "​deadline_str":​ 546,
 +        "​reason":​ null,
 +        "​reason_id":​ null,
 +        "​status_id":​ 2,
 +        "​is_closed":​ "​N",​
 +        "​emp_id":​ 35875,
 +        "​resp_id":​ 35374,
 +        "​request_type ": 1,
 +        "​cnt_id ": 100,
 +        "​local_at":​ null,
 +        "​house_id":​ 55061,
 +        "​flat_id":​ 1213449,
 +        "​contphone":​ null,
 +        "​autophone":​ null,
 +        "​ess_id":​ 1600,
 +        "​ext_request_id":​ null,
 +        "​type_id":​ 28,
 +        "​req_type":​ "​plan",​
 +        "​rate":​ null,
 +        "​is_favorites":​ "​Н",​
 +        "​request_rso_id":​ 78081,
 +        "​editable":​ "​N",​
 +    },
 +    {
 +        "​rn":​ 2,
 +        "​request_id":​ 1305731,
 +        "​flag_emergency":​ "​Н",​
 +        "​note":​ "​Стстстсат",​
 +        "​house":​ "​Академика Бардина ул, дом 200",
 +        "​full_address":​ "​Екатеринбург г, Академика Бардина ул, дом 200",
 +        "​fias":​ null,
 +        "​flat":​ "кв 1нцнццрцр",​
 +        "​flat_num":​ "​1нцнццрцр",​
 +        "​flat_type":​ 1,
 +        "​entr":​ null,
 +        "​request_type ": 1,
 +        "​cnt_id ": 100,
 +        "​status":​ "​Принята в работу",​
 +        "​created_at":​ "​29.07.2024 13:​23",​
 +        "​updated_at":​ "​05.08.2024 09:​02",​
 +        "​execution_time":​ "​16.08.2024 13:​23",​
 +        "​closing_time":​ null,
 +        "​price":​ null,
 +        "​material_price":​ null,
 +        "​request_tags":​ []
 +        "​last_comments":​ [],
 +        "​uploads_count":​ 0,
 +        "​appointed_str":​ null,
 +        "​appointed_at":​ null,
 +        "​emp":​ null,
 +        "​resp":​ "​Системный пользователь ​ ",
 +        "​deadline_str":​ 11,
 +        "​reason":​ null,
 +        "​reason_id":​ null,
 +        "​status_id":​ 2,
 +        "​is_closed":​ "​N",​
 +        "​emp_id":​ null,
 +        "​resp_id":​ 35374,
 +        "​local_at":​ null,
 +        "​house_id":​ 55061,
 +        "​flat_id":​ 1214364,
 +        "​contphone":​ null,
 +        "​autophone":​ null,
 +        "​ess_id":​ 4079,
 +        "​ext_request_id":​ null,
 +        "​type_id":​ 143,
 +        "​req_type":​ "​plan",​
 +        "​rate":​ null,
 +        "​is_favorites":​ "​Н",​
 +        "​request_rso_id":​ null,
 +        "​editable":​ "​Y",​
 +    }
 +    ...
 +]
 +</​code>​
 +
 +
 +==== Получение списка доступных тэгов ====
 +
 +GET https://​server.ru/​v2/​request/​tag_list?​request_id&​cnt_id
 +
 +**Параметры запроса:​**
 +^Название^Тип^Обязательно^Описание^
 +|request_id|number|нет|идентификатор заявки. Если его передать то в is_set Y / N будет показываться Y для тех тэгов которые установлены в указанной заявке |
 +|cnt_id|number|нет|идентификатор юр. лица. Если отсутствует,​ то выдаются теги по всем доступным юр. лицам|
 +
 +**Параметры ответа:​**
 +
 +^Название^Тип^Обязательно^Описание^
 +|tag_id|number|да|идентификатор тега|
 +|title|string|да|наименование|
 +|color|string|нет|цвет|
 +|owner_id|number|нет|идентификатор ук|
 +|is_set|string|да|установлено ли|
 +
 +**Пример:​**
 +
 +<code javascript>​
 +// запрос
 +
 +/*
 +  https://​server.ru/​v2/​request/​tag_list
 +*/
 +
 +// ответ:
 +
 +[
 +    {
 +        "​tag_id":​ 8,
 +        "​title":​ "​ГЖИ",​
 +        "​color":​ "#​E9DFFA",​
 +        "​is_set":​ "​N",​
 +        "​owner_id":​ 13521
 +    },
 +    {
 +        "​tag_id":​ 841,
 +        "​title":​ "​Чат",​
 +        "​color":​ "#​FF00FF",​
 +        "​is_set":​ "​N",​
 +        "​owner_id":​ null
 +    },
 +    ...
 +]
 +</​code>​
 +==== Получение детализации по заявке ====
 +GET https://​server.ru/​v2/​request/:​request_id
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор заявки,​ по которой нужно получить детализацию|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​ ^ Описание^
 +|request_id|number|идентификатор заявки|
 +|rtype|string|тип заявки|
 +|req_type|string|тип заявки полем из бд|
 +|flag_emergency|string|аварийная ли заявка. Д - аварийная / Н - не аварийная|
 +|prepay_flag|string|оплачиваемая ли заявка. Д - можно редактировать суммы к оплате /qr код для оплаты / Н - нет нельзя|
 +|is_rso_available|string|работа с заявками в РСО Д/Н|
 +|note|string|текст заявки|
 +|house|string| Адрес дома|
 +|fias|string| фиас|
 +|full_address|string| Полный адрес дома|
 +|debt|number| Долг за квартиру|
 +|flat|string|тип и номер квартиры|
 +|flat_num|string|номер квартиры|
 +|flat_type|number|тип помещения|
 +|status|string|текущий статус|
 +|reason|string|причина статуса|
 +|created_at|string|Дата и время создания заявки в часовом поясе пользователя. Формат DD.MM.YYYY hh24:mi|
 +|updated_at|string|Дата и время изменения заявки в часовом поясе пользователя. Формат DD.MM.YYYY hh24:mi|
 +|floor|number|номер этажа|
 +|ext_request_id|string|ид заявки из внешних ресурсов|
 +|request_type |number|тип заявки в числовом обозначении|
 +|entr|string|обозначение подъезда|
 +|appeal_num|string|номер обращения|
 +|appeal_date|string|дата обращения|
 +|autophone|string|АОН|
 +|contphone|string|если житель пожелал оставить другой контактный телефон|
 +|email|string|Адрес электронной почты жителя|
 +|tags|string|тэги заявки|
 +|emp_status|string|статус исполнителя|
 +|resp_status|string|статус оветственного|
 +|type|string|Тип работ (из справочника)|
 +|ess|string|Причина обращения (из справочника)|
 +|emp|string|ФИО исполнителя заявки|
 +|resp|string|ФИО ответственного по заявке|
 +|created_by|string|пользователь,​ создавший заявку|
 +|deadline_at|string|Последняя дата срока выполнения заявки в формате DD.MM.YYYY |
 +|closing_time|string|Время закрытия заявки в формате DD.MM.YYYY hh24:mi |
 +|execution_time|string|Дата срока выполнения заявки в формате DD.MM.YYYY hh24:mi|
 +|execution_time_on_tz|string|Дата срока выполнения заявки в формате YYYY-MM-DD"​T"​HH24:​MI:​SS.FF3"​Z"​|
 +|closing_time_on_tz|string|Дата закрытия заявки в формате YYYY-MM-DD"​T"​HH24:​MI:​SS.FF3"​Z"​|
 +|created_on_tz|string|Дата создания заявки в формате YYYY-MM-DD"​T"​HH24:​MI:​SS.FF3"​Z"​|
 +|updated_on_tz|string|Дата обновления в формате YYYY-MM-DD"​T"​HH24:​MI:​SS.FF3"​Z"​|
 +|scheduled_execution_time_on_tz|string|Дата запланированного выполнения заявки формате YYYY-MM-DD"​T"​HH24:​MI:​SS.FF3"​Z"​|
 +|desired_time_start_on_tz|string|Дата желаемого выполнения заявки формате YYYY-MM-DD"​T"​HH24:​MI:​SS.FF3"​Z"​|
 +|deadline_str|number|Количество до конца срока выполнения заявки. Может иметь отрицательное значение|
 +|emp_note|string|скрытый комментарий только для пользователей Д24 (операторы не видят)|
 +|appointed_at|string|время и дата прибытия исполнителя в часовом поясе пользователя. Формат - DD.MM.YYYY |
 +|emp_phone|string|телефон(ы) исполнителя|
 +|resp_phone|string|телефон(ы) ответственного|
 +|status_id|number| Идентификатор статуса|
 +|reason_id|number | Идентификатор причины|
 +|type_id|number ​ | Идентификатор типа работ|
 +|ess_id|number | Идентификатор причины обращения|
 +|essence_id|number | Идентификатор причины обращения|
 +|emp_id|number | Идентификатор исполнителя|
 +|resp_id|number| Идентификатор ответственного|
 +|cnt_id|number| Идентификатор юр. лица|
 +|oi_id|number| Идентификатор оповещения|
 +|oi_status|string| Статус оповещения|
 +|house_id|number| Идентификатор дома|
 +|priority_id|number| Идентификатор приоритета заявки|
 +|flat_id|number| Идентификатор помещения|
 +|request_rso_id|number| Идентификатор РСО заявки|
 +|rso_status_name|string| Статус РСО заявки|
 +|is_paid|string| Оплачено или нет. Д - оплачено / Н - не оплачено|
 +|price|number| стоимость заявки|
 +|rate|number| рейтинг заявки|
 +|paid|number| сколько оплачено в данный момент по заявке|
 +|material_price| number|стоимость материалов по заявке|
 +|position| string|позиция сотрудника|
 +|access| string|доступ|
 +|appointed_str|string|желаемое время прихода специалиста|
 +|uploads_count|number|кол-во скачиваний заявки|
 +|last_comments|array|комменты к заявке в виде массива|
 +|request_tags|array|тэги заявки в виде массива|
 +|check_id|number|id связанного с заявкой чек-листа (если он есть, то заявка была создана через чек-лист)|
 +|is_local_need|string|нужна ли локализация аварии. Н - нет / Д - да|
 +|local_at|string| время локализации в формате YYYY-MM-DD"​T"​HH24:​MI:​SS.FF3"​Z"​ |   
 +|localization_on|string| время локализации в формате DD.MM.YYYY hh24:mi |      ​
 +|what_was_done|string| что было сделано |
 +|cnt_callback_phone| string|телефон для обращения в кц|
 +|is_favorites|string|добавлена ли заявка в избранное Д/Н|
 +|is_closed|string|закрыта ли заявка Y/N|
 +|ext_pay_system_id|string|код платежной системы из ойко|
 +|inn|string|инн юр лица|
 +|is_oico_account|number|Есть ли у собственника приложение oico, варианты ответа 0 - нет приложения/​1 - есть приложение) |
 +|fio|string| ФИО заявителя |
 +|rsft_value|number| SLA Время первого принятия в работу |
 +|rsfat_value|number| SLA Время выполнения |
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​request/​1300673
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​request_id":​ 1300673,
 +    "​rtype":​ "​Плановая",​
 +    "​req_type":​ "​plan",​
 +    "​flag_emergency":​ "​Н",​
 +    "​prepay_flag"​ : "​Д",​
 +    "​is_paid":​ "​Д",​
 +    "​is_rso_available":​ "​Д"​
 +    "​is_local_need":​ "​Н",​
 +    "​is_favorites":​ "​Н",​
 +    "​is_closed":​ "​N",​
 +    "​is_oico_account":​ 1,
 +    "​house":​ "​Луначарского ул, дом 240",
 +    "​full_address":​ "​Екатеринбург г, Луначарского ул, дом 240",
 +    "​fias":​ null,
 +    "​flat":​ "кв 100",
 +    "​flat_num":​ "​100",​
 +    "​flat_type":​ 1,
 +    "​cnt_id":​ 13521,
 +    "​appeal_num":​ null,
 +    "​appeal_date":​ null,
 +    "​ext_request_id":​ null,
 +    "​house_id":​ 54696,
 +    "​flat_id":​ 1206770,
 +    "​request_type ": 1,
 +    "​debt":​ null,
 +    "​type_id":​ 21,
 +    "​ess_id":​ 4114,
 +    "​essence_id":​ 4114,
 +    "​position":​ null,
 +    "​access":​ "​О"​
 +    "​status_id":​ 1,
 +    "​reason_id":​ null,
 +    "​emp_id":​ 36059,
 +    "​resp_id":​ 35574,
 +    "​priority_id":​ null,
 +    "​emp_status":​ "​Р",​
 +    "​resp_status":​ "​Р"​
 +    "​request_rso_id":​ 77530,
 +    "​check_id":​ null,
 +    "​execution_time":​ "​04.04.2022 00:​00",​
 +    "​closing_time":​ null,
 +    "​created_at":​ "​01.08.2023 20:​37",​
 +    "​updated_at":​ "​02.04.2024 05:​56",​
 +    "​deadline_at":​ "​04.04.2022",​
 +    "​local_at":​ "​2024-04-01T00:​00:​00.000Z",​
 +    "​localization_on":​ "​01.04.2024 00:​00",​
 +    "​appointed_at":​ "​02.04.2024",​
 +    "​execution_time_on_tz":​ "​2022-04-04T00:​00:​00.000Z",​
 +    "​closing_time_on_tz":​ null,
 +    "​created_on_tz":​ "​2023-08-01T20:​37:​01.705Z",​
 +    "​updated_on_tz":​ "​2024-04-02T05:​56:​44.009Z",​
 +    "​scheduled_execution_time_on_tz":​ null,
 +    "​desired_time_start_on_tz":​ "​2024-04-02T00:​00:​00.000Z",​
 +    "​note":​ "​test1",​
 +    "​fio":​ null,
 +    "​emp_note":​ "​emp_note",​
 +    "​floor":​ 1,
 +    "​entr":​ "​1",​
 +    "​autophone":​ null,
 +    "​contphone":​ "​123",​
 +    "​email":​ "​mail@mail.ru",​
 +    "​tags":​ "<​span >​тест</​span><​span style=\"​background-color:#​ADFFB2\">​ожидает оплаты</​span>",​
 +    "​last_comments":​ [
 +        {
 +            "​note":​ "​1"​
 +        },
 +        {
 +            "​note":​ "​note1"​
 +        }
 +    ],
 +    "​price":​ 0,
 +    "​material_price":​ 10,
 +    "​paid":​ 100,
 +    "​ess":​ "​Запросы по раскрытию информации по 731 пп",
 +    "​emp":​ "​dsfjhskbskdf5",​
 +    "​resp":​ "​\"'​`Alexander Galimov",​
 +    "​created_by":​ "​Пользователь личного кабинета ​ ",
 +    "​emp_phone":​ "​1746538770",​
 +    "​resp_phone":​ null,
 +    "​uploads_count":​ 24,
 +    "​status":​ "​Зарегистрирована",​
 +    "​rso_status_name":​ "​Зарегистрирована",​
 +    "​ext_pay_system_id":​ "​42",​
 +    "​inn":​ "​7203333262",​
 +    "​what_was_done":​ "​qwe1",​
 +    "​oi_id":​ null,
 +    "​oi_status":​ null,
 +    "​rsfat_value":​ 6623,
 +    "​rsft_value":​ 90,
 +    "​reason":​ null,
 +    "​type":​ "​Прочее",​
 +    "​rate":​ null,
 +    "​deadline_str":​ -732,
 +    "​appointed_str":​ "​02.04.2024",​
 +    "​cnt_callback_phone":​ "​34332830521",​
 +    "​request_tags":​ [
 +        {
 +            "​color":​ "#​ADFFB2",​
 +            "​title":​ "​ожидает оплаты"​
 +        }
 +    ]
 +}
 +</​code>​
 +
 +==== Получение деталей табов для заявки ====
 +GET https://​server.ru/​v2/​request/:​request_id/​all
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|Идентификатор заявки,​ которую нужно поменять|
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|comment|number|нет|хотим ли мы подгружать комментарии в ленту|
 +|activity|number|нет|хотим ли мы подгружать историю активности в ленту|
 +|sms|number|нет|хотим ли мы подгружать смс в ленту|
 +|call|number|нет|хотим ли мы подгружать звонки в ленту|
 +|call_task|number|нет|хотим ли мы подгружать задания по звонкам в ленту|
 +|file|number|нет|хотим ли мы подгружать прикрепленные файлы в ленту|
 +|telegram|number|нет|хотим ли мы подгружать телеграм сообщения в ленту|
 +|pushes|number|нет|хотим ли мы подгружать пуши из МП в ленту|
 +
 +Если не передать ни один из параметров,​ значит будет грузиться все типы, поэтому передавать только в том случае,​ когда нужно получить конкретные типы.
 +
 +Передаются как пример:​ comment=1  ​
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|id|number|да|-|
 +|feed_type|string|да|конкретный тип сущности в ленте|
 +|created_on_tz|string|да|время создания|
 +|user_data|string|да|данные о пользователе в одной строке,​ с разделителем|
 +|payload|string|да|полезная информация в зависимости от типа сущности|
 +|feed_opt_1|string|да|резервные данные с 1 до 10, меняются в зависимости от сущности|
 +|feed_opt_2|string|да|-|
 +|feed_opt_3|string|да|-|
 +|feed_opt_4|string|да|-|
 +|feed_opt_5|string|да|-|
 +|feed_opt_6|string|да|-|
 +|feed_opt_7|string|да|-|
 +|feed_opt_8|string|да|-|
 +|feed_opt_9|string|да|-|
 +|feed_opt_10|string|да|-|
 +|username|string|да|имя пользователя|
 +|position|string|да|позиция|
 +|access|string|да|уровень доступа|
 +
 +<code javascript>​
 +
 +//​Ответ
 +[
 +{
 +        "​id":​ 1978271,
 +        "​user_data":​ "dev| |С",
 +        "​feed_type":​ "​comment",​
 +        "​created_on_tz":​ "​2024-03-28T07:​35:​36.494Z",​
 +        "​payload":​ "​123",​
 +        "​feed_opt_1":​ "​Н",​
 +        "​feed_opt_2":​ null,
 +        "​feed_opt_3":​ null,
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​dev",​
 +        "​position":​ " ",
 +        "​access":​ "​С"​
 +    },
 +    {
 +        "​id":​ 10677037,
 +        "​user_data":​ "dev| |С",
 +        "​feed_type":​ "​activity",​
 +        "​created_on_tz":​ "​2024-03-28T07:​19:​10.826Z",​
 +        "​payload":​ "На основе данной заявки была создана заявка в  ГазУралКомплект #​77470",​
 +        "​feed_opt_1":​ null,
 +        "​feed_opt_2":​ null,
 +        "​feed_opt_3":​ null,
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​dev",​
 +        "​position":​ " ",
 +        "​access":​ "​С"​
 +    },
 +    {
 +        "​id":​ 2152559,
 +        "​user_data":​ null,
 +        "​feed_type":​ "​sms",​
 +        "​created_on_tz":​ "​2018-03-23T04:​37:​27.986Z",​
 +        "​payload":​ "​Заявка 1287313, следите по тел. 349-91-11 или на https://​pultdoma.ru",​
 +        "​feed_opt_1":​ "​9133815924",​
 +        "​feed_opt_2":​ "​2018-03-23 08:37:00 ",
 +        "​feed_opt_3":​ null,
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ null,
 +        "​position":​ null,
 +        "​access":​ null
 +    },
 +    {
 +        "​id":​ 5308122,
 +        "​user_data":​ "​Почевалов Андрей Александрович|Ст.инженер|П",​
 +        "​feed_type":​ "​call",​
 +        "​created_on_tz":​ "​2018-03-24T03:​07:​06.745Z",​
 +        "​payload":​ "​c1-1521860826.65794",​
 +        "​feed_opt_1":​ "​Исполнитель",​
 +        "​feed_opt_2":​ "​9232230214",​
 +        "​feed_opt_3":​ "​3",​
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​Почевалов Андрей Александрович",​
 +        "​position":​ "​Ст.инженер",​
 +        "​access":​ "​П"​
 +    },
 +    {
 +        "​id":​ 37521,
 +        "​user_data":​ "dev| |С",
 +        "​feed_type":​ "​file",​
 +        "​created_on_tz":​ "​2024-03-25T09:​22:​05.250Z",​
 +        "​payload":​ "​ljklk",​
 +        "​feed_opt_1":​ "​lj",​
 +        "​feed_opt_2":​ null,
 +        "​feed_opt_3":​ null,
 +        "​feed_opt_4":​ null,
 +        "​feed_opt_5":​ null,
 +        "​feed_opt_6":​ null,
 +        "​feed_opt_7":​ null,
 +        "​feed_opt_8":​ null,
 +        "​feed_opt_9":​ null,
 +        "​feed_opt_10":​ null,
 +        "​username":​ "​dev",​
 +        "​position":​ " ",
 +        "​access":​ "​С"​
 +    },  ​
 +]
 +
 +</​code>​
 +
 +==== Получение контрольных вопросов для заявки ====
 +GET https://​server.ru/​v2/​request/:​request_id/​questions
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|Идентификатор заявки,​ которую нужно поменять|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|answer_id|number|да|ид ответа|
 +|question_id|number|да|ид вопроса|
 +|question_text|string|да|текст вопроса|
 +|answer_text|string|да|текст ответа|
 +|answer_type|string|да|тип ответа|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +//​Ответ
 +[
 +    {
 +        "​answer_id":​ 257,
 +        "​question_id":​ 35,
 +        "​question_text":​ "​Оцените качество выполнения заявки",​
 +        "​answer_text":​ "​2",​
 +        "​answer_type":​ "​Н"​
 +    }
 +]
 +
 +</​code>​
 +
 +
 +==== Получение подписчиков заявки ====
 +GET https://​server.ru/​v2/​request/:​request_id/​subscribers
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|Идентификатор заявки,​ которую нужно поменять|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|id|number|да|-|
 +|username|string|да|имя пользователя|
 +|access|string|да|уровень доступа|
 +|position|string|да|позиция|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +//​Ответ
 +[
 +  {
 +      "​id":​1672,​
 +      "​username":"​Служба поддержки",​
 +      "​access":"​С",​
 +      "​position":"​Директор"​
 +  }
 +]
 +
 +</​code>​
 +
 +==== Получение SLA заявки ====
 +GET https://​server.ru/​v2/​request/:​request_id/​sla
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|Идентификатор заявки,​ которую нужно поменять|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|name|string|да|наименования статуса|
 +|status_id|number|да|ид статуса|
 +|created_on_tz|string|да|время создания|
 +|hours_round|number|да|округленное до часов общее время заявки в работе|
 +|days|number|да|кол-во дней заявки в работе|
 +|hours|number|да|кол-во часов заявки в работе|
 +|minutes|number|да|кол-во минут заявки в работе|
 +|seconds|number|да|кол-во секунд заявки в работе|
 +|req_sla_first_apply_time|number|да|первое принятие в работу|
 +|req_sla_finish_time|number|да|время окончания|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +//​Ответ
 +[
 +{
 +        "​name":​ "​Принята в работу",​
 +        "​status_id":​ 2,
 +        "​created_on_tz":​ "​2023-03-27T07:​25:​29.616Z",​
 +        "​hours_round":​ 8808,
 +        "​days":​ 367,
 +        "​hours":​ 0,
 +        "​minutes":​ 6,
 +        "​seconds":​ 0,
 +        "​req_sla_first_apply_time":​ null,
 +        "​req_sla_finish_time":​ null
 +    }
 +]
 +
 +</​code>​
 +
 +==== Добавление комментария или прикрепление файла в ленту ​ ====
 +POST https://​server.ru/​v2/​request/:​request_id/​all/:​feed_type
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор заявки|
 +|feed_type|string|да|тип сущности,​ которую собираемся менять|
 +
 +feed_type может быть comment или file
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|note|string|нет|комметарий|
 +|files|array|нет|массив файлов|
 +|flag_webhook |string|нет|вебхук,​ отправлять жителю или нет|
 +|fileName |string|нет|имя файла|
 +|fileUrl |string|нет|юрл файла|
 +
 +
 +files представляет собой массив объектов такого вида и передается в случае загрузки нескольких файлов:​
 +|flag_webhook |string|нет|вебхук,​ отправлять жителю или нет|
 +|fileName |string|нет|имя файла|
 +|fileUrl |string|нет|юрл файла|
 +
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|ok|boolean|да|успешное обновление|
 +
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Прикрепление файлов
 +
 +//Тело запроса
 +
 +{
 +    "​files":​ [
 +        {
 +            "​fileName":​ "​9826171613_2.jpg",​
 +            "​fileUrl":​ "​https://​cdn.ds24.ru/​fs/​static/​2024/​01/​17/​request_1705469628.jpg",​
 +            "​flag_webhook":​ "​Н"​
 +        },
 +        {
 +            "​fileName":​ "​9826171613_0.jpg",​
 +            "​fileUrl":​ "​https://​cdn.ds24.ru/​fs/​static/​2024/​02/​01/​request_1706764444.pdf",​
 +            "​flag_webhook":​ "​Д"​
 +        }
 +    ]
 +}
 +
 +//​Ответ
 +{"​ok":​true}
 +</​code>​
 +
 +
 +==== Изменение объекта в ленте (табах) заявки ​ ====
 +POST https://​server.ru/​v2/​request/:​request_id/​all/:​feed_type/:​id
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор заявки|
 +|feed_type|string|да|тип сущности|
 +|id|string|да|ид объекта,​ который собираемся менять|
 +
 +feed_type может быть comment, file
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|note|string|нет|комментарий|
 +|flag_webhook |string|нет|вебхук,​ отправлять жителю или нет|
 +|mark |number|нет|оценка|
 +|mark_comment |string|нет|комментарий к оценке|
 +|delete_file |boolean|нет|булевое обозначение удаления файла|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|ok|boolean|да|успешное обновление|
 +
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Изменения флага для комментария или прикрепленного файла ​
 +
 +//Тело запроса
 +
 +{
 +    "​flag_webhook":​ "​Д"​
 +}
 +
 +//​Ответ
 +{"​ok":​true}
 +</​code>​
 +
 +<code javascript>​
 +//​Удаление файла
 +
 +//Тело запроса
 +
 +{
 +    "​delete_file":​ true
 +}
 +
 +//​Ответ
 +{"​ok":​true}
 +</​code>​
 +
 +==== Получение количества не принятых в работу заявок ====
 +GET https://​server.ru/​v2/​request/​custom/​new
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_count|number|да|количество заявок,​ которые не приняты в работу|
 +|request_emerg_count|number|да|количество не принятых в работу **аварийных** заявок из числа request_count|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​request/​custom/​new
 +*/
 +
 +//​Ответ
 +{
 +    "​request_count":​ 0,
 +    "​request_emerg_count":​ 0
 +}
 +
 +</​code>​
 +
 +==== Принятие в работу всех непринятых заявок ====
 +POST https://​server.ru/​v2/​request/​custom/​new/​apply
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_count|number|да|Количество принятых в работу заявок|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 + ​https://​server.ru/​v2/​request/​custom/​new/​apply
 +/*
 + ​https://​server.ru/​v2/​request
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​request_count":​ 0
 +}
 +
 +</​code>​
 +
 +==== Отказ от принятия заявки в работу ====
 +POST https://​server.ru/​v2/​request/:​request_id/​refuse
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор заявки|
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|refuse_id|string|да|Код причины отказа от заявки из [[https://​ds24.ru/​wiki/​doku.php?​id=d24:​develop:​v2:​backend:​v2#​%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D0%BF%D0%B8%D1%81%D0%BA%D0%B0_%D0%BF%D1%80%D0%B8%D1%87%D0%B8%D0%BD_%D0%BE%D1%82%D0%BA%D0%B0%D0%B7%D0%B0_%D0%BE%D1%82_%D0%B7%D0%B0%D1%8F%D0%B2%D0%BA%D0%B8|списка причин отказа от заявки]]|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|Отправленный в теле запроса идентификатор заявки|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​request/​1298309/​refuse
 +*/
 +
 +//Тело запроса
 +
 +{
 +    "​refuse_id":​ "​2"​
 +}
 +
 +//​Ответ
 +
 +{
 +    "​request_id":​ 1298309
 +}
 +</​code>​
 +
 +==== Возврат к предшествующей причине обращения гарантийной заявки ====
 +POST https://​server.ru/​v2/​request/:​request_id/​flashback
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор заявки|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор измененной заявки. В случае ошибки вернет 0. Возможные ошибки - нет доступа к заявке / заявка не является в данный момент гарантийной)|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​request/​1298309/​flashback
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​request_id":​ 1298309
 +}
 +</​code>​
 +
 +==== Перевод аварийной заявки на участок ====
 +
 +POST https://​server.ru/​v2/​request/:​request_id/​tocurrentrepair
 +  - сработает только если flag_emergency = Д в тек момент
 +  - устанавливается время локализации = systimestamp
 +  - устанавливается статус "​Требуется передать",​ что бы была возможность сбросить флаг аварийности
 +  - flag_emergency = Н (заявка перестает быть аварийной)
 +  - исполнитель назначается дневной по плановым / платным заявкам
 +  - автотегирование с правилом "​Отправляют на участок (Сценарий исполнителя)"​
 +
 +
 +**Переменные URL**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор заявки|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_count|number|да|количество заявок переведенных на участок|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​request/​1298309/​tocurrentrepair
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​request_count":​ 0 
 +}
 +</​code>​
 +
 +==== Публикация комментария / фотографии для жителя ====
 +POST https://​server.ru/​v2/​request/:​request_id/​feed/:​id
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор заявки|
 +|id|number|да|идентификатор комментария / фотографии|
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|mtype|number|да|тип объекта (0 - комментарий,​ 2,3 - фото)|
 +|webhook_flag|string|да|"​статус"​ публикации (Д - опубликовать,​ Н - снять с публикации) ​ |
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|affected_rows|number|да|количество затронутых изменениями строк|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​request/:​1298309/​feed/​124657
 +*/
 +
 +//Тело запроса:​
 +
 +{
 +    "​mtype":​ 0,
 +    "​webhook_flag":​ "​Д"​
 +}
 +
 +//​Ответ
 +{
 +    "​affected_rows":​ 1
 +}
 +
 +</​code>​
 +
 +==== Получение ленты по заявке ====
 +GET https://​server.ru/​v2/​request/:​request_id/​feed
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор заявки|
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|позиция,​ с которой получить ленту|
 +|count|number|да|количество элементов в ленте|
 +
 +**Тип ответа:​** Массив объектов
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|created_at|string|да|Дата создания|
 +|created_on_tz|string|да| Zulu Временная метка события по utc |
 +|type|number|да|Тип события 0 - комментарий,​ 1 - активность,​ 2 - файлы, 3 - изображения с превью,​ 4 - запись разговора|
 +|note|string|да|текст события|
 +|created_by|string|да|автор события|
 +|id|number|да|идентификатор события|
 +|flag_webhook|string|да| Статус публикации события. Д - опубликовано / Н - не опубликовано"​|
 +|creator_type|number|да|0 - событие внутри системы,​ 1 - событие от собственника ч/з мп|
 +|creator_id|number|да|id пользователя создавшего событие в ленте|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​request/​964825/​feed
 +*/
 +
 +//​Ответ
 +[
 +    {
 +        "​created_at":​ "​12.03.2024 01:​16",​
 +        "​created_on_tz":​ "​2024-03-11T20:​16:​44.842Z",​
 +        "​type":​ 0,
 +        "​note":​ "​прот",​
 +        "​created_by":​ "​кто-то очень умный",​
 +        "​flag_webhook":​ "​Н",​
 +        "​id":​ 27072208,
 +        "​creator_type":​ 0,
 +        "​creator_id":​ 33
 +    },
 +    {
 +        "​created_at":​ "​12.03.2024 01:​16",​
 +        "​created_on_tz":​ "​2024-03-11T20:​16:​44.840Z",​
 +        "​type":​ 1,
 +        "​note":​ "​Статус сменился с Принята в работу на Выполнена",​
 +        "​created_by":​ "​кто-то очень умный",​
 +        "​flag_webhook":​ null,
 +        "​id":​ 59487612,
 +        "​creator_type":​ 0,
 +        "​creator_id":​ 33
 +    },
 +    {
 +        "​created_at":​ "​11.03.2024 16:​08",​
 +        "​created_on_tz":​ "​2024-03-11T11:​08:​51.999Z",​
 +        "​type":​ 0,
 +        "​note":​ "​фывафыва",​
 +        "​created_by":​ "​кто-то очень умный",​
 +        "​flag_webhook":​ "​Н",​
 +        "​id":​ 27067540,
 +        "​creator_type":​ 0,
 +        "​creator_id":​ 278794
 +    },
 +    {
 +        "​created_at":​ "​11.03.2024 16:​08",​
 +        "​created_on_tz":​ "​2024-03-11T11:​08:​51.979Z",​
 +        "​type":​ 1,
 +        "​note":​ "​Статус сменился с Зарегистрирована на Принята в работу",​
 +        "​created_by":​ "​кто-то очень умный",​
 +        "​flag_webhook":​ null,
 +        "​id":​ 59470759,
 +        "​creator_type":​ 0,
 +        "​creator_id":​ 278794
 +    }
 +]
 +
 +</​code>​
 +
 +==== Добавление фотографий к заявке ====
 +POST https://​server.ru/​v2/​request/:​request_id/​add_images
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|request_id|number|да|идентификатор заявки|
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|images|array|да|Массив с объектами вида { image_name: '​name.jpg',​ image_url: '​http://​server.ru/​image.jpg }, где image_name - имя файла изображения,​ image_url - url изображения|
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|affected_rows|number|да|Количество созданных строк|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​request/​964825/​add_images
 +*/
 +
 +// тело запроса
 +
 +{
 +    "​images":​ [
 +        {
 +            "​image_name":​ "​996780_img.jpg",​
 +            "​image_url":​ "​https://​ds24.ru/​fs/​static/​2021/​11/​25/​996780_img.jpg"​
 +        },
 +        {
 +            "​image_name":​ "​some_test.jpg",​
 +            "​image_url":​ "​https://​ds24.ru/​fs/​static/​2017/​08/​14/​some_test.jpg"​
 +        },
 +        {
 +            "​image_name":​ "​ios_img",​
 +            "​image_url":​ "​https://​ds24.ru/​fs/​static/​2021/​12/​16/​feed_img_NzE0.jpg"​
 +        }
 +    ]
 +}
 +
 +//​Ответ
 +{
 +    "​affected_rows":​ 3
 +}
 +
 +</​code>​
 +===== Пуши =====
 +
 +==== Получение списка push-уведомлений для пользователя ====
 +
 +GET https://​server.ru/​v2/​push/?​start&​count
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|с какой позиции получить push-уведомления|
 +|count|number|да|какое количество push-уведомлений получить|
 +
 +**Тип ответа:​** Массив объектов
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|rn|number|да|порядковый номер|
 +|push_id|number|да|идентификатор пуша|
 +|message|string|да|сообщение|
 +|object_id|number|да|идентификатор объекта|
 +|object_type|string|да|тип пуша|
 +|status|number|да|статус пуша. Смотреть [[d24:​develop:​v2:​backend:​v2#​статусы_push-уведомления|описание статусов пуша]] |
 +|type_description|string|да|описание типа пуша.|
 +|created_at|string|да|время создания пуша в формате DD.MM.YYYY hh.mm|
 +|created_on_tz|string|да|время создания пуша в формате ISO|
 +|object_status|string|да|состояние статуса из заявки|
 +|address_full|string|да|полный адрес|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​push/?​start=1&​count=2
 +*/
 +
 +//​Ответ
 +
 +[
 +    {
 +        "​rn":​ 1,
 +        "​push_id":​ 25536,
 +        "​message":​ "​blabla",​
 +        "​object_id":​ 321,
 +        "​object_type":​ "​З_Н",​
 +        "​status":​ 1,
 +        "​type_description":​ "​Новая заявка",​
 +        "​created_at":​ "​09.12.2021 14:33"
 +    },
 +    {
 +        "​rn":​ 2,
 +        "​push_id":​ 25535,
 +        "​message":​ "​Комментарий к #1298471: комментарий",​
 +        "​object_id":​ 1298471,
 +        "​object_type":​ "​З_К",​
 +        "​status":​ 0,
 +        "​type_description":​ "​Новый комментарий к заявке",​
 +        "​created_at":​ "​09.12.2021 14:33"
 +    }
 +]
 +</​code>​
 +
 +==== получение детализации push-уведомления ====
 +
 +GET https://​server.ru/​v2/​push/:​push_id
 +
 +**Переменные URL:**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|push_id|number|да|идентификатор пуша, для которого нужно получить детализацию|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|push_id|number|да|идентификатор пуша|
 +|message|string|да|сообщение|
 +|object_id|number|да|идентификатор объекта|
 +|object_type|string|да|тип пуша|
 +|status|number|да|статус пуша. Смотреть [[d24:​develop:​v2:​backend:​v2#​статусы_push-уведомления|описание статусов пуша]] |
 +|type_description|string|да|описание типа пуша|
 +|created_at|string|да|время создания пуша в формате DD.MM.YYYY hh.mm|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 +https://​server.ru/​v2/​push/​25536
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​push_id":​ 25536,
 +    "​message":​ "​blabla",​
 +    "​object_id":​ 321,
 +    "​object_type":​ "​З_Н",​
 +    "​status":​ 2,
 +    "​type_description":​ "​Новая заявка",​
 +    "​created_at":​ "​22.12.2021 10:37"
 +}
 +</​code>​
 +
 +
 +==== Пометить прочитанными все push-уведомления у пользователя ====
 +
 +POST https://​server.ru/​v2/​push/​readall
 +
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|affected_rows|number|да|количество затронутых обновлением строк|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 +https://​server.ru/​v2/​push/​readall
 +*/
 +
 +//​Ответ code: 200
 +
 +{
 +    affected_rows:​ 167
 +}
 +</​code>​
 +
 +===== Журнал звонков =====
 +
 +==== Получение списка звонков от клиентов ====
 +
 +GET https://​server.ru/​v2/​calls_log/​client
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|с какой позиции получить звонки|
 +|count|number|да|какое количество звонков получить|
 +|start_date|string|да|начальный период для звонков в формате ISO|
 +|end_date|string|да|конечный период для звонков в формате ISO|
 +|cnt_id|number|да|ид управляющей компании|
 +|city_text|string|нет|название города|
 +|street_text|string|нет|название улицы|
 +|house_ids|string|нет|ид домов через запятую|
 +|flat_ids|string|нет|ид помещений через запятую|
 +|phone_search|string|нет|телефон|
 +|rated|string|нет|условие по фильтрации оценок,​ принимает rated = по оцененным,​ answered = по отвеченным,​ all = по оцененным и отвеченным|
 +
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|call_id|number|да|порядковый номер|
 +|created_on_tz|string|да|время создания в формате ISO|
 +|phone|number|да|телефон|
 +|city_text|string|да|город|
 +|street_text|string|да|улица|
 +|house|string|да|дом|
 +|waiting_time|string|да|время ожидания звонка|
 +|mark|number|да|оценка звонка|
 +|mark_feedback|string|да|ответ на оценку из МП|
 +|record|string|да|запись разговора|
 +|flat|string|да|квартира|
 +|oper|string|да|оператор|
 +|out_count|number|да|количество исходящих звонков|
 +
 +<code javascript>​
 +//​Ответ
 +[
 +    {
 +        "​call_id":​ 5315676,
 +        "​created_on_tz":​ "​2020-07-02T10:​38:​17.461Z",​
 +        "​phone":​ 123,
 +        "​city_text":​ "​Екатеринбург г",
 +        "​street_text":​ "​Луначарского ул",
 +        "​house":​ "​240",​
 +        "​waiting_time":​ null,
 +        "​mark":​ 2,
 +        "​mark_feedback":​ "​ответ на очень длинный комментарий",​
 +        "​record":​ "​mMqqqqwXMm",​
 +        "​flat":​ "кв 1",
 +        "​oper":​ "​Петрова Галина",​
 +        "​out_count":​ null
 +    }
 +]
 +</​code>​
 +
 +==== Получение списка звонков от исполнителей ====
 +
 +GET https://​server.ru/​v2/​calls_log/​exec
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|с какой позиции получить звонки|
 +|count|number|да|какое количество звонков получить|
 +|start_date|string|да|начальный период для звонков в формате ISO|
 +|end_date|string|да|конечный период для звонков в формате ISO|
 +|cnt_id|number|да|ид управляющей компании|
 +|employee_ids|string|нет|ид сотрудников через запятую|
 +|phone_search|string|нет|телефон|
 +|rated|string|нет|условие по фильтрации оценок,​ принимает rated = по оцененным,​ answered = по отвеченным,​ all = по оцененным и отвеченным|
 +
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|call_id|number|да|порядковый номер|
 +|created_on_tz|string|да|время создания в формате ISO|
 +|phone|number|да|телефон|
 +|emp|string|да|исполнитель|
 +|emp_pos|string|да|должность исполнителя|
 +|waiting_time|string|да|время ожидания звонка|
 +|mark|number|да|оценка звонка|
 +|mark_feedback|string|да|ответ на оценку из МП|
 +|record|string|да|запись разговора|
 +|oper|string|да|оператор|
 +
 +<code javascript>​
 +//​Ответ
 +[
 +    {
 +        "​call_id":​ 4917151,
 +        "​created_on_tz":​ "​2017-12-27T10:​51:​42.469Z",​
 +        "​phone":​ 9617496539,
 +        "​emp":​ "​Павлов Артем",​
 +        "​emp_pos":​ "​36",​
 +        "​record":​ "​1514371901.3283147",​
 +        "​oper":​ "​Пахоруков Сергей Анатольевич",​
 +        "​waiting_time":​ "​00:​00:​17",​
 +        "​mark":​ 4,
 +        "​mark_feedback":​ null
 +    }
 +]
 +</​code>​
 +
 +==== Получение списка звонков для РСО ====
 +
 +GET https://​server.ru/​v2/​calls_log/​rso
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|с какой позиции получить звонки|
 +|count|number|да|какое количество звонков получить|
 +|start_date|string|да|начальный период для звонков в формате ISO|
 +|end_date|string|да|конечный период для звонков в формате ISO|
 +|cnt_id|number|да|ид управляющей компании|
 +|svc_id|number|нет|ид управляющей компании РСО|
 +|phone_search|string|нет|телефон|
 +|rated|string|нет|условие по фильтрации оценок,​ принимает rated = по оцененным,​ answered = по отвеченным,​ all = по оцененным и отвеченным|
 +
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|call_id|number|да|порядковый номер|
 +|created_on_tz|string|да|время создания в формате ISO|
 +|phone|number|да|телефон|
 +|name|string|да|название РСО|
 +|waiting_time|string|да|время ожидания звонка|
 +|mark|number|да|оценка звонка|
 +|mark_feedback|string|да|ответ на оценку из МП|
 +|record|string|да|запись разговора|
 +|oper|string|да|оператор|
 +
 +<code javascript>​
 +//​Ответ
 +[
 +    {
 +        "​call_id":​ 5312859,
 +        "​created_on_tz":​ "​2019-01-24T08:​36:​29.036Z",​
 +        "​phone":​ 123,
 +        "​name":​ "​Курганская ​ Генерирующая компания",​
 +        "​oper":​ "​Петрова Галина",​
 +        "​waiting_time":​ null,
 +        "​mark":​ 3,
 +        "​mark_feedback":​ null,
 +        "​record":​ "​mMXdsfMm"​
 +    }
 +]
 +</​code>​
 +
 +==== Детализация звонка ====
 +
 +GET https://​server.ru/​v2/​calls_log/:​call_id
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|call_id|number|да|ид звонка|
 +
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|call_id|number|да|порядковый номер|
 +|created_on_tz|string|да|время создания в формате ISO|
 +|phone|number|да|телефон|
 +|waiting_time|string|да|время ожидания звонка|
 +|employee_id|string|да|сотрудник|
 +|mark|number|да|оценка звонка|
 +|mark_comment|string|да|комментарий,​ оставленный при оценке звонка|
 +|mark_employee|string|да|комментатор|
 +|city_text|string|да|город|
 +|street_text|string|да|улица|
 +|house|string|да|дом|
 +|flat|string|да|квартира|
 +|mark_feedback|string|да|ответ на оценку из МП|
 +|scenario|number|да|сценарий звонка|
 +|record|string|да|запись разговора|
 +|oper|string|да|оператор|
 +|emp|string|да|исполнитель|
 +|emp_pos|string|да|должность исполнителя|
 +|svc_name|string|да|название РСО|
 +|owner_id|number|да|ид УК|
 +
 +<code javascript>​
 +//​Ответ
 +{
 +    "​call_id":​ 5315676,
 +    "​created_on_tz":​ "​2020-07-02T10:​38:​17.461Z",​
 +    "​phone":​ 123,
 +    "​record":​ "​mMqqqqwXMm",​
 +    "​employee_id":​ "​12345",​
 +    "​mark":​ 2,
 +    "​mark_comment":​ "​очень длинный комментарий очень длинный комментарий очень длинный комментарий очень длинный комментарий очень длинный комментарий очень длинный комментарий очень длинный комментарий ",
 +    "​mark_feedback":​ "​ответ на очень длинный комментарий",​
 +    "​mark_employee":​ "​dev",​
 +    "​employee_id":​ null,
 +    "​scenario":​ 0,
 +    "​city_text":​ "​Екатеринбург г",
 +    "​street_text":​ "​Луначарского ул",
 +    "​house":​ "​240",​
 +    "​flat":​ "кв 1",
 +    "​oper":​ "​Петрова Галина",​
 +    "​emp":​ null,
 +    "​emp_pos":​ null,
 +    "​svc_name":​ null,
 +    "​svc_id":​ null,
 +    "​waiting_time":​ null,
 +    "​owner_id":​ 13521
 +}
 +</​code>​
 +
 +==== Получение списка исходящих звонков ====
 +
 +GET https://​server.ru/​v2/​calls_log/:​call_id/​out
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|call_id|number|да|ид звонка|
 +
 +**Параметры квери запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|cnt_id|number|да|ид управляющей компании|
 +
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|calldate_on_tz|string|да|время звонка в ISO|
 +|record|string|да|запись разговора|
 +|dst|string|да|телефон|
 +|name|string|да|имя|
 +|dialstatus|string|да|статус|
 +
 +<code javascript>​
 +//​Ответ
 +[
 +    {
 +        "​calldate_on_tz":​ "​2016-04-30T21:​53:​42.000Z",​
 +        "​record":​ "​1462053220.168732",​
 +        "​dst":​ "​89005201455",​
 +        "​name":​ "​Иванов Виктор Иннокентьевич",​
 +        "​dialstatus":​ "​ANSWER"​
 +    }
 +]
 +</​code>​
 +
 +==== Добавление или изменение оценки к звонку ====
 +
 +POST https://​server.ru/​v2/​calls_log/:​call_id/​mark
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|call_id|number|да|ид звонка|
 +
 +**Параметры тела запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|mark|number|да|оценка звонка|
 +|mark_comment|strring|да|комментарий|
 +
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|call_id|number|да|ид звонка|
 +|mark|number|да|оценка звонка|
 +|mark_comment|string|да|комментарий|
 +
 +<code javascript>​
 +//​Ответ
 +{
 +    "​call_id":​ 2490610,
 +    "​mark":​ 3,
 +    "​mark_comment":​ "​qwe"​
 +}
 +</​code>​
 +
 +===== Профиль =====
 +
 +==== Получение детализации профиля ====
 +
 +GET https://​server.ru/​v2/​profile/​detail
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|username| string |да| Имя пользователя |,
 +|can_close_request|boolean |да| доступ к закрытию заявок true или false |,
 +|can_access_meters|boolean |да| доступ к счетчикам true или false |,
 +|can_access_checklist|boolean |да| доступ к чеклистам true или false |,
 +|can_access_settings|boolean |да| доступ к настройкам true или false |,
 +|can_access_contacts|boolean |да| доступ к контактам true или false|,
 +|is_iot|string|да| системный ли пользователь Y \ N|,
 +|account_name| string |да| имя аккаунта|,​
 +|phone| string |да| Номер телефона пользователя|,​
 +|emp_id| number |да| ид пользователя |,
 +|not_read_push_count| number |да|количество непрочитанных push-уведомлений |,
 +|can_comment_to_ext_system|number|да|варианты 0 / 1|
 +|token_id| number |да| ид токена|,​
 +|can_access_material_price|boolean |да| доступ к изменению цены материалов true или false |
 +|sip|array|да|Массив с объектами. Тип объектов см. ниже|
 +|access_status_list|string|да|Идентификаторы разрешенных статусов для изменения через двоеточие. Пример:​ 2:​5:​21:​3:​25:​47|
 +|ref_users|object|да|Объект со всеми полями в юзере. см ниже|
 +|ref_countries|object|да|Объект со страной юзера. см ниже|
 +
 +**sip**:
 +^название^тип^описание^
 +|queue_num|string|-|
 +|queue_name|string|-|
 +
 +**ref_users**
 +^название^тип^обязательно^описание^
 +|ALLOWED_CLOSED_REASON|string|нет|Идентификаторы разрешенных причин закрытия заявки для изменения через двоеточие. Пример:​ 7164:7:8|
 +|||||
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​profile/​detail
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​username":​ "​dev",​
 +    "​can_close_request":​ false,
 +    "​can_access_meters":​ true,
 +    "​can_access_contacts":​ true,
 +    "​can_access_checklist":​ true,
 +    "​can_access_settings":​ true,
 +    "​account_name":​ "​Лучшая",​
 +    "​phone":​ null,
 +    "​emp_id":​ 35753,
 +    "​not_read_push_count":​ 82,
 +    "​can_comment_to_ext_system":​ 1,
 +    "​token_id":​ 5626,
 +    "​can_access_material_price":​ false,
 +    "​access_status_list":​ "​2:​5:​21:​3:​25:​47",​
 +    "​ref_users":​ {
 +        "​EMPLOYEE_ID":​ 35753,
 +        "​LOGIN":​ "​dev",​
 +        "​POSITION":​ null,
 +        "​PHONES":​ null,
 +        "​ACCOUNT_ID":​ 2621,
 +        "​EMAIL":​ null,
 +        "​USERNAME":​ "​dev",​
 +        "​access":​ "​А",​
 +        "​STATUS":​ "​Р",​
 +        "​CC_EMP_ID":​ null,
 +        "​FLAG_LOGIN":​ "​Д",​
 +        "​POSITION_ID":​ 7,
 +        "​PROFILE_ID":​ null,
 +        "​VERIFIED":​ "​Д",​
 +        "​FLAG_OI_SMS":​ "​Д",​
 +        "​FLAG_NOTICE_DEBT":​ "​Н",​
 +        "​VAC_DATE_START":​ "​2021-08-23T13:​26:​00.000Z",​
 +        "​VAC_DATE_END":​ "​2021-09-06T00:​00:​00.000Z",​
 +        "​VAC_EMPLOYEE_ID":​ null,
 +        "​FLAG_DASHBOARD":​ "​Д",​
 +        "​FLAG_NIGHT_SERVICE":​ "​Н",​
 +        "​FLAG_SMS_SEND":​ "​Д",​
 +        "​SMS_CHARSET_TYPE":​ "​Р",​
 +        "​FLAG_METERS":​ "​Д",​
 +        "​TOKEN":​ null,
 +        "​VAC_COMMENT":​ null,
 +        "​FLAG_REQ_CONTROL":​ "​Д",​
 +        "​TIME_TO_CONTROL":​ null,
 +        "​FLAG_CONTACT":​ "​Д",​
 +        "​FLAG_UPLOAD_DEBT":​ "​Н",​
 +        "​FLAG_SHOW_DEBT":​ "​Н",​
 +        "​GCM_ID":​ null,
 +        "​ANDROID_VERSION":​ null,
 +        "​ANDROID_ACTIVITY_TZ":​ null,
 +        "​FLAG_PP_SMS_SEND":​ "​Н",​
 +        "​FLAG_PP_CALL_SEND":​ "​Н",​
 +        "​TIMETABLE":​ null,
 +        "​TELEGRAM_CHAT_ID":​ null,
 +        "​PHONES_OTHER":​ null,
 +        "​NOTIFY_COUNT":​ 183,
 +        "​NOTIFY_CLICK":​ 0,
 +        "​NOTIFY_PARAMS":​ "​О;​К",​
 +        "​FLAG_CAN_CLOSE":​ "​Н",​
 +        "​FLAG_CURATOR":​ "​Д",​
 +        "​FLAG_RESP_TLGRM":​ "​Д",​
 +        "​FLAG_PP_CUSTOM_PROFILE":​ "​Н",​
 +        "​FLAG_CONTRACTOR":​ "​Н",​
 +        "​FLAG_CURATOR_TAKE_OFF":​ "​Н",​
 +        "​PUSH_CONFIG":​ "​З_Н:​З_К:​З_Ф:​З_СО:​З_СП:​on",​
 +        "​FLAG_CAN_CHANGE_DEADLINE":​ "​Д",​
 +        "​CHIEF_EMPLOYEE_ID":​ null,
 +        "​FLAG_PP_EMAIL_SEND":​ "​Н",​
 +        "​FLAG_CAN_COMMENT_TO_EXT_SYSTEM":​ "​Д",​
 +        "​FLAG_KEY_EMPLOYEE":​ "​Н",​
 +        "​PP_CALL_PASS_DELAY":​ null,
 +        "​BLOCKED_STATUSES":​ null,
 +        "​ALLOWED_STATUSES":​ "​2:​5:​21:​3:​25:​47",​
 +        "​FLAG_CHECK_LIST":​ "​Д",​
 +        "​FLAG_MATERIAL_PRICE":​ "​Н",​
 +        "​ALLOWED_CLOSED_REASON":​ null,
 +        "​IS_NEW_UI_REQUESTS":​ "​Y",​
 +        "​FLAG_SUPPORT":​ "​Н",​
 +        "​FLAG_VOIP_CALL":​ "​Д",​
 +        "​flag_check_list":​ "​Д",​
 +        "​FLAG_CAN_CHANGE_ESSENCE":​ "​Д",​
 +        "​employee_id":​ 35753,
 +        "​username":​ "​dev",​
 +        "​allowed_statuses":​ "​2:​5:​21:​3:​25:​47",​
 +        "​accessToken":​ "​9]J!5bzQ3B$__R|_*k.C!x3<​nZ4XA3Eo1BE7371E7797CA4A5F6F651AA9C6EB43"​
 +    },
 +    "​sip":​ [
 +        {
 +            "​queue_num":​ "​maincc1998",​
 +            "​queue_name":​ "​Общий КЦ"
 +        }
 +    ],
 +     "​ref_countries":​ {
 +        "​countrie_id":​ 1,
 +        "​countrie_name":​ "​Россия",​
 +        "​phone_length":​ 10,
 +        "​phone_code":​ "​+7",​
 +        "​countrie_code":​ "​RU"​
 +    }
 +}
 +
 +</​code>​
 +
 +==== Получение списка включенных push-уведомлений для профиля ====
 +
 +GET https://​server.ru/​v2/​profile/​settings_push
 +
 +**Тип ответа:​** Массив объектов
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|descr|string |да|описание|
 +|value|string |да|значение|
 +|is_set|string |да|установлено ли|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +
 +/*
 + ​https://​server.ru/​v2/​profile/​settings_push
 +*/
 +
 +//​Ответ
 +
 +[
 +    {
 +        "​descr":​ "​Назначен исп/​отв в заявке",​
 +        "​value":​ "​З_Н",​
 +        "​is_set":​ "​1"​
 +    },
 +    {
 +        "​descr":​ "​Добавлен комментарий к заявке",​
 +        "​value":​ "​З_К",​
 +        "​is_set":​ "​1"​
 +    },
 +    {
 +        "​descr":​ "​Добавлен файл к заявке",​
 +        "​value":​ "​З_Ф",​
 +        "​is_set":​ "​1"​
 +    },
 +    ...
 +]
 +</​code>​
 +
 +==== Изменение данных в профиле ====
 +
 +POST https://​server.ru/​v2/​profile/​update
 +
 +**Тело запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|fcm_token|string|нет|Если вдруг пуш секрет изменился на девайсе или был получен позже|
 +|push_config|string|нет|какие пуши юзеру необходимы|
 +|notify_params|string|нет|типы оповещений пользователя|
 +|notify_count|string|нет|количество непрочитанных оповещений|
 +|start_app|string|нет|выполняется каждый раз 1 раз при запуске АПП чтобы вести статистику использования апп|
 +|voip_token|string|нет|Если вдруг voip_token для sip звонилки изменился на девайсе или был получен позже|
 +|brand_code|string|нет|бренд код заложенный для WL |
 +|countrie_id|number|нет|ид страны |
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|affected_rows|number|да|Количество затронутых изменениями строк в БД|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +//Тело запроса
 +
 +{
 +    "​fcm_token":​ "​NEWTOKEN123",​
 +    "​push_config":​ "​З_Ф:​З_Н:​З_К",​
 +    "​notify_params":​ "​О;​К",​
 +    "​notify_count":​ 15,
 +    "​start_app"​ : "im started!!",​
 +    "​brand_code"​ : "​EASYSOLUTION"​
 +    "​countrie_id"​ : "​1"​
 +}
 +//​Ответ
 +
 +{
 +    "​affected_rows":​ 3
 +}
 +</​code>​
 +
 +
 +
 +===== AEI (НЕ ИСПОЛЬЗОВАТЬ) =====
 +
 +==== Работа с заявками ====
 +POST https://​server.ru/​aei/​request
 +
 +**Тело запроса:​**
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|token|string|да|Токен авторизации|
 +|act|string|да|Тип действия. Может быть '​list',​ '​detail'​ или '​create'​|
 +|req или data|object|да|Объект с параметрами запроса|
 +
 +
 +В зависимости от типа act объект req или data может отличаться
 +
 +Для '​create'​ посылается data
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|hid|number|да|ID дома|
 +|eid|number|да|ID причины обращения|
 +|tid|number|да|ID типа работ|
 +|iid|number|да|ID оповещения|
 +|empid|number|да|ID исполнителя|
 +|fstr|string|да|помещение|
 +|ftype|number|да|тип помещения|
 +|rstr|string|да|описание заявки|
 +|phone|string|да|телефон|
 +|email|string|да|почта|
 +|price|number|да|цена|
 +|paid|number|да|сколько оплачено|
 +|erid|number|да|ext_request_id если заявка создана из интеграции|
 +|dtime|string|да|desired_time желаемое время выполнения|
 +|files|array|да|массив прикрепленных файлов|
 +
 +Для '​list'​ посылается req
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|hid|number|да|ID дома|
 +|fstr|string|да|помещение|
 +|ftype|number|да|тип помещения|
 +|count|number|да|сколько данных выдавать,​ максимум 30|
 +|start|number|да|с какой позиции выдать|
 +
 +Для '​detail'​ посылается req
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|rid|number|да|ID заявки|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//Тело запроса create
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​create",​
 +    "​data":​ {  ​
 +        "​hid":​ 55059,  ​
 +        "​eid"​ : 4122,  ​
 +        "​tid"​ : 23,  ​
 +        "​fstr":​ "​1",  ​
 +        "​ftype":​ 1,  ​
 +        //"​iid":​ 1,
 +        //"​empid":​ 1,
 +        "​rstr":​ "aei request",  ​
 +        "​phone":​ "​9125212573",  ​
 +        "​email":​ null,  ​
 +        "​price":​ 0,  ​
 +        "​paid":​ 0,  ​
 +        "​erid":​ 123,
 +        "​dtime":​ null,  ​
 +        "​files":​ []
 +    }  ​
 +}  ​
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ {
 +        "​rid":​ 1308921,
 +        "​request_type":​ 3
 +    }
 +}
 +</​code>​
 +
 +<code javascript>​
 +//Тело запроса list
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​list",​
 +    "​req":​ {  ​
 +        "​hid":​ 55059,  ​
 +        "​fstr":​ "​1",  ​
 +        "​ftype":​ 1,  ​
 +        "​count"​ : 1,  ​
 +        "​start"​ : 1
 +    }  ​
 +}  ​
 + 
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​rid":​ 1308921,
 +            "​rstr":​ "aei request",​
 +            "​stat":​ "​Зарегистрирована",​
 +            "​ldate":​ "​13.02.2025 17:​05",​
 +            "​crdate":​ "​13.02.2025 17:​05",​
 +            "​cphone":​ "​9125212573"​
 +        }
 +    ]
 +}
 +</​code>​
 +
 +<code javascript>​
 +//Тело запроса detail
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​detail",​
 +    "​req":​ {  ​
 +        "​rid":​ 1308918
 +    }  ​
 +}    ​
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ {
 +        "​rid":​ 1308918,
 +        "​rstr":​ "aei request",​
 +        "​stat":​ "​Зарегистрирована",​
 +        "​ldate":​ "",​
 +        "​date":​ "​13.02.2025 16:​57",​
 +        "​tstr":​ "​Сантехника",​
 +        "​estr":​ "​Неисправность запорной арматуры стояка ХВС в подвале",​
 +        "​resp":​ "​dev",​
 +        "​emp":​ "​ПлановоПлатный сотрудник",​
 +        "​edate":​ "​18.02.2025",​
 +        "​prior":​ "",​
 +        "​ccount":​ 0,
 +        "​price":​ 0,
 +        "​flagpay":​ 1,
 +        "​paid":​ 0,
 +        "​request_type":​ 3,
 +        "​service":​ "​23:​4122",​
 +        "​sid":​ 1,
 +        "​emppos":​ "",​
 +        "​cphone":​ "​9125212573",​
 +        "​category_str":​ "​Неисправность запорной арматуры стояка ХВС в подвале",​
 +        "​service_str":​ "​Сантехника",​
 +        "​prepay_flag":​ "​Н",​
 +        "​what_was_done":​ "",​
 +        "​answers":​ []
 +    }
 +}
 +</​code>​
 +
 +
 +==== Работа с заявками из интеграции пульт дома ====
 +POST https://​server.ru/​aei/​requestPultdoma.ru
 +
 +**Тело запроса:​**
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|token|string|да|Токен авторизации|
 +|act|string|да|Тип действия. Может быть '​listComment',​ '​createComment',​ '​detail'​ или '​payment'​|
 +|req или data|object|да|Объект с параметрами запроса|
 +
 +
 +В зависимости от типа act объект req или data может отличаться
 +
 +Для '​detail'​ посылается data
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|rid|number|да|ID заявки|
 +|phone|string|да|телефон|
 +
 +
 +Для '​listComment'​ посылается req
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|rid|number|да|ID заявки|
 +|count|number|да|сколько данных выдавать,​ максимум 30|
 +|start|number|да|с какой позиции выдать|
 +
 +Для '​createComment'​ посылается data
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|rid|number|да|ID заявки|
 +|phone|string|да|телефон|
 +|cstr|string|да|текст комментария|
 +|files|aray|да|прикрепляемый файл|
 +
 +Для '​payment'​ посылается data
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|rid|number|да|ID заявки|
 +|price|number|да|стоимость|
 +|flagpay|number|да|оплачена или нет 1 или 0|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//Тело запроса detail
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​detail",​
 +    "​req":​ {
 +        "​rid":​ 1308918,
 +        "​phone":​ "​9125212573"​
 +    }
 +
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ {
 +        "​rid":​ 1308918,
 +        "​rstr":​ "aei request",​
 +        "​stat":​ "​Зарегистрирована",​
 +        "​ldate":​ "​13.02.2025 17:​56",​
 +        "​date":​ "​13.02.2025 16:​57",​
 +        "​tstr":​ "​Сантехника",​
 +        "​estr":​ "​Неисправность запорной арматуры стояка ХВС в подвале",​
 +        "​resp":​ "​dev",​
 +        "​emp":​ "​ПлановоПлатный сотрудник",​
 +        "​edate":​ "​18.02.2025",​
 +        "​prior":​ "",​
 +        "​ccount":​ 1
 +    }
 +}
 +</​code>​
 +
 +<code javascript>​
 +//Тело запроса createComment
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​createComment",​
 +    "​data":​ {
 +        "​rid":​ 1308918,
 +        "​phone":​ "​9125212573",​
 +        "​cstr":​ "​текст комментария",​
 +        "​files":​ []
 +    }
 +}   
 + 
 +//​Ответ
 +{
 +    "​ok":​ true
 +}
 +</​code>​
 +
 +<code javascript>​
 +//Тело запроса listComment
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​listComment",​
 +    "​req":​ {
 +        "​rid":​ 1308918,
 +        "​count":​ 1,
 +        "​start":​ 1
 +    }
 +}    ​
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​cstr":​ "​текст комментария",​
 +            "​date":​ "​13.02.2025 17:​57",​
 +            "​type":​ 1,
 +            "​mtype":​ 0
 +        }
 +    ]
 +}
 +</​code>​
 +
 +<code javascript>​
 +//Тело запроса payment
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​payment",​
 +    "​data":​ {
 +        "​rid":​ 1308918,
 +        "​price":​ 1,
 +        "​flagpay":​ 1
 +    }
 +}    ​
 +//​Ответ
 +{
 +    "​ok":​ true
 +}
 +</​code>​
 +
 +
 +
 +==== Работа с оповещениями====
 +POST https://​server.ru/​aei/​oi
 +
 +**Тело запроса:​**
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|token|string|да|Токен авторизации|
 +|act|string|да|Тип действия. Может быть '​list',​ '​detail'​ или '​listAll'​|
 +|req|object|да|Объект с параметрами запроса|
 +
 +
 +Для '​list'​
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|hid|number|да|ID дома|
 +|count|number|да|сколько данных выдавать,​ максимум 30|
 +|start|number|да|с какой позиции выдать|
 +
 +Для '​listAll'​
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|count|number|да|сколько данных выдавать,​ максимум 30|
 +|start|number|да|с какой позиции выдать|
 +
 +Для '​detail'​
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|oiid|number|да|ID оповещения|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//Тело запроса list
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​list",​
 +     "​req"​ : { 
 +        "​hid"​ : 55059,
 +        "​start"​ : 1,
 +        "​count"​ : 1
 +    }
 +
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​oid":​ 140606,
 +            "​stat":​ 0,
 +            "​ostr":​ "​Ббббббббб",​
 +            "​slist":​ "",​
 +            "​tstr":​ "​Прочее",​
 +            "​sdate":​ "​19.07.2024 16:​25",​
 +            "​edate":​ ""​
 +        }
 +    ]
 +}
 +</​code>​
 +
 +<code javascript>​
 +//Тело запроса listAll
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​listAll",​
 +     "​req"​ : { 
 +        "​start"​ : 1,
 +        "​count"​ : 1
 +    }
 +}   
 + 
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​oid":​ 143005,
 +            "​stat":​ 0,
 +            "​ostr":​ "​Блаблабла",​
 +            "​slist":​ "​Холодная вода, Горячая вода",​
 +            "​tstr":​ "​Отключение",​
 +            "​sdate":​ "​23.12.2024 10:​12",​
 +            "​edate":​ "",​
 +            "​hs":​ [
 +                {
 +                    "​addr":​ "​Белинского ул",
 +                    "​nums":​ "​123"​
 +                }
 +            ]
 +        }
 +    ]
 +}
 +</​code>​
 +
 +<code javascript>​
 +//Тело запроса detail
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​detail",​
 +     "​req"​ : { 
 +        "​oiid"​ : 140606
 +    }
 +}    ​
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​oid":​ 143005,
 +            "​stat":​ 0,
 +            "​ostr":​ "​Блаблабла",​
 +            "​slist":​ "​Холодная вода, Горячая вода",​
 +            "​tstr":​ "​Отключение",​
 +            "​sdate":​ "​23.12.2024 10:​12",​
 +            "​edate":​ "",​
 +            "​hs":​ [
 +                {
 +                    "​addr":​ "​Белинского ул",
 +                    "​nums":​ "​123"​
 +                }
 +            ]
 +        }
 +    ]
 +}
 +</​code>​
 +
 +
 +
 +
 +==== Работа со справочниками ====
 +POST https://​server.ru/​aei/​reference
 +
 +**Тело запроса:​**
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|token|string|да|Токен авторизации|
 +|act|string|да|Тип действия. Может быть '​houseList',​ '​flatList',​ '​typeList',​ '​essList',​ '​statusList',​ '​empList',​ '​reopenSubstatusList'​ или '​createFlat'​|
 +|req или data|object|да|Объект с параметрами запроса|
 +
 +
 +Для '​houseList',​ '​typeList',​ '​statusList',​ '​empList'​ и '​reopenSubstatusList'​
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|count|number|да|сколько данных выдавать,​ максимум 30|
 +|start|number|да|с какой позиции выдать|
 +
 +Для '​flatList'​
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|hid|number|да|ID дома|
 +|count|number|да|сколько данных выдавать,​ максимум 30|
 +|start|number|да|с какой позиции выдать|
 +
 +Для '​essList'​
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|tid|number|да|ID типа работ|
 +|count|number|да|сколько данных выдавать,​ максимум 30|
 +|start|number|да|с какой позиции выдать|
 +
 +
 +Для '​createFlat'​ посылается data
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|hid|number|да|ID типа работ|
 +|fstr|string|да|помещение|
 +|ftype|number|да|тип помещения|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//Тело запросов '​houseList',​ '​typeList',​ '​statusList',​ '​empList'​ и '​reopenSubstatusList',​ просто меняем на нужный в поле act
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​houseList",​
 +     "​req"​ : { 
 +        "​start"​ : 1,
 +        "​count"​ : 1
 +    }
 +
 +
 +//​Ответ houseList
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​hid":​ "​54916",​
 +            "​hstr":​ "​Верхняя Пышма г, Александра Козицына ул, дом 1"
 +        }
 +    ]
 +}
 +
 +//​Ответ typeList
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​tid":​ 23,
 +            "​tstr":​ "​Сантехника"​
 +        }
 +    ]
 +}
 +
 +//​Ответ statusList
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​sid":​ 1,
 +            "​sstr":​ "​Зарегистрирована"​
 +        }
 +    ]
 +}
 +
 +//​Ответ empList
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​eid":​ 35373,
 +            "​fio":​ "​Системный пользователь"​
 +        }
 +    ]
 +}
 +
 +//​Ответ reopenSubstatusList
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​ssid":​ 221,
 +            "​ssstr":​ "​работы не выполнены1"​
 +        }
 +    ]
 +}
 +
 +</​code>​
 +
 +<code javascript>​
 +//Тело запроса essList
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​essList",​
 +    "​req"​ : { 
 +        "​tid":​ 21,
 +        "​start"​ : 1,
 +        "​count"​ : 1
 +    }
 +}   
 + 
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​eid":​ 1626,
 +            "​estr":​ "​Составить акт залива"​
 +        }
 +    ]
 +}
 +</​code>​
 +
 +
 +<code javascript>​
 +//Тело запроса flatList
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​flatList",​
 +    "​req"​ : { 
 +        "​hid":​ 54916,
 +        "​start"​ : 1,
 +        "​count"​ : 1
 +    }
 +}  ​
 + 
 +//​Ответ
 +{
 +    "​ok":​ true,
 +    "​data":​ [
 +        {
 +            "​fstr":​ "​офис кв 1",
 +            "​ftype":​ 4
 +        }
 +    ]
 +}
 +</​code>​
 +
 +
 +<code javascript>​
 +//Тело запроса createFlat
 +{  ​
 +    "​token":​ "​reET[{t9IfiL}-6!Zy2%i)noPySw_IVfF2A58D530F82792E08C9FFB0E7F0EE1F",  ​
 +    "​act":​ "​createFlat",​
 +    "​data"​ : { 
 +        "​hid":​ 54916,
 +        "​tid":​ 21,
 +        "​fstr":​ "​офис кв 21",
 +        "​ftype":​ 1
 +    }
 +}   
 + 
 +//​Ответ
 +{
 +    "​ok":​ true
 +}
 +</​code>​
 +
 +
 +
 +
 +
 +==== Список адресов по номеру телефона ====
 +GET https://​server.ru/​aei/​oico/​address/:​phone
 +
 +**Параметры запроса:​**
 +^ Название ^ Тип ^ Обязательно ^ Описание^
 +|phone|string|да|телефон|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Запрос
 +https://​server.ru/​aei/​oico/​address/​3522223173
 +//​Ответ
 +[
 +    items: [
 +        {
 +            "​house_id":​ 202,
 +            "​flat_num":​ "​8",​
 +            "​flat_type":​ 3
 +        }
 +    ]
 +]
 +</​code>​
 +
 +
 +==== Список причин обращений ====
 +GET https://​server.ru/​aei/​oico/​ess
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +//​Ответ
 +[
 +   "​items":​ [
 +        {
 +            "​type_str":​ " ДУ - аренда/​продажа",​
 +            "​ess_str":​ "​Аренда квартир",​
 +            "​ess_code":​ "​361:​4543"​
 +        },
 +        {
 +            "​type_str":​ " ДУ - аренда/​продажа",​
 +            "​ess_str":​ "​Аренда нежилых помещений/​парковочных мест",​
 +            "​ess_code":​ "​361:​4403"​
 +        },
 +        {
 +            "​type_str":​ " ДУ - аренда/​продажа",​
 +            "​ess_str":​ "​Присмотр за квартирой во время отсутствия хозяев",​
 +            "​ess_code":​ "​361:​4503"​
 +        }
 +   ]
 +]
 +</​code>​
 +
 +
 +===== FS API =====
 +
 +==== Отправка файла на сервер FS API ====
 +POST https://​ds24.ru/​fs
 +
 +<code javascript>​
 +
 +// Загрузка фото test.jpg на ds24.ru/fs
 +curl -v -H "​filename:​ test.jpg"​ -X POST --data-binary "​@test.jpg"​ https://​ds24.ru/​fs/​
 +Ответ:
 +{
 +    "​ok":​true,​
 +    "​file":"​https://​ds24.ru/​fs/​static/​2017/​08/​11/​test_OTA4.jpg",​
 +    "​thumbnail":"​https://​ds24.ru/​fs/​static/​2017/​08/​11/​test_OTA4_th.jpg"​
 +}
 +</​code>​
 +
 +===== Тесты =====
 +
 +==== Добавление пуша для отправки пользователю ====
 +GET https://​server.ru/​v2/​test/​push?​message&​object_id&​object_type
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|message|string|да|сообщение для пользователя|
 +|object_id|number|да|код объекта (например номер заявки)|
 +|object_type|string|да|Тип пуша (см типы пушей)|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​test/​push?​message=blablabla&​object_id=123&​object_type=З_Н
 +*/
 +
 +//​Ответ
 +
 +{ 1 }
 +
 +</​code>​
 +
 +===== Чек-листы =====
 +
 +==== Получение списка чек-листов ====
 +GET https://​server.ru/​v2/​checklist?​start&​count&​statuses&​employee_id&​cnt_id&​house_id
 +
 +**Параметры запроса:​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|start|number|да|Позиция,​ с которой получить данные|
 +|count|number|да|количество получаемых данных|
 +|statuses|string|нет|фильтр по статусам. Отправляется список статусов в формате STATUS1:​STATUS2:​STATUS3. Пример:​ "​PENDING:​INWORK"​.\\ Смотреть [[d24:​develop:​v2:​backend:​v2#​статусы_чек-листа|описание статусов чек-листа.]]|
 +|employee_id|number|нет|фильтр по исполнителю|
 +|cnt_id|number|нет|идентификатор юр. лица|
 +|house_id|number|нет|фильтр по дому|
 +|check_id|number|нет|фильтр по идентификатору чек-листа|
 +|date_start|string|нет|дата и время начала в ISO формате|
 +|date_end|string|нет|дата и время конца в ISO формате|
 +
 +**Тип ответа:​** Массив с объектами
 +
 +**Параметры ответа (объектов массива):​**
 +^ Название ​ ^ Тип ​   ^ Обязательно ^ Описание^
 +|check_id|number|да|Идентификатор чек-листа|
 +|name|string|да| название чек-листа |
 +|check_on_tz|string|да| дата выполнения чек-листа в ISO формате |
 +|status|string|да| код статуса Смотреть [[d24:​develop:​v2:​backend:​v2#​статусы_чек-листа|описание статусов чек-листа.]] |
 +|days_count|number|да| количество оставшихся дней до выполнения чек-листа|
 +|house_text|string|да|один из домов, отмеченных в чек-листе|
 +|houses_count|number|да|количество домов, отмеченных в чек-листе|
 +|username|string|да| исполнитель |
 +|employee_id|number|да|id исполнителя|
 +|count_all|number|да|количество всех чек-листов,​ подходящих под текущий запрос. (для подсчета количества страниц в пагинации)|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist
 +*/
 +
 +//​Ответ
 +
 +[
 +    {
 +        "​check_id":​ 6849,
 +        "​name":​ "​PAU_чеклист 1",
 +        "​check_on_tz":​ "​2021-10-17T04:​00:​00.000Z",​
 +        "​status":​ "​INWORK",​
 +        "​days_count":​ 2,
 +        "​house_text":​ "​Бурова-Петрова ул, дом 78",
 +        "​houses_count":​ 5,
 +        "​username":​ "​Предеин Анатолий",​
 +        "​employee_id":​ 33,
 +        "​count_all":​ 20
 +    }
 +]
 +
 +</​code>​
 +
 +==== Получение детализации чек-листа ====
 +GET https://​server.ru/​v2/​checklist/:​check_id
 +
 +**Переменные URL:**
 +^Название^тип^обязательно^описание^
 +|check_id|number|да|идентификатор чек-листа,​ для которого нужно получить детализацию|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа:​**
 +^Название^тип^обязательно^описание^
 +| check_id | number | да | Идентификатор чек-листа |
 +| name | string| да | название чек-листа |
 +| note | string| да | описание чек-листа |
 +| check_on_tz | string| да | дата выполнения чек-листа в ISO формате |
 +|status|string|да| код статуса. Смотреть [[d24:​develop:​v2:​backend:​v2#​статусы_чек-листа|описание статусов чек-листа.]]|
 +| username | string| да | исполнитель |
 +| success_count | number | да | количество успешно выполненных работ по чек-листу |
 +| with_violations_count | number | да | количество работ с нарушениями |
 +| all_works_count | number | да | количество всех работ |
 +| requests_count | number | да | количество созданных заявок для работ|
 +|employee_id|number|да|идентификатор исполнителя|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist/​6849
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​check_id":​ 6849,
 +    "​name":​ "​PAU_чеклист 1",
 +    "​note":​ "​описание PAU_чеклист 1",
 +    "​check_on_tz":​ "​2021-10-17T04:​00:​00.000Z",​
 +    "​username":​ "​Предеин Анатолий",​
 +    "​success_count":​ 1,
 +    "​with_violations_count":​ 1,
 +    "​all_works_count":​ 5,
 +    "​requests_count":​ 1,
 +    "​status":​ "​INWORK",​
 +    "​employee_id":​ 33
 +}
 +
 +</​code>​
 +
 +==== Получение списка домов, указанных в чек-листе ====
 +GET https://​server.ru/​v2/​checklist/:​check_id/​house
 +
 +**Переменные URL**
 +^Название^тип^обязательно^описание^
 +|check_id|number|да|идентификатор чек-листа,​ для которого нужно получить дома|
 +
 +**Тип ответа:​** Массив с объектами
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|house_id|number|да|идентификатор дома|
 +|house_text|string|да|адрес дома|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist/​6849/​house
 +*/
 +
 +//​Ответ
 +
 +[
 +    {
 +        "​house_id":​ 40783,
 +        "​house_text":​ "​Бурова-Петрова ул, 78"
 +    },
 +    ...
 +]
 +</​code>​
 +
 +==== Получение списка работ, указанных в чек-листе ====
 +GET https://​server.ru/​v2/​checklist/:​check_id/​work
 +
 +**Переменные URL**
 +^Название^тип^обязательно^описание^
 +|check_id|number|да|идентификатор чек-листа,​ для которого нужно получить список работ|
 +
 +**Тип ответа:​** Массив с объектами
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|check_work_id|number|да|идентификатор работы|
 +|name|string|да|название работы|
 +|work_group_name|string|нет| название группы работ (если работа находится в группе)|
 +|work_group_id|number|нет|идентификатор группы работ (если работа находится в группе) |
 +|check_id|number|да|идентификатор чек-листа,​ к которому привязана работа|
 +|status|number|да| код статуса работы. [[d24:​develop:​v2:​backend:​v2#​статусы_работ_чек-листа|описание статусов работ чеклиста]]|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist/​6849/​work
 +*/
 +
 +//​Ответ
 +
 +[
 +    {
 +        "​check_work_id":​ 23365,
 +        "​name":​ "​PAU_работа 1",
 +        "​work_group_name":​ "​PAU_группа 1",
 +        "​work_group_id":​ 101,
 +        "​check_id":​ 6849,
 +        "​status":​ 0
 +    },
 +    {
 +        "​check_work_id":​ 23366,
 +        "​name":​ "​PAU_работа 2",
 +        "​work_group_name":​ "​PAU_группа 1",
 +        "​work_group_id":​ 101,
 +        "​check_id":​ 6849,
 +        "​status":​ 1
 +    },
 +    {
 +        "​check_work_id":​ 23367,
 +        "​name":​ "​PAU_работы 3",
 +        "​work_group_name":​ null,
 +        "​work_group_id":​ null,
 +        "​check_id":​ 6849,
 +        "​status":​ 0
 +    },
 +    {
 +        "​check_work_id":​ 23368,
 +        "​name":​ "​PAU_работа 4",
 +        "​work_group_name":​ null,
 +        "​work_group_id":​ null,
 +        "​check_id":​ 6849,
 +        "​status":​ 2
 +    }
 +]
 +</​code>​
 +
 +==== Получение детализации работы из чек-листа ====
 +GET https://​server.ru/​v2/​checklist/​work/:​check_work_id
 +
 +**Переменные URL**
 +^Название^тип^обязательно^описание^
 +|check_work_id|number|да|идентификатор работы,​ для которой нужно получить детализацию|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|check_work_id|number|да|идентификатор работы|
 +|name|string|да|название работы|
 +|note|string|да|описание работы|
 +|check_id|number|да|идентификатор чек-листа,​ к которому привязана работа|
 +|check_status|string|да|Код статуса чеклиста,​ к которому привязана работа. [[d24:​develop:​v2:​backend:​v2#​статусы_чек-листа|Описание статусов чеклиста]]|
 +|status|number|да| код статуса работы. [[d24:​develop:​v2:​backend:​v2#​статусы_работ_чек-листа|Описание статуса работ чеклиста]] |
 +|criteria|string|нет| критерии. Текст в виде списка(с символами переноса строки) |
 +|ess_id|number|да| ИД причина обращения для создания заявки |
 +|ess|string|да| Текст причины обращения для создания заявки |
 +|type_id|number|да|идентификатор типа работы|
 +|required_action_list |string|нет|Перечень действий необходимых при выполнении работы|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist/​work/​23365
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​check_work_id":​ 23365,
 +    "​check_id":​ 6849,
 +    "​check_status":​ "​INWORK",​
 +    "​status":​ 0,
 +    "​name":​ "​PAU_работа 1",
 +    "​note":​ "​описание работы 1",
 +    "​criteria":​ "- все ли хорошо 1\r\n- все ли хорошо 2\r\n?",​
 +    "​ess_id"​ : 123,
 +    "​ess"​ : "​Какая то причина обращения для создания заявки",​
 +    "​type_id:​ 24,
 +    "​required_action_list"​ : "​Y_P:​Y_R:​I_P:​I_C:​I_R"​
 +}
 +
 +правила и особенности формирования "​required_action_list"​
 +Y_ / N_ / I_ - это действия (Есть нарушения / Нет нарушений / Невозможно выполонить)
 +P / C / R - это необходимая сущность (Фото/ Коммент / Заявка)
 +Как пример Y_P:​Y_R:​I_P:​I_C:​I_R - если есть нарушения надо фото и заявку,​ если невозможно выполнить то и фото и коммент и заявку
 +
 +</​code>​
 +
 +==== Получение новостной ленты для работы из чек-листа ====
 +GET https://​server.ru/​v2/​checklist/​work/:​check_work_id/​feed
 +
 +**Переменные URL**
 +^Название^тип^обязательно^описание^
 +|check_work_id|number|да|идентификатор работы,​ для которой нужно получить детализацию|
 +
 +**Тип ответа:​** Массив с объектами
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|check_work_id|number|да|идентификатор работы|
 +|type|number|да|тип элемента ленты|
 +|note|string|да|комментарий или URL изображения в зависимости от типа|
 +|created_on_tz|string|да| когда создан |
 +|created_by|string|да| кем создан |
 +|flag_webhook|string|да|Y или N|
 +
 +**Описание типов элемента ленты (type):**
 +^тип^описание^
 +|0|Комментарий|
 +|3|Изображение|
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist/​work/​23410/​feed
 +*/
 +
 +//​Ответ
 +
 +[
 +    {
 +        "​note":​ "​https://​ds24.ru/​fs/​static/​2021/​11/​25/​996780_img.jpg",​
 +        "​type":​ 3,
 +        "​check_work_id":​ 23410,
 +        "​created_on_tz":​ "​2021-12-06T13:​08:​11.142Z",​
 +        "​created_by":​ "​dev",​
 +        "​flag_webhook":​ "​N"​
 +    },
 +    {
 +        "​note":​ "​Были нарушения",​
 +        "​type":​ 0,
 +        "​check_work_id":​ 23410,
 +        "​created_on_tz":​ "​2021-12-06T13:​00:​55.673Z",​
 +        "​created_by":​ "​dev",​
 +        "​flag_webhook":​ "​N"​
 +    },
 +    ...
 +]
 +</​code>​
 +
 +==== Начать работу с чек-листом ====
 +POST https://​server.ru/​v2/​checklist/:​check_id/​start
 +
 +**Переменные URL**
 +^Название^тип^обязательно^описание^
 +|check_id|number|да|идентификатор чек-листа|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|affected_rows|number|да|количество затронутых изменениями строк|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist/​6882/​start
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​affected_rows":​ 1
 +}
 +</​code>​
 +
 +==== Завершение чек-листа ====
 +POST https://​server.ru/​v2/​checklist/:​check_id/​finish
 +
 +**Переменные URL**
 +^Название^тип^обязательно^описание^
 +|check_id|number|да|идентификатор чек-листа|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|affected_rows|number|да|количество затронутых изменениями строк|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist/​6882/​finish
 +*/
 +
 +//​Ответ
 +
 +{
 +    "​affected_rows":​ 1
 +}
 +</​code>​
 +
 +
 +==== Изменение статуса работы,​ указанной в чек-листе ​ ====
 +POST https://​server.ru/​v2/​checklist/​work/:​check_work_id
 +
 +**Переменные URL**
 +^Название^тип^обязательно^описание^
 +|check_work_id|number|да|идентификатор работы из чек-листа|
 +
 +**Тело запроса:​**
 +^Название^тип^обязательно^описание^
 +|status|number|да|код статуса,​ на который произойдет замена текущего статуса|
 +|comment|string|нет|комментарий (если нужно передать комментарий вместе со статусом)|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|affected_rows|number|да|количество затронутых изменениями строк|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist/​work/​23410
 +*/
 +
 +//тело запроса
 +
 +{
 +    "​status":​ 3,
 +    "​comment":​ "​тест изменения статуса с комментарием"​
 +}
 +
 +//​Ответ
 +
 +{
 +    "​affected_rows":​ 2
 +}
 +</​code>​
 +
 +
 +==== Добавление комментария или изображения в новостную ленту работы ​ ====
 +POST https://​server.ru/​v2/​checklist/​work/:​check_work_id/​feed
 +
 +**Переменные URL**
 +^Название^тип^обязательно^описание^
 +|check_work_id|number|да|идентификатор работы из чек-листа|
 +
 +**Тело запроса:​**
 +^Название^тип^обязательно^описание^
 +|image_name|string|нет|Название изображения (если нужно сохранить изображение. Передается только вместе с image_url)|
 +|image_url|string|нет|URL изображения (если нужно сохранить изображение. Передается только вместе с image_name)|
 +|comment|string|нет|комментарий (если нужно сохранить комментарий)|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|affected_rows|number|да|количество затронутых изменениями строк|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​checklist/​work/​23410/​feed
 +*/
 +
 +//тело запроса
 +
 +{
 +    "​comment":​ null,   // если поле null, то можно не указывать его в теле запроса
 +    "​image_name":​ "​some_test.jpg",​
 +    "​image_url":​ "​https://​ds24.ru/​fs/​static/​2017/​08/​14/​some_test.jpg"​
 +}
 +
 +//​Ответ
 +
 +{
 +    "​affected_rows":​ 1
 +}
 +</​code>​
 +
 +
 +
 +===== Сохраненные настройки фильтров =====
 +
 +==== создание настроек фильтров ====
 +POST https://​server.ru/​v2/​request_filter
 +
 +**Тело запроса:​**
 +^Название^тип^обязательно^описание^
 +|cnt_id|number|нет|id Организации |
 +|note|string|да|Описание настройки фильтров|
 +|filter_data|string|да|Настройки фильтров в виде строки в формате JSON|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|filter_id|number|да| id сохраненных настроек|
 +|cnt_id|number|нет|id организации|
 +|employee_id|number|да|id сотрудника|
 +|note|string|да|описание настроек фильтра|
 +|filter_data|string|да|Данные настроек фильтра в виде строки в формате JSON. см пример|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​https://​server.ru/​v2/​request_filter
 +*/
 +
 +//тело запроса
 +
 +{
 +    cnt_id: 10401,
 +    filter_data:​ "​{\"​period_exec\":​-1,​\"​street\":​\"​Агатовая ул\",​\"​city\":​\"​all\",​\"​is_only_my\":​0,​\"​period\":​\"​all\",​\"​custom_order\":​\"​create\",​\"​group_obj_id\":​\"​notSel\",​\"​resp_ids\":​[],​\"​emp_ids\":​ [],​\"​rtype_ids\":​[],​\"​status_ids\":​[],​\"​type_ids\":​[],​\"​ess_ids\":​[],​\"​tag_ids\":​[],​\"​house_ids\":​[],​\"​flat_ids\": ​
 +[],​\"​sort\":​\"​D\",​\"​search_phone\":​\"​\",​\"​keywords\":​\"​\",​\"​request_id\":​\"​\",​\"​add_type\":​\"​notSel\",​\"​add_less_than\":​0,​\"​add_more_than\":​0,​\"​add_more_less_select\":​\"​more\"​}",​
 +    note: "​Тестовый фильтр"​
 +}
 +
 +//​Ответ
 +{
 +    "​filter_id":​ 13261,
 +    "​cnt_id":​ 10401,
 +    "​note":​ "​Тестовый фильтр",​
 +    "​filter_data":​ "​{\"​period_exec\":​-1,​\"​street\":​\"​Агатовая ул\",​\"​city\":​\"​all\",​\"​is_only_my\":​0,​\"​period\":​\"​all\",​\"​custom_order\":​\"​create\",​\"​group_obj_id\":​\"​notSel\",​\"​resp_ids\":​[],​\"​emp_ids\":​[],​\"​rtype_ids\":​[],​\"​status_ids\":​[],​\"​type_ids\":​[],​\"​ess_ids\":​[],​\"​tag_ids\":​[],​\"​house_ids\":​[],​\"​flat_ids\":​[],​\"​sort\":​\"​D\",​\"​search_phone\":​\"​\",​\"​keywords\":​\"​\",​\"​request_id\":​\"​\",​\"​add_type\":​\"​notSel\",​\"​add_less_than\":​0,​\"​add_more_than\":​0,​\"​add_more_less_select\":​\"​more\"​}",​
 +    "​employee_id":​ 127853
 +}
 +</​code>​
 +
 +==== Обновление настроек фильтров ====
 +PUT https://​server.ru/​v2/​request_filter/:​filter_id
 +
 +**Тело запроса:​**
 +^Название^тип^обязательно^описание^
 +|note|string|да|Описание настройки фильтров|
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|filter_id|number|да| id сохраненных настроек|
 +|note|string|да|описание настроек фильтра|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + PUT https://​server.ru/​v2/​request_filter/​13261
 +*/
 +
 +//тело запроса
 +
 +{
 +    note: "​Тестовый фильтр"​
 +}
 +
 +//​Ответ
 +{
 +    "​filter_id":​ 13261,
 +    "​note":​ "​Тестовый фильтр",​
 +}
 +</​code>​
 +
 +==== Удаление настроек фильтров ====
 +DELETE https://​server.ru/​v2/​request_filter/:​filter_id
 +
 +**Тип ответа:​** Объект
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|filter_id|number|да| id удаленных настроек|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + ​DELETE https://​server.ru/​v2/​request_filter/​13261
 +*/
 +
 +//​Ответ
 +{
 +    "​filter_id":​ 13261
 +}
 +</​code>​
 +
 +
 +==== получение настроек фильтров ====
 +GET https://​server.ru/​v2/​request_filter?​cnt_id=value
 +
 +**query параметры:​**
 +^Название^тип^обязательно^описание^
 +|cnt_id|number|нет|id Организации |
 +
 +**Тип ответа:​** Массив
 +
 +**Параметры ответа**
 +^Название^тип^обязательно^описание^
 +|filter_id|number|да| id сохраненных настроек|
 +|cnt_id|number|да|id организации|
 +|employee_id|number|да|id сотрудника|
 +|note|string|да|описание настроек фильтра|
 +|filter_data|string|да|Данные настроек фильтра в виде строки в формате JSON. см пример|
 +
 +
 +**Примеры:​**
 +
 +<code javascript>​
 +
 +// Запрос
 +/*
 + GET https://​server.ru/​v2/​request_filter/​10401
 +*/
 +
 +//​Ответ
 +[
 +    {
 +        "​filter_id":​ 13261,
 +        "​cnt_id":​ 10401,
 +        "​note":​ "​Тестовый фильтр",​
 +        "​employee_id":​ 127853,
 +        "​filter_data":​ "​{\"​period_exec\":​-1,​\"​street\":​\"​Агатовая ул\",​\"​city\":​\"​all\",​\"​is_only_my\":​0,​\"​period\":​\"​all\",​\"​custom_order\":​\"​create\",​\"​group_obj_id\":​\"​notSel\",​\"​resp_ids\":​[],​\"​emp_ids\":​[],​\"​rtype_ids\":​[],​\"​status_ids\":​[],​\"​type_ids\":​[],​\"​ess_ids\":​[],​\"​tag_ids\":​[],​\"​house_ids\":​[],​\"​flat_ids\":​[],​\"​sort\":​\"​D\",​\"​search_phone\":​\"​\",​\"​keywords\":​\"​\",​\"​request_id\":​\"​\",​\"​add_type\":​\"​notSel\",​\"​add_less_than\":​0,​\"​add_more_than\":​0,​\"​add_more_less_select\":​\"​more\"​}"​
 +    }
 +]
 +</​code>​
 +
 +==== описание filter_data ====
 +
 +посмотреть описание полей можно тут: [[d24:​develop:​v2:​backend:​v2#​получение_списка_заявок|]]
 +
 +^название^значение по дефолту
 +|period_exec|-1|
 +|street|"​all"​|
 +|city|"​all"​|
 +|is_only_my ​    |0|
 +|period ​    ​|"​all"​ (обозначает все)|
 +|custom_order ​    ​|"​create"​|
 +|group_obj_id ​    ​|"​notSel"​ (обозначает не выбрано)|
 +|resp_ids ​    |[] (пустой массив)|
 +|emp_ids ​    |[] (пустой массив)|
 +|rtype_ids ​    |[] (пустой массив)|
 +|status_ids ​    |[] (пустой массив)|
 +|type_ids ​    |[] (пустой массив)|
 +|ess_ids ​    |[] (пустой массив)|
 +|tag_ids ​    |[] (пустой массив)|
 +|house_ids ​    |[] (пустой массив)|
 +|flat_ids ​    |[] (пустой массив)|
 +|sort     ​|"​D"​|
 +|search_phone ​    ​|""​ (пустая строка)|
 +|keywords ​    ​|""​(пустая строка)|
 +|request_id ​    ​|""​(пустая строка)|
 +|add_type ​    ​|"​notSel"​ (обозначает не выбрано)|
 +|add_less_than ​    |0|
 +|add_more_than ​    |0|
 +|add_more_less_select ​    ​|"​more"​|
 +
 +**нужно добавить is_favorites в disp_front**