Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/05/06 12:41
<
>
edited by Андрей Калиновский
on 2024/02/28 10:31
on 2024/02/28 10:31
edited by Андрей Калиновский
on 2025/05/06 12:38
on 2025/05/06 12:38
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- 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" %)Идентификатор клиента-родителя ... ... @@ -226,7 +226,6 @@ 226 226 "bankKS": "string" ~/~/ корр. счёт 227 227 } 228 228 229 - 230 230 Ответ: 231 231 232 232 { ... ... @@ -420,7 +420,6 @@ 420 420 ], 421 421 "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 422 422 } 423 - 424 424 { 425 425 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 426 426 "lastName": "string", ... ... @@ -434,12 +434,8 @@ 434 434 435 435 (% style="text-align:left" %) 436 436 (% style="color:#000000; font-weight:normal" %)Ответ: 437 - 438 -(% style="text-align:left" %) 439 -(% style="color:#000000; font-weight:normal" %){ 440 - 441 -(% style="text-align:left" %) 442 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 472 +{ 473 + "id": "" , ~/~/ ID пользователя 443 443 "lastName": "" , ~/~/ Фамилия , 444 444 "firstName": "" , ~/~/ Имя 445 445 "position": "" , ~/~/ Должность ... ... @@ -456,11 +456,9 @@ 456 456 "kind": "" , ~/~/ тип аутентификации 457 457 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 458 458 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 490 +} 459 459 460 -(% style="text-align:left" %) 461 -(% style="color:#000000; font-weight:normal" %)} 462 462 463 - 464 464 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 465 465 466 466 (% class="box infomessage" %) ... ... @@ -480,19 +480,16 @@ 480 480 481 481 (% style="color:#000000" %)Параметры в теле запроса (JSON): 482 482 483 -(% style="color:#000000" %){ 484 - 512 +(% style="color:#000000" %){(%%) 485 485 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 486 486 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 487 487 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 488 488 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 489 - 490 490 (% style="color:#000000" %)} 491 491 492 492 (% style="color:#000000" %)Ответ: 493 493 494 494 (% style="color:#000000" %){ (%%) 495 - 496 496 "id": "" , ~/~/ идентификатор пользователя 497 497 "lastName": "" , ~/~/ фамилия 498 498 "firstName": "" , ~/~/ имя ... ... @@ -506,7 +506,6 @@ 506 506 "sessionDuration":"", ~/~/ длительность сессии в минутах 507 507 "status": "1", ~/~/ статус пользователя 508 508 "lastLogged": "", ~/~/ дата/время последней авторизации 509 - 510 510 (% style="color:#000000" %)} 511 511 512 512 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -580,10 +580,8 @@ 580 580 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 581 581 582 582 (% lang="en-US" style="text-align:left" %) 583 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 584 - 585 -(% lang="en-US" style="text-align:left" %) 586 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 608 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 609 + "id": "" , ~/~/ ID пользователя 587 587 "lastName": "" , ~/~/ фамилия 588 588 "firstName": "" , ~/~/ имя 589 589 "position": "" , ~/~/ должность ... ... @@ -605,9 +605,7 @@ 605 605 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 606 606 }, 607 607 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 608 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 609 - 610 -(% lang="en-US" style="text-align:left" %) 631 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 611 611 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 612 612 613 613 (% lang="en-US" style="text-align:left" %) ... ... @@ -614,10 +614,8 @@ 614 614 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 615 615 616 616 (% lang="en-US" style="text-align:left" %) 617 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 618 - 619 -(% lang="en-US" style="text-align:left" %) 620 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 638 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 639 + "id": "" , ~/~/ идентификатор пользователя 621 621 "lastName": "" , ~/~/ фамилия 622 622 "firstName": "" , ~/~/ имя 623 623 "position": "" , ~/~/ должность ... ... @@ -638,10 +638,8 @@ 638 638 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 639 639 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 640 640 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 660 +} 641 641 642 -(% lang="en-US" style="text-align:left" %) 643 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 644 - 645 645 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 646 646 647 647 (% class="box warningmessage" %) ... ... @@ -661,12 +661,10 @@ 661 661 662 662 (% style="color:#000000" %)Параметры в теле запроса (JSON): 663 663 664 -(% style="color:#000000" %){ 665 - 681 +(% style="color:#000000" %){(%%) 666 666 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 667 667 "description": "" , ~/~/ описание 668 668 "data": "" , ~/~/ данные, связанные со сменой статуса 669 - 670 670 (% style="color:#000000" %)} 671 671 672 672 (% style="text-align:left" %) ... ... @@ -688,7 +688,7 @@ 688 688 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 689 689 690 690 [ 691 - 706 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 692 692 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 693 693 ] 694 694 ... ... @@ -994,7 +994,7 @@ 994 994 995 995 Ответ: В случае успеха **Success 200** 996 996 997 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 1012 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 998 998 999 999 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 1000 1000 ... ... @@ -1023,6 +1023,17 @@ 1023 1023 1024 1024 ((( 1025 1025 { 1041 + 1042 +((( 1043 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1044 + "IsSackEnabled": true, ~/~/ Определяет, должен ли внутренний сервер отвечать устройству сообщением SACK при получении сообщения от устройства 1045 +))) 1046 + 1047 +((( 1048 + ~/~/Используется только на ТС с типом устройства quecklink gv56, quecklink gv58, quecklink 1049 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1050 +))) 1051 + 1026 1026 "vehicleId": "", ~/~/ ID объекта 1027 1027 "name": "", ~/~/ Имя объекта 1028 1028 "imei": "", ~/~/ IMEI объекта ... ... @@ -1030,19 +1030,15 @@ 1030 1030 "deviceTypeName": "", ~/~/ Название типа устройства 1031 1031 "sim1": "", ~/~/ Номер SIM1 1032 1032 "sim2": "", ~/~/ Номер SIM2 1033 - 1034 1034 "parentId": "", ~/~/ ID клиента-родителя 1035 1035 "parentName": "", ~/~/ Наименование клиента-родителя 1036 1036 "modelId": "", ~/~/ ID модели объекта 1037 1037 "modelName": "", ~/~/ Имя модели объекта 1038 - 1039 1039 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1040 1040 "unitName": "string", ~/~/ Наименование подразделения 1041 1041 "status": 0, ~/~/ Статус объекта 1042 - 1043 1043 "createdAt": "", ~/~/ Дата создания объекта 1044 1044 }, 1045 - 1046 1046 "customFields": [ ~/~/ Произвольные поля 1047 1047 { 1048 1048 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -1065,8 +1065,7 @@ 1065 1065 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1066 1066 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1067 1067 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1068 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1069 - 1090 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1070 1070 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1071 1071 "mileageCoeff": 0, ~/~/ коэффициент пробега 1072 1072 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1096,7 +1096,6 @@ 1096 1096 "retries": 0 ~/~/ Количество попыток 1097 1097 } 1098 1098 ], 1099 - 1100 1100 "sensors": [ ~/~/ Датчики 1101 1101 { 1102 1102 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1123,6 +1123,7 @@ 1123 1123 ], 1124 1124 "showInTooltip": true, ~/~/ Отображать в подсказке 1125 1125 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1146 + "color": "string", ~/~/ Код цвета датчиков 1126 1126 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1127 1127 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1128 1128 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1137,31 +1137,19 @@ 1137 1137 }, 1138 1138 1139 1139 ~/~/ Характерные для произвольного: 1140 - 1141 1141 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1142 - 1143 1143 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1144 - 1145 1145 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1146 - 1147 1147 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1148 - 1149 1149 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1150 - 1151 1151 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1152 - 1153 1153 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1154 - 1155 1155 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1156 - 1157 1157 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1158 - 1159 1159 ~/~/ "ValueOn": "Вкл.", 1160 - 1161 1161 ~/~/ "ValueOff": "Выкл." 1162 1162 "summaryMaxValue": 0 ~/~/ Макс. значение 1163 1163 } 1164 - 1165 1165 "drivers": [ ~/~/ Водители 1166 1166 { 1167 1167 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1170,7 +1170,6 @@ 1170 1170 "isDefault": true ~/~/ По умолчанию 1171 1171 } 1172 1172 ], 1173 - 1174 1174 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1175 1175 { 1176 1176 "id": "", ~/~/ ID задания ... ... @@ -1187,19 +1187,27 @@ 1187 1187 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1188 1188 } 1189 1189 ], 1190 - 1191 - "statusHistory": [ ~/~/ История статусов 1198 +"statusHistory": [ ~/~/ История статусов 1192 1192 { 1193 1193 "status": 0, 1194 1194 "date": "2023-05-22T09:57:39.562Z", 1195 1195 "description": "string", 1196 1196 "additionalInfo": "string" 1197 - } 1198 - ] 1199 1199 1205 +((( 1200 1200 } 1207 + ], 1208 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1209 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1201 1201 ))) 1202 1202 1212 +((( 1213 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1214 +} 1215 + 1216 +))) 1217 +))) 1218 + 1203 1203 (% style="text-align:left" %) 1204 1204 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 1205 1205 ... ... @@ -1206,6 +1206,75 @@ 1206 1206 (% style="text-align:left" %) 1207 1207 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1208 1208 1225 + 1226 +== **Отправить команду на терминал** == 1227 + 1228 +(% class="box successmessage" %) 1229 +((( 1230 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1231 +))) 1232 + 1233 +Команда для отправки на тс. 1234 + 1235 +{ 1236 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId) 1237 +"command": "", ~/~/ Текст отправляемой команды 1238 +"retries": "", ~/~/ Количество попыток отправки на терминал 1239 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 1240 +} 1241 + 1242 +В ответ получаем cmdid 1243 + 1244 + 1245 +== **Получить ответ на отправленную на ТС команду** == 1246 + 1247 +(% class="box infomessage" %) 1248 +((( 1249 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1250 +))) 1251 + 1252 +Идентификатор команды: cmdId 1253 + 1254 +Запрос от терминала на ответ команды 1255 + 1256 +Пример ответ от терминала: 1257 + 1258 +ID= "" ~/~/ идентификатор объекта 1259 +Soft="" ~/~/ версия софта 1260 +GPS=4 ~/~/ тип трекера 1261 +Time=11:05:43 28.06.24 ~/~/ время запроса 1262 +Lat=45.056221 ~/~/ широта 1263 +Lon=39.035938 ~/~/ долгота 1264 +Speed=0.0 ~/~/ скорость 1265 +Course=181.4 ~/~/направление 1266 + 1267 +((( 1268 +== **Список отправленных объекту команд с ответами** == 1269 + 1270 +(% class="box infomessage" %) 1271 +((( 1272 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1273 +))) 1274 + 1275 +Идентификатор ТС: vehicleId 1276 + 1277 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1278 + 1279 +Пример ответа терминала 1280 + 1281 +[ 1282 +{ 1283 +"id": "", ~/~/ идентификатор пользователя 1284 +"commandText": "", ~/~/Текст команды. 1285 +"templateId": "", ~/~/Идентификатор шаблона 1286 +"updated": "", ~/~/ Время отправки 1287 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1288 +"answer": "", ~/~/ Ответ терминала. 1289 +"status": "" ~/~/ Статус отправки 1290 +} 1291 +] 1292 +))) 1293 + 1209 1209 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1210 1210 1211 1211 (% class="box successmessage" %) ... ... @@ -1225,6 +1225,11 @@ 1225 1225 1226 1226 (% style="color:#000000" %){ 1227 1227 1313 + 1314 +((( 1315 + "vehicleId": 0, ~/~/ ID ТС 1316 +))) 1317 + 1228 1228 "parentId": "" , ~/~/ ID клиента 1229 1229 "name": "" , ~/~/ имя ТС 1230 1230 "imei": "" , ~/~/ IMEI ... ... @@ -1245,7 +1245,6 @@ 1245 1245 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1246 1246 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1247 1247 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1248 - 1249 1249 "mileageCalcMethod": 0, 1250 1250 "mileageCoeff": 0, 1251 1251 "locationByCellId": true, ... ... @@ -1278,7 +1278,6 @@ 1278 1278 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1279 1279 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1280 1280 } 1281 - 1282 1282 "drivers": [ ~/~/ Водители 1283 1283 { 1284 1284 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1293,8 +1293,7 @@ 1293 1293 "retries": 0 1294 1294 } 1295 1295 ], 1296 - 1297 - "sensors": [ ~/~/ Датчики 1384 +"sensors": [ ~/~/ Датчики 1298 1298 { 1299 1299 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1300 1300 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1320,6 +1320,7 @@ 1320 1320 ], 1321 1321 "showInTooltip": true, ~/~/ Отображать в подсказке 1322 1322 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1410 + "color": "string", ~/~/ код цвета датчиков 1323 1323 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1324 1324 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1325 1325 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1332,103 +1332,222 @@ 1332 1332 "additionalProp2": "string", 1333 1333 "additionalProp3": "string" 1334 1334 }, 1335 - 1336 1336 ~/~/ Характерные для произвольного: 1337 - 1338 1338 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1339 - 1340 1340 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1341 - 1342 1342 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1343 - 1344 1344 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1345 - 1346 1346 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1347 - 1348 1348 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1349 - 1350 1350 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1351 - 1352 1352 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1353 - 1354 1354 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1355 - 1356 1356 ~/~/ "ValueOn": "Вкл.", 1357 - 1358 1358 ~/~/ "ValueOff": "Выкл." 1359 - "summaryMaxValue": 0 ~/~/ Макс. значение 1435 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1436 + 1437 +((( 1438 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1439 + { 1440 + "from": 0, ~/~/ С какого значения 1441 + "color": "string", ~/~/ Каким цветом 1442 + "text": "string" ~/~/ Текст подписи к этому интервалу 1443 + } 1444 + ] 1360 1360 } 1361 1361 ], 1447 +))) 1448 + 1449 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1450 + 1451 + 1362 1362 "customFields": [ ~/~/ Произвольные поля 1363 1363 { 1364 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1365 - "name": "string", 1366 - "value": "string", 1367 - "forClient": true, 1368 - "forTooltip": true, 1369 - "forReport": true 1370 - } 1371 - ] 1454 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1455 + "name": "string", ~/~/ Наименование произвольного поля 1456 + "value": "string", ~/~/ Значение произвольного поля 1457 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1458 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1459 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1460 + 1461 +((( 1462 + } 1463 + ], 1464 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1465 +))) 1466 + 1467 +((( 1468 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1372 1372 } 1470 +))) 1373 1373 1472 + 1374 1374 (% style="color:#000000" %)Ответ: 1375 1375 1376 -(% style="color:#000000" %){ 1377 1377 1378 - "vehicleId": "", ~/~/ID ТС 1379 - "parentId": "", ~/~/Guid владельца ТС 1380 - "name": "", ~/~/Имя объекта 1381 - "imei": "", ~/~/IMEI 1382 - "deviceTypeId": "", ~/~/ID типа устройства 1383 - "modelId": "", ~/~/ID модели 1384 - "unitId": "", ~/~/ID подразделения 1385 - "sim1": "", ~/~/SIM1 1386 - "sim2": "", ~/~/SIM2 1387 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1388 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1389 - "counters": { ~/~/Счётчики 1390 - "mileageEnabled": true, 1391 - "motohoursEnabled": true, 1392 - "mileage": "", 1393 - "motohours": 345.0 1394 - }, 1395 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1396 - "id": null, 1397 - "enabled": true, ~/~/флаг включения 1398 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1399 - "login": "", ~/~/ имя учетной записи 1400 - "password": "" ~/~/ пароль учетной записи 1401 - }, 1402 - "inspectionTasks": { ~/~/ задания на ТО 1403 - "id": "", ~/~/ ID задачи 1404 - "enabled": false, ~/~/ Признак включения 1405 - "name": "", ~/~/ Имя задания 1406 - "description": "", ~/~/ Описание задания 1407 - "mileageCondition": "", ~/~/ Условие по пробегу 1408 - "lastMileage": "", ~/~/ Пробег (в метрах) 1409 - "motohoursCondition": "", ~/~/ Условие по моточасам 1410 - "lastMotohours": "", ~/~/ Моточасы 1411 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1412 - "kind": "", ~/~/ Вид периодичности по времени 1413 - "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1476 +((( 1477 +((( 1478 +((( 1479 +{ 1480 + "vehicleId": 0, ~/~/ ID ТС 1481 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1482 + "name": "string", ~/~/ Имя объекта 1483 + "imei": "string", ~/~/ IMEI 1484 + "deviceTypeId": 0, ~/~/ ID типа устройства 1485 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1486 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1487 + "sim1": "string", ~/~/ SIM1 1488 + "sim2": "string", ~/~/ SIM2 1489 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1490 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1491 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1492 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1493 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1494 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1495 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1496 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1497 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1498 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1499 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1500 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1501 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1502 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1503 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1504 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1505 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1506 + "counters": { ~/~/ Dto для состояний счётчиков 1507 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1508 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1509 + "mileage": 0, ~/~/ Пробег 1510 + "motohours": 0 ~/~/ Моточасы 1511 + }, 1512 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1513 + "id": "string", ~/~/ CMSV6 Идентификатор 1514 + "enabled": true, ~/~/ Признак включения 1515 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1516 + "login": "string", ~/~/ CMSV6 имя учетной записи 1517 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1518 + }, 1519 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1520 + { 1521 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1522 + "enabled": true, ~/~/ Признак включения 1523 + "name": "string", ~/~/ Имя задания 1524 + "description": "string", ~/~/ Описание задания 1525 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1526 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1527 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1528 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1529 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1530 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1531 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1532 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1414 1414 } 1534 + ], 1535 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1536 + { 1537 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1538 + "inputNumber": 0, ~/~/ № входа. 1539 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1540 + "comment": "string", ~/~/ Комментарий 1541 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1542 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1543 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1544 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1545 + } 1546 + ], 1547 + "commandTemplates": [ ~/~/ Список шаблонов команд 1548 + { 1549 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1550 + "name": "string", ~/~/ Название шаблона команд 1551 + "command": "string", ~/~/ Команда на выполнение 1552 + "retries": 0 ~/~/ Лимит попыток отправки 1553 + } 1554 + ], 1555 + "sensors": [ ~/~/ Список датчиков 1556 + { 1557 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1558 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1559 + "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 1560 + "name": "string", ~/~/ Имя датчика 1561 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1562 + "inputNumber": 0, ~/~/ Номер входа 1563 + "pseudonym": "string", ~/~/ Псевдоним 1564 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1565 + "isInverted": true, ~/~/ Признак инверсии 1566 + "disabled": true, ~/~/ Датчик не участвует в обработке 1567 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1568 + "gradesTables": [ ~/~/ Тарировка 1569 + { 1570 + "grades": [ ~/~/ Таблицы тарировки 1571 + { 1572 + "input": 0, ~/~/ Вход 1573 + "output": 0 ~/~/ Выход 1574 + } 1575 + ], 1576 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1577 + } 1578 + ], 1579 + "showInTooltip": true, ~/~/ Отображение в подсказке 1580 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1581 + "color": "string", ~/~/ код цвета датчиков 1582 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1583 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1584 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1585 + "expr": "string", ~/~/ Выражение 1586 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1587 + "string" 1588 + ], 1589 + "customParams": { 1590 + "additionalProp1": "string", 1591 + "additionalProp2": "string", 1592 + "additionalProp3": "string" 1593 + }, 1594 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1595 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1596 + { 1597 + "from": 0, ~/~/ С какого значения 1598 + "color": "string", ~/~/ Каким цветом 1599 +))) 1415 1415 1416 -(% style="text-align:left" %) 1417 -(% style="color:#000000" %)} 1601 +((( 1602 + "text": "string" ~/~/ Текст подписи к этому интервалу 1603 + } 1604 + ] 1605 + } 1606 + ], 1607 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1608 + "customFields": [ ~/~/ Список произвольных полей 1609 + { 1610 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1611 + "name": "string", ~/~/ Наименование произвольного поля 1612 + "value": "string", ~/~/ Значение произвольного поля 1613 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1614 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1615 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1616 + } 1617 + ], 1618 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1619 +} 1620 +))) 1621 +))) 1622 +))) 1418 1418 1624 + 1419 1419 **Валидация:** 1420 1420 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1421 1421 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1422 1422 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1423 1423 1424 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 1425 1425 1631 +(% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами** 1632 + 1426 1426 (% class="box infomessage" %) 1427 1427 ((( 1428 1428 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1429 1429 ))) 1430 1430 1431 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1638 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1432 1432 1433 1433 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1434 1434 ... ... @@ -1462,9 +1462,12 @@ 1462 1462 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1463 1463 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1464 1464 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1465 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1466 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1467 - "customFields": null ~/~/ значение любого из произвольных полей ТС 1672 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1673 + "unitName": "string", ~/~/ Название подразделения (опционально) 1674 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1675 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1676 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1677 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1468 1468 } 1469 1469 1470 1470 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1471,8 +1471,14 @@ 1471 1471 1472 1472 (% style="color:#000000" %)Ответ: 1473 1473 1474 -(% style="color:#000000" %){ 1684 +(% style="color:#000000" %)[ 1685 +{ 1475 1475 1687 +((( 1688 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1689 +))) 1690 + 1691 +((( 1476 1476 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1477 1477 "name": "" ~/~/ наименование объекта 1478 1478 "imei": "" ~/~/ IMEI объекта ... ... @@ -1498,9 +1498,21 @@ 1498 1498 "forClient": true, ~/~/ право на отображение у клиента 1499 1499 "forTooltip": false, ~/~/ право на отображение в подсказке 1500 1500 "forReport": false ~/~/ право на отображение в отчетах 1501 - }(%%) 1502 -(% style="color:#000000" %)} 1717 +))) 1503 1503 1719 +((( 1720 + } 1721 + ], 1722 + "vehicleGroups": [ ~/~/ Группы ТС 1723 + { 1724 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1725 + "name": "string" ~/~/ Наименование группы ТС 1726 + } 1727 + ] 1728 + } 1729 +] 1730 +))) 1731 + 1504 1504 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1505 1505 1506 1506 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1532,13 +1532,11 @@ 1532 1532 "data": "", ~/~/ Данные 1533 1533 "overwrite": false, ~/~/ Флаг перезаписи 1534 1534 "stage": "", ~/~/ Состояние, может быть null 1535 - 1536 1536 (% style="color:#000000" %)} 1537 1537 1538 1538 (% style="color:#000000" %)Ответ: 1539 1539 1540 -(% style="color:#000000" %){ 1541 - 1767 +(% style="color:#000000" %){(%%) 1542 1542 "status": "", ~/~/ значение статуса 1543 1543 "date": "", ~/~/ Дата смены статуса 1544 1544 "description": "", ~/~/ Описание ... ... @@ -1545,10 +1545,9 @@ 1545 1545 "data": "", ~/~/ Данные 1546 1546 "overwrite": false, ~/~/ Флаг перезаписи 1547 1547 "stage": "", ~/~/ Состояние 1548 - 1549 -(% style="text-align:left" %) 1550 1550 (% style="color:#000000" %) } 1551 1551 1776 + 1552 1552 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1553 1553 1554 1554 (% class="box warningmessage" %) ... ... @@ -1624,9 +1624,19 @@ 1624 1624 1625 1625 "drivers": [ ~/~/ Водители 1626 1626 { 1627 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1628 - "isDefault": true 1629 - } 1852 + 1853 +((( 1854 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1855 + "inputNumber": 0, ~/~/ № входа. 1856 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения. 1857 + "comment": "string", ~/~/ Комментарий. 1858 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1859 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1860 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения. 1861 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения. 1862 +))) 1863 + 1864 + } 1630 1630 ], 1631 1631 "commandTemplates": [ ~/~/ Шаблон команды 1632 1632 { ... ... @@ -1636,8 +1636,7 @@ 1636 1636 "retries": 0 1637 1637 } 1638 1638 ], 1639 - 1640 - "sensors": [ ~/~/ Датчики 1874 +"sensors": [ ~/~/ Датчики 1641 1641 { 1642 1642 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1643 1643 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1663,6 +1663,11 @@ 1663 1663 ], 1664 1664 "showInTooltip": true, ~/~/ Отображать в подсказке 1665 1665 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1900 + 1901 +((( 1902 + "color": "string",** ~/~/ **Цвет датчика 1903 +))) 1904 + 1666 1666 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1667 1667 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1668 1668 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1675,95 +1675,225 @@ 1675 1675 "additionalProp2": "string", 1676 1676 "additionalProp3": "string" 1677 1677 }, 1678 - 1679 1679 ~/~/ Характерные для произвольного: 1680 - 1681 1681 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1682 - 1683 1683 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1684 - 1685 1685 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1686 - 1687 1687 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1688 - 1689 1689 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1690 - 1691 1691 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1692 - 1693 1693 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1694 - 1695 1695 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1696 - 1697 1697 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1698 - 1699 1699 ~/~/ "ValueOn": "Вкл.", 1700 - 1701 1701 ~/~/ "ValueOff": "Выкл." 1702 1702 "summaryMaxValue": 0 ~/~/ Макс. значение 1930 + 1931 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1932 + { 1933 + "from": 0, ~/~/ С какого значения 1934 + "color": "string", ~/~/ Каким цветом 1935 + "text": "string" ~/~/ Текст подписи к этому интервалу 1936 + } 1937 + ] 1703 1703 } 1704 1704 ], 1940 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1941 + 1705 1705 "customFields": [ ~/~/ Произвольные поля 1706 - { 1707 - 1708 - "name": "string", 1709 - "value": "string", 1710 - "forClient": true, 1711 - "forTooltip": true, 1712 - "forReport": true 1943 + { 1944 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1945 + "name": "string", ~/~/ Наименование произвольного поля 1946 + "value": "string", ~/~/ Значение произвольного поля 1947 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1948 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1949 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1713 1713 } 1714 - ] 1951 + 1952 +((( 1953 + ], 1954 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1955 +))) 1956 + 1715 1715 } 1716 1716 1959 + 1717 1717 (% style="color:#000000" %)Ответ: 1718 1718 1719 -(% lang="en-US" style="text-align:left" %) 1720 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 1962 +((( 1963 +{ 1964 + "vehicleId": 0, ~/~/ ID ТС 1965 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1966 + "name": "string", ~/~/ Имя объекта 1967 + "imei": "string", ~/~/ IMEI 1968 + "deviceTypeId": 0, ~/~/ ID типа устройства 1969 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1970 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1971 + "sim1": "string", ~/~/ SIM1 1972 + "sim2": "string", ~/~/ SIM2 1973 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1974 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1975 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1976 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1977 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1978 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1979 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1980 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1981 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1982 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1983 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1984 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1985 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 1986 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1987 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1988 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1989 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1990 + "counters": { ~/~/ состояний счётчиков 1991 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1992 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1993 + "mileage": 0, ~/~/ Пробег 1994 + "motohours": 0 ~/~/ Моточасы 1995 + }, 1996 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1997 + "id": "string", ~/~/ CMSV6 Идентификатор 1998 + "enabled": true, ~/~/ Признак включения 1999 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 2000 +))) 1721 1721 1722 -(% lang="en-US" style="text-align:left" %) 1723 - "vehicleId": "", ~/~/ ID ТС 1724 - "parentId": "", ~/~/ ID клиента 1725 - "name": "", ~/~/ имя ТС 1726 - "imei": "", ~/~/ IMEI 1727 - "deviceTypeId": "", ~/~/ типа устройства 1728 - "modelId": "", ~/~/ ID модели 1729 - "unitId": "", ~/~/ ID подразделения 1730 - "sim1": "", ~/~/ SIM 1 1731 - "sim2": "", ~/~/ SIM2 1732 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1733 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1734 - "counters": 1735 - { 1736 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1737 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1738 - "mileage": "", ~/~/ пробег 1739 - "motohours": "", ~/~/ моточасы 1740 - } 1741 - "cmsv6Parameters": ~/~/ параметры CMSv6 2002 + 2003 +((( 2004 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 2005 + "login": "string", ~/~/ CMSV6 имя учетной записи 2006 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 2007 + }, 2008 + "inspectionTasks": [ ~/~/ Задания на ТО 2009 + { 2010 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 2011 + "enabled": true, ~/~/ Признак включения 2012 + "name": "string", ~/~/ Имя задания 2013 + "description": "string", ~/~/ Описание задания 2014 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 2015 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 2016 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 2017 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 2018 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 2019 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 2020 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2021 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2022 + } 2023 + ], 2024 + "drivers": [ ~/~/ Список водителей 2025 + { 2026 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2027 + "inputNumber": 0, ~/~/ № входа. 2028 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2029 + "comment": "string", ~/~/ Комментарий. 2030 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2031 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2032 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2033 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2034 + } 2035 + ], 2036 + "commandTemplates": [ ~/~/ Список шаблонов команд 2037 + { 2038 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2039 + "name": "string", ~/~/ Название шаблона команд 2040 + "command": "string", ~/~/ Команда на выполнение 2041 + "retries": 0 ~/~/ Лимит попыток отправки 2042 + } 2043 + ], 2044 + "sensors": [ ~/~/ Список датчиков 2045 + { 2046 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2047 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2048 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2049 +))) 2050 + 2051 +((( 2052 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2053 +))) 2054 + 2055 +((( 2056 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2057 +))) 2058 + 2059 +((( 2060 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2061 +))) 2062 + 2063 +((( 2064 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2065 +))) 2066 + 2067 +((( 2068 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2069 + "name": "string", ~/~/ Имя датчика 2070 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2071 +))) 2072 + 2073 +((( 2074 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2075 + "inputNumber": 0, ~/~/ Номер входа 2076 + "pseudonym": "string", ~/~/ Псевдоним 2077 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2078 + "isInverted": true, ~/~/ Признак инверсии 2079 + "disabled": true, ~/~/ Датчик не участвует в обработке 2080 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2081 + "gradesTables": [ ~/~/ Тарировка 1742 1742 { 1743 - "id": ~/~/ идентификатор 1744 - "enabled": true, ~/~/ флаг включения 1745 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1746 - "login": "", ~/~/ имя учетной записи 1747 - "password": "", ~/~/ пароль учетной записи 1748 - } 1749 - "inspectionTasks": ~/~/ задания на ТО 1750 - { 1751 - "id": "", ~/~/ ID задания 1752 - "enabled": false, ~/~/ Признак включения 1753 - "name": "", ~/~/ Имя задания 1754 - "description": "", ~/~/ Описание задания 1755 - "mileageCondition": "", ~/~/ Условие по пробегу 1756 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1757 - "motohoursCondition": "", ~/~/ Условие по моточасам 1758 - "lastMotohours": "", ~/~/ Моточасы 1759 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1760 - "kind": "", ~/~/ Вид периодичности по времени 1761 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2083 + "grades": [ ~/~/ Таблицы тарировки 2084 + { 2085 + "input": 0, ~/~/ Вход 2086 + "output": 0 ~/~/ Выход 2087 + } 2088 + ], 2089 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1762 1762 } 2091 + ], 2092 + "showInTooltip": true, ~/~/ Отображение в подсказке 2093 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1763 1763 1764 -(% lang="en-US" style="text-align:left" %) 1765 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2095 +((( 2096 + "color": "string", ~/~/ цвет уведомлений 2097 +))) 1766 1766 2099 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2100 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2101 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2102 + "expr": "string", ~/~/ Выражение 2103 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2104 + "string" 2105 + ], 2106 + "customParams": { ~/~/ Дополнительные настройки 2107 + "additionalProp1": "string", 2108 + "additionalProp2": "string", 2109 + "additionalProp3": "string" 2110 + }, 2111 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2112 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2113 + { 2114 + "from": 0, ~/~/ С какого значения 2115 + "color": "string", ~/~/ Каким цветом 2116 + "text": "string" ~/~/ Текст подписи к этому интервалу 2117 + } 2118 + ] 2119 + } 2120 + ], 2121 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2122 + "customFields": [ ~/~/ Список произвольных полей 2123 + { 2124 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2125 + "name": "string", ~/~/ Наименование произвольного поля 2126 + "value": "string", ~/~/ Значение произвольного поля 2127 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2128 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2129 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2130 + } 2131 + ], 2132 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2133 +} 2134 +))) 2135 + 1767 1767 **Валидация:** 1768 1768 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1769 1769 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1808,12 +1808,9 @@ 1808 1808 1809 1809 (% style="color:#000000" %)Ответ: 1810 1810 1811 -(% style="color:#000000" %){ 1812 - 2180 +(% style="color:#000000" %){(%%) 1813 1813 "deviceTypeId" : "", ~/~/ ID типа устройства 1814 1814 "deviceTypeName" : "" ~/~/ Название типа устройства 1815 - 1816 -(% style="text-align:left" %) 1817 1817 (% style="color:#000000" %)} 1818 1818 1819 1819 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1835,13 +1835,10 @@ 1835 1835 1836 1836 (% style="color:#000000" %)Ответ: 1837 1837 1838 -(% style="color:#000000" %){ 1839 - 2204 +(% style="color:#000000" %){(%%) 1840 1840 "id": "", ~/~/ ID типа датчика 1841 1841 "name": "", ~/~/ Название 1842 1842 "description": "", ~/~/ Описание 1843 - 1844 -(% style="text-align:left" %) 1845 1845 (% style="color:#000000" %)} 1846 1846 1847 1847 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1928,8 +1928,13 @@ 1928 1928 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 1929 1929 |protocolType|Тип протокола 1930 1930 |inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 1931 -|inputNumber|Номер входа 2294 +|inputNumber|((( 2295 +Номер входа 2296 +))) 1932 1932 2298 +(% class="wikigeneratedid" %) 2299 +Перечень 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/]] 2300 + 1933 1933 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1934 1934 1935 1935 (% class="box infomessage" %) ... ... @@ -2038,10 +2038,14 @@ 2038 2038 { 2039 2039 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2040 2040 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2041 - "mileageBegin": 0, ~/~/ Пробег на начало периода 2042 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 2043 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 2044 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2409 + "mileage": 0, ~/~/ Пробег за период, километры 2410 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2411 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2412 + "motohours": 0, ~/~/ Моточасы за период, секунды 2413 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2414 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2415 + "idlingTime": 0 ~/~/ Холостой ход за период, секунд 2416 + 2045 2045 } 2046 2046 ] 2047 2047 } ... ... @@ -2085,11 +2085,19 @@ 2085 2085 "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2086 2086 "fuelConsumption": 0, ~/~/ Расход топлива 2087 2087 "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2460 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне 2461 + 2088 2088 } 2089 2089 ] 2090 2090 } 2091 2091 ] 2092 2092 2467 +(% class="box warningmessage" %) 2468 +((( 2469 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2470 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2471 +))) 2472 + 2093 2093 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2094 2094 2095 2095 (% class="box infomessage" %) ... ... @@ -2124,7 +2124,8 @@ 2124 2124 "model": "string", ~/~/ Модель объекта 2125 2125 "fuels": [ ~/~/ Массив данным по заправкам и сливам 2126 2126 { 2127 - "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив 2507 + "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 2508 + 2128 2128 "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало 2129 2129 "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание 2130 2130 "valueFuel": 0, ~/~/ Количество ... ... @@ -2153,74 +2153,42 @@ 2153 2153 Тело запроса: 2154 2154 2155 2155 { 2156 - 2157 2157 "vehicleIds": [ ], ~/~/ Список ID объектов 2158 - 2159 2159 "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2160 - 2161 2161 "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2162 - 2163 2163 "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2164 - 2165 2165 } 2166 2166 2167 2167 Ответ: 2168 2168 2169 -[ 2170 - 2545 +[ 2171 2171 { 2172 - 2173 2173 "vehicleId": 0, ~/~/ ID объекта 2174 - 2175 2175 "vehicleName": "string", ~/~/ Имя объекта 2176 - 2177 2177 "moves": [ ~/~/ Событие движения 2178 - 2179 2179 { 2180 - 2181 2181 "mileage": 0, ~/~/ Пробег, км 2182 - 2183 2183 "eventId": 0, ~/~/ Идентификатор события 2184 - 2185 2185 "eventName": "string", ~/~/ Название события 2186 - 2187 2187 "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2188 - 2189 2189 "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2190 - 2191 2191 "duration": 0 ~/~/ Продолжительность события, секунд 2192 - 2193 2193 } 2194 - 2195 2195 ], 2196 - 2197 2197 "stops": [ ~/~/ События стоянок 2198 - 2199 2199 { 2200 - 2201 - "address": "string", ~/~/ Адрес события 2202 - 2561 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2203 2203 "eventId": 0, ~/~/ Идентификатор события 2204 - 2205 2205 "eventName": "string", ~/~/ Название события 2206 - 2207 2207 "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2208 - 2209 2209 "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2210 - 2211 2211 "duration": 0 ~/~/ Продолжительность события, секунд 2212 - 2213 - 2214 2214 } 2215 - 2216 2216 ] 2217 - 2218 2218 } 2219 - 2220 2220 ] 2221 2221 2222 2222 2223 - 2224 2224 == (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2225 2225 2226 2226 (% class="box infomessage" %) ... ... @@ -2235,21 +2235,8 @@ 2235 2235 В заголовках запроса: X-Auth: Токен авторизации 2236 2236 2237 2237 2238 - Телозапроса:2587 +В теле запроса перечисляете массив id объектов, в квадратных скобках через запятую. 2239 2239 2240 -{ 2241 - 2242 - "vehicleIds": [ ], ~/~/ Список ID машины 2243 - 2244 - "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время прихода последнего сообщения 2245 - 2246 - "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время формирования последнего сообщения 2247 - 2248 - "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2249 - 2250 -} 2251 - 2252 - 2253 2253 Ответ: 2254 2254 { 2255 2255 "vehicleId": 0, ~/~/Идентификатор объекта. ... ... @@ -2257,7 +2257,7 @@ 2257 2257 "vehicleNumber": "string",~/~/Номер объекта. 2258 2258 "receiveTime": "2024-02-27T14:11:00.315Z",~/~/Время получения записи на сервере, т.е. время срабатывания + время передачи от устройства на сервер 2259 2259 "recordTime": "2024-02-27T14:11:00.315Z",~/~/Время записи от устройства, т.е. время фактического события на транспортном средстве. 2260 - "state": 0,~/~/Определяет состояния объекта в мониторинге: вдвижении,остановка,стоянка,отключена,нетданных.2596 + "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2261 2261 "speed": 0,~/~/Скорость объекта. 2262 2262 "course": 0,~/~/Курс движения [0;360] 2263 2263 "latitude": 0,~/~/Широта [-90°;90°]. ... ... @@ -2270,7 +2270,6 @@ 2270 2270 } 2271 2271 2272 2272 2273 - 2274 2274 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2275 2275 2276 2276 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2399,6 +2399,35 @@ 2399 2399 } 2400 2400 ] 2401 2401 2737 + 2738 +== (% style="color:#000000; font-size:16px" %)**Обновить информацию по геозоне**(%%) == 2739 + 2740 +(% class="box successmessage" %) 2741 +((( 2742 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**PUT **(%%)**/api/v3/gis** 2743 +))) 2744 + 2745 +(% style="color:#000000" %)Метод запроса: **PUT** 2746 + 2747 +Пример запроса: 2748 + 2749 +((( 2750 +{ 2751 + "id": 0, ~/~/ Идентификатор объекта геозоны 2752 + "name": "string", ~/~/ Наименование объекта геозоны 2753 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 2754 + "description": "string", ~/~/ Описание объекта геозоны 2755 + "beginCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата начала расчетов для геозоны 2756 + "endCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата окончания расчетов для геозоны 2757 + "settingsData": "string" ~/~/ Параметры отображения в формате XML. 2758 +} 2759 +))) 2760 + 2761 + 2762 +Пример ответа: 2763 + 2764 +200 ~/~/ Success 2765 + 2402 2402 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) = 2403 2403 2404 2404 == (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) == ... ... @@ -2578,6 +2578,32 @@ 2578 2578 2579 2579 Success 2580 2580 2945 + 2946 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2947 + 2948 +(% class="box warningmessage" %) 2949 +((( 2950 +**PUT** /api/v3/notifications/prolongation 2951 +))) 2952 + 2953 +Метод позволяет продлить уведомления. 2954 + 2955 +Метод запроса **PUT** 2956 + 2957 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 2958 + 2959 +В заголовках запроса: X-Auth: Токен авторизации. 2960 + 2961 +Тело запроса: 2962 + 2963 +[ 2964 + 2965 +0 2966 + 2967 +] 2968 + 2969 +где 0 идентификатор ids. 2970 + 2581 2581 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2582 2582 2583 2583 (% class="box errormessage" %) ... ... @@ -3768,7 +3768,7 @@ 3768 3768 **POST /api/v3/vehicles/import/{agentId}** 3769 3769 ))) 3770 3770 3771 -Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml** или **wlp. **Также они могут находится в** zip-архиве.** 4161 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 3772 3772 3773 3773 В пути указывается **agentId** - id клиента. 3774 3774 ... ... @@ -3780,7 +3780,7 @@ 3780 3780 3781 3781 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3782 3782 |withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 3783 -|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: 1- Замена,2- Слияние,3- Добавление4173 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 3784 3784 3785 3785 В теле использовать тип **form-data,** тип значения** file** 3786 3786 ... ... @@ -3857,6 +3857,45 @@ 3857 3857 |producedCount|Кол-во успешно отправленных в шину данных сообщений 3858 3858 |msgCount|Кол-во обработанных сообщений всего 3859 3859 4250 +== == 4251 + 4252 +== **Импортировать историю ТС (Асинхронный запрос)** == 4253 + 4254 +(% class="box successmessage" %) 4255 +((( 4256 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 4257 +))) 4258 + 4259 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4260 + 4261 +Метод запроса: **POST** 4262 + 4263 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 4264 + 4265 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 4266 + 4267 + 4268 +Ответ: 4269 + 4270 +{ 4271 + 4272 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4273 + 4274 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 4275 + 4276 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 4277 + 4278 + "Message": "string", ~/~/ Информация о выполнении запроса 4279 + 4280 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 4281 + 4282 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4283 + 4284 + "Data": "string" ~/~/ Данные 4285 + 4286 +} 4287 + 4288 + 3860 3860 == (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 3861 3861 3862 3862 (% class="box infomessage" %) ... ... @@ -3874,10 +3874,59 @@ 3874 3874 "message": "string" 3875 3875 } 3876 3876 3877 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3878 -|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет 3879 -|progress|Guid ТС 4306 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)((( 4307 +**Параметр** 4308 +)))|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)((( 4309 +**Описание** 4310 +))) 4311 +|((( 4312 +activity 4313 +)))|((( 4314 +Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4315 +))) 4316 +|((( 4317 +progress 4318 +)))|((( 4319 +Guid ТС 4320 +))) 3880 3880 4322 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 4323 + 4324 +(% class="box infomessage" %) 4325 +((( 4326 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 4327 +))) 4328 + 4329 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4330 + 4331 +Метод запроса: **GET** 4332 + 4333 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 4334 + 4335 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 4336 + 4337 + 4338 +Ответ: 4339 + 4340 +{ 4341 + 4342 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4343 + 4344 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 4345 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 4346 + 4347 + "Message": "string", ~/~/ Информация о выполнении запроса 4348 + 4349 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 4350 + 4351 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 4352 + 4353 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4354 + 4355 + "Data": "string" ~/~/ Данные 4356 + 4357 +} 4358 + 3881 3881 == (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 3882 3882 3883 3883 (% class="box infomessage" %) ... ... @@ -3959,64 +3959,67 @@ 3959 3959 Тело запроса: 3960 3960 3961 3961 { 3962 - "vehicleIds": [vehicleId], 3963 - "from": "2023-11-22T09:29:48.051Z", 3964 - "to": "2023-11-22T09:29:48.051Z" 4440 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4441 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4442 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 3965 3965 } 3966 3966 3967 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3968 -|vehicleIds|Массив ID объектов 3969 -|from|Дата начала запроса 3970 -|to|Дата окончания запроса 3971 - 3972 3972 Ответ: 3973 3973 3974 3974 { 3975 - "items": [ 4448 + "items": [ ~/~/ Список в разрезе ТС 3976 3976 { 3977 - "from": "2023-11-22T09:29:48.052Z", 3978 - "to": "2023-11-22T09:29:48.052Z", 3979 - "vehicleId": 0, 3980 - "vehicleName": "string", 3981 - "vehicleModel": "string", 3982 - "penalty": 0, 3983 - "score": 0, 3984 - "totalViolations": 0, 3985 - "violationsByType": { 3986 - "overspeedingViolations": 0, 3987 - "accelerationViolations": 0, 3988 - "brakingViolations": 0, 3989 - "turningViolations": 0, 3990 - "dangerousDrivingViolations": 0, 3991 - "sensorViolations": 0 4450 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4451 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4452 + "vehicleId": 0, ~/~/ ID ТС 4453 + "vehicleName": "string", ~/~/ Название ТС 4454 + "vehicleModel": "string", ~/~/ Модель ТС 4455 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4456 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4457 + "totalViolations": 0, ~/~/ Нарушений всего 4458 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4459 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4460 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4461 + "brakingViolations": 0, ~/~/ Нарушений торможения 4462 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4463 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4464 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3992 3992 }, 3993 - "moveTime": 0, 3994 - "mileage": 0, 3995 - "tripsCount": 0, 3996 - "trips": [ 4466 + 4467 +((( 4468 + 4469 +))) 4470 + 4471 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4472 + "mileage": 0, ~/~/ Пробег, м 4473 + "tripsCount": 0, ~/~/ Кол-во рейсов 4474 + "trips": [ ~/~/ Информация по рейсу 3997 3997 { 3998 - "penalty": 0, 3999 - "score": 0, 4000 - "violationsCount": 0, 4001 - "violationsByType": { 4002 - "overspeedingViolations": 0, 4003 - "accelerationViolations": 0, 4004 - "brakingViolations": 0, 4005 - "turningViolations": 0, 4006 - "dangerousDrivingViolations": 0, 4007 - "sensorViolations": 0 4476 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4477 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4478 + "violationsCount": 0, ~/~/ Всего нарушений 4479 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4480 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4481 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4482 + "brakingViolations": 0, ~/~/ Нарушений торможения 4483 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4484 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4485 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4008 4008 }, 4009 - "moveTime": 0, 4010 - "mileage": 0, 4011 - "motohours": 0, 4012 - "maxSpeed": 0, 4013 - "startAddress": "string", 4014 - "endAddress": "string", 4015 - "drivers": [ 4487 + 4488 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4489 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4490 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4491 + "mileage": 0, ~/~/ Пробег, м 4492 + "motohours": 0, ~/~/ Моточасы, секунды 4493 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4494 + "startAddress": "string", ~/~/ Адрес начала рейса 4495 + "endAddress": "string", ~/~/ Адрес конца рейса 4496 + "drivers": [ ~/~/ Список водителей 4016 4016 { 4017 - "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4018 - "driverName": "string", 4019 - "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 4498 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4499 + "driverName": "string", ~/~/ФИО водителя 4500 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 4020 4020 } 4021 4021 ] 4022 4022 } ... ... @@ -4025,34 +4025,1747 @@ 4025 4025 ] 4026 4026 } 4027 4027 4028 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4029 -|from|Дата начала запроса 4030 -|to|Дата окончания 4031 -|vehicleId|ID объекта 4032 -|vehicleName|Имя объекта 4033 -|vehicleModel|Модель объекта 4034 -|penalty|Сумма штрафных баллов 4035 -|score|Оценка 4036 -|totalViolations|Суммарное количество нарушений 4037 -|violationsByType|Список типов нарушений и количество нарушений для каждого типа 4038 -|overspeedingViolations|Превышение скорости 4039 -|accelerationViolations|Ускорение 4040 -|brakingViolations|Торможение 4041 -|turningViolations|Резкий поворот 4042 -|dangerousDrivingViolations|Резкое вождение 4043 -|sensorViolations|Нарушение по датчику 4044 -|moveTime|Время в движении 4045 -|mileage|Пробег 4046 -|tripsCount|Количество рейсов 4047 -|motohours|Моточасы 4048 -|maxSpeed|Максимальная скорость 4049 -|startAddress|Адрес начала рейса 4050 -|endAddress|Адрес окончания рейса 4051 -|drivers|Список водителей, которые были на объекте в течениии рейса 4052 -|driverGuid|Guid водителя 4053 -|driverName|Имя водителя 4054 -|driverRfid|Номер Карты-метки 4509 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 4055 4055 4511 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4512 + 4513 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4514 + 4515 +(% class="box infomessage" %) 4516 +((( 4517 +**POST /api/v3/fuelcards/transactions** 4518 +))) 4519 + 4520 +Метод запроса: POST 4521 + 4522 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4523 +\\В заголовках запроса: X-Auth: Токен авторизации 4524 + 4525 +Параметры в теле запроса (JSON): 4526 + 4527 +{ 4528 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4529 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4530 + "ids": [ 4531 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4532 + ], 4533 + "timezone": 0 ~/~/ Часовой пояс 4534 +} 4535 + 4536 + 4537 +Ответ: 4538 + { 4539 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4540 + "driver": "string", ~/~/ Водители, привязанные к ТК 4541 + "object": "string", ~/~/ Наименование ТС 4542 + "amount": 0, ~/~/ Количество топлива 4543 + "amountDut": 0, ~/~/ Количество по ДУТ 4544 + "amountDiff": 0, ~/~/ Разница, л 4545 + "amountDiffPerc": 0, ~/~/ Разница, % 4546 + "summa": 0, ~/~/ Стоимость, руб 4547 + "serviceName": "string", ~/~/ Тип топлива 4548 + "price": 0, ~/~/ Цена за литр, руб 4549 + "cardName": "string", ~/~/ Наименование ТК 4550 + "cardNum": "string", ~/~/ Номер ТК 4551 + "operator": "string", ~/~/ Оператор ТК 4552 + "address": "string" ~/~/ Адрес АЗС 4553 + } 4554 + 4555 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) == 4556 + 4557 +(% class="box infomessage" %) 4558 +((( 4559 +**GET /api/v3/fuelcards** 4560 +))) 4561 + 4562 +Метод запроса: GET 4563 + 4564 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список 4565 + 4566 +Ответ: 4567 + 4568 +[ 4569 + { 4570 + "Name": "string", ~/~/ Определяет наименование карты. 4571 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора. 4572 + "Number": "string", ~/~/ Определяет № карты. 4573 + "Enabled": true, ~/~/ Определяет признак активности карты. 4574 + "Description": "string", ~/~/ Определяет описание карты. 4575 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты 4576 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 4577 + "deleted": true ~/~/ Признак удаления 4578 + } 4579 +] 4580 + 4581 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4582 + 4583 + 4584 +== **Получение полных данных о ретрансляторе** == 4585 + 4586 +(% class="box infomessage" %) 4587 +((( 4588 +**GET ** **/api/v3/retranslations/{id}** 4589 +))) 4590 + 4591 +id - Идентификатор ретранслятора 4592 + 4593 + 4594 +Пример ответа: 4595 + 4596 +{ 4597 +"description": "", ~/~/ Поле описания ретранслятора 4598 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4599 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4600 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4601 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4602 +"objects": [ ~/~/ Объекты для ретрансляции 4603 +{ 4604 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4605 +"name": "", ~/~/ Наименование объекта ретрансляции 4606 +"imei": "", ~/~/ IMEI объекта ретрансляции 4607 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4608 +} 4609 + ], 4610 +"id": "", ~/~/ Идентификатор ретранслятора 4611 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4612 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4613 +} 4614 + 4615 + 4616 +== **Удаление данных ретранслятора** == 4617 + 4618 +(% class="box infomessage" %) 4619 +((( 4620 +**DELETE** **/api/v3/retranslations/{id}** 4621 +))) 4622 + 4623 +id - Идентификатор ретранслятора 4624 + 4625 + 4626 +== **Создание ретранслятора** == 4627 + 4628 +(% class="box infomessage" %) 4629 +((( 4630 +**POST ** **/api/v3/retranslations/{id}** 4631 +))) 4632 + 4633 +Запрос: 4634 + 4635 +{ 4636 +"description": "", ~/~/ Поле описания ретранслятора 4637 +"subscriberId": "", ~/~/ Идентификатор подписчика 4638 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4639 +"address": "", ~/~/ Адрес и порт принимающего сервера 4640 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4641 +"objects": [ ~/~/Объекты для ретрансляции 4642 +{ 4643 +"id": "", ~/~/ Идентификатор ретранслятора 4644 +"imei": "", ~/~/ IMEI объекта ретрансляции 4645 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4646 +} 4647 + ] 4648 +} 4649 + 4650 + 4651 +Ответ: 4652 + 4653 +{ 4654 +"description": "", ~/~/ Поле описания ретранслятора 4655 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4656 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4657 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4658 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4659 +"objects": [ ~/~/ Объекты для ретрансляции 4660 +{ 4661 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4662 +"name": "string", ~/~/ Наименование объекта ретрансляции 4663 +"imei": "", ~/~/ IMEI объекта ретрансляции 4664 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4665 +} 4666 + ], 4667 +"id": "", ~/~/ Идентификатор ретранслятора 4668 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4669 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4670 +} 4671 + 4672 + 4673 +== **Редактирование ретранслятора** == 4674 + 4675 +(% class="box infomessage" %) 4676 +((( 4677 +**PUT** **/api/v3/retranslations** 4678 +))) 4679 + 4680 +Пример запроса: 4681 + 4682 +{ 4683 +"id": "", ~/~/ Идентификатор ретранслятора 4684 +"description": "string", ~/~/ Поле описания ретранслятора 4685 +"subscriberId": "", ~/~/ Идентификатор подписчика 4686 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4687 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4688 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4689 +"objects": ~/~/ Объекты для ретрансляции 4690 +[ 4691 +{ 4692 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4693 +"imei": "", ~/~/ IMEI объекта ретрансляции 4694 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4695 +} 4696 + ] 4697 +} 4698 + 4699 + 4700 +Пример ответа: 4701 + 4702 +{ 4703 +"description": "", ~/~/ Поле описания ретранслятора 4704 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4705 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4706 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4707 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4708 +"objects": [ ~/~/ Объекты для ретрансляции 4709 +{ 4710 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4711 +"name": "string", ~/~/ Наименование объекта ретрансляции 4712 +"imei": "", ~/~/ IMEI объекта ретрансляции 4713 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4714 +} 4715 + ], 4716 +"id": "", ~/~/ Идентификатор ретранслятора 4717 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4718 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4719 +} 4720 + 4721 + 4722 +== **Получение списка ретранслятора клиента** == 4723 + 4724 +(% class="box infomessage" %) 4725 +((( 4726 +**POST /api/v3/retranslations/find** 4727 +))) 4728 + 4729 +Пример запроса: 4730 + 4731 +{ 4732 +"id": "", ~/~/ Идентификатор ретранслятора 4733 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4734 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4735 +} 4736 + 4737 +Ответ: 4738 + 4739 +[ 4740 +{ 4741 +"description": "", ~/~/ Поле описания ретранслятора 4742 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4743 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4744 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4745 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4746 +"id": "", ~/~/ Идентификатор ретранслятора 4747 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4748 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4749 +} 4750 +] 4751 + 4752 + 4753 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4754 + 4755 +== **API для отчета по выгрузке комбайнов** == 4756 + 4757 +(% class="box infomessage" %) 4758 +((( 4759 +**POST /api/v3/Reports/harvesterUnloading** 4760 +))) 4761 + 4762 +Пример запроса: 4763 + 4764 +{ 4765 + "byTime": 0, ~/~/ Объединение событий по времени 4766 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4767 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4768 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4769 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4770 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4771 + 0 4772 + ], 4773 + "from": "", ~/~/ Дата и время начало запроса 4774 + "to": "", ~/~/ Дата и время окончания запроса 4775 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4776 +} 4777 + 4778 +Пример ответа: 4779 + 4780 +[ 4781 + { 4782 + "harvesterName": "", ~/~/Комбайн, номер 4783 + "harvesterId": 0, ~/~/Комбайн, id 4784 +"harvesterModel": "", ~/~/ Модель комбайна 4785 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4786 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4787 + "events": [ ~/~/Список событий в разрезе комбайна 4788 + { 4789 + "driverId": "", ~/~/Идентификатор водителя 4790 + "driverName": "", ~/~/Водитель комбайна, ФИО 4791 + "RFID": "", ~/~/ идентификатор карты-метки 4792 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4793 + "vehicleId": 0, ~/~/идентификатор объекта 4794 + "vehicleName": "string", ~/~/ Имя объекта 4795 + "modelName": "string", ~/~/ Имя модели объекта 4796 + "nearestVehicles": [ ~/~/Объекты рядом 4797 + { 4798 + "vehicleId": 0, ~/~/идентификатор объекта 4799 + "vehicleName": "string" ~/~/ Имя объекта 4800 + } 4801 + ], 4802 + "fields": [ ~/~/Поля, где происходила выгрузка 4803 + { 4804 + "id": 0, ~/~/ идентификатор пользователя 4805 + "name": "string" ~/~/ имя пользователя 4806 + } 4807 + ], 4808 + "event": "string", ~/~/Событие 4809 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4810 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4811 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4812 + "cultureName": "string", ~/~/ название культуры 4813 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4814 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4815 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4816 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4817 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4818 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4819 + "issued": 0, ~/~/Выдано, бункеров 4820 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4821 + "latitude": 0, ~/~/Широта 4822 + "longitude": 0, ~/~/ Долгота 4823 + "litresAway": 0, ~/~/Отдано, л 4824 + "m3Away": 0 ~/~/Отдано, м3 4825 + } 4826 + ] 4827 + } 4828 +] 4829 + 4830 + 4831 +== **Отчет трек-датчики** == 4832 + 4833 +(% class="box infomessage" %) 4834 +((( 4835 +**POST /api/v3/Reports/sensorsWorks** 4836 +))) 4837 + 4838 +**Пример запроса:** 4839 + 4840 +{ 4841 + "vehicleIds": [ ~/~/ Список ID объектов 4842 + 0 4843 + ], 4844 + "from": "2025-02-20T06:39:23.888Z", ~/~/ Начало периода (локальное время клиента) 4845 + "to": "2025-02-20T06:39:23.888Z", ~/~/ Конец периода (локальное время клиента) 4846 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4847 +} 4848 + 4849 +**Пример ответа:** 4850 + 4851 +((( 4852 +{ 4853 + "vehicleSensorWorks": [ ~/~/ Интервалы работы оборудования для конкретного ТС 4854 + { 4855 + "vehicleId": 0, ~/~/ Идентификатор ТС 4856 + "sensorWorks": [ ~/~/ Интервалы работы оборудования. 4857 + { 4858 + "start": "2025-02-20T06:39:23.979Z", ~/~/ Начало интервала работы оборудования. 4859 + "end": "2025-02-20T06:39:23.979Z", ~/~/ Конец интервала работы оборудования. 4860 + "duration": 0, ~/~/ Продолжительность интервала в секундах. 4861 + "name": "string", ~/~/ Наименование оборудования. 4862 + "mileage": 0, ~/~/ Пробег за время работы оборудования. 4863 + "totalMileage": 0, ~/~/ Общий пробег. 4864 + "avgSpeed": 0 ~/~/ Средняя скорость. 4865 + } 4866 + ] 4867 + } 4868 + ] 4869 +} 4870 + 4871 + 4872 +== **Превышение скорости** == 4873 + 4874 +(% class="box infomessage" %) 4875 +((( 4876 +**POST /api/v3/Reports/overSpeedDuration** 4877 +))) 4878 + 4879 + Публичный API запрос о превышениях скорости по объекту в секундах с выбором способа определения нарушений (дорожное ограничение или фиксированное ограничение). 4880 + 4881 +Пример запроса: 4882 + 4883 +((( 4884 +{ 4885 + "vehicleId": 0, ~/~/ идентификационный номер транспортного средства 4886 + "from": "2025-04-21T10:45:25.258Z", ~/~/ Начало периода (локальное время клиента) 4887 + "to": "2025-04-21T10:45:25.258Z", ~/~/ Конец периода (локальное время клиента) 4888 + "timezone": 0, ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4889 + "overSpeedDetectionType": 0 ~/~/ тип нарушения (1-дорожное ограничение, 2-фиксированный ) 4890 +} 4891 +))) 4892 + 4893 +((( 4894 + 4895 +))) 4896 + 4897 +((( 4898 +Пример ответа: 4899 +))) 4900 + 4901 +((( 4902 +((( 4903 +[ 4904 + { 4905 + "eventDate": "2025-04-21T10:45:25.267Z", ~/~/ Дата и время события 4906 + "duration": 0, ~/~/ Продолжительность события в секундах 4907 + "maxSpeed": 0, ~/~/ Максимальная скорость 4908 + "speedLimit": 0 ~/~/ Ограничение скорости 4909 + } 4910 +] 4911 +))) 4912 +))) 4913 +))) 4914 + 4915 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 4916 + 4917 + 4918 +== **Запрос списка полей** == 4919 + 4920 +(% class="box successmessage" %) 4921 +((( 4922 +**POST /api/v3/agroLands/find** 4923 +))) 4924 + 4925 +Пример запроса: 4926 + 4927 +((( 4928 +((( 4929 +((( 4930 +{ 4931 + "year": 0, ~/~/ Фильтр по году 4932 + "name": "string", ~/~/ Фильтр по названию 4933 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 4934 +} 4935 +))) 4936 +))) 4937 + 4938 + 4939 +))) 4940 + 4941 +Пример ответа: 4942 + 4943 +((( 4944 +[ 4945 + { 4946 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4947 + "year": 0, ~/~/ Год поля 4948 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 4949 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 4950 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 4951 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4952 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4953 + "counts": { ~/~/ Счётчики с/х поля 4954 + "fieldOperations": 0, ~/~/ Количество операций на поле 4955 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4956 + "facts": 0 ~/~/ Счётчик факта 4957 + }, 4958 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4959 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4960 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4961 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4962 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4963 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4964 + "planComment": "string", ~/~/ Комментарий к полю 4965 + "productivity": 0, ~/~/ Урожайность. 4966 + "id": 0, ~/~/ Идентификатор объекта геозоны 4967 + "name": "string", ~/~/ Название объекта геозоны 4968 + "type": 0, ~/~/ Тип объекта геозоны 4969 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4970 + "fname": "string", ~/~/ Имя файла 4971 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4972 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 4973 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 4974 + "description": "string", ~/~/ Описание объекта геозоны 4975 + "area": 0, ~/~/ Площадь, м2 4976 + "perimetr": 0, ~/~/ Периметр, м 4977 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 4978 + } 4979 +] 4980 + 4981 + 4982 +== **Создание нового поля ** == 4983 + 4984 +(% class="box successmessage" %) 4985 +((( 4986 +**POST /api/v3/agroLands** 4987 +))) 4988 + 4989 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 4990 +X-agent - ID клиента 4991 + 4992 +Пример запроса: 4993 + 4994 +((( 4995 +{ 4996 + "extId": "string", 4997 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля 4998 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля 4999 + "display": "string", ~/~/ Настройки отображения 5000 + "year": 0, ~/~/ Год поля 5001 + "name": "string", ~/~/ Наименование 5002 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5003 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 5004 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 5005 + "planComment": "string", ~/~/ Комментарий к полю 5006 + "cropRotations": [ ~/~/ Данные по севообороту 5007 + { 5008 + "landId": 0, ~/~/ ID поля 5009 + "landName": "string", ~/~/ Название поля 5010 + "year": 0, ~/~/ Год урожая 5011 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5012 + "cultureName": "string", ~/~/ Название культуры 5013 + "productivity": 0, ~/~/ Урожайность 5014 + "area": 0, ~/~/ Площадь поля, Га 5015 + "total": 0, ~/~/ Валовый сбор 5016 + "productivityFact": 0, ~/~/ Фактическая урожайность 5017 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5018 + "totalFact": 0, ~/~/ Фактический валовый сбор 5019 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 5020 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 5021 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 5022 + "isyearplan": true, ~/~/ Годовой план 5023 + "comment": "string" ~/~/ Комментарий 5024 + } 5025 + ] 5026 +} 5027 +))) 5028 + 5029 +((( 5030 + 5031 +))) 5032 + 5033 +Пример ответа: 5034 + 5035 +((( 5036 +((( 5037 +{ 5038 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5039 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5040 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5041 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5042 + "cropRotations": [ ~/~/ Данные по севообороту 5043 + { 5044 + "landId": 0, ~/~/ ID поля 5045 + "landName": "string", ~/~/ Название поля 5046 + "year": 0, ~/~/ Год урожая 5047 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5048 + "cultureName": "string", ~/~/ Название культуры 5049 + "productivity": 0, ~/~/ Урожайность 5050 + "area": 0, ~/~/ Площадь поля, Га. 5051 + "total": 0, ~/~/ Валовый сбор 5052 + "productivityFact": 0, ~/~/ Фактическая урожайность 5053 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5054 + "totalFact": 0, ~/~/ Фактический валовый сбор 5055 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 5056 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 5057 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 5058 + "isyearplan": true, ~/~/ годовой план 5059 + "comment": "string" ~/~/ Комментарий 5060 + } 5061 + ], 5062 + "cropVegetation": [ ~/~/ История вегетации поля 5063 + { 5064 + "values": [ ~/~/ Данные вегетации и состояния посева 5065 + { 5066 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5067 + "ndvi": 0 ~/~/ Индекс вегетации 5068 + } 5069 + ], 5070 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5071 + { 5072 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5073 + "type": "string", ~/~/ Тип 5074 + "pictureid": "string" ~/~/ Идентификатор ресурса 5075 + } 5076 + ], 5077 + "states": [ ~/~/ Ключевые даты развития поля 5078 + { 5079 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5080 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5081 + } 5082 + ] 5083 + } 5084 + ], 5085 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 5086 + "counts": { 5087 + "fieldOperations": 0, ~/~/ Количество операций на поле 5088 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5089 + "facts": 0 ~/~/ Счётчик факта 5090 + }, 5091 + "planComment": "string", ~/~/ Комментарий к полю 5092 +))) 5093 + 5094 +((( 5095 + "productivity": 0, ~/~/ Урожайность. 5096 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5097 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 5098 + "year": 0, ~/~/ Год поля 5099 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5100 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5101 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5102 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5103 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 5104 + "id": 0, ~/~/ Идентификатор объекта геозоны 5105 + "name": "string", ~/~/ Название объекта геозоны 5106 + "type": 0, ~/~/ Тип объекта геозоны 5107 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5108 + "fname": "string", ~/~/ Имя файла 5109 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5110 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 5111 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 5112 + "description": "string", ~/~/ Описание объекта геозоны 5113 + "area": 0, ~/~/ Площадь, м2 5114 + "perimetr": 0, ~/~/ Периметр, м 5115 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 5116 +} 5117 + 5118 + 5119 +))) 5120 +))) 5121 +))) 5122 + 5123 +== **Получение поля по id** == 5124 + 5125 +(% class="box infomessage" %) 5126 +((( 5127 +**GET /api/v3/agroLands/{id}** 5128 +))) 5129 + 5130 +Пример запроса: 5131 +id ~/~/ Идентификатор поля 5132 + 5133 +Пример ответа: 5134 + 5135 +((( 5136 +{ 5137 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5138 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5139 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5140 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5141 + "cropRotations": [ ~/~/ Данные по севообороту 5142 + { 5143 + "landId": 0, ~/~/ ID поля 5144 + "landName": "string", ~/~/ Название поля 5145 + "year": 0, ~/~/ Год урожая 5146 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5147 + "cultureName": "string", ~/~/ Название культуры 5148 + "productivity": 0, ~/~/ Урожайность 5149 + "area": 0, ~/~/ Площадь поля, Га 5150 + "total": 0, ~/~/ Валовый сбор 5151 + "productivityFact": 0, ~/~/ Фактическая урожайность 5152 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5153 + "totalFact": 0, ~/~/ Фактический валовый сбор 5154 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 5155 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 5156 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 5157 + "isyearplan": true, ~/~/ План года 5158 + "comment": "string" ~/~/ Комментарий 5159 + } 5160 + ], 5161 + "cropVegetation": [ ~/~/ История вегетации поля 5162 + { 5163 + "values": [ ~/~/ Данные вегетации и состояния посева 5164 + { 5165 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5166 + "ndvi": 0 ~/~/ Индекс вегетации 5167 + } 5168 + ], 5169 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5170 + { 5171 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5172 + "type": "string", ~/~/ Тип 5173 + "pictureid": "string" ~/~/ Идентификатор ресурса 5174 + } 5175 + ], 5176 + "states": [ ~/~/ Ключевые даты развития поля 5177 + { 5178 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5179 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 5180 + } 5181 + ] 5182 + } 5183 + ], 5184 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5185 + "counts": { 5186 + "fieldOperations": 0, ~/~/ Количество операций на поле 5187 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5188 + "facts": 0 ~/~/ Счётчик факта 5189 + }, 5190 + "planComment": "string", ~/~/ Комментарий к полю 5191 + "productivity": 0, ~/~/ Урожайность. 5192 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5193 +))) 5194 + 5195 +((( 5196 +((( 5197 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5198 + "year": 0, ~/~/ Год поля 5199 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5200 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5201 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5202 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5203 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5204 + "id": 0, ~/~/ Идентификатор объекта геозоны 5205 + "name": "string", ~/~/ Название объекта геозоны 5206 + "type": 0, ~/~/ Тип объекта геозоны 5207 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5208 + "fname": "string", ~/~/ Имя файла 5209 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5210 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5211 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5212 + "description": "string", ~/~/ Описание объекта геозоны 5213 + "area": 0, ~/~/ Площадь, м2 5214 + "perimetr": 0, ~/~/ Периметр, м 5215 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5216 +} 5217 +))) 5218 + 5219 + 5220 +== **Удаление существующего поля** == 5221 + 5222 +(% class="box errormessage" %) 5223 +((( 5224 +**DELETE /api/v3/agroLands/{id}** 5225 +))) 5226 + 5227 +Пример запроса: 5228 +id ~/~/ Идентификатор поля 5229 + 5230 +Пример ответа: 5231 + 5232 +((( 5233 +200 ~/~/ Успех 5234 +))) 5235 + 5236 +((( 5237 + 5238 +))) 5239 + 5240 +((( 5241 +((( 5242 +((( 5243 + 5244 +))) 5245 + 5246 +((( 5247 +== **Изменение поля** == 5248 + 5249 +(% class="box infomessage" %) 5250 +((( 5251 +**PUT /api/v3/agroLands** 5252 +))) 5253 + 5254 +Пример запроса: 5255 + 5256 +((( 5257 +((( 5258 +{ 5259 + "id": 0, ~/~/ Идентификатор поля 5260 + "extId": "string", ~/~/ ExtId 5261 + "shape": "string", ~/~/ Форма поля 5262 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5263 + "display": "string", ~/~/ Настройки отображения 5264 + "year": 0, ~/~/ Год поля 5265 + "name": "string", ~/~/ Наименование 5266 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5267 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5268 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5269 + "planComment": "string", ~/~/Комментарий к полю 5270 + "cropRotations": [ ~/~/ Данные по севообороту 5271 + { 5272 + "landId": 0, ~/~/ ID поля 5273 + "landName": "string", ~/~/ Название поля 5274 + "year": 0, ~/~/ Год урожая 5275 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5276 + "cultureName": "string", ~/~/ Название культуры 5277 + "productivity": 0, ~/~/ Урожайность 5278 + "area": 0, ~/~/ Площадь поля, Га. 5279 + "total": 0, ~/~/ Валовый сбор 5280 + "productivityFact": 0, ~/~/ Фактическая урожайность 5281 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5282 + "totalFact": 0, ~/~/ Фактический валовый сбор 5283 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5284 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5285 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5286 + "isyearplan": true, 5287 + "comment": "string" ~/~/ Комментарий 5288 + } 5289 + ], 5290 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5291 +} 5292 +))) 5293 +))) 5294 + 5295 +((( 5296 + 5297 +))) 5298 + 5299 +Пример ответа: 5300 + 5301 +((( 5302 +((( 5303 +((( 5304 +{ 5305 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5306 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5307 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5308 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5309 + "cropRotations": [ ~/~/ Данные по севообороту 5310 + { 5311 + "landId": 0, ~/~/ ID поля 5312 + "landName": "string", ~/~/ Название поля 5313 + "year": 0, ~/~/ Год урожая 5314 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5315 + "cultureName": "string", ~/~/ Название культуры 5316 + "productivity": 0, ~/~/ Урожайность 5317 + "area": 0, ~/~/ Площадь поля, Га 5318 + "total": 0, ~/~/ Валовый сбор 5319 + "productivityFact": 0, ~/~/ Фактическая урожайность 5320 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5321 + "totalFact": 0, ~/~/ Фактический валовый сбор 5322 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5323 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5324 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5325 + "isyearplan": true, ~/~/ 5326 + "comment": "string" ~/~/ Комментарий 5327 + } 5328 + ], 5329 + "cropVegetation": [ ~/~/ История вегетации поля 5330 + { 5331 + "values": [ ~/~/ Данные вегетации и состояния посева 5332 + { 5333 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5334 + "ndvi": 0 ~/~/ Индекс вегетации 5335 + } 5336 + ], 5337 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5338 + { 5339 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5340 + "type": "string", ~/~/ Тип 5341 + "pictureid": "string" ~/~/ Идентификатор ресурса 5342 + } 5343 + ], 5344 + "states": [ ~/~/ Ключевые даты развития поля 5345 + { 5346 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5347 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5348 + } 5349 + ] 5350 + } 5351 + ], 5352 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5353 + "counts": { 5354 + "fieldOperations": 0, ~/~/ Количество операций на поле 5355 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5356 + "facts": 0 ~/~/ Счётчик факта 5357 + }, 5358 + "planComment": "string", ~/~/ Комментарий к полю 5359 + "productivity": 0, ~/~/ Урожайность. 5360 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5361 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5362 + "year": 0, ~/~/ Год поля 5363 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5364 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5365 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5366 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5367 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5368 + "id": 0, ~/~/ Идентификатор объекта геозоны 5369 + "name": "string", ~/~/ Название объекта геозоны 5370 + "type": 0, ~/~/ Тип объекта геозоны 5371 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5372 + "fname": "string", ~/~/ Имя файла 5373 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5374 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5375 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5376 + "description": "string", ~/~/ Описание объекта геозоны 5377 + "area": 0, ~/~/ Площадь, м2 5378 + "perimetr": 0, ~/~/ Периметр, м 5379 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5380 +} 5381 +))) 5382 +))) 5383 +))) 5384 +))) 5385 +))) 5386 + 5387 + 5388 +== **Редактирование года урожая ** == 5389 + 5390 +(% class="box successmessage" %) 5391 +((( 5392 +**POST /api/v3/agroLands/updateOpenCloseYear** 5393 +))) 5394 + 5395 +Пример запроса: 5396 + 5397 +((( 5398 +((( 5399 +{ 5400 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5401 + 0 5402 + ], 5403 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5404 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5405 +} 5406 +))) 5407 + 5408 + 5409 +))) 5410 + 5411 +Пример ответа: 5412 + 5413 +((( 5414 +((( 5415 +{ 5416 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5417 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5418 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5419 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5420 + "cropRotations": [ ~/~/ Данные по севообороту 5421 + { 5422 + "landId": 0, ~/~/ ID поля 5423 + "landName": "string", ~/~/ Название поля 5424 + "year": 0, ~/~/ Год урожая 5425 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5426 + "cultureName": "string", ~/~/ Название культуры 5427 + "productivity": 0, ~/~/ Урожайность 5428 + "area": 0, ~/~/ Площадь поля, Га. 5429 + "total": 0, ~/~/ Валовый сбор 5430 + "productivityFact": 0, ~/~/ Фактическая урожайность 5431 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5432 + "totalFact": 0, ~/~/ Фактический валовый сбор 5433 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5434 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5435 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5436 + "isyearplan": true, ~/~/ 5437 + "comment": "string" ~/~/ Комментарий 5438 + } 5439 + ], 5440 + "cropVegetation": [ ~/~/ История вегетации поля 5441 + { 5442 + "values": [ ~/~/ Данные вегетации и состояния посева 5443 + { 5444 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5445 + "ndvi": 0 ~/~/ Индекс вегетации 5446 + } 5447 + ], 5448 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5449 + { 5450 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5451 + "type": "string", ~/~/ Тип 5452 + "pictureid": "string" ~/~/ Идентификатор ресурса 5453 + } 5454 + ], 5455 + "states": [ ~/~/ Ключевые даты развития поля 5456 + { 5457 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5458 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5459 + } 5460 + ] 5461 + } 5462 + ], 5463 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5464 + "counts": { 5465 + "fieldOperations": 0, ~/~/ Количество операций на поле 5466 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5467 + "facts": 0 ~/~/ Счётчик факта 5468 + }, 5469 + "planComment": "string", ~/~/ Комментарий к полю 5470 + "productivity": 0, ~/~/ Урожайность. 5471 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5472 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5473 + "year": 0, ~/~/ Год поля 5474 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5475 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5476 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5477 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5478 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5479 + "id": 0, ~/~/ Идентификатор объекта геозоны 5480 + "name": "string", ~/~/ Название объекта геозоны 5481 + "type": 0, ~/~/ Тип объекта геозоны 5482 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5483 + "fname": "string", ~/~/ Имя файла 5484 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5485 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5486 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5487 + "description": "string", ~/~/ Описание объекта геозоны 5488 + "area": 0, ~/~/ Площадь, м2 5489 + "perimetr": 0, ~/~/ ериметр, м 5490 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5491 +} 5492 +))) 5493 + 5494 + 5495 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5496 +))) 5497 +))) 5498 +))) 5499 + 5500 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 5501 + 5502 + 5503 +(% class="box infomessage" %) 5504 +((( 5505 +**GET api/v3/Vehicles/recyclebin/all** 5506 +))) 5507 + 5508 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 5509 + 5510 +Параметр запроса: {parentId} - идентификатор агента 5511 + 5512 +В заголовках запроса: X-Auth: Токен авторизации 5513 + 5514 +Ответ: 5515 + 5516 +[ 5517 + { 5518 + "recordTime": "", ~/~/Время записи 5519 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5520 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5521 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5522 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5523 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5524 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5525 + "items": [ ~/~/ 5526 +nullable: true ~/~/Детали 5527 + { 5528 + "name": "string", ~/~/наименование столбца 5529 + "value": "string" ~/~/содержание столбца 5530 + } 5531 + ] 5532 + }, 5533 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5534 + "string" 5535 + ] 5536 + } 5537 +] 5538 + 5539 + 5540 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) == 5541 + 5542 +(% class="box infomessage" %) 5543 +((( 5544 +**POST api/v3/Vehicles/recyclebin/erase** 5545 +))) 5546 + 5547 +В заголовках запроса: X-Auth: Токен авторизации 5548 + 5549 +Пример запроса: 5550 + 5551 +[ 5552 +0 5553 +] 5554 + 5555 + 5556 +Пример ответа: 5557 + 5558 +[ 5559 +{ 5560 + "recordTime": "", ~/~/Время записи 5561 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5562 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5563 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5564 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5565 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5566 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5567 + "items": [ ~/~/Детали 5568 + { 5569 + "name": "", ~/~/Имя свойства 5570 + "value": "" ~/~/Значение свойства 5571 + } 5572 + ] 5573 + }, 5574 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5575 + "" 5576 + ] 5577 + } 5578 +] 5579 + 5580 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 5581 + 5582 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 5583 + 5584 +(% class="box infomessage" %) 5585 +((( 5586 +**POST api/v3/Vehicles/recyclebin/restore** 5587 +))) 5588 + 5589 +В заголовках запроса: X-Auth: Токен авторизации 5590 + 5591 +Параметры в теле запроса (JSON): 5592 + 5593 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5594 + 5595 +В заголовках запроса: X-Auth: Токен авторизации 5596 + 5597 + 5598 +Пример запроса: 5599 + 5600 +((( 5601 +[ 5602 +))) 5603 + 5604 +((( 5605 + 0 5606 +))) 5607 + 5608 +((( 5609 +] 5610 +))) 5611 + 5612 + 5613 +Пример ответа: 5614 + 5615 +[ 5616 +{ 5617 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5618 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5619 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5620 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5621 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5622 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5623 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5624 + "items": [ ~/~/Детали 5625 + { 5626 + "name": "string", ~/~/Имя свойства 5627 + "value": "string" ~/~/Значение свойства 5628 + } 5629 + ] 5630 + }, 5631 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5632 + "string" 5633 + ] 5634 + } 5635 +] 5636 + 5637 + 5638 += **Раздел: Журнал заданий ** = 5639 + 5640 + 5641 +== **Создание задания в Журнале заданий** == 5642 + 5643 +(% class="box infomessage" %) 5644 +((( 5645 +**POST /api/v3/vehicletasks** 5646 +))) 5647 + 5648 +Пример запроса: 5649 + 5650 +((( 5651 +{ 5652 + "vehicleId": 0, ~/~/ Идентификатор ТС 5653 + "description": "string", ~/~/ Описание 5654 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5655 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5656 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы 5657 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы 5658 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5659 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5660 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5661 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5662 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5663 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5664 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5665 + "cost": { 5666 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5667 + "Name": "string", ~/~/ Наименование 5668 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection ) 5669 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5670 + "Norm": 0 ~/~/ Норма внесения 5671 + }, 5672 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 5673 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5674 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания 5675 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления 5676 + "deleted": true, ~/~/ Признак удаления 5677 + "extId": "string", 5678 + "GeoIds": [ ~/~/ Cвязанные поля 5679 + 0 5680 + ] 5681 +} 5682 +))) 5683 + 5684 + 5685 +Пример ответа: 5686 + 5687 +{ 5688 + "vehicleId": 0, ~/~/ Идентификатор ТС 5689 + "description": "string", ~/~/ Описание 5690 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5691 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5692 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5693 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5694 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5695 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5696 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5697 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5698 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5699 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5700 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5701 + "cost": { 5702 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5703 + "Name": "string", ~/~/ Наименование 5704 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5705 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5706 + "Norm": 0 ~/~/ Норма внесения 5707 + }, 5708 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5709 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5710 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5711 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5712 + "deleted": true, ~/~/ Признак удаления 5713 + "extId": "string", ~/~/ ExtId 5714 + "GeoIds": [ ~/~/ Связанные поля 5715 + 0 5716 + ] 5717 +} 5718 + 5719 + 5720 +== **Редактирование задания в Журнале заданий** == 5721 + 5722 +(% class="box successmessage" %) 5723 +((( 5724 +**PUT /api/v3/vehicletasks** 5725 +))) 5726 + 5727 +Пример запроса: 5728 + 5729 +((( 5730 +{ 5731 + "vehicleId": 0, ~/~/ Идентификатор ТС 5732 + "description": "string", ~/~/ Описание 5733 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5734 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5735 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы 5736 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы 5737 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5738 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5739 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5740 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5741 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5742 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5743 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5744 + "cost": { 5745 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5746 + "Name": "string", ~/~/ Наименование 5747 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5748 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5749 + "Norm": 0 ~/~/ Норма внесения 5750 + }, 5751 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5752 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5753 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания 5754 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления 5755 + "deleted": true, ~/~/ Признак удаления 5756 + "extId": "string", ~/~/ ExtId 5757 + "GeoIds": [ ~/~/ Связанные поля 5758 + 0 5759 + ] 5760 +} 5761 +))) 5762 + 5763 + 5764 +Пример ответа: 5765 + 5766 +{ 5767 + "vehicleId": 0, ~/~/ Идентификатор ТС 5768 + "description": "string", ~/~/ Описание 5769 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5770 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5771 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5772 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5773 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5774 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5775 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5776 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5777 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5778 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5779 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5780 + "cost": { 5781 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5782 + "Name": "string", ~/~/ Наименование 5783 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5784 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5785 + "Norm": 0 ~/~/ Норма внесения 5786 + }, 5787 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5788 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5789 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5790 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5791 + "deleted": true, ~/~/ Признак удаления 5792 + "extId": "string", ~/~/ ExtId 5793 + "GeoIds": [ ~/~/ Связанные поля 5794 + 0 5795 + ] 5796 +} 5797 + 5798 + 5799 +== **Удаление задания в Журнале заданий** == 5800 + 5801 +(% class="box warningmessage" %) 5802 +((( 5803 +**DELETE /api/v3/vehicletasks** 5804 +))) 5805 + 5806 +Пример запроса: 5807 + 5808 +((( 5809 +[ 5810 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 5811 +] 5812 +))) 5813 + 5814 +((( 5815 + 5816 +))) 5817 + 5818 +Пример ответа: 5819 + 5820 +{ 5821 + "vehicleId": 0, ~/~/ Идентификатор ТС 5822 + "description": "string", ~/~/ Описание 5823 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5824 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5825 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5826 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5827 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5828 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5829 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5830 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5831 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5832 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5833 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5834 + "cost": { 5835 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5836 + "Name": "string", ~/~/ Наименование 5837 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5838 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5839 + "Norm": 0 ~/~/ Норма внесения 5840 + }, 5841 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5842 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5843 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5844 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5845 + "deleted": true, ~/~/ Признак удаления 5846 + "extId": "string", ~/~/ ExtId 5847 + "GeoIds": [ ~/~/ Связанные поля 5848 + 0 5849 + ] 5850 +} 5851 + 5852 + 5853 +== **Получение списка Журнала заданий** == 5854 + 5855 +(% class="box infomessage" %) 5856 +((( 5857 +**POST /api/v3/vehicletasks/getbyperiod** 5858 +))) 5859 + 5860 +Пример запроса: 5861 + 5862 +((( 5863 +{ 5864 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода. 5865 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода. 5866 + "TimeZone": 0, ~/~/ Часовой пояс. 5867 + "OperationsIds": [ ~/~/ Идентификаторы видов работ для фильтрации журнала 5868 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 5869 + ], 5870 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала 5871 + 0 5872 + ], 5873 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала 5874 + 0 5875 + ], 5876 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска. 5877 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 5878 +} 5879 +))) 5880 + 5881 + 5882 +Пример ответа: 5883 + 5884 +((( 5885 +{ 5886 + "total": 0, ~/~/ Общее количество записей 5887 + "pages": 0, ~/~/ Общее количество страниц 5888 + "currentPage": 0, ~/~/ Текущая страница 5889 + "items": [ ~/~/ Записи 5890 + { 5891 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5892 + "isGroup": true, ~/~/ Вид задания (true - групповое, иначе - одиночное). 5893 + "name": "string", ~/~/ Название задания. 5894 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc 5895 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc 5896 + "workKind": "string", ~/~/ Вид работ 5897 + "techOp": "string", ~/~/ Тех. операция 5898 + "trailerModel": "string", ~/~/ Модель агрегата 5899 + "width": "string", ~/~/ Ширина, м 5900 + "speed": "string", ~/~/ Тех. скорость 5901 + "fields": "string", ~/~/ Поля 5902 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га) 5903 + "vehicles": "string", ~/~/ Объект-модель 5904 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов) 5905 + "drivers": "string", ~/~/ Водители 5906 + "tmc": "string", ~/~/ ТМЦ 5907 + "client": "string", ~/~/ Клиент 5908 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5909 + "dep": "string", ~/~/ Подразделение 5910 + "geoIds": [ ~/~/ Связанные поля 5911 + 0 5912 + ] 5913 + } 5914 + ] 5915 +} 5916 +))) 5917 + 5918 + 5919 += **Раздел: Локатор ** = 5920 + 5921 + 5922 +== **Получение списка локаторов, доступных пользователю ** == 5923 + 5924 +(% class="box infomessage" %) 5925 +((( 5926 +**GET /api/v3/locators** 5927 +))) 5928 + 5929 +В заголовках запроса: X-Auth: Токен авторизации 5930 + 5931 + 5932 +Пример ответа: 5933 + 5934 +((( 5935 +[ 5936 + { 5937 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 5938 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 5939 + "agentName": "string", ~/~/ Наименование агента. 5940 + "isEnabled": true, ~/~/ Активен 5941 + "created": "2025-03-12T06:48:41.254Z", ~/~/ Дата создания 5942 + "updated": "2025-03-12T06:48:41.254Z", ~/~/ Дата обновления 5943 + "name": "string", ~/~/ Наименование 5944 + "status": 0, ~/~/ 5945 + "activationMode": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 5946 + "activationTime": "2025-03-12T06:48:41.254Z", ~/~/ Определяет вид активации локаторов. ( 0 - сейчас, 1 - время активации) 5947 + "validity": 0, ~/~/ Срок действия в днях (1-90). 5948 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5949 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 5950 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 5951 + "url": "string", ~/~/ Ссылка 5952 + "language": 0, ~/~/ Язык. 5953 + "vehiclesCount": 0, ~/~/ Количество объектов. 5954 + "geozonesCount": 0, ~/~/ Количество геозон. 5955 + "fieldsCount": 0 ~/~/ Количество полей. 5956 + } 5957 +] 5958 +))) 5959 + 5960 + 5961 + 5962 +== **Создание локатора** == 5963 + 5964 +(% class="box successmessage" %) 5965 +((( 5966 +**POST /api/v3/locators** 5967 +))) 5968 + 5969 +Пример запроса: 5970 + 5971 +((( 5972 +{ 5973 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 5974 + "isEnabled": true, ~/~/ Активность 5975 + "name": "string", ~/~/ Наименование локатора 5976 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 5977 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 5978 + "validity": 0, ~/~/ Срок действия в днях (1-90) 5979 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5980 + "url": "string", ~/~/ Ссылка 5981 + "language": 0 ~/~/ Язык 5982 +} 5983 +))) 5984 + 5985 + 5986 +Пример ответа: 5987 + 5988 +((( 5989 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора 5990 +))) 5991 + 5992 + 5993 + 5994 +== **Изменение локатора** == 5995 + 5996 +(% class="box infomessage" %) 5997 +((( 5998 +**PUT /api/v3/locators** 5999 +))) 6000 + 6001 +Пример запроса: 6002 + 6003 +((( 6004 +{ 6005 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6006 + "isEnabled": true, ~/~/ Активность 6007 + "name": "string", ~/~/ Наименование 6008 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6009 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 6010 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6011 + "autoProlongation": true, ~/~/ Автопродление срока действия 6012 + "url": "string", ~/~/ Ссылка 6013 + "language": 0 ~/~/ Язык 6014 +} 6015 +))) 6016 + 6017 + 6018 +Пример ответа: 6019 + 6020 +200 ~/~/ Success 6021 + 6022 + 6023 +== **Удалить локатор** == 6024 + 6025 +(% class="box warningmessage" %) 6026 +((( 6027 +**DELETE /api/v3/locators** 6028 +))) 6029 + 6030 +Пример запроса: 6031 + 6032 +((( 6033 +[ 6034 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора 6035 +] 6036 +))) 6037 + 6038 + 6039 + 6040 += **Раздел: Яндекс Маршруты** = 6041 + 6042 + 6043 +== **Возвращение списка маршрутов** == 6044 + 6045 +(% class="box infomessage" %) 6046 +((( 6047 +**GET /api/v3/TransportRoutes** 6048 +))) 6049 + 6050 +Пример запроса: 6051 +Id ~/~/ Идентификатор поля 6052 + 6053 + 6054 +Пример ответа: 6055 + 6056 +((( 6057 +[ 6058 + { 6059 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 6060 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6061 + "name": "string", ~/~/ Наименование маршрута. 6062 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6063 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6064 + 0 6065 + ] 6066 + } 6067 +] 6068 +))) 6069 + 6070 + 6071 + 6072 +== **Добавить маршрут** == 6073 + 6074 +(% class="box infomessage" %) 6075 +((( 6076 +**POST /api/v3/TransportRoutes** 6077 +))) 6078 + 6079 +Пример запроса: 6080 +{ 6081 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6082 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6083 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6084 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6085 + 0 6086 + ] 6087 +} 6088 + 6089 + 6090 +Пример ответа: 6091 + 6092 +((( 6093 +{ 6094 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6095 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6096 + "name": "string", ~/~/ Определяет наименование маршрута 6097 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6098 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6099 + 0 6100 + ] 6101 +} 6102 +))) 6103 + 6104 + 6105 +== **Обновление маршрута** == 6106 + 6107 +(% class="box successmessage" %) 6108 +((( 6109 +**PUT /api/v3/TransportRoutes** 6110 +))) 6111 + 6112 +Пример запроса: 6113 + 6114 +((( 6115 +{ 6116 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6117 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6118 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6119 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6120 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6121 + 0 6122 + ] 6123 +} 6124 +))) 6125 + 6126 + 6127 +Пример ответа: 6128 + 6129 +((( 6130 +{ 6131 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6132 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6133 + "name": "string", ~/~/ Определяет наименование маршрута 6134 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6135 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6136 + 0 6137 + ] 6138 +} 6139 +))) 6140 + 6141 + 6142 +== **Получить связки маршрутов ТС** == 6143 + 6144 +(% class="box infomessage" %) 6145 +((( 6146 +**POST /api/v3/TransportRoutes/getroutesvehicles** 6147 +))) 6148 + 6149 +Пример запроса: 6150 + 6151 +((( 6152 +[ 6153 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ идентификатор маршрута 6154 +] 6155 +))) 6156 + 6157 + 6158 +Пример ответа: 6159 + 6160 +((( 6161 +[ 6162 + { 6163 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС 6164 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута 6165 + } 6166 +] 6167 +))) 6168 + 6169 + 6170 +== **Удалить маршрут** == 6171 + 6172 +(% class="box warningmessage" %) 6173 +((( 6174 +**DELETE /api/v3/TransportRoutes/{id}** 6175 +))) 6176 + 6177 +Пример запроса: 6178 +Id ~/~/ Идентификатор поля 6179 + 6180 + 6181 +==== ==== 6182 + 6183 += **Раздел: Управление доступа к машинам** = 6184 + 6185 + 6186 +== Получение списка транспортных средств видимых пользователю == 6187 + 6188 +(% class="box infomessage" %) 6189 +((( 6190 +**GET /api/v3/UserVisibleVehicles/{userId}** 6191 +))) 6192 + 6193 +Пример ответа: 6194 + 6195 +((( 6196 +{ 6197 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6198 + 0 6199 + ] 6200 +} 6201 +))) 6202 + 6203 + 6204 + 6205 +== Задает видимость транспортных средств пользователю == 6206 + 6207 +(% class="box infomessage" %) 6208 +((( 6209 +**POST /api/v3/UserVisibleVehicles** 6210 +))) 6211 + 6212 +Пример запроса: 6213 + 6214 +((( 6215 +((( 6216 +{ 6217 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя 6218 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6219 + 0 6220 + ] 6221 +} 6222 +))) 6223 + 6224 +((( 6225 + 6226 +))) 6227 + 6228 +((( 6229 + 6230 +))) 6231 + 6232 +((( 6233 +Пример ответа : 6234 +))) 6235 + 6236 +((( 6237 + 6238 +))) 6239 + 6240 +((( 6241 +200 ~/~/ Success 6242 +))) 6243 +))) 6244 + 6245 + 6246 + 6247 + 6248 + 6249 + 4056 4056 (% class="box" lang="en-US" style="text-align: center;" %) 4057 4057 ((( 4058 4058 (% 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]] **