Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/06/27 16:12
<
>
edited by Андрей Калиновский
on 2024/03/26 12:01
on 2024/03/26 12:01
edited by Андрей Калиновский
on 2025/06/09 16:36
on 2025/06/09 16:36
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 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. ... ... @@ -101,29 +101,41 @@ 101 101 Запрос должен содержать данные параметра "**agentId**" 102 102 103 103 (% style="color:#000000" %)Ответ: 126 + 127 +((( 104 104 { 105 - "agentId": "", (%%) 106 - "parentId": "", 107 - "parentName": "string", 108 - "name": "string", 109 - "fullName": "string", 110 - "agentInfoType": 0, 111 - "isForeign": true/false, 112 - "district": "string", 113 - "region": "string", 114 - "city": "string", 115 - "inn": "string", 116 - "kpp": "string", 117 - "address": "string", 118 - "addressFact": "string", 119 - "email": "string", 120 - "director": "string", 121 - "bankName": "string", 122 - "bankBIK": "string", 123 - "bankRS": "string", 124 - "bankKS": "string" 125 - } 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 +))) 126 126 160 + 127 127 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 128 128 |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 129 129 |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя ... ... @@ -229,7 +229,6 @@ 229 229 "bankKS": "string" ~/~/ корр. счёт 230 230 } 231 231 232 - 233 233 Ответ: 234 234 235 235 { ... ... @@ -423,7 +423,6 @@ 423 423 ], 424 424 "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 425 425 } 426 - 427 427 { 428 428 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 429 429 "lastName": "string", ... ... @@ -437,12 +437,8 @@ 437 437 438 438 (% style="text-align:left" %) 439 439 (% style="color:#000000; font-weight:normal" %)Ответ: 440 - 441 -(% style="text-align:left" %) 442 -(% style="color:#000000; font-weight:normal" %){ 443 - 444 -(% style="text-align:left" %) 445 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 472 +{ 473 + "id": "" , ~/~/ ID пользователя 446 446 "lastName": "" , ~/~/ Фамилия , 447 447 "firstName": "" , ~/~/ Имя 448 448 "position": "" , ~/~/ Должность ... ... @@ -459,11 +459,9 @@ 459 459 "kind": "" , ~/~/ тип аутентификации 460 460 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 461 461 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 490 +} 462 462 463 -(% style="text-align:left" %) 464 -(% style="color:#000000; font-weight:normal" %)} 465 465 466 - 467 467 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 468 468 469 469 (% class="box infomessage" %) ... ... @@ -483,19 +483,16 @@ 483 483 484 484 (% style="color:#000000" %)Параметры в теле запроса (JSON): 485 485 486 -(% style="color:#000000" %){ 487 - 512 +(% style="color:#000000" %){(%%) 488 488 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 489 489 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 490 490 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 491 491 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 492 - 493 493 (% style="color:#000000" %)} 494 494 495 495 (% style="color:#000000" %)Ответ: 496 496 497 497 (% style="color:#000000" %){ (%%) 498 - 499 499 "id": "" , ~/~/ идентификатор пользователя 500 500 "lastName": "" , ~/~/ фамилия 501 501 "firstName": "" , ~/~/ имя ... ... @@ -509,7 +509,6 @@ 509 509 "sessionDuration":"", ~/~/ длительность сессии в минутах 510 510 "status": "1", ~/~/ статус пользователя 511 511 "lastLogged": "", ~/~/ дата/время последней авторизации 512 - 513 513 (% style="color:#000000" %)} 514 514 515 515 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -583,10 +583,8 @@ 583 583 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 584 584 585 585 (% lang="en-US" style="text-align:left" %) 586 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 587 - 588 -(% lang="en-US" style="text-align:left" %) 589 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 608 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 609 + "id": "" , ~/~/ ID пользователя 590 590 "lastName": "" , ~/~/ фамилия 591 591 "firstName": "" , ~/~/ имя 592 592 "position": "" , ~/~/ должность ... ... @@ -608,9 +608,7 @@ 608 608 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 609 609 }, 610 610 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 611 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 612 - 613 -(% lang="en-US" style="text-align:left" %) 631 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 614 614 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 615 615 616 616 (% lang="en-US" style="text-align:left" %) ... ... @@ -617,10 +617,8 @@ 617 617 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 618 618 619 619 (% lang="en-US" style="text-align:left" %) 620 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 621 - 622 -(% lang="en-US" style="text-align:left" %) 623 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 638 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 639 + "id": "" , ~/~/ идентификатор пользователя 624 624 "lastName": "" , ~/~/ фамилия 625 625 "firstName": "" , ~/~/ имя 626 626 "position": "" , ~/~/ должность ... ... @@ -641,10 +641,8 @@ 641 641 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 642 642 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 643 643 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 660 +} 644 644 645 -(% lang="en-US" style="text-align:left" %) 646 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 647 - 648 648 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 649 649 650 650 (% class="box warningmessage" %) ... ... @@ -664,12 +664,10 @@ 664 664 665 665 (% style="color:#000000" %)Параметры в теле запроса (JSON): 666 666 667 -(% style="color:#000000" %){ 668 - 681 +(% style="color:#000000" %){(%%) 669 669 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 670 670 "description": "" , ~/~/ описание 671 671 "data": "" , ~/~/ данные, связанные со сменой статуса 672 - 673 673 (% style="color:#000000" %)} 674 674 675 675 (% style="text-align:left" %) ... ... @@ -691,7 +691,7 @@ 691 691 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 692 692 693 693 [ 694 - 706 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 695 695 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 696 696 ] 697 697 ... ... @@ -865,7 +865,7 @@ 865 865 { 866 866 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 867 867 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 868 - "deleted": true,880 + "deleted": false, 869 869 "extId": "string", 870 870 "name": "string", 871 871 "picture": "string", ... ... @@ -884,7 +884,7 @@ 884 884 { 885 885 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 886 886 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 887 - "deleted": true,899 + "deleted": false, 888 888 "extId": "string", 889 889 "name": "string", 890 890 "picture": "string", ... ... @@ -918,7 +918,7 @@ 918 918 (% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models** 919 919 ))) 920 920 921 -(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе.933 +(% style="color:#000000" %)Метод позволяет изменить статус модели, указанного в запросе. 922 922 923 923 (% style="color:#000000" %)Метод запроса: **PUT** 924 924 ... ... @@ -985,7 +985,7 @@ 985 985 (% lang="en-US" %)**DELETE /api/v3/models/{Id}** 986 986 ))) 987 987 988 -(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалитьпользователя, указанного в строке запроса.1000 +(% style="color:#000000" %)Метод позволяет удалить модели. Метод позволяет удалить модель, указанного в строке запроса. 989 989 990 990 (% style="color:#000000" %)Метод запроса: **DELETE** 991 991 ... ... @@ -997,7 +997,7 @@ 997 997 998 998 Ответ: В случае успеха **Success 200** 999 999 1000 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 1012 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 1001 1001 1002 1002 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 1003 1003 ... ... @@ -1026,6 +1026,17 @@ 1026 1026 1027 1027 ((( 1028 1028 { 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 + 1029 1029 "vehicleId": "", ~/~/ ID объекта 1030 1030 "name": "", ~/~/ Имя объекта 1031 1031 "imei": "", ~/~/ IMEI объекта ... ... @@ -1033,19 +1033,15 @@ 1033 1033 "deviceTypeName": "", ~/~/ Название типа устройства 1034 1034 "sim1": "", ~/~/ Номер SIM1 1035 1035 "sim2": "", ~/~/ Номер SIM2 1036 - 1037 1037 "parentId": "", ~/~/ ID клиента-родителя 1038 1038 "parentName": "", ~/~/ Наименование клиента-родителя 1039 1039 "modelId": "", ~/~/ ID модели объекта 1040 1040 "modelName": "", ~/~/ Имя модели объекта 1041 - 1042 1042 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1043 1043 "unitName": "string", ~/~/ Наименование подразделения 1044 1044 "status": 0, ~/~/ Статус объекта 1045 - 1046 1046 "createdAt": "", ~/~/ Дата создания объекта 1047 1047 }, 1048 - 1049 1049 "customFields": [ ~/~/ Произвольные поля 1050 1050 { 1051 1051 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -1068,8 +1068,7 @@ 1068 1068 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1069 1069 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1070 1070 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1071 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1072 - 1090 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1073 1073 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1074 1074 "mileageCoeff": 0, ~/~/ коэффициент пробега 1075 1075 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1099,7 +1099,6 @@ 1099 1099 "retries": 0 ~/~/ Количество попыток 1100 1100 } 1101 1101 ], 1102 - 1103 1103 "sensors": [ ~/~/ Датчики 1104 1104 { 1105 1105 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1126,6 +1126,7 @@ 1126 1126 ], 1127 1127 "showInTooltip": true, ~/~/ Отображать в подсказке 1128 1128 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1146 + "color": "string", ~/~/ Код цвета датчиков 1129 1129 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1130 1130 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1131 1131 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1140,31 +1140,19 @@ 1140 1140 }, 1141 1141 1142 1142 ~/~/ Характерные для произвольного: 1143 - 1144 1144 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1145 - 1146 1146 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1147 - 1148 1148 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1149 - 1150 1150 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1151 - 1152 1152 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1153 - 1154 1154 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1155 - 1156 1156 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1157 - 1158 1158 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1159 - 1160 1160 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1161 - 1162 1162 ~/~/ "ValueOn": "Вкл.", 1163 - 1164 1164 ~/~/ "ValueOff": "Выкл." 1165 1165 "summaryMaxValue": 0 ~/~/ Макс. значение 1166 1166 } 1167 - 1168 1168 "drivers": [ ~/~/ Водители 1169 1169 { 1170 1170 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1173,7 +1173,6 @@ 1173 1173 "isDefault": true ~/~/ По умолчанию 1174 1174 } 1175 1175 ], 1176 - 1177 1177 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1178 1178 { 1179 1179 "id": "", ~/~/ ID задания ... ... @@ -1190,19 +1190,27 @@ 1190 1190 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1191 1191 } 1192 1192 ], 1193 - 1194 - "statusHistory": [ ~/~/ История статусов 1198 +"statusHistory": [ ~/~/ История статусов 1195 1195 { 1196 1196 "status": 0, 1197 1197 "date": "2023-05-22T09:57:39.562Z", 1198 1198 "description": "string", 1199 1199 "additionalInfo": "string" 1200 - } 1201 - ] 1202 1202 1205 +((( 1203 1203 } 1207 + ], 1208 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1209 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1204 1204 ))) 1205 1205 1212 +((( 1213 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1214 +} 1215 + 1216 +))) 1217 +))) 1218 + 1206 1206 (% style="text-align:left" %) 1207 1207 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 1208 1208 ... ... @@ -1209,6 +1209,75 @@ 1209 1209 (% style="text-align:left" %) 1210 1210 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1211 1211 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 + 1212 1212 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1213 1213 1214 1214 (% class="box successmessage" %) ... ... @@ -1228,6 +1228,11 @@ 1228 1228 1229 1229 (% style="color:#000000" %){ 1230 1230 1313 + 1314 +((( 1315 + "vehicleId": 0, ~/~/ ID ТС 1316 +))) 1317 + 1231 1231 "parentId": "" , ~/~/ ID клиента 1232 1232 "name": "" , ~/~/ имя ТС 1233 1233 "imei": "" , ~/~/ IMEI ... ... @@ -1248,7 +1248,6 @@ 1248 1248 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1249 1249 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1250 1250 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1251 - 1252 1252 "mileageCalcMethod": 0, 1253 1253 "mileageCoeff": 0, 1254 1254 "locationByCellId": true, ... ... @@ -1281,7 +1281,6 @@ 1281 1281 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1282 1282 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1283 1283 } 1284 - 1285 1285 "drivers": [ ~/~/ Водители 1286 1286 { 1287 1287 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1296,8 +1296,7 @@ 1296 1296 "retries": 0 1297 1297 } 1298 1298 ], 1299 - 1300 - "sensors": [ ~/~/ Датчики 1384 +"sensors": [ ~/~/ Датчики 1301 1301 { 1302 1302 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1303 1303 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1323,6 +1323,7 @@ 1323 1323 ], 1324 1324 "showInTooltip": true, ~/~/ Отображать в подсказке 1325 1325 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1410 + "color": "string", ~/~/ код цвета датчиков 1326 1326 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1327 1327 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1328 1328 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1335,103 +1335,222 @@ 1335 1335 "additionalProp2": "string", 1336 1336 "additionalProp3": "string" 1337 1337 }, 1338 - 1339 1339 ~/~/ Характерные для произвольного: 1340 - 1341 1341 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1342 - 1343 1343 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1344 - 1345 1345 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1346 - 1347 1347 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1348 - 1349 1349 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1350 - 1351 1351 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1352 - 1353 1353 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1354 - 1355 1355 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1356 - 1357 1357 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1358 - 1359 1359 ~/~/ "ValueOn": "Вкл.", 1360 - 1361 1361 ~/~/ "ValueOff": "Выкл." 1362 - "summaryMaxValue": 0 ~/~/ Макс. значение 1435 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1436 + 1437 +((( 1438 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1439 + { 1440 + "from": 0, ~/~/ С какого значения 1441 + "color": "string", ~/~/ Каким цветом 1442 + "text": "string" ~/~/ Текст подписи к этому интервалу 1443 + } 1444 + ] 1363 1363 } 1364 1364 ], 1447 +))) 1448 + 1449 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1450 + 1451 + 1365 1365 "customFields": [ ~/~/ Произвольные поля 1366 1366 { 1367 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1368 - "name": "string", 1369 - "value": "string", 1370 - "forClient": true, 1371 - "forTooltip": true, 1372 - "forReport": true 1373 - } 1374 - ] 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 - По датчику относительных Моточасов 1375 1375 } 1470 +))) 1376 1376 1472 + 1377 1377 (% style="color:#000000" %)Ответ: 1378 1378 1379 -(% style="color:#000000" %){ 1380 1380 1381 - "vehicleId": "", ~/~/ID ТС 1382 - "parentId": "", ~/~/Guid владельца ТС 1383 - "name": "", ~/~/Имя объекта 1384 - "imei": "", ~/~/IMEI 1385 - "deviceTypeId": "", ~/~/ID типа устройства 1386 - "modelId": "", ~/~/ID модели 1387 - "unitId": "", ~/~/ID подразделения 1388 - "sim1": "", ~/~/SIM1 1389 - "sim2": "", ~/~/SIM2 1390 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1391 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1392 - "counters": { ~/~/Счётчики 1393 - "mileageEnabled": true, 1394 - "motohoursEnabled": true, 1395 - "mileage": "", 1396 - "motohours": 345.0 1397 - }, 1398 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1399 - "id": null, 1400 - "enabled": true, ~/~/флаг включения 1401 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1402 - "login": "", ~/~/ имя учетной записи 1403 - "password": "" ~/~/ пароль учетной записи 1404 - }, 1405 - "inspectionTasks": { ~/~/ задания на ТО 1406 - "id": "", ~/~/ ID задачи 1407 - "enabled": false, ~/~/ Признак включения 1408 - "name": "", ~/~/ Имя задания 1409 - "description": "", ~/~/ Описание задания 1410 - "mileageCondition": "", ~/~/ Условие по пробегу 1411 - "lastMileage": "", ~/~/ Пробег (в метрах) 1412 - "motohoursCondition": "", ~/~/ Условие по моточасам 1413 - "lastMotohours": "", ~/~/ Моточасы 1414 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1415 - "kind": "", ~/~/ Вид периодичности по времени 1416 - "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 ~/~/ Условие по количеству записей для деактивации 1417 1417 } 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 +))) 1418 1418 1419 -(% style="text-align:left" %) 1420 -(% 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 +))) 1421 1421 1624 + 1422 1422 **Валидация:** 1423 1423 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1424 1424 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1425 1425 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1426 1426 1427 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 1428 1428 1631 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1632 + 1429 1429 (% class="box infomessage" %) 1430 1430 ((( 1431 1431 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1432 1432 ))) 1433 1433 1434 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1638 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1435 1435 1436 1436 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1437 1437 ... ... @@ -1465,9 +1465,12 @@ 1465 1465 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1466 1466 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1467 1467 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1468 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1469 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1470 - "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" ~/~/ Идентификатор агента, для которого надо получить данные 1471 1471 } 1472 1472 1473 1473 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1474,8 +1474,14 @@ 1474 1474 1475 1475 (% style="color:#000000" %)Ответ: 1476 1476 1477 -(% style="color:#000000" %){ 1684 +(% style="color:#000000" %)[ 1685 +{ 1478 1478 1687 +((( 1688 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1689 +))) 1690 + 1691 +((( 1479 1479 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1480 1480 "name": "" ~/~/ наименование объекта 1481 1481 "imei": "" ~/~/ IMEI объекта ... ... @@ -1501,9 +1501,21 @@ 1501 1501 "forClient": true, ~/~/ право на отображение у клиента 1502 1502 "forTooltip": false, ~/~/ право на отображение в подсказке 1503 1503 "forReport": false ~/~/ право на отображение в отчетах 1504 - }(%%) 1505 -(% style="color:#000000" %)} 1717 +))) 1506 1506 1719 +((( 1720 + } 1721 + ], 1722 + "vehicleGroups": [ ~/~/ Группы ТС 1723 + { 1724 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1725 + "name": "string" ~/~/ Наименование группы ТС 1726 + } 1727 + ] 1728 + } 1729 +] 1730 +))) 1731 + 1507 1507 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1508 1508 1509 1509 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1535,13 +1535,11 @@ 1535 1535 "data": "", ~/~/ Данные 1536 1536 "overwrite": false, ~/~/ Флаг перезаписи 1537 1537 "stage": "", ~/~/ Состояние, может быть null 1538 - 1539 1539 (% style="color:#000000" %)} 1540 1540 1541 1541 (% style="color:#000000" %)Ответ: 1542 1542 1543 -(% style="color:#000000" %){ 1544 - 1767 +(% style="color:#000000" %){(%%) 1545 1545 "status": "", ~/~/ значение статуса 1546 1546 "date": "", ~/~/ Дата смены статуса 1547 1547 "description": "", ~/~/ Описание ... ... @@ -1548,10 +1548,9 @@ 1548 1548 "data": "", ~/~/ Данные 1549 1549 "overwrite": false, ~/~/ Флаг перезаписи 1550 1550 "stage": "", ~/~/ Состояние 1551 - 1552 -(% style="text-align:left" %) 1553 1553 (% style="color:#000000" %) } 1554 1554 1776 + 1555 1555 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1556 1556 1557 1557 (% class="box warningmessage" %) ... ... @@ -1627,9 +1627,19 @@ 1627 1627 1628 1628 "drivers": [ ~/~/ Водители 1629 1629 { 1630 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1631 - "isDefault": true 1632 - } 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 + } 1633 1633 ], 1634 1634 "commandTemplates": [ ~/~/ Шаблон команды 1635 1635 { ... ... @@ -1639,8 +1639,7 @@ 1639 1639 "retries": 0 1640 1640 } 1641 1641 ], 1642 - 1643 - "sensors": [ ~/~/ Датчики 1874 +"sensors": [ ~/~/ Датчики 1644 1644 { 1645 1645 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1646 1646 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1666,6 +1666,11 @@ 1666 1666 ], 1667 1667 "showInTooltip": true, ~/~/ Отображать в подсказке 1668 1668 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1900 + 1901 +((( 1902 + "color": "string",** ~/~/ **Цвет датчика 1903 +))) 1904 + 1669 1669 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1670 1670 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1671 1671 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1678,95 +1678,225 @@ 1678 1678 "additionalProp2": "string", 1679 1679 "additionalProp3": "string" 1680 1680 }, 1681 - 1682 1682 ~/~/ Характерные для произвольного: 1683 - 1684 1684 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1685 - 1686 1686 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1687 - 1688 1688 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1689 - 1690 1690 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1691 - 1692 1692 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1693 - 1694 1694 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1695 - 1696 1696 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1697 - 1698 1698 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1699 - 1700 1700 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1701 - 1702 1702 ~/~/ "ValueOn": "Вкл.", 1703 - 1704 1704 ~/~/ "ValueOff": "Выкл." 1705 1705 "summaryMaxValue": 0 ~/~/ Макс. значение 1930 + 1931 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1932 + { 1933 + "from": 0, ~/~/ С какого значения 1934 + "color": "string", ~/~/ Каким цветом 1935 + "text": "string" ~/~/ Текст подписи к этому интервалу 1936 + } 1937 + ] 1706 1706 } 1707 1707 ], 1940 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1941 + 1708 1708 "customFields": [ ~/~/ Произвольные поля 1709 - { 1710 - 1711 - "name": "string", 1712 - "value": "string", 1713 - "forClient": true, 1714 - "forTooltip": true, 1715 - "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 ~/~/ Отобразить произвольное поле в отчете 1716 1716 } 1717 - ] 1951 + 1952 +((( 1953 + ], 1954 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1955 +))) 1956 + 1718 1718 } 1719 1719 1959 + 1720 1720 (% style="color:#000000" %)Ответ: 1721 1721 1722 -(% lang="en-US" style="text-align:left" %) 1723 -(% 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 +))) 1724 1724 1725 -(% lang="en-US" style="text-align:left" %) 1726 - "vehicleId": "", ~/~/ ID ТС 1727 - "parentId": "", ~/~/ ID клиента 1728 - "name": "", ~/~/ имя ТС 1729 - "imei": "", ~/~/ IMEI 1730 - "deviceTypeId": "", ~/~/ типа устройства 1731 - "modelId": "", ~/~/ ID модели 1732 - "unitId": "", ~/~/ ID подразделения 1733 - "sim1": "", ~/~/ SIM 1 1734 - "sim2": "", ~/~/ SIM2 1735 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1736 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1737 - "counters": 1738 - { 1739 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1740 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1741 - "mileage": "", ~/~/ пробег 1742 - "motohours": "", ~/~/ моточасы 1743 - } 1744 - "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": [ ~/~/ Тарировка 1745 1745 { 1746 - "id": ~/~/ идентификатор 1747 - "enabled": true, ~/~/ флаг включения 1748 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1749 - "login": "", ~/~/ имя учетной записи 1750 - "password": "", ~/~/ пароль учетной записи 1751 - } 1752 - "inspectionTasks": ~/~/ задания на ТО 1753 - { 1754 - "id": "", ~/~/ ID задания 1755 - "enabled": false, ~/~/ Признак включения 1756 - "name": "", ~/~/ Имя задания 1757 - "description": "", ~/~/ Описание задания 1758 - "mileageCondition": "", ~/~/ Условие по пробегу 1759 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1760 - "motohoursCondition": "", ~/~/ Условие по моточасам 1761 - "lastMotohours": "", ~/~/ Моточасы 1762 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1763 - "kind": "", ~/~/ Вид периодичности по времени 1764 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2083 + "grades": [ ~/~/ Таблицы тарировки 2084 + { 2085 + "input": 0, ~/~/ Вход 2086 + "output": 0 ~/~/ Выход 2087 + } 2088 + ], 2089 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1765 1765 } 2091 + ], 2092 + "showInTooltip": true, ~/~/ Отображение в подсказке 2093 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1766 1766 1767 -(% lang="en-US" style="text-align:left" %) 1768 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2095 +((( 2096 + "color": "string", ~/~/ цвет уведомлений 2097 +))) 1769 1769 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 + 1770 1770 **Валидация:** 1771 1771 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1772 1772 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1811,12 +1811,9 @@ 1811 1811 1812 1812 (% style="color:#000000" %)Ответ: 1813 1813 1814 -(% style="color:#000000" %){ 1815 - 2180 +(% style="color:#000000" %){(%%) 1816 1816 "deviceTypeId" : "", ~/~/ ID типа устройства 1817 1817 "deviceTypeName" : "" ~/~/ Название типа устройства 1818 - 1819 -(% style="text-align:left" %) 1820 1820 (% style="color:#000000" %)} 1821 1821 1822 1822 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1838,13 +1838,10 @@ 1838 1838 1839 1839 (% style="color:#000000" %)Ответ: 1840 1840 1841 -(% style="color:#000000" %){ 1842 - 2204 +(% style="color:#000000" %){(%%) 1843 1843 "id": "", ~/~/ ID типа датчика 1844 1844 "name": "", ~/~/ Название 1845 1845 "description": "", ~/~/ Описание 1846 - 1847 -(% style="text-align:left" %) 1848 1848 (% style="color:#000000" %)} 1849 1849 1850 1850 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -2046,10 +2046,14 @@ 2046 2046 { 2047 2047 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2048 2048 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2049 - "mileageBegin": 0, ~/~/ Пробег на начало периода 2050 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 2051 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 2052 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2409 + "mileage": 0, ~/~/ Пробег за период, километры 2410 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2411 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2412 + "motohours": 0, ~/~/ Моточасы за период, секунды 2413 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2414 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2415 + "idlingTime": 0 ~/~/ Холостой ход за период, секунд 2416 + 2053 2053 } 2054 2054 ] 2055 2055 } ... ... @@ -2091,13 +2091,23 @@ 2091 2091 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2092 2092 "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода 2093 2093 "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2458 + "fuelTankLevelStart": 0, ~/~/ Уровень топлива в цистерне на начало периода 2459 + "fuelTankLevelEnd": 0, ~/~/ Уровень топлива в цистерне на конец периода 2094 2094 "fuelConsumption": 0, ~/~/ Расход топлива 2095 2095 "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2462 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне 2463 + 2096 2096 } 2097 2097 ] 2098 2098 } 2099 2099 ] 2100 2100 2469 +(% class="box warningmessage" %) 2470 +((( 2471 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2472 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2473 +))) 2474 + 2101 2101 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2102 2102 2103 2103 (% class="box infomessage" %) ... ... @@ -2132,7 +2132,8 @@ 2132 2132 "model": "string", ~/~/ Модель объекта 2133 2133 "fuels": [ ~/~/ Массив данным по заправкам и сливам 2134 2134 { 2135 - "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив 2509 + "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 2510 + 2136 2136 "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало 2137 2137 "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание 2138 2138 "valueFuel": 0, ~/~/ Количество ... ... @@ -2161,74 +2161,42 @@ 2161 2161 Тело запроса: 2162 2162 2163 2163 { 2164 - 2165 2165 "vehicleIds": [ ], ~/~/ Список ID объектов 2166 - 2167 2167 "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2168 - 2169 2169 "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2170 - 2171 2171 "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2172 - 2173 2173 } 2174 2174 2175 2175 Ответ: 2176 2176 2177 -[ 2178 - 2547 +[ 2179 2179 { 2180 - 2181 2181 "vehicleId": 0, ~/~/ ID объекта 2182 - 2183 2183 "vehicleName": "string", ~/~/ Имя объекта 2184 - 2185 2185 "moves": [ ~/~/ Событие движения 2186 - 2187 2187 { 2188 - 2189 2189 "mileage": 0, ~/~/ Пробег, км 2190 - 2191 2191 "eventId": 0, ~/~/ Идентификатор события 2192 - 2193 2193 "eventName": "string", ~/~/ Название события 2194 - 2195 2195 "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2196 - 2197 2197 "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2198 - 2199 2199 "duration": 0 ~/~/ Продолжительность события, секунд 2200 - 2201 2201 } 2202 - 2203 2203 ], 2204 - 2205 2205 "stops": [ ~/~/ События стоянок 2206 - 2207 2207 { 2208 - 2209 - "address": "string", ~/~/ Адрес события 2210 - 2563 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2211 2211 "eventId": 0, ~/~/ Идентификатор события 2212 - 2213 2213 "eventName": "string", ~/~/ Название события 2214 - 2215 2215 "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2216 - 2217 2217 "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2218 - 2219 2219 "duration": 0 ~/~/ Продолжительность события, секунд 2220 - 2221 - 2222 2222 } 2223 - 2224 2224 ] 2225 - 2226 2226 } 2227 - 2228 2228 ] 2229 2229 2230 2230 2231 - 2232 2232 == (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2233 2233 2234 2234 (% class="box infomessage" %) ... ... @@ -2265,7 +2265,6 @@ 2265 2265 } 2266 2266 2267 2267 2268 - 2269 2269 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2270 2270 2271 2271 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2394,6 +2394,35 @@ 2394 2394 } 2395 2395 ] 2396 2396 2739 + 2740 +== (% style="color:#000000; font-size:16px" %)**Обновить информацию по геозоне**(%%) == 2741 + 2742 +(% class="box successmessage" %) 2743 +((( 2744 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**PUT **(%%)**/api/v3/gis** 2745 +))) 2746 + 2747 +(% style="color:#000000" %)Метод запроса: **PUT** 2748 + 2749 +Пример запроса: 2750 + 2751 +((( 2752 +{ 2753 + "id": 0, ~/~/ Идентификатор объекта геозоны 2754 + "name": "string", ~/~/ Наименование объекта геозоны 2755 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 2756 + "description": "string", ~/~/ Описание объекта геозоны 2757 + "beginCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата начала расчетов для геозоны 2758 + "endCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата окончания расчетов для геозоны 2759 + "settingsData": "string" ~/~/ Параметры отображения в формате XML. 2760 +} 2761 +))) 2762 + 2763 + 2764 +Пример ответа: 2765 + 2766 +200 ~/~/ Success 2767 + 2397 2397 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) = 2398 2398 2399 2399 == (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) == ... ... @@ -2425,7 +2425,7 @@ 2425 2425 "id": 0, ~/~/ ID уведомления 2426 2426 "name": "string", ~/~/ Название уведомления 2427 2427 "active": true, ~/~/ Состояние true - активен, false - деактивирован 2428 - "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО 2799 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя) 2429 2429 "userId": "", ~/~/ Пользователь, создавший уведомление 2430 2430 "parentId": "", ~/~/ Идентификатор клиента 2431 2431 "parentName": "string" ~/~/ Имя клиента ... ... @@ -2432,6 +2432,155 @@ 2432 2432 } 2433 2433 ] 2434 2434 2806 + 2807 +== (% style="color:#000000; font-size:16px" %)**Создание уведомления**(%%) == 2808 + 2809 +(% class="box infomessage" %) 2810 +((( 2811 +**POST /api/v3/notifications** 2812 +))) 2813 + 2814 +Метод запроса **POST** 2815 + 2816 +(% style="text-align: left;" %) 2817 +(% style="color:#000000" %)Пример запроса 2818 + 2819 +((( 2820 +{ 2821 + "id": 0, ~/~/ ID правила 2822 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2823 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2824 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2825 + "name": "string", ~/~/ Имя правила 2826 + "active": true, ~/~/ Активность правила 2827 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2828 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2829 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2830 + ], 2831 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2832 + 0 2833 + ], 2834 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2835 + 0 2836 + ], 2837 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2838 + 0 2839 + ], 2840 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2841 + "additionalProp1": "string", 2842 + "additionalProp2": "string", 2843 + "additionalProp3": "string" 2844 + }, 2845 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2846 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2847 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2848 + ], 2849 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2850 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2851 + "string" 2852 + ], 2853 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2854 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2855 + { 2856 + "id": 0, ~/~/ Идентификатор участника чата. 2857 + "info": "string" ~/~/ Дополнительные сведения. 2858 + } 2859 + ], 2860 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2861 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2862 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2863 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2864 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2865 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2866 + "timezone": 0, ~/~/ часовой пояс 2867 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2868 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2869 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2870 + { 2871 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек 2872 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2873 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2874 + "additionalProp1": "string", 2875 + "additionalProp2": "string", 2876 + "additionalProp3": "string" 2877 + } 2878 + } 2879 + ] 2880 +} 2881 +))) 2882 + 2883 +((( 2884 + 2885 +))) 2886 + 2887 +((( 2888 + 2889 +))) 2890 + 2891 +Ответ: 2892 + 2893 +{ 2894 + "id": 0, ~/~/ ID правила 2895 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2896 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2897 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2898 + "name": "string", ~/~/ Имя правила 2899 + "active": true, ~/~/ Активность правила 2900 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2901 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2902 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2903 + ], 2904 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2905 + 0 2906 + ], 2907 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2908 + 0 2909 + ], 2910 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2911 + 0 2912 + ], 2913 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2914 + "additionalProp1": "string", 2915 + "additionalProp2": "string", 2916 + "additionalProp3": "string" 2917 + }, 2918 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2919 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2920 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2921 + ], 2922 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2923 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2924 + "string" 2925 + ], 2926 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2927 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2928 + { 2929 + "id": 0, ~/~/ Идентификатор участника чата. 2930 + "info": "string" ~/~/ Дополнительные сведения. 2931 + } 2932 + ], 2933 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2934 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2935 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2936 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2937 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2938 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2939 + "timezone": 0, ~/~/ часовой пояс 2940 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2941 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2942 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2943 + { 2944 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек 2945 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2946 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2947 + "additionalProp1": "string", 2948 + "additionalProp2": "string", 2949 + "additionalProp3": "string" 2950 + } 2951 + } 2952 + ] 2953 +} 2954 + 2435 2435 == (% style="color:#000000; font-size:16px" %)**Запрос настроек уведомления**(%%) == 2436 2436 2437 2437 (% class="box infomessage" %) ... ... @@ -2573,6 +2573,32 @@ 2573 2573 2574 2574 Success 2575 2575 3096 + 3097 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 3098 + 3099 +(% class="box warningmessage" %) 3100 +((( 3101 +**PUT** /api/v3/notifications/prolongation 3102 +))) 3103 + 3104 +Метод позволяет продлить уведомления. 3105 + 3106 +Метод запроса **PUT** 3107 + 3108 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 3109 + 3110 +В заголовках запроса: X-Auth: Токен авторизации. 3111 + 3112 +Тело запроса: 3113 + 3114 +[ 3115 + 3116 +0 3117 + 3118 +] 3119 + 3120 +где 0 идентификатор ids. 3121 + 2576 2576 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2577 2577 2578 2578 (% class="box errormessage" %) ... ... @@ -3763,7 +3763,7 @@ 3763 3763 **POST /api/v3/vehicles/import/{agentId}** 3764 3764 ))) 3765 3765 3766 -Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml** или **wlp. **Также они могут находится в** zip-архиве.** 4312 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 3767 3767 3768 3768 В пути указывается **agentId** - id клиента. 3769 3769 ... ... @@ -3775,7 +3775,7 @@ 3775 3775 3776 3776 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3777 3777 |withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 3778 -|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: 1- Замена,2- Слияние,3- Добавление4324 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 3779 3779 3780 3780 В теле использовать тип **form-data,** тип значения** file** 3781 3781 ... ... @@ -3852,6 +3852,43 @@ 3852 3852 |producedCount|Кол-во успешно отправленных в шину данных сообщений 3853 3853 |msgCount|Кол-во обработанных сообщений всего 3854 3854 4401 +== **Импортировать историю ТС (Асинхронный запрос)** == 4402 + 4403 +(% class="box successmessage" %) 4404 +((( 4405 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 4406 +))) 4407 + 4408 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4409 + 4410 +Метод запроса: **POST** 4411 + 4412 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 4413 + 4414 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 4415 + 4416 + 4417 +Ответ: 4418 + 4419 +{ 4420 + 4421 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4422 + 4423 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 4424 + 4425 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 4426 + 4427 + "Message": "string", ~/~/ Информация о выполнении запроса 4428 + 4429 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 4430 + 4431 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4432 + 4433 + "Data": "string" ~/~/ Данные 4434 + 4435 +} 4436 + 4437 + 3855 3855 == (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 3856 3856 3857 3857 (% class="box infomessage" %) ... ... @@ -3869,10 +3869,59 @@ 3869 3869 "message": "string" 3870 3870 } 3871 3871 3872 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3873 -|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет 3874 -|progress|Guid ТС 4455 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)((( 4456 +**Параметр** 4457 +)))|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)((( 4458 +**Описание** 4459 +))) 4460 +|((( 4461 +activity 4462 +)))|((( 4463 +Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4464 +))) 4465 +|((( 4466 +progress 4467 +)))|((( 4468 +Guid ТС 4469 +))) 3875 3875 4471 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 4472 + 4473 +(% class="box infomessage" %) 4474 +((( 4475 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 4476 +))) 4477 + 4478 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4479 + 4480 +Метод запроса: **GET** 4481 + 4482 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 4483 + 4484 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 4485 + 4486 + 4487 +Ответ: 4488 + 4489 +{ 4490 + 4491 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4492 + 4493 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 4494 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 4495 + 4496 + "Message": "string", ~/~/ Информация о выполнении запроса 4497 + 4498 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 4499 + 4500 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 4501 + 4502 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4503 + 4504 + "Data": "string" ~/~/ Данные 4505 + 4506 +} 4507 + 3876 3876 == (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 3877 3877 3878 3878 (% class="box infomessage" %) ... ... @@ -3954,64 +3954,67 @@ 3954 3954 Тело запроса: 3955 3955 3956 3956 { 3957 - "vehicleIds": [vehicleId], 3958 - "from": "2023-11-22T09:29:48.051Z", 3959 - "to": "2023-11-22T09:29:48.051Z" 4589 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4590 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4591 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 3960 3960 } 3961 3961 3962 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3963 -|vehicleIds|Массив ID объектов 3964 -|from|Дата начала запроса 3965 -|to|Дата окончания запроса 3966 - 3967 3967 Ответ: 3968 3968 3969 3969 { 3970 - "items": [ 4597 + "items": [ ~/~/ Список в разрезе ТС 3971 3971 { 3972 - "from": "2023-11-22T09:29:48.052Z", 3973 - "to": "2023-11-22T09:29:48.052Z", 3974 - "vehicleId": 0, 3975 - "vehicleName": "string", 3976 - "vehicleModel": "string", 3977 - "penalty": 0, 3978 - "score": 0, 3979 - "totalViolations": 0, 3980 - "violationsByType": { 3981 - "overspeedingViolations": 0, 3982 - "accelerationViolations": 0, 3983 - "brakingViolations": 0, 3984 - "turningViolations": 0, 3985 - "dangerousDrivingViolations": 0, 3986 - "sensorViolations": 0 4599 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4600 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4601 + "vehicleId": 0, ~/~/ ID ТС 4602 + "vehicleName": "string", ~/~/ Название ТС 4603 + "vehicleModel": "string", ~/~/ Модель ТС 4604 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4605 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4606 + "totalViolations": 0, ~/~/ Нарушений всего 4607 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4608 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4609 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4610 + "brakingViolations": 0, ~/~/ Нарушений торможения 4611 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4612 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4613 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3987 3987 }, 3988 - "moveTime": 0, 3989 - "mileage": 0, 3990 - "tripsCount": 0, 3991 - "trips": [ 4615 + 4616 +((( 4617 + 4618 +))) 4619 + 4620 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4621 + "mileage": 0, ~/~/ Пробег, м 4622 + "tripsCount": 0, ~/~/ Кол-во рейсов 4623 + "trips": [ ~/~/ Информация по рейсу 3992 3992 { 3993 - "penalty": 0, 3994 - "score": 0, 3995 - "violationsCount": 0, 3996 - "violationsByType": { 3997 - "overspeedingViolations": 0, 3998 - "accelerationViolations": 0, 3999 - "brakingViolations": 0, 4000 - "turningViolations": 0, 4001 - "dangerousDrivingViolations": 0, 4002 - "sensorViolations": 0 4625 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4626 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4627 + "violationsCount": 0, ~/~/ Всего нарушений 4628 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4629 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4630 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4631 + "brakingViolations": 0, ~/~/ Нарушений торможения 4632 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4633 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4634 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4003 4003 }, 4004 - "moveTime": 0, 4005 - "mileage": 0, 4006 - "motohours": 0, 4007 - "maxSpeed": 0, 4008 - "startAddress": "string", 4009 - "endAddress": "string", 4010 - "drivers": [ 4636 + 4637 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4638 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4639 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4640 + "mileage": 0, ~/~/ Пробег, м 4641 + "motohours": 0, ~/~/ Моточасы, секунды 4642 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4643 + "startAddress": "string", ~/~/ Адрес начала рейса 4644 + "endAddress": "string", ~/~/ Адрес конца рейса 4645 + "drivers": [ ~/~/ Список водителей 4011 4011 { 4012 - "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4013 - "driverName": "string", 4014 - "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 4647 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4648 + "driverName": "string", ~/~/ФИО водителя 4649 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 4015 4015 } 4016 4016 ] 4017 4017 } ... ... @@ -4020,100 +4020,996 @@ 4020 4020 ] 4021 4021 } 4022 4022 4023 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4024 -|from|Дата начала запроса 4025 -|to|Дата окончания 4026 -|vehicleId|ID объекта 4027 -|vehicleName|Имя объекта 4028 -|vehicleModel|Модель объекта 4029 -|penalty|Сумма штрафных баллов 4030 -|score|Оценка 4031 -|totalViolations|Суммарное количество нарушений 4032 -|violationsByType|Список типов нарушений и количество нарушений для каждого типа 4033 -|overspeedingViolations|Превышение скорости 4034 -|accelerationViolations|Ускорение 4035 -|brakingViolations|Торможение 4036 -|turningViolations|Резкий поворот 4037 -|dangerousDrivingViolations|Резкое вождение 4038 -|sensorViolations|Нарушение по датчику 4039 -|moveTime|Время в движении 4040 -|mileage|Пробег 4041 -|tripsCount|Количество рейсов 4042 -|motohours|Моточасы 4043 -|maxSpeed|Максимальная скорость 4044 -|startAddress|Адрес начала рейса 4045 -|endAddress|Адрес окончания рейса 4046 -|drivers|Список водителей, которые были на объекте в течениии рейса 4047 -|driverGuid|Guid водителя 4048 -|driverName|Имя водителя 4049 -|driverRfid|Номер Карты-метки 4050 - 4051 4051 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 4052 4052 4053 4053 == (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4054 4054 4055 -Транзакции по топливным картам можно получить при наличии права «Транзакции ТК» 4662 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4056 4056 4057 4057 (% class="box infomessage" %) 4058 4058 ((( 4059 -**POST **/api/v3/fuelcards/transactions4666 +**POST /api/v3/fuelcards/transactions** 4060 4060 ))) 4061 4061 4062 - Запрос должен содержатьпараметры:4669 +Метод запроса: POST 4063 4063 4671 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4672 +\\В заголовках запроса: X-Auth: Токен авторизации 4673 + 4674 +Параметры в теле запроса (JSON): 4675 + 4064 4064 { 4677 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4678 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4679 + "ids": [ 4680 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4681 + ], 4682 + "timezone": 0 ~/~/ Часовой пояс 4683 +} 4065 4065 4066 - "startDate": "2024-03-14T13:10:21.797Z", ~/~/ Дата начала периода построения 4067 4067 4068 - "endDate": "2024-03-14T13:10:21.797Z", ~/~/ Дата окончания периода построения 4686 +Ответ: 4687 + { 4688 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4689 + "driver": "string", ~/~/ Водители, привязанные к ТК 4690 + "object": "string", ~/~/ Наименование ТС 4691 + "amount": 0, ~/~/ Количество топлива 4692 + "amountDut": 0, ~/~/ Количество по ДУТ 4693 + "amountDiff": 0, ~/~/ Разница, л 4694 + "amountDiffPerc": 0, ~/~/ Разница, % 4695 + "summa": 0, ~/~/ Стоимость, руб 4696 + "serviceName": "string", ~/~/ Тип топлива 4697 + "price": 0, ~/~/ Цена за литр, руб 4698 + "cardName": "string", ~/~/ Наименование ТК 4699 + "cardNum": "string", ~/~/ Номер ТК 4700 + "operator": "string", ~/~/ Оператор ТК 4701 + "address": "string" ~/~/ Адрес АЗС 4702 + } 4069 4069 4070 - "ids":[4704 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) == 4071 4071 4072 - "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Guid-ы топливных карт 4706 +(% class="box infomessage" %) 4707 +((( 4708 +**GET /api/v3/fuelcards** 4709 +))) 4073 4073 4711 +Метод запроса: GET 4712 + 4713 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список 4714 + 4715 +Ответ: 4716 + 4717 +[ 4718 + { 4719 + "Name": "string", ~/~/ Определяет наименование карты. 4720 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора. 4721 + "Number": "string", ~/~/ Определяет № карты. 4722 + "Enabled": true, ~/~/ Определяет признак активности карты. 4723 + "Description": "string", ~/~/ Определяет описание карты. 4724 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты 4725 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 4726 + "deleted": true ~/~/ Признак удаления 4727 + } 4728 +] 4729 + 4730 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4731 + 4732 + 4733 +== **Получение полных данных о ретрансляторе** == 4734 + 4735 +(% class="box infomessage" %) 4736 +((( 4737 +**GET ** **/api/v3/retranslations/{id}** 4738 +))) 4739 + 4740 +id - Идентификатор ретранслятора 4741 + 4742 + 4743 +Пример ответа: 4744 + 4745 +{ 4746 +"description": "", ~/~/ Поле описания ретранслятора 4747 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4748 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4749 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4750 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4751 +"objects": [ ~/~/ Объекты для ретрансляции 4752 +{ 4753 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4754 +"name": "", ~/~/ Наименование объекта ретрансляции 4755 +"imei": "", ~/~/ IMEI объекта ретрансляции 4756 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4757 +} 4758 + ], 4759 +"id": "", ~/~/ Идентификатор ретранслятора 4760 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4761 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4762 +} 4763 + 4764 + 4765 +== **Удаление данных ретранслятора** == 4766 + 4767 +(% class="box infomessage" %) 4768 +((( 4769 +**DELETE** **/api/v3/retranslations/{id}** 4770 +))) 4771 + 4772 +id - Идентификатор ретранслятора 4773 + 4774 + 4775 +== **Создание ретранслятора** == 4776 + 4777 +(% class="box infomessage" %) 4778 +((( 4779 +**POST ** **/api/v3/retranslations/{id}** 4780 +))) 4781 + 4782 +Запрос: 4783 + 4784 +{ 4785 +"description": "", ~/~/ Поле описания ретранслятора 4786 +"subscriberId": "", ~/~/ Идентификатор подписчика 4787 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4788 +"address": "", ~/~/ Адрес и порт принимающего сервера 4789 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4790 +"objects": [ ~/~/Объекты для ретрансляции 4791 +{ 4792 +"id": "", ~/~/ Идентификатор ретранслятора 4793 +"imei": "", ~/~/ IMEI объекта ретрансляции 4794 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4795 +} 4796 + ] 4797 +} 4798 + 4799 + 4800 +Ответ: 4801 + 4802 +{ 4803 +"description": "", ~/~/ Поле описания ретранслятора 4804 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4805 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4806 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4807 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4808 +"objects": [ ~/~/ Объекты для ретрансляции 4809 +{ 4810 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4811 +"name": "string", ~/~/ Наименование объекта ретрансляции 4812 +"imei": "", ~/~/ IMEI объекта ретрансляции 4813 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4814 +} 4074 4074 ], 4816 +"id": "", ~/~/ Идентификатор ретранслятора 4817 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4818 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4819 +} 4075 4075 4076 - "timezone": 0, ~/~/ Часовой пояс 4077 4077 4078 - "agent": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Guidклиентавладельца4822 +== **Редактирование ретранслятора** == 4079 4079 4824 +(% class="box infomessage" %) 4825 +((( 4826 +**PUT** **/api/v3/retranslations** 4827 +))) 4828 + 4829 +Пример запроса: 4830 + 4831 +{ 4832 +"id": "", ~/~/ Идентификатор ретранслятора 4833 +"description": "string", ~/~/ Поле описания ретранслятора 4834 +"subscriberId": "", ~/~/ Идентификатор подписчика 4835 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4836 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4837 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4838 +"objects": ~/~/ Объекты для ретрансляции 4839 +[ 4840 +{ 4841 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4842 +"imei": "", ~/~/ IMEI объекта ретрансляции 4843 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4080 4080 } 4845 + ] 4846 +} 4081 4081 4848 + 4849 +Пример ответа: 4850 + 4851 +{ 4852 +"description": "", ~/~/ Поле описания ретранслятора 4853 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4854 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4855 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4856 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4857 +"objects": [ ~/~/ Объекты для ретрансляции 4858 +{ 4859 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4860 +"name": "string", ~/~/ Наименование объекта ретрансляции 4861 +"imei": "", ~/~/ IMEI объекта ретрансляции 4862 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4863 +} 4864 + ], 4865 +"id": "", ~/~/ Идентификатор ретранслятора 4866 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4867 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4868 +} 4869 + 4870 + 4871 +== **Получение списка ретранслятора клиента** == 4872 + 4873 +(% class="box infomessage" %) 4874 +((( 4875 +**POST /api/v3/retranslations/find** 4876 +))) 4877 + 4878 +Пример запроса: 4879 + 4880 +{ 4881 +"id": "", ~/~/ Идентификатор ретранслятора 4882 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4883 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4884 +} 4885 + 4082 4082 Ответ: 4083 4083 4888 +[ 4889 +{ 4890 +"description": "", ~/~/ Поле описания ретранслятора 4891 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4892 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4893 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4894 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4895 +"id": "", ~/~/ Идентификатор ретранслятора 4896 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4897 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4898 +} 4899 +] 4900 + 4901 + 4902 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4903 + 4904 +== **API для отчета по выгрузке комбайнов** == 4905 + 4906 +(% class="box infomessage" %) 4907 +((( 4908 +**POST /api/v3/Reports/harvesterUnloading** 4909 +))) 4910 + 4911 +Пример запроса: 4912 + 4913 +{ 4914 + "byTime": 0, ~/~/ Объединение событий по времени 4915 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4916 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4917 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4918 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4919 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4920 + 0 4921 + ], 4922 + "from": "", ~/~/ Дата и время начало запроса 4923 + "to": "", ~/~/ Дата и время окончания запроса 4924 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4925 +} 4926 + 4927 +Пример ответа: 4928 + 4929 +[ 4084 4084 { 4931 + "harvesterName": "", ~/~/Комбайн, номер 4932 + "harvesterId": 0, ~/~/Комбайн, id 4933 +"harvesterModel": "", ~/~/ Модель комбайна 4934 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4935 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4936 + "events": [ ~/~/Список событий в разрезе комбайна 4937 + { 4938 + "driverId": "", ~/~/Идентификатор водителя 4939 + "driverName": "", ~/~/Водитель комбайна, ФИО 4940 + "RFID": "", ~/~/ идентификатор карты-метки 4941 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4942 + "vehicleId": 0, ~/~/идентификатор объекта 4943 + "vehicleName": "string", ~/~/ Имя объекта 4944 + "modelName": "string", ~/~/ Имя модели объекта 4945 + "nearestVehicles": [ ~/~/Объекты рядом 4946 + { 4947 + "vehicleId": 0, ~/~/идентификатор объекта 4948 + "vehicleName": "string" ~/~/ Имя объекта 4949 + } 4950 + ], 4951 + "fields": [ ~/~/Поля, где происходила выгрузка 4952 + { 4953 + "id": 0, ~/~/ идентификатор пользователя 4954 + "name": "string" ~/~/ имя пользователя 4955 + } 4956 + ], 4957 + "event": "string", ~/~/Событие 4958 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4959 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4960 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4961 + "cultureName": "string", ~/~/ название культуры 4962 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4963 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4964 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4965 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4966 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4967 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4968 + "issued": 0, ~/~/Выдано, бункеров 4969 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4970 + "latitude": 0, ~/~/Широта 4971 + "longitude": 0, ~/~/ Долгота 4972 + "litresAway": 0, ~/~/Отдано, л 4973 + "m3Away": 0 ~/~/Отдано, м3 4974 + } 4975 + ] 4976 + } 4977 +] 4085 4085 4086 - "date": "2024-03-14T13:14:26.212Z", ~/~/ Дата транзакции 4087 4087 4088 - " driver ": "string", ~/~/ Имя водителя4980 +== **Отчет трек-датчики** == 4089 4089 4090 - "amount": 0, ~/~/ Количество топлива 4982 +(% class="box infomessage" %) 4983 +((( 4984 +**POST /api/v3/Reports/sensorsWorks** 4985 +))) 4091 4091 4092 - "amountDut": 0, ~/~/ КоличествотопливаДУТ4987 +**Пример запроса:** 4093 4093 4094 - "amountDiff": 0, ~/~/ Разница в литрах 4989 +{ 4990 + "vehicleIds": [ ~/~/ Список ID объектов 4991 + 0 4992 + ], 4993 + "from": "2025-02-20T06:39:23.888Z", ~/~/ Начало периода (локальное время клиента) 4994 + "to": "2025-02-20T06:39:23.888Z", ~/~/ Конец периода (локальное время клиента) 4995 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4996 +} 4095 4095 4096 - "amountDiffPerc": 0, ~/~/ Разницав%4998 +**Пример ответа:** 4097 4097 4098 - "summa": 0, ~/~/ Стоимость в руб. 5000 +((( 5001 +{ 5002 + "vehicleSensorWorks": [ ~/~/ Интервалы работы оборудования для конкретного ТС 5003 + { 5004 + "vehicleId": 0, ~/~/ Идентификатор ТС 5005 + "sensorWorks": [ ~/~/ Интервалы работы оборудования. 5006 + { 5007 + "start": "2025-02-20T06:39:23.979Z", ~/~/ Начало интервала работы оборудования. 5008 + "end": "2025-02-20T06:39:23.979Z", ~/~/ Конец интервала работы оборудования. 5009 + "duration": 0, ~/~/ Продолжительность интервала в секундах. 5010 + "name": "string", ~/~/ Наименование оборудования. 5011 + "mileage": 0, ~/~/ Пробег за время работы оборудования. 5012 + "totalMileage": 0, ~/~/ Общий пробег. 5013 + "avgSpeed": 0 ~/~/ Средняя скорость. 5014 + } 5015 + ] 5016 + } 5017 + ] 5018 +} 4099 4099 4100 - "serviceName": "string", ~/~/ Тип топлива 4101 4101 4102 - "price": 0, ~/~/ Цена за литрвруб.5021 +== **Превышение скорости** == 4103 4103 4104 - "cardName": "string", ~/~/ Наименование ТК 5023 +(% class="box infomessage" %) 5024 +((( 5025 +**POST /api/v3/Reports/overSpeedDuration** 5026 +))) 4105 4105 4106 - "cardNum":"string",~/~/ НомерТК5028 + Публичный API запрос о превышениях скорости по объекту в секундах с выбором способа определения нарушений (дорожное ограничение или фиксированное ограничение). 4107 4107 4108 - "operator": "string", ~/~/ ОператорТК5030 +Пример запроса: 4109 4109 4110 - "address": "string", ~/~/ Адрес АЗС 5032 +((( 5033 +{ 5034 + "vehicleId": 0, ~/~/ идентификационный номер транспортного средства 5035 + "from": "2025-04-21T10:45:25.258Z", ~/~/ Начало периода (локальное время клиента) 5036 + "to": "2025-04-21T10:45:25.258Z", ~/~/ Конец периода (локальное время клиента) 5037 + "timezone": 0, ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 5038 + "overSpeedDetectionType": 0 ~/~/ тип нарушения (1-дорожное ограничение, 2-фиксированный ) 5039 +} 5040 +))) 4111 4111 4112 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Guid топливной карты 5042 +((( 5043 + 5044 +))) 4113 4113 5046 +((( 5047 +Пример ответа: 5048 +))) 5049 + 5050 +((( 5051 +((( 5052 +[ 5053 + { 5054 + "eventDate": "2025-04-21T10:45:25.267Z", ~/~/ Дата и время события 5055 + "duration": 0, ~/~/ Продолжительность события в секундах 5056 + "maxSpeed": 0, ~/~/ Максимальная скорость 5057 + "speedLimit": 0 ~/~/ Ограничение скорости 4114 4114 } 5059 +] 5060 +))) 5061 +))) 5062 +))) 4115 4115 5064 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 5065 + 5066 + 5067 +== **Запрос списка полей** == 5068 + 5069 +(% class="box successmessage" %) 5070 +((( 5071 +**POST /api/v3/agroLands/find** 5072 +))) 5073 + 5074 +Пример запроса: 5075 + 5076 +((( 5077 +((( 5078 +((( 5079 +{ 5080 + "year": 0, ~/~/ Фильтр по году 5081 + "name": "string", ~/~/ Фильтр по названию 5082 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 5083 +} 5084 +))) 5085 +))) 5086 + 5087 + 5088 +))) 5089 + 5090 +Пример ответа: 5091 + 5092 +((( 5093 +[ 5094 + { 5095 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5096 + "year": 0, ~/~/ Год поля 5097 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 5098 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 5099 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5100 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5101 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5102 + "counts": { ~/~/ Счётчики с/х поля 5103 + "fieldOperations": 0, ~/~/ Количество операций на поле 5104 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5105 + "facts": 0 ~/~/ Счётчик факта 5106 + }, 5107 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5108 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5109 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5110 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5111 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5112 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5113 + "planComment": "string", ~/~/ Комментарий к полю 5114 + "productivity": 0, ~/~/ Урожайность. 5115 + "id": 0, ~/~/ Идентификатор объекта геозоны 5116 + "name": "string", ~/~/ Название объекта геозоны 5117 + "type": 0, ~/~/ Тип объекта геозоны 5118 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5119 + "fname": "string", ~/~/ Имя файла 5120 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5121 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 5122 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 5123 + "description": "string", ~/~/ Описание объекта геозоны 5124 + "area": 0, ~/~/ Площадь, м2 5125 + "perimetr": 0, ~/~/ Периметр, м 5126 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 5127 + } 5128 +] 5129 + 5130 + 5131 +== **Создание нового поля ** == 5132 + 5133 +(% class="box successmessage" %) 5134 +((( 5135 +**POST /api/v3/agroLands** 5136 +))) 5137 + 5138 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 5139 +X-agent - ID клиента 5140 + 5141 +Пример запроса: 5142 + 5143 +((( 5144 +{ 5145 + "extId": "string", 5146 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля 5147 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля 5148 + "display": "string", ~/~/ Настройки отображения 5149 + "year": 0, ~/~/ Год поля 5150 + "name": "string", ~/~/ Наименование 5151 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5152 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 5153 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 5154 + "planComment": "string", ~/~/ Комментарий к полю 5155 + "cropRotations": [ ~/~/ Данные по севообороту 5156 + { 5157 + "landId": 0, ~/~/ ID поля 5158 + "landName": "string", ~/~/ Название поля 5159 + "year": 0, ~/~/ Год урожая 5160 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5161 + "cultureName": "string", ~/~/ Название культуры 5162 + "productivity": 0, ~/~/ Урожайность 5163 + "area": 0, ~/~/ Площадь поля, Га 5164 + "total": 0, ~/~/ Валовый сбор 5165 + "productivityFact": 0, ~/~/ Фактическая урожайность 5166 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5167 + "totalFact": 0, ~/~/ Фактический валовый сбор 5168 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 5169 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 5170 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 5171 + "isyearplan": true, ~/~/ Годовой план 5172 + "comment": "string" ~/~/ Комментарий 5173 + } 5174 + ] 5175 +} 5176 +))) 5177 + 5178 +((( 5179 + 5180 +))) 5181 + 5182 +Пример ответа: 5183 + 5184 +((( 5185 +((( 5186 +{ 5187 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5188 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5189 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5190 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5191 + "cropRotations": [ ~/~/ Данные по севообороту 5192 + { 5193 + "landId": 0, ~/~/ ID поля 5194 + "landName": "string", ~/~/ Название поля 5195 + "year": 0, ~/~/ Год урожая 5196 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5197 + "cultureName": "string", ~/~/ Название культуры 5198 + "productivity": 0, ~/~/ Урожайность 5199 + "area": 0, ~/~/ Площадь поля, Га. 5200 + "total": 0, ~/~/ Валовый сбор 5201 + "productivityFact": 0, ~/~/ Фактическая урожайность 5202 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5203 + "totalFact": 0, ~/~/ Фактический валовый сбор 5204 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 5205 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 5206 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 5207 + "isyearplan": true, ~/~/ годовой план 5208 + "comment": "string" ~/~/ Комментарий 5209 + } 5210 + ], 5211 + "cropVegetation": [ ~/~/ История вегетации поля 5212 + { 5213 + "values": [ ~/~/ Данные вегетации и состояния посева 5214 + { 5215 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5216 + "ndvi": 0 ~/~/ Индекс вегетации 5217 + } 5218 + ], 5219 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5220 + { 5221 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5222 + "type": "string", ~/~/ Тип 5223 + "pictureid": "string" ~/~/ Идентификатор ресурса 5224 + } 5225 + ], 5226 + "states": [ ~/~/ Ключевые даты развития поля 5227 + { 5228 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5229 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5230 + } 5231 + ] 5232 + } 5233 + ], 5234 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 5235 + "counts": { 5236 + "fieldOperations": 0, ~/~/ Количество операций на поле 5237 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5238 + "facts": 0 ~/~/ Счётчик факта 5239 + }, 5240 + "planComment": "string", ~/~/ Комментарий к полю 5241 +))) 5242 + 5243 +((( 5244 + "productivity": 0, ~/~/ Урожайность. 5245 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5246 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 5247 + "year": 0, ~/~/ Год поля 5248 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5249 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5250 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5251 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5252 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 5253 + "id": 0, ~/~/ Идентификатор объекта геозоны 5254 + "name": "string", ~/~/ Название объекта геозоны 5255 + "type": 0, ~/~/ Тип объекта геозоны 5256 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5257 + "fname": "string", ~/~/ Имя файла 5258 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5259 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 5260 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 5261 + "description": "string", ~/~/ Описание объекта геозоны 5262 + "area": 0, ~/~/ Площадь, м2 5263 + "perimetr": 0, ~/~/ Периметр, м 5264 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 5265 +} 5266 + 5267 + 5268 +))) 5269 +))) 5270 +))) 5271 + 5272 +== **Получение поля по id** == 5273 + 5274 +(% class="box infomessage" %) 5275 +((( 5276 +**GET /api/v3/agroLands/{id}** 5277 +))) 5278 + 5279 +Пример запроса: 5280 +id ~/~/ Идентификатор поля 5281 + 5282 +Пример ответа: 5283 + 5284 +((( 5285 +{ 5286 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5287 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5288 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5289 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5290 + "cropRotations": [ ~/~/ Данные по севообороту 5291 + { 5292 + "landId": 0, ~/~/ ID поля 5293 + "landName": "string", ~/~/ Название поля 5294 + "year": 0, ~/~/ Год урожая 5295 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5296 + "cultureName": "string", ~/~/ Название культуры 5297 + "productivity": 0, ~/~/ Урожайность 5298 + "area": 0, ~/~/ Площадь поля, Га 5299 + "total": 0, ~/~/ Валовый сбор 5300 + "productivityFact": 0, ~/~/ Фактическая урожайность 5301 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5302 + "totalFact": 0, ~/~/ Фактический валовый сбор 5303 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 5304 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 5305 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 5306 + "isyearplan": true, ~/~/ План года 5307 + "comment": "string" ~/~/ Комментарий 5308 + } 5309 + ], 5310 + "cropVegetation": [ ~/~/ История вегетации поля 5311 + { 5312 + "values": [ ~/~/ Данные вегетации и состояния посева 5313 + { 5314 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5315 + "ndvi": 0 ~/~/ Индекс вегетации 5316 + } 5317 + ], 5318 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5319 + { 5320 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5321 + "type": "string", ~/~/ Тип 5322 + "pictureid": "string" ~/~/ Идентификатор ресурса 5323 + } 5324 + ], 5325 + "states": [ ~/~/ Ключевые даты развития поля 5326 + { 5327 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5328 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 5329 + } 5330 + ] 5331 + } 5332 + ], 5333 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5334 + "counts": { 5335 + "fieldOperations": 0, ~/~/ Количество операций на поле 5336 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5337 + "facts": 0 ~/~/ Счётчик факта 5338 + }, 5339 + "planComment": "string", ~/~/ Комментарий к полю 5340 + "productivity": 0, ~/~/ Урожайность. 5341 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5342 +))) 5343 + 5344 +((( 5345 +((( 5346 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5347 + "year": 0, ~/~/ Год поля 5348 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5349 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5350 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5351 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5352 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5353 + "id": 0, ~/~/ Идентификатор объекта геозоны 5354 + "name": "string", ~/~/ Название объекта геозоны 5355 + "type": 0, ~/~/ Тип объекта геозоны 5356 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5357 + "fname": "string", ~/~/ Имя файла 5358 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5359 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5360 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5361 + "description": "string", ~/~/ Описание объекта геозоны 5362 + "area": 0, ~/~/ Площадь, м2 5363 + "perimetr": 0, ~/~/ Периметр, м 5364 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5365 +} 5366 +))) 5367 + 5368 + 5369 +== **Удаление существующего поля** == 5370 + 5371 +(% class="box errormessage" %) 5372 +((( 5373 +**DELETE /api/v3/agroLands/{id}** 5374 +))) 5375 + 5376 +Пример запроса: 5377 +id ~/~/ Идентификатор поля 5378 + 5379 +Пример ответа: 5380 + 5381 +((( 5382 +200 ~/~/ Успех 5383 +))) 5384 + 5385 +((( 5386 + 5387 +))) 5388 + 5389 +((( 5390 +((( 5391 +((( 5392 + 5393 +))) 5394 + 5395 +((( 5396 +== **Изменение поля** == 5397 + 5398 +(% class="box infomessage" %) 5399 +((( 5400 +**PUT /api/v3/agroLands** 5401 +))) 5402 + 5403 +Пример запроса: 5404 + 5405 +((( 5406 +((( 5407 +{ 5408 + "id": 0, ~/~/ Идентификатор поля 5409 + "extId": "string", ~/~/ ExtId 5410 + "shape": "string", ~/~/ Форма поля 5411 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5412 + "display": "string", ~/~/ Настройки отображения 5413 + "year": 0, ~/~/ Год поля 5414 + "name": "string", ~/~/ Наименование 5415 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5416 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5417 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5418 + "planComment": "string", ~/~/Комментарий к полю 5419 + "cropRotations": [ ~/~/ Данные по севообороту 5420 + { 5421 + "landId": 0, ~/~/ ID поля 5422 + "landName": "string", ~/~/ Название поля 5423 + "year": 0, ~/~/ Год урожая 5424 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5425 + "cultureName": "string", ~/~/ Название культуры 5426 + "productivity": 0, ~/~/ Урожайность 5427 + "area": 0, ~/~/ Площадь поля, Га. 5428 + "total": 0, ~/~/ Валовый сбор 5429 + "productivityFact": 0, ~/~/ Фактическая урожайность 5430 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5431 + "totalFact": 0, ~/~/ Фактический валовый сбор 5432 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5433 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5434 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5435 + "isyearplan": true, 5436 + "comment": "string" ~/~/ Комментарий 5437 + } 5438 + ], 5439 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5440 +} 5441 +))) 5442 +))) 5443 + 5444 +((( 5445 + 5446 +))) 5447 + 5448 +Пример ответа: 5449 + 5450 +((( 5451 +((( 5452 +((( 5453 +{ 5454 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5455 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5456 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5457 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5458 + "cropRotations": [ ~/~/ Данные по севообороту 5459 + { 5460 + "landId": 0, ~/~/ ID поля 5461 + "landName": "string", ~/~/ Название поля 5462 + "year": 0, ~/~/ Год урожая 5463 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5464 + "cultureName": "string", ~/~/ Название культуры 5465 + "productivity": 0, ~/~/ Урожайность 5466 + "area": 0, ~/~/ Площадь поля, Га 5467 + "total": 0, ~/~/ Валовый сбор 5468 + "productivityFact": 0, ~/~/ Фактическая урожайность 5469 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5470 + "totalFact": 0, ~/~/ Фактический валовый сбор 5471 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5472 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5473 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5474 + "isyearplan": true, ~/~/ 5475 + "comment": "string" ~/~/ Комментарий 5476 + } 5477 + ], 5478 + "cropVegetation": [ ~/~/ История вегетации поля 5479 + { 5480 + "values": [ ~/~/ Данные вегетации и состояния посева 5481 + { 5482 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5483 + "ndvi": 0 ~/~/ Индекс вегетации 5484 + } 5485 + ], 5486 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5487 + { 5488 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5489 + "type": "string", ~/~/ Тип 5490 + "pictureid": "string" ~/~/ Идентификатор ресурса 5491 + } 5492 + ], 5493 + "states": [ ~/~/ Ключевые даты развития поля 5494 + { 5495 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5496 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5497 + } 5498 + ] 5499 + } 5500 + ], 5501 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5502 + "counts": { 5503 + "fieldOperations": 0, ~/~/ Количество операций на поле 5504 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5505 + "facts": 0 ~/~/ Счётчик факта 5506 + }, 5507 + "planComment": "string", ~/~/ Комментарий к полю 5508 + "productivity": 0, ~/~/ Урожайность. 5509 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5510 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5511 + "year": 0, ~/~/ Год поля 5512 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5513 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5514 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5515 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5516 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5517 + "id": 0, ~/~/ Идентификатор объекта геозоны 5518 + "name": "string", ~/~/ Название объекта геозоны 5519 + "type": 0, ~/~/ Тип объекта геозоны 5520 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5521 + "fname": "string", ~/~/ Имя файла 5522 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5523 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5524 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5525 + "description": "string", ~/~/ Описание объекта геозоны 5526 + "area": 0, ~/~/ Площадь, м2 5527 + "perimetr": 0, ~/~/ Периметр, м 5528 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5529 +} 5530 +))) 5531 +))) 5532 +))) 5533 +))) 5534 +))) 5535 + 5536 + 5537 +== **Редактирование года урожая ** == 5538 + 5539 +(% class="box successmessage" %) 5540 +((( 5541 +**POST /api/v3/agroLands/updateOpenCloseYear** 5542 +))) 5543 + 5544 +Пример запроса: 5545 + 5546 +((( 5547 +((( 5548 +{ 5549 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5550 + 0 5551 + ], 5552 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5553 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5554 +} 5555 +))) 5556 + 5557 + 5558 +))) 5559 + 5560 +Пример ответа: 5561 + 5562 +((( 5563 +((( 5564 +{ 5565 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5566 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5567 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5568 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5569 + "cropRotations": [ ~/~/ Данные по севообороту 5570 + { 5571 + "landId": 0, ~/~/ ID поля 5572 + "landName": "string", ~/~/ Название поля 5573 + "year": 0, ~/~/ Год урожая 5574 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5575 + "cultureName": "string", ~/~/ Название культуры 5576 + "productivity": 0, ~/~/ Урожайность 5577 + "area": 0, ~/~/ Площадь поля, Га. 5578 + "total": 0, ~/~/ Валовый сбор 5579 + "productivityFact": 0, ~/~/ Фактическая урожайность 5580 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5581 + "totalFact": 0, ~/~/ Фактический валовый сбор 5582 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5583 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5584 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5585 + "isyearplan": true, ~/~/ 5586 + "comment": "string" ~/~/ Комментарий 5587 + } 5588 + ], 5589 + "cropVegetation": [ ~/~/ История вегетации поля 5590 + { 5591 + "values": [ ~/~/ Данные вегетации и состояния посева 5592 + { 5593 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5594 + "ndvi": 0 ~/~/ Индекс вегетации 5595 + } 5596 + ], 5597 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5598 + { 5599 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5600 + "type": "string", ~/~/ Тип 5601 + "pictureid": "string" ~/~/ Идентификатор ресурса 5602 + } 5603 + ], 5604 + "states": [ ~/~/ Ключевые даты развития поля 5605 + { 5606 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5607 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5608 + } 5609 + ] 5610 + } 5611 + ], 5612 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5613 + "counts": { 5614 + "fieldOperations": 0, ~/~/ Количество операций на поле 5615 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5616 + "facts": 0 ~/~/ Счётчик факта 5617 + }, 5618 + "planComment": "string", ~/~/ Комментарий к полю 5619 + "productivity": 0, ~/~/ Урожайность. 5620 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5621 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5622 + "year": 0, ~/~/ Год поля 5623 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5624 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5625 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5626 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5627 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5628 + "id": 0, ~/~/ Идентификатор объекта геозоны 5629 + "name": "string", ~/~/ Название объекта геозоны 5630 + "type": 0, ~/~/ Тип объекта геозоны 5631 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5632 + "fname": "string", ~/~/ Имя файла 5633 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5634 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5635 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5636 + "description": "string", ~/~/ Описание объекта геозоны 5637 + "area": 0, ~/~/ Площадь, м2 5638 + "perimetr": 0, ~/~/ ериметр, м 5639 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5640 +} 5641 +))) 5642 + 5643 + 4116 4116 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5645 +))) 5646 +))) 5647 +))) 4117 4117 4118 4118 == (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 4119 4119 ... ... @@ -4120,7 +4120,7 @@ 4120 4120 4121 4121 (% class="box infomessage" %) 4122 4122 ((( 4123 -GET api/v3/Vehicles/recyclebin/all 5654 +**GET api/v3/Vehicles/recyclebin/all** 4124 4124 ))) 4125 4125 4126 4126 Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту ... ... @@ -4131,48 +4131,70 @@ 4131 4131 4132 4132 Ответ: 4133 4133 4134 -"recordTime": "2024-03-12T12:40:42.502257Z", - Время удаления объекта в UTC 4135 -"userId": "11111111-c384-43f8-8562-1c3d79a32303", - Пользователь удаливший объект 4136 -"parentId": "f649b532-e519-42da-941e-5fdb3b581482", - GUID агента 4137 -"objectId": "8c79a744-0ba6-4943-8d9e-a9d9509168f2", - GUID объекта 4138 -"objectType": "Vehicle", - Тип объекта 4139 -"details": { 4140 -"items": [ { 4141 -"name": "ObjectName", - наименование столбца 4142 -"value": "01" - содержание столбца 4143 -}, 5665 +[ 5666 + { 5667 + "recordTime": "", ~/~/Время записи 5668 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5669 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5670 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5671 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5672 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5673 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5674 + "items": [ ~/~/ 5675 +nullable: true ~/~/Детали 5676 + { 5677 + "name": "string", ~/~/наименование столбца 5678 + "value": "string" ~/~/содержание столбца 5679 + } 5680 + ] 5681 + }, 5682 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5683 + "string" 5684 + ] 5685 + } 5686 +] 4144 4144 4145 -{ 4146 -"parentName": "string", 4147 -"name": "string", 4148 -"picture": "string", 4149 -"minspeed": 0, 4150 -"maxspeed": 0, 4151 -"width": 0, 4152 -"imbeddedtrailer": true, 4153 -"hoppercapacity": 0, 4154 -"hopperdischargespeed": 0, 4155 -"modelType": 0, 4156 -"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4157 -"parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4158 -"deleted": true 4159 -} 4160 4160 4161 -(% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины** 5689 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) == 4162 4162 4163 4163 (% class="box infomessage" %) 4164 4164 ((( 4165 -POST /api/v3/Vehicles/recyclebin/erase5693 +**POST api/v3/Vehicles/recyclebin/erase** 4166 4166 ))) 4167 4167 4168 4168 В заголовках запроса: X-Auth: Токен авторизации 4169 4169 4170 -Параметры в теле запроса (JSON): 5698 +Пример запроса: 5699 + 4171 4171 [ 4172 -"eb737fdf-c422-4df7-8727-bd61439b8460", 4173 -"3ec2f507-dfdc-41d4-b2bb-6f66e3d27df3" 5701 +0 4174 4174 ] 5703 + 4175 4175 5705 +Пример ответа: 5706 + 5707 +[ 5708 +{ 5709 + "recordTime": "", ~/~/Время записи 5710 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5711 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5712 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5713 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5714 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5715 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5716 + "items": [ ~/~/Детали 5717 + { 5718 + "name": "", ~/~/Имя свойства 5719 + "value": "" ~/~/Значение свойства 5720 + } 5721 + ] 5722 + }, 5723 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5724 + "" 5725 + ] 5726 + } 5727 +] 5728 + 4176 4176 Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 4177 4177 4178 4178 == (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == ... ... @@ -4179,21 +4179,812 @@ 4179 4179 4180 4180 (% class="box infomessage" %) 4181 4181 ((( 4182 -POST /api/v3/Vehicles/recyclebin/restore5735 +**POST api/v3/Vehicles/recyclebin/restore** 4183 4183 ))) 4184 4184 4185 4185 В заголовках запроса: X-Auth: Токен авторизации 4186 4186 4187 4187 Параметры в теле запроса (JSON): 5741 + 5742 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5743 + 5744 +В заголовках запроса: X-Auth: Токен авторизации 5745 + 5746 + 5747 +Пример запроса: 5748 + 5749 +((( 4188 4188 [ 4189 -"eb737fdf-c422-4df7-8727-bd61439b8460", 4190 -"3ec2f507-dfdc-41d4-b2bb-6f66e3d27df3" 5751 +))) 5752 + 5753 +((( 5754 + 0 5755 +))) 5756 + 5757 +((( 4191 4191 ] 5759 +))) 4192 4192 4193 -Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 4194 4194 5762 +Пример ответа: 4195 4195 5764 +[ 5765 +{ 5766 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5767 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5768 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5769 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5770 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5771 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5772 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5773 + "items": [ ~/~/Детали 5774 + { 5775 + "name": "string", ~/~/Имя свойства 5776 + "value": "string" ~/~/Значение свойства 5777 + } 5778 + ] 5779 + }, 5780 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5781 + "string" 5782 + ] 5783 + } 5784 +] 4196 4196 5786 + 5787 += **Раздел: Журнал заданий ** = 5788 + 5789 + 5790 +== **Создание задания в Журнале заданий** == 5791 + 5792 +(% class="box infomessage" %) 5793 +((( 5794 +**POST /api/v3/vehicletasks** 5795 +))) 5796 + 5797 +Пример запроса: 5798 + 5799 +((( 5800 +{ 5801 + "vehicleId": 0, ~/~/ Идентификатор ТС 5802 + "description": "string", ~/~/ Описание 5803 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5804 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5805 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы 5806 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы 5807 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5808 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5809 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5810 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5811 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5812 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5813 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5814 + "cost": { 5815 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5816 + "Name": "string", ~/~/ Наименование 5817 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection ) 5818 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5819 + "Norm": 0 ~/~/ Норма внесения 5820 + }, 5821 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 5822 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5823 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания 5824 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления 5825 + "deleted": true, ~/~/ Признак удаления 5826 + "extId": "string", 5827 + "GeoIds": [ ~/~/ Cвязанные поля 5828 + 0 5829 + ] 5830 +} 5831 +))) 5832 + 5833 + 5834 +Пример ответа: 5835 + 5836 +{ 5837 + "vehicleId": 0, ~/~/ Идентификатор ТС 5838 + "description": "string", ~/~/ Описание 5839 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5840 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5841 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5842 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5843 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5844 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5845 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5846 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5847 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5848 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5849 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5850 + "cost": { 5851 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5852 + "Name": "string", ~/~/ Наименование 5853 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5854 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5855 + "Norm": 0 ~/~/ Норма внесения 5856 + }, 5857 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5858 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5859 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5860 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5861 + "deleted": true, ~/~/ Признак удаления 5862 + "extId": "string", ~/~/ ExtId 5863 + "GeoIds": [ ~/~/ Связанные поля 5864 + 0 5865 + ] 5866 +} 5867 + 5868 + 5869 +== **Редактирование задания в Журнале заданий** == 5870 + 5871 +(% class="box successmessage" %) 5872 +((( 5873 +**PUT /api/v3/vehicletasks** 5874 +))) 5875 + 5876 +Пример запроса: 5877 + 5878 +((( 5879 +{ 5880 + "vehicleId": 0, ~/~/ Идентификатор ТС 5881 + "description": "string", ~/~/ Описание 5882 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5883 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5884 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы 5885 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы 5886 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5887 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5888 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5889 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5890 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5891 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5892 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5893 + "cost": { 5894 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5895 + "Name": "string", ~/~/ Наименование 5896 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5897 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5898 + "Norm": 0 ~/~/ Норма внесения 5899 + }, 5900 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5901 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5902 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания 5903 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления 5904 + "deleted": true, ~/~/ Признак удаления 5905 + "extId": "string", ~/~/ ExtId 5906 + "GeoIds": [ ~/~/ Связанные поля 5907 + 0 5908 + ] 5909 +} 5910 +))) 5911 + 5912 + 5913 +Пример ответа: 5914 + 5915 +{ 5916 + "vehicleId": 0, ~/~/ Идентификатор ТС 5917 + "description": "string", ~/~/ Описание 5918 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5919 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5920 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5921 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5922 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5923 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5924 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5925 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5926 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5927 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5928 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5929 + "cost": { 5930 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5931 + "Name": "string", ~/~/ Наименование 5932 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5933 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5934 + "Norm": 0 ~/~/ Норма внесения 5935 + }, 5936 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5937 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5938 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5939 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5940 + "deleted": true, ~/~/ Признак удаления 5941 + "extId": "string", ~/~/ ExtId 5942 + "GeoIds": [ ~/~/ Связанные поля 5943 + 0 5944 + ] 5945 +} 5946 + 5947 + 5948 +== **Удаление задания в Журнале заданий** == 5949 + 5950 +(% class="box warningmessage" %) 5951 +((( 5952 +**DELETE /api/v3/vehicletasks** 5953 +))) 5954 + 5955 +Пример запроса: 5956 + 5957 +((( 5958 +[ 5959 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 5960 +] 5961 +))) 5962 + 5963 +((( 5964 + 5965 +))) 5966 + 5967 +Пример ответа: 5968 + 5969 +{ 5970 + "vehicleId": 0, ~/~/ Идентификатор ТС 5971 + "description": "string", ~/~/ Описание 5972 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5973 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5974 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5975 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5976 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5977 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5978 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5979 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5980 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5981 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5982 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5983 + "cost": { 5984 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5985 + "Name": "string", ~/~/ Наименование 5986 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5987 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5988 + "Norm": 0 ~/~/ Норма внесения 5989 + }, 5990 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5991 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5992 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5993 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5994 + "deleted": true, ~/~/ Признак удаления 5995 + "extId": "string", ~/~/ ExtId 5996 + "GeoIds": [ ~/~/ Связанные поля 5997 + 0 5998 + ] 5999 +} 6000 + 6001 + 6002 +== **Получение списка Журнала заданий** == 6003 + 6004 +(% class="box infomessage" %) 6005 +((( 6006 +**POST /api/v3/vehicletasks/getbyperiod** 6007 +))) 6008 + 6009 +Пример запроса: 6010 + 6011 +((( 6012 +{ 6013 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода. 6014 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода. 6015 + "TimeZone": 0, ~/~/ Часовой пояс. 6016 + "OperationsIds": [ ~/~/ Идентификаторы видов работ для фильтрации журнала 6017 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 6018 + ], 6019 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала 6020 + 0 6021 + ], 6022 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала 6023 + 0 6024 + ], 6025 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска. 6026 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 6027 +} 6028 +))) 6029 + 6030 + 6031 +Пример ответа: 6032 + 6033 +((( 6034 +{ 6035 + "total": 0, ~/~/ Общее количество записей 6036 + "pages": 0, ~/~/ Общее количество страниц 6037 + "currentPage": 0, ~/~/ Текущая страница 6038 + "items": [ ~/~/ Записи 6039 + { 6040 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 6041 + "isGroup": true, ~/~/ Вид задания (true - групповое, иначе - одиночное). 6042 + "name": "string", ~/~/ Название задания. 6043 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc 6044 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc 6045 + "workKind": "string", ~/~/ Вид работ 6046 + "techOp": "string", ~/~/ Тех. операция 6047 + "trailerModel": "string", ~/~/ Модель агрегата 6048 + "width": "string", ~/~/ Ширина, м 6049 + "speed": "string", ~/~/ Тех. скорость 6050 + "fields": "string", ~/~/ Поля 6051 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га) 6052 + "vehicles": "string", ~/~/ Объект-модель 6053 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов) 6054 + "drivers": "string", ~/~/ Водители 6055 + "tmc": "string", ~/~/ ТМЦ 6056 + "client": "string", ~/~/ Клиент 6057 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 6058 + "dep": "string", ~/~/ Подразделение 6059 + "geoIds": [ ~/~/ Связанные поля 6060 + 0 6061 + ] 6062 + } 6063 + ] 6064 +} 6065 +))) 6066 + 6067 + 6068 += **Раздел: Роли** = 6069 + 6070 +== **Получение списка клиентских и системных ролей пользователя ** == 6071 + 6072 +(% class="box successmessage" %) 6073 +((( 6074 +**POST /api/v3/groups/find** 6075 +))) 6076 + 6077 +Пример запроса: 6078 + 6079 +((( 6080 +{ 6081 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента содержащий пользовательские роли 6082 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей 6083 +} 6084 +))) 6085 + 6086 +((( 6087 + 6088 +))) 6089 + 6090 +((( 6091 +Пример ответа: 6092 +))) 6093 + 6094 +((( 6095 +((( 6096 +{ 6097 + "groups": [ ~/~/ Системные роли пользователя 6098 + { 6099 + "code": "string", ~/~/ Код роли. 6100 + "name": "string", ~/~/ Имя 6101 + "shortName": "string" ~/~/ Короткое имя 6102 + } 6103 + ], 6104 + "customGroups": [ ~/~/ Системные роли пользователя 6105 + { 6106 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор роли. 6107 + "name": "string", ~/~/ Наименование 6108 + "shortName": "string", ~/~/ Короткое наименование 6109 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор владельца 6110 + } 6111 + ] 6112 +} 6113 +))) 6114 +))) 6115 + 6116 +((( 6117 + 6118 +))) 6119 + 6120 +((( 6121 + 6122 +))) 6123 + 6124 += **Раздел: Локатор ** = 6125 + 6126 + 6127 +== **Получение списка локаторов, доступных пользователю ** == 6128 + 6129 +(% class="box infomessage" %) 6130 +((( 6131 +**GET /api/v3/locators ** 6132 +))) 6133 + 6134 +В заголовках запроса: X-Auth: Токен авторизации 6135 + 6136 + 6137 +Пример ответа: 6138 + 6139 +((( 6140 +((( 6141 +{ 6142 + "vehiclesIds": [ ~/~/ Объекты 6143 + 0 6144 + ], 6145 + "geoIds": [ ~/~/ Геозоны 6146 + 0 6147 + ], 6148 + "fieldsIds": [ ~/~/ Поля 6149 + 0 6150 + ], 6151 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 6152 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 6153 + "agentName": "string", ~/~/ Наименование агента. 6154 + "isEnabled": true, ~/~/ Активность 6155 + "created": "2025-05-26T11:31:05.399Z", ~/~/ Дата создания 6156 + "updated": "2025-05-26T11:31:05.399Z", ~/~/ Дата обновления 6157 + "name": "string", ~/~/ Наименование. 6158 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 6159 + "activationMode": 0, ~/~/ Определяет вид активации локаторов ( 0 - сейчас, 1 - запланировать на время) 6160 + "activationTime": "2025-05-26T11:31:05.399Z", ~/~/ Время активации 6161 + "validity": 0, ~/~/ Значение срока действия 6162 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 6163 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6164 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 6165 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 6166 + "url": "string", ~/~/ Ссылка 6167 + "language": 0, ~/~/ Язык 6168 + "showVehicleName": true, ~/~/ Наименование объекта 6169 + "showVehicleDirection": true, ~/~/ Направление движения на треке 6170 + "allowTrackReport": true, ~/~/ Трек 6171 + "showTrackTracing": true, ~/~/ Трассировка трека 6172 + "showSensors": true, ~/~/ Датчик 6173 + "availableMapLayers": [ ~/~/ Слои на карте 6174 + 0 6175 + ] 6176 +} 6177 +))) 6178 +))) 6179 + 6180 + 6181 +== **Получение перечня моделей ** == 6182 + 6183 +(% class="box successmessage" %) 6184 +((( 6185 +**POST /api/v3/models/find** 6186 +))) 6187 + 6188 +Пример запроса: 6189 + 6190 +((( 6191 +((( 6192 +{ 6193 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6194 + "name": "string", ~/~/ Наименование локатора 6195 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей 6196 +))) 6197 + 6198 + 6199 + 6200 + Пример ответа: 6201 + 6202 + 6203 +((( 6204 +[ 6205 + { 6206 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6207 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя, для которого надо получить данные 6208 + "parentName": "string", ~/~/ Наименование пользователя, для которого надо получить данные 6209 + "name": "string", ~/~/ Наименование локатора 6210 + "modelType": 0 ~/~/ Типы моделей транспортных средств (0 - None, 1 - Агро, 2 - Перевозчик, 3 - Машины) 6211 + } 6212 +] 6213 +))) 6214 +))) 6215 + 6216 + 6217 +== **Создание локатора** == 6218 + 6219 +(% class="box successmessage" %) 6220 +((( 6221 +**POST /api/v3/locators** 6222 +))) 6223 + 6224 +Пример запроса: 6225 + 6226 +((( 6227 +{ 6228 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6229 + "isEnabled": true, ~/~/ Активность 6230 + "name": "string", ~/~/ Наименование локатора 6231 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 6232 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 6233 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6234 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6235 + "url": "string", ~/~/ Ссылка 6236 + "language": 0 ~/~/ Язык 6237 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 6238 + "vehiclesIds": [ ~/~/ Oбъекты 6239 + 0 6240 + ], 6241 + "geoIds": [ ~/~/ Геозоны 6242 + 0 6243 + ], 6244 + "fieldsIds": [ ~/~/ Поля 6245 + 0 6246 + ], 6247 + "showVehicleName": true, ~/~/ Наименование объекта 6248 + "showVehicleDirection": true, ~/~/ Направление движения на треке 6249 + "allowTrackReport": true, ~/~/ Трек 6250 + "showTrackTracing": true, ~/~/ Трассировка трека 6251 + "showSensors": true, ~/~/ Датчик 6252 + "availableMapLayers": [ ~/~/ Слои на карте (по умолчанию OpenStreetMap) 6253 + 0 6254 + ] 6255 +} 6256 +))) 6257 + 6258 + 6259 +Пример ответа: 6260 + 6261 +((( 6262 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора 6263 +))) 6264 + 6265 + 6266 + 6267 +== **Изменение локатора** == 6268 + 6269 +(% class="box infomessage" %) 6270 +((( 6271 +**PUT /api/v3/locators** 6272 +))) 6273 + 6274 +Пример запроса: 6275 + 6276 +((( 6277 +{ 6278 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6279 + "isEnabled": true, ~/~/ Активность 6280 + "name": "string", ~/~/ Наименование 6281 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6282 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 6283 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6284 + "autoProlongation": true, ~/~/ Автопродление срока действия 6285 + "url": "string", ~/~/ Ссылка 6286 + "language": 0 ~/~/ Язык 6287 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 6288 + "vehiclesIds": [ ~/~/ Oбъекты 6289 + 0 6290 + ], 6291 + "geoIds": [ ~/~/ Геозоны 6292 + 0 6293 + ], 6294 + "fieldsIds": [ ~/~/ Поля 6295 + 0 6296 + ], 6297 + "showVehicleName": true, ~/~/ Наименование объекта 6298 + "showVehicleDirection": true, ~/~/ Направление движения на треке 6299 + "allowTrackReport": true, ~/~/ Трек 6300 + "showTrackTracing": true, ~/~/ Трассировка трека 6301 + "showSensors": true, ~/~/ Датчик 6302 + "availableMapLayers": [ ~/~/ Слои на карте (по умолчанию OpenStreetMap) 6303 + 0 6304 + ] 6305 +} 6306 + 6307 + 6308 +))) 6309 + 6310 +Пример ответа: 6311 + 6312 +200 ~/~/ Success 6313 + 6314 + 6315 +== **Удалить локатор** == 6316 + 6317 +(% class="box warningmessage" %) 6318 +((( 6319 +**DELETE /api/v3/locators** 6320 +))) 6321 + 6322 +Пример запроса: 6323 + 6324 +((( 6325 +[ 6326 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора 6327 +] 6328 +))) 6329 + 6330 + 6331 + 6332 += **Раздел: Яндекс Маршруты** = 6333 + 6334 + 6335 +== **Возвращение списка маршрутов** == 6336 + 6337 +(% class="box infomessage" %) 6338 +((( 6339 +**GET /api/v3/TransportRoutes** 6340 +))) 6341 + 6342 +Пример запроса: 6343 +Id ~/~/ Идентификатор поля 6344 + 6345 + 6346 +Пример ответа: 6347 + 6348 +((( 6349 +[ 6350 + { 6351 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 6352 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6353 + "name": "string", ~/~/ Наименование маршрута. 6354 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6355 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6356 + 0 6357 + ] 6358 + } 6359 +] 6360 +))) 6361 + 6362 + 6363 + 6364 +== **Добавить маршрут** == 6365 + 6366 +(% class="box infomessage" %) 6367 +((( 6368 +**POST /api/v3/TransportRoutes** 6369 +))) 6370 + 6371 +Пример запроса: 6372 +{ 6373 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6374 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6375 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6376 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6377 + 0 6378 + ] 6379 +} 6380 + 6381 + 6382 +Пример ответа: 6383 + 6384 +((( 6385 +{ 6386 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6387 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6388 + "name": "string", ~/~/ Определяет наименование маршрута 6389 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6390 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6391 + 0 6392 + ] 6393 +} 6394 +))) 6395 + 6396 + 6397 +== **Обновление маршрута** == 6398 + 6399 +(% class="box successmessage" %) 6400 +((( 6401 +**PUT /api/v3/TransportRoutes** 6402 +))) 6403 + 6404 +Пример запроса: 6405 + 6406 +((( 6407 +{ 6408 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6409 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6410 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6411 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6412 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6413 + 0 6414 + ] 6415 +} 6416 +))) 6417 + 6418 + 6419 +Пример ответа: 6420 + 6421 +((( 6422 +{ 6423 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6424 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6425 + "name": "string", ~/~/ Определяет наименование маршрута 6426 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6427 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6428 + 0 6429 + ] 6430 +} 6431 +))) 6432 + 6433 + 6434 +== **Получить связки маршрутов ТС** == 6435 + 6436 +(% class="box infomessage" %) 6437 +((( 6438 +**POST /api/v3/TransportRoutes/getroutesvehicles** 6439 +))) 6440 + 6441 +Пример запроса: 6442 + 6443 +((( 6444 +[ 6445 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ идентификатор маршрута 6446 +] 6447 +))) 6448 + 6449 + 6450 +Пример ответа: 6451 + 6452 +((( 6453 +[ 6454 + { 6455 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС 6456 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута 6457 + } 6458 +] 6459 +))) 6460 + 6461 + 6462 +== **Удалить маршрут** == 6463 + 6464 +(% class="box warningmessage" %) 6465 +((( 6466 +**DELETE /api/v3/TransportRoutes/{id}** 6467 +))) 6468 + 6469 +Пример запроса: 6470 +Id ~/~/ Идентификатор поля 6471 + 6472 + 6473 + 6474 += **Раздел: Управление доступа к машинам** = 6475 + 6476 + 6477 +== Получение списка транспортных средств видимых пользователю == 6478 + 6479 +(% class="box infomessage" %) 6480 +((( 6481 +**GET /api/v3/UserVisibleVehicles/{userId}** 6482 +))) 6483 + 6484 +Пример ответа: 6485 + 6486 +((( 6487 +{ 6488 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6489 + 0 6490 + ] 6491 +} 6492 +))) 6493 + 6494 + 6495 + 6496 +== Задает видимость транспортных средств пользователю == 6497 + 6498 +(% class="box infomessage" %) 6499 +((( 6500 +**POST /api/v3/UserVisibleVehicles** 6501 +))) 6502 + 6503 +Пример запроса: 6504 + 6505 +((( 6506 +((( 6507 +{ 6508 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя 6509 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6510 + 0 6511 + ] 6512 +} 6513 +))) 6514 + 6515 +((( 6516 + 6517 +))) 6518 + 6519 +((( 6520 + 6521 +))) 6522 + 6523 +((( 6524 +Пример ответа : 6525 +))) 6526 + 6527 +((( 6528 + 6529 +))) 6530 + 6531 +((( 6532 +200 ~/~/ Success 6533 +))) 6534 +))) 6535 + 6536 + 6537 + 6538 + 6539 + 6540 + 4197 4197 (% class="box" lang="en-US" style="text-align: center;" %) 4198 4198 ((( 4199 4199 (% 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]] **