Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/09/16 11:13
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" %) ... ... @@ -420,9 +420,8 @@ 420 420 [ 421 421 "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ группы пользователя, перечисление названия клиентских ролей 422 422 ], 423 - "language": 0~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский435 + "language": 1 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 424 424 } 425 - 426 426 { 427 427 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 428 428 "lastName": "string", ... ... @@ -436,12 +436,8 @@ 436 436 437 437 (% style="text-align:left" %) 438 438 (% style="color:#000000; font-weight:normal" %)Ответ: 439 - 440 -(% style="text-align:left" %) 441 -(% style="color:#000000; font-weight:normal" %){ 442 - 443 -(% style="text-align:left" %) 444 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 450 +{ 451 + "id": "" , ~/~/ ID пользователя 445 445 "lastName": "" , ~/~/ Фамилия , 446 446 "firstName": "" , ~/~/ Имя 447 447 "position": "" , ~/~/ Должность ... ... @@ -458,11 +458,9 @@ 458 458 "kind": "" , ~/~/ тип аутентификации 459 459 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 460 460 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 468 +} 461 461 462 -(% style="text-align:left" %) 463 -(% style="color:#000000; font-weight:normal" %)} 464 464 465 - 466 466 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 467 467 468 468 (% class="box infomessage" %) ... ... @@ -482,19 +482,16 @@ 482 482 483 483 (% style="color:#000000" %)Параметры в теле запроса (JSON): 484 484 485 -(% style="color:#000000" %){ 486 - 490 +(% style="color:#000000" %){(%%) 487 487 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 488 488 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 489 489 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 490 490 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 491 - 492 492 (% style="color:#000000" %)} 493 493 494 494 (% style="color:#000000" %)Ответ: 495 495 496 496 (% style="color:#000000" %){ (%%) 497 - 498 498 "id": "" , ~/~/ идентификатор пользователя 499 499 "lastName": "" , ~/~/ фамилия 500 500 "firstName": "" , ~/~/ имя ... ... @@ -508,7 +508,6 @@ 508 508 "sessionDuration":"", ~/~/ длительность сессии в минутах 509 509 "status": "1", ~/~/ статус пользователя 510 510 "lastLogged": "", ~/~/ дата/время последней авторизации 511 - 512 512 (% style="color:#000000" %)} 513 513 514 514 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -582,10 +582,8 @@ 582 582 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 583 583 584 584 (% lang="en-US" style="text-align:left" %) 585 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 586 - 587 -(% lang="en-US" style="text-align:left" %) 588 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 586 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 587 + "id": "" , ~/~/ ID пользователя 589 589 "lastName": "" , ~/~/ фамилия 590 590 "firstName": "" , ~/~/ имя 591 591 "position": "" , ~/~/ должность ... ... @@ -607,9 +607,7 @@ 607 607 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 608 608 }, 609 609 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 610 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 611 - 612 -(% lang="en-US" style="text-align:left" %) 609 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 613 613 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 614 614 615 615 (% lang="en-US" style="text-align:left" %) ... ... @@ -616,10 +616,8 @@ 616 616 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 617 617 618 618 (% lang="en-US" style="text-align:left" %) 619 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 620 - 621 -(% lang="en-US" style="text-align:left" %) 622 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 616 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 617 + "id": "" , ~/~/ идентификатор пользователя 623 623 "lastName": "" , ~/~/ фамилия 624 624 "firstName": "" , ~/~/ имя 625 625 "position": "" , ~/~/ должность ... ... @@ -640,10 +640,8 @@ 640 640 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 641 641 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 642 642 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 638 +} 643 643 644 -(% lang="en-US" style="text-align:left" %) 645 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 646 - 647 647 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 648 648 649 649 (% class="box warningmessage" %) ... ... @@ -663,12 +663,10 @@ 663 663 664 664 (% style="color:#000000" %)Параметры в теле запроса (JSON): 665 665 666 -(% style="color:#000000" %){ 667 - 659 +(% style="color:#000000" %){(%%) 668 668 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 669 669 "description": "" , ~/~/ описание 670 670 "data": "" , ~/~/ данные, связанные со сменой статуса 671 - 672 672 (% style="color:#000000" %)} 673 673 674 674 (% style="text-align:left" %) ... ... @@ -690,7 +690,7 @@ 690 690 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 691 691 692 692 [ 693 - 684 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 694 694 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 695 695 ] 696 696 ... ... @@ -753,6 +753,11 @@ 753 753 (% style="text-align:left" %) 754 754 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».** 755 755 747 +(% class="wikigeneratedid" id="H" %) 748 +((( 749 + 750 +))) 751 + 756 756 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Модель объекта**(%%) = 757 757 758 758 == (% style="color:#000000; font-size:16px" %)**Получение информации о модели объекта**(%%) == ... ... @@ -864,7 +864,7 @@ 864 864 { 865 865 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 866 866 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 867 - "deleted": true,863 + "deleted": false, 868 868 "extId": "string", 869 869 "name": "string", 870 870 "picture": "string", ... ... @@ -883,7 +883,7 @@ 883 883 { 884 884 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 885 885 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 886 - "deleted": true,882 + "deleted": false, 887 887 "extId": "string", 888 888 "name": "string", 889 889 "picture": "string", ... ... @@ -917,7 +917,7 @@ 917 917 (% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models** 918 918 ))) 919 919 920 -(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе.916 +(% style="color:#000000" %)Метод позволяет изменить статус модели, указанного в запросе. 921 921 922 922 (% style="color:#000000" %)Метод запроса: **PUT** 923 923 ... ... @@ -984,7 +984,7 @@ 984 984 (% lang="en-US" %)**DELETE /api/v3/models/{Id}** 985 985 ))) 986 986 987 -(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалитьпользователя, указанного в строке запроса.983 +(% style="color:#000000" %)Метод позволяет удалить модели. Метод позволяет удалить модель, указанного в строке запроса. 988 988 989 989 (% style="color:#000000" %)Метод запроса: **DELETE** 990 990 ... ... @@ -996,7 +996,7 @@ 996 996 997 997 Ответ: В случае успеха **Success 200** 998 998 999 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 995 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 1000 1000 1001 1001 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 1002 1002 ... ... @@ -1025,6 +1025,17 @@ 1025 1025 1026 1026 ((( 1027 1027 { 1024 + 1025 +((( 1026 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1027 + "IsSackEnabled": true, ~/~/ Определяет, должен ли внутренний сервер отвечать устройству сообщением SACK при получении сообщения от устройства 1028 +))) 1029 + 1030 +((( 1031 + ~/~/Используется только на ТС с типом устройства quecklink gv56, quecklink gv58, quecklink 1032 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1033 +))) 1034 + 1028 1028 "vehicleId": "", ~/~/ ID объекта 1029 1029 "name": "", ~/~/ Имя объекта 1030 1030 "imei": "", ~/~/ IMEI объекта ... ... @@ -1032,19 +1032,15 @@ 1032 1032 "deviceTypeName": "", ~/~/ Название типа устройства 1033 1033 "sim1": "", ~/~/ Номер SIM1 1034 1034 "sim2": "", ~/~/ Номер SIM2 1035 - 1036 1036 "parentId": "", ~/~/ ID клиента-родителя 1037 1037 "parentName": "", ~/~/ Наименование клиента-родителя 1038 1038 "modelId": "", ~/~/ ID модели объекта 1039 1039 "modelName": "", ~/~/ Имя модели объекта 1040 - 1041 1041 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1042 1042 "unitName": "string", ~/~/ Наименование подразделения 1043 1043 "status": 0, ~/~/ Статус объекта 1044 - 1045 1045 "createdAt": "", ~/~/ Дата создания объекта 1046 1046 }, 1047 - 1048 1048 "customFields": [ ~/~/ Произвольные поля 1049 1049 { 1050 1050 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -1067,8 +1067,7 @@ 1067 1067 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1068 1068 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1069 1069 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1070 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1071 - 1073 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1072 1072 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1073 1073 "mileageCoeff": 0, ~/~/ коэффициент пробега 1074 1074 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1098,7 +1098,6 @@ 1098 1098 "retries": 0 ~/~/ Количество попыток 1099 1099 } 1100 1100 ], 1101 - 1102 1102 "sensors": [ ~/~/ Датчики 1103 1103 { 1104 1104 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1125,6 +1125,7 @@ 1125 1125 ], 1126 1126 "showInTooltip": true, ~/~/ Отображать в подсказке 1127 1127 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1129 + "color": "string", ~/~/ Код цвета датчиков 1128 1128 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1129 1129 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1130 1130 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1139,31 +1139,19 @@ 1139 1139 }, 1140 1140 1141 1141 ~/~/ Характерные для произвольного: 1142 - 1143 1143 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1144 - 1145 1145 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1146 - 1147 1147 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1148 - 1149 1149 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1150 - 1151 1151 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1152 - 1153 1153 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1154 - 1155 1155 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1156 - 1157 1157 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1158 - 1159 1159 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1160 - 1161 1161 ~/~/ "ValueOn": "Вкл.", 1162 - 1163 1163 ~/~/ "ValueOff": "Выкл." 1164 1164 "summaryMaxValue": 0 ~/~/ Макс. значение 1165 1165 } 1166 - 1167 1167 "drivers": [ ~/~/ Водители 1168 1168 { 1169 1169 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1172,7 +1172,6 @@ 1172 1172 "isDefault": true ~/~/ По умолчанию 1173 1173 } 1174 1174 ], 1175 - 1176 1176 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1177 1177 { 1178 1178 "id": "", ~/~/ ID задания ... ... @@ -1189,19 +1189,27 @@ 1189 1189 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1190 1190 } 1191 1191 ], 1192 - 1193 - "statusHistory": [ ~/~/ История статусов 1181 +"statusHistory": [ ~/~/ История статусов 1194 1194 { 1195 1195 "status": 0, 1196 1196 "date": "2023-05-22T09:57:39.562Z", 1197 1197 "description": "string", 1198 1198 "additionalInfo": "string" 1199 - } 1200 - ] 1201 1201 1188 +((( 1202 1202 } 1190 + ], 1191 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1192 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1203 1203 ))) 1204 1204 1195 +((( 1196 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1197 +} 1198 + 1199 +))) 1200 +))) 1201 + 1205 1205 (% style="text-align:left" %) 1206 1206 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 1207 1207 ... ... @@ -1208,6 +1208,75 @@ 1208 1208 (% style="text-align:left" %) 1209 1209 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1210 1210 1208 + 1209 +== **Отправить команду на терминал** == 1210 + 1211 +(% class="box successmessage" %) 1212 +((( 1213 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1214 +))) 1215 + 1216 +Команда для отправки на тс. 1217 + 1218 +{ 1219 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId) 1220 +"command": "", ~/~/ Текст отправляемой команды 1221 +"retries": "", ~/~/ Количество попыток отправки на терминал 1222 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 1223 +} 1224 + 1225 +В ответ получаем cmdid 1226 + 1227 + 1228 +== **Получить ответ на отправленную на ТС команду** == 1229 + 1230 +(% class="box infomessage" %) 1231 +((( 1232 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1233 +))) 1234 + 1235 +Идентификатор команды: cmdId 1236 + 1237 +Запрос от терминала на ответ команды 1238 + 1239 +Пример ответ от терминала: 1240 + 1241 +ID= "" ~/~/ идентификатор объекта 1242 +Soft="" ~/~/ версия софта 1243 +GPS=4 ~/~/ тип трекера 1244 +Time=11:05:43 28.06.24 ~/~/ время запроса 1245 +Lat=45.056221 ~/~/ широта 1246 +Lon=39.035938 ~/~/ долгота 1247 +Speed=0.0 ~/~/ скорость 1248 +Course=181.4 ~/~/направление 1249 + 1250 +((( 1251 +== **Список отправленных объекту команд с ответами** == 1252 + 1253 +(% class="box infomessage" %) 1254 +((( 1255 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1256 +))) 1257 + 1258 +Идентификатор ТС: vehicleId 1259 + 1260 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1261 + 1262 +Пример ответа терминала 1263 + 1264 +[ 1265 +{ 1266 +"id": "", ~/~/ идентификатор пользователя 1267 +"commandText": "", ~/~/Текст команды. 1268 +"templateId": "", ~/~/Идентификатор шаблона 1269 +"updated": "", ~/~/ Время отправки 1270 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1271 +"answer": "", ~/~/ Ответ терминала. 1272 +"status": "" ~/~/ Статус отправки 1273 +} 1274 +] 1275 +))) 1276 + 1211 1211 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1212 1212 1213 1213 (% class="box successmessage" %) ... ... @@ -1227,6 +1227,11 @@ 1227 1227 1228 1228 (% style="color:#000000" %){ 1229 1229 1296 + 1297 +((( 1298 + "vehicleId": 0, ~/~/ ID ТС 1299 +))) 1300 + 1230 1230 "parentId": "" , ~/~/ ID клиента 1231 1231 "name": "" , ~/~/ имя ТС 1232 1232 "imei": "" , ~/~/ IMEI ... ... @@ -1247,7 +1247,6 @@ 1247 1247 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1248 1248 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1249 1249 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1250 - 1251 1251 "mileageCalcMethod": 0, 1252 1252 "mileageCoeff": 0, 1253 1253 "locationByCellId": true, ... ... @@ -1280,7 +1280,6 @@ 1280 1280 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1281 1281 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1282 1282 } 1283 - 1284 1284 "drivers": [ ~/~/ Водители 1285 1285 { 1286 1286 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1295,8 +1295,7 @@ 1295 1295 "retries": 0 1296 1296 } 1297 1297 ], 1298 - 1299 - "sensors": [ ~/~/ Датчики 1367 +"sensors": [ ~/~/ Датчики 1300 1300 { 1301 1301 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1302 1302 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1322,6 +1322,7 @@ 1322 1322 ], 1323 1323 "showInTooltip": true, ~/~/ Отображать в подсказке 1324 1324 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1393 + "color": "string", ~/~/ код цвета датчиков 1325 1325 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1326 1326 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1327 1327 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1334,103 +1334,222 @@ 1334 1334 "additionalProp2": "string", 1335 1335 "additionalProp3": "string" 1336 1336 }, 1337 - 1338 1338 ~/~/ Характерные для произвольного: 1339 - 1340 1340 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1341 - 1342 1342 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1343 - 1344 1344 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1345 - 1346 1346 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1347 - 1348 1348 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1349 - 1350 1350 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1351 - 1352 1352 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1353 - 1354 1354 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1355 - 1356 1356 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1357 - 1358 1358 ~/~/ "ValueOn": "Вкл.", 1359 - 1360 1360 ~/~/ "ValueOff": "Выкл." 1361 - "summaryMaxValue": 0 ~/~/ Макс. значение 1418 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1419 + 1420 +((( 1421 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1422 + { 1423 + "from": 0, ~/~/ С какого значения 1424 + "color": "string", ~/~/ Каким цветом 1425 + "text": "string" ~/~/ Текст подписи к этому интервалу 1426 + } 1427 + ] 1362 1362 } 1363 1363 ], 1430 +))) 1431 + 1432 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1433 + 1434 + 1364 1364 "customFields": [ ~/~/ Произвольные поля 1365 1365 { 1366 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1367 - "name": "string", 1368 - "value": "string", 1369 - "forClient": true, 1370 - "forTooltip": true, 1371 - "forReport": true 1372 - } 1373 - ] 1437 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1438 + "name": "string", ~/~/ Наименование произвольного поля 1439 + "value": "string", ~/~/ Значение произвольного поля 1440 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1441 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1442 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1443 + 1444 +((( 1445 + } 1446 + ], 1447 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1448 +))) 1449 + 1450 +((( 1451 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1374 1374 } 1453 +))) 1375 1375 1455 + 1376 1376 (% style="color:#000000" %)Ответ: 1377 1377 1378 -(% style="color:#000000" %){ 1379 1379 1380 - "vehicleId": "", ~/~/ID ТС 1381 - "parentId": "", ~/~/Guid владельца ТС 1382 - "name": "", ~/~/Имя объекта 1383 - "imei": "", ~/~/IMEI 1384 - "deviceTypeId": "", ~/~/ID типа устройства 1385 - "modelId": "", ~/~/ID модели 1386 - "unitId": "", ~/~/ID подразделения 1387 - "sim1": "", ~/~/SIM1 1388 - "sim2": "", ~/~/SIM2 1389 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1390 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1391 - "counters": { ~/~/Счётчики 1392 - "mileageEnabled": true, 1393 - "motohoursEnabled": true, 1394 - "mileage": "", 1395 - "motohours": 345.0 1396 - }, 1397 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1398 - "id": null, 1399 - "enabled": true, ~/~/флаг включения 1400 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1401 - "login": "", ~/~/ имя учетной записи 1402 - "password": "" ~/~/ пароль учетной записи 1403 - }, 1404 - "inspectionTasks": { ~/~/ задания на ТО 1405 - "id": "", ~/~/ ID задачи 1406 - "enabled": false, ~/~/ Признак включения 1407 - "name": "", ~/~/ Имя задания 1408 - "description": "", ~/~/ Описание задания 1409 - "mileageCondition": "", ~/~/ Условие по пробегу 1410 - "lastMileage": "", ~/~/ Пробег (в метрах) 1411 - "motohoursCondition": "", ~/~/ Условие по моточасам 1412 - "lastMotohours": "", ~/~/ Моточасы 1413 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1414 - "kind": "", ~/~/ Вид периодичности по времени 1415 - "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1459 +((( 1460 +((( 1461 +((( 1462 +{ 1463 + "vehicleId": 0, ~/~/ ID ТС 1464 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1465 + "name": "string", ~/~/ Имя объекта 1466 + "imei": "string", ~/~/ IMEI 1467 + "deviceTypeId": 0, ~/~/ ID типа устройства 1468 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1469 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1470 + "sim1": "string", ~/~/ SIM1 1471 + "sim2": "string", ~/~/ SIM2 1472 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1473 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1474 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1475 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1476 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1477 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1478 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1479 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1480 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1481 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1482 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1483 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1484 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1485 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1486 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1487 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1488 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1489 + "counters": { ~/~/ Dto для состояний счётчиков 1490 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1491 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1492 + "mileage": 0, ~/~/ Пробег 1493 + "motohours": 0 ~/~/ Моточасы 1494 + }, 1495 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1496 + "id": "string", ~/~/ CMSV6 Идентификатор 1497 + "enabled": true, ~/~/ Признак включения 1498 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1499 + "login": "string", ~/~/ CMSV6 имя учетной записи 1500 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1501 + }, 1502 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1503 + { 1504 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1505 + "enabled": true, ~/~/ Признак включения 1506 + "name": "string", ~/~/ Имя задания 1507 + "description": "string", ~/~/ Описание задания 1508 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1509 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1510 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1511 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1512 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1513 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1514 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1515 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1416 1416 } 1517 + ], 1518 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1519 + { 1520 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1521 + "inputNumber": 0, ~/~/ № входа. 1522 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1523 + "comment": "string", ~/~/ Комментарий 1524 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1525 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1526 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1527 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1528 + } 1529 + ], 1530 + "commandTemplates": [ ~/~/ Список шаблонов команд 1531 + { 1532 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1533 + "name": "string", ~/~/ Название шаблона команд 1534 + "command": "string", ~/~/ Команда на выполнение 1535 + "retries": 0 ~/~/ Лимит попыток отправки 1536 + } 1537 + ], 1538 + "sensors": [ ~/~/ Список датчиков 1539 + { 1540 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1541 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1542 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 1543 + "name": "string", ~/~/ Имя датчика 1544 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1545 + "inputNumber": 0, ~/~/ Номер входа 1546 + "pseudonym": "string", ~/~/ Псевдоним 1547 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1548 + "isInverted": true, ~/~/ Признак инверсии 1549 + "disabled": true, ~/~/ Датчик не участвует в обработке 1550 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1551 + "gradesTables": [ ~/~/ Тарировка 1552 + { 1553 + "grades": [ ~/~/ Таблицы тарировки 1554 + { 1555 + "input": 0, ~/~/ Вход 1556 + "output": 0 ~/~/ Выход 1557 + } 1558 + ], 1559 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1560 + } 1561 + ], 1562 + "showInTooltip": true, ~/~/ Отображение в подсказке 1563 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1564 + "color": "string", ~/~/ код цвета датчиков 1565 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1566 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1567 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1568 + "expr": "string", ~/~/ Выражение 1569 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1570 + "string" 1571 + ], 1572 + "customParams": { 1573 + "additionalProp1": "string", 1574 + "additionalProp2": "string", 1575 + "additionalProp3": "string" 1576 + }, 1577 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1578 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1579 + { 1580 + "from": 0, ~/~/ С какого значения 1581 + "color": "string", ~/~/ Каким цветом 1582 +))) 1417 1417 1418 -(% style="text-align:left" %) 1419 -(% style="color:#000000" %)} 1584 +((( 1585 + "text": "string" ~/~/ Текст подписи к этому интервалу 1586 + } 1587 + ] 1588 + } 1589 + ], 1590 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1591 + "customFields": [ ~/~/ Список произвольных полей 1592 + { 1593 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1594 + "name": "string", ~/~/ Наименование произвольного поля 1595 + "value": "string", ~/~/ Значение произвольного поля 1596 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1597 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1598 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1599 + } 1600 + ], 1601 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1602 +} 1603 +))) 1604 +))) 1605 +))) 1420 1420 1607 + 1421 1421 **Валидация:** 1422 1422 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1423 1423 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1424 1424 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1425 1425 1426 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 1427 1427 1614 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1615 + 1428 1428 (% class="box infomessage" %) 1429 1429 ((( 1430 1430 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1431 1431 ))) 1432 1432 1433 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1621 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1434 1434 1435 1435 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1436 1436 ... ... @@ -1464,9 +1464,12 @@ 1464 1464 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1465 1465 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1466 1466 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1467 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1468 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1469 - "customFields": null ~/~/ значение любого из произвольных полей ТС 1655 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1656 + "unitName": "string", ~/~/ Название подразделения (опционально) 1657 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1658 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1659 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1660 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1470 1470 } 1471 1471 1472 1472 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1473,8 +1473,14 @@ 1473 1473 1474 1474 (% style="color:#000000" %)Ответ: 1475 1475 1476 -(% style="color:#000000" %){ 1667 +(% style="color:#000000" %)[ 1668 +{ 1477 1477 1670 +((( 1671 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1672 +))) 1673 + 1674 +((( 1478 1478 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1479 1479 "name": "" ~/~/ наименование объекта 1480 1480 "imei": "" ~/~/ IMEI объекта ... ... @@ -1500,9 +1500,21 @@ 1500 1500 "forClient": true, ~/~/ право на отображение у клиента 1501 1501 "forTooltip": false, ~/~/ право на отображение в подсказке 1502 1502 "forReport": false ~/~/ право на отображение в отчетах 1503 - }(%%) 1504 -(% style="color:#000000" %)} 1700 +))) 1505 1505 1702 +((( 1703 + } 1704 + ], 1705 + "vehicleGroups": [ ~/~/ Группы ТС 1706 + { 1707 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1708 + "name": "string" ~/~/ Наименование группы ТС 1709 + } 1710 + ] 1711 + } 1712 +] 1713 +))) 1714 + 1506 1506 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1507 1507 1508 1508 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1534,13 +1534,11 @@ 1534 1534 "data": "", ~/~/ Данные 1535 1535 "overwrite": false, ~/~/ Флаг перезаписи 1536 1536 "stage": "", ~/~/ Состояние, может быть null 1537 - 1538 1538 (% style="color:#000000" %)} 1539 1539 1540 1540 (% style="color:#000000" %)Ответ: 1541 1541 1542 -(% style="color:#000000" %){ 1543 - 1750 +(% style="color:#000000" %){(%%) 1544 1544 "status": "", ~/~/ значение статуса 1545 1545 "date": "", ~/~/ Дата смены статуса 1546 1546 "description": "", ~/~/ Описание ... ... @@ -1547,10 +1547,9 @@ 1547 1547 "data": "", ~/~/ Данные 1548 1548 "overwrite": false, ~/~/ Флаг перезаписи 1549 1549 "stage": "", ~/~/ Состояние 1550 - 1551 -(% style="text-align:left" %) 1552 1552 (% style="color:#000000" %) } 1553 1553 1759 + 1554 1554 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1555 1555 1556 1556 (% class="box warningmessage" %) ... ... @@ -1626,9 +1626,19 @@ 1626 1626 1627 1627 "drivers": [ ~/~/ Водители 1628 1628 { 1629 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1630 - "isDefault": true 1631 - } 1835 + 1836 +((( 1837 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1838 + "inputNumber": 0, ~/~/ № входа. 1839 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения. 1840 + "comment": "string", ~/~/ Комментарий. 1841 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1842 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1843 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения. 1844 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения. 1845 +))) 1846 + 1847 + } 1632 1632 ], 1633 1633 "commandTemplates": [ ~/~/ Шаблон команды 1634 1634 { ... ... @@ -1638,8 +1638,7 @@ 1638 1638 "retries": 0 1639 1639 } 1640 1640 ], 1641 - 1642 - "sensors": [ ~/~/ Датчики 1857 +"sensors": [ ~/~/ Датчики 1643 1643 { 1644 1644 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1645 1645 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1665,6 +1665,11 @@ 1665 1665 ], 1666 1666 "showInTooltip": true, ~/~/ Отображать в подсказке 1667 1667 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1883 + 1884 +((( 1885 + "color": "string",** ~/~/ **Цвет датчика 1886 +))) 1887 + 1668 1668 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1669 1669 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1670 1670 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1677,95 +1677,225 @@ 1677 1677 "additionalProp2": "string", 1678 1678 "additionalProp3": "string" 1679 1679 }, 1680 - 1681 1681 ~/~/ Характерные для произвольного: 1682 - 1683 1683 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1684 - 1685 1685 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1686 - 1687 1687 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1688 - 1689 1689 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1690 - 1691 1691 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1692 - 1693 1693 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1694 - 1695 1695 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1696 - 1697 1697 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1698 - 1699 1699 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1700 - 1701 1701 ~/~/ "ValueOn": "Вкл.", 1702 - 1703 1703 ~/~/ "ValueOff": "Выкл." 1704 1704 "summaryMaxValue": 0 ~/~/ Макс. значение 1913 + 1914 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1915 + { 1916 + "from": 0, ~/~/ С какого значения 1917 + "color": "string", ~/~/ Каким цветом 1918 + "text": "string" ~/~/ Текст подписи к этому интервалу 1919 + } 1920 + ] 1705 1705 } 1706 1706 ], 1923 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1924 + 1707 1707 "customFields": [ ~/~/ Произвольные поля 1708 - { 1709 - 1710 - "name": "string", 1711 - "value": "string", 1712 - "forClient": true, 1713 - "forTooltip": true, 1714 - "forReport": true 1926 + { 1927 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1928 + "name": "string", ~/~/ Наименование произвольного поля 1929 + "value": "string", ~/~/ Значение произвольного поля 1930 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1931 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1932 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1715 1715 } 1716 - ] 1934 + 1935 +((( 1936 + ], 1937 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1938 +))) 1939 + 1717 1717 } 1718 1718 1942 + 1719 1719 (% style="color:#000000" %)Ответ: 1720 1720 1721 -(% lang="en-US" style="text-align:left" %) 1722 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 1945 +((( 1946 +{ 1947 + "vehicleId": 0, ~/~/ ID ТС 1948 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1949 + "name": "string", ~/~/ Имя объекта 1950 + "imei": "string", ~/~/ IMEI 1951 + "deviceTypeId": 0, ~/~/ ID типа устройства 1952 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1953 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1954 + "sim1": "string", ~/~/ SIM1 1955 + "sim2": "string", ~/~/ SIM2 1956 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1957 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1958 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1959 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1960 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1961 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1962 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1963 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1964 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1965 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1966 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1967 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1968 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 1969 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1970 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1971 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1972 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1973 + "counters": { ~/~/ состояний счётчиков 1974 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1975 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1976 + "mileage": 0, ~/~/ Пробег 1977 + "motohours": 0 ~/~/ Моточасы 1978 + }, 1979 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1980 + "id": "string", ~/~/ CMSV6 Идентификатор 1981 + "enabled": true, ~/~/ Признак включения 1982 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 1983 +))) 1723 1723 1724 -(% lang="en-US" style="text-align:left" %) 1725 - "vehicleId": "", ~/~/ ID ТС 1726 - "parentId": "", ~/~/ ID клиента 1727 - "name": "", ~/~/ имя ТС 1728 - "imei": "", ~/~/ IMEI 1729 - "deviceTypeId": "", ~/~/ типа устройства 1730 - "modelId": "", ~/~/ ID модели 1731 - "unitId": "", ~/~/ ID подразделения 1732 - "sim1": "", ~/~/ SIM 1 1733 - "sim2": "", ~/~/ SIM2 1734 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1735 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1736 - "counters": 1737 - { 1738 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1739 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1740 - "mileage": "", ~/~/ пробег 1741 - "motohours": "", ~/~/ моточасы 1742 - } 1743 - "cmsv6Parameters": ~/~/ параметры CMSv6 1985 + 1986 +((( 1987 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1988 + "login": "string", ~/~/ CMSV6 имя учетной записи 1989 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1990 + }, 1991 + "inspectionTasks": [ ~/~/ Задания на ТО 1992 + { 1993 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1994 + "enabled": true, ~/~/ Признак включения 1995 + "name": "string", ~/~/ Имя задания 1996 + "description": "string", ~/~/ Описание задания 1997 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1998 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1999 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 2000 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 2001 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 2002 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 2003 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2004 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2005 + } 2006 + ], 2007 + "drivers": [ ~/~/ Список водителей 2008 + { 2009 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2010 + "inputNumber": 0, ~/~/ № входа. 2011 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2012 + "comment": "string", ~/~/ Комментарий. 2013 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2014 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2015 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2016 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2017 + } 2018 + ], 2019 + "commandTemplates": [ ~/~/ Список шаблонов команд 2020 + { 2021 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2022 + "name": "string", ~/~/ Название шаблона команд 2023 + "command": "string", ~/~/ Команда на выполнение 2024 + "retries": 0 ~/~/ Лимит попыток отправки 2025 + } 2026 + ], 2027 + "sensors": [ ~/~/ Список датчиков 2028 + { 2029 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2030 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2031 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2032 +))) 2033 + 2034 +((( 2035 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2036 +))) 2037 + 2038 +((( 2039 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2040 +))) 2041 + 2042 +((( 2043 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2044 +))) 2045 + 2046 +((( 2047 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2048 +))) 2049 + 2050 +((( 2051 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2052 + "name": "string", ~/~/ Имя датчика 2053 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2054 +))) 2055 + 2056 +((( 2057 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2058 + "inputNumber": 0, ~/~/ Номер входа 2059 + "pseudonym": "string", ~/~/ Псевдоним 2060 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2061 + "isInverted": true, ~/~/ Признак инверсии 2062 + "disabled": true, ~/~/ Датчик не участвует в обработке 2063 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2064 + "gradesTables": [ ~/~/ Тарировка 1744 1744 { 1745 - "id": ~/~/ идентификатор 1746 - "enabled": true, ~/~/ флаг включения 1747 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1748 - "login": "", ~/~/ имя учетной записи 1749 - "password": "", ~/~/ пароль учетной записи 1750 - } 1751 - "inspectionTasks": ~/~/ задания на ТО 1752 - { 1753 - "id": "", ~/~/ ID задания 1754 - "enabled": false, ~/~/ Признак включения 1755 - "name": "", ~/~/ Имя задания 1756 - "description": "", ~/~/ Описание задания 1757 - "mileageCondition": "", ~/~/ Условие по пробегу 1758 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1759 - "motohoursCondition": "", ~/~/ Условие по моточасам 1760 - "lastMotohours": "", ~/~/ Моточасы 1761 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1762 - "kind": "", ~/~/ Вид периодичности по времени 1763 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2066 + "grades": [ ~/~/ Таблицы тарировки 2067 + { 2068 + "input": 0, ~/~/ Вход 2069 + "output": 0 ~/~/ Выход 2070 + } 2071 + ], 2072 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1764 1764 } 2074 + ], 2075 + "showInTooltip": true, ~/~/ Отображение в подсказке 2076 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1765 1765 1766 -(% lang="en-US" style="text-align:left" %) 1767 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2078 +((( 2079 + "color": "string", ~/~/ цвет уведомлений 2080 +))) 1768 1768 2082 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2083 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2084 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2085 + "expr": "string", ~/~/ Выражение 2086 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2087 + "string" 2088 + ], 2089 + "customParams": { ~/~/ Дополнительные настройки 2090 + "additionalProp1": "string", 2091 + "additionalProp2": "string", 2092 + "additionalProp3": "string" 2093 + }, 2094 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2095 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2096 + { 2097 + "from": 0, ~/~/ С какого значения 2098 + "color": "string", ~/~/ Каким цветом 2099 + "text": "string" ~/~/ Текст подписи к этому интервалу 2100 + } 2101 + ] 2102 + } 2103 + ], 2104 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2105 + "customFields": [ ~/~/ Список произвольных полей 2106 + { 2107 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2108 + "name": "string", ~/~/ Наименование произвольного поля 2109 + "value": "string", ~/~/ Значение произвольного поля 2110 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2111 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2112 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2113 + } 2114 + ], 2115 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2116 +} 2117 +))) 2118 + 1769 1769 **Валидация:** 1770 1770 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1771 1771 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1804,18 +1804,15 @@ 1804 1804 1805 1805 (% style="color:#000000" %)Метод запроса: **GET** 1806 1806 1807 -(% 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]]2157 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/devices/types>>https://hosting.glonasssoft.ru/api/v3/devices/types]] 1808 1808 1809 1809 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1810 1810 1811 1811 (% style="color:#000000" %)Ответ: 1812 1812 1813 -(% style="color:#000000" %){ 1814 - 2163 +(% style="color:#000000" %){(%%) 1815 1815 "deviceTypeId" : "", ~/~/ ID типа устройства 1816 1816 "deviceTypeName" : "" ~/~/ Название типа устройства 1817 - 1818 -(% style="text-align:left" %) 1819 1819 (% style="color:#000000" %)} 1820 1820 1821 1821 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1837,13 +1837,10 @@ 1837 1837 1838 1838 (% style="color:#000000" %)Ответ: 1839 1839 1840 -(% style="color:#000000" %){ 1841 - 2187 +(% style="color:#000000" %){(%%) 1842 1842 "id": "", ~/~/ ID типа датчика 1843 1843 "name": "", ~/~/ Название 1844 1844 "description": "", ~/~/ Описание 1845 - 1846 -(% style="text-align:left" %) 1847 1847 (% style="color:#000000" %)} 1848 1848 1849 1849 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1930,8 +1930,13 @@ 1930 1930 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 1931 1931 |protocolType|Тип протокола 1932 1932 |inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 1933 -|inputNumber|Номер входа 2277 +|inputNumber|((( 2278 +Номер входа 2279 +))) 1934 1934 2281 +(% class="wikigeneratedid" %) 2282 +Перечень 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/]] 2283 + 1935 1935 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1936 1936 1937 1937 (% class="box infomessage" %) ... ... @@ -2023,7 +2023,7 @@ 2023 2023 Тело запроса: 2024 2024 2025 2025 { 2026 - "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2375 + "sampling": 86400, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2027 2027 "vehicleIds": [0], ~/~/ Список ID объектов 2028 2028 "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 2029 2029 "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода ... ... @@ -2040,10 +2040,14 @@ 2040 2040 { 2041 2041 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2042 2042 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2043 - "mileageBegin": 0, ~/~/ Пробег на начало периода 2044 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 2045 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 2046 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2392 + "mileage": 0, ~/~/ Пробег за период, километры 2393 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2394 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2395 + "motohours": 0, ~/~/ Моточасы за период, секунды 2396 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2397 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2398 + "idlingTime": 0 ~/~/ Холостой ход за период, секунд 2399 + 2047 2047 } 2048 2048 ] 2049 2049 } ... ... @@ -2066,7 +2066,7 @@ 2066 2066 Тело запроса: 2067 2067 2068 2068 { 2069 - "sampling": 0, ~/~/ Частота дискретизации всекундах, минимум 60 секунд.Весь периодразбивает на подпериоды с указанной частотой.2422 + "sampling": 86400, ~/~/ Частота дискретизации, секунд, минимум - 60 (если передано, то весь период бъётся на подпериоды с указанной частотой) 2070 2070 "vehicleIds": [0], ~/~/ Список ID объектов 2071 2071 "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 2072 2072 "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода ... ... @@ -2085,13 +2085,23 @@ 2085 2085 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2086 2086 "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода 2087 2087 "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2441 + "fuelTankLevelStart": 0, ~/~/ Уровень топлива в цистерне на начало периода 2442 + "fuelTankLevelEnd": 0, ~/~/ Уровень топлива в цистерне на конец периода 2088 2088 "fuelConsumption": 0, ~/~/ Расход топлива 2089 2089 "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2445 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне 2446 + 2090 2090 } 2091 2091 ] 2092 2092 } 2093 2093 ] 2094 2094 2452 +(% class="box warningmessage" %) 2453 +((( 2454 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2455 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2456 +))) 2457 + 2095 2095 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2096 2096 2097 2097 (% class="box infomessage" %) ... ... @@ -2126,7 +2126,8 @@ 2126 2126 "model": "string", ~/~/ Модель объекта 2127 2127 "fuels": [ ~/~/ Массив данным по заправкам и сливам 2128 2128 { 2129 - "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив 2492 + "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 2493 + 2130 2130 "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало 2131 2131 "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание 2132 2132 "valueFuel": 0, ~/~/ Количество ... ... @@ -2137,134 +2137,122 @@ 2137 2137 } 2138 2138 ] 2139 2139 2140 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2141 2141 2142 -== (% style="color:#000000; font-size:16px" %)**Получение спискавсехгеообъектов**(%%) ==2505 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) == 2143 2143 2144 2144 (% class="box infomessage" %) 2145 2145 ((( 2146 - (% style="color:#000000; line-height:100%" %)****(% lang="en-US" %)**POST**(%%)**/api/v3/gis/find**2509 +**POST /api/v3/vehicles/moveStop** 2147 2147 ))) 2148 2148 2149 - (% style="color:#000000" %)Методпозволяет получить список геообъектов клиента. Возвращает массив геообъектовсо всей информацией о них.2512 +Метод запроса: **POST** 2150 2150 2151 - (% style="color:#000000" %)Методзапроса:**POST**2514 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop 2152 2152 2153 - (%style="color:#000000"%)URLзапроса:(%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/find2516 +В заголовках запроса: X-Auth: Токен авторизации 2154 2154 2155 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2156 2156 2157 -(% style="text-align:left" %) 2158 2158 Тело запроса: 2159 2159 2160 -(% style="text-align:left" %) 2161 2161 { 2162 - "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2522 + "vehicleIds": [ ], ~/~/ Список ID объектов 2523 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2524 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2525 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2163 2163 } 2164 2164 2165 -(% style="text-align:left" %) 2166 2166 Ответ: 2167 2167 2168 -[ 2530 +[ 2169 2169 { 2170 - "id": 0, ~/~/ Идентификатор объекта геозоны 2171 - "name": "string", ~/~/ Название объекта геозоны 2172 - "type": 0, ~/~/ Тип объекта геозоны 2173 - "fname": "string", ~/~/ Имя файла 2174 - "parentId": "string", ~/~/ Идентификатор клиента 2175 - "radius": 0, ~/~/ Радиус геообъекта 2176 - "beginCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата начала расчета 2177 - "endCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата окончания расчета 2178 - "description": "string", ~/~/ Описание 2179 - "area": 0, ~/~/ Площадь, м^^2^^ 2180 - "perimetr": 0, ~/~/ Периметр, м 2181 - "createDate": "2023-08-01T07:54:54.893Z", ~/~/ Дата создания 2182 - } 2183 -] 2184 - 2185 -== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по объектам**(%%) == 2186 - 2187 -(% class="box infomessage" %) 2188 -((( 2189 -(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/vehicles** 2190 -))) 2191 - 2192 -(% style="color:#000000" %)Метод позволяет получить список пересечений выбранных объектов со всеми геообъектами за выбранный период. 2193 - 2194 -(% style="color:#000000" %)Метод запроса: **POST** 2195 - 2196 -(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/vehicles 2197 - 2198 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2199 - 2200 -(% style="text-align:left" %) 2201 -Тело запроса: 2202 - 2203 -{ 2204 - "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса 2205 - "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания 2206 - "ids": [ ], ~/~/ Массив id объектов 2207 - "byTime": 0, ~/~/ Объединение событий по времени 2208 - "byDist": 0, ~/~/ Объединение событий по расстоянию 2209 - "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 2210 - "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра 2211 -} 2212 - 2213 -Ответ: 2214 -[ 2215 - { 2216 - "geozoneId": 0, ~/~/ ID геообъекта 2217 - "geozoneName": "string", ~/~/ Название геообъекта 2218 - "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда 2219 - "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда 2220 - "duration": 0, ~/~/ Продолжительность нахождения в геообъекте 2221 2221 "vehicleId": 0, ~/~/ ID объекта 2222 - "vehicleName": "string" ~/~/ Имя объекта 2533 + "vehicleName": "string", ~/~/ Имя объекта 2534 + "moves": [ ~/~/ Событие движения 2535 + { 2536 + "mileage": 0, ~/~/ Пробег, км 2537 + "eventId": 0, ~/~/ Идентификатор события 2538 + "eventName": "string", ~/~/ Название события 2539 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2540 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2541 + "duration": 0 ~/~/ Продолжительность события, секунд 2542 + } 2543 + ], 2544 + "stops": [ ~/~/ События стоянок 2545 + { 2546 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2547 + "eventId": 0, ~/~/ Идентификатор события 2548 + "eventName": "string", ~/~/ Название события 2549 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2550 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2551 + "duration": 0 ~/~/ Продолжительность события, секунд 2552 + } 2553 + ] 2223 2223 } 2224 2224 ] 2225 2225 2226 -== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по геообъектам**(%%) == 2227 2227 2558 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2559 + 2228 2228 (% class="box infomessage" %) 2229 2229 ((( 2230 - (% style="color:#000000; line-height:100%" %)****(% lang="en-US" %)**POST**(%%)**/api/v3/gis/intersections/geozones**2562 +**POST /api/v3/vehicles/getlastdata** 2231 2231 ))) 2232 2232 2233 - (% style="color:#000000" %)Методпозволяетполучить список пересечений выбранных геообъектовсо всеми объектами за выбранный период.2565 +Метод запроса: **POST** 2234 2234 2235 - (% style="color:#000000" %)Методзапроса:**POST**2567 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata 2236 2236 2237 - (%style="color:#000000"%)URLзапроса:(%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/geozones2569 +В заголовках запроса: X-Auth: Токен авторизации 2238 2238 2239 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2240 2240 2241 -(% style="text-align:left" %) 2242 -Тело запроса: 2572 +В массиве указываем id объектов через запятую 2243 2243 2244 -{ 2245 - "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса 2246 - "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания 2247 - "ids": [ ], ~/~/ Массив id геообъектов 2248 - "byTime": 0, ~/~/ Объединение событий по времени 2249 - "byDist": 0, ~/~/ Объединение событий по расстоянию 2250 - "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 2251 - "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра 2252 -} 2253 - 2254 2254 Ответ: 2255 2255 2256 2256 [ 2257 2257 { 2258 - "geozoneId": 0, ~/~/ ID геообъекта 2259 - "geozoneName": "string", ~/~/ Название геообъекта 2260 - "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда 2261 - "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда 2262 - "duration": 0, ~/~/ Продолжительность нахождения в геообъекте 2263 - "vehicleId": 0, ~/~/ ID объекта 2264 - "vehicleName": "string" ~/~/ Имя объекта 2578 + "vehicleId": 55728, ~/~/ Идентификатор объекта 2579 + "vehicleGuid": "fa9c0357-9b9f-44b9-a89c-20a2cb80a9ad", ~/~/ Guid объекта 2580 + "vehicleNumber": "0105 КМ", ~/~/ Номер объекта 2581 + "receiveTime": "2025-06-27T12:37:46.7782735Z", ~/~/ Время и дата поступления данных 2582 + "recordTime": "2025-06-27T12:37:19Z", ~/~/ Время и дата формирование данных 2583 + "state": 4, ~/~/ Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2584 + "speed": 31, ~/~/ Скорость объекта 2585 + "course": 116, ~/~/ Курс движения [0;360] 2586 + "latitude": 45.722128, ~/~/ Широта [-90°;90°]. 2587 + "longitude": 39.800432, ~/~/ Долгота [-180°;180°]. 2588 + "address": "\" Краснодарский край Россия 45,722128°, 39,800432°\"", ~/~/ Адрес 2589 + "geozones": [ ~/~/ Сведения по геозонам. 2590 + { 2591 + "id": 10225647, ~/~/ ID Геозоны 2592 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2593 + }, 2594 + { 2595 + "id": 10282875, ~/~/ ID Геозоны 2596 + "name": "Ё2" ~/~/ Наименование геозоны 2597 + }, 2598 + { 2599 + "id": 10226240, ~/~/ ID Геозоны 2600 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2601 + }, 2602 + { 2603 + "id": 9747869, ~/~/ ID Геозоны 2604 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2605 + }, 2606 + { 2607 + "id": 10221123, ~/~/ ID Геозоны 2608 + "name": "53r" ~/~/ Наименование геозоны 2609 + }, 2610 + { 2611 + "id": 10197638, ~/~/ ID Геозоны 2612 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2613 + } 2614 + ] 2265 2265 } 2266 - ]2616 + 2267 2267 2618 += = 2619 + 2268 2268 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) = 2269 2269 2270 2270 == (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) == ... ... @@ -2296,7 +2296,7 @@ 2296 2296 "id": 0, ~/~/ ID уведомления 2297 2297 "name": "string", ~/~/ Название уведомления 2298 2298 "active": true, ~/~/ Состояние true - активен, false - деактивирован 2299 - "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО 2651 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя) 2300 2300 "userId": "", ~/~/ Пользователь, создавший уведомление 2301 2301 "parentId": "", ~/~/ Идентификатор клиента 2302 2302 "parentName": "string" ~/~/ Имя клиента ... ... @@ -2303,6 +2303,155 @@ 2303 2303 } 2304 2304 ] 2305 2305 2658 + 2659 +== (% style="color:#000000; font-size:16px" %)**Создание уведомления**(%%) == 2660 + 2661 +(% class="box infomessage" %) 2662 +((( 2663 +**POST /api/v3/notifications** 2664 +))) 2665 + 2666 +Метод запроса **POST** 2667 + 2668 +(% style="text-align: left;" %) 2669 +(% style="color:#000000" %)Пример запроса 2670 + 2671 +((( 2672 +{ 2673 + "id": 0, ~/~/ ID правила 2674 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2675 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2676 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2677 + "name": "string", ~/~/ Имя правила 2678 + "active": true, ~/~/ Активность правила 2679 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2680 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2681 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2682 + ], 2683 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2684 + 0 2685 + ], 2686 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2687 + 0 2688 + ], 2689 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2690 + 0 2691 + ], 2692 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2693 + "additionalProp1": "string", 2694 + "additionalProp2": "string", 2695 + "additionalProp3": "string" 2696 + }, 2697 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2698 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2699 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2700 + ], 2701 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2702 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2703 + "string" 2704 + ], 2705 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2706 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2707 + { 2708 + "id": 0, ~/~/ Идентификатор участника чата. 2709 + "info": "string" ~/~/ Дополнительные сведения. 2710 + } 2711 + ], 2712 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2713 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2714 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2715 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2716 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2717 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2718 + "timezone": 0, ~/~/ часовой пояс 2719 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2720 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2721 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2722 + { 2723 + "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 - Срок действия правила истек 2724 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2725 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2726 + "additionalProp1": "string", 2727 + "additionalProp2": "string", 2728 + "additionalProp3": "string" 2729 + } 2730 + } 2731 + ] 2732 +} 2733 +))) 2734 + 2735 +((( 2736 + 2737 +))) 2738 + 2739 +((( 2740 + 2741 +))) 2742 + 2743 +Ответ: 2744 + 2745 +{ 2746 + "id": 0, ~/~/ ID правила 2747 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2748 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2749 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2750 + "name": "string", ~/~/ Имя правила 2751 + "active": true, ~/~/ Активность правила 2752 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2753 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2754 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2755 + ], 2756 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2757 + 0 2758 + ], 2759 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2760 + 0 2761 + ], 2762 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2763 + 0 2764 + ], 2765 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2766 + "additionalProp1": "string", 2767 + "additionalProp2": "string", 2768 + "additionalProp3": "string" 2769 + }, 2770 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2771 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2772 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2773 + ], 2774 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2775 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2776 + "string" 2777 + ], 2778 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2779 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2780 + { 2781 + "id": 0, ~/~/ Идентификатор участника чата. 2782 + "info": "string" ~/~/ Дополнительные сведения. 2783 + } 2784 + ], 2785 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2786 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2787 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2788 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2789 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2790 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2791 + "timezone": 0, ~/~/ часовой пояс 2792 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2793 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2794 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2795 + { 2796 + "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 - Срок действия правила истек 2797 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2798 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2799 + "additionalProp1": "string", 2800 + "additionalProp2": "string", 2801 + "additionalProp3": "string" 2802 + } 2803 + } 2804 + ] 2805 +} 2806 + 2306 2306 == (% style="color:#000000; font-size:16px" %)**Запрос настроек уведомления**(%%) == 2307 2307 2308 2308 (% class="box infomessage" %) ... ... @@ -2444,6 +2444,32 @@ 2444 2444 2445 2445 Success 2446 2446 2948 + 2949 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2950 + 2951 +(% class="box warningmessage" %) 2952 +((( 2953 +**PUT** /api/v3/notifications/prolongation 2954 +))) 2955 + 2956 +Метод позволяет продлить уведомления. 2957 + 2958 +Метод запроса **PUT** 2959 + 2960 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 2961 + 2962 +В заголовках запроса: X-Auth: Токен авторизации. 2963 + 2964 +Тело запроса: 2965 + 2966 +[ 2967 + 2968 +0 2969 + 2970 +] 2971 + 2972 +где 0 идентификатор ids. 2973 + 2447 2447 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2448 2448 2449 2449 (% class="box errormessage" %) ... ... @@ -3494,16 +3494,12 @@ 3494 3494 Тело запроса: 3495 3495 3496 3496 { 3497 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3498 - "Balance": 0 4024 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4025 + "Balance": 0 ~/~/ Значение баланса. 3499 3499 } 3500 3500 3501 3501 Ответ: Success 3502 3502 3503 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3504 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3505 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 3506 - 3507 3507 == (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) == 3508 3508 3509 3509 (% class="box warningmessage" %) ... ... @@ -3515,16 +3515,29 @@ 3515 3515 3516 3516 Тело запроса: 3517 3517 4041 +((( 3518 3518 { 3519 - " ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",3520 - " Balance": 04043 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4044 + "amount": 0 ~/~/ Сумма пополнения баланса 3521 3521 } 4046 +))) 3522 3522 4048 +((( 4049 + 4050 +))) 4051 + 3523 3523 Ответ: Success 3524 3524 3525 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3526 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3527 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4054 +((( 4055 +{ 4056 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки. 4057 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4058 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя. 4059 + "Moment": "2025-06-10T12:15:19.076Z", ~/~/ Время корректировки. 4060 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс. 4061 + "Description": "string" ~/~/ Описание корректировки. 4062 +} 4063 +))) 3528 3528 3529 3529 == (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) == 3530 3530 ... ... @@ -3537,16 +3537,25 @@ 3537 3537 3538 3538 Тело запроса: 3539 3539 4076 +((( 3540 3540 { 3541 - " ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",3542 - " Balance": 04078 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4079 + "amount": 0 ~/~/ Сумма списания с баланса 3543 3543 } 4081 +))) 3544 3544 3545 3545 Ответ: Success 3546 3546 3547 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3548 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3549 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4085 +((( 4086 +{ 4087 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки. 4088 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4089 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя. 4090 + "Moment": "2025-06-10T12:21:05.149Z", ~/~/ Время корректировки. 4091 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс. 4092 + "Description": "string" ~/~/ Описание корректировки 4093 +} 4094 +))) 3550 3550 3551 3551 == (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) == 3552 3552 ... ... @@ -3557,28 +3557,35 @@ 3557 3557 3558 3558 Тело запроса: 3559 3559 4105 +((( 3560 3560 { 3561 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3562 - "CalculationType": 0, 3563 - "PermissibleBalance": 0, 3564 - "DefermentDays": 0, 3565 - "SendUiNotifications": true, 3566 - "SendEmailNotifications": true, 3567 - "IsPrivate": true, 4107 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4108 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни 4109 + "PermissibleBalance": 0, ~/~/ Допустимый баланс 4110 + "DefermentDays": 0, ~/~/ Отсрочка (дни). 4111 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено 4112 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено 3568 3568 } 4114 +))) 3569 3569 4116 +((( 4117 + 4118 +))) 4119 + 3570 3570 Ответ: Success 3571 3571 3572 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3573 -|ClientId|Идентификатор клиента 3574 -|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 3575 -|PermissibleBalance|Допустимый баланс 3576 -|DefermentDays|((( 3577 -Отсрочка, количество дней 4122 +((( 4123 +{ 4124 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 4125 + "BlockingTime": "2025-06-10T12:23:28.754Z", ~/~/ Время, когда заблокируется клиент. 4126 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4127 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни 4128 + "PermissibleBalance": 0, ~/~/ Допустимый баланс. 4129 + "DefermentDays": 0, ~/~/ Отсрочка (дни) 4130 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено 4131 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено 4132 +} 3578 3578 ))) 3579 -|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено 3580 -|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено 3581 -|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 3582 3582 3583 3583 == (% style="color:#000000; font-size:16px" %)**Изменить тариф клиента**(%%) == 3584 3584 ... ... @@ -3590,35 +3590,68 @@ 3590 3590 Тело запроса: 3591 3591 3592 3592 { 3593 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3594 - "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3595 - "Features": [ 4145 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4146 + "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана. 4147 + "Features": [ ~/~/ Набор услуг по тарифу клиента. 3596 3596 { 3597 - "Feature": "string", 3598 - "IsEnabled": true, 3599 - "IsFactual": true, 3600 - "Limit": 0, 3601 - "Price": 0, 3602 - "DebitDate": "2023-10-18T13:26:58.987Z", 3603 - "PeriodValue": 0, 3604 - "PeriodType": 0 4149 + "Feature": "string", ~/~/ Код услуги. 4150 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга. 4151 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту. 4152 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование 4153 + "Price": 0, ~/~/ Цена за единицу. 4154 + "DebitDate": "2023-10-18T13:26:58.987Z", ~/~/ Следующий момент времени списания с баланса за услугу. 4155 + "PeriodValue": 0, ~/~/ Значение периода. 4156 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане ( 0 - Дни, 1 - Месяцы) 3605 3605 } 3606 3606 ] 3607 3607 } 3608 3608 4161 + 3609 3609 Ответ: Success 3610 3610 3611 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3612 -|ClientId|Идентификатор клиента 3613 -|PlanId|Идентификатор тарифного плана 3614 -|Feature|Код услуги 3615 -|IsEnabled|Признак, определяющий активирована ли услуга 3616 -|IsFactual|Признак, определяющий расчёт по факту 3617 -|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 3618 -|Price|Цена за единицу. 3619 -|DebitDate|Следующий момент времени списания с баланса за услугу. 3620 -|PeriodValue|Значение периода. 3621 -|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 4164 +((( 4165 +{ 4166 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4167 + "Plan": { ~/~/ Определяет тарифный план (шаблон услуг) 4168 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана. 4169 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента-владельца. 4170 + "Name": "string", ~/~/ Наименование. 4171 + "IsArchived": true, ~/~/ Признак, определяющий архивный тарифный план. 4172 + "Constraint": { ~/~/ Ограничения по тарифу 4173 + "CalculationType": 0, ~/~/ Определяет тип расчёта (0 - деньги, 1 - дни) 4174 + "PermissibleBalance": 0, ~/~/ Допустимый баланс. 4175 + "DefermentDays": 0 ~/~/ Отсрочка (дни) 4176 + }, 4177 + "Features": [ ~/~/ Набор услуг по тарифному плану. 4178 + { 4179 + "Feature": "string", ~/~/Код услуги. 4180 + "IsFactual": true, ~/~/ Признак, определяющий возможность расчёта по факту. 4181 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4182 + "Price": 0, ~/~/ Цена за единицу. 4183 + "PeriodValue": 0, ~/~/ Значение периода. 4184 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане. (0 - деньги, 1 - дни) 4185 + } 4186 + ], 4187 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя, создавшего тарифный план. 4188 + "Created": "2025-06-10T12:29:32.969Z", ~/~/ Дата создания тарифного плана. 4189 + "Deactivated": "2025-06-10T12:29:32.969Z" ~/~/ Дата деактивации тарифного плана. 4190 + }, 4191 + "Features": [ ~/~/ Набор услуг по тарифу клиента. 4192 + { 4193 + "Feature": "string", ~/~/ Код услуги. 4194 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга. 4195 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры по услуге тарифа частными т.е. персональными для клиента, либо определяются тарифным планом. 4196 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту. 4197 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4198 + "Price": 0, ~/~/ Цена за единицу. 4199 + "DebitDate": "2025-06-10T12:29:32.969Z", ~/~/ Следующий момент времени списания с баланса за услугу. 4200 + "PeriodValue": 0, ~/~/ Значение периода. 4201 + "PeriodType": 0, ~/~/ Определяет тип периода действия услуги в тарифном плане. 4202 + "Quantity": 0 ~/~/ Количество использования услуги. 4203 + } 4204 + ] 4205 +} 4206 +))) 3622 3622 3623 3623 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) = 3624 3624 ... ... @@ -3634,7 +3634,7 @@ 3634 3634 **POST /api/v3/vehicles/import/{agentId}** 3635 3635 ))) 3636 3636 3637 -Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml** или **wlp. **Также они могут находится в** zip-архиве.** 4222 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 3638 3638 3639 3639 В пути указывается **agentId** - id клиента. 3640 3640 ... ... @@ -3646,7 +3646,7 @@ 3646 3646 3647 3647 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3648 3648 |withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 3649 -|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: 1- Замена,2- Слияние,3- Добавление4234 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 3650 3650 3651 3651 В теле использовать тип **form-data,** тип значения** file** 3652 3652 ... ... @@ -3723,6 +3723,43 @@ 3723 3723 |producedCount|Кол-во успешно отправленных в шину данных сообщений 3724 3724 |msgCount|Кол-во обработанных сообщений всего 3725 3725 4311 +== **Импортировать историю ТС (Асинхронный запрос)** == 4312 + 4313 +(% class="box successmessage" %) 4314 +((( 4315 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 4316 +))) 4317 + 4318 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4319 + 4320 +Метод запроса: **POST** 4321 + 4322 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 4323 + 4324 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 4325 + 4326 + 4327 +Ответ: 4328 + 4329 +{ 4330 + 4331 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4332 + 4333 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 4334 + 4335 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 4336 + 4337 + "Message": "string", ~/~/ Информация о выполнении запроса 4338 + 4339 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 4340 + 4341 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4342 + 4343 + "Data": "string" ~/~/ Данные 4344 + 4345 +} 4346 + 4347 + 3726 3726 == (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 3727 3727 3728 3728 (% class="box infomessage" %) ... ... @@ -3740,10 +3740,59 @@ 3740 3740 "message": "string" 3741 3741 } 3742 3742 3743 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3744 -|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет 3745 -|progress|Guid ТС 4365 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)((( 4366 +**Параметр** 4367 +)))|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)((( 4368 +**Описание** 4369 +))) 4370 +|((( 4371 +activity 4372 +)))|((( 4373 +Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4374 +))) 4375 +|((( 4376 +progress 4377 +)))|((( 4378 +Guid ТС 4379 +))) 3746 3746 4381 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 4382 + 4383 +(% class="box infomessage" %) 4384 +((( 4385 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 4386 +))) 4387 + 4388 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4389 + 4390 +Метод запроса: **GET** 4391 + 4392 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 4393 + 4394 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 4395 + 4396 + 4397 +Ответ: 4398 + 4399 +{ 4400 + 4401 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4402 + 4403 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 4404 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 4405 + 4406 + "Message": "string", ~/~/ Информация о выполнении запроса 4407 + 4408 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 4409 + 4410 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 4411 + 4412 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4413 + 4414 + "Data": "string" ~/~/ Данные 4415 + 4416 +} 4417 + 3747 3747 == (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 3748 3748 3749 3749 (% class="box infomessage" %) ... ... @@ -3813,7 +3813,7 @@ 3813 3813 3814 3814 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) = 3815 3815 3816 -== (% style="color:#000000; font-size:16px" %)**Запрос рейтин ша качества вождения**(%%) ==4487 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) == 3817 3817 3818 3818 (% class="box infomessage" %) 3819 3819 ((( ... ... @@ -3825,64 +3825,67 @@ 3825 3825 Тело запроса: 3826 3826 3827 3827 { 3828 - "vehicleIds": [vehicleId], 3829 - "from": "2023-11-22T09:29:48.051Z", 3830 - "to": "2023-11-22T09:29:48.051Z" 4499 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4500 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4501 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 3831 3831 } 3832 3832 3833 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3834 -|vehicleIds|Массив ID объектов 3835 -|from|Дата начала запроса 3836 -|to|Дата окончания запроса 3837 - 3838 3838 Ответ: 3839 3839 3840 3840 { 3841 - "items": [ 4507 + "items": [ ~/~/ Список в разрезе ТС 3842 3842 { 3843 - "from": "2023-11-22T09:29:48.052Z", 3844 - "to": "2023-11-22T09:29:48.052Z", 3845 - "vehicleId": 0, 3846 - "vehicleName": "string", 3847 - "vehicleModel": "string", 3848 - "penalty": 0, 3849 - "score": 0, 3850 - "totalViolations": 0, 3851 - "violationsByType": { 3852 - "overspeedingViolations": 0, 3853 - "accelerationViolations": 0, 3854 - "brakingViolations": 0, 3855 - "turningViolations": 0, 3856 - "dangerousDrivingViolations": 0, 3857 - "sensorViolations": 0 4509 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4510 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4511 + "vehicleId": 0, ~/~/ ID ТС 4512 + "vehicleName": "string", ~/~/ Название ТС 4513 + "vehicleModel": "string", ~/~/ Модель ТС 4514 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4515 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4516 + "totalViolations": 0, ~/~/ Нарушений всего 4517 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4518 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4519 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4520 + "brakingViolations": 0, ~/~/ Нарушений торможения 4521 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4522 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4523 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3858 3858 }, 3859 - "moveTime": 0, 3860 - "mileage": 0, 3861 - "tripsCount": 0, 3862 - "trips": [ 4525 + 4526 +((( 4527 + 4528 +))) 4529 + 4530 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4531 + "mileage": 0, ~/~/ Пробег, м 4532 + "tripsCount": 0, ~/~/ Кол-во рейсов 4533 + "trips": [ ~/~/ Информация по рейсу 3863 3863 { 3864 - "penalty": 0, 3865 - "score": 0, 3866 - "violationsCount": 0, 3867 - "violationsByType": { 3868 - "overspeedingViolations": 0, 3869 - "accelerationViolations": 0, 3870 - "brakingViolations": 0, 3871 - "turningViolations": 0, 3872 - "dangerousDrivingViolations": 0, 3873 - "sensorViolations": 0 4535 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4536 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4537 + "violationsCount": 0, ~/~/ Всего нарушений 4538 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4539 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4540 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4541 + "brakingViolations": 0, ~/~/ Нарушений торможения 4542 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4543 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4544 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3874 3874 }, 3875 - "moveTime": 0, 3876 - "mileage": 0, 3877 - "motohours": 0, 3878 - "maxSpeed": 0, 3879 - "startAddress": "string", 3880 - "endAddress": "string", 3881 - "drivers": [ 4546 + 4547 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4548 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4549 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4550 + "mileage": 0, ~/~/ Пробег, м 4551 + "motohours": 0, ~/~/ Моточасы, секунды 4552 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4553 + "startAddress": "string", ~/~/ Адрес начала рейса 4554 + "endAddress": "string", ~/~/ Адрес конца рейса 4555 + "drivers": [ ~/~/ Список водителей 3882 3882 { 3883 - "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3884 - "driverName": "string", 3885 - "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 4557 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4558 + "driverName": "string", ~/~/ФИО водителя 4559 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 3886 3886 } 3887 3887 ] 3888 3888 } ... ... @@ -3891,34 +3891,1980 @@ 3891 3891 ] 3892 3892 } 3893 3893 3894 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3895 -|from|Дата начала запроса 3896 -|to|Дата окончания 3897 -|vehicleId|ID объекта 3898 -|vehicleName|Имя объекта 3899 -|vehicleModel|Модель объекта 3900 -|penalty|Сумма штрафных баллов 3901 -|score|Оценка 3902 -|totalViolations|Суммарное количество нарушений 3903 -|violationsByType|Список типов нарушений и количество нарушений для каждого типа 3904 -|overspeedingViolations|Превышение скорости 3905 -|accelerationViolations|Ускорение 3906 -|brakingViolations|Торможение 3907 -|turningViolations|Резкий поворот 3908 -|dangerousDrivingViolations|Резкое вождение 3909 -|sensorViolations|Нарушение по датчику 3910 -|moveTime|Время в движении 3911 -|mileage|Пробег 3912 -|tripsCount|Количество рейсов 3913 -|motohours|Моточасы 3914 -|maxSpeed|Максимальная скорость 3915 -|startAddress|Адрес начала рейса 3916 -|endAddress|Адрес окончания рейса 3917 -|drivers|Список водителей, которые были на объекте в течениии рейса 3918 -|driverGuid|Guid водителя 3919 -|driverName|Имя водителя 3920 -|driverRfid|Номер Карты-метки 4568 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 3921 3921 4570 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4571 + 4572 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4573 + 4574 +(% class="box infomessage" %) 4575 +((( 4576 +**POST /api/v3/fuelcards/transactions** 4577 +))) 4578 + 4579 +Метод запроса: POST 4580 + 4581 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4582 +\\В заголовках запроса: X-Auth: Токен авторизации 4583 + 4584 +Параметры в теле запроса (JSON): 4585 + 4586 +{ 4587 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4588 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4589 + "ids": [ 4590 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4591 + ], 4592 + "timezone": 0 ~/~/ Часовой пояс 4593 +} 4594 + 4595 + 4596 +Ответ: 4597 + { 4598 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4599 + "driver": "string", ~/~/ Водители, привязанные к ТК 4600 + "object": "string", ~/~/ Наименование ТС 4601 + "amount": 0, ~/~/ Количество топлива 4602 + "amountDut": 0, ~/~/ Количество по ДУТ 4603 + "amountDiff": 0, ~/~/ Разница, л 4604 + "amountDiffPerc": 0, ~/~/ Разница, % 4605 + "summa": 0, ~/~/ Стоимость, руб 4606 + "serviceName": "string", ~/~/ Тип топлива 4607 + "price": 0, ~/~/ Цена за литр, руб 4608 + "cardName": "string", ~/~/ Наименование ТК 4609 + "cardNum": "string", ~/~/ Номер ТК 4610 + "operator": "string", ~/~/ Оператор ТК 4611 + "address": "string" ~/~/ Адрес АЗС 4612 + } 4613 + 4614 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) == 4615 + 4616 +(% class="box infomessage" %) 4617 +((( 4618 +**GET /api/v3/fuelcards** 4619 +))) 4620 + 4621 +Метод запроса: GET 4622 + 4623 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список 4624 + 4625 +Ответ: 4626 + 4627 +[ 4628 + { 4629 + "Name": "string", ~/~/ Определяет наименование карты. 4630 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора. 4631 + "Number": "string", ~/~/ Определяет № карты. 4632 + "Enabled": true, ~/~/ Определяет признак активности карты. 4633 + "Description": "string", ~/~/ Определяет описание карты. 4634 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты 4635 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 4636 + "deleted": true ~/~/ Признак удаления 4637 + } 4638 +] 4639 + 4640 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4641 + 4642 + 4643 +== **Получение полных данных о ретрансляторе** == 4644 + 4645 +(% class="box infomessage" %) 4646 +((( 4647 +**GET ** **/api/v3/retranslations/{id}** 4648 +))) 4649 + 4650 +id - Идентификатор ретранслятора 4651 + 4652 + 4653 +Пример ответа: 4654 + 4655 +{ 4656 +"description": "", ~/~/ Поле описания ретранслятора 4657 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4658 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4659 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4660 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4661 +"objects": [ ~/~/ Объекты для ретрансляции 4662 +{ 4663 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4664 +"name": "", ~/~/ Наименование объекта ретрансляции 4665 +"imei": "", ~/~/ IMEI объекта ретрансляции 4666 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4667 +} 4668 + ], 4669 +"id": "", ~/~/ Идентификатор ретранслятора 4670 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4671 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4672 +} 4673 + 4674 + 4675 +== **Удаление данных ретранслятора** == 4676 + 4677 +(% class="box infomessage" %) 4678 +((( 4679 +**DELETE** **/api/v3/retranslations/{id}** 4680 +))) 4681 + 4682 +id - Идентификатор ретранслятора 4683 + 4684 + 4685 +== **Создание ретранслятора** == 4686 + 4687 +(% class="box infomessage" %) 4688 +((( 4689 +**POST ** **/api/v3/retranslations/{id}** 4690 +))) 4691 + 4692 +Запрос: 4693 + 4694 +{ 4695 +"description": "", ~/~/ Поле описания ретранслятора 4696 +"subscriberId": "", ~/~/ Идентификатор подписчика 4697 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4698 +"address": "", ~/~/ Адрес и порт принимающего сервера 4699 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4700 +"objects": [ ~/~/Объекты для ретрансляции 4701 +{ 4702 +"id": "", ~/~/ Идентификатор ретранслятора 4703 +"imei": "", ~/~/ IMEI объекта ретрансляции 4704 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4705 +} 4706 + ] 4707 +} 4708 + 4709 + 4710 +Ответ: 4711 + 4712 +{ 4713 +"description": "", ~/~/ Поле описания ретранслятора 4714 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4715 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4716 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4717 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4718 +"objects": [ ~/~/ Объекты для ретрансляции 4719 +{ 4720 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4721 +"name": "string", ~/~/ Наименование объекта ретрансляции 4722 +"imei": "", ~/~/ IMEI объекта ретрансляции 4723 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4724 +} 4725 + ], 4726 +"id": "", ~/~/ Идентификатор ретранслятора 4727 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4728 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4729 +} 4730 + 4731 + 4732 +== **Редактирование ретранслятора** == 4733 + 4734 +(% class="box infomessage" %) 4735 +((( 4736 +**PUT** **/api/v3/retranslations** 4737 +))) 4738 + 4739 +Пример запроса: 4740 + 4741 +{ 4742 +"id": "", ~/~/ Идентификатор ретранслятора 4743 +"description": "string", ~/~/ Поле описания ретранслятора 4744 +"subscriberId": "", ~/~/ Идентификатор подписчика 4745 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4746 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4747 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4748 +"objects": ~/~/ Объекты для ретрансляции 4749 +[ 4750 +{ 4751 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4752 +"imei": "", ~/~/ IMEI объекта ретрансляции 4753 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4754 +} 4755 + ] 4756 +} 4757 + 4758 + 4759 +Пример ответа: 4760 + 4761 +{ 4762 +"description": "", ~/~/ Поле описания ретранслятора 4763 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4764 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4765 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4766 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4767 +"objects": [ ~/~/ Объекты для ретрансляции 4768 +{ 4769 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4770 +"name": "string", ~/~/ Наименование объекта ретрансляции 4771 +"imei": "", ~/~/ IMEI объекта ретрансляции 4772 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4773 +} 4774 + ], 4775 +"id": "", ~/~/ Идентификатор ретранслятора 4776 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4777 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4778 +} 4779 + 4780 + 4781 +== **Получение списка ретранслятора клиента** == 4782 + 4783 +(% class="box infomessage" %) 4784 +((( 4785 +**POST /api/v3/retranslations/find** 4786 +))) 4787 + 4788 +Пример запроса: 4789 + 4790 +{ 4791 +"id": "", ~/~/ Идентификатор ретранслятора 4792 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4793 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4794 +} 4795 + 4796 +Ответ: 4797 + 4798 +[ 4799 +{ 4800 +"description": "", ~/~/ Поле описания ретранслятора 4801 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4802 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4803 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4804 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4805 +"id": "", ~/~/ Идентификатор ретранслятора 4806 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4807 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4808 +} 4809 +] 4810 + 4811 + 4812 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4813 + 4814 +== **API для отчета по выгрузке комбайнов** == 4815 + 4816 +(% class="box infomessage" %) 4817 +((( 4818 +**POST /api/v3/Reports/harvesterUnloading** 4819 +))) 4820 + 4821 +Пример запроса: 4822 + 4823 +{ 4824 + "byTime": 0, ~/~/ Объединение событий по времени 4825 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4826 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4827 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4828 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4829 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4830 + 0 4831 + ], 4832 + "from": "", ~/~/ Дата и время начало запроса 4833 + "to": "", ~/~/ Дата и время окончания запроса 4834 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4835 +} 4836 + 4837 +Пример ответа: 4838 + 4839 +[ 4840 + { 4841 + "harvesterName": "", ~/~/Комбайн, номер 4842 + "harvesterId": 0, ~/~/Комбайн, id 4843 +"harvesterModel": "", ~/~/ Модель комбайна 4844 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4845 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4846 + "events": [ ~/~/Список событий в разрезе комбайна 4847 + { 4848 + "driverId": "", ~/~/Идентификатор водителя 4849 + "driverName": "", ~/~/Водитель комбайна, ФИО 4850 + "RFID": "", ~/~/ идентификатор карты-метки 4851 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4852 + "vehicleId": 0, ~/~/идентификатор объекта 4853 + "vehicleName": "string", ~/~/ Имя объекта 4854 + "modelName": "string", ~/~/ Имя модели объекта 4855 + "nearestVehicles": [ ~/~/Объекты рядом 4856 + { 4857 + "vehicleId": 0, ~/~/идентификатор объекта 4858 + "vehicleName": "string" ~/~/ Имя объекта 4859 + } 4860 + ], 4861 + "fields": [ ~/~/Поля, где происходила выгрузка 4862 + { 4863 + "id": 0, ~/~/ идентификатор пользователя 4864 + "name": "string" ~/~/ имя пользователя 4865 + } 4866 + ], 4867 + "event": "string", ~/~/Событие 4868 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4869 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4870 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4871 + "cultureName": "string", ~/~/ название культуры 4872 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4873 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4874 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4875 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4876 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4877 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4878 + "issued": 0, ~/~/Выдано, бункеров 4879 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4880 + "latitude": 0, ~/~/Широта 4881 + "longitude": 0, ~/~/ Долгота 4882 + "litresAway": 0, ~/~/Отдано, л 4883 + "m3Away": 0 ~/~/Отдано, м3 4884 + } 4885 + ] 4886 + } 4887 +] 4888 + 4889 + 4890 +== **Отчет трек-датчики** == 4891 + 4892 +(% class="box infomessage" %) 4893 +((( 4894 +**POST /api/v3/Reports/sensorsWorks** 4895 +))) 4896 + 4897 +**Пример запроса:** 4898 + 4899 +{ 4900 + "vehicleIds": [ ~/~/ Список ID объектов 4901 + 0 4902 + ], 4903 + "from": "2025-02-20T06:39:23.888Z", ~/~/ Начало периода (локальное время клиента) 4904 + "to": "2025-02-20T06:39:23.888Z", ~/~/ Конец периода (локальное время клиента) 4905 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4906 +} 4907 + 4908 +**Пример ответа:** 4909 + 4910 +((( 4911 +{ 4912 + "vehicleSensorWorks": [ ~/~/ Интервалы работы оборудования для конкретного ТС 4913 + { 4914 + "vehicleId": 0, ~/~/ Идентификатор ТС 4915 + "sensorWorks": [ ~/~/ Интервалы работы оборудования. 4916 + { 4917 + "start": "2025-02-20T06:39:23.979Z", ~/~/ Начало интервала работы оборудования. 4918 + "end": "2025-02-20T06:39:23.979Z", ~/~/ Конец интервала работы оборудования. 4919 + "duration": 0, ~/~/ Продолжительность интервала в секундах. 4920 + "name": "string", ~/~/ Наименование оборудования. 4921 + "mileage": 0, ~/~/ Пробег за время работы оборудования. 4922 + "totalMileage": 0, ~/~/ Общий пробег. 4923 + "avgSpeed": 0 ~/~/ Средняя скорость. 4924 + } 4925 + ] 4926 + } 4927 + ] 4928 +} 4929 + 4930 + 4931 +== **Превышение скорости** == 4932 + 4933 +(% class="box infomessage" %) 4934 +((( 4935 +**POST /api/v3/Reports/overSpeedDuration** 4936 +))) 4937 + 4938 + Публичный API запрос о превышениях скорости по объекту в секундах с выбором способа определения нарушений (дорожное ограничение или фиксированное ограничение). 4939 + 4940 +Пример запроса: 4941 + 4942 +((( 4943 +{ 4944 + "vehicleId": 0, ~/~/ идентификационный номер транспортного средства 4945 + "from": "2025-04-21T10:45:25.258Z", ~/~/ Начало периода (локальное время клиента) 4946 + "to": "2025-04-21T10:45:25.258Z", ~/~/ Конец периода (локальное время клиента) 4947 + "timezone": 0, ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4948 + "overSpeedDetectionType": 0 ~/~/ тип нарушения (1-дорожное ограничение, 2-фиксированный ) 4949 +} 4950 +))) 4951 + 4952 +((( 4953 + 4954 +))) 4955 + 4956 +((( 4957 +Пример ответа: 4958 +))) 4959 + 4960 +((( 4961 +((( 4962 +[ 4963 + { 4964 + "eventDate": "2025-04-21T10:45:25.267Z", ~/~/ Дата и время события 4965 + "duration": 0, ~/~/ Продолжительность события в секундах 4966 + "maxSpeed": 0, ~/~/ Максимальная скорость 4967 + "speedLimit": 0 ~/~/ Ограничение скорости 4968 + } 4969 +] 4970 +))) 4971 +))) 4972 +))) 4973 + 4974 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 4975 + 4976 + 4977 +== **Запрос списка полей** == 4978 + 4979 +(% class="box successmessage" %) 4980 +((( 4981 +**POST /api/v3/agroLands/find** 4982 +))) 4983 + 4984 +Пример запроса: 4985 + 4986 +((( 4987 +((( 4988 +((( 4989 +{ 4990 + "year": 0, ~/~/ Фильтр по году 4991 + "name": "string", ~/~/ Фильтр по названию 4992 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 4993 +} 4994 +))) 4995 +))) 4996 + 4997 + 4998 +))) 4999 + 5000 +Пример ответа: 5001 + 5002 +((( 5003 +[ 5004 + { 5005 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5006 + "year": 0, ~/~/ Год поля 5007 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 5008 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 5009 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5010 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5011 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5012 + "counts": { ~/~/ Счётчики с/х поля 5013 + "fieldOperations": 0, ~/~/ Количество операций на поле 5014 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5015 + "facts": 0 ~/~/ Счётчик факта 5016 + }, 5017 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5018 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5019 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5020 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5021 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5022 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5023 + "planComment": "string", ~/~/ Комментарий к полю 5024 + "productivity": 0, ~/~/ Урожайность. 5025 + "id": 0, ~/~/ Идентификатор объекта геозоны 5026 + "name": "string", ~/~/ Название объекта геозоны 5027 + "type": 0, ~/~/ Тип объекта геозоны 5028 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5029 + "fname": "string", ~/~/ Имя файла 5030 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5031 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 5032 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 5033 + "description": "string", ~/~/ Описание объекта геозоны 5034 + "area": 0, ~/~/ Площадь, м2 5035 + "perimetr": 0, ~/~/ Периметр, м 5036 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 5037 + } 5038 +] 5039 + 5040 + 5041 +== **Создание нового поля ** == 5042 + 5043 +(% class="box successmessage" %) 5044 +((( 5045 +**POST /api/v3/agroLands** 5046 +))) 5047 + 5048 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 5049 +X-agent - ID клиента 5050 + 5051 +Пример запроса: 5052 + 5053 +((( 5054 +{ 5055 + "extId": "string", 5056 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля 5057 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля 5058 + "display": "string", ~/~/ Настройки отображения 5059 + "year": 0, ~/~/ Год поля 5060 + "name": "string", ~/~/ Наименование 5061 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5062 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 5063 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 5064 + "planComment": "string", ~/~/ Комментарий к полю 5065 + "cropRotations": [ ~/~/ Данные по севообороту 5066 + { 5067 + "landId": 0, ~/~/ ID поля 5068 + "landName": "string", ~/~/ Название поля 5069 + "year": 0, ~/~/ Год урожая 5070 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5071 + "cultureName": "string", ~/~/ Название культуры 5072 + "productivity": 0, ~/~/ Урожайность 5073 + "area": 0, ~/~/ Площадь поля, Га 5074 + "total": 0, ~/~/ Валовый сбор 5075 + "productivityFact": 0, ~/~/ Фактическая урожайность 5076 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5077 + "totalFact": 0, ~/~/ Фактический валовый сбор 5078 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 5079 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 5080 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 5081 + "isyearplan": true, ~/~/ Годовой план 5082 + "comment": "string" ~/~/ Комментарий 5083 + } 5084 + ] 5085 +} 5086 +))) 5087 + 5088 +((( 5089 + 5090 +))) 5091 + 5092 +Пример ответа: 5093 + 5094 +((( 5095 +((( 5096 +{ 5097 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5098 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5099 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5100 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5101 + "cropRotations": [ ~/~/ Данные по севообороту 5102 + { 5103 + "landId": 0, ~/~/ ID поля 5104 + "landName": "string", ~/~/ Название поля 5105 + "year": 0, ~/~/ Год урожая 5106 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5107 + "cultureName": "string", ~/~/ Название культуры 5108 + "productivity": 0, ~/~/ Урожайность 5109 + "area": 0, ~/~/ Площадь поля, Га. 5110 + "total": 0, ~/~/ Валовый сбор 5111 + "productivityFact": 0, ~/~/ Фактическая урожайность 5112 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5113 + "totalFact": 0, ~/~/ Фактический валовый сбор 5114 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 5115 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 5116 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 5117 + "isyearplan": true, ~/~/ годовой план 5118 + "comment": "string" ~/~/ Комментарий 5119 + } 5120 + ], 5121 + "cropVegetation": [ ~/~/ История вегетации поля 5122 + { 5123 + "values": [ ~/~/ Данные вегетации и состояния посева 5124 + { 5125 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5126 + "ndvi": 0 ~/~/ Индекс вегетации 5127 + } 5128 + ], 5129 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5130 + { 5131 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5132 + "type": "string", ~/~/ Тип 5133 + "pictureid": "string" ~/~/ Идентификатор ресурса 5134 + } 5135 + ], 5136 + "states": [ ~/~/ Ключевые даты развития поля 5137 + { 5138 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5139 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5140 + } 5141 + ] 5142 + } 5143 + ], 5144 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 5145 + "counts": { 5146 + "fieldOperations": 0, ~/~/ Количество операций на поле 5147 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5148 + "facts": 0 ~/~/ Счётчик факта 5149 + }, 5150 + "planComment": "string", ~/~/ Комментарий к полю 5151 +))) 5152 + 5153 +((( 5154 + "productivity": 0, ~/~/ Урожайность. 5155 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5156 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 5157 + "year": 0, ~/~/ Год поля 5158 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5159 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5160 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5161 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5162 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 5163 + "id": 0, ~/~/ Идентификатор объекта геозоны 5164 + "name": "string", ~/~/ Название объекта геозоны 5165 + "type": 0, ~/~/ Тип объекта геозоны 5166 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5167 + "fname": "string", ~/~/ Имя файла 5168 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5169 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 5170 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 5171 + "description": "string", ~/~/ Описание объекта геозоны 5172 + "area": 0, ~/~/ Площадь, м2 5173 + "perimetr": 0, ~/~/ Периметр, м 5174 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 5175 +} 5176 + 5177 + 5178 +))) 5179 +))) 5180 +))) 5181 + 5182 +== **Получение поля по id** == 5183 + 5184 +(% class="box infomessage" %) 5185 +((( 5186 +**GET /api/v3/agroLands/{id}** 5187 +))) 5188 + 5189 +Пример запроса: 5190 +id ~/~/ Идентификатор поля 5191 + 5192 +Пример ответа: 5193 + 5194 +((( 5195 +{ 5196 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5197 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5198 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5199 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5200 + "cropRotations": [ ~/~/ Данные по севообороту 5201 + { 5202 + "landId": 0, ~/~/ ID поля 5203 + "landName": "string", ~/~/ Название поля 5204 + "year": 0, ~/~/ Год урожая 5205 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5206 + "cultureName": "string", ~/~/ Название культуры 5207 + "productivity": 0, ~/~/ Урожайность 5208 + "area": 0, ~/~/ Площадь поля, Га 5209 + "total": 0, ~/~/ Валовый сбор 5210 + "productivityFact": 0, ~/~/ Фактическая урожайность 5211 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5212 + "totalFact": 0, ~/~/ Фактический валовый сбор 5213 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 5214 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 5215 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 5216 + "isyearplan": true, ~/~/ План года 5217 + "comment": "string" ~/~/ Комментарий 5218 + } 5219 + ], 5220 + "cropVegetation": [ ~/~/ История вегетации поля 5221 + { 5222 + "values": [ ~/~/ Данные вегетации и состояния посева 5223 + { 5224 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5225 + "ndvi": 0 ~/~/ Индекс вегетации 5226 + } 5227 + ], 5228 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5229 + { 5230 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5231 + "type": "string", ~/~/ Тип 5232 + "pictureid": "string" ~/~/ Идентификатор ресурса 5233 + } 5234 + ], 5235 + "states": [ ~/~/ Ключевые даты развития поля 5236 + { 5237 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5238 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 5239 + } 5240 + ] 5241 + } 5242 + ], 5243 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5244 + "counts": { 5245 + "fieldOperations": 0, ~/~/ Количество операций на поле 5246 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5247 + "facts": 0 ~/~/ Счётчик факта 5248 + }, 5249 + "planComment": "string", ~/~/ Комментарий к полю 5250 + "productivity": 0, ~/~/ Урожайность. 5251 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5252 +))) 5253 + 5254 +((( 5255 +((( 5256 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5257 + "year": 0, ~/~/ Год поля 5258 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5259 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5260 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5261 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5262 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5263 + "id": 0, ~/~/ Идентификатор объекта геозоны 5264 + "name": "string", ~/~/ Название объекта геозоны 5265 + "type": 0, ~/~/ Тип объекта геозоны 5266 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5267 + "fname": "string", ~/~/ Имя файла 5268 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5269 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5270 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5271 + "description": "string", ~/~/ Описание объекта геозоны 5272 + "area": 0, ~/~/ Площадь, м2 5273 + "perimetr": 0, ~/~/ Периметр, м 5274 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5275 +} 5276 +))) 5277 + 5278 + 5279 +((( 5280 +((( 5281 +((( 5282 +== **Изменение поля** == 5283 + 5284 +(% class="box infomessage" %) 5285 +((( 5286 +**PUT /api/v3/agroLands** 5287 +))) 5288 + 5289 +Пример запроса: 5290 + 5291 +((( 5292 +((( 5293 +{ 5294 + "id": 0, ~/~/ Идентификатор поля 5295 + "extId": "string", ~/~/ ExtId 5296 + "shape": "string", ~/~/ Форма поля 5297 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5298 + "display": "string", ~/~/ Настройки отображения 5299 + "year": 0, ~/~/ Год поля 5300 + "name": "string", ~/~/ Наименование 5301 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5302 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5303 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5304 + "planComment": "string", ~/~/Комментарий к полю 5305 + "cropRotations": [ ~/~/ Данные по севообороту 5306 + { 5307 + "landId": 0, ~/~/ ID поля 5308 + "landName": "string", ~/~/ Название поля 5309 + "year": 0, ~/~/ Год урожая 5310 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5311 + "cultureName": "string", ~/~/ Название культуры 5312 + "productivity": 0, ~/~/ Урожайность 5313 + "area": 0, ~/~/ Площадь поля, Га. 5314 + "total": 0, ~/~/ Валовый сбор 5315 + "productivityFact": 0, ~/~/ Фактическая урожайность 5316 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5317 + "totalFact": 0, ~/~/ Фактический валовый сбор 5318 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5319 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5320 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5321 + "isyearplan": true, 5322 + "comment": "string" ~/~/ Комментарий 5323 + } 5324 + ], 5325 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5326 +} 5327 +))) 5328 +))) 5329 + 5330 +((( 5331 + 5332 +))) 5333 + 5334 +Пример ответа: 5335 + 5336 +((( 5337 +((( 5338 +((( 5339 +{ 5340 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5341 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5342 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5343 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5344 + "cropRotations": [ ~/~/ Данные по севообороту 5345 + { 5346 + "landId": 0, ~/~/ ID поля 5347 + "landName": "string", ~/~/ Название поля 5348 + "year": 0, ~/~/ Год урожая 5349 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5350 + "cultureName": "string", ~/~/ Название культуры 5351 + "productivity": 0, ~/~/ Урожайность 5352 + "area": 0, ~/~/ Площадь поля, Га 5353 + "total": 0, ~/~/ Валовый сбор 5354 + "productivityFact": 0, ~/~/ Фактическая урожайность 5355 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5356 + "totalFact": 0, ~/~/ Фактический валовый сбор 5357 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5358 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5359 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5360 + "isyearplan": true, ~/~/ 5361 + "comment": "string" ~/~/ Комментарий 5362 + } 5363 + ], 5364 + "cropVegetation": [ ~/~/ История вегетации поля 5365 + { 5366 + "values": [ ~/~/ Данные вегетации и состояния посева 5367 + { 5368 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5369 + "ndvi": 0 ~/~/ Индекс вегетации 5370 + } 5371 + ], 5372 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5373 + { 5374 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5375 + "type": "string", ~/~/ Тип 5376 + "pictureid": "string" ~/~/ Идентификатор ресурса 5377 + } 5378 + ], 5379 + "states": [ ~/~/ Ключевые даты развития поля 5380 + { 5381 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5382 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5383 + } 5384 + ] 5385 + } 5386 + ], 5387 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5388 + "counts": { 5389 + "fieldOperations": 0, ~/~/ Количество операций на поле 5390 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5391 + "facts": 0 ~/~/ Счётчик факта 5392 + }, 5393 + "planComment": "string", ~/~/ Комментарий к полю 5394 + "productivity": 0, ~/~/ Урожайность. 5395 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5396 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5397 + "year": 0, ~/~/ Год поля 5398 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5399 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5400 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5401 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5402 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5403 + "id": 0, ~/~/ Идентификатор объекта геозоны 5404 + "name": "string", ~/~/ Название объекта геозоны 5405 + "type": 0, ~/~/ Тип объекта геозоны 5406 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5407 + "fname": "string", ~/~/ Имя файла 5408 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5409 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5410 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5411 + "description": "string", ~/~/ Описание объекта геозоны 5412 + "area": 0, ~/~/ Площадь, м2 5413 + "perimetr": 0, ~/~/ Периметр, м 5414 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5415 +} 5416 +))) 5417 +))) 5418 +))) 5419 +))) 5420 +))) 5421 + 5422 + 5423 +== **Редактирование года урожая ** == 5424 + 5425 +(% class="box successmessage" %) 5426 +((( 5427 +**POST /api/v3/agroLands/updateOpenCloseYear** 5428 +))) 5429 + 5430 +Пример запроса: 5431 + 5432 +((( 5433 +((( 5434 +{ 5435 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5436 + 0 5437 + ], 5438 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5439 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5440 +} 5441 +))) 5442 + 5443 + 5444 +))) 5445 + 5446 +Пример ответа: 5447 + 5448 +((( 5449 +((( 5450 +{ 5451 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5452 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5453 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5454 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5455 + "cropRotations": [ ~/~/ Данные по севообороту 5456 + { 5457 + "landId": 0, ~/~/ ID поля 5458 + "landName": "string", ~/~/ Название поля 5459 + "year": 0, ~/~/ Год урожая 5460 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5461 + "cultureName": "string", ~/~/ Название культуры 5462 + "productivity": 0, ~/~/ Урожайность 5463 + "area": 0, ~/~/ Площадь поля, Га. 5464 + "total": 0, ~/~/ Валовый сбор 5465 + "productivityFact": 0, ~/~/ Фактическая урожайность 5466 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5467 + "totalFact": 0, ~/~/ Фактический валовый сбор 5468 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5469 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5470 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5471 + "isyearplan": true, ~/~/ 5472 + "comment": "string" ~/~/ Комментарий 5473 + } 5474 + ], 5475 + "cropVegetation": [ ~/~/ История вегетации поля 5476 + { 5477 + "values": [ ~/~/ Данные вегетации и состояния посева 5478 + { 5479 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5480 + "ndvi": 0 ~/~/ Индекс вегетации 5481 + } 5482 + ], 5483 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5484 + { 5485 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5486 + "type": "string", ~/~/ Тип 5487 + "pictureid": "string" ~/~/ Идентификатор ресурса 5488 + } 5489 + ], 5490 + "states": [ ~/~/ Ключевые даты развития поля 5491 + { 5492 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5493 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5494 + } 5495 + ] 5496 + } 5497 + ], 5498 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5499 + "counts": { 5500 + "fieldOperations": 0, ~/~/ Количество операций на поле 5501 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5502 + "facts": 0 ~/~/ Счётчик факта 5503 + }, 5504 + "planComment": "string", ~/~/ Комментарий к полю 5505 + "productivity": 0, ~/~/ Урожайность. 5506 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5507 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5508 + "year": 0, ~/~/ Год поля 5509 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5510 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5511 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5512 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5513 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5514 + "id": 0, ~/~/ Идентификатор объекта геозоны 5515 + "name": "string", ~/~/ Название объекта геозоны 5516 + "type": 0, ~/~/ Тип объекта геозоны 5517 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5518 + "fname": "string", ~/~/ Имя файла 5519 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5520 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5521 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5522 + "description": "string", ~/~/ Описание объекта геозоны 5523 + "area": 0, ~/~/ Площадь, м2 5524 + "perimetr": 0, ~/~/ ериметр, м 5525 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5526 +} 5527 + 5528 + 5529 +== **Какие поля посещал объект** == 5530 + 5531 +(% class="box successmessage" %) 5532 +((( 5533 +**POST /api/v3/agroLands/visitingByVehicle** 5534 +))) 5535 + 5536 +Пример запроса: 5537 + 5538 +{ 5539 + "vehicleId": 0, ~/~/ id объекта 5540 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 5541 + "byTime": 0, ~/~/ Объединение событий по времени 5542 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 5543 + "byDist": 0, ~/~/ Объединение событий по расстоянию 5544 + "from": "2025-07-29T12:20:28.815Z", ~/~/ Начало периода (локальное время клиента) 5545 + "to": "2025-07-29T12:20:28.815Z", ~/~/ Конец периода (локальное время клиента) 5546 + "timezone": 0 ~/~/ Таймзона клиента, в часах. Если не передана - то считается как +3, MSK 5547 +} 5548 + 5549 +Пример ответа: 5550 + 5551 +[ 5552 + { 5553 + "fieldId": 0, ~/~/ id объекта 5554 + "vehicleName": "string", ~/~/ Наименование объекта 5555 + "fieldName": "string", ~/~/ Наименование поля 5556 + "fuelUsage": 0, ~/~/ Расход топлива, л/га 5557 + "area": 0, ~/~/ Пройдено, га (информация из встроенного агрегата в модели объекта при наличии агрегата) 5558 + "vehicleId": 0, ~/~/ Идентификатор ТС 5559 + "start": "2025-07-29T12:20:28.855Z", ~/~/ Начало посещения 5560 + "end": "2025-07-29T12:20:28.855Z", ~/~/ Конец посещения 5561 + "durationSeconds": 0, ~/~/ Продолжительность посещения внутри поля 5562 + "mileage": 0 ~/~/ Пробег 5563 + } 5564 +] 5565 +))) 5566 + 5567 + 5568 +== **Посещение поля объектами ** == 5569 + 5570 +(% class="box successmessage" %) 5571 +((( 5572 +**POST /api/v3/agroLands/visitingByField** 5573 +))) 5574 + 5575 +Пример запроса: 5576 +{ 5577 + "fieldId": 0, ~/~/ ID поля 5578 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 5579 + "byTime": 0, ~/~/ Объединение событий по времени 5580 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 5581 + "byDist": 0, ~/~/ Объединение событий по расстоянию 5582 + "from": "2025-07-29T11:44:28.218Z", ~/~/ Начало периода (локальное время клиента) 5583 + "to": "2025-07-29T11:44:28.218Z", ~/~/ Конец периода (локальное время клиента) 5584 + "timezone": 0 ~/~/ Таймзона клиента, в часах. Если не передана - то считается как +3, MSK 5585 +} 5586 + 5587 +Пример ответа: 5588 + 5589 +[ 5590 + { 5591 + "fieldId": 0, ~/~/ ID поля 5592 + "vehicleName": "string", ~/~/ Наименование объекта 5593 + "fieldName": "string", ~/~/ Имя поля 5594 + "fuelUsage": 0, ~/~/ Расход топлива, л/га 5595 + "area": 0, ~/~/ Пройдено, га (информация из встроенного агрегата в модели объекта при наличии агрегата) 5596 + "vehicleId": 0, ~/~/ Идентификатор ТС 5597 + "start": "2025-07-29T11:44:28.219Z", ~/~/ Начало посещения 5598 + "end": "2025-07-29T11:44:28.219Z", ~/~/ Конец посещения 5599 + "durationSeconds": 0, ~/~/ Продолжительность посещения внутри поля 5600 + "mileage": 0 ~/~/ Пробег 5601 + } 5602 +] 5603 + 5604 + 5605 +== **Удаление существующего поля** == 5606 + 5607 +(% class="box errormessage" %) 5608 +((( 5609 +**DELETE /api/v3/agroLands/{id}** 5610 +))) 5611 + 5612 +Пример запроса: 5613 +id ~/~/ Идентификатор поля 5614 + 5615 +Пример ответа: 5616 + 5617 +((( 5618 +200 ~/~/ Успех 5619 + 5620 + 5621 +))) 5622 + 5623 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5624 +))) 5625 +))) 5626 +))) 5627 + 5628 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 5629 + 5630 + 5631 +(% class="box infomessage" %) 5632 +((( 5633 +**GET api/v3/Vehicles/recyclebin/all** 5634 +))) 5635 + 5636 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 5637 + 5638 +Параметр запроса: {parentId} - идентификатор агента 5639 + 5640 +В заголовках запроса: X-Auth: Токен авторизации 5641 + 5642 +Ответ: 5643 + 5644 +[ 5645 + { 5646 + "recordTime": "", ~/~/Время записи 5647 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5648 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5649 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5650 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5651 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5652 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5653 + "items": [ ~/~/ 5654 +nullable: true ~/~/Детали 5655 + { 5656 + "name": "string", ~/~/наименование столбца 5657 + "value": "string" ~/~/содержание столбца 5658 + } 5659 + ] 5660 + }, 5661 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5662 + "string" 5663 + ] 5664 + } 5665 +] 5666 + 5667 + 5668 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) == 5669 + 5670 +(% class="box infomessage" %) 5671 +((( 5672 +**POST api/v3/Vehicles/recyclebin/erase** 5673 +))) 5674 + 5675 +В заголовках запроса: X-Auth: Токен авторизации 5676 + 5677 +Пример запроса: 5678 + 5679 +[ 5680 +0 5681 +] 5682 + 5683 + 5684 +Пример ответа: 5685 + 5686 +[ 5687 +{ 5688 + "recordTime": "", ~/~/Время записи 5689 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5690 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5691 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5692 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5693 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5694 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5695 + "items": [ ~/~/Детали 5696 + { 5697 + "name": "", ~/~/Имя свойства 5698 + "value": "" ~/~/Значение свойства 5699 + } 5700 + ] 5701 + }, 5702 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5703 + "" 5704 + ] 5705 + } 5706 +] 5707 + 5708 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 5709 + 5710 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 5711 + 5712 +(% class="box infomessage" %) 5713 +((( 5714 +**POST api/v3/Vehicles/recyclebin/restore** 5715 +))) 5716 + 5717 +В заголовках запроса: X-Auth: Токен авторизации 5718 + 5719 +Параметры в теле запроса (JSON): 5720 + 5721 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5722 + 5723 +В заголовках запроса: X-Auth: Токен авторизации 5724 + 5725 + 5726 +Пример запроса: 5727 + 5728 +((( 5729 +[ 5730 +))) 5731 + 5732 +((( 5733 + 0 5734 +))) 5735 + 5736 +((( 5737 +] 5738 +))) 5739 + 5740 + 5741 +Пример ответа: 5742 + 5743 +[ 5744 +{ 5745 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5746 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5747 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5748 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5749 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5750 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5751 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5752 + "items": [ ~/~/Детали 5753 + { 5754 + "name": "string", ~/~/Имя свойства 5755 + "value": "string" ~/~/Значение свойства 5756 + } 5757 + ] 5758 + }, 5759 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5760 + "string" 5761 + ] 5762 + } 5763 +] 5764 + 5765 + 5766 += **Раздел: Журнал заданий ** = 5767 + 5768 + 5769 +== **Создание задания в Журнале заданий** == 5770 + 5771 +(% class="box infomessage" %) 5772 +((( 5773 +**POST /api/v3/vehicletasks** 5774 +))) 5775 + 5776 +Пример запроса: 5777 + 5778 +((( 5779 +{ 5780 + "vehicleId": 0, ~/~/ Идентификатор ТС 5781 + "description": "string", ~/~/ Описание 5782 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5783 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5784 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы 5785 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы 5786 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5787 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5788 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5789 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5790 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5791 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5792 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5793 + "cost": { 5794 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5795 + "Name": "string", ~/~/ Наименование 5796 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection ) 5797 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5798 + "Norm": 0 ~/~/ Норма внесения 5799 + }, 5800 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 5801 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5802 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания 5803 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления 5804 + "deleted": true, ~/~/ Признак удаления 5805 + "extId": "string", 5806 + "GeoIds": [ ~/~/ Cвязанные поля 5807 + 0 5808 + ] 5809 +} 5810 +))) 5811 + 5812 + 5813 +Пример ответа: 5814 + 5815 +{ 5816 + "vehicleId": 0, ~/~/ Идентификатор ТС 5817 + "description": "string", ~/~/ Описание 5818 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5819 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5820 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5821 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5822 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5823 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5824 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5825 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5826 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5827 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5828 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5829 + "cost": { 5830 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5831 + "Name": "string", ~/~/ Наименование 5832 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5833 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5834 + "Norm": 0 ~/~/ Норма внесения 5835 + }, 5836 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5837 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5838 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5839 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5840 + "deleted": true, ~/~/ Признак удаления 5841 + "extId": "string", ~/~/ ExtId 5842 + "GeoIds": [ ~/~/ Связанные поля 5843 + 0 5844 + ] 5845 +} 5846 + 5847 + 5848 +== **Редактирование задания в Журнале заданий** == 5849 + 5850 +(% class="box successmessage" %) 5851 +((( 5852 +**PUT /api/v3/vehicletasks** 5853 +))) 5854 + 5855 +Пример запроса: 5856 + 5857 +((( 5858 +{ 5859 + "vehicleId": 0, ~/~/ Идентификатор ТС 5860 + "description": "string", ~/~/ Описание 5861 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5862 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5863 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы 5864 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы 5865 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5866 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5867 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5868 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5869 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5870 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5871 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5872 + "cost": { 5873 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5874 + "Name": "string", ~/~/ Наименование 5875 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5876 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5877 + "Norm": 0 ~/~/ Норма внесения 5878 + }, 5879 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5880 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5881 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания 5882 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления 5883 + "deleted": true, ~/~/ Признак удаления 5884 + "extId": "string", ~/~/ ExtId 5885 + "GeoIds": [ ~/~/ Связанные поля 5886 + 0 5887 + ] 5888 +} 5889 +))) 5890 + 5891 + 5892 +Пример ответа: 5893 + 5894 +{ 5895 + "vehicleId": 0, ~/~/ Идентификатор ТС 5896 + "description": "string", ~/~/ Описание 5897 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5898 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5899 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5900 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5901 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5902 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5903 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5904 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5905 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5906 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5907 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5908 + "cost": { 5909 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5910 + "Name": "string", ~/~/ Наименование 5911 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5912 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5913 + "Norm": 0 ~/~/ Норма внесения 5914 + }, 5915 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5916 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5917 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5918 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5919 + "deleted": true, ~/~/ Признак удаления 5920 + "extId": "string", ~/~/ ExtId 5921 + "GeoIds": [ ~/~/ Связанные поля 5922 + 0 5923 + ] 5924 +} 5925 + 5926 + 5927 +== **Удаление задания в Журнале заданий** == 5928 + 5929 +(% class="box warningmessage" %) 5930 +((( 5931 +**DELETE /api/v3/vehicletasks** 5932 +))) 5933 + 5934 +Пример запроса: 5935 + 5936 +((( 5937 +[ 5938 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 5939 +] 5940 +))) 5941 + 5942 +((( 5943 + 5944 +))) 5945 + 5946 +Пример ответа: 5947 + 5948 +{ 5949 + "vehicleId": 0, ~/~/ Идентификатор ТС 5950 + "description": "string", ~/~/ Описание 5951 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5952 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5953 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5954 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5955 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5956 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5957 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5958 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5959 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5960 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5961 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5962 + "cost": { 5963 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5964 + "Name": "string", ~/~/ Наименование 5965 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5966 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5967 + "Norm": 0 ~/~/ Норма внесения 5968 + }, 5969 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5970 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5971 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5972 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5973 + "deleted": true, ~/~/ Признак удаления 5974 + "extId": "string", ~/~/ ExtId 5975 + "GeoIds": [ ~/~/ Связанные поля 5976 + 0 5977 + ] 5978 +} 5979 + 5980 + 5981 +== **Получение списка Журнала заданий** == 5982 + 5983 +(% class="box infomessage" %) 5984 +((( 5985 +**POST /api/v3/vehicletasks/getbyperiod** 5986 +))) 5987 + 5988 +Пример запроса: 5989 + 5990 +((( 5991 +{ 5992 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода. 5993 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода. 5994 + "TimeZone": 0, ~/~/ Часовой пояс. 5995 + "OperationsIds": [ ~/~/ Идентификаторы видов работ для фильтрации журнала 5996 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 5997 + ], 5998 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала 5999 + 0 6000 + ], 6001 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала 6002 + 0 6003 + ], 6004 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска. 6005 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 6006 +} 6007 +))) 6008 + 6009 + 6010 +Пример ответа: 6011 + 6012 +((( 6013 +{ 6014 + "total": 0, ~/~/ Общее количество записей 6015 + "pages": 0, ~/~/ Общее количество страниц 6016 + "currentPage": 0, ~/~/ Текущая страница 6017 + "items": [ ~/~/ Записи 6018 + { 6019 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 6020 + "isGroup": true, ~/~/ Вид задания (true - групповое, иначе - одиночное). 6021 + "name": "string", ~/~/ Название задания. 6022 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc 6023 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc 6024 + "workKind": "string", ~/~/ Вид работ 6025 + "techOp": "string", ~/~/ Тех. операция 6026 + "trailerModel": "string", ~/~/ Модель агрегата 6027 + "width": "string", ~/~/ Ширина, м 6028 + "speed": "string", ~/~/ Тех. скорость 6029 + "fields": "string", ~/~/ Поля 6030 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га) 6031 + "vehicles": "string", ~/~/ Объект-модель 6032 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов) 6033 + "drivers": "string", ~/~/ Водители 6034 + "tmc": "string", ~/~/ ТМЦ 6035 + "client": "string", ~/~/ Клиент 6036 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 6037 + "dep": "string", ~/~/ Подразделение 6038 + "geoIds": [ ~/~/ Связанные поля 6039 + 0 6040 + ] 6041 + } 6042 + ] 6043 +} 6044 +))) 6045 + 6046 + 6047 += **Раздел: Роли** = 6048 + 6049 +== **Получение списка клиентских и системных ролей пользователя ** == 6050 + 6051 +(% class="box successmessage" %) 6052 +((( 6053 +**POST /api/v3/groups/find** 6054 +))) 6055 + 6056 +Пример запроса: 6057 + 6058 +((( 6059 +{ 6060 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента содержащий пользовательские роли 6061 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей 6062 +} 6063 +))) 6064 + 6065 +((( 6066 + 6067 +))) 6068 + 6069 +((( 6070 +Пример ответа: 6071 +))) 6072 + 6073 +((( 6074 +((( 6075 +{ 6076 + "groups": [ ~/~/ Системные роли пользователя 6077 + { 6078 + "code": "string", ~/~/ Код роли. 6079 + "name": "string", ~/~/ Имя 6080 + "shortName": "string" ~/~/ Короткое имя 6081 + } 6082 + ], 6083 + "customGroups": [ ~/~/ Системные роли пользователя 6084 + { 6085 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор роли. 6086 + "name": "string", ~/~/ Наименование 6087 + "shortName": "string", ~/~/ Короткое наименование 6088 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор владельца 6089 + } 6090 + ] 6091 +} 6092 +))) 6093 +))) 6094 + 6095 +((( 6096 + 6097 +))) 6098 + 6099 +((( 6100 + 6101 +))) 6102 + 6103 += **Раздел: Локатор ** = 6104 + 6105 + 6106 +== **Получение данных по локатору** == 6107 + 6108 +(% class="box infomessage" %) 6109 +((( 6110 +**GET /api/v3/locators/{locatorId}** 6111 +))) 6112 + 6113 +В запросе указывается locatorid - идентификатор локатора 6114 + 6115 + 6116 +Пример ответа: 6117 + 6118 +((( 6119 +((( 6120 +{ 6121 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6122 + 0 6123 + ], 6124 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6125 + 0 6126 + ], 6127 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6128 + 0 6129 + ], 6130 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 6131 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 6132 + "agentName": "string", ~/~/ Наименование агента. 6133 + "isEnabled": true, ~/~/ Активность 6134 + "created": "2025-05-26T11:31:05.399Z", ~/~/ Дата создания 6135 + "updated": "2025-05-26T11:31:05.399Z", ~/~/ Дата обновления 6136 + "name": "string", ~/~/ Наименование. 6137 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 6138 + "activationMode": 0, ~/~/ Определяет вид активации локаторов ( 0 - сейчас, 1 - запланировать на время) 6139 + "activationTime": "2025-05-26T11:31:05.399Z", ~/~/ Время активации 6140 + "validity": 0, ~/~/ Значение срока действия 6141 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 6142 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6143 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 6144 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 6145 + "url": "string", ~/~/ Ссылка 6146 + "language": 0, ~/~/ ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6147 + 6148 + "showVehicleName": true, ~/~/ Наименование объекта 6149 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6150 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6151 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6152 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6153 + "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ГИС) 6154 + 6155 + 1 6156 + 6157 + ] 6158 +} 6159 +))) 6160 +))) 6161 + 6162 + 6163 +((( 6164 +((( 6165 + 6166 +))) 6167 +))) 6168 + 6169 + 6170 +== **Создание локатора** == 6171 + 6172 +(% class="box successmessage" %) 6173 +((( 6174 +**POST /api/v3/locators** 6175 +))) 6176 + 6177 +Пример запроса: 6178 + 6179 +((( 6180 +{ 6181 + "isEnabled": true, ~/~/ Активность 6182 + "name": "string", ~/~/ Наименование локатора 6183 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 6184 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 6185 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6186 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6187 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6188 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 6189 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6190 + 0 6191 + ], 6192 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6193 + 0 6194 + ], 6195 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6196 + 0 6197 + ], 6198 + 6199 + "showVehicleName": true, ~/~/ Наименование объекта 6200 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6201 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6202 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6203 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6204 + "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ГИС) 6205 + 6206 + 1 6207 + 6208 + ] 6209 +} 6210 +))) 6211 + 6212 + 6213 +Пример ответа: 6214 + 6215 +((( 6216 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора 6217 +))) 6218 + 6219 + 6220 +== **Выводит список локаторов ** == 6221 + 6222 +(% class="box successmessage" %) 6223 +((( 6224 +**POST /api/v3/locators/find** 6225 +))) 6226 + 6227 +Пример запроса: 6228 + 6229 +((( 6230 +{ 6231 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор клиента 6232 +} 6233 +))) 6234 + 6235 +((( 6236 + 6237 +))) 6238 + 6239 +((( 6240 + 6241 +))) 6242 + 6243 + 6244 +Пример ответа: 6245 + 6246 +((( 6247 +[ 6248 + { 6249 + "vehiclesCount": 0, ~/~/ Количество объектов. 6250 + "geozonesCount": 0, ~/~/ Количество геозон. 6251 + "fieldsCount": 0, ~/~/ Количество полей. 6252 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 6253 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 6254 + "agentName": "string", ~/~/ Наименование агента. 6255 + "isEnabled": true, ~/~/ Активность локатора 6256 + "created": "2025-07-03T12:57:58.738Z", ~/~/ Дата создания 6257 + "updated": "2025-07-03T12:57:58.738Z", ~/~/ Дата обновления 6258 + "name": "string", ~/~/ Наименование локатора 6259 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 6260 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6261 + "activationTime": "2025-07-03T12:57:58.738Z", ~/~/ Дата и время активации правила (UTC) 6262 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6263 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 6264 + "autoProlongation": true, ~/~/ Автоматическая пролонгация 6265 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 6266 + "creatorUserName": "string", ~/~/ Наименование пользователя создавшего локатора 6267 + "url": "string", ~/~/ ссылка на локатор 6268 + "language": 1, ~/~/ Язык локатора(1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6269 + "showVehicleName": true, ~/~/ Наименование объекта 6270 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6271 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6272 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6273 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6274 + "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ГИС) 6275 + 6276 + 0 6277 + ] 6278 + } 6279 +] 6280 +))) 6281 + 6282 + 6283 +== **Изменение локатора** == 6284 + 6285 +(% class="box infomessage" %) 6286 +((( 6287 +**PUT /api/v3/locators** 6288 +))) 6289 + 6290 +Пример запроса: 6291 + 6292 +((( 6293 +{ 6294 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6295 + "isEnabled": true, ~/~/ Активность 6296 + "name": "string", ~/~/ Наименование 6297 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6298 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 6299 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6300 + "autoProlongation": true, ~/~/ Автопродление срока действия 6301 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6302 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6303 + 0 6304 + ], 6305 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6306 + 0 6307 + ], 6308 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6309 + 0 6310 + ], 6311 + "showVehicleName": true, ~/~/ Наименование объекта 6312 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6313 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6314 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6315 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6316 + "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ГИС) 6317 + 6318 + 0 6319 + 6320 + ] 6321 +} 6322 + 6323 + 6324 +))) 6325 + 6326 +Пример ответа: 6327 + 6328 +200 ~/~/ Success 6329 + 6330 + 6331 +== **Удалить локатор** == 6332 + 6333 +(% class="box warningmessage" %) 6334 +((( 6335 +**DELETE /api/v3/locators** 6336 +))) 6337 + 6338 +Пример запроса: 6339 + 6340 +((( 6341 +[ 6342 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора 6343 +] 6344 +))) 6345 + 6346 + 6347 += **Раздел: Яндекс Маршруты** = 6348 + 6349 + 6350 +== **Возвращение списка маршрутов** == 6351 + 6352 +(% class="box infomessage" %) 6353 +((( 6354 +**GET /api/v3/TransportRoutes** 6355 +))) 6356 + 6357 +Пример запроса: 6358 +Id ~/~/ Идентификатор поля 6359 + 6360 +Пример ответа: 6361 + 6362 +((( 6363 +[ 6364 + { 6365 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 6366 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6367 + "name": "string", ~/~/ Наименование маршрута. 6368 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6369 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6370 + 0 6371 + ] 6372 + } 6373 +] 6374 +))) 6375 + 6376 + 6377 +== **Добавить маршрут** == 6378 + 6379 +(% class="box infomessage" %) 6380 +((( 6381 +**POST /api/v3/TransportRoutes** 6382 +))) 6383 + 6384 +Пример запроса: 6385 +{ 6386 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6387 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6388 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6389 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6390 + 0 6391 + ] 6392 +} 6393 + 6394 + 6395 +Пример ответа: 6396 + 6397 +((( 6398 +{ 6399 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6400 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6401 + "name": "string", ~/~/ Определяет наименование маршрута 6402 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6403 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6404 + 0 6405 + ] 6406 +} 6407 +))) 6408 + 6409 + 6410 +== **Обновление маршрута** == 6411 + 6412 +(% class="box successmessage" %) 6413 +((( 6414 +**PUT /api/v3/TransportRoutes** 6415 +))) 6416 + 6417 +Пример запроса: 6418 + 6419 +((( 6420 +{ 6421 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6422 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6423 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6424 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6425 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6426 + 0 6427 + ] 6428 +} 6429 +))) 6430 + 6431 +Пример ответа: 6432 + 6433 +((( 6434 +{ 6435 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6436 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6437 + "name": "string", ~/~/ Определяет наименование маршрута 6438 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6439 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6440 + 0 6441 + ] 6442 +} 6443 +))) 6444 + 6445 + 6446 +== **Получить связки маршрутов ТС** == 6447 + 6448 +(% class="box infomessage" %) 6449 +((( 6450 +**POST /api/v3/TransportRoutes/getroutesvehicles** 6451 +))) 6452 + 6453 +Пример запроса: 6454 + 6455 +((( 6456 +[ 6457 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ идентификатор маршрута 6458 +] 6459 +))) 6460 + 6461 +Пример ответа: 6462 + 6463 +((( 6464 +[ 6465 + { 6466 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС 6467 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута 6468 + } 6469 +] 6470 +))) 6471 + 6472 + 6473 +== **Удалить маршрут** == 6474 + 6475 +(% class="box warningmessage" %) 6476 +((( 6477 +**DELETE /api/v3/TransportRoutes/{id}** 6478 +))) 6479 + 6480 +Пример запроса: 6481 +Id ~/~/ Идентификатор поля 6482 + 6483 + 6484 += **Раздел: Управление доступа к машинам** = 6485 + 6486 + 6487 +== Получение списка транспортных средств видимых пользователю == 6488 + 6489 +(% class="box infomessage" %) 6490 +((( 6491 +**GET /api/v3/UserVisibleVehicles/{userId}** 6492 +))) 6493 + 6494 +Пример ответа: 6495 + 6496 +((( 6497 +{ 6498 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6499 + 0 6500 + ] 6501 +} 6502 +))) 6503 + 6504 + 6505 +== Задает видимость транспортных средств пользователю == 6506 + 6507 +(% class="box infomessage" %) 6508 +((( 6509 +**POST /api/v3/UserVisibleVehicles** 6510 +))) 6511 + 6512 +Пример запроса: 6513 + 6514 +((( 6515 +((( 6516 +{ 6517 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя 6518 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6519 + 0 6520 + ] 6521 +} 6522 +))) 6523 + 6524 +((( 6525 + 6526 +))) 6527 + 6528 +((( 6529 +Пример ответа : 6530 +))) 6531 + 6532 +((( 6533 + 6534 +))) 6535 + 6536 +((( 6537 +200 ~/~/ Success 6538 +))) 6539 +))) 6540 + 6541 + 3922 3922 (% class="box" lang="en-US" style="text-align: center;" %) 3923 3923 ((( 3924 3924 (% 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]] **