Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/02/20 09:52
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. krainovim1 +XWiki.Gadmin - Content
-
... ... @@ -1,5 +1,17 @@ 1 1 (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %) 2 2 ((( 3 +(% class="box warningmessage" %) 4 +((( 5 +(% class="mark" %)##Для обеспечения бесперебойной работы команд и серверного оборудования ГЛОНАССSoft убедительно 6 +просим вас соблюдать несколько простых правил при использовании API-команд:## 7 +))) 8 + 9 +* Формировать не более 3 отчётов одновременно. 10 +* Ограничить количество активных сессий одного пользователя с одного IP-адреса до 50. 11 + 12 +В случае нарушения этих правил, ГЛОНАССSoft оставляет за собой право принудительно остановить выполнение запросов с определенных IP адресов. 13 + 14 + 3 3 **Содержание страницы:** 4 4 ))) 5 5 ... ... @@ -14,13 +14,22 @@ 14 14 15 15 Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de. 16 16 17 -(% style="color:#000000" %)− (%%)При редактировании необходимо передавать все параметры пользователяв теле запроса! Те параметры, значения которых не будут переданы - будут стерты!29 +(% style="color:#000000" %)− (%%)При **редактировании** любой записи (пользователь, объект и т.д) необходимо передавать все параметры записи в теле запроса! Те параметры, значения которых не будут переданы - будут стерты! 18 18 31 + 32 +(% style="color:#000000; font-size:16px" %)**Рекомендации** 33 + 34 +- Для запросов по API рекомендуется наделить пользователя ролью **Администратора партнера**, в противном случае при выполнении некоторых запросов у него не будет хватать прав (чаще всего сталкиваются с отсутствием прав при запросах сообщений от терминала за период). 35 + 19 19 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Авторизация**(%%) = 20 20 21 -== (% style="color:#000000; font-size:16px" %)**Авторизация**(%%) == 38 +(% class="box warningmessage" id="H41043244243E44043843743044643844F" %) 39 +((( 40 +(% style="color:#000000; font-size:16px" %)**Авторизация**(%%) 41 +(% style="color:#000000; font-size:16px" %)Адрес сервера всегда следует указывать именно тот, по которому происходит вход в СМТ (https:~/~/hosting.glonasssoft.ru/ , [[https:~~/~~/regions.glonasssoft.ru/>>https://regions.glonasssoft.ru/]] или другие) 42 +))) 22 22 23 -(% class="box infomessage" %)44 +(% class="box successmessage" %) 24 24 ((( 25 25 (% lang="en-US" %)**POST /api/v3/auth/login** 26 26 ))) ... ... @@ -31,7 +31,7 @@ 31 31 32 32 (% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/auth/login>>https://hosting.glonasssoft.ru/api/v3/auth/login]] 33 33 34 -(% style="color:#000000" %)В случае успешного выполнения метода, поле « __**AuthId**__» содержит токен авторизации «__**X-Auth**__».55 +(% style="color:#000000" %)В случае успешного выполнения метода, поле «AuthId» содержит токен авторизации «X-Auth». 35 35 36 36 (% style="color:#000000" %)Параметры в теле запроса (JSON): 37 37 ... ... @@ -40,21 +40,25 @@ 40 40 "password": "testuser" 41 41 } 42 42 43 - 44 44 (% style="color:#000000" %)**Ответ:** 45 45 46 46 (% lang="en-US" %) 47 47 (% style="color:#000000" %){ 48 - 49 -(% lang="en-US" %) 50 -(% style="color:#000000" %) "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 51 - "User": "testuser" , ~/~/ имя пользователя 52 - 53 -(% lang="en-US" %) 68 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 69 + "User": "testuser" , ~/~/ имя пользователя(%%) 54 54 } 55 55 56 56 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. 57 57 74 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 75 +|(% style="width:215px" %)(% style="color:#000000" %)login|(% style="width:861px" %)Логин пользователя 76 +|(% style="width:215px" %)(% style="color:#000000" %)password|(% style="width:861px" %)Пароль пользователя 77 +|(% style="width:215px" %)(% style="color:#000000" %)AuthId|(% style="width:861px" %)Токен авторизации 78 +|(% style="width:215px" %)(% style="color:#000000" %)User|(% style="width:861px" %)Логин пользователя 79 + 80 +(% class="wikigeneratedid" %) 81 +Также имеется возможность сквозной (/бесшовной) авторизации. Для этого к ссылке ( [[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}]]) 82 + 58 58 == (% style="color:#000000; font-size:16px" %)**Проверка авторизации**(%%) == 59 59 60 60 (% class="box infomessage" %) ... ... @@ -93,30 +93,51 @@ 93 93 Запрос должен содержать данные параметра "**agentId**" 94 94 95 95 (% style="color:#000000" %)Ответ: 96 -А 97 97 { 98 - "agentId": "", ~/~/идентификатор клиента(%%)99 - "parentId": "", (% style="color:#000000" %)~/~/ идентификатор клиента-родителя(%%)100 - "parentName": "string", ~/~/ наименование (% style="color:#000000" %)клиента-родителя(%%)101 - "name": "string", (% style="color:#000000" %)~/~/ наименование клиента (%%)102 - "fullName": "string", (% style="color:#000000" %)~/~/ полное наименование клиента(%%)103 - "agentInfoType": 0, (% style="color:#000000" %)~/~/ тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор)(%%)104 - "isForeign": true/false, ~/~/ Иностранный контрагент105 - "district": "string", ~/~/ округ106 - "region": "string", ~/~/ регион107 - "city": "string", ~/~/ город108 - "inn": "string", ~/~/ ИНН клиента109 - "kpp": "string", ~/~/ КПП клиента110 - "address": "string", ~/~/ юридический адрес111 - "addressFact": "string", ~/~/ фактический адрес112 - "email": "string", ~/~/ почта113 - "director": "string", ~/~/ ФИО руководителя114 - "bankName": "string", ~/~/ Банк115 - "bankBIK": "string", ~/~/ БИК116 - "bankRS": "string", ~/~/ Номер счета117 - "bankKS": "string" ~/~/ Корр. счет122 + "agentId": "", (%%) 123 + "parentId": "", 124 + "parentName": "string", 125 + "name": "string", 126 + "fullName": "string", 127 + "agentInfoType": 0, 128 + "isForeign": true/false, 129 + "district": "string", 130 + "region": "string", 131 + "city": "string", 132 + "inn": "string", 133 + "kpp": "string", 134 + "address": "string", 135 + "addressFact": "string", 136 + "email": "string", 137 + "director": "string", 138 + "bankName": "string", 139 + "bankBIK": "string", 140 + "bankRS": "string", 141 + "bankKS": "string" 118 118 } 119 119 144 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 145 +|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 146 +|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 147 +|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 148 +|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 149 +|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 150 +|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 151 +|(% style="width:215px" %)isForeign|(% style="width:861px" %)Иностранный контрагент 152 +|(% style="width:215px" %)district|(% style="width:861px" %)Округ 153 +|(% style="width:215px" %)region|(% style="width:861px" %)Регион 154 +|(% style="width:215px" %)city|(% style="width:861px" %)Город 155 +|(% style="width:215px" %)inn|(% style="width:861px" %)ИНН клиента 156 +|(% style="width:215px" %)kpp|(% style="width:861px" %)КПП клиента 157 +|(% style="width:215px" %)address|(% style="width:861px" %)Юридический адрес 158 +|(% style="width:215px" %)addressFact|(% style="width:861px" %)Фактический адрес 159 +|(% style="width:215px" %)email|(% style="width:861px" %)Электронная почта 160 +|(% style="width:215px" %)director|(% style="width:861px" %)ФИО руководителя 161 +|(% style="width:215px" %)bankName|(% style="width:861px" %)Банк 162 +|(% style="width:215px" %)bankBIK|(% style="width:861px" %)БИК 163 +|(% style="width:215px" %)bankRS|(% style="width:861px" %)Номер счета 164 +|(% style="width:215px" %)bankKS|(% style="width:861px" %)Корр. счет 165 + 120 120 == (% style="color:#000000; font-size:16px" %)**Получение параметров дочерних клиентов**(%%) == 121 121 122 122 (% class="box infomessage" %) ... ... @@ -130,7 +130,7 @@ 130 130 131 131 (% style="color:#000000" %)− возвращается информация о клиенте, которому принадлежит авторизованный пользователь, и его дочерних клиентах; 132 132 133 -(% style="color:#000000" %)− информация о клиенте типа «Партнер» и его подклиентов возвращается при наличии права «__**Доступ к партнёрским клиентам**__».179 +(% style="color:#000000" %)− информация о клиенте типа «Партнер» и его клиентов возвращается при наличии права «__**Доступ к партнёрским клиентам**__». 134 134 135 135 (% style="color:#000000" %)Метод запроса: **POST** 136 136 ... ... @@ -145,15 +145,23 @@ 145 145 (% style="color:#000000" %)Ответ: 146 146 147 147 { 148 - "agentId": "", (% style="color:#000000" %)~/~/ идентификатор клиента (%%) 149 - "parentId": "", (% style="color:#000000" %)~/~/ идентификатор клиента-родителя(%%) 150 - "parentName": "string", ~/~/ наименование (% style="color:#000000" %)клиента-родителя(%%) 151 - "name": "string", (% style="color:#000000" %)~/~/ наименование клиента (%%) 152 - "fullName": "string", (% style="color:#000000" %)~/~/ полное наименование клиента(%%) 153 - "agentInfoType": 0, (% style="color:#000000" %)~/~/ тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 154 - "status": "",~/~/ статус клиента (0- Новый, 1 - Потенциальный, 2 - В разработке, 3 - Тест, 4 - На оформлении, 5 - Внедрение, 6 - Работает, 7 - Работал, 8 - Потерян, 9 - Отказ) 194 + "agentId": "",(% style="color:#000000" %) (%%) 195 + "parentId": "", 196 + "name": "string", 197 + "fullName": "string", 198 + "agentInfoType": 0, 199 +(% style="color:#000000" %) "status": "", 155 155 } 156 156 202 + 203 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 204 +|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 205 +|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 206 +|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 207 +|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 208 +|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 209 +|(% style="width:215px" %)(% style="color:#000000" %)status|(% style="width:861px" %)Статус клиента, 0 - заблокирован, 1 - Активен 210 + 157 157 == (% style="color:#000000; font-size:16px" %)**Добавление клиента**(%%) == 158 158 159 159 (% class="box successmessage" %) ... ... @@ -172,7 +172,7 @@ 172 172 Параметры в теле запроса (JSON): 173 173 174 174 { 175 - 229 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 176 176 "name": "string", ~/~/ имя 177 177 "fullName": "string", ~/~/ полное наименование 178 178 "agentInfoType": 0, (% style="color:#000000" %)~/~/ тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор)(%%) ... ... @@ -192,7 +192,6 @@ 192 192 "bankKS": "string" ~/~/ корр. счёт 193 193 } 194 194 195 - 196 196 Ответ: 197 197 198 198 { ... ... @@ -217,6 +217,28 @@ 217 217 "bankKS": "string" ~/~/ корр. счёт 218 218 } 219 219 273 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 274 +|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 275 +|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 276 +|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 277 +|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 278 +|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 279 +|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 280 +|(% style="width:215px" %)isForeign|(% style="width:861px" %)Иностранный контрагент 281 +|(% style="width:215px" %)district|(% style="width:861px" %)Округ 282 +|(% style="width:215px" %)region|(% style="width:861px" %)Регион 283 +|(% style="width:215px" %)city|(% style="width:861px" %)Город 284 +|(% style="width:215px" %)inn|(% style="width:861px" %)ИНН клиента 285 +|(% style="width:215px" %)kpp|(% style="width:861px" %)КПП клиента 286 +|(% style="width:215px" %)address|(% style="width:861px" %)Юридический адрес 287 +|(% style="width:215px" %)addressFact|(% style="width:861px" %)Фактический адрес 288 +|(% style="width:215px" %)email|(% style="width:861px" %)Электронная почта 289 +|(% style="width:215px" %)director|(% style="width:861px" %)ФИО руководителя 290 +|(% style="width:215px" %)bankName|(% style="width:861px" %)Банк 291 +|(% style="width:215px" %)bankBIK|(% style="width:861px" %)БИК 292 +|(% style="width:215px" %)bankRS|(% style="width:861px" %)Номер счета 293 +|(% style="width:215px" %)bankKS|(% style="width:861px" %)Корр. счет 294 + 220 220 == (% style="color:#000000; font-size:16px" %)**Редактирование клиента**(%%) == 221 221 222 222 (% class="box warningmessage" %) ... ... @@ -232,7 +232,6 @@ 232 232 233 233 В заголовках запроса: X-Auth: Токен авторизации 234 234 235 - 236 236 Параметры в теле запроса (JSON): 237 237 238 238 { ... ... @@ -257,7 +257,6 @@ 257 257 "bankKS": "string" ~/~/ корр. счёт 258 258 } 259 259 260 - 261 261 Ответ: 262 262 263 263 { ... ... @@ -300,6 +300,21 @@ 300 300 301 301 Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 302 302 376 +== (% style="color:#000000; font-size:16px" %)**Смена статуса клиента (активация/блокировка)**(%%) == 377 + 378 +(% class="box warningmessage" %) 379 +((( 380 +**PUT /api/v3/agents/{id}/changeStatus/{status}** 381 +))) 382 + 383 +Метод позволяет изменить статус клиента, указанного в запросе. 384 + 385 +В пути указывается GUID клиента и статус клиента. 386 + 387 +**status **- значение 0 - заблокирован, 1 - активен. 388 + 389 +Ответ: Code 204 390 + 303 303 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Пользователи**(%%) = 304 304 305 305 == (% style="color:#000000; font-size:16px" %)**Добавление пользователя**(%%) == ... ... @@ -351,7 +351,6 @@ 351 351 ], 352 352 "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 353 353 } 354 - 355 355 { 356 356 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 357 357 "lastName": "string", ... ... @@ -363,15 +363,10 @@ 363 363 "password": "string", 364 364 "email": "string", 365 365 366 - 367 367 (% style="text-align:left" %) 368 368 (% style="color:#000000; font-weight:normal" %)Ответ: 369 - 370 -(% style="text-align:left" %) 371 -(% style="color:#000000; font-weight:normal" %){ 372 - 373 -(% style="text-align:left" %) 374 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 455 +{ 456 + "id": "" , ~/~/ ID пользователя 375 375 "lastName": "" , ~/~/ Фамилия , 376 376 "firstName": "" , ~/~/ Имя 377 377 "position": "" , ~/~/ Должность ... ... @@ -388,9 +388,8 @@ 388 388 "kind": "" , ~/~/ тип аутентификации 389 389 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 390 390 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 473 +} 391 391 392 -(% style="text-align:left" %) 393 -(% style="color:#000000; font-weight:normal" %)} 394 394 395 395 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 396 396 ... ... @@ -411,19 +411,16 @@ 411 411 412 412 (% style="color:#000000" %)Параметры в теле запроса (JSON): 413 413 414 -(% style="color:#000000" %){ 415 - 495 +(% style="color:#000000" %){(%%) 416 416 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 417 417 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 418 418 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 419 419 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 420 - 421 421 (% style="color:#000000" %)} 422 422 423 423 (% style="color:#000000" %)Ответ: 424 424 425 425 (% style="color:#000000" %){ (%%) 426 - 427 427 "id": "" , ~/~/ идентификатор пользователя 428 428 "lastName": "" , ~/~/ фамилия 429 429 "firstName": "" , ~/~/ имя ... ... @@ -437,7 +437,6 @@ 437 437 "sessionDuration":"", ~/~/ длительность сессии в минутах 438 438 "status": "1", ~/~/ статус пользователя 439 439 "lastLogged": "", ~/~/ дата/время последней авторизации 440 - 441 441 (% style="color:#000000" %)} 442 442 443 443 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -511,10 +511,8 @@ 511 511 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 512 512 513 513 (% lang="en-US" style="text-align:left" %) 514 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 515 - 516 -(% lang="en-US" style="text-align:left" %) 517 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 591 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 592 + "id": "" , ~/~/ ID пользователя 518 518 "lastName": "" , ~/~/ фамилия 519 519 "firstName": "" , ~/~/ имя 520 520 "position": "" , ~/~/ должность ... ... @@ -536,9 +536,7 @@ 536 536 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 537 537 }, 538 538 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 539 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 540 - 541 -(% lang="en-US" style="text-align:left" %) 614 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 542 542 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 543 543 544 544 (% lang="en-US" style="text-align:left" %) ... ... @@ -545,10 +545,8 @@ 545 545 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 546 546 547 547 (% lang="en-US" style="text-align:left" %) 548 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 549 - 550 -(% lang="en-US" style="text-align:left" %) 551 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 621 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 622 + "id": "" , ~/~/ идентификатор пользователя 552 552 "lastName": "" , ~/~/ фамилия 553 553 "firstName": "" , ~/~/ имя 554 554 "position": "" , ~/~/ должность ... ... @@ -569,10 +569,8 @@ 569 569 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 570 570 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 571 571 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 643 +} 572 572 573 -(% lang="en-US" style="text-align:left" %) 574 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 575 - 576 576 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 577 577 578 578 (% class="box warningmessage" %) ... ... @@ -592,12 +592,10 @@ 592 592 593 593 (% style="color:#000000" %)Параметры в теле запроса (JSON): 594 594 595 -(% style="color:#000000" %){ 596 - 664 +(% style="color:#000000" %){(%%) 597 597 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 598 598 "description": "" , ~/~/ описание 599 599 "data": "" , ~/~/ данные, связанные со сменой статуса 600 - 601 601 (% style="color:#000000" %)} 602 602 603 603 (% style="text-align:left" %) ... ... @@ -619,7 +619,7 @@ 619 619 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 620 620 621 621 [ 622 - 689 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 623 623 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 624 624 ] 625 625 ... ... @@ -711,7 +711,6 @@ 711 711 "maxspeed": 0, 712 712 "width": 0, 713 713 "imbeddedtrailer": true, 714 - "fueloutlay": 0, 715 715 "hoppercapacity": 0, 716 716 "hopperdischargespeed": 0, 717 717 "modelType": 0, ... ... @@ -728,9 +728,8 @@ 728 728 |(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч 729 729 |(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах 730 730 |(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат 731 -|(% style="width:215px" %)(% style="color:#000000" %)fueloutlay|(% style="width:861px" %)- 732 732 |(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера 733 -|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость выгрузки из бункера, л/сек 798 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость2 выгрузки из бункера, л/сек 734 734 |(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 735 735 |(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 736 736 |(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта ... ... @@ -822,12 +822,24 @@ 822 822 "maxspeed": 0, 823 823 "width": 0, 824 824 "imbeddedtrailer": true, 825 - "fueloutlay": 0, 826 826 "hoppercapacity": 0, 827 827 "hopperdischargespeed": 0, 828 828 "modelType": 0 829 829 } 830 830 895 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 896 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 897 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 898 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 899 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 900 +|(% style="width:215px" %)(% style="color:#000000" %)picture|(% style="width:861px" %)Название иконки транспорта 901 +|(% style="width:215px" %)(% style="color:#000000" %)minspeed|(% style="width:861px" %)Минимальная технологическая скорость обработки поля, в км/ч 902 +|(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч 903 +|(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах 904 +|(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат 905 +|(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера 906 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость выгрузки из бункера, л/сек 907 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 831 831 832 832 == (% style="color:#000000; font-size:16px" %)**Редактирование модели**(%%) == 833 833 ... ... @@ -882,6 +882,20 @@ 882 882 "modelType": 0 883 883 } 884 884 962 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 963 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 964 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 965 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 966 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 967 +|(% style="width:215px" %)(% style="color:#000000" %)picture|(% style="width:861px" %)Название иконки транспорта 968 +|(% style="width:215px" %)(% style="color:#000000" %)minspeed|(% style="width:861px" %)Минимальная технологическая скорость обработки поля, в км/ч 969 +|(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч 970 +|(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах 971 +|(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат 972 +|(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера 973 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость выгрузки из бункера, л/сек 974 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 975 + 885 885 == (% style="color:#000000; font-size:16px" %)**Удаление модели**(%%) == 886 886 887 887 (% class="box errormessage" %) ... ... @@ -901,7 +901,7 @@ 901 901 902 902 Ответ: В случае успеха **Success 200** 903 903 904 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 995 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 905 905 906 906 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 907 907 ... ... @@ -930,6 +930,17 @@ 930 930 931 931 ((( 932 932 { 1024 + 1025 +((( 1026 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1027 + "IsSackEnabled": true, ~/~/ Определяет, должен ли внутренний сервер отвечать устройству сообщением SACK при получении сообщения от устройства 1028 +))) 1029 + 1030 +((( 1031 + ~/~/Используется только на ТС с типом устройства quecklink gv56, quecklink gv58, quecklink 1032 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1033 +))) 1034 + 933 933 "vehicleId": "", ~/~/ ID объекта 934 934 "name": "", ~/~/ Имя объекта 935 935 "imei": "", ~/~/ IMEI объекта ... ... @@ -937,19 +937,15 @@ 937 937 "deviceTypeName": "", ~/~/ Название типа устройства 938 938 "sim1": "", ~/~/ Номер SIM1 939 939 "sim2": "", ~/~/ Номер SIM2 940 - 941 941 "parentId": "", ~/~/ ID клиента-родителя 942 942 "parentName": "", ~/~/ Наименование клиента-родителя 943 943 "modelId": "", ~/~/ ID модели объекта 944 944 "modelName": "", ~/~/ Имя модели объекта 945 - 946 946 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 947 947 "unitName": "string", ~/~/ Наименование подразделения 948 948 "status": 0, ~/~/ Статус объекта 949 - 950 950 "createdAt": "", ~/~/ Дата создания объекта 951 951 }, 952 - 953 953 "customFields": [ ~/~/ Произвольные поля 954 954 { 955 955 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -972,8 +972,7 @@ 972 972 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 973 973 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 974 974 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 975 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 976 - 1073 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 977 977 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 978 978 "mileageCoeff": 0, ~/~/ коэффициент пробега 979 979 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1003,7 +1003,6 @@ 1003 1003 "retries": 0 ~/~/ Количество попыток 1004 1004 } 1005 1005 ], 1006 - 1007 1007 "sensors": [ ~/~/ Датчики 1008 1008 { 1009 1009 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1030,6 +1030,7 @@ 1030 1030 ], 1031 1031 "showInTooltip": true, ~/~/ Отображать в подсказке 1032 1032 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1129 + "color": "string", ~/~/ Код цвета датчиков 1033 1033 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1034 1034 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1035 1035 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1044,31 +1044,19 @@ 1044 1044 }, 1045 1045 1046 1046 ~/~/ Характерные для произвольного: 1047 - 1048 1048 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1049 - 1050 1050 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1051 - 1052 1052 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1053 - 1054 1054 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1055 - 1056 1056 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1057 - 1058 1058 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1059 - 1060 1060 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1061 - 1062 1062 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1063 - 1064 1064 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1065 - 1066 1066 ~/~/ "ValueOn": "Вкл.", 1067 - 1068 1068 ~/~/ "ValueOff": "Выкл." 1069 1069 "summaryMaxValue": 0 ~/~/ Макс. значение 1070 1070 } 1071 - 1072 1072 "drivers": [ ~/~/ Водители 1073 1073 { 1074 1074 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1077,7 +1077,6 @@ 1077 1077 "isDefault": true ~/~/ По умолчанию 1078 1078 } 1079 1079 ], 1080 - 1081 1081 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1082 1082 { 1083 1083 "id": "", ~/~/ ID задания ... ... @@ -1094,19 +1094,27 @@ 1094 1094 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1095 1095 } 1096 1096 ], 1097 - 1098 - "statusHistory": [ ~/~/ История статусов 1181 +"statusHistory": [ ~/~/ История статусов 1099 1099 { 1100 1100 "status": 0, 1101 1101 "date": "2023-05-22T09:57:39.562Z", 1102 1102 "description": "string", 1103 1103 "additionalInfo": "string" 1104 - } 1105 - ] 1106 1106 1188 +((( 1107 1107 } 1190 + ], 1191 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1192 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1108 1108 ))) 1109 1109 1195 +((( 1196 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1197 +} 1198 + 1199 +))) 1200 +))) 1201 + 1110 1110 (% style="text-align:left" %) 1111 1111 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 1112 1112 ... ... @@ -1113,6 +1113,75 @@ 1113 1113 (% style="text-align:left" %) 1114 1114 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1115 1115 1208 + 1209 +== **Отправить команду на терминал** == 1210 + 1211 +(% class="box successmessage" %) 1212 +((( 1213 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1214 +))) 1215 + 1216 +Команда для отправки на тс. 1217 + 1218 +{ 1219 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId) 1220 +"command": "", ~/~/ Текст отправляемой команды 1221 +"retries": "", ~/~/ Количество попыток отправки на терминал 1222 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 1223 +} 1224 + 1225 +В ответ получаем cmdid 1226 + 1227 + 1228 +== **Получить ответ на отправленную на ТС команду** == 1229 + 1230 +(% class="box infomessage" %) 1231 +((( 1232 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1233 +))) 1234 + 1235 +Идентификатор команды: cmdId 1236 + 1237 +Запрос от терминала на ответ команды 1238 + 1239 +Пример ответ от терминала: 1240 + 1241 +ID= "" ~/~/ идентификатор объекта 1242 +Soft="" ~/~/ версия софта 1243 +GPS=4 ~/~/ тип трекера 1244 +Time=11:05:43 28.06.24 ~/~/ время запроса 1245 +Lat=45.056221 ~/~/ широта 1246 +Lon=39.035938 ~/~/ долгота 1247 +Speed=0.0 ~/~/ скорость 1248 +Course=181.4 ~/~/направление 1249 + 1250 +((( 1251 +== **Список отправленных объекту команд с ответами** == 1252 + 1253 +(% class="box infomessage" %) 1254 +((( 1255 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1256 +))) 1257 + 1258 +Идентификатор ТС: vehicleId 1259 + 1260 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1261 + 1262 +Пример ответа терминала 1263 + 1264 +[ 1265 +{ 1266 +"id": "", ~/~/ идентификатор пользователя 1267 +"commandText": "", ~/~/Текст команды. 1268 +"templateId": "", ~/~/Идентификатор шаблона 1269 +"updated": "", ~/~/ Время отправки 1270 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1271 +"answer": "", ~/~/ Ответ терминала. 1272 +"status": "" ~/~/ Статус отправки 1273 +} 1274 +] 1275 +))) 1276 + 1116 1116 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1117 1117 1118 1118 (% class="box successmessage" %) ... ... @@ -1132,6 +1132,11 @@ 1132 1132 1133 1133 (% style="color:#000000" %){ 1134 1134 1296 + 1297 +((( 1298 + "vehicleId": 0, ~/~/ ID ТС 1299 +))) 1300 + 1135 1135 "parentId": "" , ~/~/ ID клиента 1136 1136 "name": "" , ~/~/ имя ТС 1137 1137 "imei": "" , ~/~/ IMEI ... ... @@ -1152,7 +1152,6 @@ 1152 1152 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1153 1153 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1154 1154 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1155 - 1156 1156 "mileageCalcMethod": 0, 1157 1157 "mileageCoeff": 0, 1158 1158 "locationByCellId": true, ... ... @@ -1185,7 +1185,6 @@ 1185 1185 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1186 1186 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1187 1187 } 1188 - 1189 1189 "drivers": [ ~/~/ Водители 1190 1190 { 1191 1191 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1200,8 +1200,7 @@ 1200 1200 "retries": 0 1201 1201 } 1202 1202 ], 1203 - 1204 - "sensors": [ ~/~/ Датчики 1367 +"sensors": [ ~/~/ Датчики 1205 1205 { 1206 1206 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1207 1207 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1227,6 +1227,7 @@ 1227 1227 ], 1228 1228 "showInTooltip": true, ~/~/ Отображать в подсказке 1229 1229 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1393 + "color": "string", ~/~/ код цвета датчиков 1230 1230 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1231 1231 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1232 1232 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1239,103 +1239,293 @@ 1239 1239 "additionalProp2": "string", 1240 1240 "additionalProp3": "string" 1241 1241 }, 1242 - 1243 1243 ~/~/ Характерные для произвольного: 1244 - 1245 1245 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1246 - 1247 1247 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1248 - 1249 1249 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1250 - 1251 1251 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1252 - 1253 1253 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1254 - 1255 1255 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1256 - 1257 1257 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1258 - 1259 1259 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1260 - 1261 1261 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1262 - 1263 1263 ~/~/ "ValueOn": "Вкл.", 1264 - 1265 1265 ~/~/ "ValueOff": "Выкл." 1266 - "summaryMaxValue": 0 ~/~/ Макс. значение 1418 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1419 + 1420 +((( 1421 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1422 + { 1423 + "from": 0, ~/~/ С какого значения 1424 + "color": "string", ~/~/ Каким цветом 1425 + "text": "string" ~/~/ Текст подписи к этому интервалу 1426 + } 1427 + ] 1267 1267 } 1268 1268 ], 1430 +))) 1431 + 1432 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1433 + 1434 + 1269 1269 "customFields": [ ~/~/ Произвольные поля 1270 1270 { 1271 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1272 - "name": "string", 1273 - "value": "string", 1274 - "forClient": true, 1275 - "forTooltip": true, 1276 - "forReport": true 1277 - } 1278 - ] 1437 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1438 + "name": "string", ~/~/ Наименование произвольного поля 1439 + "value": "string", ~/~/ Значение произвольного поля 1440 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1441 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1442 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1443 + 1444 +((( 1445 + } 1446 + ], 1447 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1448 +))) 1449 + 1450 +((( 1451 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1279 1279 } 1453 +))) 1280 1280 1455 + 1281 1281 (% style="color:#000000" %)Ответ: 1282 1282 1283 -(% style="color:#000000" %){ 1284 1284 1285 - "vehicleId": "", ~/~/ID ТС 1286 - "parentId": "", ~/~/Guid владельца ТС 1287 - "name": "", ~/~/Имя объекта 1288 - "imei": "", ~/~/IMEI 1289 - "deviceTypeId": "", ~/~/ID типа устройства 1290 - "modelId": "", ~/~/ID модели 1291 - "unitId": "", ~/~/ID подразделения 1292 - "sim1": "", ~/~/SIM1 1293 - "sim2": "", ~/~/SIM2 1294 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1295 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1296 - "counters": { ~/~/Счётчики 1297 - "mileageEnabled": true, 1298 - "motohoursEnabled": true, 1299 - "mileage": "", 1300 - "motohours": 345.0 1301 - }, 1302 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1303 - "id": null, 1304 - "enabled": true, ~/~/флаг включения 1305 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1306 - "login": "", ~/~/ имя учетной записи 1307 - "password": "" ~/~/ пароль учетной записи 1308 - }, 1309 - "inspectionTasks": { ~/~/ задания на ТО 1310 - "id": "", ~/~/ ID задачи 1311 - "enabled": false, ~/~/ Признак включения 1312 - "name": "", ~/~/ Имя задания 1313 - "description": "", ~/~/ Описание задания 1314 - "mileageCondition": "", ~/~/ Условие по пробегу 1315 - "lastMileage": "", ~/~/ Пробег (в метрах) 1316 - "motohoursCondition": "", ~/~/ Условие по моточасам 1317 - "lastMotohours": "", ~/~/ Моточасы 1318 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1319 - "kind": "", ~/~/ Вид периодичности по времени 1320 - "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1459 +((( 1460 +((( 1461 +((( 1462 +{ 1463 + "vehicleId": 0, ~/~/ ID ТС 1464 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1465 + "name": "string", ~/~/ Имя объекта 1466 + "imei": "string", ~/~/ IMEI 1467 + "deviceTypeId": 0, ~/~/ ID типа устройства 1468 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1469 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1470 + "sim1": "string", ~/~/ SIM1 1471 + "sim2": "string", ~/~/ SIM2 1472 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1473 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1474 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1475 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1476 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1477 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1478 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1479 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1480 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1481 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1482 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1483 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1484 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1485 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1486 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1487 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1488 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1489 + "counters": { ~/~/ Dto для состояний счётчиков 1490 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1491 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1492 + "mileage": 0, ~/~/ Пробег 1493 + "motohours": 0 ~/~/ Моточасы 1494 + }, 1495 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1496 + "id": "string", ~/~/ CMSV6 Идентификатор 1497 + "enabled": true, ~/~/ Признак включения 1498 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1499 + "login": "string", ~/~/ CMSV6 имя учетной записи 1500 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1501 + }, 1502 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1503 + { 1504 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1505 + "enabled": true, ~/~/ Признак включения 1506 + "name": "string", ~/~/ Имя задания 1507 + "description": "string", ~/~/ Описание задания 1508 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1509 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1510 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1511 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1512 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1513 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1514 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1515 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1321 1321 } 1517 + ], 1518 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1519 + { 1520 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1521 + "inputNumber": 0, ~/~/ № входа. 1522 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1523 + "comment": "string", ~/~/ Комментарий 1524 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1525 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1526 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1527 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1528 + } 1529 + ], 1530 + "commandTemplates": [ ~/~/ Список шаблонов команд 1531 + { 1532 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1533 + "name": "string", ~/~/ Название шаблона команд 1534 + "command": "string", ~/~/ Команда на выполнение 1535 + "retries": 0 ~/~/ Лимит попыток отправки 1536 + } 1537 + ], 1538 + "sensors": [ ~/~/ Список датчиков 1539 + { 1540 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1541 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1542 + "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 1543 + "name": "string", ~/~/ Имя датчика 1544 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1545 + "inputNumber": 0, ~/~/ Номер входа 1546 + "pseudonym": "string", ~/~/ Псевдоним 1547 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1548 + "isInverted": true, ~/~/ Признак инверсии 1549 + "disabled": true, ~/~/ Датчик не участвует в обработке 1550 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1551 + "gradesTables": [ ~/~/ Тарировка 1552 + { 1553 + "grades": [ ~/~/ Таблицы тарировки 1554 + { 1555 + "input": 0, ~/~/ Вход 1556 + "output": 0 ~/~/ Выход 1557 + } 1558 + ], 1559 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1560 + } 1561 + ], 1562 + "showInTooltip": true, ~/~/ Отображение в подсказке 1563 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1564 + "color": "string", ~/~/ код цвета датчиков 1565 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1566 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1567 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1568 + "expr": "string", ~/~/ Выражение 1569 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1570 + "string" 1571 + ], 1572 + "customParams": { 1573 + "additionalProp1": "string", 1574 + "additionalProp2": "string", 1575 + "additionalProp3": "string" 1576 + }, 1577 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1578 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1579 + { 1580 + "from": 0, ~/~/ С какого значения 1581 + "color": "string", ~/~/ Каким цветом 1582 +))) 1322 1322 1323 -(% style="text-align:left" %) 1324 -(% style="color:#000000" %)} 1584 +((( 1585 + "text": "string" ~/~/ Текст подписи к этому интервалу 1586 + } 1587 + ] 1588 + } 1589 + ], 1590 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1591 + "customFields": [ ~/~/ Список произвольных полей 1592 + { 1593 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1594 + "name": "string", ~/~/ Наименование произвольного поля 1595 + "value": "string", ~/~/ Значение произвольного поля 1596 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1597 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1598 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1599 + } 1600 + ], 1601 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1602 +} 1603 +))) 1604 +))) 1605 +))) 1325 1325 1607 + 1326 1326 **Валидация:** 1327 1327 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1328 1328 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1329 1329 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1330 1330 1331 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 1332 1332 1614 +== **Импортировать историю ТС (Асинхронный запрос)** == 1615 + 1616 +(% class="box successmessage" %) 1617 +((( 1618 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 1619 +))) 1620 + 1621 +Метод запроса: **POST** 1622 + 1623 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 1624 + 1625 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 1626 + 1627 + 1628 +Ответ: 1629 + 1630 +{ 1631 + 1632 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1633 + 1634 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 1635 + 1636 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 1637 + 1638 + "Message": "string", ~/~/ Информация о выполнении запроса 1639 + 1640 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 1641 + 1642 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1643 + 1644 + "Data": "string" ~/~/ Данные 1645 + 1646 +} 1647 + 1648 + 1649 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 1650 + 1333 1333 (% class="box infomessage" %) 1334 1334 ((( 1653 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 1654 +))) 1655 + 1656 +Метод запроса: **GET** 1657 + 1658 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 1659 + 1660 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 1661 + 1662 + 1663 +Ответ: 1664 + 1665 +{ 1666 + 1667 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1668 + 1669 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 1670 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 1671 + 1672 + "Message": "string", ~/~/ Информация о выполнении запроса 1673 + 1674 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 1675 + 1676 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 1677 + 1678 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1679 + 1680 + "Data": "string" ~/~/ Данные 1681 + 1682 +} 1683 + 1684 + 1685 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1686 + 1687 +(% class="box infomessage" %) 1688 +((( 1335 1335 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1336 1336 ))) 1337 1337 1338 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1692 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1339 1339 1340 1340 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1341 1341 ... ... @@ -1369,9 +1369,12 @@ 1369 1369 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1370 1370 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1371 1371 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1372 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1373 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1374 - "customFields": null ~/~/ значение любого из произвольных полей ТС 1726 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1727 + "unitName": "string", ~/~/ Название подразделения (опционально) 1728 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1729 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1730 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1731 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1375 1375 } 1376 1376 1377 1377 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1378,8 +1378,14 @@ 1378 1378 1379 1379 (% style="color:#000000" %)Ответ: 1380 1380 1381 -(% style="color:#000000" %){ 1738 +(% style="color:#000000" %)[ 1739 +{ 1382 1382 1741 +((( 1742 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1743 +))) 1744 + 1745 +((( 1383 1383 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1384 1384 "name": "" ~/~/ наименование объекта 1385 1385 "imei": "" ~/~/ IMEI объекта ... ... @@ -1405,9 +1405,21 @@ 1405 1405 "forClient": true, ~/~/ право на отображение у клиента 1406 1406 "forTooltip": false, ~/~/ право на отображение в подсказке 1407 1407 "forReport": false ~/~/ право на отображение в отчетах 1408 - }(%%) 1409 -(% style="color:#000000" %)} 1771 +))) 1410 1410 1773 +((( 1774 + } 1775 + ], 1776 + "vehicleGroups": [ ~/~/ Группы ТС 1777 + { 1778 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1779 + "name": "string" ~/~/ Наименование группы ТС 1780 + } 1781 + ] 1782 + } 1783 +] 1784 +))) 1785 + 1411 1411 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1412 1412 1413 1413 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1439,13 +1439,11 @@ 1439 1439 "data": "", ~/~/ Данные 1440 1440 "overwrite": false, ~/~/ Флаг перезаписи 1441 1441 "stage": "", ~/~/ Состояние, может быть null 1442 - 1443 1443 (% style="color:#000000" %)} 1444 1444 1445 1445 (% style="color:#000000" %)Ответ: 1446 1446 1447 -(% style="color:#000000" %){ 1448 - 1821 +(% style="color:#000000" %){(%%) 1449 1449 "status": "", ~/~/ значение статуса 1450 1450 "date": "", ~/~/ Дата смены статуса 1451 1451 "description": "", ~/~/ Описание ... ... @@ -1452,10 +1452,10 @@ 1452 1452 "data": "", ~/~/ Данные 1453 1453 "overwrite": false, ~/~/ Флаг перезаписи 1454 1454 "stage": "", ~/~/ Состояние 1455 - 1456 -(% style="text-align:left" %) 1457 1457 (% style="color:#000000" %) } 1458 1458 1830 +== == 1831 + 1459 1459 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1460 1460 1461 1461 (% class="box warningmessage" %) ... ... @@ -1531,9 +1531,19 @@ 1531 1531 1532 1532 "drivers": [ ~/~/ Водители 1533 1533 { 1534 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1535 - "isDefault": true 1536 - } 1907 + 1908 +((( 1909 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1910 + "inputNumber": 0, ~/~/ № входа. 1911 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения. 1912 + "comment": "string", ~/~/ Комментарий. 1913 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1914 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1915 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения. 1916 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения. 1917 +))) 1918 + 1919 + } 1537 1537 ], 1538 1538 "commandTemplates": [ ~/~/ Шаблон команды 1539 1539 { ... ... @@ -1543,8 +1543,7 @@ 1543 1543 "retries": 0 1544 1544 } 1545 1545 ], 1546 - 1547 - "sensors": [ ~/~/ Датчики 1929 +"sensors": [ ~/~/ Датчики 1548 1548 { 1549 1549 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1550 1550 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1570,6 +1570,11 @@ 1570 1570 ], 1571 1571 "showInTooltip": true, ~/~/ Отображать в подсказке 1572 1572 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1955 + 1956 +((( 1957 + "color": "string",** ~/~/ **Цвет датчика 1958 +))) 1959 + 1573 1573 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1574 1574 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1575 1575 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1582,95 +1582,225 @@ 1582 1582 "additionalProp2": "string", 1583 1583 "additionalProp3": "string" 1584 1584 }, 1585 - 1586 1586 ~/~/ Характерные для произвольного: 1587 - 1588 1588 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1589 - 1590 1590 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1591 - 1592 1592 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1593 - 1594 1594 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1595 - 1596 1596 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1597 - 1598 1598 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1599 - 1600 1600 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1601 - 1602 1602 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1603 - 1604 1604 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1605 - 1606 1606 ~/~/ "ValueOn": "Вкл.", 1607 - 1608 1608 ~/~/ "ValueOff": "Выкл." 1609 1609 "summaryMaxValue": 0 ~/~/ Макс. значение 1985 + 1986 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1987 + { 1988 + "from": 0, ~/~/ С какого значения 1989 + "color": "string", ~/~/ Каким цветом 1990 + "text": "string" ~/~/ Текст подписи к этому интервалу 1991 + } 1992 + ] 1610 1610 } 1611 1611 ], 1995 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1996 + 1612 1612 "customFields": [ ~/~/ Произвольные поля 1613 - { 1614 - 1615 - "name": "string", 1616 - "value": "string", 1617 - "forClient": true, 1618 - "forTooltip": true, 1619 - "forReport": true 1998 + { 1999 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2000 + "name": "string", ~/~/ Наименование произвольного поля 2001 + "value": "string", ~/~/ Значение произвольного поля 2002 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2003 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2004 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1620 1620 } 1621 - ] 2006 + 2007 +((( 2008 + ], 2009 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 2010 +))) 2011 + 1622 1622 } 1623 1623 2014 + 1624 1624 (% style="color:#000000" %)Ответ: 1625 1625 1626 -(% lang="en-US" style="text-align:left" %) 1627 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 2017 +((( 2018 +{ 2019 + "vehicleId": 0, ~/~/ ID ТС 2020 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 2021 + "name": "string", ~/~/ Имя объекта 2022 + "imei": "string", ~/~/ IMEI 2023 + "deviceTypeId": 0, ~/~/ ID типа устройства 2024 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 2025 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 2026 + "sim1": "string", ~/~/ SIM1 2027 + "sim2": "string", ~/~/ SIM2 2028 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 2029 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 2030 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 2031 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 2032 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 2033 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 2034 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 2035 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 2036 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 2037 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 2038 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 2039 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 2040 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 2041 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 2042 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 2043 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 2044 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 2045 + "counters": { ~/~/ состояний счётчиков 2046 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 2047 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 2048 + "mileage": 0, ~/~/ Пробег 2049 + "motohours": 0 ~/~/ Моточасы 2050 + }, 2051 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 2052 + "id": "string", ~/~/ CMSV6 Идентификатор 2053 + "enabled": true, ~/~/ Признак включения 2054 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 2055 +))) 1628 1628 1629 -(% lang="en-US" style="text-align:left" %) 1630 - "vehicleId": "", ~/~/ ID ТС 1631 - "parentId": "", ~/~/ ID клиента 1632 - "name": "", ~/~/ имя ТС 1633 - "imei": "", ~/~/ IMEI 1634 - "deviceTypeId": "", ~/~/ типа устройства 1635 - "modelId": "", ~/~/ ID модели 1636 - "unitId": "", ~/~/ ID подразделения 1637 - "sim1": "", ~/~/ SIM 1 1638 - "sim2": "", ~/~/ SIM2 1639 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1640 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1641 - "counters": 1642 - { 1643 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1644 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1645 - "mileage": "", ~/~/ пробег 1646 - "motohours": "", ~/~/ моточасы 1647 - } 1648 - "cmsv6Parameters": ~/~/ параметры CMSv6 2057 + 2058 +((( 2059 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 2060 + "login": "string", ~/~/ CMSV6 имя учетной записи 2061 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 2062 + }, 2063 + "inspectionTasks": [ ~/~/ Задания на ТО 2064 + { 2065 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 2066 + "enabled": true, ~/~/ Признак включения 2067 + "name": "string", ~/~/ Имя задания 2068 + "description": "string", ~/~/ Описание задания 2069 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 2070 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 2071 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 2072 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 2073 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 2074 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 2075 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2076 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2077 + } 2078 + ], 2079 + "drivers": [ ~/~/ Список водителей 2080 + { 2081 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2082 + "inputNumber": 0, ~/~/ № входа. 2083 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2084 + "comment": "string", ~/~/ Комментарий. 2085 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2086 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2087 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2088 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2089 + } 2090 + ], 2091 + "commandTemplates": [ ~/~/ Список шаблонов команд 2092 + { 2093 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2094 + "name": "string", ~/~/ Название шаблона команд 2095 + "command": "string", ~/~/ Команда на выполнение 2096 + "retries": 0 ~/~/ Лимит попыток отправки 2097 + } 2098 + ], 2099 + "sensors": [ ~/~/ Список датчиков 2100 + { 2101 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2102 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2103 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2104 +))) 2105 + 2106 +((( 2107 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2108 +))) 2109 + 2110 +((( 2111 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2112 +))) 2113 + 2114 +((( 2115 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2116 +))) 2117 + 2118 +((( 2119 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2120 +))) 2121 + 2122 +((( 2123 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2124 + "name": "string", ~/~/ Имя датчика 2125 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2126 +))) 2127 + 2128 +((( 2129 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2130 + "inputNumber": 0, ~/~/ Номер входа 2131 + "pseudonym": "string", ~/~/ Псевдоним 2132 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2133 + "isInverted": true, ~/~/ Признак инверсии 2134 + "disabled": true, ~/~/ Датчик не участвует в обработке 2135 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2136 + "gradesTables": [ ~/~/ Тарировка 1649 1649 { 1650 - "id": ~/~/ идентификатор 1651 - "enabled": true, ~/~/ флаг включения 1652 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1653 - "login": "", ~/~/ имя учетной записи 1654 - "password": "", ~/~/ пароль учетной записи 1655 - } 1656 - "inspectionTasks": ~/~/ задания на ТО 1657 - { 1658 - "id": "", ~/~/ ID задания 1659 - "enabled": false, ~/~/ Признак включения 1660 - "name": "", ~/~/ Имя задания 1661 - "description": "", ~/~/ Описание задания 1662 - "mileageCondition": "", ~/~/ Условие по пробегу 1663 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1664 - "motohoursCondition": "", ~/~/ Условие по моточасам 1665 - "lastMotohours": "", ~/~/ Моточасы 1666 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1667 - "kind": "", ~/~/ Вид периодичности по времени 1668 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2138 + "grades": [ ~/~/ Таблицы тарировки 2139 + { 2140 + "input": 0, ~/~/ Вход 2141 + "output": 0 ~/~/ Выход 2142 + } 2143 + ], 2144 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1669 1669 } 2146 + ], 2147 + "showInTooltip": true, ~/~/ Отображение в подсказке 2148 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1670 1670 1671 -(% lang="en-US" style="text-align:left" %) 1672 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2150 +((( 2151 + "color": "string", ~/~/ цвет уведомлений 2152 +))) 1673 1673 2154 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2155 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2156 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2157 + "expr": "string", ~/~/ Выражение 2158 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2159 + "string" 2160 + ], 2161 + "customParams": { ~/~/ Дополнительные настройки 2162 + "additionalProp1": "string", 2163 + "additionalProp2": "string", 2164 + "additionalProp3": "string" 2165 + }, 2166 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2167 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2168 + { 2169 + "from": 0, ~/~/ С какого значения 2170 + "color": "string", ~/~/ Каким цветом 2171 + "text": "string" ~/~/ Текст подписи к этому интервалу 2172 + } 2173 + ] 2174 + } 2175 + ], 2176 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2177 + "customFields": [ ~/~/ Список произвольных полей 2178 + { 2179 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2180 + "name": "string", ~/~/ Наименование произвольного поля 2181 + "value": "string", ~/~/ Значение произвольного поля 2182 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2183 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2184 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2185 + } 2186 + ], 2187 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2188 +} 2189 +))) 2190 + 1674 1674 **Валидация:** 1675 1675 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1676 1676 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1709,18 +1709,15 @@ 1709 1709 1710 1710 (% style="color:#000000" %)Метод запроса: **GET** 1711 1711 1712 -(% 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]]2229 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/devices/types>>https://hosting.glonasssoft.ru/api/v3/devices/types]] 1713 1713 1714 1714 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1715 1715 1716 1716 (% style="color:#000000" %)Ответ: 1717 1717 1718 -(% style="color:#000000" %){ 1719 - 2235 +(% style="color:#000000" %){(%%) 1720 1720 "deviceTypeId" : "", ~/~/ ID типа устройства 1721 1721 "deviceTypeName" : "" ~/~/ Название типа устройства 1722 - 1723 -(% style="text-align:left" %) 1724 1724 (% style="color:#000000" %)} 1725 1725 1726 1726 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1742,13 +1742,10 @@ 1742 1742 1743 1743 (% style="color:#000000" %)Ответ: 1744 1744 1745 -(% style="color:#000000" %){ 1746 - 2259 +(% style="color:#000000" %){(%%) 1747 1747 "id": "", ~/~/ ID типа датчика 1748 1748 "name": "", ~/~/ Название 1749 1749 "description": "", ~/~/ Описание 1750 - 1751 -(% style="text-align:left" %) 1752 1752 (% style="color:#000000" %)} 1753 1753 1754 1754 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1792,6 +1792,56 @@ 1792 1792 } 1793 1793 ] 1794 1794 2306 +== (% style="color:#000000; font-size:16px" %)**Получить тип и номер входа сырого параметра **(%%) == 2307 + 2308 +(% class="box infomessage" style="text-align: left;" %) 2309 +((( 2310 +**POST /api/v3/terminalMessages/mapping** 2311 +))) 2312 + 2313 +Запрос позволяет узнать тип и номер входа для сырого параметра, приходящего по указанному протоколу. 2314 + 2315 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/terminalMessages/mapping 2316 + 2317 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2318 + 2319 +{ 2320 + "protocolType": 0, 2321 + "params": ["string"] 2322 +} 2323 + 2324 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2325 +|protocolType|ID типа протокола 2326 +|params|((( 2327 +Массив наименований параметров в сообщении 2328 +))) 2329 + 2330 +Ответ: 2331 + 2332 +{ 2333 + "protocolType": 0, 2334 + "mapping": { 2335 + "additionalProp1": { 2336 + "inputType": 0, 2337 + "inputNumber": 0 2338 + }, 2339 + "additionalProp2": { 2340 + "inputType": 0, 2341 + "inputNumber": 0 2342 + } 2343 + } 2344 +} 2345 + 2346 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2347 +|protocolType|Тип протокола 2348 +|inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 2349 +|inputNumber|((( 2350 +Номер входа 2351 +))) 2352 + 2353 +(% class="wikigeneratedid" %) 2354 +Перечень 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/]] 2355 + 1795 1795 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1796 1796 1797 1797 (% class="box infomessage" %) ... ... @@ -1816,6 +1816,11 @@ 1816 1816 "to": "2023-03-29T09:14:46.107Z" ~/~/ конец периода запроса 1817 1817 } 1818 1818 2380 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2381 +|vehicleId|ID объекта 2382 +|from|Дата и время начала периода запроса 2383 +|to|Дата и время окончания периода запроса 2384 + 1819 1819 Ответ: 1820 1820 1821 1821 [ ... ... @@ -1822,80 +1822,43 @@ 1822 1822 { 1823 1823 "messages": [ 1824 1824 { 1825 - "deviceTime": "2023-03-29T09:14:46.125Z", ~/~/ Время устройства 1826 - "serverTime": "2023-03-29T09:14:46.125Z", ~/~/ Время сервера 1827 - "speed": 0, ~/~/ Скорость, км/ч 1828 - "altitude": 0, ~/~/ Высота, м 1829 - "latitude": 0, ~/~/ Широта [-90°;90°] 1830 - "longitude": 0, ~/~/ Долгота [-180°;180°] 1831 - "satellites": 0, ~/~/ Кол-во спутников 1832 - "voltage": 0, ~/~/ Напряжение 1833 - "parameters": { ~/~/ список параметров датчиков передаваемых терминалом 2391 + "deviceTime": "2023-11-29T07:40:44.052Z", 2392 + "serverTime": "2023-11-29T07:40:44.052Z", 2393 + "speed": 0, 2394 + "altitude": 0, 2395 + "latitude": 0, 2396 + "longitude": 0, 2397 + "satellites": 0, 2398 + "course": 0, 2399 + "voltage": 0, 2400 + "parameters": { 1834 1834 "additionalProp1": "string", 1835 1835 "additionalProp2": "string", 1836 1836 "additionalProp3": "string" 1837 1837 }, 1838 - "photoCount": 0 ~/~/ Кол-во фото 2405 + "photoCount": 0, 2406 + "lbsCorrectedCoords": true, 2407 + "protocolType": 0 1839 1839 } 1840 1840 ] 1841 1841 } 1842 1842 ] 1843 1843 1844 -== (% style="color:#000000; font-size:16px" %)**Экспорт сообщений**(%%) == 2413 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2414 +|deviceTime|Время сообщения терминала 2415 +|serverTime|Время когда сообщение поступило на сервер 2416 +|speed|Скорость 2417 +|altitude|Высота над уровнем моря 2418 +|latitude|Широта 2419 +|longitude|Долгота 2420 +|satellites|Кол-во спутников 2421 +|course|Курс 2422 +|voltage|Бортовое напряжение 2423 +|parameters|Список параметров и их значений 2424 +|photoCount|Количество фото 2425 +|lbsCorrectedCoords|Признак того, что координаты были скорректированы по LBS, true - скорректированы, false - не скорректированы 2426 +|protocolType|ID типа протокола 1845 1845 1846 -(% class="box infomessage" %) 1847 -((( 1848 -**POST /api/v3/vehicles/export/history** 1849 -))) 1850 - 1851 -Метод возвращает список сообщений терминала объекта за выбранный период. 1852 - 1853 -(% style="text-align: left;" %) 1854 -Метод запроса **POST** 1855 - 1856 -(% style="text-align: left;" %) 1857 -(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/export/history 1858 - 1859 -(% style="text-align: left;" %) 1860 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1861 - 1862 -{ 1863 - "vehicleId": 0, ~/~/ ID объекта 1864 - "asArchive": true, ~/~/ true - Архивировать файл, False - не архивировать 1865 - "from": "2023-09-27T12:17:45.973Z", ~/~/ Дата и время начала запроса 1866 - "to": "2023-09-27T12:17:45.973Z" ~/~/ Дата и время окончания запроса 1867 -} 1868 - 1869 -Ответ: 1870 - 1871 -Получаете файл. Сообщение: Code 200/Success 1872 - 1873 -== (% style="color:#000000; font-size:16px" %)**Статус экспорта сообщений**(%%) == 1874 - 1875 -(% class="box infomessage" %) 1876 -((( 1877 -**GET /api/v3/vehicles/export/history/status** 1878 -))) 1879 - 1880 -Метод возвращает список сообщений терминала объекта за выбранный период. 1881 - 1882 -(% style="text-align: left;" %) 1883 -Метод запроса **GET** 1884 - 1885 -(% style="text-align: left;" %) 1886 -(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/export/history/status 1887 - 1888 -(% style="text-align: left;" %) 1889 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1890 - 1891 -Ответ: 1892 - 1893 -{ 1894 - "activity": true, ~/~/ статус экспорт, где true - экспорт в процессе выполнения, false - в данный момент ничего не экспортируется. 1895 - "progress": 0, ~/~/ прогресс экспорта, от 0 до 100%. 1896 - "message": "string" ~/~/ текст описывающий статус. 1897 -} 1898 - 1899 1899 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос данных об объекте за период**(%%) = 1900 1900 1901 1901 == (% style="color:#000000; font-size:16px" %)**Получение данных о пробеге и моточасах транспортного средства**(%%) == ... ... @@ -1932,10 +1932,14 @@ 1932 1932 { 1933 1933 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 1934 1934 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 1935 - "mileageBegin": 0, ~/~/ Пробег на начало периода 1936 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 1937 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 1938 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2464 + "mileage": 0, ~/~/ Пробег за период, километры 2465 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2466 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2467 + "motohours": 0, ~/~/ Моточасы за период, секунды 2468 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2469 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2470 + "idlingTime": 0 ~/~/ Холостой ход за период, секунд 2471 + 1939 1939 } 1940 1940 ] 1941 1941 } ... ... @@ -1984,6 +1984,12 @@ 1984 1984 } 1985 1985 ] 1986 1986 2520 +(% class="box warningmessage" %) 2521 +((( 2522 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2523 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2524 +))) 2525 + 1987 1987 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 1988 1988 1989 1989 (% class="box infomessage" %) ... ... @@ -2029,6 +2029,96 @@ 2029 2029 } 2030 2030 ] 2031 2031 2571 + 2572 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) == 2573 + 2574 +(% class="box infomessage" %) 2575 +((( 2576 +**POST /api/v3/vehicles/moveStop** 2577 +))) 2578 + 2579 +Метод запроса: **POST** 2580 + 2581 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop 2582 + 2583 +В заголовках запроса: X-Auth: Токен авторизации 2584 + 2585 + 2586 +Тело запроса: 2587 + 2588 +{ 2589 + "vehicleIds": [ ], ~/~/ Список ID объектов 2590 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2591 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2592 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2593 +} 2594 + 2595 +Ответ: 2596 + 2597 +[ 2598 + { 2599 + "vehicleId": 0, ~/~/ ID объекта 2600 + "vehicleName": "string", ~/~/ Имя объекта 2601 + "moves": [ ~/~/ Событие движения 2602 + { 2603 + "mileage": 0, ~/~/ Пробег, км 2604 + "eventId": 0, ~/~/ Идентификатор события 2605 + "eventName": "string", ~/~/ Название события 2606 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2607 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2608 + "duration": 0 ~/~/ Продолжительность события, секунд 2609 + } 2610 + ], 2611 + "stops": [ ~/~/ События стоянок 2612 + { 2613 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2614 + "eventId": 0, ~/~/ Идентификатор события 2615 + "eventName": "string", ~/~/ Название события 2616 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2617 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2618 + "duration": 0 ~/~/ Продолжительность события, секунд 2619 + } 2620 + ] 2621 + } 2622 +] 2623 + 2624 + 2625 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2626 + 2627 +(% class="box infomessage" %) 2628 +((( 2629 +**POST /api/v3/vehicles/getlastdata** 2630 +))) 2631 + 2632 +Метод запроса: **POST** 2633 + 2634 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata 2635 + 2636 +В заголовках запроса: X-Auth: Токен авторизации 2637 + 2638 + 2639 +В теле запроса перечисляете массив id объектов, в квадратных скобках через запятую. 2640 + 2641 +Ответ: 2642 + { 2643 + "vehicleId": 0, ~/~/Идентификатор объекта. 2644 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификатор объекта. 2645 + "vehicleNumber": "string",~/~/Номер объекта. 2646 + "receiveTime": "2024-02-27T14:11:00.315Z",~/~/Время получения записи на сервере, т.е. время срабатывания + время передачи от устройства на сервер 2647 + "recordTime": "2024-02-27T14:11:00.315Z",~/~/Время записи от устройства, т.е. время фактического события на транспортном средстве. 2648 + "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2649 + "speed": 0,~/~/Скорость объекта. 2650 + "course": 0,~/~/Курс движения [0;360] 2651 + "latitude": 0,~/~/Широта [-90°;90°]. 2652 + "longitude": 0,~/~/Долгота [-180°;180°]. 2653 + "address": "string",~/~/Адрес. 2654 + "geozones": [ ~/~/Сведения по геозонам. 2655 + { 2656 + "id": 0, 2657 + "name": "string" 2658 + } 2659 + 2660 + 2032 2032 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2033 2033 2034 2034 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2336,6 +2336,32 @@ 2336 2336 2337 2337 Success 2338 2338 2968 + 2969 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2970 + 2971 +(% class="box warningmessage" %) 2972 +((( 2973 +**PUT** /api/v3/notifications/prolongation 2974 +))) 2975 + 2976 +Метод позволяет продлить уведомления. 2977 + 2978 +Метод запроса **PUT** 2979 + 2980 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 2981 + 2982 +В заголовках запроса: X-Auth: Токен авторизации. 2983 + 2984 +Тело запроса: 2985 + 2986 +[ 2987 + 2988 +0 2989 + 2990 +] 2991 + 2992 +где 0 идентификатор ids. 2993 + 2339 2339 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2340 2340 2341 2341 (% class="box errormessage" %) ... ... @@ -2927,6 +2927,83 @@ 2927 2927 Success 2928 2928 2929 2929 3585 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Назначения агрегатов**(%%) = 3586 + 3587 +== (% style="color:#000000; font-size:16px" %)**Получить список назначений агрегатов на выбранные объекты**(%%) == 3588 + 3589 +(% class="box infomessage" %) 3590 +((( 3591 +**POST /api/v3/Trailers** 3592 +))) 3593 + 3594 +Пример запроса: 3595 + 3596 +{ 3597 + "startDate": "2023-11-14T10:48:03.671Z", 3598 + "endDate": "2023-11-14T10:48:03.671Z", 3599 + "ids": [ 0 ], 3600 + "timezone": 0 3601 +} 3602 + 3603 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3604 +|(% style="width:215px" %)startDate|(% style="width:861px" %)Дата и время начала запроса 3605 +|(% style="width:215px" %)endDate|(% style="width:861px" %)Дата и время окончания запроса 3606 +|(% style="width:215px" %)ids|(% style="width:861px" %)Массив ID объектов 3607 +|(% style="width:215px" %)timezone|(% style="width:861px" %)Часовой пояс, по умолчанию UTC. 3608 + 3609 +Пример ответа: 3610 + 3611 +[ 3612 + { 3613 + "SD": "2023-11-14T10:48:03.717Z", 3614 + "ED": "2023-11-14T10:48:03.717Z", 3615 + "id": 0, 3616 + "SLat": 0, 3617 + "SLon": 0, 3618 + "ELat": 0, 3619 + "ELon": 0, 3620 + "mileage": 0 3621 + "Duration": 0 3622 + "Address": "string", 3623 + "Address2": "string", 3624 + "name": "string", 3625 + "rid": "string", 3626 + "rguid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3627 + "trailer": { 3628 + "ModelGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3629 + "Number": "string", 3630 + "Description": "string", 3631 + "OwnerGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3632 + "ExternalID": "string", 3633 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3634 + "CreateTime": "2023-11-14T10:48:03.717Z", 3635 + "UpdateTime": "2023-11-14T10:48:03.717Z", 3636 + "IsDeleted": true 3637 + }, 3638 + "filesCount": 0, 3639 + } 3640 +] 3641 + 3642 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3643 +|SD|Дата и время начала события 3644 +|ED|Дата и время окончания события 3645 +|id|ID объекта 3646 +|SLat|Широта начальной координаты 3647 +|SLon|Долгота начальной координаты 3648 +|ELat|Широта конечной координаты 3649 +|ELon|Долгота конечной координаты 3650 +|mileage|Пробег 3651 +|Duration|Продолжительность 3652 +|Address|Адрес начального местоположения 3653 +|Address2|Адрес конечного местоположения 3654 +|name|Имя радиометки 3655 +|rid|Номер радиометки 3656 +|rguid|ID радиометки 3657 +|trailer|Информация об агрегате 3658 +|ModelGuid|ID агрегата 3659 +|Number|Название/номер агрегата 3660 +|Description|Текст примечания агрегата 3661 + 2930 2930 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Карты-метки**(%%) = 2931 2931 2932 2932 == (% style="color:#000000; font-size:16px" %)**Получить список карт-меток определенного клиента**(%%) == ... ... @@ -2948,13 +2948,19 @@ 2948 2948 { 2949 2949 "name": "string", 2950 2950 "number": 0, 2951 - "period": 0, ~/~/ Частота трансляции радиометки3683 + "period": 0, 2952 2952 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 2953 2953 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 2954 - "deleted": true 2955 2955 } 2956 2956 ] 2957 2957 3689 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3690 +|parentId|ID клиента 3691 +|name|Название карты-метки 3692 +|number|Номер 3693 +|period|Период запросов в секундах (работает только для агрегатов) 3694 +|id|ID карты-метки 3695 + 2958 2958 == (% style="color:#000000; font-size:16px" %)**Получить данные карты-метки**(%%) == 2959 2959 2960 2960 (% class="box infomessage" %) ... ... @@ -2970,13 +2970,18 @@ 2970 2970 { 2971 2971 "name": "string", 2972 2972 "number": 0, 2973 - "period": 0, ~/~/ Частота трансляции радиометки3711 + "period": 0, 2974 2974 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 2975 2975 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 2976 - "deleted": true 2977 2977 } 2978 2978 ] 2979 2979 3717 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3718 +|name|Название карты-метки 3719 +|number|Номер 3720 +|period|Период запросов в секундах (работает только для агрегатов) 3721 +|id|ID карты-метки 3722 +|parentId|ID клиента 2980 2980 2981 2981 == (% style="color:#000000; font-size:16px" %)**Добавить карту-метку**(%%) == 2982 2982 ... ... @@ -2992,7 +2992,6 @@ 2992 2992 "number": 0, 2993 2993 "period": 0, 2994 2994 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 2995 - "deleted": true 2996 2996 } 2997 2997 2998 2998 Ответ: ... ... @@ -3003,9 +3003,15 @@ 3003 3003 "period": 0, 3004 3004 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3005 3005 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3006 - "deleted": true 3007 3007 } 3008 3008 3750 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3751 +|name|Название карты-метки 3752 +|number|Номер 3753 +|period|Период запросов в секундах (работает только для агрегатов) 3754 +|id|ID карты-метки 3755 +|parentId|ID клиента 3756 + 3009 3009 == (% style="color:#000000; font-size:16px" %)**Редактировать карту-метку**(%%) == 3010 3010 3011 3011 (% class="box warningmessage" %) ... ... @@ -3021,7 +3021,6 @@ 3021 3021 "period": 0, 3022 3022 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3023 3023 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3024 - "deleted": true 3025 3025 } 3026 3026 3027 3027 Ответ: ... ... @@ -3032,9 +3032,15 @@ 3032 3032 "period": 0, 3033 3033 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3034 3034 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3035 - "deleted": true 3036 3036 } 3037 3037 3784 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3785 +|name|Название карты-метки 3786 +|number|Номер 3787 +|period|Период запросов в секундах (работает только для агрегатов) 3788 +|id|ID карты-метки 3789 +|parentId|ID клиента 3790 + 3038 3038 == (% style="color:#000000; font-size:16px" %)**Удалить карту-метку**(%%) == 3039 3039 3040 3040 (% class="box errormessage" %) ... ... @@ -3042,7 +3042,7 @@ 3042 3042 **DELETE /api/v3/Rfids/{rfidGuid}** 3043 3043 ))) 3044 3044 3045 -Передаем параметр rfidGuid - идентификатор карты-метки 3798 +Передаем параметр **rfidGuid** - идентификатор карты-метки 3046 3046 3047 3047 Ответ: 3048 3048 ... ... @@ -3283,6 +3283,8 @@ 3283 3283 **PUT /api/v3/Billing/client/balance** 3284 3284 ))) 3285 3285 4039 +Устанавливает указанное значение баланса не создавая операции пополнение/снятие. 4040 + 3286 3286 Тело запроса: 3287 3287 3288 3288 { ... ... @@ -3296,6 +3296,50 @@ 3296 3296 |(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3297 3297 |(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 3298 3298 4054 +== (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) == 4055 + 4056 +(% class="box warningmessage" %) 4057 +((( 4058 +**PUT /api/v3/billing/client/balance/deposit** 4059 +))) 4060 + 4061 +Создает операцию **Пополнение **с указанной суммой 4062 + 4063 +Тело запроса: 4064 + 4065 +{ 4066 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4067 + "Balance": 0 4068 +} 4069 + 4070 +Ответ: Success 4071 + 4072 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4073 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4074 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4075 + 4076 +== (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) == 4077 + 4078 +Создает операцию **Списание **с указанной суммой 4079 + 4080 +(% class="box warningmessage" %) 4081 +((( 4082 +**PUT /api/v3/billing/client/balance/withdraw** 4083 +))) 4084 + 4085 +Тело запроса: 4086 + 4087 +{ 4088 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4089 + "Balance": 0 4090 +} 4091 + 4092 +Ответ: Success 4093 + 4094 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4095 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4096 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4097 + 3299 3299 == (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) == 3300 3300 3301 3301 (% class="box warningmessage" %) ... ... @@ -3368,6 +3368,1323 @@ 3368 3368 |PeriodValue|Значение периода. 3369 3369 |PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 3370 3370 4170 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) = 4171 + 4172 +(% class="box warningmessage" %) 4173 +((( 4174 +Для тестирования запросов **Импорта **в Postman необходимо скачать его на ПК. Версия в браузере не позволяет загружать файлы в тело запроса. 4175 +))) 4176 + 4177 +== (% style="color:#000000; font-size:16px" %)**Импорт объектов**(%%) == 4178 + 4179 +(% class="box infomessage" %) 4180 +((( 4181 +**POST /api/v3/vehicles/import/{agentId}** 4182 +))) 4183 + 4184 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 4185 + 4186 +В пути указывается **agentId** - id клиента. 4187 + 4188 +**Заголовок** 4189 + 4190 +**X-Auth: [токен авторизации]** 4191 + 4192 +**Параметры** 4193 + 4194 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4195 +|withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 4196 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 4197 + 4198 +В теле использовать тип **form-data,** тип значения** file** 4199 + 4200 +**Ключи** 4201 + 4202 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4203 +|data|В значении передаем файл объекта, формат **xml** или **wlp ** 4204 +|csv|В значении передаем файл датчиков, формат **csv** 4205 + 4206 +Ответ: 4207 + 4208 +{ 4209 + "vehicleId": 0, 4210 + "name": "string", 4211 + "errors": ["string"] 4212 +} 4213 + 4214 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4215 +|vehicleId|ID созданного объекта 4216 +|name|Имя созданного объекта 4217 +|errors|Ошибки и их описание 4218 + 4219 +== (% style="color:#000000; font-size:16px" %)**Импорт сообщений**(%%) == 4220 + 4221 +(% class="box infomessage" %) 4222 +((( 4223 +**POST** **/api/v3/vehicles/import/history/{vehicleId}** 4224 +))) 4225 + 4226 +(% class="wikigeneratedid" %) 4227 +Позволяет импортировать сообщения в выбранный объект. Сообщения должны иметь формат **wln** или **json**. Также они могут быть упакованы и переданы в виде в **zip-архива**. 4228 + 4229 +(% class="wikigeneratedid" %) 4230 +В пути указывается **vehicleId **- id объекта. 4231 + 4232 +**Заголовок** 4233 + 4234 +**X-Auth: [токен авторизации]** 4235 + 4236 +В теле использовать тип **form-data.** 4237 + 4238 +Ключи: 4239 + 4240 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4241 +|**history**|В значении передавать файл с историей 4242 + 4243 +В случае, если загружается история из файла **wln **можно выполнять подмену названий параметров. В ключе вы указываете название параметра из файла, в значении указываете значение на которое нужно заменить. 4244 + 4245 +Ответ: 4246 + 4247 +{ 4248 + "results": [ 4249 + { 4250 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4251 + "vehicleId": 0, 4252 + "errors": [ 4253 + "string" 4254 + ], 4255 + "firstMessageDate": "2023-11-28T09:27:58.949Z", 4256 + "lastMessageDate": "2023-11-28T09:27:58.949Z", 4257 + "producedCount": 0, 4258 + "msgCount": 0 4259 + } 4260 + ] 4261 +} 4262 + 4263 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4264 +|results|Результаты импорта в разрезе ТС 4265 +|vehicleGuid|Guid ТС 4266 +|vehicleId|ID ТС 4267 +|errors|Список ошибок импорта истории (если пустой - нет ошибок) 4268 +|firstMessageDate|Дата первого импортированного сообщения (UTC) 4269 +|lastMessageDate|Дата последнего импортированного сообщения (UTC) 4270 +|producedCount|Кол-во успешно отправленных в шину данных сообщений 4271 +|msgCount|Кол-во обработанных сообщений всего 4272 + 4273 +== (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 4274 + 4275 +(% class="box infomessage" %) 4276 +((( 4277 +**GET /api/v3/vehicles/import/history/status** 4278 +))) 4279 + 4280 +Запрос статуса импорта истории. Может потребоваться в случае импорта истории за большой период. 4281 + 4282 +Ответ: 4283 + 4284 +{ 4285 + "activity": true, 4286 + "progress": 0, 4287 + "message": "string" 4288 +} 4289 + 4290 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4291 +|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4292 +|progress|Guid ТС 4293 + 4294 +== (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 4295 + 4296 +(% class="box infomessage" %) 4297 +((( 4298 +**POST /api/v3/vehicles/export** 4299 +))) 4300 + 4301 +Запрос позволяет экспортировать файлы с настройками объектов. В запросе передается массив id объектов. 4302 + 4303 +Тело запроса: 4304 + 4305 +[ 4306 + id 4307 +] 4308 + 4309 +Ответ: Success 200, получаете файлы с настройками. 4310 + 4311 +== (% style="color:#000000; font-size:16px" %)**Экспорт сообщений**(%%) == 4312 + 4313 +(% class="box infomessage" %) 4314 +((( 4315 +**POST /api/v3/vehicles/export/history** 4316 +))) 4317 + 4318 +Метод возвращает список сообщений терминала объекта за выбранный период. 4319 + 4320 +Тело запроса: 4321 + 4322 +{ 4323 + "vehicleId": 0, 4324 + "asArchive": true, 4325 + "from": "2023-09-27T12:17:45.973Z", 4326 + "to": "2023-09-27T12:17:45.973Z" 4327 +} 4328 + 4329 +Ответ: 4330 + 4331 +Получаете файл. Сообщение: Code 200/Success 4332 + 4333 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4334 +|vehicleId|ID объекта 4335 +|asArchive|true - Архивировать файл, False - не архивировать 4336 +|from|Дата и время начала запроса 4337 +|to|Дата и время окончания запроса 4338 + 4339 +== (% style="color:#000000; font-size:16px" %)**Статус экспорта сообщений**(%%) == 4340 + 4341 +(% class="box infomessage" %) 4342 +((( 4343 +**GET /api/v3/vehicles/export/history/status** 4344 +))) 4345 + 4346 +Метод возвращает список сообщений терминала объекта за выбранный период. 4347 + 4348 +Ответ: 4349 + 4350 +{ 4351 + "activity": true, 4352 + "progress": 0, 4353 + "message": "string" 4354 +} 4355 + 4356 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4357 +|activity|Статус экспорта, где true - экспорт в процессе выполнения, false - в данный момент ничего не экспортируется. 4358 +|progress|Прогресс экспорта, от 0 до 100% 4359 +|message|Текст описывающий статус 4360 + 4361 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) = 4362 + 4363 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) == 4364 + 4365 +(% class="box infomessage" %) 4366 +((( 4367 +**POST /api/v3/EcoDriving/rating** 4368 +))) 4369 + 4370 +Позволяет получить данные рейтинга нарушений выбранных объектов за указанный период времени. Данные, выдаваемые этим запросом аналогичны тем, что вы можете увидеть в окне **Качество вождения** в мониторинге. В массиве **items **передается список объектов из рейтинга качества вождения, в **trips **передается информация по отдельным рейсам объекта. 4371 + 4372 +Тело запроса: 4373 + 4374 +{ 4375 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4376 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4377 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 4378 +} 4379 + 4380 +Ответ: 4381 + 4382 +{ 4383 + "items": [ ~/~/ Список в разрезе ТС 4384 + { 4385 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4386 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4387 + "vehicleId": 0, ~/~/ ID ТС 4388 + "vehicleName": "string", ~/~/ Название ТС 4389 + "vehicleModel": "string", ~/~/ Модель ТС 4390 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4391 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4392 + "totalViolations": 0, ~/~/ Нарушений всего 4393 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4394 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4395 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4396 + "brakingViolations": 0, ~/~/ Нарушений торможения 4397 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4398 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4399 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4400 + }, 4401 + 4402 +((( 4403 + 4404 +))) 4405 + 4406 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4407 + "mileage": 0, ~/~/ Пробег, м 4408 + "tripsCount": 0, ~/~/ Кол-во рейсов 4409 + "trips": [ ~/~/ Информация по рейсу 4410 + { 4411 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4412 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4413 + "violationsCount": 0, ~/~/ Всего нарушений 4414 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4415 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4416 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4417 + "brakingViolations": 0, ~/~/ Нарушений торможения 4418 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4419 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4420 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4421 + }, 4422 + 4423 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4424 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4425 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4426 + "mileage": 0, ~/~/ Пробег, м 4427 + "motohours": 0, ~/~/ Моточасы, секунды 4428 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4429 + "startAddress": "string", ~/~/ Адрес начала рейса 4430 + "endAddress": "string", ~/~/ Адрес конца рейса 4431 + "drivers": [ ~/~/ Список водителей 4432 + { 4433 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4434 + "driverName": "string", ~/~/ФИО водителя 4435 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 4436 + } 4437 + ] 4438 + } 4439 + ] 4440 + } 4441 + ] 4442 +} 4443 + 4444 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 4445 + 4446 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4447 + 4448 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4449 + 4450 +(% class="box infomessage" %) 4451 +((( 4452 +**POST /api/v3/fuelcards/transactions** 4453 +))) 4454 + 4455 +Метод запроса: POST 4456 + 4457 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4458 +\\В заголовках запроса: X-Auth: Токен авторизации 4459 + 4460 +Параметры в теле запроса (JSON): 4461 + 4462 +{ 4463 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4464 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4465 + "ids": [ 4466 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4467 + ], 4468 + "timezone": 0 ~/~/ Часовой пояс 4469 +} 4470 + 4471 + 4472 +Ответ: 4473 + { 4474 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4475 + "driver": "string", ~/~/ Водители, привязанные к ТК 4476 + "object": "string", ~/~/ Наименование ТС 4477 + "amount": 0, ~/~/ Количество топлива 4478 + "amountDut": 0, ~/~/ Количество по ДУТ 4479 + "amountDiff": 0, ~/~/ Разница, л 4480 + "amountDiffPerc": 0, ~/~/ Разница, % 4481 + "summa": 0, ~/~/ Стоимость, руб 4482 + "serviceName": "string", ~/~/ Тип топлива 4483 + "price": 0, ~/~/ Цена за литр, руб 4484 + "cardName": "string", ~/~/ Наименование ТК 4485 + "cardNum": "string", ~/~/ Номер ТК 4486 + "operator": "string", ~/~/ Оператор ТК 4487 + "address": "string" ~/~/ Адрес АЗС 4488 + } 4489 + 4490 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) == 4491 + 4492 +(% class="box infomessage" %) 4493 +((( 4494 +**GET /api/v3/fuelcards** 4495 +))) 4496 + 4497 +Метод запроса: GET 4498 + 4499 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список 4500 + 4501 +Ответ: 4502 + 4503 +[ 4504 + { 4505 + "Name": "string", ~/~/ Определяет наименование карты. 4506 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора. 4507 + "Number": "string", ~/~/ Определяет № карты. 4508 + "Enabled": true, ~/~/ Определяет признак активности карты. 4509 + "Description": "string", ~/~/ Определяет описание карты. 4510 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты 4511 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 4512 + "deleted": true ~/~/ Признак удаления 4513 + } 4514 +] 4515 + 4516 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4517 + 4518 + 4519 +== **Получение полных данных о ретрансляторе** == 4520 + 4521 +(% class="box infomessage" %) 4522 +((( 4523 +**GET ** **/api/v3/retranslations/{id}** 4524 +))) 4525 + 4526 +id - Идентификатор ретранслятора 4527 + 4528 + 4529 +Пример ответа: 4530 + 4531 +{ 4532 +"description": "", ~/~/ Поле описания ретранслятора 4533 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4534 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4535 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4536 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4537 +"objects": [ ~/~/ Объекты для ретрансляции 4538 +{ 4539 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4540 +"name": "", ~/~/ Наименование объекта ретрансляции 4541 +"imei": "", ~/~/ IMEI объекта ретрансляции 4542 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4543 +} 4544 + ], 4545 +"id": "", ~/~/ Идентификатор ретранслятора 4546 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4547 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4548 +} 4549 + 4550 + 4551 +== **Удаление данных ретранслятора** == 4552 + 4553 +(% class="box infomessage" %) 4554 +((( 4555 +**DELETE** **/api/v3/retranslations/{id}** 4556 +))) 4557 + 4558 +id - Идентификатор ретранслятора 4559 + 4560 + 4561 +== **Создание ретранслятора** == 4562 + 4563 +(% class="box infomessage" %) 4564 +((( 4565 +**POST ** **/api/v3/retranslations/{id}** 4566 +))) 4567 + 4568 +Запрос: 4569 + 4570 +{ 4571 +"description": "", ~/~/ Поле описания ретранслятора 4572 +"subscriberId": "", ~/~/ Идентификатор подписчика 4573 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4574 +"address": "", ~/~/ Адрес и порт принимающего сервера 4575 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4576 +"objects": [ ~/~/Объекты для ретрансляции 4577 +{ 4578 +"id": "", ~/~/ Идентификатор ретранслятора 4579 +"imei": "", ~/~/ IMEI объекта ретрансляции 4580 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4581 +} 4582 + ] 4583 +} 4584 + 4585 + 4586 +Ответ: 4587 + 4588 +{ 4589 +"description": "", ~/~/ Поле описания ретранслятора 4590 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4591 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4592 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4593 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4594 +"objects": [ ~/~/ Объекты для ретрансляции 4595 +{ 4596 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4597 +"name": "string", ~/~/ Наименование объекта ретрансляции 4598 +"imei": "", ~/~/ IMEI объекта ретрансляции 4599 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4600 +} 4601 + ], 4602 +"id": "", ~/~/ Идентификатор ретранслятора 4603 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4604 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4605 +} 4606 + 4607 + 4608 +== **Редактирование ретранслятора** == 4609 + 4610 +(% class="box infomessage" %) 4611 +((( 4612 +**PUT** **/api/v3/retranslations** 4613 +))) 4614 + 4615 +Пример запроса: 4616 + 4617 +{ 4618 +"id": "", ~/~/ Идентификатор ретранслятора 4619 +"description": "string", ~/~/ Поле описания ретранслятора 4620 +"subscriberId": "", ~/~/ Идентификатор подписчика 4621 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4622 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4623 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4624 +"objects": ~/~/ Объекты для ретрансляции 4625 +[ 4626 +{ 4627 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4628 +"imei": "", ~/~/ IMEI объекта ретрансляции 4629 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4630 +} 4631 + ] 4632 +} 4633 + 4634 + 4635 +Пример ответа: 4636 + 4637 +{ 4638 +"description": "", ~/~/ Поле описания ретранслятора 4639 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4640 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4641 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4642 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4643 +"objects": [ ~/~/ Объекты для ретрансляции 4644 +{ 4645 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4646 +"name": "string", ~/~/ Наименование объекта ретрансляции 4647 +"imei": "", ~/~/ IMEI объекта ретрансляции 4648 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4649 +} 4650 + ], 4651 +"id": "", ~/~/ Идентификатор ретранслятора 4652 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4653 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4654 +} 4655 + 4656 + 4657 +== **Получение списка ретранслятора клиента** == 4658 + 4659 +(% class="box infomessage" %) 4660 +((( 4661 +**POST /api/v3/retranslations/find** 4662 +))) 4663 + 4664 +Пример запроса: 4665 + 4666 +{ 4667 +"id": "", ~/~/ Идентификатор ретранслятора 4668 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4669 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4670 +} 4671 + 4672 +Ответ: 4673 + 4674 +[ 4675 +{ 4676 +"description": "", ~/~/ Поле описания ретранслятора 4677 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4678 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4679 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4680 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4681 +"id": "", ~/~/ Идентификатор ретранслятора 4682 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4683 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4684 +} 4685 +] 4686 + 4687 + 4688 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4689 + 4690 +== **API для отчета по выгрузке комбайнов** == 4691 + 4692 +(% class="box infomessage" %) 4693 +((( 4694 +**POST /api/v3/Reports/harvesterUnloading** 4695 +))) 4696 + 4697 +Пример запроса: 4698 + 4699 +{ 4700 + "byTime": 0, ~/~/ Объединение событий по времени 4701 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4702 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4703 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4704 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4705 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4706 + 0 4707 + ], 4708 + "from": "", ~/~/ Дата и время начало запроса 4709 + "to": "", ~/~/ Дата и время окончания запроса 4710 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4711 +} 4712 + 4713 +Пример ответа: 4714 + 4715 +[ 4716 + { 4717 + "harvesterName": "", ~/~/Комбайн, номер 4718 + "harvesterId": 0, ~/~/Комбайн, id 4719 +"harvesterModel": "", ~/~/ Модель комбайна 4720 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4721 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4722 + "events": [ ~/~/Список событий в разрезе комбайна 4723 + { 4724 + "driverId": "", ~/~/Идентификатор водителя 4725 + "driverName": "", ~/~/Водитель комбайна, ФИО 4726 + "RFID": "", ~/~/ идентификатор карты-метки 4727 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4728 + "vehicleId": 0, ~/~/идентификатор объекта 4729 + "vehicleName": "string", ~/~/ Имя объекта 4730 + "modelName": "string", ~/~/ Имя модели объекта 4731 + "nearestVehicles": [ ~/~/Объекты рядом 4732 + { 4733 + "vehicleId": 0, ~/~/идентификатор объекта 4734 + "vehicleName": "string" ~/~/ Имя объекта 4735 + } 4736 + ], 4737 + "fields": [ ~/~/Поля, где происходила выгрузка 4738 + { 4739 + "id": 0, ~/~/ идентификатор пользователя 4740 + "name": "string" ~/~/ имя пользователя 4741 + } 4742 + ], 4743 + "event": "string", ~/~/Событие 4744 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4745 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4746 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4747 + "cultureName": "string", ~/~/ название культуры 4748 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4749 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4750 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4751 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4752 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4753 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4754 + "issued": 0, ~/~/Выдано, бункеров 4755 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4756 + "latitude": 0, ~/~/Широта 4757 + "longitude": 0, ~/~/ Долгота 4758 + "litresAway": 0, ~/~/Отдано, л 4759 + "m3Away": 0 ~/~/Отдано, м3 4760 + } 4761 + ] 4762 + } 4763 +] 4764 + 4765 + 4766 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 4767 + 4768 + 4769 +== **Запрос списка полей** == 4770 + 4771 +(% class="box successmessage" %) 4772 +((( 4773 +**POST /api/v3/agroLands/find** 4774 +))) 4775 + 4776 +Пример запроса: 4777 + 4778 +((( 4779 +((( 4780 +((( 4781 +{ 4782 + "year": 0, ~/~/ Фильтр по году 4783 + "name": "string", ~/~/ Фильтр по названию 4784 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 4785 +} 4786 +))) 4787 +))) 4788 + 4789 + 4790 +))) 4791 + 4792 +Пример ответа: 4793 + 4794 +((( 4795 +[ 4796 + { 4797 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4798 + "year": 0, ~/~/ Год поля 4799 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 4800 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 4801 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 4802 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4803 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4804 + "counts": { ~/~/ Счётчики с/х поля 4805 + "fieldOperations": 0, ~/~/ Количество операций на поле 4806 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4807 + "facts": 0 ~/~/ Счётчик факта 4808 + }, 4809 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4810 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4811 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4812 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4813 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4814 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4815 + "planComment": "string", ~/~/ Комментарий к полю 4816 + "productivity": 0, ~/~/ Урожайность. 4817 + "id": 0, ~/~/ Идентификатор объекта геозоны 4818 + "name": "string", ~/~/ Название объекта геозоны 4819 + "type": 0, ~/~/ Тип объекта геозоны 4820 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4821 + "fname": "string", ~/~/ Имя файла 4822 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4823 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 4824 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 4825 + "description": "string", ~/~/ Описание объекта геозоны 4826 + "area": 0, ~/~/ Площадь, м2 4827 + "perimetr": 0, ~/~/ Периметр, м 4828 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 4829 + } 4830 +] 4831 + 4832 + 4833 +== **Создание нового поля ** == 4834 + 4835 +(% class="box successmessage" %) 4836 +((( 4837 +**POST /api/v3/agroLands** 4838 +))) 4839 + 4840 +Пример запроса: 4841 + 4842 +((( 4843 +{ 4844 + "extId": "string", 4845 + "shape": "string", ~/~/ Форма поля 4846 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 4847 + "display": "string", ~/~/ Настройки отображения 4848 + "year": 0, ~/~/ Год поля 4849 + "name": "string", ~/~/ Наименование 4850 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4851 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 4852 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 4853 + "planComment": "string", ~/~/ Комментарий к полю 4854 + "cropRotations": [ ~/~/ Данные по севообороту 4855 + { 4856 + "landId": 0, ~/~/ ID поля 4857 + "landName": "string", ~/~/ Название поля 4858 + "year": 0, ~/~/ Год урожая 4859 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4860 + "cultureName": "string", ~/~/ Название культуры 4861 + "productivity": 0, ~/~/ Урожайность 4862 + "area": 0, ~/~/ Площадь поля, Га 4863 + "total": 0, ~/~/ Валовый сбор 4864 + "productivityFact": 0, ~/~/ Фактическая урожайность 4865 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4866 + "totalFact": 0, ~/~/ Фактический валовый сбор 4867 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 4868 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 4869 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 4870 + "isyearplan": true, ~/~/ Годовой план 4871 + "comment": "string" ~/~/ Комментарий 4872 + } 4873 + ] 4874 +} 4875 +))) 4876 + 4877 +((( 4878 + 4879 +))) 4880 + 4881 +Пример ответа: 4882 + 4883 +((( 4884 +((( 4885 +{ 4886 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4887 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4888 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4889 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4890 + "cropRotations": [ ~/~/ Данные по севообороту 4891 + { 4892 + "landId": 0, ~/~/ ID поля 4893 + "landName": "string", ~/~/ Название поля 4894 + "year": 0, ~/~/ Год урожая 4895 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4896 + "cultureName": "string", ~/~/ Название культуры 4897 + "productivity": 0, ~/~/ Урожайность 4898 + "area": 0, ~/~/ Площадь поля, Га. 4899 + "total": 0, ~/~/ Валовый сбор 4900 + "productivityFact": 0, ~/~/ Фактическая урожайность 4901 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4902 + "totalFact": 0, ~/~/ Фактический валовый сбор 4903 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 4904 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 4905 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 4906 + "isyearplan": true, ~/~/ годовой план 4907 + "comment": "string" ~/~/ Комментарий 4908 + } 4909 + ], 4910 + "cropVegetation": [ ~/~/ История вегетации поля 4911 + { 4912 + "values": [ ~/~/ Данные вегетации и состояния посева 4913 + { 4914 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4915 + "ndvi": 0 ~/~/ Индекс вегетации 4916 + } 4917 + ], 4918 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 4919 + { 4920 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4921 + "type": "string", ~/~/ Тип 4922 + "pictureid": "string" ~/~/ Идентификатор ресурса 4923 + } 4924 + ], 4925 + "states": [ ~/~/ Ключевые даты развития поля 4926 + { 4927 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4928 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 4929 + } 4930 + ] 4931 + } 4932 + ], 4933 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 4934 + "counts": { 4935 + "fieldOperations": 0, ~/~/ Количество операций на поле 4936 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4937 + "facts": 0 ~/~/ Счётчик факта 4938 + }, 4939 + "planComment": "string", ~/~/ Комментарий к полю 4940 +))) 4941 + 4942 +((( 4943 + "productivity": 0, ~/~/ Урожайность. 4944 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4945 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 4946 + "year": 0, ~/~/ Год поля 4947 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4948 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4949 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4950 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4951 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 4952 + "id": 0, ~/~/ Идентификатор объекта геозоны 4953 + "name": "string", ~/~/ Название объекта геозоны 4954 + "type": 0, ~/~/ Тип объекта геозоны 4955 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4956 + "fname": "string", ~/~/ Имя файла 4957 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4958 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 4959 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 4960 + "description": "string", ~/~/ Описание объекта геозоны 4961 + "area": 0, ~/~/ Площадь, м2 4962 + "perimetr": 0, ~/~/ Периметр, м 4963 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 4964 +} 4965 + 4966 + 4967 +))) 4968 +))) 4969 +))) 4970 + 4971 +== **Получение поля по id** == 4972 + 4973 +(% class="box infomessage" %) 4974 +((( 4975 +**GET /api/v3/agroLands/{id}** 4976 +))) 4977 + 4978 +Пример запроса: 4979 +id ~/~/ Идентификатор поля 4980 + 4981 +Пример ответа: 4982 + 4983 +((( 4984 +{ 4985 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4986 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4987 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4988 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4989 + "cropRotations": [ ~/~/ Данные по севообороту 4990 + { 4991 + "landId": 0, ~/~/ ID поля 4992 + "landName": "string", ~/~/ Название поля 4993 + "year": 0, ~/~/ Год урожая 4994 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4995 + "cultureName": "string", ~/~/ Название культуры 4996 + "productivity": 0, ~/~/ Урожайность 4997 + "area": 0, ~/~/ Площадь поля, Га 4998 + "total": 0, ~/~/ Валовый сбор 4999 + "productivityFact": 0, ~/~/ Фактическая урожайность 5000 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5001 + "totalFact": 0, ~/~/ Фактический валовый сбор 5002 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 5003 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 5004 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 5005 + "isyearplan": true, ~/~/ План года 5006 + "comment": "string" ~/~/ Комментарий 5007 + } 5008 + ], 5009 + "cropVegetation": [ ~/~/ История вегетации поля 5010 + { 5011 + "values": [ ~/~/ Данные вегетации и состояния посева 5012 + { 5013 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5014 + "ndvi": 0 ~/~/ Индекс вегетации 5015 + } 5016 + ], 5017 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5018 + { 5019 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5020 + "type": "string", ~/~/ Тип 5021 + "pictureid": "string" ~/~/ Идентификатор ресурса 5022 + } 5023 + ], 5024 + "states": [ ~/~/ Ключевые даты развития поля 5025 + { 5026 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5027 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 5028 + } 5029 + ] 5030 + } 5031 + ], 5032 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5033 + "counts": { 5034 + "fieldOperations": 0, ~/~/ Количество операций на поле 5035 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5036 + "facts": 0 ~/~/ Счётчик факта 5037 + }, 5038 + "planComment": "string", ~/~/ Комментарий к полю 5039 + "productivity": 0, ~/~/ Урожайность. 5040 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5041 +))) 5042 + 5043 +((( 5044 +((( 5045 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5046 + "year": 0, ~/~/ Год поля 5047 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5048 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5049 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5050 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5051 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5052 + "id": 0, ~/~/ Идентификатор объекта геозоны 5053 + "name": "string", ~/~/ Название объекта геозоны 5054 + "type": 0, ~/~/ Тип объекта геозоны 5055 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5056 + "fname": "string", ~/~/ Имя файла 5057 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5058 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5059 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5060 + "description": "string", ~/~/ Описание объекта геозоны 5061 + "area": 0, ~/~/ Площадь, м2 5062 + "perimetr": 0, ~/~/ Периметр, м 5063 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5064 +} 5065 +))) 5066 + 5067 + 5068 +== **Удаление существующего поля** == 5069 + 5070 +(% class="box errormessage" %) 5071 +((( 5072 +**DELETE /api/v3/agroLands/{id}** 5073 +))) 5074 + 5075 +Пример запроса: 5076 +id ~/~/ Идентификатор поля 5077 + 5078 +Пример ответа: 5079 + 5080 +((( 5081 +200 ~/~/ Успех 5082 +))) 5083 + 5084 +((( 5085 + 5086 +))) 5087 + 5088 +((( 5089 +((( 5090 +((( 5091 + 5092 +))) 5093 + 5094 +((( 5095 +== **Изменение поля** == 5096 + 5097 +(% class="box infomessage" %) 5098 +((( 5099 +**PUT /api/v3/agroLands** 5100 +))) 5101 + 5102 +Пример запроса: 5103 + 5104 +((( 5105 +((( 5106 +{ 5107 + "id": 0, ~/~/ Идентификатор поля 5108 + "extId": "string", ~/~/ ExtId 5109 + "shape": "string", ~/~/ Форма поля 5110 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5111 + "display": "string", ~/~/ Настройки отображения 5112 + "year": 0, ~/~/ Год поля 5113 + "name": "string", ~/~/ Наименование 5114 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5115 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5116 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5117 + "planComment": "string", ~/~/Комментарий к полю 5118 + "cropRotations": [ ~/~/ Данные по севообороту 5119 + { 5120 + "landId": 0, ~/~/ ID поля 5121 + "landName": "string", ~/~/ Название поля 5122 + "year": 0, ~/~/ Год урожая 5123 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5124 + "cultureName": "string", ~/~/ Название культуры 5125 + "productivity": 0, ~/~/ Урожайность 5126 + "area": 0, ~/~/ Площадь поля, Га. 5127 + "total": 0, ~/~/ Валовый сбор 5128 + "productivityFact": 0, ~/~/ Фактическая урожайность 5129 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5130 + "totalFact": 0, ~/~/ Фактический валовый сбор 5131 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5132 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5133 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5134 + "isyearplan": true, 5135 + "comment": "string" ~/~/ Комментарий 5136 + } 5137 + ], 5138 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5139 +} 5140 +))) 5141 +))) 5142 + 5143 +((( 5144 + 5145 +))) 5146 + 5147 +Пример ответа: 5148 + 5149 +((( 5150 +((( 5151 +((( 5152 +{ 5153 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5154 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5155 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5156 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5157 + "cropRotations": [ ~/~/ Данные по севообороту 5158 + { 5159 + "landId": 0, ~/~/ ID поля 5160 + "landName": "string", ~/~/ Название поля 5161 + "year": 0, ~/~/ Год урожая 5162 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5163 + "cultureName": "string", ~/~/ Название культуры 5164 + "productivity": 0, ~/~/ Урожайность 5165 + "area": 0, ~/~/ Площадь поля, Га 5166 + "total": 0, ~/~/ Валовый сбор 5167 + "productivityFact": 0, ~/~/ Фактическая урожайность 5168 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5169 + "totalFact": 0, ~/~/ Фактический валовый сбор 5170 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5171 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5172 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5173 + "isyearplan": true, ~/~/ 5174 + "comment": "string" ~/~/ Комментарий 5175 + } 5176 + ], 5177 + "cropVegetation": [ ~/~/ История вегетации поля 5178 + { 5179 + "values": [ ~/~/ Данные вегетации и состояния посева 5180 + { 5181 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5182 + "ndvi": 0 ~/~/ Индекс вегетации 5183 + } 5184 + ], 5185 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5186 + { 5187 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5188 + "type": "string", ~/~/ Тип 5189 + "pictureid": "string" ~/~/ Идентификатор ресурса 5190 + } 5191 + ], 5192 + "states": [ ~/~/ Ключевые даты развития поля 5193 + { 5194 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5195 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5196 + } 5197 + ] 5198 + } 5199 + ], 5200 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5201 + "counts": { 5202 + "fieldOperations": 0, ~/~/ Количество операций на поле 5203 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5204 + "facts": 0 ~/~/ Счётчик факта 5205 + }, 5206 + "planComment": "string", ~/~/ Комментарий к полю 5207 + "productivity": 0, ~/~/ Урожайность. 5208 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5209 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5210 + "year": 0, ~/~/ Год поля 5211 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5212 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5213 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5214 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5215 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5216 + "id": 0, ~/~/ Идентификатор объекта геозоны 5217 + "name": "string", ~/~/ Название объекта геозоны 5218 + "type": 0, ~/~/ Тип объекта геозоны 5219 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5220 + "fname": "string", ~/~/ Имя файла 5221 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5222 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5223 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5224 + "description": "string", ~/~/ Описание объекта геозоны 5225 + "area": 0, ~/~/ Площадь, м2 5226 + "perimetr": 0, ~/~/ Периметр, м 5227 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5228 +} 5229 +))) 5230 +))) 5231 +))) 5232 +))) 5233 +))) 5234 + 5235 + 5236 +== **Редактирование года урожая ** == 5237 + 5238 +(% class="box successmessage" %) 5239 +((( 5240 +**POST /api/v3/agroLands/updateOpenCloseYear** 5241 +))) 5242 + 5243 +Пример запроса: 5244 + 5245 +((( 5246 +((( 5247 +{ 5248 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5249 + 0 5250 + ], 5251 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5252 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5253 +} 5254 +))) 5255 + 5256 + 5257 +))) 5258 + 5259 +Пример ответа: 5260 + 5261 +((( 5262 +((( 5263 +{ 5264 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5265 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5266 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5267 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5268 + "cropRotations": [ ~/~/ Данные по севообороту 5269 + { 5270 + "landId": 0, ~/~/ ID поля 5271 + "landName": "string", ~/~/ Название поля 5272 + "year": 0, ~/~/ Год урожая 5273 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5274 + "cultureName": "string", ~/~/ Название культуры 5275 + "productivity": 0, ~/~/ Урожайность 5276 + "area": 0, ~/~/ Площадь поля, Га. 5277 + "total": 0, ~/~/ Валовый сбор 5278 + "productivityFact": 0, ~/~/ Фактическая урожайность 5279 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5280 + "totalFact": 0, ~/~/ Фактический валовый сбор 5281 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5282 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5283 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5284 + "isyearplan": true, ~/~/ 5285 + "comment": "string" ~/~/ Комментарий 5286 + } 5287 + ], 5288 + "cropVegetation": [ ~/~/ История вегетации поля 5289 + { 5290 + "values": [ ~/~/ Данные вегетации и состояния посева 5291 + { 5292 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5293 + "ndvi": 0 ~/~/ Индекс вегетации 5294 + } 5295 + ], 5296 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5297 + { 5298 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5299 + "type": "string", ~/~/ Тип 5300 + "pictureid": "string" ~/~/ Идентификатор ресурса 5301 + } 5302 + ], 5303 + "states": [ ~/~/ Ключевые даты развития поля 5304 + { 5305 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5306 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5307 + } 5308 + ] 5309 + } 5310 + ], 5311 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5312 + "counts": { 5313 + "fieldOperations": 0, ~/~/ Количество операций на поле 5314 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5315 + "facts": 0 ~/~/ Счётчик факта 5316 + }, 5317 + "planComment": "string", ~/~/ Комментарий к полю 5318 + "productivity": 0, ~/~/ Урожайность. 5319 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5320 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5321 + "year": 0, ~/~/ Год поля 5322 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5323 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5324 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5325 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5326 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5327 + "id": 0, ~/~/ Идентификатор объекта геозоны 5328 + "name": "string", ~/~/ Название объекта геозоны 5329 + "type": 0, ~/~/ Тип объекта геозоны 5330 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5331 + "fname": "string", ~/~/ Имя файла 5332 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5333 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5334 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5335 + "description": "string", ~/~/ Описание объекта геозоны 5336 + "area": 0, ~/~/ Площадь, м2 5337 + "perimetr": 0, ~/~/ ериметр, м 5338 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5339 +} 5340 +))) 5341 + 5342 + 5343 +== (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) == 5344 +))) 5345 +))) 5346 +))) 5347 + 5348 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 5349 + 5350 + 5351 +(% class="box infomessage" %) 5352 +((( 5353 +**GET api/v3/Vehicles/recyclebin/all** 5354 +))) 5355 + 5356 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 5357 + 5358 +Параметр запроса: {parentId} - идентификатор агента 5359 + 5360 +В заголовках запроса: X-Auth: Токен авторизации 5361 + 5362 +Ответ: 5363 + 5364 +[ 5365 + { 5366 + "recordTime": "", ~/~/Время записи 5367 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5368 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5369 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5370 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5371 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5372 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5373 + "items": [ ~/~/ 5374 +nullable: true ~/~/Детали 5375 + { 5376 + "name": "string", ~/~/наименование столбца 5377 + "value": "string" ~/~/содержание столбца 5378 + } 5379 + ] 5380 + }, 5381 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5382 + "string" 5383 + ] 5384 + } 5385 +] 5386 + 5387 + 5388 +(% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины** 5389 + 5390 +(% class="box infomessage" %) 5391 +((( 5392 +**POST api/v3/Vehicles/recyclebin/erase** 5393 +))) 5394 + 5395 +В заголовках запроса: X-Auth: Токен авторизации 5396 + 5397 +Пример запроса: 5398 + 5399 +[ 5400 +0 5401 +] 5402 + 5403 + 5404 +Пример ответа: 5405 + 5406 +[ 5407 +{ 5408 + "recordTime": "", ~/~/Время записи 5409 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5410 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5411 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5412 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5413 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5414 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5415 + "items": [ ~/~/Детали 5416 + { 5417 + "name": "", ~/~/Имя свойства 5418 + "value": "" ~/~/Значение свойства 5419 + } 5420 + ] 5421 + }, 5422 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5423 + "" 5424 + ] 5425 + } 5426 +] 5427 + 5428 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 5429 + 5430 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 5431 + 5432 +(% class="box infomessage" %) 5433 +((( 5434 +**POST api/v3/Vehicles/recyclebin/restore** 5435 +))) 5436 + 5437 +В заголовках запроса: X-Auth: Токен авторизации 5438 + 5439 +Параметры в теле запроса (JSON): 5440 + 5441 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5442 + 5443 +В заголовках запроса: X-Auth: Токен авторизации 5444 + 5445 + 5446 +Пример запроса: 5447 + 5448 +((( 5449 +[ 5450 +))) 5451 + 5452 +((( 5453 + 0 5454 +))) 5455 + 5456 +((( 5457 +] 5458 +))) 5459 + 5460 + 5461 +Пример ответа: 5462 + 5463 +[ 5464 +{ 5465 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5466 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5467 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5468 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5469 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5470 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5471 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5472 + "items": [ ~/~/Детали 5473 + { 5474 + "name": "string", ~/~/Имя свойства 5475 + "value": "string" ~/~/Значение свойства 5476 + } 5477 + ] 5478 + }, 5479 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5480 + "string" 5481 + ] 5482 + } 5483 +] 5484 + 5485 + 5486 + 3371 3371 (% class="box" lang="en-US" style="text-align: center;" %) 3372 3372 ((( 3373 3373 (% 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]] **