Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/04/21 14:13
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Artem1 +XWiki.Gadmin - Tags
-
... ... @@ -1,0 +1,1 @@ 1 +Public API|API - Content
-
... ... @@ -1,50 +1,97 @@ 1 1 (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %) 2 -== Описание ГЛОНАССSoft Public API 3.0 == 2 +((( 3 +(% class="box warningmessage" %) 4 +((( 5 + 3 3 4 -== == 5 5 6 - (% class="box" style="text-align: center;" %)7 -( ((8 - (%style="color:#000000;font-size:18.6667px"%)**Действующиеограничения**8 + 9 +(% class="mark" %)##Для обеспечения бесперебойной работы команд и серверного оборудования ГЛОНАССSoft убедительно 10 +просим вас соблюдать несколько простых правил при использовании API-команд:## 9 9 ))) 10 10 11 -(% style="color:#000000" %)−(%%) Между запросами должна быть пауза в 1 секунду (превышение отвергается системой с уведомлением о превышении частоты запросов). 13 +* Формировать не более 3 отчётов одновременно. 14 +* Ограничить количество активных сессий одного пользователя с одного IP-адреса до 50. 12 12 13 - (%style="color:#000000" %)−(%%) Для работысо всемиметодамиAPI необходимов заголовокдобавлятьX-Auth (токенавторизации,получаемыйметодом auth/login).16 +В случае нарушения этих правил, ГЛОНАССSoft оставляет за собой право принудительно остановить выполнение запросов с определенных IP адресов. 14 14 18 + 19 +**Содержание страницы:** 20 +))) 21 + 22 +{{toc/}} 23 + 24 + 25 += (% style="color:#000000; font-size:16px" %)**Действующие ограничения**(%%) = 26 + 27 +(% style="color:#000000" %)−(%%) **Между запросами должна быть пауза в 1 секунду** (превышение отвергается системой с уведомлением о превышении частоты запросов). 28 + 29 +(% style="color:#000000" %)−(%%) Для работы со всеми методами API необходимо в заголовок добавлять __**X-Auth**__ (токен авторизации, получаемый методом __**auth/login**__). 30 + 15 15 Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de. 16 - 17 17 18 -(% class="box" style="text-align: center;" %) 33 +(% style="color:#000000" %)− (%%)При **редактировании** любой записи (пользователь, объект и т.д) необходимо передавать все параметры записи в теле запроса! Те параметры, значения которых не будут переданы - будут стерты! 34 + 35 + 36 +(% style="color:#000000; font-size:16px" %)**Рекомендации** 37 + 38 +- Для запросов по API рекомендуется наделить пользователя ролью **Администратора партнера**, в противном случае при выполнении некоторых запросов у него не будет хватать прав (чаще всего сталкиваются с отсутствием прав при запросах сообщений от терминала за период). 39 + 40 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Авторизация**(%%) = 41 + 42 +(% class="box warningmessage" id="H41043244243E44043843743044643844F" %) 19 19 ((( 20 -(% style="color:#000000; font-size:14pt" %)**Раздел Авторизация** 44 +(% style="color:#000000; font-size:16px" %)**Авторизация**(%%) 45 +(% style="color:#000000; font-size:16px" %)Адрес сервера всегда следует указывать именно тот, по которому происходит вход в СМТ (https:~/~/hosting.glonasssoft.ru/ , [[https:~~/~~/regions.glonasssoft.ru/>>https://regions.glonasssoft.ru/]] или другие) 21 21 ))) 22 22 23 -(% class="box infomessage" %)48 +(% class="box successmessage" %) 24 24 ((( 25 - style="color:#000000; line-height:100%" %)**Авторизация **(% style="color:#000000" %)**— **(% lang="en-US" %)**GET50 +(% lang="en-US" %)**POST /api/v3/auth/login** 26 26 ))) 27 27 28 -(% style="color:#000000" %) 53 +(% style="color:#000000" %)Метод позволяет получить токен авторизации, который необходимо добавлять в заголовок для работы со всеми методами API. В параметрах метода передается имя пользователя и пароль. 29 29 30 -(% style="color:#000000" %)Метод запроса: ** GET**55 +(% style="color:#000000" %)Метод запроса: **POST** 31 31 32 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/auth/login ?username=demo&password=demo>>url:https://hosting.glonasssoft.ru/api/v3/auth/login?username=demo&password=demo]]57 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/auth/login>>https://hosting.glonasssoft.ru/api/v3/auth/login]] 33 33 34 34 (% style="color:#000000" %)В случае успешного выполнения метода, поле «AuthId» содержит токен авторизации «X-Auth». 35 35 61 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 62 + 63 +(% style="color:#000000" %){ 64 + "login": "testuser", 65 + "password": "testuser" 66 +} 67 + 68 +(% style="color:#000000" %)**Ответ:** 69 + 36 36 (% lang="en-US" %) 37 -(% style="color:#000000" %)**Ответ: [ { «AuthId»: «», //токен авторизации «User»: «», // имя пользователя }, … ]** 71 +(% style="color:#000000" %){ 72 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 73 + "User": "testuser" , ~/~/ имя пользователя(%%) 74 +} 38 38 39 39 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. 40 40 78 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 79 +|(% style="width:215px" %)(% style="color:#000000" %)login|(% style="width:861px" %)Логин пользователя 80 +|(% style="width:215px" %)(% style="color:#000000" %)password|(% style="width:861px" %)Пароль пользователя 81 +|(% style="width:215px" %)(% style="color:#000000" %)AuthId|(% style="width:861px" %)Токен авторизации 82 +|(% style="width:215px" %)(% style="color:#000000" %)User|(% style="width:861px" %)Логин пользователя 41 41 84 +(% class="wikigeneratedid" %) 85 +Также имеется возможность сквозной (/бесшовной) авторизации. Для этого к ссылке ( [[https:~~/~~/hosting.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]] / [[https:~~/~~/regions.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]]) добавьте токен авторизации - {AuthId}, чтобы попасть сразу в клиента ([[https:~~/~~/hosting.glonasssoft.ru/login?authId={AUTH_ID}>>https://hosting.glonasssoft.ru/login?authId={AUTH_ID}]]) 86 + 87 +== (% style="color:#000000; font-size:16px" %)**Проверка авторизации**(%%) == 88 + 42 42 (% class="box infomessage" %) 43 43 ((( 44 -(% style="color:#000000; line-height:100%" %)**Проверка авторизации **(% style="color:#000000" %)**— **(% lang="en-US" %)**GET /api/v3/auth/check**91 +(% lang="en-US" %)**GET /api/v3/auth/check** 45 45 ))) 46 46 47 -(% style="color:#000000" %) (обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**).94 +(% style="color:#000000" %)Метод позволяет проверить статус авторизации. Метод позволяет проверить активен токен авторизации или нет. 48 48 49 49 (% style="color:#000000" %)Метод запроса: **GET** 50 50 ... ... @@ -55,57 +55,306 @@ 55 55 (% lang="en-US" %) 56 56 (% style="color:#000000" %)**Ответ: В случае если сессия активна HTTP ответ «200». В случае если сессия разорвана HTTP ответ «401».** 57 57 105 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Клиенты**(%%) = 58 58 59 -(% class="box" style="text-align: center;" %) 107 +== (% style="color:#000000; font-size:16px" %)**Получение информации о клиенте**(%%) == 108 + 109 +(% class="box infomessage" %) 60 60 ((( 61 - (%style="color:#000000; font-size:14pt" %)**Раздел Клиенты**111 +**GET api/v3/agents/{id}** 62 62 ))) 63 63 114 +Метод позволяет получить параметры выбранного клиента(% style="color:#000000" %): наименование, полное наименование, тип, статус и идентификатор клиента-родителя и т.д. Метод возвращает информацию о клиентах с учетом настроек авторизованного пользователя, указанного в запросе: 115 + 116 +(% style="color:#000000" %)− информация о клиенте предоставляется при наличии права «Просмотр клиентов»; 117 + 118 +(% style="color:#000000" %)Метод запроса: **GET** 119 + 120 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/agents/{id} 121 + 122 +Запрос должен содержать данные параметра "**agentId**" 123 + 124 +(% style="color:#000000" %)Ответ: 125 +{ 126 + "agentId": "", (%%) 127 + "parentId": "", 128 + "parentName": "string", 129 + "name": "string", 130 + "fullName": "string", 131 + "agentInfoType": 0, 132 + "isForeign": true/false, 133 + "district": "string", 134 + "region": "string", 135 + "city": "string", 136 + "inn": "string", 137 + "kpp": "string", 138 + "address": "string", 139 + "addressFact": "string", 140 + "email": "string", 141 + "director": "string", 142 + "bankName": "string", 143 + "bankBIK": "string", 144 + "bankRS": "string", 145 + "bankKS": "string" 146 + } 147 + 148 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 149 +|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 150 +|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 151 +|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 152 +|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 153 +|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 154 +|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 155 +|(% style="width:215px" %)isForeign|(% style="width:861px" %)Иностранный контрагент 156 +|(% style="width:215px" %)district|(% style="width:861px" %)Округ 157 +|(% style="width:215px" %)region|(% style="width:861px" %)Регион 158 +|(% style="width:215px" %)city|(% style="width:861px" %)Город 159 +|(% style="width:215px" %)inn|(% style="width:861px" %)ИНН клиента 160 +|(% style="width:215px" %)kpp|(% style="width:861px" %)КПП клиента 161 +|(% style="width:215px" %)address|(% style="width:861px" %)Юридический адрес 162 +|(% style="width:215px" %)addressFact|(% style="width:861px" %)Фактический адрес 163 +|(% style="width:215px" %)email|(% style="width:861px" %)Электронная почта 164 +|(% style="width:215px" %)director|(% style="width:861px" %)ФИО руководителя 165 +|(% style="width:215px" %)bankName|(% style="width:861px" %)Банк 166 +|(% style="width:215px" %)bankBIK|(% style="width:861px" %)БИК 167 +|(% style="width:215px" %)bankRS|(% style="width:861px" %)Номер счета 168 +|(% style="width:215px" %)bankKS|(% style="width:861px" %)Корр. счет 169 + 170 +== (% style="color:#000000; font-size:16px" %)**Получение параметров дочерних клиентов**(%%) == 171 + 64 64 (% class="box infomessage" %) 65 65 ((( 66 -(% style="color:#000000" %)**Получение основных параметров клиента — **(% lang="en-US" %)**GET **(%%)**/(% lang="en-US" %)api/v3/agents(%%)**174 +(% lang="en-US" %)**POST **(%%)**/(% lang="en-US" %)api/v3/agents/find(%%)** 67 67 ))) 68 68 69 -(% style="color:#000000" %) основныепараметры клиентов: наименование, полное наименование, тип, статус и идентификатор клиента-родителя. Метод возвращает информацию о клиентах с учетом настроек авторизованного пользователя, указанного в запросе(обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**):177 +(% style="color:#000000" %)Метод позволяет получить параметры всех дочерних клиентов: наименование, полное наименование, тип, статус и идентификатор клиента-родителя и т.д. Метод возвращает информацию о клиентах с учетом настроек авторизованного пользователя, указанного в запросе: 70 70 71 71 (% style="color:#000000" %)− информация о клиентах предоставляется при наличии права «Просмотр клиентов»; 72 72 73 73 (% style="color:#000000" %)− возвращается информация о клиенте, которому принадлежит авторизованный пользователь, и его дочерних клиентах; 74 74 75 -(% style="color:#000000" %)− информация о клиенте типа «Партнер» и его подклиентов возвращается при наличии права «Доступ к партнёрским клиентам».183 +(% style="color:#000000" %)− информация о клиенте типа «Партнер» и его клиентов возвращается при наличии права «__**Доступ к партнёрским клиентам**__». 76 76 77 -(% style="color:#000000" %)Метод запроса: ** GET**185 +(% style="color:#000000" %)Метод запроса: **POST** 78 78 79 -(% style="color:#000000" %)URL запроса: (%%) [[https:~~/~~/hosting.glonasssoft.ru/api/v3/agents?parentId=>>url:https://hosting.glonasssoft.ru/api/v3/agents?parentId=]](% style="color:#000000" %)<parentId>187 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/agents/find 80 80 81 -(% style="color:#000000" %)Параметр запроса: <parentId> - идентификатор клиента-родителя (опционально)189 +(% style="color:#000000" %)Параметр запроса: 82 82 83 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 191 +(% style="color:#000000" %){ 192 + "parentId": "string" 193 +} 84 84 85 -(% style="color:#000000" %)Ответ: [ { 86 - "agentId": "", ~/~/ идентификатор клиента 87 - "parentId": "", ~/~/ идентификатор клиента-родителя 88 - "name": "", ~/~/ наименование клиента 89 - "fullName": "", ~/~/ полное наименование клиента 90 - "agentInfoType": "", ~/~/ тип клиента1 91 - "status": "", ~/~/ статус клиента 92 - }, … ] 195 +(% style="color:#000000" %)Ответ: 93 93 197 +{ 198 + "agentId": "",(% style="color:#000000" %) (%%) 199 + "parentId": "", 200 + "name": "string", 201 + "fullName": "string", 202 + "agentInfoType": 0, 203 +(% style="color:#000000" %) "status": "", 204 +} 94 94 95 -(% style="color:#000000" %)**Примечание:** возможные значение параметра agentInfoType: (% lang="en-US" %)[(% style="color:#000000; font-family:Liberation Serif,serif; font-size:12pt; font-style:normal; font-variant:normal; font-weight:normal" %)0 – Клиент, 1 – Партнер, 2 – Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - договор(% style="color:#000000" %)] 96 96 207 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 208 +|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 209 +|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 210 +|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 211 +|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 212 +|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 213 +|(% style="width:215px" %)(% style="color:#000000" %)status|(% style="width:861px" %)Статус клиента, 0 - заблокирован, 1 - Активен 97 97 98 -(% class="box" style="text-align: center;" %) 215 +== (% style="color:#000000; font-size:16px" %)**Добавление клиента**(%%) == 216 + 217 +(% class="box successmessage" %) 99 99 ((( 100 - (%style="color:#000000; font-size:14pt"%)**Раздел Пользователи**219 +**POST /api/v3/agents ** 101 101 ))) 102 102 222 +Метод позволяет добавить клиента, указанного в запросе. 223 + 224 +Метод запроса: **POST** 225 + 226 +URL запроса: [[https:~~/~~/hosting.glonasssoft.ru/api/v3/agents>>https://hosting.glonasssoft.ru/api/v3/agents]] 227 + 228 +В заголовках запроса: X-Auth: Токен авторизации 229 + 230 +Параметры в теле запроса (JSON): 231 + 232 +{ 233 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 234 + "name": "string", ~/~/ имя 235 + "fullName": "string", ~/~/ полное наименование 236 + "agentInfoType": 0, (% style="color:#000000" %)~/~/ тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор)(%%) 237 + "isForeign": true, ~/~/ иностранный контрагент 238 + "district": "string", ~/~/ округ 239 + "region": "string", ~/~/ регион 240 + "city": "string", ~/~/ город 241 + "inn": "string", ~/~/ ИНН 242 + "kpp": "string", ~/~/ КПП 243 + "address": "string", ~/~/ юридический адрес 244 + "addressFact": "string", ~/~/ фактический адрес 245 + "email": "string", ~/~/ email 246 + "director": "string", ~/~/ ФИО руководителя 247 + "bankName": "string", ~/~/ банк 248 + "bankBIK": "string", ~/~/ БИК 249 + "bankRS": "string", ~/~/ номер счёта 250 + "bankKS": "string" ~/~/ корр. счёт 251 +} 252 + 253 +Ответ: 254 + 255 +{ 256 + "agentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента 257 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 258 + "name": "string", ~/~/ имя 259 + "fullName": "string", ~/~/ полное наименование 260 + "agentInfoType": 0, (% style="color:#000000" %)~/~/ тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор)(%%) 261 + "isForeign": true, ~/~/ иностранный контрагент 262 + "district": "string", ~/~/ округ 263 + "region": "string", ~/~/ регион 264 + "city": "string", ~/~/ город 265 + "inn": "string", ~/~/ ИНН 266 + "kpp": "string", ~/~/ КПП 267 + "address": "string", ~/~/ юридический адрес 268 + "addressFact": "string", ~/~/ фактический адрес 269 + "email": "string", ~/~/ email 270 + "director": "string", ~/~/ ФИО руководителя 271 + "bankName": "string", ~/~/ банк 272 + "bankBIK": "string", ~/~/ БИК 273 + "bankRS": "string", ~/~/ номер счёта 274 + "bankKS": "string" ~/~/ корр. счёт 275 +} 276 + 277 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 278 +|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 279 +|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 280 +|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 281 +|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 282 +|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 283 +|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 284 +|(% style="width:215px" %)isForeign|(% style="width:861px" %)Иностранный контрагент 285 +|(% style="width:215px" %)district|(% style="width:861px" %)Округ 286 +|(% style="width:215px" %)region|(% style="width:861px" %)Регион 287 +|(% style="width:215px" %)city|(% style="width:861px" %)Город 288 +|(% style="width:215px" %)inn|(% style="width:861px" %)ИНН клиента 289 +|(% style="width:215px" %)kpp|(% style="width:861px" %)КПП клиента 290 +|(% style="width:215px" %)address|(% style="width:861px" %)Юридический адрес 291 +|(% style="width:215px" %)addressFact|(% style="width:861px" %)Фактический адрес 292 +|(% style="width:215px" %)email|(% style="width:861px" %)Электронная почта 293 +|(% style="width:215px" %)director|(% style="width:861px" %)ФИО руководителя 294 +|(% style="width:215px" %)bankName|(% style="width:861px" %)Банк 295 +|(% style="width:215px" %)bankBIK|(% style="width:861px" %)БИК 296 +|(% style="width:215px" %)bankRS|(% style="width:861px" %)Номер счета 297 +|(% style="width:215px" %)bankKS|(% style="width:861px" %)Корр. счет 298 + 299 +== (% style="color:#000000; font-size:16px" %)**Редактирование клиента**(%%) == 300 + 301 +(% class="box warningmessage" %) 302 +((( 303 +**PUT /api/v3/agents** 304 +))) 305 + 306 +Метод позволяет отредактировать клиента, указанного в запросе. 307 + 308 +Метод запроса: **PUT** 309 + 310 +URL запроса: [[https:~~/~~/hosting.glonasssoft.ru/api/v3/agents>>https://hosting.glonasssoft.ru/api/v3/agents]] 311 + 312 +В заголовках запроса: X-Auth: Токен авторизации 313 + 314 +Параметры в теле запроса (JSON): 315 + 316 +{ 317 + "agentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента 318 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 319 + "name": "string", ~/~/ имя 320 + "fullName": "string", ~/~/ полное наименование 321 + "agentInfoType": 0, (% style="color:#000000" %)~/~/ тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор)(%%) 322 + "isForeign": true, ~/~/ иностранный контрагент 323 + "district": "string", ~/~/ округ 324 + "region": "string", ~/~/ регион 325 + "city": "string", ~/~/ город 326 + "inn": "string", ~/~/ ИНН 327 + "kpp": "string", ~/~/ КПП 328 + "address": "string", ~/~/ юридический адрес 329 + "addressFact": "string", ~/~/ фактический адрес 330 + "email": "string", ~/~/ email 331 + "director": "string", ~/~/ ФИО руководителя 332 + "bankName": "string", ~/~/ банк 333 + "bankBIK": "string", ~/~/ БИК 334 + "bankRS": "string", ~/~/ номер счёта 335 + "bankKS": "string" ~/~/ корр. счёт 336 +} 337 + 338 +Ответ: 339 + 340 +{ 341 + "agentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента 342 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 343 + "name": "string", ~/~/ имя 344 + "fullName": "string", ~/~/ полное наименование 345 + "isForeign": true, ~/~/ иностранный контрагент 346 + "district": "string", ~/~/ округ 347 + "region": "string", ~/~/ регион 348 + "city": "string", ~/~/ город 349 + "inn": "string", ~/~/ ИНН 350 + "kpp": "string", ~/~/ КПП 351 + "address": "string", ~/~/ юридический адрес 352 + "addressFact": "string", ~/~/ фактический адрес 353 + "email": "string", ~/~/ email 354 + "director": "string", ~/~/ ФИО руководителя 355 + "bankName": "string", ~/~/ банк 356 + "bankBIK": "string", ~/~/ БИК 357 + "bankRS": "string", ~/~/ номер счёта 358 + "bankKS": "string" ~/~/ корр. счёт 359 +} 360 + 361 +== (% style="color:#000000; font-size:16px" %)**Удаление клиента**(%%) == 362 + 363 +(% class="box errormessage" %) 364 +((( 365 +**DELETE /api/v3/agents/{clientId}** 366 +))) 367 + 368 +Метод позволяет удалить клиента, указанного в строке запроса. 369 + 370 +Метод запроса: **DELETE** 371 + 372 +URL запроса: [[https:~~/~~/hosting.glonasssoft.ru/api/v3/agents/>>https://hosting.glonasssoft.ru/api/v3/agents/]]**{clientId}** 373 + 374 +Параметр запроса: **{clientId}** - Guid пользователя 375 + 376 +В заголовках запроса: X-Auth: Токен авторизации 377 + 378 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 379 + 380 +== (% style="color:#000000; font-size:16px" %)**Смена статуса клиента (активация/блокировка)**(%%) == 381 + 382 +(% class="box warningmessage" %) 383 +((( 384 +**PUT /api/v3/agents/{id}/changeStatus/{status}** 385 +))) 386 + 387 +Метод позволяет изменить статус клиента, указанного в запросе. 388 + 389 +В пути указывается GUID клиента и статус клиента. 390 + 391 +**status **- значение 0 - заблокирован, 1 - активен. 392 + 393 +Ответ: Code 204 394 + 395 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Пользователи**(%%) = 396 + 397 +== (% style="color:#000000; font-size:16px" %)**Добавление пользователя**(%%) == 398 + 103 103 (% class="box successmessage" %) 104 104 ((( 105 -(% style="color:#000000; line-height:100%" %)**Добавление пользователя — **(% lang="en-US" %)**POST /api/v3/users**401 +(% lang="en-US" %)**POST /api/v3/users** 106 106 ))) 107 107 108 -(% style="color:#000000" %) (обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**).404 +(% style="color:#000000" %)Метод позволяет добавить пользователя. Метод позволяет добавить пользователя, указанного в запросе. 109 109 110 110 (% style="color:#000000" %)Метод запроса: **POST** 111 111 ... ... @@ -115,34 +115,53 @@ 115 115 116 116 (% style="color:#000000" %)Параметры в теле запроса (JSON): 117 117 118 -(% style="color:#000000" %){ 119 - "lastName": "", ~/~/ фамилия 414 +(% style="color:#000000" %) 415 +{ 416 + "lastName": "", ~/~/ фамилия 120 120 "firstName": "", ~/~/ имя 121 121 "position": "", ~/~/ должность 122 122 "phone": "", ~/~/ телефон 123 123 "organization": "", ~/~/ организация 124 - "login": "", ~/~/ логин 125 - "password": "", ~/~/ пароль (при добавлении - обязателен, при редактировании, если null - менять пароль не надо) 126 - "email": "", ~/~/ email 127 - "description": "", ~/~/ описание 128 - "isEnabled": "", ~/~/ признак включения 421 + "login": "", ~/~/ логин (обязателен) 422 + "password": "", ~/~/ пароль (обязателен) 423 + "email": "", ~/~/ email (обязателен) 424 + "description": "string", ~/~/ Описание 425 + "isReadOnly": true, ~/~/ Право только на чтение, true - включено, false - отключено 426 + "isDisabledMobile": true, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 427 + "isEnabled": true, ~/~/ Включен, true - включен, false - отключен 129 129 "parentId": "", ~/~/ Guid родительского агента 130 - "leaderId": "", ~/~/ Guid руководителя (null - не задан) 131 - "sessionDuration": "", ~/~/ продолжительность сессии, в минутах (null - по умолчанию, 30 минут) 132 - "doubleAuth": "" , ~/~/ параметры двухфакторной аутентификации 133 - "kind": "", ~/~/ тип аутентификации (None - выключена, Email - по email) 134 - "target": "" , ~/~/ в случае аутентификации по email - email-адрес 135 - "groups": "" , ~/~/ группы пользователя, названия групп 136 - } 429 + "leaderId": "", ~/~/ Guid руководителя (null - не задан) 430 + "sessionDuration": 0, ~/~/ продолжительность сессии, в минутах (null - по умолчанию, 30 минут) 431 + "doubleAuth": 432 + { 433 + "kind": 0, ~/~/ Состояние двухэтапной аутентификации, email - включен, None - отключен 434 + "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 435 + }, 436 + "groups": 437 + [ 438 + "string" ~/~/ группы пользователя, перечисление названия системных ролей 439 + ], 440 + "customGroups": 441 + [ 442 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ группы пользователя, перечисление названия клиентских ролей 443 + ], 444 + "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 445 +} 446 +{ 447 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 448 + "lastName": "string", 449 + "firstName": "string", 450 + "position": "string", 451 + "phone": "string", 452 + "organization": "string", 453 + "login": "string", 454 + "password": "string", 455 + "email": "string", 137 137 138 138 (% style="text-align:left" %) 139 139 (% style="color:#000000; font-weight:normal" %)Ответ: 140 - 141 -(% style="text-align:left" %) 142 -(% style="color:#000000; font-weight:normal" %){ 143 - 144 -(% style="text-align:left" %) 145 -(% style="color:#000000; font-weight:normal" %)"id": "" , ~/~/ ID пользователя 459 +{ 460 + "id": "" , ~/~/ ID пользователя 146 146 "lastName": "" , ~/~/ Фамилия , 147 147 "firstName": "" , ~/~/ Имя 148 148 "position": "" , ~/~/ Должность ... ... @@ -158,50 +158,114 @@ 158 158 "doubleAuth": "" , ~/~/ параметры двухфакторной аутентификации 159 159 "kind": "" , ~/~/ тип аутентификации 160 160 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 161 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 476 + "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 477 +} 162 162 163 -(% style="text-align:left" %) 164 -(% style="color:#000000; font-weight:normal" %)} 165 165 480 +== (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 166 166 167 -(% class="box successmessage" %)482 +(% class="box infomessage" %) 168 168 ((( 169 -(% style="color:#000000; line-height:100%" %)**Получение списка пользователей — **(% lang="en-US" %)**POST /api/v3/users/find**484 +(% lang="en-US" %)**POST /api/v3/users/find** 170 170 ))) 171 171 172 -(% style="color:#000000" %) 487 +(% style="color:#000000" %)Метод позволяет получить основные параметры пользователей: логин, имя, адрес электронной почты, номер телефона, статус, идентификатор клиента-родителя и прочее. 173 173 174 -(% style="color:#000000" %)Метод возвращает информацию о пользователях клиента-родителя авторизованного пользователя и пользователях его дочерних клиентов. Информация о пользователях предоставляется при наличии права **«Просмотр пользователей»**. 489 +(% style="color:#000000" %)Метод возвращает информацию о пользователях клиента-родителя авторизованного пользователя и пользователях его дочерних клиентов. Информация о пользователях предоставляется при наличии права **«__Просмотр пользователей__»**. 175 175 176 176 (% style="color:#000000" %)Метод запроса: **POST** 177 177 178 178 (% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/users/find>>url:https://hosting.glonasssoft.ru/api/v3/users/find]] 179 179 180 -(% style="color:#000000" %)Условия фильтрации объектов задаются в теле запроса. Параметры в теле запроса (JSON): {495 +(% style="color:#000000" %)Условия фильтрации объектов задаются в теле запроса. 181 181 182 -(% class="western" %) 183 -{{{ //"parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", // GUID агента, для которого надо получить данные, null - для текущего агента 184 - //"userId": "11111111-c384-43f8-8562-1c3d79a32303", // ID пользователя, по которому фильтруется, null - неважно 185 - "login": "qqqqqq", // Логин пользователя, по которому фильтруется, null - неважно 186 - //"email": "eee" // Email пользователя, по которому фильтруется, null - неважно}}} 497 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 187 187 499 +(% style="color:#000000" %){(%%) 500 + "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 501 + "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 502 + "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 503 + "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 188 188 (% style="color:#000000" %)} 189 189 190 -(% style="color:#000000" %)Ответ: [ { «id»: «», //идентификатор пользователя «lastName»: «», //фамилия «firstName»: «», //имя «position»: «», //должность «phone»: «», //телефон «parentId»: «», //идентификатор клиента-родителя «parentName»: «», //наименование клиента-родителя «organization»: «», //организация «login»: «», //логин «email»: «», //E-mail506 +(% style="color:#000000" %)Ответ: 191 191 192 -(% class="western" style="margin-bottom:19px" %) 193 -{{{ "sessionDuration":"", // длительность сессии в минутах}}} 508 +(% style="color:#000000" %){ (%%) 509 + "id": "" , ~/~/ идентификатор пользователя 510 + "lastName": "" , ~/~/ фамилия 511 + "firstName": "" , ~/~/ имя 512 + "position": "" , ~/~/ должность 513 + "phone": "" , ~/~/ телефон 514 + "parentId": "" , ~/~/ идентификатор клиента-родителя 515 + "parentName": "" , ~/~/ наименование клиента-родителя 516 + "organization": "" , ~/~/ организация 517 + "login": "" , ~/~/ логин 518 + "email": "" , ~/~/ E-mail 519 + "sessionDuration":"", ~/~/ длительность сессии в минутах 520 + "status": "1", ~/~/ статус пользователя 521 + "lastLogged": "", ~/~/ дата/время последней авторизации 522 +(% style="color:#000000" %)} 194 194 195 -(% lang="en-US" style="text-align:left" %) 196 -(% style="color:#000000" %) **«status»: 1, //статус пользователя «lastLogged»: «» //дата/время последней авторизации }, … ]** 524 +== (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == 197 197 526 +(% class="box infomessage" %) 527 +((( 528 +(% lang="en-US" %)**GET /api/v3/users/{GUID}** 529 +))) 198 198 531 +(% style="color:#000000" %)Метод возвращает подробную информацию о пользователе клиента-родителя авторизованного пользователя или пользователя его дочерних клиентов. Информация о пользователе предоставляется при наличии права **«__Просмотр пользователей__»**. 532 + 533 +(% style="color:#000000" %)Метод запроса: **GET** 534 + 535 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/(% lang="en-US" %)users/{GUID}>>https://hosting.glonasssoft.ru/api/v3/users/{GUID}]] 536 + 537 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 538 + 539 +(% style="color:#000000" %)Ответ: 540 + 541 +((( 542 +((( 543 +{ 544 + "id": "", ~/~/ GUID пользователя 545 + "lastName": "", ~/~/ Фамилия 546 + "firstName": "", ~/~/ Имя 547 + "position": "", ~/~/ Должность 548 + "phone": "", ~/~/ Номер телефона 549 + "parentId": "", ~/~/ GUID клиента, которому принадлежит пользователь 550 + "parentName": "", Наименование клиента, которому принадлежит пользователь 551 + "organization": "", ~/~/ Организация 552 + "login": "", ~/~/ Логин пользователя 553 + "email": "", ~/~/ Адрес электронной почты 554 + "language": , ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 555 + "isReadOnly": , ~/~/ Право только на чтение, true - включено, false - отключено 556 + "description": "", ~/~/ Описание 557 + "isEnabled": , ~/~/ Включен, true - включен, false - отключен 558 + "doubleAuth": 559 + { 560 + "kind": "None", ~/~/ Состояние двухэтапной аутентификации, email - включен, None - отключен 561 + "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 562 + }, 563 + "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 564 + "sessionDuration": 30, ~/~/ Длительность сессии в минутах 565 + "status": 0, ~/~/ Статус пользователя, 0 - новый, 1 - подтвержден, 2 - активен, 3 - уточнить, 4 - блокирован 566 + "lastLogged": "2022-08-22T06:57:51.002129Z", ~/~/ Дата и время последнего входа пользователя 567 + "groups": [], ~/~/ Список ролей пользователя 568 + "customGroups": [], ~/~/ Список клиентских ролей пользователя 569 + "authDevices": [ ], ~/~/ Список авторизованных устройств 570 + "mobileDoubleAuthDevices": [], ~/~/ Список авторизованных мобильных устройств 571 + "pushNotificationsDevices": [] ~/~/ Список мобильных устройств которые были подписаны на мобильные уведомления 572 +} 573 +))) 574 +))) 575 + 576 +== (% style="color:#000000; font-size:16px" %)**Редактирование пользователя**(%%) == 577 + 199 199 (% class="box warningmessage" %) 200 200 ((( 201 -(% style="color:#000000; line-height:100%" %)**Редактирование пользователя — **(% lang="en-US" %)**PUT /api/v3/users**580 +(% lang="en-US" %)**PUT /api/v3/users** 202 202 ))) 203 203 204 -(% style="color:#000000" %) (обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**).583 +(% style="color:#000000" %)Метод позволяет отредактировать пользователя. Метод позволяет отредактировать пользователя, указанного в запросе. 205 205 206 206 (% style="color:#000000" %)Метод запроса: **PUT** 207 207 ... ... @@ -210,98 +210,598 @@ 210 210 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 211 211 212 212 (% lang="en-US" style="text-align:left" %) 213 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): { «id»: «», // ID пользователя «lastName»: «», // фамилия «firstName»: «», // имя «position»: «», // должность «phone»: «», // телефон «organization»: «», // организация «login»: «», // логин «password»: «», // пароль (при добавлении - обязателен, при редактировании, если null - менять пароль не надо) «email»: «», // email «description»: «», // описание «isEnabled»: «», // признак включения «parentId»: «», // Guid родительского агента «leaderId»: «», // Guid руководителя (null - не задан) «sessionDuration»: «», // продолжительность сессии, в минутах (null - по умолчанию, 30 минут) «doubleAuth»: { // параметры двухфакторной аутентификации «kind»: «», // тип аутентификации (None - выключена, Email - по email) «target»: «« // в случае аутентификации по email - email-адрес }, »groups»: [ // группы пользователя «», //названия групп «», «» ] } Ответ: { «id»: «», //ID пользователя «lastName»: «», //Фамилия , «firstName»: «», //Имя «position»: «», //Должность «phone»: «», //Телефон «organization»: «», //Организация «login»: «», //Логин «password»: «», //Пароль «email»: «», //Email «description»: «», //Описание «isEnabled»: «», //Признак включения «parentId»: «», //Guid родительского агента «sessionDuration»: «», //Продолжительность сессии, в минутах «doubleAuth»: { //параметры двухфакторной аутентификации «kind»: «», //тип аутентификации «target»: «» //в случае аутентификации по email - email-адрес }, «groups»: [ // группы пользователя «user» //названия групп ] } //592 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 214 214 594 +(% lang="en-US" style="text-align:left" %) 595 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 596 + "id": "" , ~/~/ ID пользователя 597 + "lastName": "" , ~/~/ фамилия 598 + "firstName": "" , ~/~/ имя 599 + "position": "" , ~/~/ должность 600 + "phone": "" , ~/~/ телефон 601 + "organization": "" , ~/~/ организация 602 + "login": "" , ~/~/ логин (% style="color:#000000" %)(Если null - менять не надо)(%%) 603 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "password": "" , ~/~/ пароль (Если null - менять не надо) 604 + "language": , ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 605 + "isReadOnly": , ~/~/ Право только на чтение, true - включено, false - отключено 606 + "email": "" , ~/~/ email (% style="color:#000000" %)(Если null - менять не надо)(%%) 607 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "description": "" , ~/~/ описание 608 + "isEnabled": "" , ~/~/ признак включения 609 + "parentId": "" , ~/~/ Guid родительского агента 610 + "leaderId": "" , ~/~/ Guid руководителя (null - не задан) 611 + "sessionDuration": "" , ~/~/ продолжительность сессии, в минутах (null - по умолчанию, 30 минут) 612 + "doubleAuth": 613 + { 614 + "kind": "None", ~/~/ Состояние двухэтапной аутентификации, email - включен, None - отключен 615 + "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 616 + }, 617 + "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 618 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 619 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 215 215 621 +(% lang="en-US" style="text-align:left" %) 622 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 623 + 624 +(% lang="en-US" style="text-align:left" %) 625 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 626 + "id": "" , ~/~/ идентификатор пользователя 627 + "lastName": "" , ~/~/ фамилия 628 + "firstName": "" , ~/~/ имя 629 + "position": "" , ~/~/ должность 630 + "phone": "" , ~/~/ телефон 631 + "organization": "" , ~/~/ организация 632 + "login": "" , ~/~/ логин 633 + "password": "" , ~/~/ пароль 634 + "email": "" , ~/~/ email 635 + "description": "" , ~/~/ описание 636 + "isEnabled": "" , ~/~/ признак включения 637 + "parentId": "" , ~/~/ Guid родительского агента 638 + "sessionDuration": "" , ~/~/ продолжительность сессии, в минутах 639 + "doubleAuth": 640 + { 641 + "kind": "None", ~/~/ Состояние двухэтапной аутентификации, email - включен, None - отключен 642 + "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 643 + }, 644 + "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 645 + "target": "" , ~/~/ в случае аутентификации по email - email-адрес 646 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 647 +} 648 + 649 +== (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 650 + 216 216 (% class="box warningmessage" %) 217 217 ((( 218 -(% style="color:#000000" %) **Изменение статуса пользователя**// //**— **(% lang="en-US" %)**PUT /api/v3/users/status/{id}**653 +(% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/users/status/{id}** 219 219 ))) 220 220 221 -(% style="color:#000000" %) . Метод позволяет изменить статус пользователя, указанного в запросе(обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**).656 +(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе. 222 222 223 223 (% style="color:#000000" %)Метод запроса: **PUT** 224 224 225 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/users/status/>>url:https://hosting.glonasssoft.ru/api/v3/users/status/]](% style="color:#000000" %){id} Параметр запроса:660 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/users/status/>>url:https://hosting.glonasssoft.ru/api/v3/users/status/]](% style="color:#000000" %){id} 226 226 227 -(% style="color:#000000" %) {id} - Guid пользователя В заголовках запроса: X-Auth: Токен авторизацииПараметрыв телезапроса(JSON): {«status»~:// «»,//статуспользователя(0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован)662 +(% style="color:#000000" %)Параметр запроса: {__**id**__} - Guid пользователя 228 228 229 -(% class="western" %) 230 -{{{ "description": "", // описание 231 - "data": "" // данные, связанные со сменой статуса}}} 664 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 232 232 666 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 667 + 668 +(% style="color:#000000" %){(%%) 669 + "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 670 + "description": "" , ~/~/ описание 671 + "data": "" , ~/~/ данные, связанные со сменой статуса 233 233 (% style="color:#000000" %)} 234 234 235 235 (% style="text-align:left" %) 236 236 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»** 237 237 677 +== (% style="color:#000000; font-size:16px" %)**Блокировка пользователей**(%%) == 238 238 679 +(% class="box warningmessage" %) 680 +((( 681 +**POST /api/v3/users/disable** 682 +))) 683 + 684 +Метода позволяет выполнить массовую блокировку пользователей(% style="color:#000000" %). 685 + 686 +(% style="color:#000000" %)Метод запроса: (% style="color:#000000; line-height:100%" %)**POST** 687 + 688 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/users/disable>>https://hosting.glonasssoft.ru/api/v3/users/disable]] 689 + 690 +(% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 691 + 692 + [ 693 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 694 + "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 695 + ] 696 + 697 +(% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»** 698 + 699 +== (% style="color:#000000; font-size:16px" %)**Разблокировка пользователей**(%%) == 700 + 701 +(% class="box warningmessage" %) 702 +((( 703 +**POST /api/v3/users/enable** 704 +))) 705 + 706 +Метода позволяет выполнить массовую разблокировку пользователей(% style="color:#000000" %). 707 + 708 +(% style="color:#000000" %)Метод запроса: (% style="color:#000000; line-height:100%" %)**POST** 709 + 710 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/users/enable>>https://hosting.glonasssoft.ru/api/v3/users/enable]] 711 + 712 +(% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 713 + 714 + [ 715 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 716 + "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 717 + ] 718 + 719 +(% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»**(%%) 720 +\\(% style="color:#000000" %)__Для двух, описанных выше, методов если не получилось выполнить включение или отключение некоторых пользователей из переданного списка возвращается ответ - 206 Partial Content__ 721 + 722 +((( 723 +В теле ответа: 724 +{ 725 + "errorMessages": [ 726 + "Agent 0f8c2a8b-4b71-48d0-b780-341053089874 cannot access to object Agents d493fd88-60c8-465d-afad-912f5ac9d719." 727 + ], 728 + "users": [ 729 + "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 730 + ] 731 +} 732 +\\\\"errorMessages" - массив ошибок, из-за которых не выполнилось действие с пользователями. 733 +"users" - массив id пользователей, которых не удалось включить или отключить. 734 +))) 735 + 736 +== (% style="color:#000000; font-size:16px" %)**Удаление пользователя**(%%) == 737 + 239 239 (% class="box errormessage" %) 240 240 ((( 241 -(% style="color:#000000; line-height:100%" %)**Удаление пользователя — **(% lang="en-US" %)**DELETE /api/v3/users/{id}**740 +(% lang="en-US" %)**DELETE /api/v3/users/{id}** 242 242 ))) 243 243 244 -(% style="color:#000000" %) (обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**).743 +(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалить пользователя, указанного в строке запроса. 245 245 246 246 (% style="color:#000000" %)Метод запроса: **DELETE** 247 247 248 248 (% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/users/>>url:https://hosting.glonasssoft.ru/api/v3/users/]](% style="color:#000000" %){id} 249 249 250 -(% style="color:#000000" %)Параметр запроса: {id} - Guid пользователя В заголовках запроса: X-Auth: Токен авторизации749 +(% style="color:#000000" %)Параметр запроса: {**__id__**} - Guid пользователя 251 251 751 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 752 + 252 252 (% style="text-align:left" %) 253 253 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».** 254 254 756 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Модель объекта**(%%) = 255 255 256 -(% class="box" style="text-align: center;" %) 758 +== (% style="color:#000000; font-size:16px" %)**Получение информации о модели объекта**(%%) == 759 + 760 +(% class="box infomessage" %) 257 257 ((( 258 -(% style="color:#000000; font-size:14pt" %)**РазделТранспортные средства**762 +(% lang="en-US" %)**GET /api/v3/models/{Id}** 259 259 ))) 260 260 765 +Метод возвращает полную информацию о модели объекта. 766 + 767 +(% style="color:#000000" %)Метод запроса: **GET** 768 + 769 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/(% lang="en-US" %)v3/models/(% style="color:#000000" %){(%%)ID} 770 + 771 +(% style="color:#000000" %)Параметр запроса: {__**id}**__ - идентификатор модели объекта 772 + 773 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 774 + 775 +(% style="color:#000000" %)Ответ: 776 + 777 +(% style="color:#000000" %){ 778 + "parentName": "string", 779 + "name": "string", 780 + "picture": "string", 781 + "minspeed": 0, 782 + "maxspeed": 0, 783 + "width": 0, 784 + "imbeddedtrailer": true, 785 + "hoppercapacity": 0, 786 + "hopperdischargespeed": 0, 787 + "modelType": 0, 788 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 789 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 790 + "deleted": true 791 +} 792 + 793 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 794 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 795 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 796 +|(% style="width:215px" %)(% style="color:#000000" %)picture|(% style="width:861px" %)Название иконки транспорта 797 +|(% style="width:215px" %)(% style="color:#000000" %)minspeed|(% style="width:861px" %)Минимальная технологическая скорость обработки поля, в км/ч 798 +|(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч 799 +|(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах 800 +|(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат 801 +|(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера 802 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость2 выгрузки из бункера, л/сек 803 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 804 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 805 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 806 +|(% style="width:215px" %)(% style="color:#000000" %)deleted|(% style="width:861px" %)Признак удаления, тип: boolean 807 + 808 +== (% style="color:#000000; font-size:16px" %)**Просмотр списка моделей**(%%) == 809 + 810 +(% class="box successmessage" %) 811 +((( 812 +(% lang="en-US" %)**POST /api/v3/models/find** 813 +))) 814 + 815 +(% style="color:#000000" %)Метод позволяет получить список всех моделей клиента, указанного в запросе. 816 + 817 +(% style="color:#000000" %)Метод запроса: **POST** 818 + 819 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/models/find 820 + 821 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 822 + 823 +(% style="color:#000000" %)Параметры в теле запроса (JSON):{ 824 + 825 +(% style="color:#000000" %) "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 826 +} 827 + 828 +(% style="color:#000000" %)Ответ: 829 + 830 +(% style="color:#000000" %)[ 831 + { 832 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 833 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 834 + "parentName": "string", 835 + "name": "string", 836 + "modelType": 0 837 + } 838 +] 839 + 840 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 841 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 842 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 843 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 844 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 845 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 846 + 847 +== (% style="color:#000000; font-size:16px" %)**Добавление модели**(%%) == 848 + 849 +(% class="box successmessage" %) 850 +((( 851 +(% lang="en-US" %)**POST /api/v3/models** 852 +))) 853 + 854 +(% style="color:#000000" %)Метод позволяет добавить объект, указанный в запросе. 855 + 856 +(% style="color:#000000" %)Метод запроса: **POST** 857 + 858 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/(% lang="en-US" %)models 859 + 860 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 861 + 862 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 863 + 864 +{ 865 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 866 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 867 + "deleted": true, 868 + "extId": "string", 869 + "name": "string", 870 + "picture": "string", 871 + "minspeed": 0, 872 + "maxspeed": 0, 873 + "width": 0, 874 + "imbeddedtrailer": true, 875 + "fueloutlay": 0, 876 + "hoppercapacity": 0, 877 + "hopperdischargespeed": 0, 878 + "modelType": 0 879 +} 880 + 881 +Ответ: 882 + 883 +{ 884 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 885 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 886 + "deleted": true, 887 + "extId": "string", 888 + "name": "string", 889 + "picture": "string", 890 + "minspeed": 0, 891 + "maxspeed": 0, 892 + "width": 0, 893 + "imbeddedtrailer": true, 894 + "hoppercapacity": 0, 895 + "hopperdischargespeed": 0, 896 + "modelType": 0 897 +} 898 + 899 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 900 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 901 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 902 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 903 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 904 +|(% style="width:215px" %)(% style="color:#000000" %)picture|(% style="width:861px" %)Название иконки транспорта 905 +|(% style="width:215px" %)(% style="color:#000000" %)minspeed|(% style="width:861px" %)Минимальная технологическая скорость обработки поля, в км/ч 906 +|(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч 907 +|(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах 908 +|(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат 909 +|(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера 910 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость выгрузки из бункера, л/сек 911 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 912 + 913 +== (% style="color:#000000; font-size:16px" %)**Редактирование модели**(%%) == 914 + 915 +(% class="box warningmessage" %) 916 +((( 917 +(% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models** 918 +))) 919 + 920 +(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе. 921 + 922 +(% style="color:#000000" %)Метод запроса: **PUT** 923 + 924 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/(% lang="en-US" %)api/v3/models 925 + 926 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 927 + 928 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 929 + 930 +{ 931 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 932 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 933 + "deleted": true, 934 + "extId": "string", 935 + "name": "string", 936 + "picture": "string", 937 + "minspeed": 0, 938 + "maxspeed": 0, 939 + "width": 0, 940 + "imbeddedtrailer": true, 941 + "fueloutlay": 0, 942 + "hoppercapacity": 0, 943 + "hopperdischargespeed": 0, 944 + "modelType": 0 945 +} 946 + 947 +Ответ: 948 + 949 +{ 950 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 951 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 952 + "deleted": true, 953 + "extId": "string", 954 + "name": "string", 955 + "picture": "string", 956 + "minspeed": 0, 957 + "maxspeed": 0, 958 + "width": 0, 959 + "imbeddedtrailer": true, 960 + "fueloutlay": 0, 961 + "hoppercapacity": 0, 962 + "hopperdischargespeed": 0, 963 + "modelType": 0 964 +} 965 + 966 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 967 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 968 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 969 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 970 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 971 +|(% style="width:215px" %)(% style="color:#000000" %)picture|(% style="width:861px" %)Название иконки транспорта 972 +|(% style="width:215px" %)(% style="color:#000000" %)minspeed|(% style="width:861px" %)Минимальная технологическая скорость обработки поля, в км/ч 973 +|(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч 974 +|(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах 975 +|(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат 976 +|(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера 977 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость выгрузки из бункера, л/сек 978 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 979 + 980 +== (% style="color:#000000; font-size:16px" %)**Удаление модели**(%%) == 981 + 982 +(% class="box errormessage" %) 983 +((( 984 +(% lang="en-US" %)**DELETE /api/v3/models/{Id}** 985 +))) 986 + 987 +(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалить пользователя, указанного в строке запроса. 988 + 989 +(% style="color:#000000" %)Метод запроса: **DELETE** 990 + 991 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru(% lang="en-US" %)/api/v3/models/{Id} 992 + 993 +(% style="color:#000000" %)Параметр запроса: {**__id__**} - id модели 994 + 995 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 996 + 997 +Ответ: В случае успеха **Success 200** 998 + 999 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 1000 + 1001 +== (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 1002 + 261 261 (% class="box infomessage" %) 262 262 ((( 263 -(% style="color:#000000; line-height:100%" %)**Получение информации об объекте — **(% lang="en-US" %)**GET /api/v3/vehicles/{vehicleId}**1005 +(% lang="en-US" %)**GET /api/v3/vehicles/{vehicleId}** 264 264 ))) 265 265 266 -(% style="color:#000000" %) 1008 +(% style="color:#000000" %)Метод позволяет получить всю информацию из карточки объекта: ID, имя объекта, imei, тип устройства, SIM1, SIM2, ID клиента, название клиента, ID модели, наименование модели объекта, ID подразделения, водители, ТО, текущий пробег, моточасы, нормы расхода, полную историю статусов со всеми комментариями, список датчиков (тип, наименование, тип входа, номер входа, псевдоним, тип датчика, тип тарировки, тарировка, состояние чекбоксов «отображается в подсказке» и «отображать последнее валидное значение». 267 267 268 -(% style="color:#000000" %) (обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**):1010 +(% style="color:#000000" %)Метод возвращает информацию об объекте с учетом настроек авторизованного пользователя, указанного в запросе: 269 269 270 270 (% style="color:#000000" %)− возвращается информация об объекте клиента-родителя авторизованного пользователя и объекте его дочерних клиентов; 271 271 272 -(% style="color:#000000" %)− информация о ТО предоставляется с учётом прав на **«Просмотр заданий на техобслуживание»**. 1014 +(% style="color:#000000" %)− информация о ТО предоставляется с учётом прав на **«__Просмотр заданий на техобслуживание__»**. 273 273 274 274 (% style="color:#000000" %)Метод запроса: **GET** 275 275 276 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/vehicles/>>url:https://hosting.glonasssoft.ru/api/v3/vehicles/]](% style="color:#000000" %) <(% lang="en-US" %)v(%%)ehicleID>1018 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/vehicles/>>url:https://hosting.glonasssoft.ru/api/v3/vehicles/]](% style="color:#000000" %){(% lang="en-US" %)v(%%)ehicleID} 277 277 278 -(% style="color:#000000" %)Параметр запроса: <vehicleid>- идентификатор объекта (опционально)1020 +(% style="color:#000000" %)Параметр запроса: {__**vehicleid}**__ - идентификатор объекта (integer($int32)) 279 279 280 280 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 281 281 282 282 (% style="color:#000000" %)Ответ: 283 283 284 -(% style="color:#000000" %){ 1026 +((( 1027 +{ 1028 + "vehicleId": "", ~/~/ ID объекта 1029 + "name": "", ~/~/ Имя объекта 1030 + "imei": "", ~/~/ IMEI объекта 1031 + "deviceTypeId": , ~/~/ ID типа устройства 1032 + "deviceTypeName": "", ~/~/ Название типа устройства 1033 + "sim1": "", ~/~/ Номер SIM1 1034 + "sim2": "", ~/~/ Номер SIM2 1035 + "parentId": "", ~/~/ ID клиента-родителя 1036 + "parentName": "", ~/~/ Наименование клиента-родителя 1037 + "modelId": "", ~/~/ ID модели объекта 1038 + "modelName": "", ~/~/ Имя модели объекта 1039 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1040 + "unitName": "string", ~/~/ Наименование подразделения 1041 + "status": 0, ~/~/ Статус объекта 1042 + "createdAt": "", ~/~/ Дата создания объекта 1043 + }, 1044 +"customFields": [ ~/~/ Произвольные поля 1045 + { 1046 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля 1047 + "name": "string", ~/~/ Имя поля 1048 + "value": "string", ~/~/ Значение поля 1049 + "forClient": true, ~/~/ Не используемая функция 1050 + "forTooltip": true, ~/~/ Отображать в подсказке 1051 + "forReport": true ~/~/ Отображать в отчете 1052 + } 285 285 286 -(% class="western" %) 287 -{{{ "vehicleId": “”, // идентификатор объекта 288 - "name": "", // имя объекта 289 - "imei": "", // IMEI объекта 290 - "deviceTypeId": “”, // идентификатор устройства объекта 291 - "deviceTypeName": "" // наименование устройства объекта 292 - "parentId": "", // идентификатор клиента-родителя 293 - "parentName": "" // наименование клиента-родителя, 294 - "modelId": "", // идентификатор модели объекта 295 - "modelName": "" // наименование модели объекта, 296 - "unitId": "", // идентификатор подразделения 297 - "unitName": "", // наименование подразделения 298 - "status": “”, // статус объекта 299 - ... 1054 +], ~/~/ Данные с вкладки нормы 1055 + "consumptionPer100Km": "" , ~/~/ Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено) 1056 + "consumptionPerHour": "" , ~/~/ Расход топлива за моточас (если заполнено, то consumptionPer100Km не может быть заполнено) 1057 + "consumptionIdle": "" , ~/~/ Расход топлива на холостом ходу 1058 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1059 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1060 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1061 + "consumptionPer100KmSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1062 + "consumptionPer100KmSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1063 + "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1064 + "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1065 + "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1066 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1067 + "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1068 + "mileageCoeff": 0, ~/~/ коэффициент пробега 1069 + "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна 1070 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат, true - активна, false - не активна 1071 + "counters": { ~/~/ Счетчики 1072 + "mileageEnabled": true, ~/~/ Считать текущий пробег, true - активна, false - не активна 1073 + "motohoursEnabled": true, ~/~/ Считать текущие моточасы, true - активна, false - не активна 1074 + "mileage": 0, ~/~/ Текущий пробег 1075 + "motohours": 0, ~/~/ Текущие моточасы 1076 + "mileageTime": "2023-05-22T09:57:39.562Z", ~/~/ Дата пересчета последнего пробега 1077 + "motohoursTime": "2023-05-22T09:57:39.562Z" ~/~/ Дата пересчета последних моточасов 300 300 }, 301 - ...}}} 302 302 303 -(% style="color:#000000" %)} 1080 +"cmsv6Parameters": { ~/~/ Настройки видеомониторинга 1081 + "id": "string", ~/~/ ID объекта 1082 + "enabled": true, ~/~/ Включить, true - активна, false - не активна 1083 + "host": "string", ~/~/ CMSV6 Web Host 1084 + "login": "string", ~/~/ CMSV6 Account 1085 + "password": "string" ~/~/ CMSV6 Password 1086 + }, 304 304 1088 +"commandTemplates": [ ~/~/ Шаблоны команд 1089 + { 1090 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID команды 1091 + "name": "string", ~/~/ Наименование команды 1092 + "command": "string", ~/~/ Текст команды 1093 + "retries": 0 ~/~/ Количество попыток 1094 + } 1095 + ], 1096 + "sensors": [ ~/~/ Датчики 1097 + { 1098 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1099 + "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный 1100 + "type": 0, ~/~/ Тип датчика 1101 + "name": "string", ~/~/ Имя датчика 1102 + "inputType": 0, ~/~/ Тип входа, Analog, Digital, Impulse, ImpulseFrequency, Diagnosis, Rs485, Rs232, Wire, FMS, BLE 1103 + "inputNumber": 0, ~/~/ Номер входа 1104 + "pseudonym": "string", ~/~/ Псевдоним 1105 + "medianDegree": 0, ~/~/ Медианная фильтрация 1106 + "isInverted": true, ~/~/ Инвертировать, true - Вкл., false - Выкл. 1107 + "disabled": true, ~/~/ Состояние: Отключен, true - Вкл., false - Выкл. 1108 + "gradeType": 0, ~/~/ Тип тарировки, 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1109 + "gradesTables": [ ~/~/ Массив таблиц тарировки 1110 + { 1111 + "grades": [ ~/~/ Таблица тарировки 1 1112 + { 1113 + "input": 0, ~/~/ Входящее значение 1114 + "output": 0 ~/~/ Выходящее значение 1115 + } 1116 + ], 1117 + "relevanceTime": "2023-05-22T09:57:39.562Z" ~/~/ Дата/время начала применения тарировочной таблицы 1118 + } 1119 + ], 1120 + "showInTooltip": true, ~/~/ Отображать в подсказке 1121 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1122 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1123 + "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1124 + "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION 1125 + "expr": "string", ~/~/ Формула 1126 + "children": [ ~/~/ массив дочерних датчиков 1127 + "string" 1128 + ], 1129 + "customParams": { ~/~/ прочие произвольные параметры 1130 + "additionalProp1": "string", 1131 + "additionalProp2": "string", 1132 + "additionalProp3": "string" 1133 + }, 1134 + 1135 +~/~/ Характерные для произвольного: 1136 +~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1137 +~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1138 +~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1139 +~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1140 +~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1141 +~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1142 +~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1143 +~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1144 +~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1145 +~/~/ "ValueOn": "Вкл.", 1146 +~/~/ "ValueOff": "Выкл." 1147 + "summaryMaxValue": 0 ~/~/ Макс. значение 1148 + } 1149 + "drivers": [ ~/~/ Водители 1150 + { 1151 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1152 + "name": "string", ~/~/ Наименование 1153 + "description": "string", 1154 + "isDefault": true ~/~/ По умолчанию 1155 + } 1156 + ], 1157 + "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1158 + { 1159 + "id": "", ~/~/ ID задания 1160 + "enabled": "", ~/~/ Флаг активности задания (true - включен, false - отключен) 1161 + "name": "", ~/~/ Наименование задания 1162 + "description": "", ~/~/ Описание задания 1163 + "mileageCondition": "", ~/~/ Условие по пробегу (в метрах, null - условие не работает) 1164 + "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО (null - неважно) 1165 + "motohoursCondition": "", ~/~/ Условие по моточасам (в секундах, null - условие не работает) 1166 + "lastMotohours": "", ~/~/ Моточасы (в секундах) на момент последнего ТО (null - неважно) 1167 + "periodicCondition": "", ~/~/ Условие периодичности по времени (null - условие не работает) 1168 + "kind": "", ~/~/ Вид периодичности по времени (дни - Days, месяцы - Months, года - Years, null - условие не работает) 1169 + "lastInspectionDate": "" ~/~/ Дата последнего ТО (null - не указано) 1170 + "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1171 + } 1172 + ], 1173 +"statusHistory": [ ~/~/ История статусов 1174 + { 1175 + "status": 0, 1176 + "date": "2023-05-22T09:57:39.562Z", 1177 + "description": "string", 1178 + "additionalInfo": "string" 1179 + } 1180 + ] 1181 +} 1182 +))) 1183 + 305 305 (% style="text-align:left" %) 306 306 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 307 307 ... ... @@ -309,13 +309,83 @@ 309 309 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 310 310 311 311 1191 +== **Отправить команду на терминал** == 1192 + 312 312 (% class="box successmessage" %) 313 313 ((( 314 -(% style="color:#000000; line-height:100%" %)**Добавление объекта — **(% lang="en-US" %)**POST /api/v3/vehicles**1195 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 315 315 ))) 316 316 317 - (% style="color:#000000" %) Методпозволяет добавитьобъект. Методпозволяетдобавить объект, указанный в запросе (обязательный параметрвзаголовкахзапроса - токенвторизации**«X-Auth»**, //Content-Type//: **application/json**; //charset//=**utf-8**).1198 +Команда для отправки на тс. 318 318 1200 +{ 1201 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId) 1202 +"command": "", ~/~/ Текст отправляемой команды 1203 +"retries": "", ~/~/ Количество попыток отправки на терминал 1204 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 1205 +} 1206 + 1207 +В ответ получаем cmdid 1208 + 1209 + 1210 +== **Получить ответ на отправленную на ТС команду** == 1211 + 1212 +(% class="box infomessage" %) 1213 +((( 1214 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1215 +))) 1216 + 1217 +Идентификатор команды: cmdId 1218 + 1219 +Запрос от терминала на ответ команды 1220 + 1221 +Пример ответ от терминала: 1222 + 1223 +ID= "" ~/~/ идентификатор объекта 1224 +Soft="" ~/~/ версия софта 1225 +GPS=4 ~/~/ тип трекера 1226 +Time=11:05:43 28.06.24 ~/~/ время запроса 1227 +Lat=45.056221 ~/~/ широта 1228 +Lon=39.035938 ~/~/ долгота 1229 +Speed=0.0 ~/~/ скорость 1230 +Course=181.4 ~/~/направление 1231 + 1232 +((( 1233 +== **Список отправленных объекту команд с ответами** == 1234 + 1235 +(% class="box infomessage" %) 1236 +((( 1237 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1238 +))) 1239 + 1240 +Идентификатор ТС: vehicleId 1241 + 1242 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1243 + 1244 +Пример ответа терминала 1245 + 1246 +[ 1247 +{ 1248 +"id": "", ~/~/ идентификатор пользователя 1249 +"commandText": "", ~/~/Текст команды. 1250 +"templateId": "", ~/~/Идентификатор шаблона 1251 +"updated": "", ~/~/ Время отправки 1252 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1253 +"answer": "", ~/~/ Ответ терминала. 1254 +"status": "" ~/~/ Статус отправки 1255 +} 1256 +] 1257 +))) 1258 + 1259 +== (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1260 + 1261 +(% class="box successmessage" %) 1262 +((( 1263 +(% lang="en-US" %)**POST /api/v3/vehicles** 1264 +))) 1265 + 1266 +(% style="color:#000000" %)Метод позволяет добавить объект, указанный в запросе. 1267 + 319 319 (% style="color:#000000" %)Метод запроса: **POST** 320 320 321 321 (% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/vehicles>>url:https://hosting.glonasssoft.ru/api/v3/vehicles]] ... ... @@ -322,118 +322,402 @@ 322 322 323 323 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 324 324 325 -(% style="color:#000000" %)Параметры в теле запроса (JSON): //Обязательные параметры наименование и модель объекта //В теле запроса - объект JSON {1274 +(% style="color:#000000" %)Параметры в теле запроса (JSON): //Обязательные параметры наименование и модель объекта //В теле запроса - объект JSON 326 326 327 -(% class="western" %) 328 -{{{ "parentId": "", // ID клиента 329 - "name": "", // имя ТС 330 - "imei": "", // IMEI 331 - "deviceTypeId": "",// ID типа устройства 332 - "modelId": "", 333 - "unitId": "", // ID подразделения 334 - "sim1": "", // Номер SIM 1 335 - "sim2": "", // Номер SIM2 336 - "consumptionPer100Km" : "", // Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено) 337 - "consumptionPerHour": "", // Расход топлива за моточас (если заполнено, то consumptionPer100Km не может быть заполнено) 338 - "consumptionIdle": "",// Расход топлива на холостом ходу 339 - "counters": { 340 - "mileage": "", // пробег 341 - "mileageEnabled": true, // флаг активности счётчика "пробег" 342 - "motohours":"", // моточасы 343 - "motohoursEnabled": true // флаг активности счётчика "моточасы" 344 - }, 345 - "cmsv6Parameters": { // параметры CMSv6 346 - "enabled": true, // флаг включения 347 - //"id": "", // идентификатор 348 - "host": "", // IP-адрес или доменное имя из URL веб-сайта CMSV6 349 - "login": "", // имя учетной записи 350 - "password": "" // пароль учетной записи 1276 +(% style="color:#000000" %){(%%) 1277 + "parentId": "" , ~/~/ ID клиента 1278 + "name": "" , ~/~/ имя ТС 1279 + "imei": "" , ~/~/ IMEI 1280 + "deviceTypeId": "" , ~/~/ ID типа устройства 1281 + "modelId": "" , ~/~/ ID модели 1282 + "unitId": "" , ~/~/ ID подразделения 1283 + "sim1": "" , ~/~/ Номер SIM 1 1284 + "sim2": "" , ~/~/ Номер SIM2 1285 + "consumptionPer100Km": "" , ~/~/ Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено) 1286 + "consumptionPerHour": "" , ~/~/ Расход топлива за моточас (если заполнено, то consumptionPer100Km не может быть заполнено) 1287 + "consumptionIdle": "" , ~/~/ Расход топлива на холостом ходу 1288 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1289 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1290 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1291 + "consumptionPer100KmSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1292 + "consumptionPer100KmSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1293 + "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1294 + "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1295 + "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1296 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1297 + "mileageCalcMethod": 0, 1298 + "mileageCoeff": 0, 1299 + "locationByCellId": true, 1300 + "dottedLineTrackWhenNoCoords": true, 1301 + "counters": ~/~/ счетчики 1302 + { 1303 + "mileage": "" , ~/~/ пробег 1304 + "mileageEnabled": true, ~/~/ флаг активности счётчика "пробег" 1305 + "motohours": "" , ~/~/ моточасы 1306 + "motohoursEnabled": true ~/~/ флаг активности счётчика "моточасы" 351 351 }, 352 - "inspectionTasks": [ // задания на ТО 1308 + "cmsv6Parameters": { ~/~/ параметры CMSv6 1309 + "enabled": true, ~/~/ флаг включения 1310 + "id": "" , ~/~/ идентификатор 1311 + "host": "" , ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1312 + "login": "" , ~/~/ имя учетной записи 1313 + "password": "" ~/~/ пароль учетной записи 1314 + }, 1315 + "inspectionTasks": ~/~/ задания на ТО 353 353 { 354 - "enabled": "", // Признак включения 355 - "name": "", // Имя задания 356 - "description": "", // Описание задания 357 - "mileageCondition": "", // Условие по пробегу (в метрах, null - условие не работает) 358 - "lastMileage": "", // Пробег (в метрах) на момент последнего ТО (null - неважно) 359 - "motohoursCondition": "", // Условие по моточасам (в секундах, null - условие не работает) 360 - "lastMotohours": "", // Моточасы (в секундах) на момент последнего ТО (null - неважно) 361 - "periodicCondition": "", // Условие периодичности по времени (null - условие не работает) 362 - "kind": "", // Вид периодичности по времени (дни - Days, месяцы - Months, года - Years, null - условие не работает) 363 - "lastInspectionDate": "", // Дата последнего ТО (null - не указано) 364 - "maxQuantity": "" // Сколько раз выполнить задание (null - однократно) 1317 + "enabled": "" , ~/~/ Признак включения 1318 + "name": "" , ~/~/ Имя задания 1319 + "description": "" , ~/~/ Описание задания 1320 + "mileageCondition": "" , ~/~/ Условие по пробегу (в метрах, null - условие не работает) 1321 + "lastMileage": "" , ~/~/ Пробег (в метрах) на момент последнего ТО (null - неважно) 1322 + "motohoursCondition": "" , ~/~/ Условие по моточасам (в секундах, null - условие не работает) 1323 + "lastMotohours": "" , ~/~/ Моточасы (в секундах) на момент последнего ТО (null - неважно) 1324 + "periodicCondition": "" , ~/~/ Условие периодичности по времени (null - условие не работает) 1325 + "kind": "" , ~/~/ Вид периодичности по времени (дни - Days, месяцы - Months, года - Years, null - условие не работает) 1326 + "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1327 + "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1328 + } 1329 +"drivers": [ ~/~/ Водители 1330 + { 1331 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1332 + "isDefault": true 1333 + } 1334 + ], 1335 + "commandTemplates": [ ~/~/ Шаблон команды 1336 + { 1337 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1338 + "name": "string", 1339 + "command": "string", 1340 + "retries": 0 1341 + } 1342 + ], 1343 +"sensors": [ ~/~/ Датчики 1344 + { 1345 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1346 + "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный 1347 + "type": 0, ~/~/ Тип датчика 1348 + "name": "string", ~/~/ Имя датчика 1349 + "inputType": 0, ~/~/ Тип входа, Analog, Digital, Impulse, ImpulseFrequency, Diagnosis, Rs485, Rs232, Wire, FMS, BLE 1350 + "inputNumber": 0, ~/~/ Номер входа 1351 + "pseudonym": "string", ~/~/ Псевдоним 1352 + "medianDegree": 0, ~/~/ Медианная фильтрация 1353 + "isInverted": true, ~/~/ Инвертировать, true - Вкл., false - Выкл. 1354 + "disabled": true, ~/~/ Состояние: Отключен, true - Вкл., false - Выкл. 1355 + "gradeType": 0, ~/~/ Тип тарировки, 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1356 + "gradesTables": [ ~/~/ Массив таблиц тарировки 1357 + { 1358 + "grades": [ ~/~/ Таблица тарировки 1 1359 + { 1360 + "input": 0, ~/~/ Входящее значение 1361 + "output": 0 ~/~/ Выходящее значение 1362 + } 1363 + ], 1364 + "relevanceTime": "2023-05-22T09:57:39.562Z" ~/~/ Дата/время начала применения тарировочной таблицы 1365 + } 1366 + ], 1367 + "showInTooltip": true, ~/~/ Отображать в подсказке 1368 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1369 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1370 + "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1371 + "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION 1372 + "expr": "string", ~/~/ Формула 1373 + "children": [ ~/~/ массив дочерних датчиков 1374 + "string" 1375 + ], 1376 + "customParams": { ~/~/ прочие произвольные параметры 1377 + "additionalProp1": "string", 1378 + "additionalProp2": "string", 1379 + "additionalProp3": "string" 365 365 }, 366 - ]}}} 1381 +~/~/ Характерные для произвольного: 1382 +~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1383 +~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1384 +~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1385 +~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1386 +~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1387 +~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1388 +~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1389 +~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1390 +~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1391 +~/~/ "ValueOn": "Вкл.", 1392 +~/~/ "ValueOff": "Выкл." 1393 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 367 367 368 -(% style="color:#000000" %)… } 1395 +((( 1396 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1397 + { 1398 + "from": 0, ~/~/ С какого значения 1399 + "color": "string", ~/~/ Каким цветом 1400 + "text": "string" ~/~/ Текст подписи к этому интервалу 1401 + } 1402 + ] 1403 + } 1404 + ], 1405 +))) 369 369 1407 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1408 + 1409 + 1410 + "customFields": [ ~/~/ Произвольные поля 1411 + { 1412 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1413 + "name": "string", ~/~/ Наименование произвольного поля 1414 + "value": "string", ~/~/ Значение произвольного поля 1415 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1416 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1417 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1418 + } 1419 + ] 1420 +} 1421 + 370 370 (% style="color:#000000" %)Ответ: 371 371 372 -(% style="color:#000000" %){ 373 373 374 -(% class="western" %) 375 -{{{ "vehicleId": "", //ID ТС 376 - "parentId": "", //Guid владельца ТС 377 - "name": "", //Имя объекта 378 - "imei": "", //IMEI 379 - "deviceTypeId": "", //ID типа устройства 380 - "modelId": "", //ID модели 381 - "unitId": "", //ID подразделения 382 - "sim1": "", //SIM1 383 - "sim2": "", //SIM2 384 - "consumptionPer100Km": "", //Расход топлива на 100 км 385 - "consumptionIdle": "", //Расход топлива на холостом ходу 386 - "counters": { //Счётчики 387 - "mileageEnabled": true, 388 - "motohoursEnabled": true, 389 - "mileage": "", 390 - "motohours": 345.0 1425 +((( 1426 +((( 1427 +((( 1428 +{ 1429 + "vehicleId": 0, ~/~/ ID ТС 1430 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1431 + "name": "string", ~/~/ Имя объекта 1432 + "imei": "string", ~/~/ IMEI 1433 + "deviceTypeId": 0, ~/~/ ID типа устройства 1434 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1435 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1436 + "sim1": "string", ~/~/ SIM1 1437 + "sim2": "string", ~/~/ SIM2 1438 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1439 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1440 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1441 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1442 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1443 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1444 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1445 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1446 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1447 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1448 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1449 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1450 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1451 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1452 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1453 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1454 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1455 + "counters": { ~/~/ Dto для состояний счётчиков 1456 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1457 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1458 + "mileage": 0, ~/~/ Пробег 1459 + "motohours": 0 ~/~/ Моточасы 391 391 }, 392 - "cmsv6Parameters": { // ПараметрыCmsV6393 - ull,394 - флагвключения395 - 396 - 397 - 1461 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1462 + "id": "string", ~/~/ CMSV6 Идентификатор 1463 + "enabled": true, ~/~/ Признак включения 1464 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1465 + "login": "string", ~/~/ CMSV6 имя учетной записи 1466 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 398 398 }, 399 - "inspectionTasks": [ // задания на ТО 400 - { 401 - "id": "", // ID задачи 402 - "enabled": false, // Признак включения 403 - "name": "", // Имя задания 404 - "description": "", // Описание задания 405 - "mileageCondition": "", // Условие по пробегу 406 - "lastMileage": "", // Пробег (в метрах) 407 - "motohoursCondition": "", // Условие по моточасам 408 - "lastMotohours": "", // Моточасы 409 - "periodicCondition": "", // Условие периодичности по времени 410 - "kind": "", // Вид периодичности по времени 411 - "maxQuantity": "" // Сколько раз выполнить задание (null - однократно) 412 - } 413 - ]}}} 1468 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1469 + { 1470 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1471 + "enabled": true, ~/~/ Признак включения 1472 + "name": "string", ~/~/ Имя задания 1473 + "description": "string", ~/~/ Описание задания 1474 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1475 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1476 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1477 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1478 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1479 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1480 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1481 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1482 + } 1483 + ], 1484 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1485 + { 1486 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1487 + "inputNumber": 0, ~/~/ № входа. 1488 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1489 + "comment": "string", ~/~/ Комментарий 1490 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1491 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1492 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1493 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1494 + } 1495 + ], 1496 + "commandTemplates": [ ~/~/ Список шаблонов команд 1497 + { 1498 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1499 + "name": "string", ~/~/ Название шаблона команд 1500 + "command": "string", ~/~/ Команда на выполнение 1501 + "retries": 0 ~/~/ Лимит попыток отправки 1502 + } 1503 + ], 1504 + "sensors": [ ~/~/ Список датчиков 1505 + { 1506 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1507 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1508 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 1509 + "name": "string", ~/~/ Имя датчика 1510 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1511 + "inputNumber": 0, ~/~/ Номер входа 1512 + "pseudonym": "string", ~/~/ Псевдоним 1513 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1514 + "isInverted": true, ~/~/ Признак инверсии 1515 + "disabled": true, ~/~/ Датчик не участвует в обработке 1516 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1517 + "gradesTables": [ ~/~/ Тарировка 1518 + { 1519 + "grades": [ ~/~/ Таблицы тарировки 1520 + { 1521 + "input": 0, ~/~/ Вход 1522 + "output": 0 ~/~/ Выход 1523 + } 1524 + ], 1525 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1526 + } 1527 + ], 1528 + "showInTooltip": true, ~/~/ Отображение в подсказке 1529 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1530 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1531 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1532 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1533 + "expr": "string", ~/~/ Выражение 1534 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1535 + "string" 1536 + ], 1537 + "customParams": { 1538 + "additionalProp1": "string", 1539 + "additionalProp2": "string", 1540 + "additionalProp3": "string" 1541 + }, 1542 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1543 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1544 + { 1545 + "from": 0, ~/~/ С какого значения 1546 + "color": "string", ~/~/ Каким цветом 1547 +))) 414 414 415 -(% style="text-align:left" %) 416 -(% style="color:#000000" %)} 1549 +((( 1550 + "text": "string" ~/~/ Текст подписи к этому интервалу 1551 + } 1552 + ] 1553 + } 1554 + ], 1555 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1556 + "customFields": [ ~/~/ Список произвольных полей 1557 + { 1558 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1559 + "name": "string", ~/~/ Наименование произвольного поля 1560 + "value": "string", ~/~/ Значение произвольного поля 1561 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1562 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1563 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1564 + } 1565 + ], 1566 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 1567 +} 1568 +))) 1569 +))) 1570 +))) 417 417 418 418 1573 +**Валидация:** 1574 +- сезонный параметр может быть задан только если задана соответствующая обычная норма; 1575 +- сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1576 +- при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1577 + 1578 + 1579 +== **Импортировать историю ТС (Асинхронный запрос)** == 1580 + 419 419 (% class="box successmessage" %) 420 420 ((( 421 - (% style="color:#000000; line-height:100%" %)**Получение параметров объектов — **(% lang="en-US" %)**POST /api/v3/vehicles/find**1583 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 422 422 ))) 423 423 424 - (% style="color:#000000" %)Методпозволяет получить основные параметры объектов: наименование, IMEI, типустройства,модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1586 +Метод запроса: **POST** 425 425 426 - (% style="color:#000000" %) Метод возвращает информацию об объектах с учетом настроек авторизованногопользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации**«X-Auth»**):1588 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 427 427 1590 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 1591 + 1592 + 1593 +Ответ: 1594 + 1595 +{ 1596 + 1597 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1598 + 1599 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 1600 + 1601 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 1602 + 1603 + "Message": "string", ~/~/ Информация о выполнении запроса 1604 + 1605 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 1606 + 1607 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1608 + 1609 + "Data": "string" ~/~/ Данные 1610 + 1611 +} 1612 + 1613 + 1614 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 1615 + 1616 +(% class="box infomessage" %) 1617 +((( 1618 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 1619 +))) 1620 + 1621 +Метод запроса: **GET** 1622 + 1623 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 1624 + 1625 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 1626 + 1627 + 1628 +Ответ: 1629 + 1630 +{ 1631 + 1632 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1633 + 1634 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 1635 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 1636 + 1637 + "Message": "string", ~/~/ Информация о выполнении запроса 1638 + 1639 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 1640 + 1641 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 1642 + 1643 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1644 + 1645 + "Data": "string" ~/~/ Данные 1646 + 1647 +} 1648 + 1649 + 1650 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1651 + 1652 +(% class="box infomessage" %) 1653 +((( 1654 +(% lang="en-US" %)**POST /api/v3/vehicles/find** 1655 +))) 1656 + 1657 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1658 + 1659 +(% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1660 + 428 428 (% style="color:#000000" %)− возвращается информация об объектах клиента-родителя авторизованного пользователя и объектах его дочерних клиентов; 429 429 430 430 (% style="color:#000000" %)− возвращает информацию об объектах с учетом заданных настроек видимости объектов; 431 431 432 -(% style="color:#000000" %)− информация предоставляется с учетом наличия прав на просмотр объектов заблокированных договоров (объекты, принадлежащие заблокированному договору возвращаются при наличии любого из прав «Видимость объектов заблокированных договоров в панели управления» или «Видимость объектов заблокированных договоров в мониторинге»; 1665 +(% style="color:#000000" %)− информация предоставляется с учетом наличия прав на просмотр объектов заблокированных договоров (объекты, принадлежащие заблокированному договору возвращаются при наличии любого из прав **«__Видимость объектов заблокированных договоров в панели управления__»** или **«__Видимость объектов заблокированных договоров в мониторинге__»**; 433 433 434 -(% style="color:#000000" %)− информация о телефонах SIM1/SIM2 предоставляется при наличии права «Просмотр номеров телефонов объектов»; 1667 +(% style="color:#000000" %)− информация о телефонах SIM1/SIM2 предоставляется при наличии права **«__Просмотр номеров телефонов объектов__»**; 435 435 436 -(% style="color:#000000" %)− информация о статусе объекта предоставляется при наличии права «Просмотр статуса объекта». 1669 +(% style="color:#000000" %)− информация о статусе объекта предоставляется при наличии права **«__Просмотр статуса объекта__»**. 437 437 438 438 (% style="color:#000000" %)Метод запроса: **POST** 439 439 ... ... @@ -441,78 +441,134 @@ 441 441 442 442 (% style="color:#000000" %)В заголовках запроса: 443 443 444 -(% style="color:#000000" %)− Content-Type: application/json 1677 +(% style="color:#000000" %)− Content-Type: __**application/json**__ 445 445 446 446 (% style="color:#000000" %)− X-Auth: Токен авторизации 447 447 448 -(% style="color:#000000" %)Условия фильтрации объектов задаются в теле запроса. Параметры в теле запроса (JSON):1681 +(% style="color:#000000" %)Условия фильтрации объектов задаются в теле запроса. 449 449 450 -(% class="western" style="color:#000000" %)##{"vehicleId": null,~/~/84350, ~/~/ ID ТС (int, опционально) "name": null, ~/~/ ИмяТС(string,опционально)"imei":null,~/~/"710179307",##1683 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 451 451 452 -(% class="western" style="color:#000000" %)##~/~/ IMEI (string, опционально) "sim": null, ~/~/"938112", ~/~/ Номер телефона (string, опционально) "deviceTypeId": null,~/~/5## 1685 +{ 1686 + "vehicleId": null, ~/~/ 84350, ID ТС (int, опционально) 1687 + "name": null, ~/~/ Имя ТС (string, опционально) 1688 + "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1689 + "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1690 + "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1691 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1692 + "unitName": "string", ~/~/ Название подразделения (опционально) 1693 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1694 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1695 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1696 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1697 +} 453 453 454 -(% class="western" style="color:#000000" %)##~/~/ ID типа устройства(short,опционально)"parentId":null,~/~/IDклиента(Guid,опционально)"unitId":null##1699 +(% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. 455 455 456 -(% class="western" style="color:#000000" %)##~/~/"b33548c3-73c3-40e4-8b78-81470ae744ed" ~/~/ ID подразделения (Guid, опционально)##(% style="color:#000000" %)}1701 +(% style="color:#000000" %)Ответ: 457 457 458 -(% style="color:#000000" %) Фильтрация осуществляется по точному совпадению значений параметров «vehicleId», «deviceTypeId», «parentId», «unitId», и по частичному - «name», «imei», «sim». Фильтрация по значению параметра «sim» осуществляется при наличии у авторизованного пользователя права «Просмотр номеров телефонов объектов». 1703 +(% style="color:#000000" %)[ 1704 +{ 459 459 460 -(% style="color:#000000" %)Ответ: [ { «vehicleId»: «», //идентификатор объекта «name»: «», // наименование объекта «imei»: «», // IMEI объекта «deviceTypeId»: «», // идентификатор типа устройства «deviceTypeName»: «», // наименование типа устройства «sim1»: «», // первый номер телефона «sim2»: «», //второй номер телефона «parentId»: «», //идентификатор клиента-родителя «parentName»: «», //наименование клиента-родителя «modelId»: «», //идентификатор модели объекта «modelName»: «», //наименование модели объекта «unitId»: «», //идентификатор подразделения «unitName»: «», //наименование подразделения «status»: «», // статус объекта //«//createdAt//»: «» дата создания объектов //}, … ] 1706 +((( 1707 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1708 +))) 461 461 462 -(% style="color:#000000" %) Параметры «sim1» и «sim2» содержатся в ответе при наличии у авторизованного пользователя права **«Просмотр номеров телефонов объектов»**. Параметр «status» содержится в ответе при наличии у авторизованного пользователя права **«Просмотр статуса объекта»**. Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 1710 +((( 1711 +(% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1712 + "name": "" ~/~/ наименование объекта 1713 + "imei": "" ~/~/ IMEI объекта 1714 + "deviceTypeId": "" ~/~/ идентификатор типа устройства 1715 + "deviceTypeName": "" ~/~/ наименование типа устройства 1716 + "sim1": "" ~/~/ первый номер телефона 1717 + "sim2": "" ~/~/ второй номер телефона 1718 + "parentId": "" ~/~/ идентификатор клиента-родителя 1719 + "parentName": "" ~/~/ наименование клиента-родителя 1720 + "modelId": "" ~/~/ идентификатор модели объекта 1721 + "modelName": "" ~/~/ наименование модели объекта 1722 + "unitId": "" ~/~/ идентификатор подразделения 1723 + "unitName": "" ~/~/ наименование подразделения 1724 + "status": "" ~/~/ статус объекта (%%)(-1 - Новый, 0 - Блокировка, 1 - Активен, 2 - Отменен, 3 - Оборудован, 4 - Диагностика, 1725 + ~/~/ 5 - Сервис, 6 - Демонтаж, 7 - Монтаж, 8 - Дозаказ, 9 - Обслужен, 10 - Списан, 1726 + ~/~/ 11 - Неисправен, 12 - Проверен, 13 - Не эксплуатируется) 1727 +(% style="color:#000000" %) "createdAt": "" ~/~/ дата создания объектов 1728 + "customFields": [ 1729 + { 1730 + "id": "", ~/~/ идентификатор произвольного поля 1731 + "name": "", ~/~/ имя произвольного поля 1732 + "value": "", ~/~/ значение произвольного поля 1733 + "forClient": true, ~/~/ право на отображение у клиента 1734 + "forTooltip": false, ~/~/ право на отображение в подсказке 1735 + "forReport": false ~/~/ право на отображение в отчетах 1736 +))) 463 463 464 -0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1738 +((( 1739 + } 1740 + ], 1741 + "vehicleGroups": [ ~/~/ Группы ТС 1742 + { 1743 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1744 + "name": "string" ~/~/ Наименование группы ТС 1745 + } 1746 + ] 1747 + } 1748 +] 1749 +))) 465 465 1751 +(% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 466 466 1753 +== (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == 1754 + 467 467 (% class="box successmessage" %) 468 468 ((( 469 -(% style="color:#000000; line-height:100%" %)**Изменение статуса объекта — **(% lang="en-US" %)**POST /api/v3/vehicles/changeStatus/{vehicleId}**1757 +(% lang="en-US" %)**POST /api/v3/vehicles/changeStatus/{vehicleId}** 470 470 ))) 471 471 472 -(% style="color:#000000" %) (обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**).1760 +(% style="color:#000000" %)Метод позволяет изменить статус объекта. Метод позволяет изменить статус объекта, указанного в запросе. 473 473 474 474 (% style="color:#000000" %)Метод запроса: **POST** 475 475 476 476 (% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/vehicles/changeStatus/>>url:https://hosting.glonasssoft.ru/api/v3/vehicles/changeStatus/]](% style="color:#000000" %){vehicleId} 477 477 478 -(% style="color:#000000" %)Параметр запроса: {vehicleId} - ID ТС 1766 +(% style="color:#000000" %)Параметр запроса: {__**vehicleId**__} - ID ТС 479 479 480 480 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 481 481 482 -(% style="color:#000000" %)Параметры в теле запроса (JSON): {1770 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 483 483 484 -(% class="western" %) 485 -{{{ "status": "", // значение статуса (-1 - Новый, 0 - Блокировка, 1 - Активен, 2 - Отменен, 3 - Оборудован, 4 - Диагностика, 486 - // 5 - Сервис, 6 - Демонтаж, 7 - Монтаж, 8 - Дозаказ, 9 - Обслужен, 10 - Списан, 487 - // 11 - Неисправен, 12 - Проверен, 13 - Не эксплуатируется) 488 - "date": "", // Дата смены статуса (null если сменить немедленно) 489 - "description": "", // Описание 490 - "data": "", // Данные 491 - "overwrite": false, // Флаг перезаписи 492 - "stage": "", // Состояние, может быть null}}} 1772 +(% style="color:#000000" %){ 493 493 1774 + "status": "", ~/~/ значение статуса (-1 - Новый, 0 - Блокировка, 1 - Активен, 2 - Отменен, 3 - Оборудован, 4 - Диагностика, 1775 + ~/~/ 5 - Сервис, 6 - Демонтаж, 7 - Монтаж, 8 - Дозаказ, 9 - Обслужен, 10 - Списан, 1776 + ~/~/ 11 - Неисправен, 12 - Проверен, 13 - Не эксплуатируется) 1777 + "date": "", ~/~/ Дата смены статуса (null если сменить немедленно) 1778 + "description": "", ~/~/ Описание 1779 + "data": "", ~/~/ Данные 1780 + "overwrite": false, ~/~/ Флаг перезаписи 1781 + "stage": "", ~/~/ Состояние, может быть null 494 494 (% style="color:#000000" %)} 495 495 496 -(% style="color:#000000" %)Ответ: {1784 +(% style="color:#000000" %)Ответ: 497 497 498 -(% class="western" %) 499 -{{{ "status": "", // значение статуса 500 - "date": "", // Дата смены статуса 501 - "description": "", // Описание 502 - "data": "", // Данные 503 - "overwrite": false, // Флаг перезаписи 504 - "stage": "", // Состояние}}} 1786 +(% style="color:#000000" %){(%%) 1787 + "status": "", ~/~/ значение статуса 1788 + "date": "", ~/~/ Дата смены статуса 1789 + "description": "", ~/~/ Описание 1790 + "data": "", ~/~/ Данные 1791 + "overwrite": false, ~/~/ Флаг перезаписи 1792 + "stage": "", ~/~/ Состояние 1793 +(% style="color:#000000" %) } 505 505 506 -(% style="text-align:left" %) 507 -(% style="color:#000000" %)} 1795 +== == 508 508 1797 +== (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 509 509 510 510 (% class="box warningmessage" %) 511 511 ((( 512 -(% style="color:#000000; line-height:100%" %)**Редактирование объекта — **(% lang="en-US" %)**PUT /api/v3/vehicles**1801 +(% lang="en-US" %)**PUT /api/v3/vehicles** 513 513 ))) 514 514 515 -(% style="color:#000000" %) . Метод позволяет отредактировать объект, указанный в запросе(обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**).1804 +(% style="color:#000000" %)Метод позволяет отредактировать объект, указанный в запросе. 516 516 517 517 (% style="color:#000000" %)Метод запроса: **PUT** 518 518 ... ... @@ -522,26 +522,342 @@ 522 522 523 523 (% style="color:#000000" %)Параметры в теле запроса (JSON): 524 524 525 -(% style="color:#000000" %)//Обязательные параметры наименование и модель объекта //В теле запроса - объект JSON { «vehicleId»: «», //ID ТС «parentId»: «», //ID клиента «name»: «», //имя ТС «imei»: «», //IMEI «deviceTypeId»: «», //ID типа устройства «modelId»: «», «unitId»: «», //ID подразделения «sim1»: «», //SIM 1 «sim2»: «», //SIM2 «consumptionPer100Km»: «», //Расход топлива на 100 км «consumptionIdle»: «», //Расход топлива на холостом ходу «counters»: { «mileageEnabled»: true, //флаг активности счётчика «пробег» «motohoursEnabled»: true, //флаг активности счётчика «моточасы» «mileage»: «», //пробег «motohours»: «» //моточасы }, «cmsv6Parameters»: { //параметры CMSv6 «id»: «», //идентификатор «enabled»: true, //флаг включения «host»: «», //IP-адрес или доменное имя из URL веб-сайта CMSV6 «login»: «», //имя учетной записи «password»: «» //пароль учетной записи }, «inspectionTasks»: [ //задания на ТО { «id»: «», //ID задания «enabled»: false, //Признак включения «name»: «», //Имя задания «description»: «», //Описание задания «mileageCondition»: «», //Условие по пробегу (в метрах, null - условие не работает) «lastMileage»: «», //Пробег (в метрах) на момент последнего ТО (null - неважно) «motohoursCondition»: «», //Условие по моточасам (в секундах, null - условие не работает) «lastMotohours»: «», //Моточасы (в секундах) на момент последнего ТО (null - неважно) «periodicCondition»: «», //Условие периодичности по времени (null - условие не работает) «kind»: «», //Вид периодичности по времени «maxQuantity»: «» //Сколько раз выполнить задание } ] } 1814 +(% style="color:#000000" %){ 1815 + "vehicleId": , ~/~/ ID объекта 1816 + "parentId": "" , ~/~/ ID клиента 1817 + "name": "" , ~/~/ имя ТС 1818 + "imei": "" , ~/~/ IMEI 1819 + "deviceTypeId": "" , ~/~/ ID типа устройства 1820 + "modelId": "" , ~/~/ ID модели 1821 + "unitId": "" , ~/~/ ID подразделения 1822 + "sim1": "" , ~/~/ Номер SIM 1 1823 + "sim2": "" , ~/~/ Номер SIM2 1824 + "consumptionPer100Km": "" , ~/~/ Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено) 1825 + "consumptionPerHour": "" , ~/~/ Расход топлива за моточас (если заполнено, то consumptionPer100Km не может быть заполнено) 1826 + "consumptionIdle": "" , ~/~/ Расход топлива на холостом ходу 1827 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1828 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1829 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1830 + "consumptionPer100KmSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1831 + "consumptionPer100KmSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1832 + "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1833 + "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1834 + "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1835 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 526 526 1837 + "mileageCalcMethod": 0, 1838 + "mileageCoeff": 0, 1839 + "locationByCellId": true, 1840 + "dottedLineTrackWhenNoCoords": true, 1841 + "counters": ~/~/ счетчики 1842 + { 1843 + "mileage": "" , ~/~/ пробег 1844 + "mileageEnabled": true, ~/~/ флаг активности счётчика "пробег" 1845 + "motohours": "" , ~/~/ моточасы 1846 + "motohoursEnabled": true ~/~/ флаг активности счётчика "моточасы" 1847 + }, 1848 + "cmsv6Parameters": { ~/~/ параметры CMSv6 1849 + "enabled": true, ~/~/ флаг включения 1850 + "id": "" , ~/~/ идентификатор 1851 + "host": "" , ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1852 + "login": "" , ~/~/ имя учетной записи 1853 + "password": "" ~/~/ пароль учетной записи 1854 + }, 1855 + "inspectionTasks": ~/~/ задания на ТО 1856 + { 1857 + "enabled": "" , ~/~/ Признак включения 1858 + "name": "" , ~/~/ Имя задания 1859 + "description": "" , ~/~/ Описание задания 1860 + "mileageCondition": "" , ~/~/ Условие по пробегу (в метрах, null - условие не работает) 1861 + "lastMileage": "" , ~/~/ Пробег (в метрах) на момент последнего ТО (null - неважно) 1862 + "motohoursCondition": "" , ~/~/ Условие по моточасам (в секундах, null - условие не работает) 1863 + "lastMotohours": "" , ~/~/ Моточасы (в секундах) на момент последнего ТО (null - неважно) 1864 + "periodicCondition": "" , ~/~/ Условие периодичности по времени (null - условие не работает) 1865 + "kind": "" , ~/~/ Вид периодичности по времени (дни - Days, месяцы - Months, года - Years, null - условие не работает) 1866 + "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1867 + "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1868 + } 1869 + 1870 +"drivers": [ ~/~/ Водители 1871 + { 1872 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1873 + "isDefault": true 1874 + } 1875 + ], 1876 + "commandTemplates": [ ~/~/ Шаблон команды 1877 + { 1878 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1879 + "name": "string", 1880 + "command": "string", 1881 + "retries": 0 1882 + } 1883 + ], 1884 +"sensors": [ ~/~/ Датчики 1885 + { 1886 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1887 + "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный 1888 + "type": 0, ~/~/ Тип датчика 1889 + "name": "string", ~/~/ Имя датчика 1890 + "inputType": 0, ~/~/ Тип входа, Analog, Digital, Impulse, ImpulseFrequency, Diagnosis, Rs485, Rs232, Wire, FMS, BLE 1891 + "inputNumber": 0, ~/~/ Номер входа 1892 + "pseudonym": "string", ~/~/ Псевдоним 1893 + "medianDegree": 0, ~/~/ Медианная фильтрация 1894 + "isInverted": true, ~/~/ Инвертировать, true - Вкл., false - Выкл. 1895 + "disabled": true, ~/~/ Состояние: Отключен, true - Вкл., false - Выкл. 1896 + "gradeType": 0, ~/~/ Тип тарировки, 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1897 + "gradesTables": [ ~/~/ Массив таблиц тарировки 1898 + { 1899 + "grades": [ ~/~/ Таблица тарировки 1 1900 + { 1901 + "input": 0, ~/~/ Входящее значение 1902 + "output": 0 ~/~/ Выходящее значение 1903 + } 1904 + ], 1905 + "relevanceTime": "2023-05-22T09:57:39.562Z" ~/~/ Дата/время начала применения тарировочной таблицы 1906 + } 1907 + ], 1908 + "showInTooltip": true, ~/~/ Отображать в подсказке 1909 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1910 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1911 + "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1912 + "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION 1913 + "expr": "string", ~/~/ Формула 1914 + "children": [ ~/~/ массив дочерних датчиков 1915 + "string" 1916 + ], 1917 + "customParams": { ~/~/ прочие произвольные параметры 1918 + "additionalProp1": "string", 1919 + "additionalProp2": "string", 1920 + "additionalProp3": "string" 1921 + }, 1922 +~/~/ Характерные для произвольного: 1923 +~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1924 +~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1925 +~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1926 +~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1927 +~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1928 +~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1929 +~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1930 +~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1931 +~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1932 +~/~/ "ValueOn": "Вкл.", 1933 +~/~/ "ValueOff": "Выкл." 1934 + "summaryMaxValue": 0 ~/~/ Макс. значение 1935 + 1936 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1937 + { 1938 + "from": 0, ~/~/ С какого значения 1939 + "color": "string", ~/~/ Каким цветом 1940 + "text": "string" ~/~/ Текст подписи к этому интервалу 1941 + } 1942 + ] 1943 + } 1944 + ], 1945 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1946 + 1947 + "customFields": [ ~/~/ Произвольные поля 1948 + { 1949 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1950 + "name": "string", ~/~/ Наименование произвольного поля 1951 + "value": "string", ~/~/ Значение произвольного поля 1952 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1953 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1954 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1955 + } 1956 + ] 1957 +} 1958 + 1959 + 527 527 (% style="color:#000000" %)Ответ: 528 528 529 -(% lang="en-US" style="text-align:left" %) 530 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ «vehicleId»: «», //ID ТС «parentId»: «», //ID клиента «name»: «», //имя ТС «imei»: «», //IMEI «deviceTypeId»: «», //ID типа устройства «modelId»: «», «unitId»: «», //ID подразделения «sim1»: «», //SIM 1 «sim2»: «», //SIM2 «consumptionPer100Km»: «», //Расход топлива на 100 км «consumptionIdle»: «», //Расход топлива на холостом ходу «counters»: { «mileageEnabled»: true, //флаг активности счётчика «пробег» «motohoursEnabled»: true, //флаг активности счётчика «моточасы» «mileage»: «», //пробег «motohours»: «» //моточасы }, «cmsv6Parameters»: { //параметры CMSv6 «id»: «», //идентификатор «enabled»: true, //флаг включения «host»: «», //IP-адрес или доменное имя из URL веб-сайта CMSV6 «login»: «», //имя учетной записи «password»: «» //пароль учетной записи }, «inspectionTasks»: [ //задания на ТО { «id»: «», //ID задания «enabled»: false, //Признак включения «name»: «», //Имя задания «description»: «», //Описание задания «mileageCondition»: «», //Условие по пробегу «lastMileage»: «», //Пробег (в метрах) на момент последнего ТО «motohoursCondition»: «», //Условие по моточасам «lastMotohours»: «», //Моточасы «periodicCondition»: «», //Условие периодичности по времени «kind»: «», //Вид периодичности по времени «maxQuantity»: «» //Сколько раз выполнить задание } ] } 1962 +((( 1963 +{ 1964 + "vehicleId": 0, ~/~/ ID ТС 1965 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1966 + "name": "string", ~/~/ Имя объекта 1967 + "imei": "string", ~/~/ IMEI 1968 + "deviceTypeId": 0, ~/~/ ID типа устройства 1969 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1970 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1971 + "sim1": "string", ~/~/ SIM1 1972 + "sim2": "string", ~/~/ SIM2 1973 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1974 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1975 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1976 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1977 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1978 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1979 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1980 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1981 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1982 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1983 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1984 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1985 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 1986 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1987 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1988 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1989 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1990 + "counters": { ~/~/ состояний счётчиков 1991 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1992 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1993 + "mileage": 0, ~/~/ Пробег 1994 + "motohours": 0 ~/~/ Моточасы 1995 + }, 1996 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1997 + "id": "string", ~/~/ CMSV6 Идентификатор 1998 + "enabled": true, ~/~/ Признак включения 1999 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 2000 +))) 531 531 532 532 2003 +((( 2004 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 2005 + "login": "string", ~/~/ CMSV6 имя учетной записи 2006 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 2007 + }, 2008 + "inspectionTasks": [ ~/~/ Задания на ТО 2009 + { 2010 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 2011 + "enabled": true, ~/~/ Признак включения 2012 + "name": "string", ~/~/ Имя задания 2013 + "description": "string", ~/~/ Описание задания 2014 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 2015 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 2016 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 2017 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 2018 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 2019 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 2020 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2021 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2022 + } 2023 + ], 2024 + "drivers": [ ~/~/ Список водителей 2025 + { 2026 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2027 + "inputNumber": 0, ~/~/ № входа. 2028 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2029 + "comment": "string", ~/~/ Комментарий. 2030 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2031 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2032 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2033 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2034 + } 2035 + ], 2036 + "commandTemplates": [ ~/~/ Список шаблонов команд 2037 + { 2038 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2039 + "name": "string", ~/~/ Название шаблона команд 2040 + "command": "string", ~/~/ Команда на выполнение 2041 + "retries": 0 ~/~/ Лимит попыток отправки 2042 + } 2043 + ], 2044 + "sensors": [ ~/~/ Список датчиков 2045 + { 2046 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2047 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2048 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2049 +))) 2050 + 2051 +((( 2052 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2053 +))) 2054 + 2055 +((( 2056 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2057 +))) 2058 + 2059 +((( 2060 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2061 +))) 2062 + 2063 +((( 2064 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2065 +))) 2066 + 2067 +((( 2068 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2069 + "name": "string", ~/~/ Имя датчика 2070 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2071 +))) 2072 + 2073 +((( 2074 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2075 + "inputNumber": 0, ~/~/ Номер входа 2076 + "pseudonym": "string", ~/~/ Псевдоним 2077 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2078 + "isInverted": true, ~/~/ Признак инверсии 2079 + "disabled": true, ~/~/ Датчик не участвует в обработке 2080 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2081 + "gradesTables": [ ~/~/ Тарировка 2082 + { 2083 + "grades": [ ~/~/ Таблицы тарировки 2084 + { 2085 + "input": 0, ~/~/ Вход 2086 + "output": 0 ~/~/ Выход 2087 + } 2088 + ], 2089 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 2090 + } 2091 + ], 2092 + "showInTooltip": true, ~/~/ Отображение в подсказке 2093 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 2094 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2095 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2096 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2097 + "expr": "string", ~/~/ Выражение 2098 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2099 + "string" 2100 + ], 2101 + "customParams": { ~/~/ Дополнительные настройки 2102 + "additionalProp1": "string", 2103 + "additionalProp2": "string", 2104 + "additionalProp3": "string" 2105 + }, 2106 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2107 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2108 + { 2109 + "from": 0, ~/~/ С какого значения 2110 + "color": "string", ~/~/ Каким цветом 2111 + "text": "string" ~/~/ Текст подписи к этому интервалу 2112 + } 2113 + ] 2114 + } 2115 + ], 2116 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2117 + "customFields": [ ~/~/ Список произвольных полей 2118 + { 2119 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2120 + "name": "string", ~/~/ Наименование произвольного поля 2121 + "value": "string", ~/~/ Значение произвольного поля 2122 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2123 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2124 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2125 + } 2126 + ], 2127 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2128 +} 2129 +))) 2130 + 2131 +**Валидация:** 2132 +- сезонный параметр может быть задан только если задана соответствующая обычная норма; 2133 +- сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 2134 +- при задании сезонной нормы обязательны соответствующие даты начала/окончания. 2135 + 2136 +== (% style="color:#000000; font-size:16px" %)**Удаление объекта**(%%) == 2137 + 533 533 (% class="box errormessage" %) 534 534 ((( 535 -(% style="color:#000000; line-height:100%" %)**Удаление объекта — **(% lang="en-US" %)**DELETE /api/v3/vehicles/{vehicleId}**2140 +(% lang="en-US" %)**DELETE /api/v3/vehicles/{vehicleId}** 536 536 ))) 537 537 538 -(% style="color:#000000" %) . Метод позволяет удалить объект, указанный в строке запроса(обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**).2143 +(% style="color:#000000" %)Метод позволяет удалить объект, указанный в строке запроса. 539 539 540 540 (% style="color:#000000" %)Метод запроса: **DELETE** 541 541 542 542 (% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/vehicles/>>url:https://hosting.glonasssoft.ru/api/v3/vehicles/]](% style="color:#000000" %){vehicleId} 543 543 544 -(% style="color:#000000" %)Параметр запроса: {id} - Guid объекта 2149 +(% style="color:#000000" %)Параметр запроса: {__**id**__} - Guid объекта 545 545 546 546 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 547 547 ... ... @@ -548,70 +548,3077 @@ 548 548 (% style="text-align:left" %) 549 549 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».** 550 550 2156 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Устройства**(%%) = 551 551 552 -(% class="box" lang="en-US" style="text-align: center;" %) 2158 +== (% style="color:#000000; font-size:16px" %)**Получение списка типов устройств**(%%) == 2159 + 2160 +(% class="box infomessage" %) 553 553 ((( 554 -(% style="color:#000000; font-size:14pt" %)**РазделУстройства**2162 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**GET /api/v3/devices/types** 555 555 ))) 556 556 2165 +(% style="color:#000000" %)Метод позволяет получить список типов устройств. Метод возвращает информацию о типах устройств с учетом настроек авторизованного пользователя, указанного в запросе. 2166 + 2167 +(% style="color:#000000" %)Метод запроса: **GET** 2168 + 2169 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/devices/types>>https://hosting.glonasssoft.ru/api/v3/devices/types]] 2170 + 2171 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2172 + 2173 +(% style="color:#000000" %)Ответ: 2174 + 2175 +(% style="color:#000000" %){(%%) 2176 + "deviceTypeId" : "", ~/~/ ID типа устройства 2177 + "deviceTypeName" : "" ~/~/ Название типа устройства 2178 +(% style="color:#000000" %)} 2179 + 2180 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = 2181 + 2182 +== (% style="color:#000000; font-size:16px" %)**Получение списка типов датчиков**(%%) == 2183 + 557 557 (% class="box infomessage" %) 558 558 ((( 559 -(% style="color:#000000; line-height:100%" %)** Получениесписка типов устройств**(%style="color:#000000" %)**— **(% lang="en-US" %)**GET /api/v3/devices/types**2186 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**GET /api/v3/sensors/types** 560 560 ))) 561 561 562 -(% style="color:#000000" %) устройств. Метод возвращает информацию о типахустройств с учетом настроек авторизованного пользователя, указанного в запросе(обязательный параметр в заголовках запроса - токен авторизации **«X-Auth»**).2189 +(% style="color:#000000" %)Метод позволяет получить список типов датчиков. Метод возвращает информацию о типах датчиков с учетом настроек авторизованного пользователя, указанного в запросе. 563 563 564 564 (% style="color:#000000" %)Метод запроса: **GET** 565 565 566 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/ users/api/v3/devices/types>>url:https://hosting.glonasssoft.ru/api/v3/users/api/v3/devices/types]]2193 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/sensors/types>>url:https://hosting.glonasssoft.ru/api/v3/sensors/types]] 567 567 568 568 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 569 569 570 -(% style="color:#000000" %)Ответ: [2197 +(% style="color:#000000" %)Ответ: 571 571 572 -(% class="western" %)573 - {{{{574 - deviceTypeId"ID типаустройства575 - viceTypeName"Названиетипа устройства576 - ,}}}2199 +(% style="color:#000000" %){(%%) 2200 + "id": "", ~/~/ ID типа датчика 2201 + "name": "", ~/~/ Название 2202 + "description": "", ~/~/ Описание 2203 +(% style="color:#000000" %)} 577 577 2205 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = 2206 + 2207 +== (% style="color:#000000; font-size:16px" %)**Данные об активности объекта**(%%) == 2208 + 2209 +(% class="box infomessage" style="text-align: left;" %) 2210 +((( 2211 +**POST /api/v3/terminalMessages/count** 2212 +))) 2213 + 2214 +(% style="text-align: left;" %) 2215 +Метод возвращает количество сообщений отправленных терминалом на сервер за указанный период. 2216 + 2217 +(% style="text-align: left;" %) 2218 +Метод запроса **POST** 2219 + 2220 +(% style="text-align: left;" %) 2221 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/terminalMessages/count 2222 + 2223 +(% style="text-align: left;" %) 2224 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2225 + 2226 +(% style="text-align: left;" %) 2227 +{ 2228 + "vehicleIds": [ 2229 + id ~/~/ здесь передается список идентификаторов объектов 2230 + ], 2231 + "from": "2023-03-12T07:09:02.364Z", ~/~/ от какой даты выполнять запрос 2232 + "to": "2023-03-14T07:09:02.364Z" ~/~/ до какой даты выполнять запрос 2233 +} 2234 + 2235 +(% style="text-align: left;" %) 2236 +Ответ: 2237 + 2238 +(% style="text-align: left;" %) 2239 +[ 2240 + { 2241 + "vehicleId": 0, ~/~/ идентификатор объекта 2242 + "count": 0 ~/~/ количество сообщений за период 2243 + } 2244 +] 2245 + 2246 +== (% style="color:#000000; font-size:16px" %)**Получить тип и номер входа сырого параметра **(%%) == 2247 + 2248 +(% class="box infomessage" style="text-align: left;" %) 2249 +((( 2250 +**POST /api/v3/terminalMessages/mapping** 2251 +))) 2252 + 2253 +Запрос позволяет узнать тип и номер входа для сырого параметра, приходящего по указанному протоколу. 2254 + 2255 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/terminalMessages/mapping 2256 + 2257 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2258 + 2259 +{ 2260 + "protocolType": 0, 2261 + "params": ["string"] 2262 +} 2263 + 2264 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2265 +|protocolType|ID типа протокола 2266 +|params|((( 2267 +Массив наименований параметров в сообщении 2268 +))) 2269 + 2270 +Ответ: 2271 + 2272 +{ 2273 + "protocolType": 0, 2274 + "mapping": { 2275 + "additionalProp1": { 2276 + "inputType": 0, 2277 + "inputNumber": 0 2278 + }, 2279 + "additionalProp2": { 2280 + "inputType": 0, 2281 + "inputNumber": 0 2282 + } 2283 + } 2284 +} 2285 + 2286 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2287 +|protocolType|Тип протокола 2288 +|inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 2289 +|inputNumber|((( 2290 +Номер входа 2291 +))) 2292 + 2293 +(% class="wikigeneratedid" %) 2294 +Перечень ID протоколов в статье - [[ID протоколов для получения типов и номеров входа сырого параметра.>>https://wiki.glonasssoft.ru/bin/view/API/ID%20%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D1%8B%20%D0%B4%D0%BB%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D1%8F%20%D1%82%D0%B8%D0%BF%D0%B0%20%D0%B8%20%D0%BD%D0%BE%D0%BC%D0%B5%D1%80%D0%B0%20%D0%B2%D1%85%D0%BE%D0%B4%D0%B0%20%D1%81%D1%8B%D1%80%D0%BE%D0%B3%D0%BE%20%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B0/]] 2295 + 2296 +== (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 2297 + 2298 +(% class="box infomessage" %) 2299 +((( 2300 +**POST /api/v3/terminalMessages** 2301 +))) 2302 + 2303 +Метод возвращает список сообщений терминала объекта за выбранный период. 2304 + 2305 +(% style="text-align: left;" %) 2306 +Метод запроса **POST** 2307 + 2308 +(% style="text-align: left;" %) 2309 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/terminalMessages 2310 + 2311 +(% style="text-align: left;" %) 2312 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2313 + 2314 +{ 2315 + "vehicleId": 0, ~/~/ id объекта 2316 + "from": "2023-03-29T09:14:46.107Z", ~/~/ начало периода запроса 2317 + "to": "2023-03-29T09:14:46.107Z" ~/~/ конец периода запроса 2318 +} 2319 + 2320 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2321 +|vehicleId|ID объекта 2322 +|from|Дата и время начала периода запроса 2323 +|to|Дата и время окончания периода запроса 2324 + 2325 +Ответ: 2326 + 2327 +[ 2328 + { 2329 + "messages": [ 2330 + { 2331 + "deviceTime": "2023-11-29T07:40:44.052Z", 2332 + "serverTime": "2023-11-29T07:40:44.052Z", 2333 + "speed": 0, 2334 + "altitude": 0, 2335 + "latitude": 0, 2336 + "longitude": 0, 2337 + "satellites": 0, 2338 + "course": 0, 2339 + "voltage": 0, 2340 + "parameters": { 2341 + "additionalProp1": "string", 2342 + "additionalProp2": "string", 2343 + "additionalProp3": "string" 2344 + }, 2345 + "photoCount": 0, 2346 + "lbsCorrectedCoords": true, 2347 + "protocolType": 0 2348 + } 2349 + ] 2350 + } 2351 +] 2352 + 2353 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2354 +|deviceTime|Время сообщения терминала 2355 +|serverTime|Время когда сообщение поступило на сервер 2356 +|speed|Скорость 2357 +|altitude|Высота над уровнем моря 2358 +|latitude|Широта 2359 +|longitude|Долгота 2360 +|satellites|Кол-во спутников 2361 +|course|Курс 2362 +|voltage|Бортовое напряжение 2363 +|parameters|Список параметров и их значений 2364 +|photoCount|Количество фото 2365 +|lbsCorrectedCoords|Признак того, что координаты были скорректированы по LBS, true - скорректированы, false - не скорректированы 2366 +|protocolType|ID типа протокола 2367 + 2368 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос данных об объекте за период**(%%) = 2369 + 2370 +== (% style="color:#000000; font-size:16px" %)**Получение данных о пробеге и моточасах транспортного средства**(%%) == 2371 + 2372 +(% class="box infomessage" %) 2373 +((( 2374 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/vehicles/mileageAndMotohours** 2375 +))) 2376 + 2377 +(% style="color:#000000" %)Метод запроса: **POST** 2378 + 2379 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/mileageAndMotohours 2380 + 2381 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2382 + 578 578 (% style="text-align:left" %) 579 - (%style="color:#000000" %)…** **]2384 +Тело запроса: 580 580 2386 +{ 2387 + "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2388 + "vehicleIds": [0], ~/~/ Список ID объектов 2389 + "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 2390 + "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода 2391 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2392 +} 581 581 582 -(% class="box" style="text-align: center;" %) 2394 +Ответ: 2395 + 2396 +[ 2397 + { 2398 + "vehicleId": 0, ~/~/ ID объекта 2399 + "name": "string", ~/~/ Имя ТС 2400 + "periods": [ ~/~/ Периоды 2401 + { 2402 + "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2403 + "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2404 + "mileage": 0, ~/~/ Пробег за период, километры 2405 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2406 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2407 + "motohours": 0, ~/~/ Моточасы за период, секунды 2408 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2409 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2410 + } 2411 + ] 2412 + } 2413 +] 2414 + 2415 +== (% style="color:#000000; font-size:16px" %)**Получение данных о расходе транспортного средства**(%%) == 2416 + 2417 +(% class="box infomessage" %) 583 583 ((( 584 -(% style="color:#000000; font-size:14pt" %)**РазделДатчики**2419 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/vehicles/fuelConsumption** 585 585 ))) 586 586 2422 +(% style="color:#000000" %)Метод запроса: **POST** 2423 + 2424 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/fuelConsumption 2425 + 2426 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2427 + 2428 +(% style="text-align:left" %) 2429 +Тело запроса: 2430 + 2431 +{ 2432 + "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2433 + "vehicleIds": [0], ~/~/ Список ID объектов 2434 + "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 2435 + "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода 2436 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2437 +} 2438 + 2439 +Ответ: 2440 + 2441 +[ 2442 + { 2443 + "vehicleId": 0, ~/~/ ID объекта 2444 + "name": "string", ~/~/ Имя ТС 2445 + "periods": [ ~/~/ Периоды 2446 + { 2447 + "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2448 + "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2449 + "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода 2450 + "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2451 + "fuelConsumption": 0, ~/~/ Расход топлива 2452 + "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2453 + } 2454 + ] 2455 + } 2456 +] 2457 + 2458 +(% class="box warningmessage" %) 2459 +((( 2460 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2461 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2462 +))) 2463 + 2464 +== (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2465 + 587 587 (% class="box infomessage" %) 588 588 ((( 589 -(% style="color:#000000; line-height:100%" %)** Получениесписка типов датчиков**(%style="color:#000000" %)**— **(% lang="en-US" %)**GETsensors/types**2468 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/vehicles/fuelInOut** 590 590 ))) 591 591 592 -(% style="color:#000000" %) позволяет получить список типов датчиков. Метод возвращает информацию о типах датчиков с учетом настроек авторизованного пользователя, указанного в запросе (обязательныйпараметр в заголовках запроса - токен авторизации**«X-Auth»**).2471 +(% style="color:#000000" %)Метод запроса: **POST** 593 593 594 -(% style="color:#000000" %) Методзапроса:**GET**2473 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/fuelInOut 595 595 596 -(% style="color:#000000" %) URLзапроса:(%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/sensors/types>>url:https://hosting.glonasssoft.ru/api/v3/sensors/types]]2475 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 597 597 598 -(% style="color:#000000" %)В заголовках запроса:X-Auth: Токен авторизации 2477 +(% style="text-align:left" %) 2478 +Тело запроса: 599 599 600 -(% style="color:#000000" %)Ответ: [ 2480 +{ 2481 + "vehicleIds": [0], ~/~/ Список ID объектов 2482 + "from": "2023-08-09T14:27:44.772Z", ~/~/ Дата и время начало запроса 2483 + "to": "2023-08-09T14:27:44.772Z", ~/~/ Дата и время окончания запроса 2484 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2485 +} 601 601 602 -(% class="western" style="margin-bottom:19px" %) 603 -{{{ {}}} 2487 +Ответ: 604 604 605 -(% style="color:#000000" %)«id»: «», //ID типа датчика «name»: «», //Название 2489 +[ 2490 + { 2491 + "start": "2023-08-09T14:27:44.773Z", ~/~/ Начало периода 2492 + "end": "2023-08-09T14:27:44.773Z", ~/~/ Окончание периода 2493 + "vehicleId": 0, ~/~/ ID объекта 2494 + "name": "string", ~/~/ Имя объекта 2495 + "model": "string", ~/~/ Модель объекта 2496 + "fuels": [ ~/~/ Массив данным по заправкам и сливам 2497 + { 2498 + "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив 2499 + "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало 2500 + "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание 2501 + "valueFuel": 0, ~/~/ Количество 2502 + "fuelStart": 0, ~/~/ Уровень топлива на начало события 2503 + "fuelEnd": 0 ~/~/ Уровень топливо на конец события 2504 + } 2505 + ] 2506 + } 2507 +] 606 606 607 -(% class="western" %) 608 -{{{ "description": "" // Описание 609 - },}}} 610 610 2510 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) == 2511 + 2512 +(% class="box infomessage" %) 2513 +((( 2514 +**POST /api/v3/vehicles/moveStop** 2515 +))) 2516 + 2517 +Метод запроса: **POST** 2518 + 2519 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop 2520 + 2521 +В заголовках запроса: X-Auth: Токен авторизации 2522 + 2523 + 2524 +Тело запроса: 2525 + 2526 +{ 2527 + "vehicleIds": [ ], ~/~/ Список ID объектов 2528 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2529 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2530 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2531 +} 2532 + 2533 +Ответ: 2534 + 2535 +[ 2536 + { 2537 + "vehicleId": 0, ~/~/ ID объекта 2538 + "vehicleName": "string", ~/~/ Имя объекта 2539 + "moves": [ ~/~/ Событие движения 2540 + { 2541 + "mileage": 0, ~/~/ Пробег, км 2542 + "eventId": 0, ~/~/ Идентификатор события 2543 + "eventName": "string", ~/~/ Название события 2544 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2545 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2546 + "duration": 0 ~/~/ Продолжительность события, секунд 2547 + } 2548 + ], 2549 + "stops": [ ~/~/ События стоянок 2550 + { 2551 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2552 + "eventId": 0, ~/~/ Идентификатор события 2553 + "eventName": "string", ~/~/ Название события 2554 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2555 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2556 + "duration": 0 ~/~/ Продолжительность события, секунд 2557 + } 2558 + ] 2559 + } 2560 +] 2561 + 2562 + 2563 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2564 + 2565 +(% class="box infomessage" %) 2566 +((( 2567 +**POST /api/v3/vehicles/getlastdata** 2568 +))) 2569 + 2570 +Метод запроса: **POST** 2571 + 2572 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata 2573 + 2574 +В заголовках запроса: X-Auth: Токен авторизации 2575 + 2576 + 2577 +В теле запроса перечисляете массив id объектов, в квадратных скобках через запятую. 2578 + 2579 +Ответ: 2580 + { 2581 + "vehicleId": 0, ~/~/Идентификатор объекта. 2582 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификатор объекта. 2583 + "vehicleNumber": "string",~/~/Номер объекта. 2584 + "receiveTime": "2024-02-27T14:11:00.315Z",~/~/Время получения записи на сервере, т.е. время срабатывания + время передачи от устройства на сервер 2585 + "recordTime": "2024-02-27T14:11:00.315Z",~/~/Время записи от устройства, т.е. время фактического события на транспортном средстве. 2586 + "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2587 + "speed": 0,~/~/Скорость объекта. 2588 + "course": 0,~/~/Курс движения [0;360] 2589 + "latitude": 0,~/~/Широта [-90°;90°]. 2590 + "longitude": 0,~/~/Долгота [-180°;180°]. 2591 + "address": "string",~/~/Адрес. 2592 + "geozones": [ ~/~/Сведения по геозонам. 2593 + { 2594 + "id": 0, 2595 + "name": "string" 2596 + } 2597 + 2598 + 2599 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2600 + 2601 +== (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == 2602 + 2603 +(% class="box infomessage" %) 2604 +((( 2605 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/find** 2606 +))) 2607 + 2608 +(% style="color:#000000" %)Метод позволяет получить список геообъектов клиента. Возвращает массив геообъектов со всей информацией о них. 2609 + 2610 +(% style="color:#000000" %)Метод запроса: **POST** 2611 + 2612 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/find 2613 + 2614 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2615 + 611 611 (% style="text-align:left" %) 612 - (%style="color:#000000" %)… ]2617 +Тело запроса: 613 613 2619 +(% style="text-align:left" %) 2620 +{ 2621 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2622 +} 614 614 2624 +(% style="text-align:left" %) 2625 +Ответ: 2626 + 2627 +[ 2628 + { 2629 + "id": 0, ~/~/ Идентификатор объекта геозоны 2630 + "name": "string", ~/~/ Название объекта геозоны 2631 + "type": 0, ~/~/ Тип объекта геозоны 2632 + "fname": "string", ~/~/ Имя файла 2633 + "parentId": "string", ~/~/ Идентификатор клиента 2634 + "radius": 0, ~/~/ Радиус геообъекта 2635 + "beginCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата начала расчета 2636 + "endCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата окончания расчета 2637 + "description": "string", ~/~/ Описание 2638 + "area": 0, ~/~/ Площадь, м^^2^^ 2639 + "perimetr": 0, ~/~/ Периметр, м 2640 + "createDate": "2023-08-01T07:54:54.893Z", ~/~/ Дата создания 2641 + } 2642 +] 2643 + 2644 +== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по объектам**(%%) == 2645 + 2646 +(% class="box infomessage" %) 2647 +((( 2648 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/vehicles** 2649 +))) 2650 + 2651 +(% style="color:#000000" %)Метод позволяет получить список пересечений выбранных объектов со всеми геообъектами за выбранный период. 2652 + 2653 +(% style="color:#000000" %)Метод запроса: **POST** 2654 + 2655 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/vehicles 2656 + 2657 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2658 + 2659 +(% style="text-align:left" %) 2660 +Тело запроса: 2661 + 2662 +{ 2663 + "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса 2664 + "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания 2665 + "ids": [ ], ~/~/ Массив id объектов 2666 + "byTime": 0, ~/~/ Объединение событий по времени 2667 + "byDist": 0, ~/~/ Объединение событий по расстоянию 2668 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 2669 + "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра 2670 +} 2671 + 2672 +Ответ: 2673 +[ 2674 + { 2675 + "geozoneId": 0, ~/~/ ID геообъекта 2676 + "geozoneName": "string", ~/~/ Название геообъекта 2677 + "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда 2678 + "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда 2679 + "duration": 0, ~/~/ Продолжительность нахождения в геообъекте 2680 + "vehicleId": 0, ~/~/ ID объекта 2681 + "vehicleName": "string" ~/~/ Имя объекта 2682 + } 2683 +] 2684 + 2685 +== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по геообъектам**(%%) == 2686 + 2687 +(% class="box infomessage" %) 2688 +((( 2689 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/geozones** 2690 +))) 2691 + 2692 +(% style="color:#000000" %)Метод позволяет получить список пересечений выбранных геообъектов со всеми объектами за выбранный период. 2693 + 2694 +(% style="color:#000000" %)Метод запроса: **POST** 2695 + 2696 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/geozones 2697 + 2698 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2699 + 2700 +(% style="text-align:left" %) 2701 +Тело запроса: 2702 + 2703 +{ 2704 + "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса 2705 + "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания 2706 + "ids": [ ], ~/~/ Массив id геообъектов 2707 + "byTime": 0, ~/~/ Объединение событий по времени 2708 + "byDist": 0, ~/~/ Объединение событий по расстоянию 2709 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 2710 + "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра 2711 +} 2712 + 2713 +Ответ: 2714 + 2715 +[ 2716 + { 2717 + "geozoneId": 0, ~/~/ ID геообъекта 2718 + "geozoneName": "string", ~/~/ Название геообъекта 2719 + "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда 2720 + "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда 2721 + "duration": 0, ~/~/ Продолжительность нахождения в геообъекте 2722 + "vehicleId": 0, ~/~/ ID объекта 2723 + "vehicleName": "string" ~/~/ Имя объекта 2724 + } 2725 +] 2726 + 2727 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) = 2728 + 2729 +== (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) == 2730 + 2731 +(% class="box infomessage" %) 2732 +((( 2733 +**POST /api/v3/notifications/find** 2734 +))) 2735 + 2736 +Метод возвращает информацию об уведомлениях переданного клиента и его клиентов ниже по иерархии. 2737 + 2738 +(% style="text-align: left;" %) 2739 +Метод запроса **POST** 2740 + 2741 +(% style="text-align: left;" %) 2742 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/notifications/find 2743 + 2744 +(% style="text-align: left;" %) 2745 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2746 + 2747 +{ 2748 + "parentId": "" ~/~/ id клиента 2749 +} 2750 + 2751 +Ответ: 2752 + 2753 +[ 2754 + { 2755 + "id": 0, ~/~/ ID уведомления 2756 + "name": "string", ~/~/ Название уведомления 2757 + "active": true, ~/~/ Состояние true - активен, false - деактивирован 2758 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО 2759 + "userId": "", ~/~/ Пользователь, создавший уведомление 2760 + "parentId": "", ~/~/ Идентификатор клиента 2761 + "parentName": "string" ~/~/ Имя клиента 2762 + } 2763 +] 2764 + 2765 +== (% style="color:#000000; font-size:16px" %)**Запрос настроек уведомления**(%%) == 2766 + 2767 +(% class="box infomessage" %) 2768 +((( 2769 +**GET /api/v3/notifications/{id}** 2770 +))) 2771 + 2772 +Метод возвращает данные правил формирования выбранного уведомления. 2773 + 2774 +(% style="text-align: left;" %) 2775 +Метод запроса **GET** 2776 + 2777 +(% style="text-align: left;" %) 2778 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/notifications/{id} 2779 + 2780 +(% style="text-align: left;" %) 2781 +(% style="color:#000000" %)Параметр запроса: {**__id__**} - (%%)id уведомления 2782 + 2783 +(% style="text-align: left;" %) 2784 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2785 + 2786 +(% style="text-align: left;" %) 2787 +(% style="color:#000000" %)Ответ: 2788 + 2789 +(% style="text-align: left;" %) 2790 +(% style="color:#000000" %){ 2791 + "id": 0, ~/~/ (%%)id уведомления 2792 +(% style="color:#000000" %) "type": 0, (%%)~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО 2793 +(% style="color:#000000" %) "userId": "", /(%%)/ Пользователь, создавший уведомление 2794 +(% style="color:#000000" %) "parentId": "", (%%)~/~/ Идентификатор клиента 2795 +(% style="color:#000000" %) "parentName": "string", (%%)~/~/ Имя клиента 2796 +(% style="color:#000000" %) "name": "string", (%%)~/~/ Название уведомления 2797 +(% style="color:#000000" %) "active": true, (%%)~/~/ Состояние true - активен, false - деактивирован 2798 +(% style="color:#000000" %) "vehicleIds": [ ~/~/ (%%)Список id объектов для анализа 2799 +(% style="color:#000000" %) 0 2800 + ], 2801 + "geoids": [ ~/~/ (%%)Список id геообъектов для анализа 2802 +(% style="color:#000000" %) 0 2803 + ], 2804 + "fieldids": [ ~/~/ (%%)Список id полей для анализа 2805 +(% style="color:#000000" %) 0 2806 + ], 2807 + "settings": { ~/~/ Список параметров уведомления 2808 + "additionalProp1": "string", 2809 + "additionalProp2": "string", 2810 + "additionalProp3": "string" 2811 + }, 2812 + "toEmail": true, ~/~/ (%%)Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2813 +(% style="color:#000000" %) "recipientIds": [ ~/~/ (%%)Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2814 +(% style="color:#000000" %) "" 2815 + ], 2816 + "enableSideEmails": true, ~/~/ (%%)Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2817 +(% style="color:#000000" %) "sideEmails": [ ~/~/ (%%)Список электронных адресов для отсылки уведомлений 2818 +(% style="color:#000000" %) "string" 2819 + ], 2820 + "toTelegram": true, ~/~/ (%%)Флаг активности отправки в Telegram 2821 +(% style="color:#000000" %) "telegrams": [ ~/~/ (%%)Список получателя уведомлений в Telegram. 2822 +(% style="color:#000000" %) { 2823 + "id": 0, ~/~/ (%%)Идентификатор участника чата 2824 +(% style="color:#000000" %) "info": "string" ~/~/ (%%)Дополнительные сведения 2825 +(% style="color:#000000" %) } 2826 + ], 2827 + "toMobile": true, ~/~/ (%%)Флаг активности отправки в мобильное приложение 2828 +(% style="color:#000000" %) "toClient": true, ~/~/ (%%)Флаг активности отправки в интерфейсе системы 2829 +(% style="color:#000000" %) "stored": true, ~/~/ (%%)Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2830 +(% style="color:#000000" %) "kind": 0, ~/~/ (%%)Определяет вид уведомления 2831 +(% style="color:#000000" %) "activationMode": 0, ~/~/ (%%)Вид активации уведомления 0 - Сейчас, 1 - В определенную дату и время 2832 +(% style="color:#000000" %) "activationTime": "2023-03-29T09:57:48.932Z", ~/~/ (%%)Дата/время активации правила (UTC) 2833 +(% style="color:#000000" %) "timezone": 0, ~/~/ (%%)Сдвиг часового пояса 2834 +(% style="color:#000000" %) "validity": 0, ~/~/ (%%)Срок действия в днях (1-90) 2835 +(% style="color:#000000" %) "autoProlongation": true ~/~/ (%%)Автопродление срока действия 2836 +(% style="color:#000000" %)} 2837 + 2838 +== (% style="color:#000000; font-size:16px" %)**Редактирование уведомления**(%%) == 2839 + 2840 +(% class="box warningmessage" %) 2841 +((( 2842 +**PUT /api/v3/notifications/** 2843 +))) 2844 + 2845 +Метод позволяет отредактировать уведомление. 2846 + 2847 +Метод запроса **PUT** 2848 + 2849 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications 2850 + 2851 +В заголовках запроса: X-Auth: Токен авторизации 2852 + 2853 +Тело запроса: 2854 +{ 2855 + "id": 0, ~/~/ id уведомления 2856 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО 2857 + "userId": "", ~/~/ Пользователь, создавший уведомление 2858 + "parentId": "", ~/~/ Идентификатор клиента 2859 + "parentName": "string", ~/~/ Имя клиента 2860 + "name": "string", ~/~/ Название уведомления 2861 + "active": true, ~/~/ Состояние true - активен, false - деактивирован 2862 + "vehicleIds": [ ~/~/ Список id объектов для анализа 2863 + 0 2864 + ], 2865 + "geoids": [ ~/~/ Список id геообъектов для анализа 2866 + 0 2867 + ], 2868 + "fieldids": [ ~/~/ Список id полей для анализа 2869 + 0 2870 + ], 2871 + "settings": { ~/~/ Список параметров уведомления 2872 + "additionalProp1": "string", 2873 + "additionalProp2": "string", 2874 + "additionalProp3": "string" 2875 + }, 2876 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2877 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2878 + "" 2879 + ], 2880 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2881 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2882 + "string" 2883 + ], 2884 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2885 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2886 + { 2887 + "id": 0, ~/~/ Идентификатор участника чата 2888 + "info": "string" ~/~/ Дополнительные сведения 2889 + } 2890 + ], 2891 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2892 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2893 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2894 + "kind": 0, ~/~/ Определяет вид уведомления 2895 + "activationMode": 0, ~/~/ Вид активации уведомления 0 - Сейчас, 1 - В определенную дату и время 2896 + "activationTime": "2023-03-29T09:57:48.932Z", ~/~/ Дата и время активации правила (UTC) 2897 + "timezone": 0, ~/~/ Сдвиг часового пояса 2898 + "validity": 0, ~/~/ Срок действия в днях (1-90) 2899 + "autoProlongation": true ~/~/ Автопродление срока действия 2900 +} 2901 + 2902 +Ответ: 2903 + 2904 +Success 2905 + 2906 + 2907 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2908 + 2909 +(% class="box warningmessage" %) 2910 +((( 2911 +**PUT** /api/v3/notifications/prolongation 2912 +))) 2913 + 2914 +Метод позволяет продлить уведомления. 2915 + 2916 +Метод запроса **PUT** 2917 + 2918 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 2919 + 2920 +В заголовках запроса: X-Auth: Токен авторизации. 2921 + 2922 +Тело запроса: 2923 + 2924 +[ 2925 + 2926 +0 2927 + 2928 +] 2929 + 2930 +где 0 идентификатор ids. 2931 + 2932 +== (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2933 + 2934 +(% class="box errormessage" %) 2935 +((( 2936 +**DELETE /api/v3/notifications/{id}** 2937 +))) 2938 + 2939 +Метод позволяет удалить выбранное уведомление. 2940 + 2941 +Метод запроса **DELETE** 2942 + 2943 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/{id} 2944 + 2945 +Передаваемый параметр: {id} - id уведомления 2946 + 2947 +В заголовках запроса: X-Auth: Токен авторизации 2948 + 2949 +Ответ: 2950 + 2951 +Success 2952 + 2953 + 2954 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Водители**(%%) = 2955 + 2956 +== (% style="color:#000000; font-size:16px" %)**Получить список водителей клиента**(%%) == 2957 + 2958 +(% class="box infomessage" %) 2959 +((( 2960 +**POST /api/v3/Drivers/find** 2961 +))) 2962 + 2963 +Передается параметр: parentId - ID клиента-родителя 2964 + 2965 +Ответ: 2966 + 2967 +[ 2968 + { 2969 + "name": "string", ~/~/ Определяет наименование 2970 + "description": "string", ~/~/ Определяет описание 2971 + "hiredate": "2023-06-30T09:37:58.407Z", ~/~/ Определяет дату найма 2972 + "chopdate": "2023-06-30T09:37:58.407Z", ~/~/ Определяет дату увольнения 2973 + "exclusive": true, ~/~/ Определяет признак "Исключительный" 2974 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID водителя 2975 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 2976 + "deleted": true ~/~/ Признак удаления 2977 + } 2978 +] 2979 + 2980 +== (% style="color:#000000; font-size:16px" %)**Получить данные о водителе**(%%) == 2981 + 2982 +(% class="box infomessage" %) 2983 +((( 2984 +**GET /api/v3/Drivers/{driverGuid}** 2985 +))) 2986 + 2987 +Передается параметр: ID водителя 2988 + 2989 +Ответ: 2990 + 2991 +{ 2992 + "name": "string", ~/~/ Определяет наименование 2993 + "description": "string", ~/~/ Определяет описание 2994 + "hiredate": "2023-06-30T09:33:33.083Z", ~/~/ Определяет дату найма 2995 + "chopdate": "2023-06-30T09:33:33.083Z", ~/~/ Определяет дату увольнения 2996 + "exclusive": true, ~/~/ Определяет признак "Исключительный" 2997 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID водителя 2998 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 2999 + "deleted": true ~/~/ Признак удаления 3000 +} 3001 + 3002 +== (% style="color:#000000; font-size:16px" %)**Добавить водителя**(%%) == 3003 + 3004 +(% class="box successmessage" %) 3005 +((( 3006 +**POST /api/v3/Drivers** 3007 +))) 3008 + 3009 +Запрос: 3010 + 3011 +{ 3012 + "name": "string", 3013 + "description": "string", 3014 + "hiredate": "2023-06-30T12:50:54.020Z", 3015 + "chopdate": "2023-06-30T12:50:54.020Z", 3016 + "exclusive": true, 3017 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3018 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3019 + "deleted": true 3020 +} 3021 + 3022 +Ответ: 3023 + 3024 +{ 3025 + "name": "string", 3026 + "description": "string", 3027 + "hiredate": "2023-06-30T12:50:54.051Z", 3028 + "chopdate": "2023-06-30T12:50:54.051Z", 3029 + "exclusive": true, 3030 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3031 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3032 + "deleted": true 3033 +} 3034 + 3035 + 3036 +== (% style="color:#000000; font-size:16px" %)**Редактировать водителя**(%%) == 3037 + 3038 +(% class="box warningmessage" %) 3039 +((( 3040 +**PUT /api/v3/Drivers** 3041 +))) 3042 + 3043 +Запрос: 3044 + 3045 +{ 3046 + "name": "string", 3047 + "description": "string", 3048 + "hiredate": "2023-06-30T12:50:27.910Z", 3049 + "chopdate": "2023-06-30T12:50:27.910Z", 3050 + "exclusive": true, 3051 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3052 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3053 + "deleted": true 3054 +} 3055 + 3056 +Ответ: 3057 + 3058 +{ 3059 + "name": "string", 3060 + "description": "string", 3061 + "hiredate": "2023-06-30T12:50:27.929Z", 3062 + "chopdate": "2023-06-30T12:50:27.929Z", 3063 + "exclusive": true, 3064 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3065 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3066 + "deleted": true 3067 +} 3068 + 3069 + 3070 +== (% style="color:#000000; font-size:16px" %)**Удалить водителя**(%%) == 3071 + 3072 +(% class="box errormessage" %) 3073 +((( 3074 +**DELETE /api/v3/Drivers/{driverGuid}** 3075 +))) 3076 + 3077 +Передается параметр: ID водителя 3078 + 3079 +Ответ: 3080 + 3081 +Success 3082 + 3083 + 3084 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Журнал назначений**(%%) = 3085 + 3086 +== (% style="color:#000000; font-size:18.6667px" %)**Назначение водителя на объект**(%%) == 3087 + 3088 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения водителей запросом к водителю**(%%) === 3089 + 3090 +(% class="box infomessage" %) 3091 +((( 3092 +**POST /api/v3/DriversVehiclesAssignments/GetByDrivers** 3093 +))) 3094 + 3095 +Запрос: 3096 + 3097 +{ 3098 + "Ids": [ 3099 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3100 + ], 3101 + "BeginTime": "2023-06-30T12:49:04.365Z", 3102 + "EndTime": "2023-06-30T12:49:04.365Z" 3103 +} 3104 + 3105 +Ответ: 3106 + 3107 +[ 3108 + { 3109 + "VehicleId": 0, 3110 + "CreateTime": "2023-06-30T09:52:31.240Z", 3111 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3112 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3113 + "BeginTime": "2023-06-30T09:52:31.240Z", 3114 + "EndTime": "2023-06-30T09:52:31.240Z" 3115 + } 3116 +] 3117 + 3118 + 3119 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения водителей запросом к объекту**(%%) === 3120 + 3121 +(% class="box infomessage" %) 3122 +((( 3123 +**POST /api/v3/DriversVehiclesAssignments/GetByVehicles** 3124 +))) 3125 + 3126 +Запрос: 3127 + 3128 +{ 3129 + "Ids": [ 3130 + 0 3131 + ], 3132 + "BeginTime": "2023-06-30T12:48:39.419Z", 3133 + "EndTime": "2023-06-30T12:48:39.419Z" 3134 +} 3135 + 3136 +Ответ: 3137 + 3138 +[ 3139 + { 3140 + "VehicleId": 0, 3141 + "CreateTime": "2023-06-30T09:54:01.631Z", 3142 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3143 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3144 + "BeginTime": "2023-06-30T09:54:01.631Z", 3145 + "EndTime": "2023-06-30T09:54:01.631Z" 3146 + } 3147 +] 3148 + 3149 + 3150 +=== (% style="color:#000000; font-size:16px" %)**Создать назначение водителя на объект**(%%) === 3151 + 3152 +(% class="box successmessage" %) 3153 +((( 3154 +**POST /api/v3/DriversVehiclesAssignments** 3155 +))) 3156 + 3157 +Передается массив назначений 3158 + 3159 +Запрос: 3160 + 3161 +[ 3162 + { 3163 + "VehicleId": 0, ~/~/ Идентификатор объекта 3164 + "CreateTime": "2023-06-30T11:04:46.902Z", ~/~/ Момент времени создания назначения 3165 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 3166 + "BeginTime": "2023-06-30T11:04:46.902Z", ~/~/ Момент времени начала назначения 3167 + "EndTime": "2023-06-30T11:04:46.902Z" ~/~/ Момент времени окончания назначения. Необязательно. 3168 + } 3169 +] 3170 + 3171 +Ответ: 3172 + 3173 +[ 3174 + { 3175 + "VehicleId": 0, 3176 + "CreateTime": "2023-06-30T11:04:46.903Z", 3177 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3178 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3179 + "BeginTime": "2023-06-30T11:04:46.903Z", 3180 + "EndTime": "2023-06-30T11:04:46.903Z" 3181 + } 3182 +] 3183 + 3184 + 3185 +=== (% style="color:#000000; font-size:16px" %)**Изменить назначения водителей на объекты**(%%) === 3186 + 3187 +(% class="box warningmessage" %) 3188 +((( 3189 +**PUT /api/v3/DriversVehiclesAssignments** 3190 +))) 3191 + 3192 +Запрос: 3193 + 3194 +[ 3195 + { 3196 + "VehicleId": 0, 3197 + "CreateTime": "2023-06-30T11:14:08.117Z", 3198 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения 3199 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3200 + "BeginTime": "2023-06-30T11:14:08.117Z", 3201 + "EndTime": "2023-06-30T11:14:08.117Z" 3202 + } 3203 +] 3204 + 3205 +Ответ: 3206 + 3207 +[ 3208 + { 3209 + "VehicleId": 0, 3210 + "CreateTime": "2023-06-30T11:14:53.349Z", 3211 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3212 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3213 + "BeginTime": "2023-06-30T11:14:53.349Z", 3214 + "EndTime": "2023-06-30T11:14:53.349Z" 3215 + } 3216 +] 3217 + 3218 + 3219 +=== (% style="color:#000000; font-size:16px" %)**Удалить назначения водителей на объекты**(%%) === 3220 + 3221 +(% class="box errormessage" %) 3222 +((( 3223 +**DELETE /api/v3/DriversVehiclesAssignments** 3224 +))) 3225 + 3226 +Запрос: 3227 + 3228 +[ 3229 + "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3230 +] 3231 + 3232 +Ответ: 3233 + 3234 +Success 3235 + 3236 + 3237 +== (% style="color:#000000; font-size:18.6667px" %)**Назначение карты-метки водителю**(%%) == 3238 + 3239 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения меток запросом к водителю**(%%) === 3240 + 3241 +(% class="box infomessage" %) 3242 +((( 3243 +**POST /api/v3/DriversRfidsAssignments/GetByDrivers** 3244 +))) 3245 + 3246 +Запрос: 3247 + 3248 +{ 3249 + "Ids": [ 3250 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3251 + ], 3252 + "BeginTime": "2023-06-30T12:47:12.162Z", 3253 + "EndTime": "2023-06-30T12:47:12.162Z" 3254 +} 3255 + 3256 +Ответ: 3257 + 3258 +[ 3259 + { 3260 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор метки 3261 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения 3262 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 3263 + "BeginTime": "2023-06-30T11:19:40.703Z", 3264 + "EndTime": "2023-06-30T11:19:40.703Z" 3265 + } 3266 +] 3267 + 3268 + 3269 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения меток запросом к карте-метке**(%%) === 3270 + 3271 +(% class="box infomessage" %) 3272 +((( 3273 +**POST /api/v3/DriversRfidsAssignments/GetByRfids** 3274 +))) 3275 + 3276 +Запрос: 3277 + 3278 +{ 3279 + "Ids": [ 3280 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3281 + ], 3282 + "BeginTime": "2023-06-30T12:47:12.162Z", 3283 + "EndTime": "2023-06-30T12:47:12.162Z" 3284 +} 3285 + 3286 +Ответ: 3287 + 3288 +[ 3289 + { 3290 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор метки 3291 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения 3292 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 3293 + "BeginTime": "2023-06-30T11:19:40.703Z", 3294 + "EndTime": "2023-06-30T11:19:40.703Z" 3295 + } 3296 +] 3297 + 3298 + 3299 +=== (% style="color:#000000; font-size:16px" %)**Добавить назначения меток на водителей**(%%) === 3300 + 3301 +(% class="box successmessage" %) 3302 +((( 3303 +**POST /api/v3/DriversRfidsAssignments** 3304 +))) 3305 + 3306 +Запрос: 3307 + 3308 +[ 3309 + { 3310 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3311 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3312 + "BeginTime": "2023-06-30T11:27:08.635Z", 3313 + "EndTime": "2023-06-30T11:27:08.635Z" 3314 + } 3315 +] 3316 + 3317 +Ответ: 3318 + 3319 +[ 3320 + { 3321 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3322 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3323 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3324 + "BeginTime": "2023-06-30T11:27:08.677Z", 3325 + "EndTime": "2023-06-30T11:27:08.677Z" 3326 + } 3327 +] 3328 + 3329 + 3330 +=== (% style="color:#000000; font-size:16px" %)**Изменить назначения меток на водителей**(%%) === 3331 + 3332 +(% class="box warningmessage" %) 3333 +((( 3334 +**PUT /api/v3/DriversRfidsAssignments** 3335 +))) 3336 + 3337 +Запрос: 3338 + 3339 +[ 3340 + { 3341 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3342 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3343 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3344 + "BeginTime": "2023-06-30T11:28:43.330Z", 3345 + "EndTime": "2023-06-30T11:28:43.330Z" 3346 + } 3347 +] 3348 + 3349 +Ответ: 3350 + 3351 +[ 3352 + { 3353 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3354 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3355 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3356 + "BeginTime": "2023-06-30T11:28:43.331Z", 3357 + "EndTime": "2023-06-30T11:28:43.331Z" 3358 + } 3359 +] 3360 + 3361 + 3362 +=== (% style="color:#000000; font-size:16px" %)**Удалить назначения меток на водителей**(%%) === 3363 + 3364 +(% class="box errormessage" %) 3365 +((( 3366 +**DELETE /api/v3/DriversRfidsAssignments** 3367 +))) 3368 + 3369 +Запрос: 3370 + 3371 +[ 3372 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3373 +] 3374 + 3375 +Ответ: 3376 + 3377 +Success 3378 + 3379 + 3380 +== (% style="color:#000000; font-size:18.6667px" %)**Назначение топливной карты водителю**(%%) == 3381 + 3382 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения топливных карт запросом к водителю**(%%) === 3383 + 3384 +(% class="box infomessage" %) 3385 +((( 3386 +**POST /api/v3/DriversFuelCardsAssignments/GetByDrivers** 3387 +))) 3388 + 3389 +Запрос: 3390 + 3391 +{ 3392 + "Ids": [ 3393 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3394 + ], 3395 + "BeginTime": "2023-06-30T12:45:10.852Z", 3396 + "EndTime": "2023-06-30T12:45:10.852Z" 3397 +} 3398 + 3399 +Ответ: 3400 + 3401 +[ 3402 + { 3403 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3404 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3405 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3406 + "BeginTime": "2023-06-30T11:58:04.695Z", 3407 + "EndTime": "2023-06-30T11:58:04.695Z" 3408 + } 3409 +] 3410 + 3411 + 3412 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения топливных карт запросом к топливной карте**(%%) === 3413 + 3414 +(% class="box infomessage" %) 3415 +((( 3416 +**POST /api/v3/DriversFuelCardsAssignments/GetByCards** 3417 +))) 3418 + 3419 +Запрос: 3420 + 3421 +{ 3422 + "Ids": [ 3423 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3424 + ], 3425 + "BeginTime": "2023-06-30T12:45:10.852Z", 3426 + "EndTime": "2023-06-30T12:45:10.852Z" 3427 +} 3428 + 3429 +Ответ: 3430 + 3431 +[ 3432 + { 3433 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3434 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3435 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3436 + "BeginTime": "2023-06-30T11:58:04.695Z", 3437 + "EndTime": "2023-06-30T11:58:04.695Z" 3438 + } 3439 +] 3440 + 3441 + 3442 +=== (% style="color:#000000; font-size:16px" %)**Добавить назначение топливной карты водителю**(%%) === 3443 + 3444 +(% class="box successmessage" %) 3445 +((( 3446 +**POST /api/v3/DriversFuelCardsAssignments** 3447 +))) 3448 + 3449 +Запрос: 3450 + 3451 +[ 3452 + { 3453 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3454 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3455 + "BeginTime": "2023-06-30T12:09:53.175Z", 3456 + "EndTime": "2023-06-30T12:09:53.175Z" 3457 + } 3458 +] 3459 + 3460 +Ответ: 3461 + 3462 +[ 3463 + { 3464 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3465 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3466 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3467 + "BeginTime": "2023-06-30T12:09:53.201Z", 3468 + "EndTime": "2023-06-30T12:09:53.201Z" 3469 + } 3470 +] 3471 + 3472 + 3473 +=== (% style="color:#000000; font-size:16px" %)**Редактировать назначение топливной карты водителю**(%%) === 3474 + 3475 +(% class="box warningmessage" %) 3476 +((( 3477 +**PUT /api/v3/DriversFuelCardsAssignments** 3478 +))) 3479 + 3480 +Запрос: 3481 + 3482 +[ 3483 + { 3484 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3485 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3486 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3487 + "BeginTime": "2023-06-30T12:09:53.201Z", 3488 + "EndTime": "2023-06-30T12:09:53.201Z" 3489 + } 3490 +] 3491 + 3492 +Ответ: 3493 + 3494 +[ 3495 + { 3496 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3497 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3498 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3499 + "BeginTime": "2023-06-30T12:09:53.201Z", 3500 + "EndTime": "2023-06-30T12:09:53.201Z" 3501 + } 3502 +] 3503 + 3504 + 3505 +=== (% style="color:#000000; font-size:16px" %)**Удалить назначение топливной карты водителю**(%%) === 3506 + 3507 +(% class="box errormessage" %) 3508 +((( 3509 +**DELETE /api/v3/DriversFuelCardsAssignments** 3510 +))) 3511 + 3512 +Запрос: 3513 + 3514 +[ 3515 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3516 +] 3517 + 3518 +Ответ: 3519 + 3520 +Success 3521 + 3522 + 3523 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Назначения агрегатов**(%%) = 3524 + 3525 +== (% style="color:#000000; font-size:16px" %)**Получить список назначений агрегатов на выбранные объекты**(%%) == 3526 + 3527 +(% class="box infomessage" %) 3528 +((( 3529 +**POST /api/v3/Trailers** 3530 +))) 3531 + 3532 +Пример запроса: 3533 + 3534 +{ 3535 + "startDate": "2023-11-14T10:48:03.671Z", 3536 + "endDate": "2023-11-14T10:48:03.671Z", 3537 + "ids": [ 0 ], 3538 + "timezone": 0 3539 +} 3540 + 3541 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3542 +|(% style="width:215px" %)startDate|(% style="width:861px" %)Дата и время начала запроса 3543 +|(% style="width:215px" %)endDate|(% style="width:861px" %)Дата и время окончания запроса 3544 +|(% style="width:215px" %)ids|(% style="width:861px" %)Массив ID объектов 3545 +|(% style="width:215px" %)timezone|(% style="width:861px" %)Часовой пояс, по умолчанию UTC. 3546 + 3547 +Пример ответа: 3548 + 3549 +[ 3550 + { 3551 + "SD": "2023-11-14T10:48:03.717Z", 3552 + "ED": "2023-11-14T10:48:03.717Z", 3553 + "id": 0, 3554 + "SLat": 0, 3555 + "SLon": 0, 3556 + "ELat": 0, 3557 + "ELon": 0, 3558 + "mileage": 0 3559 + "Duration": 0 3560 + "Address": "string", 3561 + "Address2": "string", 3562 + "name": "string", 3563 + "rid": "string", 3564 + "rguid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3565 + "trailer": { 3566 + "ModelGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3567 + "Number": "string", 3568 + "Description": "string", 3569 + "OwnerGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3570 + "ExternalID": "string", 3571 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3572 + "CreateTime": "2023-11-14T10:48:03.717Z", 3573 + "UpdateTime": "2023-11-14T10:48:03.717Z", 3574 + "IsDeleted": true 3575 + }, 3576 + "filesCount": 0, 3577 + } 3578 +] 3579 + 3580 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3581 +|SD|Дата и время начала события 3582 +|ED|Дата и время окончания события 3583 +|id|ID объекта 3584 +|SLat|Широта начальной координаты 3585 +|SLon|Долгота начальной координаты 3586 +|ELat|Широта конечной координаты 3587 +|ELon|Долгота конечной координаты 3588 +|mileage|Пробег 3589 +|Duration|Продолжительность 3590 +|Address|Адрес начального местоположения 3591 +|Address2|Адрес конечного местоположения 3592 +|name|Имя радиометки 3593 +|rid|Номер радиометки 3594 +|rguid|ID радиометки 3595 +|trailer|Информация об агрегате 3596 +|ModelGuid|ID агрегата 3597 +|Number|Название/номер агрегата 3598 +|Description|Текст примечания агрегата 3599 + 3600 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Карты-метки**(%%) = 3601 + 3602 +== (% style="color:#000000; font-size:16px" %)**Получить список карт-меток определенного клиента**(%%) == 3603 + 3604 +(% class="box infomessage" %) 3605 +((( 3606 +**POST /api/v3/Rfids/find** 3607 +))) 3608 + 3609 +Запрос: 3610 + 3611 +{ 3612 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3613 +} 3614 + 3615 +Ответ: 3616 + 3617 +[ 3618 + { 3619 + "name": "string", 3620 + "number": 0, 3621 + "period": 0, 3622 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3623 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3624 + } 3625 +] 3626 + 3627 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3628 +|parentId|ID клиента 3629 +|name|Название карты-метки 3630 +|number|Номер 3631 +|period|Период запросов в секундах (работает только для агрегатов) 3632 +|id|ID карты-метки 3633 + 3634 +== (% style="color:#000000; font-size:16px" %)**Получить данные карты-метки**(%%) == 3635 + 3636 +(% class="box infomessage" %) 3637 +((( 3638 +**GET /api/v3/Rfids/{rfidGuid}** 3639 +))) 3640 + 3641 +Передаем параметр rfidGuid - идентификатор карты-метки 3642 + 3643 +Ответ: 3644 + 3645 +[ 3646 + { 3647 + "name": "string", 3648 + "number": 0, 3649 + "period": 0, 3650 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3651 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3652 + } 3653 +] 3654 + 3655 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3656 +|name|Название карты-метки 3657 +|number|Номер 3658 +|period|Период запросов в секундах (работает только для агрегатов) 3659 +|id|ID карты-метки 3660 +|parentId|ID клиента 3661 + 3662 +== (% style="color:#000000; font-size:16px" %)**Добавить карту-метку**(%%) == 3663 + 3664 +(% class="box successmessage" %) 3665 +((( 3666 +**POST /api/v3/Rfids** 3667 +))) 3668 + 3669 +Запрос: 3670 + 3671 +{ 3672 + "name": "string", 3673 + "number": 0, 3674 + "period": 0, 3675 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3676 +} 3677 + 3678 +Ответ: 3679 + 3680 +{ 3681 + "name": "string", 3682 + "number": 0, 3683 + "period": 0, 3684 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3685 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3686 +} 3687 + 3688 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3689 +|name|Название карты-метки 3690 +|number|Номер 3691 +|period|Период запросов в секундах (работает только для агрегатов) 3692 +|id|ID карты-метки 3693 +|parentId|ID клиента 3694 + 3695 +== (% style="color:#000000; font-size:16px" %)**Редактировать карту-метку**(%%) == 3696 + 3697 +(% class="box warningmessage" %) 3698 +((( 3699 +**PUT /api/v3/Rfids** 3700 +))) 3701 + 3702 +Запрос: 3703 + 3704 +{ 3705 + "name": "string", 3706 + "number": 0, 3707 + "period": 0, 3708 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3709 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3710 +} 3711 + 3712 +Ответ: 3713 + 3714 +{ 3715 + "name": "string", 3716 + "number": 0, 3717 + "period": 0, 3718 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3719 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3720 +} 3721 + 3722 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3723 +|name|Название карты-метки 3724 +|number|Номер 3725 +|period|Период запросов в секундах (работает только для агрегатов) 3726 +|id|ID карты-метки 3727 +|parentId|ID клиента 3728 + 3729 +== (% style="color:#000000; font-size:16px" %)**Удалить карту-метку**(%%) == 3730 + 3731 +(% class="box errormessage" %) 3732 +((( 3733 +**DELETE /api/v3/Rfids/{rfidGuid}** 3734 +))) 3735 + 3736 +Передаем параметр **rfidGuid** - идентификатор карты-метки 3737 + 3738 +Ответ: 3739 + 3740 +Success 3741 + 3742 + 3743 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Биллинг**(%%) = 3744 + 3745 +== (% style="color:#000000; font-size:16px" %)**Узнать баланс клиента**(%%) == 3746 + 3747 +(% class="box infomessage" %) 3748 +((( 3749 +**GET /api/v3/Billing/client/balance/{clientId}** 3750 +))) 3751 + 3752 +Параметр запроса: **clientId **- идентификатор клиента. 3753 + 3754 +Ответ: 3755 + 3756 +{ 3757 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3758 + "Balance": 0 3759 +} 3760 + 3761 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3762 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3763 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 3764 + 3765 +== (% style="color:#000000; font-size:16px" %)**Узнать ограничения клиента**(%%) == 3766 + 3767 +(% class="box infomessage" %) 3768 +((( 3769 +**GET /api/v3/Billing/client/constraint/{clientId}** 3770 +))) 3771 + 3772 +Параметр запроса: **clientId **- идентификатор клиента. 3773 + 3774 +Ответ: 3775 + 3776 +{ 3777 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3778 + "CalculationType": 0, 3779 + "PermissibleBalance": 0, 3780 + "DefermentDays": 0, 3781 + "SendUiNotifications": true, 3782 + "SendEmailNotifications": true, 3783 + "IsPrivate": true, 3784 +} 3785 + 3786 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3787 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3788 +|(% style="width:215px" %)CalculationType|(% style="width:861px" %)Определяет тип расчёта, 0 - Деньги, 1 - Дни 3789 +|(% style="width:215px" %)PermissibleBalance|(% style="width:861px" %)Допустимый баланс 3790 +|(% style="width:215px" %)DefermentDays|(% style="width:861px" %)Отсрочка, количество дней. 3791 +|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено 3792 +|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено 3793 +|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 3794 + 3795 +== (% style="color:#000000; font-size:16px" %)**Узнать состояние тарифного плана клиента**(%%) == 3796 + 3797 +(% class="box infomessage" %) 3798 +((( 3799 +**GET /api/v3/Billing/client/plan/{clientId}** 3800 +))) 3801 + 3802 +Параметры запроса: 3803 + 3804 +**clientId **- идентификатор клиента. 3805 + 3806 +**planId **- идентификатор тарифного плана. 3807 + 3808 +Ответ: 3809 + 3810 +{ 3811 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3812 + "Plan": { **~/~/ Описание тарифного плана** 3813 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3814 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3815 + "Name": "string", 3816 + "IsArchived": true, 3817 + "Constraint": { 3818 + "CalculationType": 0, 3819 + "PermissibleBalance": 0, 3820 + "DefermentDays": 0 3821 + }, 3822 + "Features": [ **~/~/ Описание шаблона услуг тарифного плана** 3823 + { 3824 + "Feature": "string", 3825 + "IsFactual": true, 3826 + "Limit": 0, 3827 + "Price": 0, 3828 + "PeriodValue": 0, 3829 + "PeriodType": 0 3830 + } 3831 + ] 3832 + }, 3833 + "DebitDate": "2023-10-18T12:46:24.213Z", 3834 + "Features": [ **~/~/ Описание услуг тарифного плана как есть** 3835 + { 3836 + "Feature": "string", 3837 + "IsEnabled": true, 3838 + "IsPrivate": true, 3839 + "IsFactual": true, 3840 + "Limit": 0, 3841 + "Price": 0, 3842 + "DebitDate": "2023-10-18T12:46:24.213Z", 3843 + "PeriodValue": 0, 3844 + "PeriodType": 0 3845 + } 3846 + ] 3847 +} 3848 + 3849 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3850 +|ClientId|Идентификатор клиента 3851 +|Id|Идентификатор тарифного плана 3852 +|OwnerId|Идентификатор клиента-владельца 3853 +|Name|Наименование тарифного плана 3854 +|IsArchived|Признак, определяющий архивный тарифный план 3855 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 3856 +|PermissibleBalance|Допустимый баланс 3857 +|DefermentDays|Отсрочка, количество дней 3858 +|Feature|Код услуги 3859 +|IsEnabled|Признак, определяющий активирована ли услуга 3860 +|IsPrivate|Признак, определяющий, являются ли параметры по услуге тарифа частными т.е. персональными для клиента, либо определяются тарифным планом. 3861 +|IsFactual|Признак, определяющий расчёт по факту 3862 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 3863 +|Price|Цена за единицу. 3864 +|DebitDate|Следующий момент времени списания с баланса за услугу. 3865 +|PeriodValue|Значение периода. 3866 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 3867 + 3868 +== (% style="color:#000000; font-size:16px" %)**Получить тарифные планы принадлежащие клиенту**(%%) == 3869 + 3870 +(% class="box infomessage" %) 3871 +((( 3872 +**GET /api/v3/Billing/client/constraint/getowned/{clientId}** 3873 +))) 3874 + 3875 +Параметр запроса: **clientId **- идентификатор клиента. 3876 + 3877 +Ответ: 3878 + 3879 +[ 3880 + { 3881 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3882 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3883 + "Name": "string", 3884 + "IsArchived": true, 3885 + "Constraint": { 3886 + "CalculationType": 0, 3887 + "PermissibleBalance": 0, 3888 + "DefermentDays": 0 3889 + }, 3890 + "Features": [ 3891 + { 3892 + "Feature": "string", 3893 + "IsFactual": true, 3894 + "Limit": 0, 3895 + "Price": 0, 3896 + "PeriodValue": 0, 3897 + "PeriodType": 0 3898 + } 3899 + ] 3900 + } 3901 +] 3902 + 3903 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3904 +|ClientId|Идентификатор клиента 3905 +|Id|Идентификатор тарифного плана 3906 +|OwnerId|Идентификатор клиента-владельца 3907 +|Name|Наименование тарифного плана 3908 +|IsArchived|Признак, определяющий архивный тарифный план 3909 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 3910 +|PermissibleBalance|Допустимый баланс 3911 +|DefermentDays|Отсрочка, количество дней 3912 +|Feature|Код услуги 3913 +|IsFactual|Признак, определяющий расчёт по факту 3914 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 3915 +|Price|Цена за единицу. 3916 +|PeriodValue|Значение периода. 3917 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 3918 + 3919 +== (% style="color:#000000; font-size:16px" %)**Получить список доступных тарифных планов**(%%) == 3920 + 3921 +(% class="box infomessage" %) 3922 +((( 3923 +**GET /api/v3/Billing/client/constraint/getowned/{clientId}** 3924 +))) 3925 + 3926 +Параметр запроса: **clientId **- идентификатор клиента. 3927 + 3928 +Ответ: 3929 + 3930 +[ 3931 + { 3932 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3933 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3934 + "Name": "string", 3935 + "IsArchived": true, 3936 + "Constraint": { 3937 + "CalculationType": 0, 3938 + "PermissibleBalance": 0, 3939 + "DefermentDays": 0 3940 + }, 3941 + "Features": [ 3942 + { 3943 + "Feature": "string", 3944 + "IsFactual": true, 3945 + "Limit": 0, 3946 + "Price": 0, 3947 + "PeriodValue": 0, 3948 + "PeriodType": 0 3949 + } 3950 + ] 3951 + } 3952 +] 3953 + 3954 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3955 +|ClientId|Идентификатор клиента 3956 +|Id|Идентификатор тарифного плана 3957 +|OwnerId|Идентификатор клиента-владельца 3958 +|Name|Наименование тарифного плана 3959 +|IsArchived|Признак, определяющий архивный тарифный план 3960 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 3961 +|PermissibleBalance|Допустимый баланс 3962 +|DefermentDays|Отсрочка, количество дней 3963 +|Feature|Код услуги 3964 +|IsFactual|Признак, определяющий расчёт по факту 3965 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 3966 +|Price|Цена за единицу. 3967 +|PeriodValue|Значение периода. 3968 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 3969 + 3970 +== (% style="color:#000000; font-size:16px" %)**Изменить баланс**(%%) == 3971 + 3972 +(% class="box warningmessage" %) 3973 +((( 3974 +**PUT /api/v3/Billing/client/balance** 3975 +))) 3976 + 3977 +Устанавливает указанное значение баланса не создавая операции пополнение/снятие. 3978 + 3979 +Тело запроса: 3980 + 3981 +{ 3982 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3983 + "Balance": 0 3984 +} 3985 + 3986 +Ответ: Success 3987 + 3988 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3989 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3990 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 3991 + 3992 +== (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) == 3993 + 3994 +(% class="box warningmessage" %) 3995 +((( 3996 +**PUT /api/v3/billing/client/balance/deposit** 3997 +))) 3998 + 3999 +Создает операцию **Пополнение **с указанной суммой 4000 + 4001 +Тело запроса: 4002 + 4003 +{ 4004 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4005 + "Balance": 0 4006 +} 4007 + 4008 +Ответ: Success 4009 + 4010 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4011 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4012 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4013 + 4014 +== (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) == 4015 + 4016 +Создает операцию **Списание **с указанной суммой 4017 + 4018 +(% class="box warningmessage" %) 4019 +((( 4020 +**PUT /api/v3/billing/client/balance/withdraw** 4021 +))) 4022 + 4023 +Тело запроса: 4024 + 4025 +{ 4026 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4027 + "Balance": 0 4028 +} 4029 + 4030 +Ответ: Success 4031 + 4032 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4033 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4034 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4035 + 4036 +== (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) == 4037 + 4038 +(% class="box warningmessage" %) 4039 +((( 4040 +**PUT /api/v3/Billing/client/constraint** 4041 +))) 4042 + 4043 +Тело запроса: 4044 + 4045 +{ 4046 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4047 + "CalculationType": 0, 4048 + "PermissibleBalance": 0, 4049 + "DefermentDays": 0, 4050 + "SendUiNotifications": true, 4051 + "SendEmailNotifications": true, 4052 + "IsPrivate": true, 4053 +} 4054 + 4055 +Ответ: Success 4056 + 4057 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4058 +|ClientId|Идентификатор клиента 4059 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 4060 +|PermissibleBalance|Допустимый баланс 4061 +|DefermentDays|((( 4062 +Отсрочка, количество дней 4063 +))) 4064 +|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено 4065 +|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено 4066 +|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 4067 + 4068 +== (% style="color:#000000; font-size:16px" %)**Изменить тариф клиента**(%%) == 4069 + 4070 +(% class="box warningmessage" %) 4071 +((( 4072 +**PUT /api/v3/Billing/client/plan** 4073 +))) 4074 + 4075 +Тело запроса: 4076 + 4077 +{ 4078 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4079 + "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4080 + "Features": [ 4081 + { 4082 + "Feature": "string", 4083 + "IsEnabled": true, 4084 + "IsFactual": true, 4085 + "Limit": 0, 4086 + "Price": 0, 4087 + "DebitDate": "2023-10-18T13:26:58.987Z", 4088 + "PeriodValue": 0, 4089 + "PeriodType": 0 4090 + } 4091 + ] 4092 +} 4093 + 4094 +Ответ: Success 4095 + 4096 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4097 +|ClientId|Идентификатор клиента 4098 +|PlanId|Идентификатор тарифного плана 4099 +|Feature|Код услуги 4100 +|IsEnabled|Признак, определяющий активирована ли услуга 4101 +|IsFactual|Признак, определяющий расчёт по факту 4102 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4103 +|Price|Цена за единицу. 4104 +|DebitDate|Следующий момент времени списания с баланса за услугу. 4105 +|PeriodValue|Значение периода. 4106 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 4107 + 4108 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) = 4109 + 4110 +(% class="box warningmessage" %) 4111 +((( 4112 +Для тестирования запросов **Импорта **в Postman необходимо скачать его на ПК. Версия в браузере не позволяет загружать файлы в тело запроса. 4113 +))) 4114 + 4115 +== (% style="color:#000000; font-size:16px" %)**Импорт объектов**(%%) == 4116 + 4117 +(% class="box infomessage" %) 4118 +((( 4119 +**POST /api/v3/vehicles/import/{agentId}** 4120 +))) 4121 + 4122 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 4123 + 4124 +В пути указывается **agentId** - id клиента. 4125 + 4126 +**Заголовок** 4127 + 4128 +**X-Auth: [токен авторизации]** 4129 + 4130 +**Параметры** 4131 + 4132 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4133 +|withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 4134 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 4135 + 4136 +В теле использовать тип **form-data,** тип значения** file** 4137 + 4138 +**Ключи** 4139 + 4140 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4141 +|data|В значении передаем файл объекта, формат **xml** или **wlp ** 4142 +|csv|В значении передаем файл датчиков, формат **csv** 4143 + 4144 +Ответ: 4145 + 4146 +{ 4147 + "vehicleId": 0, 4148 + "name": "string", 4149 + "errors": ["string"] 4150 +} 4151 + 4152 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4153 +|vehicleId|ID созданного объекта 4154 +|name|Имя созданного объекта 4155 +|errors|Ошибки и их описание 4156 + 4157 +== (% style="color:#000000; font-size:16px" %)**Импорт сообщений**(%%) == 4158 + 4159 +(% class="box infomessage" %) 4160 +((( 4161 +**POST** **/api/v3/vehicles/import/history/{vehicleId}** 4162 +))) 4163 + 4164 +(% class="wikigeneratedid" %) 4165 +Позволяет импортировать сообщения в выбранный объект. Сообщения должны иметь формат **wln** или **json**. Также они могут быть упакованы и переданы в виде в **zip-архива**. 4166 + 4167 +(% class="wikigeneratedid" %) 4168 +В пути указывается **vehicleId **- id объекта. 4169 + 4170 +**Заголовок** 4171 + 4172 +**X-Auth: [токен авторизации]** 4173 + 4174 +В теле использовать тип **form-data.** 4175 + 4176 +Ключи: 4177 + 4178 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4179 +|**history**|В значении передавать файл с историей 4180 + 4181 +В случае, если загружается история из файла **wln **можно выполнять подмену названий параметров. В ключе вы указываете название параметра из файла, в значении указываете значение на которое нужно заменить. 4182 + 4183 +Ответ: 4184 + 4185 +{ 4186 + "results": [ 4187 + { 4188 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4189 + "vehicleId": 0, 4190 + "errors": [ 4191 + "string" 4192 + ], 4193 + "firstMessageDate": "2023-11-28T09:27:58.949Z", 4194 + "lastMessageDate": "2023-11-28T09:27:58.949Z", 4195 + "producedCount": 0, 4196 + "msgCount": 0 4197 + } 4198 + ] 4199 +} 4200 + 4201 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4202 +|results|Результаты импорта в разрезе ТС 4203 +|vehicleGuid|Guid ТС 4204 +|vehicleId|ID ТС 4205 +|errors|Список ошибок импорта истории (если пустой - нет ошибок) 4206 +|firstMessageDate|Дата первого импортированного сообщения (UTC) 4207 +|lastMessageDate|Дата последнего импортированного сообщения (UTC) 4208 +|producedCount|Кол-во успешно отправленных в шину данных сообщений 4209 +|msgCount|Кол-во обработанных сообщений всего 4210 + 4211 +== (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 4212 + 4213 +(% class="box infomessage" %) 4214 +((( 4215 +**GET /api/v3/vehicles/import/history/status** 4216 +))) 4217 + 4218 +Запрос статуса импорта истории. Может потребоваться в случае импорта истории за большой период. 4219 + 4220 +Ответ: 4221 + 4222 +{ 4223 + "activity": true, 4224 + "progress": 0, 4225 + "message": "string" 4226 +} 4227 + 4228 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4229 +|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4230 +|progress|Guid ТС 4231 + 4232 +== (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 4233 + 4234 +(% class="box infomessage" %) 4235 +((( 4236 +**POST /api/v3/vehicles/export** 4237 +))) 4238 + 4239 +Запрос позволяет экспортировать файлы с настройками объектов. В запросе передается массив id объектов. 4240 + 4241 +Тело запроса: 4242 + 4243 +[ 4244 + id 4245 +] 4246 + 4247 +Ответ: Success 200, получаете файлы с настройками. 4248 + 4249 +== (% style="color:#000000; font-size:16px" %)**Экспорт сообщений**(%%) == 4250 + 4251 +(% class="box infomessage" %) 4252 +((( 4253 +**POST /api/v3/vehicles/export/history** 4254 +))) 4255 + 4256 +Метод возвращает список сообщений терминала объекта за выбранный период. 4257 + 4258 +Тело запроса: 4259 + 4260 +{ 4261 + "vehicleId": 0, 4262 + "asArchive": true, 4263 + "from": "2023-09-27T12:17:45.973Z", 4264 + "to": "2023-09-27T12:17:45.973Z" 4265 +} 4266 + 4267 +Ответ: 4268 + 4269 +Получаете файл. Сообщение: Code 200/Success 4270 + 4271 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4272 +|vehicleId|ID объекта 4273 +|asArchive|true - Архивировать файл, False - не архивировать 4274 +|from|Дата и время начала запроса 4275 +|to|Дата и время окончания запроса 4276 + 4277 +== (% style="color:#000000; font-size:16px" %)**Статус экспорта сообщений**(%%) == 4278 + 4279 +(% class="box infomessage" %) 4280 +((( 4281 +**GET /api/v3/vehicles/export/history/status** 4282 +))) 4283 + 4284 +Метод возвращает список сообщений терминала объекта за выбранный период. 4285 + 4286 +Ответ: 4287 + 4288 +{ 4289 + "activity": true, 4290 + "progress": 0, 4291 + "message": "string" 4292 +} 4293 + 4294 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4295 +|activity|Статус экспорта, где true - экспорт в процессе выполнения, false - в данный момент ничего не экспортируется. 4296 +|progress|Прогресс экспорта, от 0 до 100% 4297 +|message|Текст описывающий статус 4298 + 4299 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) = 4300 + 4301 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) == 4302 + 4303 +(% class="box infomessage" %) 4304 +((( 4305 +**POST /api/v3/EcoDriving/rating** 4306 +))) 4307 + 4308 +Позволяет получить данные рейтинга нарушений выбранных объектов за указанный период времени. Данные, выдаваемые этим запросом аналогичны тем, что вы можете увидеть в окне **Качество вождения** в мониторинге. В массиве **items **передается список объектов из рейтинга качества вождения, в **trips **передается информация по отдельным рейсам объекта. 4309 + 4310 +Тело запроса: 4311 + 4312 +{ 4313 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4314 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4315 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 4316 +} 4317 + 4318 +Ответ: 4319 + 4320 +{ 4321 + "items": [ ~/~/ Список в разрезе ТС 4322 + { 4323 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4324 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4325 + "vehicleId": 0, ~/~/ ID ТС 4326 + "vehicleName": "string", ~/~/ Название ТС 4327 + "vehicleModel": "string", ~/~/ Модель ТС 4328 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4329 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4330 + "totalViolations": 0, ~/~/ Нарушений всего 4331 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4332 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4333 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4334 + "brakingViolations": 0, ~/~/ Нарушений торможения 4335 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4336 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4337 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4338 + }, 4339 + 4340 +((( 4341 + 4342 +))) 4343 + 4344 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4345 + "mileage": 0, ~/~/ Пробег, м 4346 + "tripsCount": 0, ~/~/ Кол-во рейсов 4347 + "trips": [ ~/~/ Информация по рейсу 4348 + { 4349 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4350 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4351 + "violationsCount": 0, ~/~/ Всего нарушений 4352 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4353 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4354 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4355 + "brakingViolations": 0, ~/~/ Нарушений торможения 4356 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4357 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4358 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4359 + }, 4360 + 4361 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4362 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4363 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4364 + "mileage": 0, ~/~/ Пробег, м 4365 + "motohours": 0, ~/~/ Моточасы, секунды 4366 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4367 + "startAddress": "string", ~/~/ Адрес начала рейса 4368 + "endAddress": "string", ~/~/ Адрес конца рейса 4369 + "drivers": [ ~/~/ Список водителей 4370 + { 4371 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4372 + "driverName": "string", ~/~/ФИО водителя 4373 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 4374 + } 4375 + ] 4376 + } 4377 + ] 4378 + } 4379 + ] 4380 +} 4381 + 4382 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 4383 + 4384 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4385 + 4386 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4387 + 4388 +(% class="box infomessage" %) 4389 +((( 4390 +POST /api/v3/fuelcards/transactions 4391 +))) 4392 + 4393 +Метод запроса: POST 4394 + 4395 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4396 +\\В заголовках запроса: X-Auth: Токен авторизации 4397 + 4398 +Параметры в теле запроса (JSON): 4399 + 4400 +{ 4401 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4402 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4403 + "ids": [ 4404 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4405 + ], 4406 + "timezone": 0 ~/~/ Часовой пояс 4407 +} 4408 + 4409 + 4410 +Ответ: 4411 + { 4412 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4413 + "driver": "string", ~/~/ Водители, привязанные к ТК 4414 + "object": "string", ~/~/ Наименование ТС 4415 + "amount": 0, ~/~/ Количество топлива 4416 + "amountDut": 0, ~/~/ Количество по ДУТ 4417 + "amountDiff": 0, ~/~/ Разница, л 4418 + "amountDiffPerc": 0, ~/~/ Разница, % 4419 + "summa": 0, ~/~/ Стоимость, руб 4420 + "serviceName": "string", ~/~/ Тип топлива 4421 + "price": 0, ~/~/ Цена за литр, руб 4422 + "cardName": "string", ~/~/ Наименование ТК 4423 + "cardNum": "string", ~/~/ Номер ТК 4424 + "operator": "string", ~/~/ Оператор ТК 4425 + "address": "string" ~/~/ Адрес АЗС 4426 + } 4427 + 4428 + 4429 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4430 + 4431 + 4432 +== **Получение полных данных о ретрансляторе** == 4433 + 4434 +(% class="box infomessage" %) 4435 +((( 4436 +**GET ** **/api/v3/retranslations/{id}** 4437 +))) 4438 + 4439 +id - Идентификатор ретранслятора 4440 + 4441 + 4442 +Пример ответа: 4443 + 4444 +{ 4445 +"description": "", ~/~/ Поле описания ретранслятора 4446 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4447 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4448 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4449 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4450 +"objects": [ ~/~/ Объекты для ретрансляции 4451 +{ 4452 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4453 +"name": "", ~/~/ Наименование объекта ретрансляции 4454 +"imei": "", ~/~/ IMEI объекта ретрансляции 4455 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4456 +} 4457 + ], 4458 +"id": "", ~/~/ Идентификатор ретранслятора 4459 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4460 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4461 +} 4462 + 4463 + 4464 +== **Удаление данных ретранслятора** == 4465 + 4466 +(% class="box infomessage" %) 4467 +((( 4468 +**DELETE** **/api/v3/retranslations/{id}** 4469 +))) 4470 + 4471 +id - Идентификатор ретранслятора 4472 + 4473 + 4474 +== **Создание ретранслятора** == 4475 + 4476 +(% class="box infomessage" %) 4477 +((( 4478 +**POST ** **/api/v3/retranslations/{id}** 4479 +))) 4480 + 4481 +Запрос: 4482 + 4483 +{ 4484 +"description": "", ~/~/ Поле описания ретранслятора 4485 +"subscriberId": "", ~/~/ Идентификатор подписчика 4486 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4487 +"address": "", ~/~/ Адрес и порт принимающего сервера 4488 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4489 +"objects": [ ~/~/Объекты для ретрансляции 4490 +{ 4491 +"id": "", ~/~/ Идентификатор ретранслятора 4492 +"imei": "", ~/~/ IMEI объекта ретрансляции 4493 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4494 +} 4495 + ] 4496 +} 4497 + 4498 + 4499 +Ответ: 4500 + 4501 +{ 4502 +"description": "", ~/~/ Поле описания ретранслятора 4503 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4504 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4505 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4506 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4507 +"objects": [ ~/~/ Объекты для ретрансляции 4508 +{ 4509 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4510 +"name": "string", ~/~/ Наименование объекта ретрансляции 4511 +"imei": "", ~/~/ IMEI объекта ретрансляции 4512 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4513 +} 4514 + ], 4515 +"id": "", ~/~/ Идентификатор ретранслятора 4516 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4517 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4518 +} 4519 + 4520 + 4521 +== **Редактирование ретранслятора** == 4522 + 4523 +(% class="box infomessage" %) 4524 +((( 4525 +**PUT** **/api/v3/retranslations** 4526 +))) 4527 + 4528 +Пример запроса: 4529 + 4530 +{ 4531 +"id": "", ~/~/ Идентификатор ретранслятора 4532 +"description": "string", ~/~/ Поле описания ретранслятора 4533 +"subscriberId": "", ~/~/ Идентификатор подписчика 4534 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4535 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4536 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4537 +"objects": ~/~/ Объекты для ретрансляции 4538 +[ 4539 +{ 4540 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4541 +"imei": "", ~/~/ IMEI объекта ретрансляции 4542 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4543 +} 4544 + ] 4545 +} 4546 + 4547 + 4548 +Пример ответа: 4549 + 4550 +{ 4551 +"description": "", ~/~/ Поле описания ретранслятора 4552 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4553 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4554 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4555 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4556 +"objects": [ ~/~/ Объекты для ретрансляции 4557 +{ 4558 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4559 +"name": "string", ~/~/ Наименование объекта ретрансляции 4560 +"imei": "", ~/~/ IMEI объекта ретрансляции 4561 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4562 +} 4563 + ], 4564 +"id": "", ~/~/ Идентификатор ретранслятора 4565 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4566 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4567 +} 4568 + 4569 + 4570 +== **Получение списка ретранслятора клиента** == 4571 + 4572 +(% class="box infomessage" %) 4573 +((( 4574 +**POST /api/v3/retranslations/find** 4575 +))) 4576 + 4577 +Пример запроса: 4578 + 4579 +{ 4580 +"id": "", ~/~/ Идентификатор ретранслятора 4581 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4582 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4583 +} 4584 + 4585 +Ответ: 4586 + 4587 +[ 4588 +{ 4589 +"description": "", ~/~/ Поле описания ретранслятора 4590 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4591 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4592 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4593 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4594 +"id": "", ~/~/ Идентификатор ретранслятора 4595 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4596 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4597 +} 4598 +] 4599 + 4600 + 4601 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4602 + 4603 +== **API для отчета по выгрузке комбайнов** == 4604 + 4605 +(% class="box infomessage" %) 4606 +((( 4607 +POST **/api/v3/Reports/harvesterUnloading** 4608 +))) 4609 + 4610 +Пример запроса: 4611 + 4612 +{ 4613 + "byTime": 0, ~/~/ Объединение событий по времени 4614 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4615 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4616 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4617 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4618 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4619 + 0 4620 + ], 4621 + "from": "", ~/~/ Дата и время начало запроса 4622 + "to": "", ~/~/ Дата и время окончания запроса 4623 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4624 +} 4625 + 4626 +Пример ответа: 4627 + 4628 +[ 4629 + { 4630 + "harvesterName": "", ~/~/Комбайн, номер 4631 + "harvesterId": 0, ~/~/Комбайн, id 4632 +"harvesterModel": "", ~/~/ Модель комбайна 4633 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4634 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4635 + "events": [ ~/~/Список событий в разрезе комбайна 4636 + { 4637 + "driverId": "", ~/~/Идентификатор водителя 4638 + "driverName": "", ~/~/Водитель комбайна, ФИО 4639 + "RFID": "", ~/~/ идентификатор карты-метки 4640 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4641 + "vehicleId": 0, ~/~/идентификатор объекта 4642 + "vehicleName": "string", ~/~/ Имя объекта 4643 + "modelName": "string", ~/~/ Имя модели объекта 4644 + "nearestVehicles": [ ~/~/Объекты рядом 4645 + { 4646 + "vehicleId": 0, ~/~/идентификатор объекта 4647 + "vehicleName": "string" ~/~/ Имя объекта 4648 + } 4649 + ], 4650 + "fields": [ ~/~/Поля, где происходила выгрузка 4651 + { 4652 + "id": 0, ~/~/ идентификатор пользователя 4653 + "name": "string" ~/~/ имя пользователя 4654 + } 4655 + ], 4656 + "event": "string", ~/~/Событие 4657 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4658 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4659 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4660 + "cultureName": "string", ~/~/ название культуры 4661 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4662 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4663 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4664 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4665 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4666 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4667 + "issued": 0, ~/~/Выдано, бункеров 4668 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4669 + "latitude": 0, ~/~/Широта 4670 + "longitude": 0, ~/~/ Долгота 4671 + "litresAway": 0, ~/~/Отдано, л 4672 + "m3Away": 0 ~/~/Отдано, м3 4673 + } 4674 + ] 4675 + } 4676 +] 4677 + 4678 + 4679 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 4680 + 4681 +== **Получение участка по id** == 4682 + 4683 +(% class="box infomessage" %) 4684 +((( 4685 +GET **/api/v3/agroLands/{id}** 4686 +))) 4687 + 4688 +Пример запроса: 4689 +id ~/~/ Идентификатор поля 4690 + 4691 +Пример ответа: 4692 + 4693 +((( 4694 +{ 4695 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4696 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4697 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4698 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4699 + "cropRotations": [ ~/~/ Данные по севообороту 4700 + { 4701 + "landId": 0, ~/~/ ID поля 4702 + "landName": "string", ~/~/ Название поля 4703 + "year": 0, ~/~/ Год урожая 4704 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4705 + "cultureName": "string", ~/~/ Название культуры 4706 + "productivity": 0, ~/~/ Урожайность 4707 + "area": 0, ~/~/ Площадь поля, Га 4708 + "total": 0, ~/~/ Валовый сбор 4709 + "productivityFact": 0, ~/~/ Фактическая урожайность 4710 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4711 + "totalFact": 0, ~/~/ Фактический валовый сбор 4712 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 4713 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 4714 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 4715 + "isyearplan": true, ~/~/ План года 4716 + "comment": "string" ~/~/ Комментарий 4717 + } 4718 + ], 4719 + "cropVegetation": [ ~/~/ История вегетации поля 4720 + { 4721 + "values": [ ~/~/ Данные вегетации и состояния посева 4722 + { 4723 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 4724 + "ndvi": 0 ~/~/ Индекс вегетации 4725 + } 4726 + ], 4727 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 4728 + { 4729 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 4730 + "type": "string", ~/~/ Тип 4731 + "pictureid": "string" ~/~/ Идентификатор ресурса 4732 + } 4733 + ], 4734 + "states": [ ~/~/ Ключевые даты развития поля 4735 + { 4736 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 4737 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 4738 + } 4739 + ] 4740 + } 4741 + ], 4742 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 4743 + "counts": { 4744 + "fieldOperations": 0, ~/~/ Количество операций на поле 4745 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4746 + "facts": 0 ~/~/ Счётчик факта 4747 + }, 4748 + "planComment": "string", ~/~/ Комментарий к полю 4749 + "productivity": 0, ~/~/ Урожайность. 4750 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4751 +))) 4752 + 4753 +((( 4754 +((( 4755 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 4756 + "year": 0, ~/~/ Год поля 4757 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 4758 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 4759 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 4760 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 4761 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 4762 + "id": 0, ~/~/ Идентификатор объекта геозоны 4763 + "name": "string", ~/~/ Название объекта геозоны 4764 + "type": 0, ~/~/ Тип объекта геозоны 4765 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4766 + "fname": "string", ~/~/ Имя файла 4767 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4768 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 4769 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 4770 + "description": "string", ~/~/ Описание объекта геозоны 4771 + "area": 0, ~/~/ Площадь, м2 4772 + "perimetr": 0, ~/~/ Периметр, м 4773 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 4774 +} 4775 +))) 4776 + 4777 + 4778 +== **Удалить участок** == 4779 + 4780 +(% class="box errormessage" %) 4781 +((( 4782 +DELETE **/api/v3/agroLands/{id}** 4783 +))) 4784 + 4785 +Пример запроса: 4786 +id ~/~/ Идентификатор поля 4787 + 4788 +Пример ответа: 4789 + 4790 +((( 4791 +200 ~/~/ Успех 4792 +))) 4793 + 4794 +((( 4795 + 4796 +))) 4797 + 4798 +((( 4799 +== **Сохранение участка** == 4800 + 4801 +(% class="box successmessage" %) 4802 +((( 4803 +POST **/api/v3/agroLands** 4804 +))) 4805 + 4806 +Пример запроса: 4807 + 4808 +((( 4809 +{ 4810 + "extId": "string", 4811 + "shape": "string", ~/~/ Форма поля 4812 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 4813 + "display": "string", ~/~/ Настройки отображения 4814 + "year": 0, ~/~/ Год поля 4815 + "name": "string", ~/~/ Наименование 4816 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4817 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 4818 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 4819 + "planComment": "string", ~/~/ Комментарий к полю 4820 + "cropRotations": [ ~/~/ Данные по севообороту 4821 + { 4822 + "landId": 0, ~/~/ ID поля 4823 + "landName": "string", ~/~/ Название поля 4824 + "year": 0, ~/~/ Год урожая 4825 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4826 + "cultureName": "string", ~/~/ Название культуры 4827 + "productivity": 0, ~/~/ Урожайность 4828 + "area": 0, ~/~/ Площадь поля, Га 4829 + "total": 0, ~/~/ Валовый сбор 4830 + "productivityFact": 0, ~/~/ Фактическая урожайность 4831 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4832 + "totalFact": 0, ~/~/ Фактический валовый сбор 4833 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 4834 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 4835 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 4836 + "isyearplan": true, ~/~/ Годовой план 4837 + "comment": "string" ~/~/ Комментарий 4838 + } 4839 + ] 4840 +} 4841 +))) 4842 + 4843 +((( 4844 + 4845 +))) 4846 + 4847 +((( 4848 + 4849 +))) 4850 + 4851 +Пример ответа: 4852 + 4853 +((( 4854 +((( 4855 +{ 4856 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4857 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4858 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4859 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4860 + "cropRotations": [ ~/~/ Данные по севообороту 4861 + { 4862 + "landId": 0, ~/~/ ID поля 4863 + "landName": "string", ~/~/ Название поля 4864 + "year": 0, ~/~/ Год урожая 4865 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4866 + "cultureName": "string", ~/~/ Название культуры 4867 + "productivity": 0, ~/~/ Урожайность 4868 + "area": 0, ~/~/ Площадь поля, Га. 4869 + "total": 0, ~/~/ Валовый сбор 4870 + "productivityFact": 0, ~/~/ Фактическая урожайность 4871 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4872 + "totalFact": 0, ~/~/ Фактический валовый сбор 4873 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 4874 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 4875 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 4876 + "isyearplan": true, ~/~/ годовой план 4877 + "comment": "string" ~/~/ Комментарий 4878 + } 4879 + ], 4880 + "cropVegetation": [ ~/~/ История вегетации поля 4881 + { 4882 + "values": [ ~/~/ Данные вегетации и состояния посева 4883 + { 4884 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4885 + "ndvi": 0 ~/~/ Индекс вегетации 4886 + } 4887 + ], 4888 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 4889 + { 4890 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4891 + "type": "string", ~/~/ Тип 4892 + "pictureid": "string" ~/~/ Идентификатор ресурса 4893 + } 4894 + ], 4895 + "states": [ ~/~/ Ключевые даты развития поля 4896 + { 4897 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4898 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 4899 + } 4900 + ] 4901 + } 4902 + ], 4903 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 4904 + "counts": { 4905 + "fieldOperations": 0, ~/~/ Количество операций на поле 4906 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4907 + "facts": 0 ~/~/ Счётчик факта 4908 + }, 4909 + "planComment": "string", ~/~/ Комментарий к полю 4910 +))) 4911 + 4912 +((( 4913 + "productivity": 0, ~/~/ Урожайность. 4914 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4915 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 4916 + "year": 0, ~/~/ Год поля 4917 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4918 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4919 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4920 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4921 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 4922 + "id": 0, ~/~/ Идентификатор объекта геозоны 4923 + "name": "string", ~/~/ Название объекта геозоны 4924 + "type": 0, ~/~/ Тип объекта геозоны 4925 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4926 + "fname": "string", ~/~/ Имя файла 4927 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4928 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 4929 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 4930 + "description": "string", ~/~/ Описание объекта геозоны 4931 + "area": 0, ~/~/ Площадь, м2 4932 + "perimetr": 0, ~/~/ Периметр, м 4933 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 4934 +} 4935 +))) 4936 + 4937 +((( 4938 + 4939 +))) 4940 + 4941 +((( 4942 +== **Изменение участка** == 4943 + 4944 +(% class="box infomessage" %) 4945 +((( 4946 +PUT **/api/v3/agroLands** 4947 +))) 4948 + 4949 +Пример запроса: 4950 + 4951 +((( 4952 +((( 4953 +{ 4954 + "id": 0, ~/~/ Идентификатор поля 4955 + "extId": "string", ~/~/ ExtId 4956 + "shape": "string", ~/~/ Форма поля 4957 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 4958 + "display": "string", ~/~/ Настройки отображения 4959 + "year": 0, ~/~/ Год поля 4960 + "name": "string", ~/~/ Наименование 4961 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4962 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 4963 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 4964 + "planComment": "string", ~/~/Комментарий к полю 4965 + "cropRotations": [ ~/~/ Данные по севообороту 4966 + { 4967 + "landId": 0, ~/~/ ID поля 4968 + "landName": "string", ~/~/ Название поля 4969 + "year": 0, ~/~/ Год урожая 4970 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4971 + "cultureName": "string", ~/~/ Название культуры 4972 + "productivity": 0, ~/~/ Урожайность 4973 + "area": 0, ~/~/ Площадь поля, Га. 4974 + "total": 0, ~/~/ Валовый сбор 4975 + "productivityFact": 0, ~/~/ Фактическая урожайность 4976 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4977 + "totalFact": 0, ~/~/ Фактический валовый сбор 4978 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 4979 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 4980 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 4981 + "isyearplan": true, 4982 + "comment": "string" ~/~/ Комментарий 4983 + } 4984 + ], 4985 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 4986 +} 4987 +))) 4988 +))) 4989 + 4990 +((( 4991 + 4992 +))) 4993 + 4994 +Пример ответа: 4995 + 4996 +((( 4997 +((( 4998 +((( 4999 +{ 5000 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5001 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5002 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5003 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5004 + "cropRotations": [ ~/~/ Данные по севообороту 5005 + { 5006 + "landId": 0, ~/~/ ID поля 5007 + "landName": "string", ~/~/ Название поля 5008 + "year": 0, ~/~/ Год урожая 5009 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5010 + "cultureName": "string", ~/~/ Название культуры 5011 + "productivity": 0, ~/~/ Урожайность 5012 + "area": 0, ~/~/ Площадь поля, Га 5013 + "total": 0, ~/~/ Валовый сбор 5014 + "productivityFact": 0, ~/~/ Фактическая урожайность 5015 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5016 + "totalFact": 0, ~/~/ Фактический валовый сбор 5017 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5018 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5019 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5020 + "isyearplan": true, ~/~/ 5021 + "comment": "string" ~/~/ Комментарий 5022 + } 5023 + ], 5024 + "cropVegetation": [ ~/~/ История вегетации поля 5025 + { 5026 + "values": [ ~/~/ Данные вегетации и состояния посева 5027 + { 5028 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5029 + "ndvi": 0 ~/~/ Индекс вегетации 5030 + } 5031 + ], 5032 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5033 + { 5034 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5035 + "type": "string", ~/~/ Тип 5036 + "pictureid": "string" ~/~/ Идентификатор ресурса 5037 + } 5038 + ], 5039 + "states": [ ~/~/ Ключевые даты развития поля 5040 + { 5041 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5042 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5043 + } 5044 + ] 5045 + } 5046 + ], 5047 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5048 + "counts": { 5049 + "fieldOperations": 0, ~/~/ Количество операций на поле 5050 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5051 + "facts": 0 ~/~/ Счётчик факта 5052 + }, 5053 + "planComment": "string", ~/~/ Комментарий к полю 5054 + "productivity": 0, ~/~/ Урожайность. 5055 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5056 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5057 + "year": 0, ~/~/ Год поля 5058 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5059 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5060 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5061 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5062 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5063 + "id": 0, ~/~/ Идентификатор объекта геозоны 5064 + "name": "string", ~/~/ Название объекта геозоны 5065 + "type": 0, ~/~/ Тип объекта геозоны 5066 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5067 + "fname": "string", ~/~/ Имя файла 5068 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5069 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5070 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5071 + "description": "string", ~/~/ Описание объекта геозоны 5072 + "area": 0, ~/~/ Площадь, м2 5073 + "perimetr": 0, ~/~/ Периметр, м 5074 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5075 +} 5076 +))) 5077 +))) 5078 +))) 5079 +))) 5080 +))) 5081 + 5082 + 5083 +))) 5084 +))) 5085 + 5086 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5087 + 5088 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 5089 + 5090 + 5091 +(% class="box infomessage" %) 5092 +((( 5093 +GET api/v3/Vehicles/recyclebin/all 5094 +))) 5095 + 5096 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 5097 + 5098 +Параметр запроса: {parentId} - идентификатор агента 5099 + 5100 +В заголовках запроса: X-Auth: Токен авторизации 5101 + 5102 +Ответ: 5103 + 5104 +[ 5105 + { 5106 + "recordTime": "", ~/~/Время записи 5107 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5108 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5109 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5110 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5111 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5112 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5113 + "items": [ ~/~/ 5114 +nullable: true ~/~/Детали 5115 + { 5116 + "name": "string", ~/~/наименование столбца 5117 + "value": "string" ~/~/содержание столбца 5118 + } 5119 + ] 5120 + }, 5121 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5122 + "string" 5123 + ] 5124 + } 5125 +] 5126 + 5127 + 5128 +(% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины** 5129 + 5130 +(% class="box infomessage" %) 5131 +((( 5132 +POST/api/v3/Vehicles/recyclebin/erase 5133 +))) 5134 + 5135 +В заголовках запроса: X-Auth: Токен авторизации 5136 + 5137 +Пример запроса: 5138 + 5139 +[ 5140 +0 5141 +] 5142 + 5143 + 5144 +Пример ответа: 5145 + 5146 +[ 5147 +{ 5148 + "recordTime": "", ~/~/Время записи 5149 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5150 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5151 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5152 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5153 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5154 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5155 + "items": [ ~/~/Детали 5156 + { 5157 + "name": "", ~/~/Имя свойства 5158 + "value": "" ~/~/Значение свойства 5159 + } 5160 + ] 5161 + }, 5162 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5163 + "" 5164 + ] 5165 + } 5166 +] 5167 + 5168 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 5169 + 5170 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 5171 + 5172 +(% class="box infomessage" %) 5173 +((( 5174 +POST/api/v3/Vehicles/recyclebin/restore 5175 +))) 5176 + 5177 +В заголовках запроса: X-Auth: Токен авторизации 5178 + 5179 +Параметры в теле запроса (JSON): 5180 + 5181 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5182 + 5183 +В заголовках запроса: X-Auth: Токен авторизации 5184 + 5185 + 5186 +Пример запроса: 5187 + 5188 +((( 5189 +[ 5190 +))) 5191 + 5192 +((( 5193 + 0 5194 +))) 5195 + 5196 +((( 5197 +] 5198 +))) 5199 + 5200 + 5201 +Пример ответа: 5202 + 5203 +[ 5204 +{ 5205 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5206 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5207 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5208 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5209 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5210 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5211 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5212 + "items": [ ~/~/Детали 5213 + { 5214 + "name": "string", ~/~/Имя свойства 5215 + "value": "string" ~/~/Значение свойства 5216 + } 5217 + ] 5218 + }, 5219 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5220 + "string" 5221 + ] 5222 + } 5223 +] 5224 + 5225 + 5226 + 615 615 (% class="box" lang="en-US" style="text-align: center;" %) 616 616 ((( 617 617 (% lang="ru-RU" style="color:#000000; font-family:Liberation Serif,serif; font-size:14pt; font-style:normal; font-variant:normal" %)**По вопросам работы PUBLIC API 3.0 можно обращаться**(% lang="ru-RU" style="color:#000000; font-size:14pt" %)** на [[support@glonasssoft.ru>>mailto:support@glonasssoft.ru]] **
- image-20231020124453-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.krainovim - Size
-
... ... @@ -1,0 +1,1 @@ 1 +268.0 KB - Content