Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/08/08 13:28
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,22 @@ 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 +(% class="box infomessage" %) 15 +((( 16 +**Чтобы избежать блокировки** из-за превышения количества авторизаций, вам необходимо использовать токен авторизации, полученный с помощью метода /auth/login, во всех последующих запросах к API. Этот токен имеет ограниченный срок действия, который можно изменить, настроив параметр "Длительность сессии" в настройках пользователя. 17 +\\При выполнении запросов с одним и тем же токеном его срок действия автоматически продлевается. Это позволяет пройти авторизацию только один раз и использовать полученный токен во всех последующих запросах без необходимости повторного входа в систему. 18 +))) 19 + 3 3 **Содержание страницы:** 4 4 ))) 5 5 ... ... @@ -14,11 +14,20 @@ 14 14 15 15 Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de. 16 16 17 -(% style="color:#000000" %)− (%%)При **редактировании** необходимо передавать все параметры пользователяв теле запроса! Те параметры, значения которых не будут переданы - будут стерты!34 +(% style="color:#000000" %)− (%%)При **редактировании** любой записи (пользователь, объект и т.д) необходимо передавать все параметры записи в теле запроса! Те параметры, значения которых не будут переданы - будут стерты! 18 18 36 + 37 +(% style="color:#000000; font-size:16px" %)**Рекомендации** 38 + 39 +- Для запросов по API рекомендуется наделить пользователя ролью **Администратора партнера**, в противном случае при выполнении некоторых запросов у него не будет хватать прав (чаще всего сталкиваются с отсутствием прав при запросах сообщений от терминала за период). 40 + 19 19 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Авторизация**(%%) = 20 20 21 -== (% style="color:#000000; font-size:16px" %)**Авторизация**(%%) == 43 +(% class="box warningmessage" id="H41043244243E44043843743044643844F" %) 44 +((( 45 +(% style="color:#000000; font-size:16px" %)**Авторизация**(%%) 46 +(% style="color:#000000; font-size:16px" %)Адрес сервера всегда следует указывать именно тот, по которому происходит вход в СМТ (https:~/~/hosting.glonasssoft.ru/ , [[https:~~/~~/regions.glonasssoft.ru/>>https://regions.glonasssoft.ru/]] или другие) 47 +))) 22 22 23 23 (% class="box successmessage" %) 24 24 ((( ... ... @@ -44,12 +44,8 @@ 44 44 45 45 (% lang="en-US" %) 46 46 (% style="color:#000000" %){ 47 - 48 -(% lang="en-US" %) 49 -(% style="color:#000000" %) "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 50 - "User": "testuser" , ~/~/ имя пользователя 51 - 52 -(% lang="en-US" %) 73 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 74 + "User": "testuser" , ~/~/ имя пользователя(%%) 53 53 } 54 54 55 55 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. ... ... @@ -60,6 +60,9 @@ 60 60 |(% style="width:215px" %)(% style="color:#000000" %)AuthId|(% style="width:861px" %)Токен авторизации 61 61 |(% style="width:215px" %)(% style="color:#000000" %)User|(% style="width:861px" %)Логин пользователя 62 62 85 +(% class="wikigeneratedid" %) 86 +Также имеется возможность сквозной (/бесшовной) авторизации. Для этого к ссылке ( [[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}]]) 87 + 63 63 == (% style="color:#000000; font-size:16px" %)**Проверка авторизации**(%%) == 64 64 65 65 (% class="box infomessage" %) ... ... @@ -98,29 +98,41 @@ 98 98 Запрос должен содержать данные параметра "**agentId**" 99 99 100 100 (% style="color:#000000" %)Ответ: 126 + 127 +((( 101 101 { 102 - "agentId": "", (%%) 103 - "parentId": "", 104 - "parentName": "string", 105 - "name": "string", 106 - "fullName": "string", 107 - "agentInfoType": 0, 108 - "isForeign": true/false, 109 - "district": "string", 110 - "region": "string", 111 - "city": "string", 112 - "inn": "string", 113 - "kpp": "string", 114 - "address": "string", 115 - "addressFact": "string", 116 - "email": "string", 117 - "director": "string", 118 - "bankName": "string", 119 - "bankBIK": "string", 120 - "bankRS": "string", 121 - "bankKS": "string" 122 - } 129 + "agentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID клиента 130 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID родителя 131 + "parentName": "string", ~/~/ Наименование агента 132 + "name": "string", ~/~/ Имя клиента 133 + "fullName": "string", ~/~/ ФИО клиента 134 + "agentInfoType": 0, ~/~/ Тип клиента ((% style="color:#000000" %)0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор(%%)) 135 + "isForeign": true, ~/~/ Флаг "Иностранный контрагент" 136 + "district": "string", ~/~/ Район 137 + "region": "string", ~/~/ Область 138 + "city": "string", ~/~/ Город 139 + "email": "string", ~/~/ Email 140 + "director": "string", ~/~/ Руководитель 141 + "RegionalData": [ ~/~/ Определяет региональные сведения. 142 + { 143 + "Country": 0, ~/~/ Страна 144 + "groups": [ ~/~/ Список групп 145 + { 146 + "groupId": "string", ~/~/ Уникальный идентификатор группы 147 + "fields": [ ~/~/ Список значений полей 148 + { 149 + "name": "string", ~/~/ Имя поля формы 150 + "value": "string" ~/~/ Значение поля формы 151 + } 152 + ] 153 + } 154 + ] 155 + } 156 + ] 157 +} 158 +))) 123 123 160 + 124 124 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 125 125 |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 126 126 |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя ... ... @@ -173,7 +173,6 @@ 173 173 { 174 174 "agentId": "",(% style="color:#000000" %) (%%) 175 175 "parentId": "", 176 - "parentName": "string", 177 177 "name": "string", 178 178 "fullName": "string", 179 179 "agentInfoType": 0, ... ... @@ -184,7 +184,6 @@ 184 184 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 185 185 |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 186 186 |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 187 -|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 188 188 |(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 189 189 |(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 190 190 |(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) ... ... @@ -228,7 +228,6 @@ 228 228 "bankKS": "string" ~/~/ корр. счёт 229 229 } 230 230 231 - 232 232 Ответ: 233 233 234 234 { ... ... @@ -253,28 +253,6 @@ 253 253 "bankKS": "string" ~/~/ корр. счёт 254 254 } 255 255 256 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 257 -|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 258 -|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 259 -|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 260 -|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 261 -|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 262 -|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 263 -|(% style="width:215px" %)isForeign|(% style="width:861px" %)Иностранный контрагент 264 -|(% style="width:215px" %)district|(% style="width:861px" %)Округ 265 -|(% style="width:215px" %)region|(% style="width:861px" %)Регион 266 -|(% style="width:215px" %)city|(% style="width:861px" %)Город 267 -|(% style="width:215px" %)inn|(% style="width:861px" %)ИНН клиента 268 -|(% style="width:215px" %)kpp|(% style="width:861px" %)КПП клиента 269 -|(% style="width:215px" %)address|(% style="width:861px" %)Юридический адрес 270 -|(% style="width:215px" %)addressFact|(% style="width:861px" %)Фактический адрес 271 -|(% style="width:215px" %)email|(% style="width:861px" %)Электронная почта 272 -|(% style="width:215px" %)director|(% style="width:861px" %)ФИО руководителя 273 -|(% style="width:215px" %)bankName|(% style="width:861px" %)Банк 274 -|(% style="width:215px" %)bankBIK|(% style="width:861px" %)БИК 275 -|(% style="width:215px" %)bankRS|(% style="width:861px" %)Номер счета 276 -|(% style="width:215px" %)bankKS|(% style="width:861px" %)Корр. счет 277 - 278 278 == (% style="color:#000000; font-size:16px" %)**Редактирование клиента**(%%) == 279 279 280 280 (% class="box warningmessage" %) ... ... @@ -356,6 +356,21 @@ 356 356 357 357 Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 358 358 371 +== (% style="color:#000000; font-size:16px" %)**Смена статуса клиента (активация/блокировка)**(%%) == 372 + 373 +(% class="box warningmessage" %) 374 +((( 375 +**PUT /api/v3/agents/{id}/changeStatus/{status}** 376 +))) 377 + 378 +Метод позволяет изменить статус клиента, указанного в запросе. 379 + 380 +В пути указывается GUID клиента и статус клиента. 381 + 382 +**status **- значение 0 - заблокирован, 1 - активен. 383 + 384 +Ответ: Code 204 385 + 359 359 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Пользователи**(%%) = 360 360 361 361 == (% style="color:#000000; font-size:16px" %)**Добавление пользователя**(%%) == ... ... @@ -405,9 +405,8 @@ 405 405 [ 406 406 "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ группы пользователя, перечисление названия клиентских ролей 407 407 ], 408 - "language": 0~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский435 + "language": 1 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 409 409 } 410 - 411 411 { 412 412 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 413 413 "lastName": "string", ... ... @@ -421,12 +421,8 @@ 421 421 422 422 (% style="text-align:left" %) 423 423 (% style="color:#000000; font-weight:normal" %)Ответ: 424 - 425 -(% style="text-align:left" %) 426 -(% style="color:#000000; font-weight:normal" %){ 427 - 428 -(% style="text-align:left" %) 429 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 450 +{ 451 + "id": "" , ~/~/ ID пользователя 430 430 "lastName": "" , ~/~/ Фамилия , 431 431 "firstName": "" , ~/~/ Имя 432 432 "position": "" , ~/~/ Должность ... ... @@ -443,11 +443,9 @@ 443 443 "kind": "" , ~/~/ тип аутентификации 444 444 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 445 445 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 468 +} 446 446 447 -(% style="text-align:left" %) 448 -(% style="color:#000000; font-weight:normal" %)} 449 449 450 - 451 451 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 452 452 453 453 (% class="box infomessage" %) ... ... @@ -467,19 +467,16 @@ 467 467 468 468 (% style="color:#000000" %)Параметры в теле запроса (JSON): 469 469 470 -(% style="color:#000000" %){ 471 - 490 +(% style="color:#000000" %){(%%) 472 472 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 473 473 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 474 474 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 475 475 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 476 - 477 477 (% style="color:#000000" %)} 478 478 479 479 (% style="color:#000000" %)Ответ: 480 480 481 481 (% style="color:#000000" %){ (%%) 482 - 483 483 "id": "" , ~/~/ идентификатор пользователя 484 484 "lastName": "" , ~/~/ фамилия 485 485 "firstName": "" , ~/~/ имя ... ... @@ -493,7 +493,6 @@ 493 493 "sessionDuration":"", ~/~/ длительность сессии в минутах 494 494 "status": "1", ~/~/ статус пользователя 495 495 "lastLogged": "", ~/~/ дата/время последней авторизации 496 - 497 497 (% style="color:#000000" %)} 498 498 499 499 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -567,10 +567,8 @@ 567 567 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 568 568 569 569 (% lang="en-US" style="text-align:left" %) 570 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 571 - 572 -(% lang="en-US" style="text-align:left" %) 573 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 586 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 587 + "id": "" , ~/~/ ID пользователя 574 574 "lastName": "" , ~/~/ фамилия 575 575 "firstName": "" , ~/~/ имя 576 576 "position": "" , ~/~/ должность ... ... @@ -592,9 +592,7 @@ 592 592 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 593 593 }, 594 594 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 595 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 596 - 597 -(% lang="en-US" style="text-align:left" %) 609 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 598 598 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 599 599 600 600 (% lang="en-US" style="text-align:left" %) ... ... @@ -601,10 +601,8 @@ 601 601 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 602 602 603 603 (% lang="en-US" style="text-align:left" %) 604 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 605 - 606 -(% lang="en-US" style="text-align:left" %) 607 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 616 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 617 + "id": "" , ~/~/ идентификатор пользователя 608 608 "lastName": "" , ~/~/ фамилия 609 609 "firstName": "" , ~/~/ имя 610 610 "position": "" , ~/~/ должность ... ... @@ -625,10 +625,8 @@ 625 625 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 626 626 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 627 627 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 638 +} 628 628 629 -(% lang="en-US" style="text-align:left" %) 630 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 631 - 632 632 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 633 633 634 634 (% class="box warningmessage" %) ... ... @@ -648,12 +648,10 @@ 648 648 649 649 (% style="color:#000000" %)Параметры в теле запроса (JSON): 650 650 651 -(% style="color:#000000" %){ 652 - 659 +(% style="color:#000000" %){(%%) 653 653 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 654 654 "description": "" , ~/~/ описание 655 655 "data": "" , ~/~/ данные, связанные со сменой статуса 656 - 657 657 (% style="color:#000000" %)} 658 658 659 659 (% style="text-align:left" %) ... ... @@ -675,7 +675,7 @@ 675 675 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 676 676 677 677 [ 678 - 684 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 679 679 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 680 680 ] 681 681 ... ... @@ -738,6 +738,8 @@ 738 738 (% style="text-align:left" %) 739 739 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».** 740 740 747 += = 748 + 741 741 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Модель объекта**(%%) = 742 742 743 743 == (% style="color:#000000; font-size:16px" %)**Получение информации о модели объекта**(%%) == ... ... @@ -849,7 +849,7 @@ 849 849 { 850 850 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 851 851 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 852 - "deleted": true,860 + "deleted": false, 853 853 "extId": "string", 854 854 "name": "string", 855 855 "picture": "string", ... ... @@ -868,7 +868,7 @@ 868 868 { 869 869 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 870 870 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 871 - "deleted": true,879 + "deleted": false, 872 872 "extId": "string", 873 873 "name": "string", 874 874 "picture": "string", ... ... @@ -902,7 +902,7 @@ 902 902 (% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models** 903 903 ))) 904 904 905 -(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе.913 +(% style="color:#000000" %)Метод позволяет изменить статус модели, указанного в запросе. 906 906 907 907 (% style="color:#000000" %)Метод запроса: **PUT** 908 908 ... ... @@ -969,7 +969,7 @@ 969 969 (% lang="en-US" %)**DELETE /api/v3/models/{Id}** 970 970 ))) 971 971 972 -(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалитьпользователя, указанного в строке запроса.980 +(% style="color:#000000" %)Метод позволяет удалить модели. Метод позволяет удалить модель, указанного в строке запроса. 973 973 974 974 (% style="color:#000000" %)Метод запроса: **DELETE** 975 975 ... ... @@ -981,7 +981,7 @@ 981 981 982 982 Ответ: В случае успеха **Success 200** 983 983 984 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 992 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 985 985 986 986 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 987 987 ... ... @@ -1010,6 +1010,17 @@ 1010 1010 1011 1011 ((( 1012 1012 { 1021 + 1022 +((( 1023 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1024 + "IsSackEnabled": true, ~/~/ Определяет, должен ли внутренний сервер отвечать устройству сообщением SACK при получении сообщения от устройства 1025 +))) 1026 + 1027 +((( 1028 + ~/~/Используется только на ТС с типом устройства quecklink gv56, quecklink gv58, quecklink 1029 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1030 +))) 1031 + 1013 1013 "vehicleId": "", ~/~/ ID объекта 1014 1014 "name": "", ~/~/ Имя объекта 1015 1015 "imei": "", ~/~/ IMEI объекта ... ... @@ -1017,19 +1017,15 @@ 1017 1017 "deviceTypeName": "", ~/~/ Название типа устройства 1018 1018 "sim1": "", ~/~/ Номер SIM1 1019 1019 "sim2": "", ~/~/ Номер SIM2 1020 - 1021 1021 "parentId": "", ~/~/ ID клиента-родителя 1022 1022 "parentName": "", ~/~/ Наименование клиента-родителя 1023 1023 "modelId": "", ~/~/ ID модели объекта 1024 1024 "modelName": "", ~/~/ Имя модели объекта 1025 - 1026 1026 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1027 1027 "unitName": "string", ~/~/ Наименование подразделения 1028 1028 "status": 0, ~/~/ Статус объекта 1029 - 1030 1030 "createdAt": "", ~/~/ Дата создания объекта 1031 1031 }, 1032 - 1033 1033 "customFields": [ ~/~/ Произвольные поля 1034 1034 { 1035 1035 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -1052,8 +1052,7 @@ 1052 1052 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1053 1053 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1054 1054 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1055 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1056 - 1070 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1057 1057 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1058 1058 "mileageCoeff": 0, ~/~/ коэффициент пробега 1059 1059 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1083,7 +1083,6 @@ 1083 1083 "retries": 0 ~/~/ Количество попыток 1084 1084 } 1085 1085 ], 1086 - 1087 1087 "sensors": [ ~/~/ Датчики 1088 1088 { 1089 1089 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1110,6 +1110,7 @@ 1110 1110 ], 1111 1111 "showInTooltip": true, ~/~/ Отображать в подсказке 1112 1112 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1126 + "color": "string", ~/~/ Код цвета датчиков 1113 1113 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1114 1114 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1115 1115 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1124,31 +1124,19 @@ 1124 1124 }, 1125 1125 1126 1126 ~/~/ Характерные для произвольного: 1127 - 1128 1128 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1129 - 1130 1130 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1131 - 1132 1132 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1133 - 1134 1134 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1135 - 1136 1136 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1137 - 1138 1138 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1139 - 1140 1140 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1141 - 1142 1142 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1143 - 1144 1144 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1145 - 1146 1146 ~/~/ "ValueOn": "Вкл.", 1147 - 1148 1148 ~/~/ "ValueOff": "Выкл." 1149 1149 "summaryMaxValue": 0 ~/~/ Макс. значение 1150 1150 } 1151 - 1152 1152 "drivers": [ ~/~/ Водители 1153 1153 { 1154 1154 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1157,7 +1157,6 @@ 1157 1157 "isDefault": true ~/~/ По умолчанию 1158 1158 } 1159 1159 ], 1160 - 1161 1161 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1162 1162 { 1163 1163 "id": "", ~/~/ ID задания ... ... @@ -1174,19 +1174,27 @@ 1174 1174 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1175 1175 } 1176 1176 ], 1177 - 1178 - "statusHistory": [ ~/~/ История статусов 1178 +"statusHistory": [ ~/~/ История статусов 1179 1179 { 1180 1180 "status": 0, 1181 1181 "date": "2023-05-22T09:57:39.562Z", 1182 1182 "description": "string", 1183 1183 "additionalInfo": "string" 1184 - } 1185 - ] 1186 1186 1185 +((( 1187 1187 } 1187 + ], 1188 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1189 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1188 1188 ))) 1189 1189 1192 +((( 1193 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1194 +} 1195 + 1196 +))) 1197 +))) 1198 + 1190 1190 (% style="text-align:left" %) 1191 1191 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 1192 1192 ... ... @@ -1193,6 +1193,75 @@ 1193 1193 (% style="text-align:left" %) 1194 1194 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1195 1195 1205 + 1206 +== **Отправить команду на терминал** == 1207 + 1208 +(% class="box successmessage" %) 1209 +((( 1210 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1211 +))) 1212 + 1213 +Команда для отправки на тс. 1214 + 1215 +{ 1216 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId) 1217 +"command": "", ~/~/ Текст отправляемой команды 1218 +"retries": "", ~/~/ Количество попыток отправки на терминал 1219 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 1220 +} 1221 + 1222 +В ответ получаем cmdid 1223 + 1224 + 1225 +== **Получить ответ на отправленную на ТС команду** == 1226 + 1227 +(% class="box infomessage" %) 1228 +((( 1229 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1230 +))) 1231 + 1232 +Идентификатор команды: cmdId 1233 + 1234 +Запрос от терминала на ответ команды 1235 + 1236 +Пример ответ от терминала: 1237 + 1238 +ID= "" ~/~/ идентификатор объекта 1239 +Soft="" ~/~/ версия софта 1240 +GPS=4 ~/~/ тип трекера 1241 +Time=11:05:43 28.06.24 ~/~/ время запроса 1242 +Lat=45.056221 ~/~/ широта 1243 +Lon=39.035938 ~/~/ долгота 1244 +Speed=0.0 ~/~/ скорость 1245 +Course=181.4 ~/~/направление 1246 + 1247 +((( 1248 +== **Список отправленных объекту команд с ответами** == 1249 + 1250 +(% class="box infomessage" %) 1251 +((( 1252 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1253 +))) 1254 + 1255 +Идентификатор ТС: vehicleId 1256 + 1257 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1258 + 1259 +Пример ответа терминала 1260 + 1261 +[ 1262 +{ 1263 +"id": "", ~/~/ идентификатор пользователя 1264 +"commandText": "", ~/~/Текст команды. 1265 +"templateId": "", ~/~/Идентификатор шаблона 1266 +"updated": "", ~/~/ Время отправки 1267 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1268 +"answer": "", ~/~/ Ответ терминала. 1269 +"status": "" ~/~/ Статус отправки 1270 +} 1271 +] 1272 +))) 1273 + 1196 1196 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1197 1197 1198 1198 (% class="box successmessage" %) ... ... @@ -1212,6 +1212,11 @@ 1212 1212 1213 1213 (% style="color:#000000" %){ 1214 1214 1293 + 1294 +((( 1295 + "vehicleId": 0, ~/~/ ID ТС 1296 +))) 1297 + 1215 1215 "parentId": "" , ~/~/ ID клиента 1216 1216 "name": "" , ~/~/ имя ТС 1217 1217 "imei": "" , ~/~/ IMEI ... ... @@ -1232,7 +1232,6 @@ 1232 1232 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1233 1233 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1234 1234 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1235 - 1236 1236 "mileageCalcMethod": 0, 1237 1237 "mileageCoeff": 0, 1238 1238 "locationByCellId": true, ... ... @@ -1265,7 +1265,6 @@ 1265 1265 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1266 1266 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1267 1267 } 1268 - 1269 1269 "drivers": [ ~/~/ Водители 1270 1270 { 1271 1271 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1280,8 +1280,7 @@ 1280 1280 "retries": 0 1281 1281 } 1282 1282 ], 1283 - 1284 - "sensors": [ ~/~/ Датчики 1364 +"sensors": [ ~/~/ Датчики 1285 1285 { 1286 1286 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1287 1287 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1307,6 +1307,7 @@ 1307 1307 ], 1308 1308 "showInTooltip": true, ~/~/ Отображать в подсказке 1309 1309 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1390 + "color": "string", ~/~/ код цвета датчиков 1310 1310 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1311 1311 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1312 1312 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1319,103 +1319,222 @@ 1319 1319 "additionalProp2": "string", 1320 1320 "additionalProp3": "string" 1321 1321 }, 1322 - 1323 1323 ~/~/ Характерные для произвольного: 1324 - 1325 1325 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1326 - 1327 1327 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1328 - 1329 1329 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1330 - 1331 1331 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1332 - 1333 1333 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1334 - 1335 1335 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1336 - 1337 1337 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1338 - 1339 1339 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1340 - 1341 1341 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1342 - 1343 1343 ~/~/ "ValueOn": "Вкл.", 1344 - 1345 1345 ~/~/ "ValueOff": "Выкл." 1346 - "summaryMaxValue": 0 ~/~/ Макс. значение 1415 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1416 + 1417 +((( 1418 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1419 + { 1420 + "from": 0, ~/~/ С какого значения 1421 + "color": "string", ~/~/ Каким цветом 1422 + "text": "string" ~/~/ Текст подписи к этому интервалу 1423 + } 1424 + ] 1347 1347 } 1348 1348 ], 1427 +))) 1428 + 1429 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1430 + 1431 + 1349 1349 "customFields": [ ~/~/ Произвольные поля 1350 1350 { 1351 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1352 - "name": "string", 1353 - "value": "string", 1354 - "forClient": true, 1355 - "forTooltip": true, 1356 - "forReport": true 1357 - } 1358 - ] 1434 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1435 + "name": "string", ~/~/ Наименование произвольного поля 1436 + "value": "string", ~/~/ Значение произвольного поля 1437 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1438 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1439 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1440 + 1441 +((( 1442 + } 1443 + ], 1444 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1445 +))) 1446 + 1447 +((( 1448 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1359 1359 } 1450 +))) 1360 1360 1452 + 1361 1361 (% style="color:#000000" %)Ответ: 1362 1362 1363 -(% style="color:#000000" %){ 1364 1364 1365 - "vehicleId": "", ~/~/ID ТС 1366 - "parentId": "", ~/~/Guid владельца ТС 1367 - "name": "", ~/~/Имя объекта 1368 - "imei": "", ~/~/IMEI 1369 - "deviceTypeId": "", ~/~/ID типа устройства 1370 - "modelId": "", ~/~/ID модели 1371 - "unitId": "", ~/~/ID подразделения 1372 - "sim1": "", ~/~/SIM1 1373 - "sim2": "", ~/~/SIM2 1374 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1375 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1376 - "counters": { ~/~/Счётчики 1377 - "mileageEnabled": true, 1378 - "motohoursEnabled": true, 1379 - "mileage": "", 1380 - "motohours": 345.0 1381 - }, 1382 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1383 - "id": null, 1384 - "enabled": true, ~/~/флаг включения 1385 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1386 - "login": "", ~/~/ имя учетной записи 1387 - "password": "" ~/~/ пароль учетной записи 1388 - }, 1389 - "inspectionTasks": { ~/~/ задания на ТО 1390 - "id": "", ~/~/ ID задачи 1391 - "enabled": false, ~/~/ Признак включения 1392 - "name": "", ~/~/ Имя задания 1393 - "description": "", ~/~/ Описание задания 1394 - "mileageCondition": "", ~/~/ Условие по пробегу 1395 - "lastMileage": "", ~/~/ Пробег (в метрах) 1396 - "motohoursCondition": "", ~/~/ Условие по моточасам 1397 - "lastMotohours": "", ~/~/ Моточасы 1398 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1399 - "kind": "", ~/~/ Вид периодичности по времени 1400 - "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1456 +((( 1457 +((( 1458 +((( 1459 +{ 1460 + "vehicleId": 0, ~/~/ ID ТС 1461 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1462 + "name": "string", ~/~/ Имя объекта 1463 + "imei": "string", ~/~/ IMEI 1464 + "deviceTypeId": 0, ~/~/ ID типа устройства 1465 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1466 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1467 + "sim1": "string", ~/~/ SIM1 1468 + "sim2": "string", ~/~/ SIM2 1469 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1470 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1471 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1472 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1473 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1474 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1475 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1476 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1477 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1478 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1479 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1480 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1481 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1482 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1483 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1484 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1485 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1486 + "counters": { ~/~/ Dto для состояний счётчиков 1487 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1488 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1489 + "mileage": 0, ~/~/ Пробег 1490 + "motohours": 0 ~/~/ Моточасы 1491 + }, 1492 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1493 + "id": "string", ~/~/ CMSV6 Идентификатор 1494 + "enabled": true, ~/~/ Признак включения 1495 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1496 + "login": "string", ~/~/ CMSV6 имя учетной записи 1497 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1498 + }, 1499 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1500 + { 1501 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1502 + "enabled": true, ~/~/ Признак включения 1503 + "name": "string", ~/~/ Имя задания 1504 + "description": "string", ~/~/ Описание задания 1505 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1506 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1507 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1508 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1509 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1510 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1511 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1512 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1401 1401 } 1514 + ], 1515 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1516 + { 1517 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1518 + "inputNumber": 0, ~/~/ № входа. 1519 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1520 + "comment": "string", ~/~/ Комментарий 1521 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1522 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1523 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1524 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1525 + } 1526 + ], 1527 + "commandTemplates": [ ~/~/ Список шаблонов команд 1528 + { 1529 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1530 + "name": "string", ~/~/ Название шаблона команд 1531 + "command": "string", ~/~/ Команда на выполнение 1532 + "retries": 0 ~/~/ Лимит попыток отправки 1533 + } 1534 + ], 1535 + "sensors": [ ~/~/ Список датчиков 1536 + { 1537 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1538 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1539 + "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 1540 + "name": "string", ~/~/ Имя датчика 1541 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1542 + "inputNumber": 0, ~/~/ Номер входа 1543 + "pseudonym": "string", ~/~/ Псевдоним 1544 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1545 + "isInverted": true, ~/~/ Признак инверсии 1546 + "disabled": true, ~/~/ Датчик не участвует в обработке 1547 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1548 + "gradesTables": [ ~/~/ Тарировка 1549 + { 1550 + "grades": [ ~/~/ Таблицы тарировки 1551 + { 1552 + "input": 0, ~/~/ Вход 1553 + "output": 0 ~/~/ Выход 1554 + } 1555 + ], 1556 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1557 + } 1558 + ], 1559 + "showInTooltip": true, ~/~/ Отображение в подсказке 1560 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1561 + "color": "string", ~/~/ код цвета датчиков 1562 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1563 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1564 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1565 + "expr": "string", ~/~/ Выражение 1566 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1567 + "string" 1568 + ], 1569 + "customParams": { 1570 + "additionalProp1": "string", 1571 + "additionalProp2": "string", 1572 + "additionalProp3": "string" 1573 + }, 1574 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1575 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1576 + { 1577 + "from": 0, ~/~/ С какого значения 1578 + "color": "string", ~/~/ Каким цветом 1579 +))) 1402 1402 1403 -(% style="text-align:left" %) 1404 -(% style="color:#000000" %)} 1581 +((( 1582 + "text": "string" ~/~/ Текст подписи к этому интервалу 1583 + } 1584 + ] 1585 + } 1586 + ], 1587 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1588 + "customFields": [ ~/~/ Список произвольных полей 1589 + { 1590 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1591 + "name": "string", ~/~/ Наименование произвольного поля 1592 + "value": "string", ~/~/ Значение произвольного поля 1593 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1594 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1595 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1596 + } 1597 + ], 1598 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1599 +} 1600 +))) 1601 +))) 1602 +))) 1405 1405 1604 + 1406 1406 **Валидация:** 1407 1407 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1408 1408 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1409 1409 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1410 1410 1411 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 1412 1412 1611 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1612 + 1413 1413 (% class="box infomessage" %) 1414 1414 ((( 1415 1415 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1416 1416 ))) 1417 1417 1418 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1618 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1419 1419 1420 1420 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1421 1421 ... ... @@ -1449,9 +1449,12 @@ 1449 1449 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1450 1450 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1451 1451 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1452 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1453 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1454 - "customFields": null ~/~/ значение любого из произвольных полей ТС 1652 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1653 + "unitName": "string", ~/~/ Название подразделения (опционально) 1654 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1655 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1656 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1657 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1455 1455 } 1456 1456 1457 1457 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1458,8 +1458,14 @@ 1458 1458 1459 1459 (% style="color:#000000" %)Ответ: 1460 1460 1461 -(% style="color:#000000" %){ 1664 +(% style="color:#000000" %)[ 1665 +{ 1462 1462 1667 +((( 1668 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1669 +))) 1670 + 1671 +((( 1463 1463 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1464 1464 "name": "" ~/~/ наименование объекта 1465 1465 "imei": "" ~/~/ IMEI объекта ... ... @@ -1485,9 +1485,21 @@ 1485 1485 "forClient": true, ~/~/ право на отображение у клиента 1486 1486 "forTooltip": false, ~/~/ право на отображение в подсказке 1487 1487 "forReport": false ~/~/ право на отображение в отчетах 1488 - }(%%) 1489 -(% style="color:#000000" %)} 1697 +))) 1490 1490 1699 +((( 1700 + } 1701 + ], 1702 + "vehicleGroups": [ ~/~/ Группы ТС 1703 + { 1704 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1705 + "name": "string" ~/~/ Наименование группы ТС 1706 + } 1707 + ] 1708 + } 1709 +] 1710 +))) 1711 + 1491 1491 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1492 1492 1493 1493 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1519,13 +1519,11 @@ 1519 1519 "data": "", ~/~/ Данные 1520 1520 "overwrite": false, ~/~/ Флаг перезаписи 1521 1521 "stage": "", ~/~/ Состояние, может быть null 1522 - 1523 1523 (% style="color:#000000" %)} 1524 1524 1525 1525 (% style="color:#000000" %)Ответ: 1526 1526 1527 -(% style="color:#000000" %){ 1528 - 1747 +(% style="color:#000000" %){(%%) 1529 1529 "status": "", ~/~/ значение статуса 1530 1530 "date": "", ~/~/ Дата смены статуса 1531 1531 "description": "", ~/~/ Описание ... ... @@ -1532,10 +1532,9 @@ 1532 1532 "data": "", ~/~/ Данные 1533 1533 "overwrite": false, ~/~/ Флаг перезаписи 1534 1534 "stage": "", ~/~/ Состояние 1535 - 1536 -(% style="text-align:left" %) 1537 1537 (% style="color:#000000" %) } 1538 1538 1756 + 1539 1539 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1540 1540 1541 1541 (% class="box warningmessage" %) ... ... @@ -1611,9 +1611,19 @@ 1611 1611 1612 1612 "drivers": [ ~/~/ Водители 1613 1613 { 1614 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1615 - "isDefault": true 1616 - } 1832 + 1833 +((( 1834 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1835 + "inputNumber": 0, ~/~/ № входа. 1836 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения. 1837 + "comment": "string", ~/~/ Комментарий. 1838 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1839 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1840 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения. 1841 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения. 1842 +))) 1843 + 1844 + } 1617 1617 ], 1618 1618 "commandTemplates": [ ~/~/ Шаблон команды 1619 1619 { ... ... @@ -1623,8 +1623,7 @@ 1623 1623 "retries": 0 1624 1624 } 1625 1625 ], 1626 - 1627 - "sensors": [ ~/~/ Датчики 1854 +"sensors": [ ~/~/ Датчики 1628 1628 { 1629 1629 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1630 1630 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1650,6 +1650,11 @@ 1650 1650 ], 1651 1651 "showInTooltip": true, ~/~/ Отображать в подсказке 1652 1652 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1880 + 1881 +((( 1882 + "color": "string",** ~/~/ **Цвет датчика 1883 +))) 1884 + 1653 1653 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1654 1654 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1655 1655 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1662,95 +1662,225 @@ 1662 1662 "additionalProp2": "string", 1663 1663 "additionalProp3": "string" 1664 1664 }, 1665 - 1666 1666 ~/~/ Характерные для произвольного: 1667 - 1668 1668 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1669 - 1670 1670 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1671 - 1672 1672 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1673 - 1674 1674 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1675 - 1676 1676 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1677 - 1678 1678 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1679 - 1680 1680 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1681 - 1682 1682 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1683 - 1684 1684 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1685 - 1686 1686 ~/~/ "ValueOn": "Вкл.", 1687 - 1688 1688 ~/~/ "ValueOff": "Выкл." 1689 1689 "summaryMaxValue": 0 ~/~/ Макс. значение 1910 + 1911 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1912 + { 1913 + "from": 0, ~/~/ С какого значения 1914 + "color": "string", ~/~/ Каким цветом 1915 + "text": "string" ~/~/ Текст подписи к этому интервалу 1916 + } 1917 + ] 1690 1690 } 1691 1691 ], 1920 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1921 + 1692 1692 "customFields": [ ~/~/ Произвольные поля 1693 - { 1694 - 1695 - "name": "string", 1696 - "value": "string", 1697 - "forClient": true, 1698 - "forTooltip": true, 1699 - "forReport": true 1923 + { 1924 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1925 + "name": "string", ~/~/ Наименование произвольного поля 1926 + "value": "string", ~/~/ Значение произвольного поля 1927 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1928 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1929 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1700 1700 } 1701 - ] 1931 + 1932 +((( 1933 + ], 1934 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1935 +))) 1936 + 1702 1702 } 1703 1703 1939 + 1704 1704 (% style="color:#000000" %)Ответ: 1705 1705 1706 -(% lang="en-US" style="text-align:left" %) 1707 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 1942 +((( 1943 +{ 1944 + "vehicleId": 0, ~/~/ ID ТС 1945 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1946 + "name": "string", ~/~/ Имя объекта 1947 + "imei": "string", ~/~/ IMEI 1948 + "deviceTypeId": 0, ~/~/ ID типа устройства 1949 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1950 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1951 + "sim1": "string", ~/~/ SIM1 1952 + "sim2": "string", ~/~/ SIM2 1953 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1954 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1955 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1956 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1957 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1958 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1959 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1960 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1961 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1962 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1963 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1964 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1965 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 1966 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1967 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1968 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1969 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1970 + "counters": { ~/~/ состояний счётчиков 1971 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1972 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1973 + "mileage": 0, ~/~/ Пробег 1974 + "motohours": 0 ~/~/ Моточасы 1975 + }, 1976 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1977 + "id": "string", ~/~/ CMSV6 Идентификатор 1978 + "enabled": true, ~/~/ Признак включения 1979 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 1980 +))) 1708 1708 1709 -(% lang="en-US" style="text-align:left" %) 1710 - "vehicleId": "", ~/~/ ID ТС 1711 - "parentId": "", ~/~/ ID клиента 1712 - "name": "", ~/~/ имя ТС 1713 - "imei": "", ~/~/ IMEI 1714 - "deviceTypeId": "", ~/~/ типа устройства 1715 - "modelId": "", ~/~/ ID модели 1716 - "unitId": "", ~/~/ ID подразделения 1717 - "sim1": "", ~/~/ SIM 1 1718 - "sim2": "", ~/~/ SIM2 1719 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1720 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1721 - "counters": 1722 - { 1723 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1724 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1725 - "mileage": "", ~/~/ пробег 1726 - "motohours": "", ~/~/ моточасы 1727 - } 1728 - "cmsv6Parameters": ~/~/ параметры CMSv6 1982 + 1983 +((( 1984 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1985 + "login": "string", ~/~/ CMSV6 имя учетной записи 1986 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1987 + }, 1988 + "inspectionTasks": [ ~/~/ Задания на ТО 1989 + { 1990 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1991 + "enabled": true, ~/~/ Признак включения 1992 + "name": "string", ~/~/ Имя задания 1993 + "description": "string", ~/~/ Описание задания 1994 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1995 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1996 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1997 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1998 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1999 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 2000 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2001 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2002 + } 2003 + ], 2004 + "drivers": [ ~/~/ Список водителей 2005 + { 2006 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2007 + "inputNumber": 0, ~/~/ № входа. 2008 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2009 + "comment": "string", ~/~/ Комментарий. 2010 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2011 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2012 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2013 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2014 + } 2015 + ], 2016 + "commandTemplates": [ ~/~/ Список шаблонов команд 2017 + { 2018 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2019 + "name": "string", ~/~/ Название шаблона команд 2020 + "command": "string", ~/~/ Команда на выполнение 2021 + "retries": 0 ~/~/ Лимит попыток отправки 2022 + } 2023 + ], 2024 + "sensors": [ ~/~/ Список датчиков 2025 + { 2026 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2027 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2028 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2029 +))) 2030 + 2031 +((( 2032 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2033 +))) 2034 + 2035 +((( 2036 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2037 +))) 2038 + 2039 +((( 2040 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2041 +))) 2042 + 2043 +((( 2044 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2045 +))) 2046 + 2047 +((( 2048 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2049 + "name": "string", ~/~/ Имя датчика 2050 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2051 +))) 2052 + 2053 +((( 2054 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2055 + "inputNumber": 0, ~/~/ Номер входа 2056 + "pseudonym": "string", ~/~/ Псевдоним 2057 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2058 + "isInverted": true, ~/~/ Признак инверсии 2059 + "disabled": true, ~/~/ Датчик не участвует в обработке 2060 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2061 + "gradesTables": [ ~/~/ Тарировка 1729 1729 { 1730 - "id": ~/~/ идентификатор 1731 - "enabled": true, ~/~/ флаг включения 1732 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1733 - "login": "", ~/~/ имя учетной записи 1734 - "password": "", ~/~/ пароль учетной записи 1735 - } 1736 - "inspectionTasks": ~/~/ задания на ТО 1737 - { 1738 - "id": "", ~/~/ ID задания 1739 - "enabled": false, ~/~/ Признак включения 1740 - "name": "", ~/~/ Имя задания 1741 - "description": "", ~/~/ Описание задания 1742 - "mileageCondition": "", ~/~/ Условие по пробегу 1743 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1744 - "motohoursCondition": "", ~/~/ Условие по моточасам 1745 - "lastMotohours": "", ~/~/ Моточасы 1746 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1747 - "kind": "", ~/~/ Вид периодичности по времени 1748 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2063 + "grades": [ ~/~/ Таблицы тарировки 2064 + { 2065 + "input": 0, ~/~/ Вход 2066 + "output": 0 ~/~/ Выход 2067 + } 2068 + ], 2069 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1749 1749 } 2071 + ], 2072 + "showInTooltip": true, ~/~/ Отображение в подсказке 2073 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1750 1750 1751 -(% lang="en-US" style="text-align:left" %) 1752 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2075 +((( 2076 + "color": "string", ~/~/ цвет уведомлений 2077 +))) 1753 1753 2079 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2080 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2081 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2082 + "expr": "string", ~/~/ Выражение 2083 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2084 + "string" 2085 + ], 2086 + "customParams": { ~/~/ Дополнительные настройки 2087 + "additionalProp1": "string", 2088 + "additionalProp2": "string", 2089 + "additionalProp3": "string" 2090 + }, 2091 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2092 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2093 + { 2094 + "from": 0, ~/~/ С какого значения 2095 + "color": "string", ~/~/ Каким цветом 2096 + "text": "string" ~/~/ Текст подписи к этому интервалу 2097 + } 2098 + ] 2099 + } 2100 + ], 2101 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2102 + "customFields": [ ~/~/ Список произвольных полей 2103 + { 2104 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2105 + "name": "string", ~/~/ Наименование произвольного поля 2106 + "value": "string", ~/~/ Значение произвольного поля 2107 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2108 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2109 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2110 + } 2111 + ], 2112 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2113 +} 2114 +))) 2115 + 1754 1754 **Валидация:** 1755 1755 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1756 1756 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1789,18 +1789,15 @@ 1789 1789 1790 1790 (% style="color:#000000" %)Метод запроса: **GET** 1791 1791 1792 -(% 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]]2154 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/devices/types>>https://hosting.glonasssoft.ru/api/v3/devices/types]] 1793 1793 1794 1794 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1795 1795 1796 1796 (% style="color:#000000" %)Ответ: 1797 1797 1798 -(% style="color:#000000" %){ 1799 - 2160 +(% style="color:#000000" %){(%%) 1800 1800 "deviceTypeId" : "", ~/~/ ID типа устройства 1801 1801 "deviceTypeName" : "" ~/~/ Название типа устройства 1802 - 1803 -(% style="text-align:left" %) 1804 1804 (% style="color:#000000" %)} 1805 1805 1806 1806 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1822,13 +1822,10 @@ 1822 1822 1823 1823 (% style="color:#000000" %)Ответ: 1824 1824 1825 -(% style="color:#000000" %){ 1826 - 2184 +(% style="color:#000000" %){(%%) 1827 1827 "id": "", ~/~/ ID типа датчика 1828 1828 "name": "", ~/~/ Название 1829 1829 "description": "", ~/~/ Описание 1830 - 1831 -(% style="text-align:left" %) 1832 1832 (% style="color:#000000" %)} 1833 1833 1834 1834 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1872,6 +1872,56 @@ 1872 1872 } 1873 1873 ] 1874 1874 2231 +== (% style="color:#000000; font-size:16px" %)**Получить тип и номер входа сырого параметра **(%%) == 2232 + 2233 +(% class="box infomessage" style="text-align: left;" %) 2234 +((( 2235 +**POST /api/v3/terminalMessages/mapping** 2236 +))) 2237 + 2238 +Запрос позволяет узнать тип и номер входа для сырого параметра, приходящего по указанному протоколу. 2239 + 2240 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/terminalMessages/mapping 2241 + 2242 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2243 + 2244 +{ 2245 + "protocolType": 0, 2246 + "params": ["string"] 2247 +} 2248 + 2249 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2250 +|protocolType|ID типа протокола 2251 +|params|((( 2252 +Массив наименований параметров в сообщении 2253 +))) 2254 + 2255 +Ответ: 2256 + 2257 +{ 2258 + "protocolType": 0, 2259 + "mapping": { 2260 + "additionalProp1": { 2261 + "inputType": 0, 2262 + "inputNumber": 0 2263 + }, 2264 + "additionalProp2": { 2265 + "inputType": 0, 2266 + "inputNumber": 0 2267 + } 2268 + } 2269 +} 2270 + 2271 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2272 +|protocolType|Тип протокола 2273 +|inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 2274 +|inputNumber|((( 2275 +Номер входа 2276 +))) 2277 + 2278 +(% class="wikigeneratedid" %) 2279 +Перечень 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/]] 2280 + 1875 1875 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1876 1876 1877 1877 (% class="box infomessage" %) ... ... @@ -1896,6 +1896,11 @@ 1896 1896 "to": "2023-03-29T09:14:46.107Z" ~/~/ конец периода запроса 1897 1897 } 1898 1898 2305 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2306 +|vehicleId|ID объекта 2307 +|from|Дата и время начала периода запроса 2308 +|to|Дата и время окончания периода запроса 2309 + 1899 1899 Ответ: 1900 1900 1901 1901 [ ... ... @@ -1902,25 +1902,43 @@ 1902 1902 { 1903 1903 "messages": [ 1904 1904 { 1905 - "deviceTime": "2023-03-29T09:14:46.125Z", ~/~/ Время устройства 1906 - "serverTime": "2023-03-29T09:14:46.125Z", ~/~/ Время сервера 1907 - "speed": 0, ~/~/ Скорость, км/ч 1908 - "altitude": 0, ~/~/ Высота, м 1909 - "latitude": 0, ~/~/ Широта [-90°;90°] 1910 - "longitude": 0, ~/~/ Долгота [-180°;180°] 1911 - "satellites": 0, ~/~/ Кол-во спутников 1912 - "voltage": 0, ~/~/ Напряжение 1913 - "parameters": { ~/~/ список параметров датчиков передаваемых терминалом 2316 + "deviceTime": "2023-11-29T07:40:44.052Z", 2317 + "serverTime": "2023-11-29T07:40:44.052Z", 2318 + "speed": 0, 2319 + "altitude": 0, 2320 + "latitude": 0, 2321 + "longitude": 0, 2322 + "satellites": 0, 2323 + "course": 0, 2324 + "voltage": 0, 2325 + "parameters": { 1914 1914 "additionalProp1": "string", 1915 1915 "additionalProp2": "string", 1916 1916 "additionalProp3": "string" 1917 1917 }, 1918 - "photoCount": 0 ~/~/ Кол-во фото 2330 + "photoCount": 0, 2331 + "lbsCorrectedCoords": true, 2332 + "protocolType": 0 1919 1919 } 1920 1920 ] 1921 1921 } 1922 1922 ] 1923 1923 2338 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2339 +|deviceTime|Время сообщения терминала 2340 +|serverTime|Время когда сообщение поступило на сервер 2341 +|speed|Скорость 2342 +|altitude|Высота над уровнем моря 2343 +|latitude|Широта 2344 +|longitude|Долгота 2345 +|satellites|Кол-во спутников 2346 +|course|Курс 2347 +|voltage|Бортовое напряжение 2348 +|parameters|Список параметров и их значений 2349 +|photoCount|Количество фото 2350 +|lbsCorrectedCoords|Признак того, что координаты были скорректированы по LBS, true - скорректированы, false - не скорректированы 2351 +|protocolType|ID типа протокола 2352 + 1924 1924 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос данных об объекте за период**(%%) = 1925 1925 1926 1926 == (% style="color:#000000; font-size:16px" %)**Получение данных о пробеге и моточасах транспортного средства**(%%) == ... ... @@ -1940,7 +1940,7 @@ 1940 1940 Тело запроса: 1941 1941 1942 1942 { 1943 - "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2372 + "sampling": 86400, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 1944 1944 "vehicleIds": [0], ~/~/ Список ID объектов 1945 1945 "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 1946 1946 "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода ... ... @@ -1957,10 +1957,14 @@ 1957 1957 { 1958 1958 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 1959 1959 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 1960 - "mileageBegin": 0, ~/~/ Пробег на начало периода 1961 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 1962 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 1963 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2389 + "mileage": 0, ~/~/ Пробег за период, километры 2390 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2391 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2392 + "motohours": 0, ~/~/ Моточасы за период, секунды 2393 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2394 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2395 + "idlingTime": 0 ~/~/ Холостой ход за период, секунд 2396 + 1964 1964 } 1965 1965 ] 1966 1966 } ... ... @@ -1983,7 +1983,7 @@ 1983 1983 Тело запроса: 1984 1984 1985 1985 { 1986 - "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2419 + "sampling": 86400, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 1987 1987 "vehicleIds": [0], ~/~/ Список ID объектов 1988 1988 "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 1989 1989 "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода ... ... @@ -2002,13 +2002,23 @@ 2002 2002 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2003 2003 "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода 2004 2004 "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2438 + "fuelTankLevelStart": 0, ~/~/ Уровень топлива в цистерне на начало периода 2439 + "fuelTankLevelEnd": 0, ~/~/ Уровень топлива в цистерне на конец периода 2005 2005 "fuelConsumption": 0, ~/~/ Расход топлива 2006 2006 "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2442 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне 2443 + 2007 2007 } 2008 2008 ] 2009 2009 } 2010 2010 ] 2011 2011 2449 +(% class="box warningmessage" %) 2450 +((( 2451 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2452 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2453 +))) 2454 + 2012 2012 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2013 2013 2014 2014 (% class="box infomessage" %) ... ... @@ -2043,7 +2043,8 @@ 2043 2043 "model": "string", ~/~/ Модель объекта 2044 2044 "fuels": [ ~/~/ Массив данным по заправкам и сливам 2045 2045 { 2046 - "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив 2489 + "event": 0, ~/~/ Тип события 0 - Other, 1 - Engine, 2 - Stop, 3 - FuelIn, 4 - FuelOut, 5 - Garbage, 6 - Grader, 8 - Otval, 9 - Sand, 10 - MixerLand, 11 - MixerMove, 12 - OpenCircuit, 13 - TechSpeed, 14 - Work, 15 - Braid, 16 - Broom, 17 - ReFuller, 18 - Crane, 19 - Power, 20 - TankFuelIn, 21 - TankFuelOut, 22 - BigStop, 23 - OverSpeed, 24 - Unloading, 25 - Warning, 26 - GarbageWork, 27 - Custom, 28 - CustomWork, 29 - GNSS, 30 - GrainIn, 31 - GrainOut, 32 - WeighingTerminal, 33 - Stopping, 34 - FertilizerWork, 35 - FertilizerRefueling 2490 + 2047 2047 "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало 2048 2048 "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание 2049 2049 "valueFuel": 0, ~/~/ Количество ... ... @@ -2054,6 +2054,120 @@ 2054 2054 } 2055 2055 ] 2056 2056 2501 + 2502 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) == 2503 + 2504 +(% class="box infomessage" %) 2505 +((( 2506 +**POST /api/v3/vehicles/moveStop** 2507 +))) 2508 + 2509 +Метод запроса: **POST** 2510 + 2511 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop 2512 + 2513 +В заголовках запроса: X-Auth: Токен авторизации 2514 + 2515 + 2516 +Тело запроса: 2517 + 2518 +{ 2519 + "vehicleIds": [ ], ~/~/ Список ID объектов 2520 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2521 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2522 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2523 +} 2524 + 2525 +Ответ: 2526 + 2527 +[ 2528 + { 2529 + "vehicleId": 0, ~/~/ ID объекта 2530 + "vehicleName": "string", ~/~/ Имя объекта 2531 + "moves": [ ~/~/ Событие движения 2532 + { 2533 + "mileage": 0, ~/~/ Пробег, км 2534 + "eventId": 0, ~/~/ Идентификатор события 2535 + "eventName": "string", ~/~/ Название события 2536 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2537 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2538 + "duration": 0 ~/~/ Продолжительность события, секунд 2539 + } 2540 + ], 2541 + "stops": [ ~/~/ События стоянок 2542 + { 2543 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2544 + "eventId": 0, ~/~/ Идентификатор события 2545 + "eventName": "string", ~/~/ Название события 2546 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2547 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2548 + "duration": 0 ~/~/ Продолжительность события, секунд 2549 + } 2550 + ] 2551 + } 2552 +] 2553 + 2554 + 2555 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2556 + 2557 +(% class="box infomessage" %) 2558 +((( 2559 +**POST /api/v3/vehicles/getlastdata** 2560 +))) 2561 + 2562 +Метод запроса: **POST** 2563 + 2564 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata 2565 + 2566 +В заголовках запроса: X-Auth: Токен авторизации 2567 + 2568 + 2569 +В массиве указываем id объектов через запятую 2570 + 2571 +Ответ: 2572 + 2573 +[ 2574 + { 2575 + "vehicleId": 55728, ~/~/ Идентификатор объекта 2576 + "vehicleGuid": "fa9c0357-9b9f-44b9-a89c-20a2cb80a9ad", ~/~/ Guid объекта 2577 + "vehicleNumber": "0105 КМ", ~/~/ Номер объекта 2578 + "receiveTime": "2025-06-27T12:37:46.7782735Z", ~/~/ Время и дата поступления данных 2579 + "recordTime": "2025-06-27T12:37:19Z", ~/~/ Время и дата формирование данных 2580 + "state": 4, ~/~/ Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2581 + "speed": 31, ~/~/ Скорость объекта 2582 + "course": 116, ~/~/ Курс движения [0;360] 2583 + "latitude": 45.722128, ~/~/ Широта [-90°;90°]. 2584 + "longitude": 39.800432, ~/~/ Долгота [-180°;180°]. 2585 + "address": "\" Краснодарский край Россия 45,722128°, 39,800432°\"", ~/~/ Адрес 2586 + "geozones": [ ~/~/ Сведения по геозонам. 2587 + { 2588 + "id": 10225647, ~/~/ ID Геозоны 2589 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2590 + }, 2591 + { 2592 + "id": 10282875, ~/~/ ID Геозоны 2593 + "name": "Ё2" ~/~/ Наименование геозоны 2594 + }, 2595 + { 2596 + "id": 10226240, ~/~/ ID Геозоны 2597 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2598 + }, 2599 + { 2600 + "id": 9747869, ~/~/ ID Геозоны 2601 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2602 + }, 2603 + { 2604 + "id": 10221123, ~/~/ ID Геозоны 2605 + "name": "53r" ~/~/ Наименование геозоны 2606 + }, 2607 + { 2608 + "id": 10197638, ~/~/ ID Геозоны 2609 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2610 + } 2611 + ] 2612 + } 2613 + 2614 + 2057 2057 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2058 2058 2059 2059 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2182,6 +2182,35 @@ 2182 2182 } 2183 2183 ] 2184 2184 2743 + 2744 +== (% style="color:#000000; font-size:16px" %)**Обновить информацию по геозоне**(%%) == 2745 + 2746 +(% class="box successmessage" %) 2747 +((( 2748 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**PUT **(%%)**/api/v3/gis** 2749 +))) 2750 + 2751 +(% style="color:#000000" %)Метод запроса: **PUT** 2752 + 2753 +Пример запроса: 2754 + 2755 +((( 2756 +{ 2757 + "id": 0, ~/~/ Идентификатор объекта геозоны 2758 + "name": "string", ~/~/ Наименование объекта геозоны 2759 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 2760 + "description": "string", ~/~/ Описание объекта геозоны 2761 + "beginCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата начала расчетов для геозоны 2762 + "endCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата окончания расчетов для геозоны 2763 + "settingsData": "string" ~/~/ Параметры отображения в формате XML. 2764 +} 2765 +))) 2766 + 2767 + 2768 +Пример ответа: 2769 + 2770 +200 ~/~/ Success 2771 + 2185 2185 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) = 2186 2186 2187 2187 == (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) == ... ... @@ -2213,7 +2213,7 @@ 2213 2213 "id": 0, ~/~/ ID уведомления 2214 2214 "name": "string", ~/~/ Название уведомления 2215 2215 "active": true, ~/~/ Состояние true - активен, false - деактивирован 2216 - "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО 2803 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя) 2217 2217 "userId": "", ~/~/ Пользователь, создавший уведомление 2218 2218 "parentId": "", ~/~/ Идентификатор клиента 2219 2219 "parentName": "string" ~/~/ Имя клиента ... ... @@ -2220,6 +2220,155 @@ 2220 2220 } 2221 2221 ] 2222 2222 2810 + 2811 +== (% style="color:#000000; font-size:16px" %)**Создание уведомления**(%%) == 2812 + 2813 +(% class="box infomessage" %) 2814 +((( 2815 +**POST /api/v3/notifications** 2816 +))) 2817 + 2818 +Метод запроса **POST** 2819 + 2820 +(% style="text-align: left;" %) 2821 +(% style="color:#000000" %)Пример запроса 2822 + 2823 +((( 2824 +{ 2825 + "id": 0, ~/~/ ID правила 2826 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2827 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2828 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2829 + "name": "string", ~/~/ Имя правила 2830 + "active": true, ~/~/ Активность правила 2831 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2832 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2833 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2834 + ], 2835 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2836 + 0 2837 + ], 2838 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2839 + 0 2840 + ], 2841 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2842 + 0 2843 + ], 2844 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2845 + "additionalProp1": "string", 2846 + "additionalProp2": "string", 2847 + "additionalProp3": "string" 2848 + }, 2849 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2850 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2851 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2852 + ], 2853 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2854 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2855 + "string" 2856 + ], 2857 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2858 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2859 + { 2860 + "id": 0, ~/~/ Идентификатор участника чата. 2861 + "info": "string" ~/~/ Дополнительные сведения. 2862 + } 2863 + ], 2864 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2865 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2866 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2867 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2868 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2869 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2870 + "timezone": 0, ~/~/ часовой пояс 2871 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2872 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2873 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2874 + { 2875 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек 2876 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2877 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2878 + "additionalProp1": "string", 2879 + "additionalProp2": "string", 2880 + "additionalProp3": "string" 2881 + } 2882 + } 2883 + ] 2884 +} 2885 +))) 2886 + 2887 +((( 2888 + 2889 +))) 2890 + 2891 +((( 2892 + 2893 +))) 2894 + 2895 +Ответ: 2896 + 2897 +{ 2898 + "id": 0, ~/~/ ID правила 2899 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2900 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2901 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2902 + "name": "string", ~/~/ Имя правила 2903 + "active": true, ~/~/ Активность правила 2904 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2905 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2906 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2907 + ], 2908 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2909 + 0 2910 + ], 2911 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2912 + 0 2913 + ], 2914 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2915 + 0 2916 + ], 2917 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2918 + "additionalProp1": "string", 2919 + "additionalProp2": "string", 2920 + "additionalProp3": "string" 2921 + }, 2922 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2923 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2924 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2925 + ], 2926 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2927 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2928 + "string" 2929 + ], 2930 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2931 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2932 + { 2933 + "id": 0, ~/~/ Идентификатор участника чата. 2934 + "info": "string" ~/~/ Дополнительные сведения. 2935 + } 2936 + ], 2937 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2938 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2939 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2940 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2941 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2942 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2943 + "timezone": 0, ~/~/ часовой пояс 2944 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2945 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2946 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2947 + { 2948 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек 2949 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2950 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2951 + "additionalProp1": "string", 2952 + "additionalProp2": "string", 2953 + "additionalProp3": "string" 2954 + } 2955 + } 2956 + ] 2957 +} 2958 + 2223 2223 == (% style="color:#000000; font-size:16px" %)**Запрос настроек уведомления**(%%) == 2224 2224 2225 2225 (% class="box infomessage" %) ... ... @@ -2361,6 +2361,32 @@ 2361 2361 2362 2362 Success 2363 2363 3100 + 3101 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 3102 + 3103 +(% class="box warningmessage" %) 3104 +((( 3105 +**PUT** /api/v3/notifications/prolongation 3106 +))) 3107 + 3108 +Метод позволяет продлить уведомления. 3109 + 3110 +Метод запроса **PUT** 3111 + 3112 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 3113 + 3114 +В заголовках запроса: X-Auth: Токен авторизации. 3115 + 3116 +Тело запроса: 3117 + 3118 +[ 3119 + 3120 +0 3121 + 3122 +] 3123 + 3124 +где 0 идентификатор ids. 3125 + 2364 2364 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2365 2365 2366 2366 (% class="box errormessage" %) ... ... @@ -3406,19 +3406,83 @@ 3406 3406 **PUT /api/v3/Billing/client/balance** 3407 3407 ))) 3408 3408 4171 +Устанавливает указанное значение баланса не создавая операции пополнение/снятие. 4172 + 3409 3409 Тело запроса: 3410 3410 3411 3411 { 3412 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3413 - "Balance": 0 4176 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4177 + "Balance": 0 ~/~/ Значение баланса. 3414 3414 } 3415 3415 3416 3416 Ответ: Success 3417 3417 3418 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3419 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3420 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4182 +== (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) == 3421 3421 4184 +(% class="box warningmessage" %) 4185 +((( 4186 +**PUT /api/v3/billing/client/balance/deposit** 4187 +))) 4188 + 4189 +Создает операцию **Пополнение **с указанной суммой 4190 + 4191 +Тело запроса: 4192 + 4193 +((( 4194 +{ 4195 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4196 + "amount": 0 ~/~/ Сумма пополнения баланса 4197 +} 4198 +))) 4199 + 4200 +((( 4201 + 4202 +))) 4203 + 4204 +Ответ: Success 4205 + 4206 +((( 4207 +{ 4208 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки. 4209 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4210 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя. 4211 + "Moment": "2025-06-10T12:15:19.076Z", ~/~/ Время корректировки. 4212 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс. 4213 + "Description": "string" ~/~/ Описание корректировки. 4214 +} 4215 +))) 4216 + 4217 +== (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) == 4218 + 4219 +Создает операцию **Списание **с указанной суммой 4220 + 4221 +(% class="box warningmessage" %) 4222 +((( 4223 +**PUT /api/v3/billing/client/balance/withdraw** 4224 +))) 4225 + 4226 +Тело запроса: 4227 + 4228 +((( 4229 +{ 4230 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4231 + "amount": 0 ~/~/ Сумма списания с баланса 4232 +} 4233 +))) 4234 + 4235 +Ответ: Success 4236 + 4237 +((( 4238 +{ 4239 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки. 4240 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4241 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя. 4242 + "Moment": "2025-06-10T12:21:05.149Z", ~/~/ Время корректировки. 4243 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс. 4244 + "Description": "string" ~/~/ Описание корректировки 4245 +} 4246 +))) 4247 + 3422 3422 == (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) == 3423 3423 3424 3424 (% class="box warningmessage" %) ... ... @@ -3428,28 +3428,35 @@ 3428 3428 3429 3429 Тело запроса: 3430 3430 4257 +((( 3431 3431 { 3432 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3433 - "CalculationType": 0, 3434 - "PermissibleBalance": 0, 3435 - "DefermentDays": 0, 3436 - "SendUiNotifications": true, 3437 - "SendEmailNotifications": true, 3438 - "IsPrivate": true, 4259 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4260 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни 4261 + "PermissibleBalance": 0, ~/~/ Допустимый баланс 4262 + "DefermentDays": 0, ~/~/ Отсрочка (дни). 4263 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено 4264 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено 3439 3439 } 4266 +))) 3440 3440 4268 +((( 4269 + 4270 +))) 4271 + 3441 3441 Ответ: Success 3442 3442 3443 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3444 -|ClientId|Идентификатор клиента 3445 -|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 3446 -|PermissibleBalance|Допустимый баланс 3447 -|DefermentDays|((( 3448 -Отсрочка, количество дней 4274 +((( 4275 +{ 4276 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 4277 + "BlockingTime": "2025-06-10T12:23:28.754Z", ~/~/ Время, когда заблокируется клиент. 4278 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4279 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни 4280 + "PermissibleBalance": 0, ~/~/ Допустимый баланс. 4281 + "DefermentDays": 0, ~/~/ Отсрочка (дни) 4282 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено 4283 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено 4284 +} 3449 3449 ))) 3450 -|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено 3451 -|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено 3452 -|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 3453 3453 3454 3454 == (% style="color:#000000; font-size:16px" %)**Изменить тариф клиента**(%%) == 3455 3455 ... ... @@ -3461,38 +3461,76 @@ 3461 3461 Тело запроса: 3462 3462 3463 3463 { 3464 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3465 - "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3466 - "Features": [ 4297 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4298 + "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана. 4299 + "Features": [ ~/~/ Набор услуг по тарифу клиента. 3467 3467 { 3468 - "Feature": "string", 3469 - "IsEnabled": true, 3470 - "IsFactual": true, 3471 - "Limit": 0, 3472 - "Price": 0, 3473 - "DebitDate": "2023-10-18T13:26:58.987Z", 3474 - "PeriodValue": 0, 3475 - "PeriodType": 0 4301 + "Feature": "string", ~/~/ Код услуги. 4302 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга. 4303 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту. 4304 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование 4305 + "Price": 0, ~/~/ Цена за единицу. 4306 + "DebitDate": "2023-10-18T13:26:58.987Z", ~/~/ Следующий момент времени списания с баланса за услугу. 4307 + "PeriodValue": 0, ~/~/ Значение периода. 4308 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане ( 0 - Дни, 1 - Месяцы) 3476 3476 } 3477 3477 ] 3478 3478 } 3479 3479 4313 + 3480 3480 Ответ: Success 3481 3481 3482 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3483 -|ClientId|Идентификатор клиента 3484 -|PlanId|Идентификатор тарифного плана 3485 -|Feature|Код услуги 3486 -|IsEnabled|Признак, определяющий активирована ли услуга 3487 -|IsFactual|Признак, определяющий расчёт по факту 3488 -|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 3489 -|Price|Цена за единицу. 3490 -|DebitDate|Следующий момент времени списания с баланса за услугу. 3491 -|PeriodValue|Значение периода. 3492 -|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 4316 +((( 4317 +{ 4318 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4319 + "Plan": { ~/~/ Определяет тарифный план (шаблон услуг) 4320 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана. 4321 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента-владельца. 4322 + "Name": "string", ~/~/ Наименование. 4323 + "IsArchived": true, ~/~/ Признак, определяющий архивный тарифный план. 4324 + "Constraint": { ~/~/ Ограничения по тарифу 4325 + "CalculationType": 0, ~/~/ Определяет тип расчёта (0 - деньги, 1 - дни) 4326 + "PermissibleBalance": 0, ~/~/ Допустимый баланс. 4327 + "DefermentDays": 0 ~/~/ Отсрочка (дни) 4328 + }, 4329 + "Features": [ ~/~/ Набор услуг по тарифному плану. 4330 + { 4331 + "Feature": "string", ~/~/Код услуги. 4332 + "IsFactual": true, ~/~/ Признак, определяющий возможность расчёта по факту. 4333 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4334 + "Price": 0, ~/~/ Цена за единицу. 4335 + "PeriodValue": 0, ~/~/ Значение периода. 4336 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане. (0 - деньги, 1 - дни) 4337 + } 4338 + ], 4339 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя, создавшего тарифный план. 4340 + "Created": "2025-06-10T12:29:32.969Z", ~/~/ Дата создания тарифного плана. 4341 + "Deactivated": "2025-06-10T12:29:32.969Z" ~/~/ Дата деактивации тарифного плана. 4342 + }, 4343 + "Features": [ ~/~/ Набор услуг по тарифу клиента. 4344 + { 4345 + "Feature": "string", ~/~/ Код услуги. 4346 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга. 4347 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры по услуге тарифа частными т.е. персональными для клиента, либо определяются тарифным планом. 4348 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту. 4349 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4350 + "Price": 0, ~/~/ Цена за единицу. 4351 + "DebitDate": "2025-06-10T12:29:32.969Z", ~/~/ Следующий момент времени списания с баланса за услугу. 4352 + "PeriodValue": 0, ~/~/ Значение периода. 4353 + "PeriodType": 0, ~/~/ Определяет тип периода действия услуги в тарифном плане. 4354 + "Quantity": 0 ~/~/ Количество использования услуги. 4355 + } 4356 + ] 4357 +} 4358 +))) 3493 3493 3494 3494 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) = 3495 3495 4362 +(% class="box warningmessage" %) 4363 +((( 4364 +Для тестирования запросов **Импорта **в Postman необходимо скачать его на ПК. Версия в браузере не позволяет загружать файлы в тело запроса. 4365 +))) 4366 + 3496 3496 == (% style="color:#000000; font-size:16px" %)**Импорт объектов**(%%) == 3497 3497 3498 3498 (% class="box infomessage" %) ... ... @@ -3500,20 +3500,132 @@ 3500 3500 **POST /api/v3/vehicles/import/{agentId}** 3501 3501 ))) 3502 3502 3503 -** agentId**-idклиента.4374 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 3504 3504 4376 +В пути указывается **agentId** - id клиента. 3505 3505 4378 +**Заголовок** 4379 + 4380 +**X-Auth: [токен авторизации]** 4381 + 4382 +**Параметры** 4383 + 4384 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4385 +|withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 4386 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 4387 + 4388 +В теле использовать тип **form-data,** тип значения** file** 4389 + 4390 +**Ключи** 4391 + 4392 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4393 +|data|В значении передаем файл объекта, формат **xml** или **wlp ** 4394 +|csv|В значении передаем файл датчиков, формат **csv** 4395 + 4396 +Ответ: 4397 + 4398 +{ 4399 + "vehicleId": 0, 4400 + "name": "string", 4401 + "errors": ["string"] 4402 +} 4403 + 4404 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4405 +|vehicleId|ID созданного объекта 4406 +|name|Имя созданного объекта 4407 +|errors|Ошибки и их описание 4408 + 3506 3506 == (% style="color:#000000; font-size:16px" %)**Импорт сообщений**(%%) == 3507 3507 3508 3508 (% class="box infomessage" %) 3509 3509 ((( 3510 -**POST /api/v3/vehicles/import/history/{vehicleId}** 4413 +**POST** **/api/v3/vehicles/import/history/{vehicleId}** 3511 3511 ))) 3512 3512 3513 3513 (% class="wikigeneratedid" %) 3514 -** vehicleId**-idобъекта.4417 +Позволяет импортировать сообщения в выбранный объект. Сообщения должны иметь формат **wln** или **json**. Также они могут быть упакованы и переданы в виде в **zip-архива**. 3515 3515 4419 +(% class="wikigeneratedid" %) 4420 +В пути указывается **vehicleId **- id объекта. 3516 3516 4422 +**Заголовок** 4423 + 4424 +**X-Auth: [токен авторизации]** 4425 + 4426 +В теле использовать тип **form-data.** 4427 + 4428 +Ключи: 4429 + 4430 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4431 +|**history**|В значении передавать файл с историей 4432 + 4433 +В случае, если загружается история из файла **wln **можно выполнять подмену названий параметров. В ключе вы указываете название параметра из файла, в значении указываете значение на которое нужно заменить. 4434 + 4435 +Ответ: 4436 + 4437 +{ 4438 + "results": [ 4439 + { 4440 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4441 + "vehicleId": 0, 4442 + "errors": [ 4443 + "string" 4444 + ], 4445 + "firstMessageDate": "2023-11-28T09:27:58.949Z", 4446 + "lastMessageDate": "2023-11-28T09:27:58.949Z", 4447 + "producedCount": 0, 4448 + "msgCount": 0 4449 + } 4450 + ] 4451 +} 4452 + 4453 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4454 +|results|Результаты импорта в разрезе ТС 4455 +|vehicleGuid|Guid ТС 4456 +|vehicleId|ID ТС 4457 +|errors|Список ошибок импорта истории (если пустой - нет ошибок) 4458 +|firstMessageDate|Дата первого импортированного сообщения (UTC) 4459 +|lastMessageDate|Дата последнего импортированного сообщения (UTC) 4460 +|producedCount|Кол-во успешно отправленных в шину данных сообщений 4461 +|msgCount|Кол-во обработанных сообщений всего 4462 + 4463 +== **Импортировать историю ТС (Асинхронный запрос)** == 4464 + 4465 +(% class="box successmessage" %) 4466 +((( 4467 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 4468 +))) 4469 + 4470 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4471 + 4472 +Метод запроса: **POST** 4473 + 4474 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 4475 + 4476 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 4477 + 4478 + 4479 +Ответ: 4480 + 4481 +{ 4482 + 4483 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4484 + 4485 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 4486 + 4487 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 4488 + 4489 + "Message": "string", ~/~/ Информация о выполнении запроса 4490 + 4491 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 4492 + 4493 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4494 + 4495 + "Data": "string" ~/~/ Данные 4496 + 4497 +} 4498 + 4499 + 3517 3517 == (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 3518 3518 3519 3519 (% class="box infomessage" %) ... ... @@ -3521,7 +3521,69 @@ 3521 3521 **GET /api/v3/vehicles/import/history/status** 3522 3522 ))) 3523 3523 4507 +Запрос статуса импорта истории. Может потребоваться в случае импорта истории за большой период. 3524 3524 4509 +Ответ: 4510 + 4511 +{ 4512 + "activity": true, 4513 + "progress": 0, 4514 + "message": "string" 4515 +} 4516 + 4517 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)((( 4518 +**Параметр** 4519 +)))|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)((( 4520 +**Описание** 4521 +))) 4522 +|((( 4523 +activity 4524 +)))|((( 4525 +Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4526 +))) 4527 +|((( 4528 +progress 4529 +)))|((( 4530 +Guid ТС 4531 +))) 4532 + 4533 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 4534 + 4535 +(% class="box infomessage" %) 4536 +((( 4537 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 4538 +))) 4539 + 4540 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4541 + 4542 +Метод запроса: **GET** 4543 + 4544 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 4545 + 4546 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 4547 + 4548 + 4549 +Ответ: 4550 + 4551 +{ 4552 + 4553 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4554 + 4555 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 4556 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 4557 + 4558 + "Message": "string", ~/~/ Информация о выполнении запроса 4559 + 4560 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 4561 + 4562 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 4563 + 4564 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4565 + 4566 + "Data": "string" ~/~/ Данные 4567 + 4568 +} 4569 + 3525 3525 == (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 3526 3526 3527 3527 (% class="box infomessage" %) ... ... @@ -3591,7 +3591,7 @@ 3591 3591 3592 3592 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) = 3593 3593 3594 -== (% style="color:#000000; font-size:16px" %)**Запрос рейтин ша качества вождения**(%%) ==4639 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) == 3595 3595 3596 3596 (% class="box infomessage" %) 3597 3597 ((( ... ... @@ -3603,64 +3603,67 @@ 3603 3603 Тело запроса: 3604 3604 3605 3605 { 3606 - "vehicleIds": [vehicleId], 3607 - "from": "2023-11-22T09:29:48.051Z", 3608 - "to": "2023-11-22T09:29:48.051Z" 4651 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4652 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4653 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 3609 3609 } 3610 3610 3611 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3612 -|vehicleIds|Массив ID объектов 3613 -|from|Дата начала запроса 3614 -|to|Дата окончания запроса 3615 - 3616 3616 Ответ: 3617 3617 3618 3618 { 3619 - "items": [ 4659 + "items": [ ~/~/ Список в разрезе ТС 3620 3620 { 3621 - "from": "2023-11-22T09:29:48.052Z", 3622 - "to": "2023-11-22T09:29:48.052Z", 3623 - "vehicleId": 0, 3624 - "vehicleName": "string", 3625 - "vehicleModel": "string", 3626 - "penalty": 0, 3627 - "score": 0, 3628 - "totalViolations": 0, 3629 - "violationsByType": { 3630 - "overspeedingViolations": 0, 3631 - "accelerationViolations": 0, 3632 - "brakingViolations": 0, 3633 - "turningViolations": 0, 3634 - "dangerousDrivingViolations": 0, 3635 - "sensorViolations": 0 4661 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4662 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4663 + "vehicleId": 0, ~/~/ ID ТС 4664 + "vehicleName": "string", ~/~/ Название ТС 4665 + "vehicleModel": "string", ~/~/ Модель ТС 4666 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4667 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4668 + "totalViolations": 0, ~/~/ Нарушений всего 4669 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4670 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4671 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4672 + "brakingViolations": 0, ~/~/ Нарушений торможения 4673 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4674 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4675 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3636 3636 }, 3637 - "moveTime": 0, 3638 - "mileage": 0, 3639 - "tripsCount": 0, 3640 - "trips": [ 4677 + 4678 +((( 4679 + 4680 +))) 4681 + 4682 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4683 + "mileage": 0, ~/~/ Пробег, м 4684 + "tripsCount": 0, ~/~/ Кол-во рейсов 4685 + "trips": [ ~/~/ Информация по рейсу 3641 3641 { 3642 - "penalty": 0, 3643 - "score": 0, 3644 - "violationsCount": 0, 3645 - "violationsByType": { 3646 - "overspeedingViolations": 0, 3647 - "accelerationViolations": 0, 3648 - "brakingViolations": 0, 3649 - "turningViolations": 0, 3650 - "dangerousDrivingViolations": 0, 3651 - "sensorViolations": 0 4687 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4688 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4689 + "violationsCount": 0, ~/~/ Всего нарушений 4690 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4691 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4692 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4693 + "brakingViolations": 0, ~/~/ Нарушений торможения 4694 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4695 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4696 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3652 3652 }, 3653 - "moveTime": 0, 3654 - "mileage": 0, 3655 - "motohours": 0, 3656 - "maxSpeed": 0, 3657 - "startAddress": "string", 3658 - "endAddress": "string", 3659 - "drivers": [ 4698 + 4699 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4700 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4701 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4702 + "mileage": 0, ~/~/ Пробег, м 4703 + "motohours": 0, ~/~/ Моточасы, секунды 4704 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4705 + "startAddress": "string", ~/~/ Адрес начала рейса 4706 + "endAddress": "string", ~/~/ Адрес конца рейса 4707 + "drivers": [ ~/~/ Список водителей 3660 3660 { 3661 - "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3662 - "driverName": "string", 3663 - "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 4709 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4710 + "driverName": "string", ~/~/ФИО водителя 4711 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 3664 3664 } 3665 3665 ] 3666 3666 } ... ... @@ -3669,34 +3669,1985 @@ 3669 3669 ] 3670 3670 } 3671 3671 3672 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3673 -|from|Дата начала запроса 3674 -|to|Дата окончания 3675 -|vehicleId|ID объекта 3676 -|vehicleName|Имя объекта 3677 -|vehicleModel|Модель объекта 3678 -|penalty|Сумма штрафных баллов 3679 -|score|Оценка 3680 -|totalViolations|Суммарное количество нарушений 3681 -|violationsByType|Список типов нарушений и количество нарушений для каждого типа 3682 -|overspeedingViolations|Превышение скорости 3683 -|accelerationViolations|Ускорение 3684 -|brakingViolations|Торможение 3685 -|turningViolations|Резкий поворот 3686 -|dangerousDrivingViolations|Резкое вождение 3687 -|sensorViolations|Нарушение по датчику 3688 -|moveTime|Время в движении 3689 -|mileage|Пробег 3690 -|tripsCount|Количество рейсов 3691 -|motohours|Моточасы 3692 -|maxSpeed|Максимальная скорость 3693 -|startAddress|Адрес начала рейса 3694 -|endAddress|Адрес окончания рейса 3695 -|drivers|Список водителей, которые были на объекте в течениии рейса 3696 -|driverGuid|Guid водителя 3697 -|driverName|Имя водителя 3698 -|driverRfid|Номер Карты-метки 4720 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 3699 3699 4722 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4723 + 4724 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4725 + 4726 +(% class="box infomessage" %) 4727 +((( 4728 +**POST /api/v3/fuelcards/transactions** 4729 +))) 4730 + 4731 +Метод запроса: POST 4732 + 4733 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4734 +\\В заголовках запроса: X-Auth: Токен авторизации 4735 + 4736 +Параметры в теле запроса (JSON): 4737 + 4738 +{ 4739 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4740 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4741 + "ids": [ 4742 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4743 + ], 4744 + "timezone": 0 ~/~/ Часовой пояс 4745 +} 4746 + 4747 + 4748 +Ответ: 4749 + { 4750 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4751 + "driver": "string", ~/~/ Водители, привязанные к ТК 4752 + "object": "string", ~/~/ Наименование ТС 4753 + "amount": 0, ~/~/ Количество топлива 4754 + "amountDut": 0, ~/~/ Количество по ДУТ 4755 + "amountDiff": 0, ~/~/ Разница, л 4756 + "amountDiffPerc": 0, ~/~/ Разница, % 4757 + "summa": 0, ~/~/ Стоимость, руб 4758 + "serviceName": "string", ~/~/ Тип топлива 4759 + "price": 0, ~/~/ Цена за литр, руб 4760 + "cardName": "string", ~/~/ Наименование ТК 4761 + "cardNum": "string", ~/~/ Номер ТК 4762 + "operator": "string", ~/~/ Оператор ТК 4763 + "address": "string" ~/~/ Адрес АЗС 4764 + } 4765 + 4766 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) == 4767 + 4768 +(% class="box infomessage" %) 4769 +((( 4770 +**GET /api/v3/fuelcards** 4771 +))) 4772 + 4773 +Метод запроса: GET 4774 + 4775 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список 4776 + 4777 +Ответ: 4778 + 4779 +[ 4780 + { 4781 + "Name": "string", ~/~/ Определяет наименование карты. 4782 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора. 4783 + "Number": "string", ~/~/ Определяет № карты. 4784 + "Enabled": true, ~/~/ Определяет признак активности карты. 4785 + "Description": "string", ~/~/ Определяет описание карты. 4786 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты 4787 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 4788 + "deleted": true ~/~/ Признак удаления 4789 + } 4790 +] 4791 + 4792 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4793 + 4794 + 4795 +== **Получение полных данных о ретрансляторе** == 4796 + 4797 +(% class="box infomessage" %) 4798 +((( 4799 +**GET ** **/api/v3/retranslations/{id}** 4800 +))) 4801 + 4802 +id - Идентификатор ретранслятора 4803 + 4804 + 4805 +Пример ответа: 4806 + 4807 +{ 4808 +"description": "", ~/~/ Поле описания ретранслятора 4809 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4810 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4811 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4812 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4813 +"objects": [ ~/~/ Объекты для ретрансляции 4814 +{ 4815 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4816 +"name": "", ~/~/ Наименование объекта ретрансляции 4817 +"imei": "", ~/~/ IMEI объекта ретрансляции 4818 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4819 +} 4820 + ], 4821 +"id": "", ~/~/ Идентификатор ретранслятора 4822 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4823 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4824 +} 4825 + 4826 + 4827 +== **Удаление данных ретранслятора** == 4828 + 4829 +(% class="box infomessage" %) 4830 +((( 4831 +**DELETE** **/api/v3/retranslations/{id}** 4832 +))) 4833 + 4834 +id - Идентификатор ретранслятора 4835 + 4836 + 4837 +== **Создание ретранслятора** == 4838 + 4839 +(% class="box infomessage" %) 4840 +((( 4841 +**POST ** **/api/v3/retranslations/{id}** 4842 +))) 4843 + 4844 +Запрос: 4845 + 4846 +{ 4847 +"description": "", ~/~/ Поле описания ретранслятора 4848 +"subscriberId": "", ~/~/ Идентификатор подписчика 4849 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4850 +"address": "", ~/~/ Адрес и порт принимающего сервера 4851 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4852 +"objects": [ ~/~/Объекты для ретрансляции 4853 +{ 4854 +"id": "", ~/~/ Идентификатор ретранслятора 4855 +"imei": "", ~/~/ IMEI объекта ретрансляции 4856 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4857 +} 4858 + ] 4859 +} 4860 + 4861 + 4862 +Ответ: 4863 + 4864 +{ 4865 +"description": "", ~/~/ Поле описания ретранслятора 4866 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4867 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4868 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4869 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4870 +"objects": [ ~/~/ Объекты для ретрансляции 4871 +{ 4872 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4873 +"name": "string", ~/~/ Наименование объекта ретрансляции 4874 +"imei": "", ~/~/ IMEI объекта ретрансляции 4875 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4876 +} 4877 + ], 4878 +"id": "", ~/~/ Идентификатор ретранслятора 4879 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4880 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4881 +} 4882 + 4883 + 4884 +== **Редактирование ретранслятора** == 4885 + 4886 +(% class="box infomessage" %) 4887 +((( 4888 +**PUT** **/api/v3/retranslations** 4889 +))) 4890 + 4891 +Пример запроса: 4892 + 4893 +{ 4894 +"id": "", ~/~/ Идентификатор ретранслятора 4895 +"description": "string", ~/~/ Поле описания ретранслятора 4896 +"subscriberId": "", ~/~/ Идентификатор подписчика 4897 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4898 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4899 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4900 +"objects": ~/~/ Объекты для ретрансляции 4901 +[ 4902 +{ 4903 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4904 +"imei": "", ~/~/ IMEI объекта ретрансляции 4905 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4906 +} 4907 + ] 4908 +} 4909 + 4910 + 4911 +Пример ответа: 4912 + 4913 +{ 4914 +"description": "", ~/~/ Поле описания ретранслятора 4915 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4916 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4917 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4918 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4919 +"objects": [ ~/~/ Объекты для ретрансляции 4920 +{ 4921 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4922 +"name": "string", ~/~/ Наименование объекта ретрансляции 4923 +"imei": "", ~/~/ IMEI объекта ретрансляции 4924 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4925 +} 4926 + ], 4927 +"id": "", ~/~/ Идентификатор ретранслятора 4928 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4929 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4930 +} 4931 + 4932 + 4933 +== **Получение списка ретранслятора клиента** == 4934 + 4935 +(% class="box infomessage" %) 4936 +((( 4937 +**POST /api/v3/retranslations/find** 4938 +))) 4939 + 4940 +Пример запроса: 4941 + 4942 +{ 4943 +"id": "", ~/~/ Идентификатор ретранслятора 4944 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4945 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4946 +} 4947 + 4948 +Ответ: 4949 + 4950 +[ 4951 +{ 4952 +"description": "", ~/~/ Поле описания ретранслятора 4953 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4954 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4955 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4956 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4957 +"id": "", ~/~/ Идентификатор ретранслятора 4958 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4959 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4960 +} 4961 +] 4962 + 4963 + 4964 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4965 + 4966 +== **API для отчета по выгрузке комбайнов** == 4967 + 4968 +(% class="box infomessage" %) 4969 +((( 4970 +**POST /api/v3/Reports/harvesterUnloading** 4971 +))) 4972 + 4973 +Пример запроса: 4974 + 4975 +{ 4976 + "byTime": 0, ~/~/ Объединение событий по времени 4977 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4978 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4979 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4980 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4981 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4982 + 0 4983 + ], 4984 + "from": "", ~/~/ Дата и время начало запроса 4985 + "to": "", ~/~/ Дата и время окончания запроса 4986 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4987 +} 4988 + 4989 +Пример ответа: 4990 + 4991 +[ 4992 + { 4993 + "harvesterName": "", ~/~/Комбайн, номер 4994 + "harvesterId": 0, ~/~/Комбайн, id 4995 +"harvesterModel": "", ~/~/ Модель комбайна 4996 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4997 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4998 + "events": [ ~/~/Список событий в разрезе комбайна 4999 + { 5000 + "driverId": "", ~/~/Идентификатор водителя 5001 + "driverName": "", ~/~/Водитель комбайна, ФИО 5002 + "RFID": "", ~/~/ идентификатор карты-метки 5003 + "rfidName": "", ~/~/Водитель комбайна, имя метки 5004 + "vehicleId": 0, ~/~/идентификатор объекта 5005 + "vehicleName": "string", ~/~/ Имя объекта 5006 + "modelName": "string", ~/~/ Имя модели объекта 5007 + "nearestVehicles": [ ~/~/Объекты рядом 5008 + { 5009 + "vehicleId": 0, ~/~/идентификатор объекта 5010 + "vehicleName": "string" ~/~/ Имя объекта 5011 + } 5012 + ], 5013 + "fields": [ ~/~/Поля, где происходила выгрузка 5014 + { 5015 + "id": 0, ~/~/ идентификатор пользователя 5016 + "name": "string" ~/~/ имя пользователя 5017 + } 5018 + ], 5019 + "event": "string", ~/~/Событие 5020 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 5021 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 5022 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 5023 + "cultureName": "string", ~/~/ название культуры 5024 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 5025 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 5026 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 5027 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 5028 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 5029 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 5030 + "issued": 0, ~/~/Выдано, бункеров 5031 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 5032 + "latitude": 0, ~/~/Широта 5033 + "longitude": 0, ~/~/ Долгота 5034 + "litresAway": 0, ~/~/Отдано, л 5035 + "m3Away": 0 ~/~/Отдано, м3 5036 + } 5037 + ] 5038 + } 5039 +] 5040 + 5041 + 5042 +== **Отчет трек-датчики** == 5043 + 5044 +(% class="box infomessage" %) 5045 +((( 5046 +**POST /api/v3/Reports/sensorsWorks** 5047 +))) 5048 + 5049 +**Пример запроса:** 5050 + 5051 +{ 5052 + "vehicleIds": [ ~/~/ Список ID объектов 5053 + 0 5054 + ], 5055 + "from": "2025-02-20T06:39:23.888Z", ~/~/ Начало периода (локальное время клиента) 5056 + "to": "2025-02-20T06:39:23.888Z", ~/~/ Конец периода (локальное время клиента) 5057 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 5058 +} 5059 + 5060 +**Пример ответа:** 5061 + 5062 +((( 5063 +{ 5064 + "vehicleSensorWorks": [ ~/~/ Интервалы работы оборудования для конкретного ТС 5065 + { 5066 + "vehicleId": 0, ~/~/ Идентификатор ТС 5067 + "sensorWorks": [ ~/~/ Интервалы работы оборудования. 5068 + { 5069 + "start": "2025-02-20T06:39:23.979Z", ~/~/ Начало интервала работы оборудования. 5070 + "end": "2025-02-20T06:39:23.979Z", ~/~/ Конец интервала работы оборудования. 5071 + "duration": 0, ~/~/ Продолжительность интервала в секундах. 5072 + "name": "string", ~/~/ Наименование оборудования. 5073 + "mileage": 0, ~/~/ Пробег за время работы оборудования. 5074 + "totalMileage": 0, ~/~/ Общий пробег. 5075 + "avgSpeed": 0 ~/~/ Средняя скорость. 5076 + } 5077 + ] 5078 + } 5079 + ] 5080 +} 5081 + 5082 + 5083 +== **Превышение скорости** == 5084 + 5085 +(% class="box infomessage" %) 5086 +((( 5087 +**POST /api/v3/Reports/overSpeedDuration** 5088 +))) 5089 + 5090 + Публичный API запрос о превышениях скорости по объекту в секундах с выбором способа определения нарушений (дорожное ограничение или фиксированное ограничение). 5091 + 5092 +Пример запроса: 5093 + 5094 +((( 5095 +{ 5096 + "vehicleId": 0, ~/~/ идентификационный номер транспортного средства 5097 + "from": "2025-04-21T10:45:25.258Z", ~/~/ Начало периода (локальное время клиента) 5098 + "to": "2025-04-21T10:45:25.258Z", ~/~/ Конец периода (локальное время клиента) 5099 + "timezone": 0, ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 5100 + "overSpeedDetectionType": 0 ~/~/ тип нарушения (1-дорожное ограничение, 2-фиксированный ) 5101 +} 5102 +))) 5103 + 5104 +((( 5105 + 5106 +))) 5107 + 5108 +((( 5109 +Пример ответа: 5110 +))) 5111 + 5112 +((( 5113 +((( 5114 +[ 5115 + { 5116 + "eventDate": "2025-04-21T10:45:25.267Z", ~/~/ Дата и время события 5117 + "duration": 0, ~/~/ Продолжительность события в секундах 5118 + "maxSpeed": 0, ~/~/ Максимальная скорость 5119 + "speedLimit": 0 ~/~/ Ограничение скорости 5120 + } 5121 +] 5122 +))) 5123 +))) 5124 +))) 5125 + 5126 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 5127 + 5128 + 5129 +== **Запрос списка полей** == 5130 + 5131 +(% class="box successmessage" %) 5132 +((( 5133 +**POST /api/v3/agroLands/find** 5134 +))) 5135 + 5136 +Пример запроса: 5137 + 5138 +((( 5139 +((( 5140 +((( 5141 +{ 5142 + "year": 0, ~/~/ Фильтр по году 5143 + "name": "string", ~/~/ Фильтр по названию 5144 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 5145 +} 5146 +))) 5147 +))) 5148 + 5149 + 5150 +))) 5151 + 5152 +Пример ответа: 5153 + 5154 +((( 5155 +[ 5156 + { 5157 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5158 + "year": 0, ~/~/ Год поля 5159 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 5160 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 5161 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5162 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5163 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5164 + "counts": { ~/~/ Счётчики с/х поля 5165 + "fieldOperations": 0, ~/~/ Количество операций на поле 5166 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5167 + "facts": 0 ~/~/ Счётчик факта 5168 + }, 5169 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5170 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5171 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5172 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5173 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5174 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5175 + "planComment": "string", ~/~/ Комментарий к полю 5176 + "productivity": 0, ~/~/ Урожайность. 5177 + "id": 0, ~/~/ Идентификатор объекта геозоны 5178 + "name": "string", ~/~/ Название объекта геозоны 5179 + "type": 0, ~/~/ Тип объекта геозоны 5180 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5181 + "fname": "string", ~/~/ Имя файла 5182 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5183 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 5184 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 5185 + "description": "string", ~/~/ Описание объекта геозоны 5186 + "area": 0, ~/~/ Площадь, м2 5187 + "perimetr": 0, ~/~/ Периметр, м 5188 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 5189 + } 5190 +] 5191 + 5192 + 5193 +== **Создание нового поля ** == 5194 + 5195 +(% class="box successmessage" %) 5196 +((( 5197 +**POST /api/v3/agroLands** 5198 +))) 5199 + 5200 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 5201 +X-agent - ID клиента 5202 + 5203 +Пример запроса: 5204 + 5205 +((( 5206 +{ 5207 + "extId": "string", 5208 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля 5209 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля 5210 + "display": "string", ~/~/ Настройки отображения 5211 + "year": 0, ~/~/ Год поля 5212 + "name": "string", ~/~/ Наименование 5213 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5214 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 5215 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 5216 + "planComment": "string", ~/~/ Комментарий к полю 5217 + "cropRotations": [ ~/~/ Данные по севообороту 5218 + { 5219 + "landId": 0, ~/~/ ID поля 5220 + "landName": "string", ~/~/ Название поля 5221 + "year": 0, ~/~/ Год урожая 5222 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5223 + "cultureName": "string", ~/~/ Название культуры 5224 + "productivity": 0, ~/~/ Урожайность 5225 + "area": 0, ~/~/ Площадь поля, Га 5226 + "total": 0, ~/~/ Валовый сбор 5227 + "productivityFact": 0, ~/~/ Фактическая урожайность 5228 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5229 + "totalFact": 0, ~/~/ Фактический валовый сбор 5230 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 5231 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 5232 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 5233 + "isyearplan": true, ~/~/ Годовой план 5234 + "comment": "string" ~/~/ Комментарий 5235 + } 5236 + ] 5237 +} 5238 +))) 5239 + 5240 +((( 5241 + 5242 +))) 5243 + 5244 +Пример ответа: 5245 + 5246 +((( 5247 +((( 5248 +{ 5249 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5250 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5251 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5252 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5253 + "cropRotations": [ ~/~/ Данные по севообороту 5254 + { 5255 + "landId": 0, ~/~/ ID поля 5256 + "landName": "string", ~/~/ Название поля 5257 + "year": 0, ~/~/ Год урожая 5258 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5259 + "cultureName": "string", ~/~/ Название культуры 5260 + "productivity": 0, ~/~/ Урожайность 5261 + "area": 0, ~/~/ Площадь поля, Га. 5262 + "total": 0, ~/~/ Валовый сбор 5263 + "productivityFact": 0, ~/~/ Фактическая урожайность 5264 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5265 + "totalFact": 0, ~/~/ Фактический валовый сбор 5266 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 5267 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 5268 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 5269 + "isyearplan": true, ~/~/ годовой план 5270 + "comment": "string" ~/~/ Комментарий 5271 + } 5272 + ], 5273 + "cropVegetation": [ ~/~/ История вегетации поля 5274 + { 5275 + "values": [ ~/~/ Данные вегетации и состояния посева 5276 + { 5277 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5278 + "ndvi": 0 ~/~/ Индекс вегетации 5279 + } 5280 + ], 5281 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5282 + { 5283 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5284 + "type": "string", ~/~/ Тип 5285 + "pictureid": "string" ~/~/ Идентификатор ресурса 5286 + } 5287 + ], 5288 + "states": [ ~/~/ Ключевые даты развития поля 5289 + { 5290 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5291 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5292 + } 5293 + ] 5294 + } 5295 + ], 5296 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 5297 + "counts": { 5298 + "fieldOperations": 0, ~/~/ Количество операций на поле 5299 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5300 + "facts": 0 ~/~/ Счётчик факта 5301 + }, 5302 + "planComment": "string", ~/~/ Комментарий к полю 5303 +))) 5304 + 5305 +((( 5306 + "productivity": 0, ~/~/ Урожайность. 5307 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5308 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 5309 + "year": 0, ~/~/ Год поля 5310 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5311 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5312 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5313 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5314 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 5315 + "id": 0, ~/~/ Идентификатор объекта геозоны 5316 + "name": "string", ~/~/ Название объекта геозоны 5317 + "type": 0, ~/~/ Тип объекта геозоны 5318 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5319 + "fname": "string", ~/~/ Имя файла 5320 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5321 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 5322 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 5323 + "description": "string", ~/~/ Описание объекта геозоны 5324 + "area": 0, ~/~/ Площадь, м2 5325 + "perimetr": 0, ~/~/ Периметр, м 5326 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 5327 +} 5328 + 5329 + 5330 +))) 5331 +))) 5332 +))) 5333 + 5334 +== **Получение поля по id** == 5335 + 5336 +(% class="box infomessage" %) 5337 +((( 5338 +**GET /api/v3/agroLands/{id}** 5339 +))) 5340 + 5341 +Пример запроса: 5342 +id ~/~/ Идентификатор поля 5343 + 5344 +Пример ответа: 5345 + 5346 +((( 5347 +{ 5348 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5349 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5350 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5351 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5352 + "cropRotations": [ ~/~/ Данные по севообороту 5353 + { 5354 + "landId": 0, ~/~/ ID поля 5355 + "landName": "string", ~/~/ Название поля 5356 + "year": 0, ~/~/ Год урожая 5357 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5358 + "cultureName": "string", ~/~/ Название культуры 5359 + "productivity": 0, ~/~/ Урожайность 5360 + "area": 0, ~/~/ Площадь поля, Га 5361 + "total": 0, ~/~/ Валовый сбор 5362 + "productivityFact": 0, ~/~/ Фактическая урожайность 5363 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5364 + "totalFact": 0, ~/~/ Фактический валовый сбор 5365 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 5366 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 5367 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 5368 + "isyearplan": true, ~/~/ План года 5369 + "comment": "string" ~/~/ Комментарий 5370 + } 5371 + ], 5372 + "cropVegetation": [ ~/~/ История вегетации поля 5373 + { 5374 + "values": [ ~/~/ Данные вегетации и состояния посева 5375 + { 5376 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5377 + "ndvi": 0 ~/~/ Индекс вегетации 5378 + } 5379 + ], 5380 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5381 + { 5382 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5383 + "type": "string", ~/~/ Тип 5384 + "pictureid": "string" ~/~/ Идентификатор ресурса 5385 + } 5386 + ], 5387 + "states": [ ~/~/ Ключевые даты развития поля 5388 + { 5389 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5390 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 5391 + } 5392 + ] 5393 + } 5394 + ], 5395 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5396 + "counts": { 5397 + "fieldOperations": 0, ~/~/ Количество операций на поле 5398 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5399 + "facts": 0 ~/~/ Счётчик факта 5400 + }, 5401 + "planComment": "string", ~/~/ Комментарий к полю 5402 + "productivity": 0, ~/~/ Урожайность. 5403 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5404 +))) 5405 + 5406 +((( 5407 +((( 5408 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5409 + "year": 0, ~/~/ Год поля 5410 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5411 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5412 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5413 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5414 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5415 + "id": 0, ~/~/ Идентификатор объекта геозоны 5416 + "name": "string", ~/~/ Название объекта геозоны 5417 + "type": 0, ~/~/ Тип объекта геозоны 5418 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5419 + "fname": "string", ~/~/ Имя файла 5420 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5421 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5422 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5423 + "description": "string", ~/~/ Описание объекта геозоны 5424 + "area": 0, ~/~/ Площадь, м2 5425 + "perimetr": 0, ~/~/ Периметр, м 5426 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5427 +} 5428 +))) 5429 + 5430 + 5431 + 5432 +((( 5433 + 5434 +))) 5435 + 5436 +((( 5437 +((( 5438 +((( 5439 +== **Изменение поля** == 5440 + 5441 +(% class="box infomessage" %) 5442 +((( 5443 +**PUT /api/v3/agroLands** 5444 +))) 5445 + 5446 +Пример запроса: 5447 + 5448 +((( 5449 +((( 5450 +{ 5451 + "id": 0, ~/~/ Идентификатор поля 5452 + "extId": "string", ~/~/ ExtId 5453 + "shape": "string", ~/~/ Форма поля 5454 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5455 + "display": "string", ~/~/ Настройки отображения 5456 + "year": 0, ~/~/ Год поля 5457 + "name": "string", ~/~/ Наименование 5458 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5459 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5460 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5461 + "planComment": "string", ~/~/Комментарий к полю 5462 + "cropRotations": [ ~/~/ Данные по севообороту 5463 + { 5464 + "landId": 0, ~/~/ ID поля 5465 + "landName": "string", ~/~/ Название поля 5466 + "year": 0, ~/~/ Год урожая 5467 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5468 + "cultureName": "string", ~/~/ Название культуры 5469 + "productivity": 0, ~/~/ Урожайность 5470 + "area": 0, ~/~/ Площадь поля, Га. 5471 + "total": 0, ~/~/ Валовый сбор 5472 + "productivityFact": 0, ~/~/ Фактическая урожайность 5473 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5474 + "totalFact": 0, ~/~/ Фактический валовый сбор 5475 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5476 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5477 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5478 + "isyearplan": true, 5479 + "comment": "string" ~/~/ Комментарий 5480 + } 5481 + ], 5482 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5483 +} 5484 +))) 5485 +))) 5486 + 5487 +((( 5488 + 5489 +))) 5490 + 5491 +Пример ответа: 5492 + 5493 +((( 5494 +((( 5495 +((( 5496 +{ 5497 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5498 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5499 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5500 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5501 + "cropRotations": [ ~/~/ Данные по севообороту 5502 + { 5503 + "landId": 0, ~/~/ ID поля 5504 + "landName": "string", ~/~/ Название поля 5505 + "year": 0, ~/~/ Год урожая 5506 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5507 + "cultureName": "string", ~/~/ Название культуры 5508 + "productivity": 0, ~/~/ Урожайность 5509 + "area": 0, ~/~/ Площадь поля, Га 5510 + "total": 0, ~/~/ Валовый сбор 5511 + "productivityFact": 0, ~/~/ Фактическая урожайность 5512 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5513 + "totalFact": 0, ~/~/ Фактический валовый сбор 5514 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5515 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5516 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5517 + "isyearplan": true, ~/~/ 5518 + "comment": "string" ~/~/ Комментарий 5519 + } 5520 + ], 5521 + "cropVegetation": [ ~/~/ История вегетации поля 5522 + { 5523 + "values": [ ~/~/ Данные вегетации и состояния посева 5524 + { 5525 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5526 + "ndvi": 0 ~/~/ Индекс вегетации 5527 + } 5528 + ], 5529 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5530 + { 5531 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5532 + "type": "string", ~/~/ Тип 5533 + "pictureid": "string" ~/~/ Идентификатор ресурса 5534 + } 5535 + ], 5536 + "states": [ ~/~/ Ключевые даты развития поля 5537 + { 5538 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5539 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5540 + } 5541 + ] 5542 + } 5543 + ], 5544 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5545 + "counts": { 5546 + "fieldOperations": 0, ~/~/ Количество операций на поле 5547 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5548 + "facts": 0 ~/~/ Счётчик факта 5549 + }, 5550 + "planComment": "string", ~/~/ Комментарий к полю 5551 + "productivity": 0, ~/~/ Урожайность. 5552 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5553 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5554 + "year": 0, ~/~/ Год поля 5555 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5556 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5557 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5558 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5559 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5560 + "id": 0, ~/~/ Идентификатор объекта геозоны 5561 + "name": "string", ~/~/ Название объекта геозоны 5562 + "type": 0, ~/~/ Тип объекта геозоны 5563 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5564 + "fname": "string", ~/~/ Имя файла 5565 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5566 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5567 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5568 + "description": "string", ~/~/ Описание объекта геозоны 5569 + "area": 0, ~/~/ Площадь, м2 5570 + "perimetr": 0, ~/~/ Периметр, м 5571 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5572 +} 5573 +))) 5574 +))) 5575 +))) 5576 +))) 5577 +))) 5578 + 5579 + 5580 +== **Редактирование года урожая ** == 5581 + 5582 +(% class="box successmessage" %) 5583 +((( 5584 +**POST /api/v3/agroLands/updateOpenCloseYear** 5585 +))) 5586 + 5587 +Пример запроса: 5588 + 5589 +((( 5590 +((( 5591 +{ 5592 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5593 + 0 5594 + ], 5595 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5596 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5597 +} 5598 +))) 5599 + 5600 + 5601 +))) 5602 + 5603 +Пример ответа: 5604 + 5605 +((( 5606 +((( 5607 +{ 5608 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5609 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5610 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5611 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5612 + "cropRotations": [ ~/~/ Данные по севообороту 5613 + { 5614 + "landId": 0, ~/~/ ID поля 5615 + "landName": "string", ~/~/ Название поля 5616 + "year": 0, ~/~/ Год урожая 5617 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5618 + "cultureName": "string", ~/~/ Название культуры 5619 + "productivity": 0, ~/~/ Урожайность 5620 + "area": 0, ~/~/ Площадь поля, Га. 5621 + "total": 0, ~/~/ Валовый сбор 5622 + "productivityFact": 0, ~/~/ Фактическая урожайность 5623 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5624 + "totalFact": 0, ~/~/ Фактический валовый сбор 5625 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5626 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5627 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5628 + "isyearplan": true, ~/~/ 5629 + "comment": "string" ~/~/ Комментарий 5630 + } 5631 + ], 5632 + "cropVegetation": [ ~/~/ История вегетации поля 5633 + { 5634 + "values": [ ~/~/ Данные вегетации и состояния посева 5635 + { 5636 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5637 + "ndvi": 0 ~/~/ Индекс вегетации 5638 + } 5639 + ], 5640 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5641 + { 5642 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5643 + "type": "string", ~/~/ Тип 5644 + "pictureid": "string" ~/~/ Идентификатор ресурса 5645 + } 5646 + ], 5647 + "states": [ ~/~/ Ключевые даты развития поля 5648 + { 5649 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5650 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5651 + } 5652 + ] 5653 + } 5654 + ], 5655 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5656 + "counts": { 5657 + "fieldOperations": 0, ~/~/ Количество операций на поле 5658 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5659 + "facts": 0 ~/~/ Счётчик факта 5660 + }, 5661 + "planComment": "string", ~/~/ Комментарий к полю 5662 + "productivity": 0, ~/~/ Урожайность. 5663 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5664 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5665 + "year": 0, ~/~/ Год поля 5666 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5667 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5668 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5669 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5670 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5671 + "id": 0, ~/~/ Идентификатор объекта геозоны 5672 + "name": "string", ~/~/ Название объекта геозоны 5673 + "type": 0, ~/~/ Тип объекта геозоны 5674 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5675 + "fname": "string", ~/~/ Имя файла 5676 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5677 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5678 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5679 + "description": "string", ~/~/ Описание объекта геозоны 5680 + "area": 0, ~/~/ Площадь, м2 5681 + "perimetr": 0, ~/~/ ериметр, м 5682 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5683 +} 5684 + 5685 + 5686 +== **Какие поля посещал объект** == 5687 + 5688 +(% class="box successmessage" %) 5689 +((( 5690 +**POST /api/v3/agroLands/visitingByVehicle** 5691 +))) 5692 + 5693 +Пример запроса: 5694 + 5695 +{ 5696 + "vehicleId": 0, ~/~/ id объекта 5697 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 5698 + "byTime": 0, ~/~/ Объединение событий по времени 5699 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 5700 + "byDist": 0, ~/~/ Объединение событий по расстоянию 5701 + "from": "2025-07-29T12:20:28.815Z", ~/~/ Начало периода (локальное время клиента) 5702 + "to": "2025-07-29T12:20:28.815Z", ~/~/ Конец периода (локальное время клиента) 5703 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 5704 +} 5705 + 5706 +Пример ответа: 5707 + 5708 +[ 5709 + { 5710 + "fieldId": 0, ~/~/ id объекта 5711 + "vehicleName": "string", ~/~/ Наименование объекта 5712 + "fieldName": "string", ~/~/ Наименование поля 5713 + "fuelUsage": 0, ~/~/ Расход топлива, л/га 5714 + "area": 0, ~/~/ Пройдено, га (информация из встроенного агрегата в модели объекта при наличии агрегата) 5715 + "vehicleId": 0, ~/~/ Идентификатор ТС 5716 + "start": "2025-07-29T12:20:28.855Z", ~/~/ Начало посещения 5717 + "end": "2025-07-29T12:20:28.855Z", ~/~/ Конец посещения 5718 + "durationSeconds": 0, ~/~/ Продолжительность посещения внутри поля 5719 + "mileage": 0 ~/~/ Пробег 5720 + } 5721 +] 5722 +))) 5723 + 5724 + 5725 +== **Посещение поля объектами ** == 5726 + 5727 +(% class="box successmessage" %) 5728 +((( 5729 +**POST /api/v3/agroLands/visitingByField** 5730 +))) 5731 + 5732 +Пример запроса: 5733 +{ 5734 + "fieldId": 0, ~/~/ ID поля 5735 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 5736 + "byTime": 0, ~/~/ Объединение событий по времени 5737 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 5738 + "byDist": 0, ~/~/ Объединение событий по расстоянию 5739 + "from": "2025-07-29T11:44:28.218Z", ~/~/ Начало периода (локальное время клиента) 5740 + "to": "2025-07-29T11:44:28.218Z", ~/~/ Конец периода (локальное время клиента) 5741 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 5742 +} 5743 + 5744 +Пример ответа: 5745 + 5746 +[ 5747 + { 5748 + "fieldId": 0, ~/~/ ID поля 5749 + "vehicleName": "string", ~/~/ Наименование объекта 5750 + "fieldName": "string", ~/~/ Имя поля 5751 + "fuelUsage": 0, ~/~/ Расход топлива, л/га 5752 + "area": 0, ~/~/ Пройдено, га (информация из встроенного агрегата в модели объекта при наличии агрегата) 5753 + "vehicleId": 0, ~/~/ Идентификатор ТС 5754 + "start": "2025-07-29T11:44:28.219Z", ~/~/ Начало посещения 5755 + "end": "2025-07-29T11:44:28.219Z", ~/~/ Конец посещения 5756 + "durationSeconds": 0, ~/~/ Продолжительность посещения внутри поля 5757 + "mileage": 0 ~/~/ Пробег 5758 + } 5759 +] 5760 + 5761 + 5762 +== **Удаление существующего поля** == 5763 + 5764 +(% class="box errormessage" %) 5765 +((( 5766 +**DELETE /api/v3/agroLands/{id}** 5767 +))) 5768 + 5769 +Пример запроса: 5770 +id ~/~/ Идентификатор поля 5771 + 5772 +Пример ответа: 5773 + 5774 +((( 5775 +200 ~/~/ Успех 5776 + 5777 + 5778 +))) 5779 + 5780 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5781 +))) 5782 +))) 5783 +))) 5784 + 5785 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 5786 + 5787 + 5788 +(% class="box infomessage" %) 5789 +((( 5790 +**GET api/v3/Vehicles/recyclebin/all** 5791 +))) 5792 + 5793 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 5794 + 5795 +Параметр запроса: {parentId} - идентификатор агента 5796 + 5797 +В заголовках запроса: X-Auth: Токен авторизации 5798 + 5799 +Ответ: 5800 + 5801 +[ 5802 + { 5803 + "recordTime": "", ~/~/Время записи 5804 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5805 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5806 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5807 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5808 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5809 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5810 + "items": [ ~/~/ 5811 +nullable: true ~/~/Детали 5812 + { 5813 + "name": "string", ~/~/наименование столбца 5814 + "value": "string" ~/~/содержание столбца 5815 + } 5816 + ] 5817 + }, 5818 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5819 + "string" 5820 + ] 5821 + } 5822 +] 5823 + 5824 + 5825 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) == 5826 + 5827 +(% class="box infomessage" %) 5828 +((( 5829 +**POST api/v3/Vehicles/recyclebin/erase** 5830 +))) 5831 + 5832 +В заголовках запроса: X-Auth: Токен авторизации 5833 + 5834 +Пример запроса: 5835 + 5836 +[ 5837 +0 5838 +] 5839 + 5840 + 5841 +Пример ответа: 5842 + 5843 +[ 5844 +{ 5845 + "recordTime": "", ~/~/Время записи 5846 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5847 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5848 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5849 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5850 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5851 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5852 + "items": [ ~/~/Детали 5853 + { 5854 + "name": "", ~/~/Имя свойства 5855 + "value": "" ~/~/Значение свойства 5856 + } 5857 + ] 5858 + }, 5859 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5860 + "" 5861 + ] 5862 + } 5863 +] 5864 + 5865 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 5866 + 5867 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 5868 + 5869 +(% class="box infomessage" %) 5870 +((( 5871 +**POST api/v3/Vehicles/recyclebin/restore** 5872 +))) 5873 + 5874 +В заголовках запроса: X-Auth: Токен авторизации 5875 + 5876 +Параметры в теле запроса (JSON): 5877 + 5878 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5879 + 5880 +В заголовках запроса: X-Auth: Токен авторизации 5881 + 5882 + 5883 +Пример запроса: 5884 + 5885 +((( 5886 +[ 5887 +))) 5888 + 5889 +((( 5890 + 0 5891 +))) 5892 + 5893 +((( 5894 +] 5895 +))) 5896 + 5897 + 5898 +Пример ответа: 5899 + 5900 +[ 5901 +{ 5902 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5903 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5904 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5905 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5906 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5907 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5908 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5909 + "items": [ ~/~/Детали 5910 + { 5911 + "name": "string", ~/~/Имя свойства 5912 + "value": "string" ~/~/Значение свойства 5913 + } 5914 + ] 5915 + }, 5916 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5917 + "string" 5918 + ] 5919 + } 5920 +] 5921 + 5922 + 5923 += **Раздел: Журнал заданий ** = 5924 + 5925 + 5926 +== **Создание задания в Журнале заданий** == 5927 + 5928 +(% class="box infomessage" %) 5929 +((( 5930 +**POST /api/v3/vehicletasks** 5931 +))) 5932 + 5933 +Пример запроса: 5934 + 5935 +((( 5936 +{ 5937 + "vehicleId": 0, ~/~/ Идентификатор ТС 5938 + "description": "string", ~/~/ Описание 5939 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5940 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5941 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы 5942 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы 5943 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5944 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5945 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5946 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5947 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5948 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5949 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5950 + "cost": { 5951 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5952 + "Name": "string", ~/~/ Наименование 5953 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection ) 5954 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5955 + "Norm": 0 ~/~/ Норма внесения 5956 + }, 5957 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 5958 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5959 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания 5960 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления 5961 + "deleted": true, ~/~/ Признак удаления 5962 + "extId": "string", 5963 + "GeoIds": [ ~/~/ Cвязанные поля 5964 + 0 5965 + ] 5966 +} 5967 +))) 5968 + 5969 + 5970 +Пример ответа: 5971 + 5972 +{ 5973 + "vehicleId": 0, ~/~/ Идентификатор ТС 5974 + "description": "string", ~/~/ Описание 5975 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5976 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5977 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5978 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5979 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5980 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5981 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5982 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5983 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5984 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5985 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5986 + "cost": { 5987 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5988 + "Name": "string", ~/~/ Наименование 5989 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5990 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5991 + "Norm": 0 ~/~/ Норма внесения 5992 + }, 5993 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5994 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5995 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5996 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5997 + "deleted": true, ~/~/ Признак удаления 5998 + "extId": "string", ~/~/ ExtId 5999 + "GeoIds": [ ~/~/ Связанные поля 6000 + 0 6001 + ] 6002 +} 6003 + 6004 + 6005 +== **Редактирование задания в Журнале заданий** == 6006 + 6007 +(% class="box successmessage" %) 6008 +((( 6009 +**PUT /api/v3/vehicletasks** 6010 +))) 6011 + 6012 +Пример запроса: 6013 + 6014 +((( 6015 +{ 6016 + "vehicleId": 0, ~/~/ Идентификатор ТС 6017 + "description": "string", ~/~/ Описание 6018 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 6019 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 6020 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы 6021 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы 6022 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 6023 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 6024 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 6025 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 6026 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 6027 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 6028 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 6029 + "cost": { 6030 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 6031 + "Name": "string", ~/~/ Наименование 6032 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 6033 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 6034 + "Norm": 0 ~/~/ Норма внесения 6035 + }, 6036 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6037 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 6038 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания 6039 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления 6040 + "deleted": true, ~/~/ Признак удаления 6041 + "extId": "string", ~/~/ ExtId 6042 + "GeoIds": [ ~/~/ Связанные поля 6043 + 0 6044 + ] 6045 +} 6046 +))) 6047 + 6048 + 6049 +Пример ответа: 6050 + 6051 +{ 6052 + "vehicleId": 0, ~/~/ Идентификатор ТС 6053 + "description": "string", ~/~/ Описание 6054 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 6055 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 6056 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 6057 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 6058 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 6059 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 6060 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 6061 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 6062 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 6063 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 6064 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 6065 + "cost": { 6066 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 6067 + "Name": "string", ~/~/ Наименование 6068 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 6069 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 6070 + "Norm": 0 ~/~/ Норма внесения 6071 + }, 6072 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6073 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 6074 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 6075 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 6076 + "deleted": true, ~/~/ Признак удаления 6077 + "extId": "string", ~/~/ ExtId 6078 + "GeoIds": [ ~/~/ Связанные поля 6079 + 0 6080 + ] 6081 +} 6082 + 6083 + 6084 +== **Удаление задания в Журнале заданий** == 6085 + 6086 +(% class="box warningmessage" %) 6087 +((( 6088 +**DELETE /api/v3/vehicletasks** 6089 +))) 6090 + 6091 +Пример запроса: 6092 + 6093 +((( 6094 +[ 6095 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 6096 +] 6097 +))) 6098 + 6099 +((( 6100 + 6101 +))) 6102 + 6103 +Пример ответа: 6104 + 6105 +{ 6106 + "vehicleId": 0, ~/~/ Идентификатор ТС 6107 + "description": "string", ~/~/ Описание 6108 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 6109 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 6110 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 6111 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 6112 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 6113 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 6114 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 6115 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 6116 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 6117 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 6118 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 6119 + "cost": { 6120 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 6121 + "Name": "string", ~/~/ Наименование 6122 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 6123 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 6124 + "Norm": 0 ~/~/ Норма внесения 6125 + }, 6126 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6127 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 6128 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 6129 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 6130 + "deleted": true, ~/~/ Признак удаления 6131 + "extId": "string", ~/~/ ExtId 6132 + "GeoIds": [ ~/~/ Связанные поля 6133 + 0 6134 + ] 6135 +} 6136 + 6137 + 6138 +== **Получение списка Журнала заданий** == 6139 + 6140 +(% class="box infomessage" %) 6141 +((( 6142 +**POST /api/v3/vehicletasks/getbyperiod** 6143 +))) 6144 + 6145 +Пример запроса: 6146 + 6147 +((( 6148 +{ 6149 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода. 6150 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода. 6151 + "TimeZone": 0, ~/~/ Часовой пояс. 6152 + "OperationsIds": [ ~/~/ Идентификаторы видов работ для фильтрации журнала 6153 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 6154 + ], 6155 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала 6156 + 0 6157 + ], 6158 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала 6159 + 0 6160 + ], 6161 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска. 6162 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 6163 +} 6164 +))) 6165 + 6166 + 6167 +Пример ответа: 6168 + 6169 +((( 6170 +{ 6171 + "total": 0, ~/~/ Общее количество записей 6172 + "pages": 0, ~/~/ Общее количество страниц 6173 + "currentPage": 0, ~/~/ Текущая страница 6174 + "items": [ ~/~/ Записи 6175 + { 6176 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 6177 + "isGroup": true, ~/~/ Вид задания (true - групповое, иначе - одиночное). 6178 + "name": "string", ~/~/ Название задания. 6179 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc 6180 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc 6181 + "workKind": "string", ~/~/ Вид работ 6182 + "techOp": "string", ~/~/ Тех. операция 6183 + "trailerModel": "string", ~/~/ Модель агрегата 6184 + "width": "string", ~/~/ Ширина, м 6185 + "speed": "string", ~/~/ Тех. скорость 6186 + "fields": "string", ~/~/ Поля 6187 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га) 6188 + "vehicles": "string", ~/~/ Объект-модель 6189 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов) 6190 + "drivers": "string", ~/~/ Водители 6191 + "tmc": "string", ~/~/ ТМЦ 6192 + "client": "string", ~/~/ Клиент 6193 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 6194 + "dep": "string", ~/~/ Подразделение 6195 + "geoIds": [ ~/~/ Связанные поля 6196 + 0 6197 + ] 6198 + } 6199 + ] 6200 +} 6201 +))) 6202 + 6203 + 6204 += **Раздел: Роли** = 6205 + 6206 +== **Получение списка клиентских и системных ролей пользователя ** == 6207 + 6208 +(% class="box successmessage" %) 6209 +((( 6210 +**POST /api/v3/groups/find** 6211 +))) 6212 + 6213 +Пример запроса: 6214 + 6215 +((( 6216 +{ 6217 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента содержащий пользовательские роли 6218 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей 6219 +} 6220 +))) 6221 + 6222 +((( 6223 + 6224 +))) 6225 + 6226 +((( 6227 +Пример ответа: 6228 +))) 6229 + 6230 +((( 6231 +((( 6232 +{ 6233 + "groups": [ ~/~/ Системные роли пользователя 6234 + { 6235 + "code": "string", ~/~/ Код роли. 6236 + "name": "string", ~/~/ Имя 6237 + "shortName": "string" ~/~/ Короткое имя 6238 + } 6239 + ], 6240 + "customGroups": [ ~/~/ Системные роли пользователя 6241 + { 6242 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор роли. 6243 + "name": "string", ~/~/ Наименование 6244 + "shortName": "string", ~/~/ Короткое наименование 6245 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор владельца 6246 + } 6247 + ] 6248 +} 6249 +))) 6250 +))) 6251 + 6252 +((( 6253 + 6254 +))) 6255 + 6256 +((( 6257 + 6258 +))) 6259 + 6260 += **Раздел: Локатор ** = 6261 + 6262 + 6263 +== **Получение данных по локатору** == 6264 + 6265 +(% class="box infomessage" %) 6266 +((( 6267 +**GET /api/v3/locators/{locatorId}** 6268 +))) 6269 + 6270 +В запросе указывается locatorid - идентификатор локатора 6271 + 6272 + 6273 +Пример ответа: 6274 + 6275 +((( 6276 +((( 6277 +{ 6278 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6279 + 0 6280 + ], 6281 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6282 + 0 6283 + ], 6284 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6285 + 0 6286 + ], 6287 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 6288 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 6289 + "agentName": "string", ~/~/ Наименование агента. 6290 + "isEnabled": true, ~/~/ Активность 6291 + "created": "2025-05-26T11:31:05.399Z", ~/~/ Дата создания 6292 + "updated": "2025-05-26T11:31:05.399Z", ~/~/ Дата обновления 6293 + "name": "string", ~/~/ Наименование. 6294 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 6295 + "activationMode": 0, ~/~/ Определяет вид активации локаторов ( 0 - сейчас, 1 - запланировать на время) 6296 + "activationTime": "2025-05-26T11:31:05.399Z", ~/~/ Время активации 6297 + "validity": 0, ~/~/ Значение срока действия 6298 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 6299 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6300 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 6301 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 6302 + "url": "string", ~/~/ Ссылка 6303 + "language": 0, ~/~/ ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6304 + 6305 + "showVehicleName": true, ~/~/ Наименование объекта 6306 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6307 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6308 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6309 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6310 + "availableMapLayers": [ ~/~/Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 6311 + 6312 + 1 6313 + 6314 + ] 6315 +} 6316 +))) 6317 +))) 6318 + 6319 + 6320 +((( 6321 +((( 6322 + 6323 +))) 6324 +))) 6325 + 6326 + 6327 +== **Создание локатора** == 6328 + 6329 +(% class="box successmessage" %) 6330 +((( 6331 +**POST /api/v3/locators** 6332 +))) 6333 + 6334 +Пример запроса: 6335 + 6336 +((( 6337 +{ 6338 + "isEnabled": true, ~/~/ Активность 6339 + "name": "string", ~/~/ Наименование локатора 6340 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 6341 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 6342 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6343 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6344 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6345 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 6346 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6347 + 0 6348 + ], 6349 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6350 + 0 6351 + ], 6352 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6353 + 0 6354 + ], 6355 + 6356 + "showVehicleName": true, ~/~/ Наименование объекта 6357 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6358 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6359 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6360 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6361 + "availableMapLayers": [ ~/~/Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 6362 + 6363 + 1 6364 + 6365 + ] 6366 +} 6367 +))) 6368 + 6369 + 6370 +Пример ответа: 6371 + 6372 +((( 6373 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора 6374 +))) 6375 + 6376 + 6377 +== **Выводит список локаторов ** == 6378 + 6379 +(% class="box successmessage" %) 6380 +((( 6381 +**POST /api/v3/locators/find** 6382 +))) 6383 + 6384 +Пример запроса: 6385 + 6386 +((( 6387 +{ 6388 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор клиента 6389 +} 6390 +))) 6391 + 6392 +((( 6393 + 6394 +))) 6395 + 6396 +((( 6397 + 6398 +))) 6399 + 6400 + 6401 +Пример ответа: 6402 + 6403 +((( 6404 +[ 6405 + { 6406 + "vehiclesCount": 0, ~/~/ Количество объектов. 6407 + "geozonesCount": 0, ~/~/ Количество геозон. 6408 + "fieldsCount": 0, ~/~/ Количество полей. 6409 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 6410 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 6411 + "agentName": "string", ~/~/ Наименование агента. 6412 + "isEnabled": true, ~/~/ Активность локатора 6413 + "created": "2025-07-03T12:57:58.738Z", ~/~/ Дата создания 6414 + "updated": "2025-07-03T12:57:58.738Z", ~/~/ Дата обновления 6415 + "name": "string", ~/~/ Наименование локатора 6416 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 6417 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6418 + "activationTime": "2025-07-03T12:57:58.738Z", ~/~/ Дата и время активации правила (UTC) 6419 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6420 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 6421 + "autoProlongation": true, ~/~/ Автоматическая пролонгация 6422 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 6423 + "creatorUserName": "string", ~/~/ Наименование пользователя создавшего локатора 6424 + "url": "string", ~/~/ ссылка на локатор 6425 + "language": 1, ~/~/ Язык локатора(1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6426 + "showVehicleName": true, ~/~/ Наименование объекта 6427 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6428 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6429 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6430 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6431 + "availableMapLayers": [ ~/~/Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 6432 + 6433 + 0 6434 + ] 6435 + } 6436 +] 6437 +))) 6438 + 6439 + 6440 +== **Изменение локатора** == 6441 + 6442 +(% class="box infomessage" %) 6443 +((( 6444 +**PUT /api/v3/locators** 6445 +))) 6446 + 6447 +Пример запроса: 6448 + 6449 +((( 6450 +{ 6451 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6452 + "isEnabled": true, ~/~/ Активность 6453 + "name": "string", ~/~/ Наименование 6454 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6455 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 6456 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6457 + "autoProlongation": true, ~/~/ Автопродление срока действия 6458 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6459 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6460 + 0 6461 + ], 6462 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6463 + 0 6464 + ], 6465 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6466 + 0 6467 + ], 6468 + "showVehicleName": true, ~/~/ Наименование объекта 6469 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6470 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6471 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6472 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6473 + "availableMapLayers": [ ~/~/Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 6474 + 6475 + 0 6476 + 6477 + ] 6478 +} 6479 + 6480 + 6481 +))) 6482 + 6483 +Пример ответа: 6484 + 6485 +200 ~/~/ Success 6486 + 6487 + 6488 +== **Удалить локатор** == 6489 + 6490 +(% class="box warningmessage" %) 6491 +((( 6492 +**DELETE /api/v3/locators** 6493 +))) 6494 + 6495 +Пример запроса: 6496 + 6497 +((( 6498 +[ 6499 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора 6500 +] 6501 +))) 6502 + 6503 + 6504 += **Раздел: Яндекс Маршруты** = 6505 + 6506 + 6507 +== **Возвращение списка маршрутов** == 6508 + 6509 +(% class="box infomessage" %) 6510 +((( 6511 +**GET /api/v3/TransportRoutes** 6512 +))) 6513 + 6514 +Пример запроса: 6515 +Id ~/~/ Идентификатор поля 6516 + 6517 +Пример ответа: 6518 + 6519 +((( 6520 +[ 6521 + { 6522 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 6523 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6524 + "name": "string", ~/~/ Наименование маршрута. 6525 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6526 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6527 + 0 6528 + ] 6529 + } 6530 +] 6531 +))) 6532 + 6533 + 6534 +== **Добавить маршрут** == 6535 + 6536 +(% class="box infomessage" %) 6537 +((( 6538 +**POST /api/v3/TransportRoutes** 6539 +))) 6540 + 6541 +Пример запроса: 6542 +{ 6543 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6544 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6545 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6546 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6547 + 0 6548 + ] 6549 +} 6550 + 6551 + 6552 +Пример ответа: 6553 + 6554 +((( 6555 +{ 6556 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6557 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6558 + "name": "string", ~/~/ Определяет наименование маршрута 6559 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6560 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6561 + 0 6562 + ] 6563 +} 6564 +))) 6565 + 6566 + 6567 +== **Обновление маршрута** == 6568 + 6569 +(% class="box successmessage" %) 6570 +((( 6571 +**PUT /api/v3/TransportRoutes** 6572 +))) 6573 + 6574 +Пример запроса: 6575 + 6576 +((( 6577 +{ 6578 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6579 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6580 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6581 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6582 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6583 + 0 6584 + ] 6585 +} 6586 +))) 6587 + 6588 +Пример ответа: 6589 + 6590 +((( 6591 +{ 6592 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6593 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6594 + "name": "string", ~/~/ Определяет наименование маршрута 6595 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6596 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6597 + 0 6598 + ] 6599 +} 6600 +))) 6601 + 6602 + 6603 +== **Получить связки маршрутов ТС** == 6604 + 6605 +(% class="box infomessage" %) 6606 +((( 6607 +**POST /api/v3/TransportRoutes/getroutesvehicles** 6608 +))) 6609 + 6610 +Пример запроса: 6611 + 6612 +((( 6613 +[ 6614 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ идентификатор маршрута 6615 +] 6616 +))) 6617 + 6618 +Пример ответа: 6619 + 6620 +((( 6621 +[ 6622 + { 6623 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС 6624 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута 6625 + } 6626 +] 6627 +))) 6628 + 6629 + 6630 +== **Удалить маршрут** == 6631 + 6632 +(% class="box warningmessage" %) 6633 +((( 6634 +**DELETE /api/v3/TransportRoutes/{id}** 6635 +))) 6636 + 6637 +Пример запроса: 6638 +Id ~/~/ Идентификатор поля 6639 + 6640 + 6641 += **Раздел: Управление доступа к машинам** = 6642 + 6643 + 6644 +== Получение списка транспортных средств видимых пользователю == 6645 + 6646 +(% class="box infomessage" %) 6647 +((( 6648 +**GET /api/v3/UserVisibleVehicles/{userId}** 6649 +))) 6650 + 6651 +Пример ответа: 6652 + 6653 +((( 6654 +{ 6655 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6656 + 0 6657 + ] 6658 +} 6659 +))) 6660 + 6661 + 6662 +== Задает видимость транспортных средств пользователю == 6663 + 6664 +(% class="box infomessage" %) 6665 +((( 6666 +**POST /api/v3/UserVisibleVehicles** 6667 +))) 6668 + 6669 +Пример запроса: 6670 + 6671 +((( 6672 +((( 6673 +{ 6674 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя 6675 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6676 + 0 6677 + ] 6678 +} 6679 +))) 6680 + 6681 +((( 6682 + 6683 +))) 6684 + 6685 +((( 6686 +Пример ответа : 6687 +))) 6688 + 6689 +((( 6690 + 6691 +))) 6692 + 6693 +((( 6694 +200 ~/~/ Success 6695 +))) 6696 +))) 6697 + 6698 + 3700 3700 (% class="box" lang="en-US" style="text-align: center;" %) 3701 3701 ((( 3702 3702 (% 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]] **