Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/01/28 12:59
<
>
edited by Андрей Калиновский
on 2024/03/18 11:34
on 2024/03/18 11:34
edited by Андрей Калиновский
on 2024/12/23 14:03
on 2024/12/23 14:03
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,5 +1,17 @@ 1 1 (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %) 2 2 ((( 3 +(% class="box warningmessage" %) 4 +((( 5 +(% class="mark" %)##Для обеспечения бесперебойной работы команд и серверного оборудования ГЛОНАССSoft убедительно 6 +просим вас соблюдать несколько простых правил при использовании API-команд:## 7 +))) 8 + 9 +* Формировать не более 3 отчётов одновременно. 10 +* Ограничить количество активных сессий одного пользователя с одного IP-адреса до 50. 11 + 12 +В случае нарушения этих правил, ГЛОНАССSoft оставляет за собой право принудительно остановить выполнение запросов с определенных IP адресов. 13 + 14 + 3 3 **Содержание страницы:** 4 4 ))) 5 5 ... ... @@ -14,11 +14,20 @@ 14 14 15 15 Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de. 16 16 17 -(% style="color:#000000" %)− (%%)При **редактировании** необходимо передавать все параметры пользователяв теле запроса! Те параметры, значения которых не будут переданы - будут стерты!29 +(% style="color:#000000" %)− (%%)При **редактировании** любой записи (пользователь, объект и т.д) необходимо передавать все параметры записи в теле запроса! Те параметры, значения которых не будут переданы - будут стерты! 18 18 31 + 32 +(% style="color:#000000; font-size:16px" %)**Рекомендации** 33 + 34 +- Для запросов по API рекомендуется наделить пользователя ролью **Администратора партнера**, в противном случае при выполнении некоторых запросов у него не будет хватать прав (чаще всего сталкиваются с отсутствием прав при запросах сообщений от терминала за период). 35 + 19 19 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Авторизация**(%%) = 20 20 21 -== (% style="color:#000000; font-size:16px" %)**Авторизация**(%%) == 38 +(% class="box warningmessage" id="H41043244243E44043843743044643844F" %) 39 +((( 40 +(% style="color:#000000; font-size:16px" %)**Авторизация**(%%) 41 +(% style="color:#000000; font-size:16px" %)Адрес сервера всегда следует указывать именно тот, по которому происходит вход в СМТ (https:~/~/hosting.glonasssoft.ru/ , [[https:~~/~~/regions.glonasssoft.ru/>>https://regions.glonasssoft.ru/]] или другие) 42 +))) 22 22 23 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" %) 68 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 69 + "User": "testuser" , ~/~/ имя пользователя(%%) 53 53 } 54 54 55 55 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. ... ... @@ -60,6 +60,9 @@ 60 60 |(% style="width:215px" %)(% style="color:#000000" %)AuthId|(% style="width:861px" %)Токен авторизации 61 61 |(% style="width:215px" %)(% style="color:#000000" %)User|(% style="width:861px" %)Логин пользователя 62 62 80 +(% class="wikigeneratedid" %) 81 +Также имеется возможность сквозной (/бесшовной) авторизации. Для этого к ссылке ( [[https:~~/~~/hosting.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]] / [[https:~~/~~/regions.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]]) добавьте токен авторизации - {AuthId}, чтобы попасть сразу в клиента ([[https:~~/~~/hosting.glonasssoft.ru/login?authId={AUTH_ID}>>https://hosting.glonasssoft.ru/login?authId={AUTH_ID}]]) 82 + 63 63 == (% style="color:#000000; font-size:16px" %)**Проверка авторизации**(%%) == 64 64 65 65 (% class="box infomessage" %) ... ... @@ -226,7 +226,6 @@ 226 226 "bankKS": "string" ~/~/ корр. счёт 227 227 } 228 228 229 - 230 230 Ответ: 231 231 232 232 { ... ... @@ -420,7 +420,6 @@ 420 420 ], 421 421 "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 422 422 } 423 - 424 424 { 425 425 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 426 426 "lastName": "string", ... ... @@ -434,12 +434,8 @@ 434 434 435 435 (% style="text-align:left" %) 436 436 (% style="color:#000000; font-weight:normal" %)Ответ: 437 - 438 -(% style="text-align:left" %) 439 -(% style="color:#000000; font-weight:normal" %){ 440 - 441 -(% style="text-align:left" %) 442 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 455 +{ 456 + "id": "" , ~/~/ ID пользователя 443 443 "lastName": "" , ~/~/ Фамилия , 444 444 "firstName": "" , ~/~/ Имя 445 445 "position": "" , ~/~/ Должность ... ... @@ -456,11 +456,9 @@ 456 456 "kind": "" , ~/~/ тип аутентификации 457 457 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 458 458 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 473 +} 459 459 460 -(% style="text-align:left" %) 461 -(% style="color:#000000; font-weight:normal" %)} 462 462 463 - 464 464 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 465 465 466 466 (% class="box infomessage" %) ... ... @@ -480,19 +480,16 @@ 480 480 481 481 (% style="color:#000000" %)Параметры в теле запроса (JSON): 482 482 483 -(% style="color:#000000" %){ 484 - 495 +(% style="color:#000000" %){(%%) 485 485 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 486 486 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 487 487 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 488 488 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 489 - 490 490 (% style="color:#000000" %)} 491 491 492 492 (% style="color:#000000" %)Ответ: 493 493 494 494 (% style="color:#000000" %){ (%%) 495 - 496 496 "id": "" , ~/~/ идентификатор пользователя 497 497 "lastName": "" , ~/~/ фамилия 498 498 "firstName": "" , ~/~/ имя ... ... @@ -506,7 +506,6 @@ 506 506 "sessionDuration":"", ~/~/ длительность сессии в минутах 507 507 "status": "1", ~/~/ статус пользователя 508 508 "lastLogged": "", ~/~/ дата/время последней авторизации 509 - 510 510 (% style="color:#000000" %)} 511 511 512 512 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -580,10 +580,8 @@ 580 580 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 581 581 582 582 (% lang="en-US" style="text-align:left" %) 583 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 584 - 585 -(% lang="en-US" style="text-align:left" %) 586 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 591 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 592 + "id": "" , ~/~/ ID пользователя 587 587 "lastName": "" , ~/~/ фамилия 588 588 "firstName": "" , ~/~/ имя 589 589 "position": "" , ~/~/ должность ... ... @@ -605,9 +605,7 @@ 605 605 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 606 606 }, 607 607 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 608 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 609 - 610 -(% lang="en-US" style="text-align:left" %) 614 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 611 611 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 612 612 613 613 (% lang="en-US" style="text-align:left" %) ... ... @@ -614,10 +614,8 @@ 614 614 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 615 615 616 616 (% lang="en-US" style="text-align:left" %) 617 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 618 - 619 -(% lang="en-US" style="text-align:left" %) 620 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 621 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 622 + "id": "" , ~/~/ идентификатор пользователя 621 621 "lastName": "" , ~/~/ фамилия 622 622 "firstName": "" , ~/~/ имя 623 623 "position": "" , ~/~/ должность ... ... @@ -638,10 +638,8 @@ 638 638 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 639 639 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 640 640 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 643 +} 641 641 642 -(% lang="en-US" style="text-align:left" %) 643 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 644 - 645 645 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 646 646 647 647 (% class="box warningmessage" %) ... ... @@ -661,12 +661,10 @@ 661 661 662 662 (% style="color:#000000" %)Параметры в теле запроса (JSON): 663 663 664 -(% style="color:#000000" %){ 665 - 664 +(% style="color:#000000" %){(%%) 666 666 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 667 667 "description": "" , ~/~/ описание 668 668 "data": "" , ~/~/ данные, связанные со сменой статуса 669 - 670 670 (% style="color:#000000" %)} 671 671 672 672 (% style="text-align:left" %) ... ... @@ -688,7 +688,7 @@ 688 688 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 689 689 690 690 [ 691 - 689 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 692 692 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 693 693 ] 694 694 ... ... @@ -994,7 +994,7 @@ 994 994 995 995 Ответ: В случае успеха **Success 200** 996 996 997 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 995 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 998 998 999 999 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 1000 1000 ... ... @@ -1023,6 +1023,17 @@ 1023 1023 1024 1024 ((( 1025 1025 { 1024 + 1025 +((( 1026 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1027 + "IsSackEnabled": true, ~/~/ Определяет, должен ли внутренний сервер отвечать устройству сообщением SACK при получении сообщения от устройства 1028 +))) 1029 + 1030 +((( 1031 + ~/~/Используется только на ТС с типом устройства quecklink gv56, quecklink gv58, quecklink 1032 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1033 +))) 1034 + 1026 1026 "vehicleId": "", ~/~/ ID объекта 1027 1027 "name": "", ~/~/ Имя объекта 1028 1028 "imei": "", ~/~/ IMEI объекта ... ... @@ -1030,19 +1030,15 @@ 1030 1030 "deviceTypeName": "", ~/~/ Название типа устройства 1031 1031 "sim1": "", ~/~/ Номер SIM1 1032 1032 "sim2": "", ~/~/ Номер SIM2 1033 - 1034 1034 "parentId": "", ~/~/ ID клиента-родителя 1035 1035 "parentName": "", ~/~/ Наименование клиента-родителя 1036 1036 "modelId": "", ~/~/ ID модели объекта 1037 1037 "modelName": "", ~/~/ Имя модели объекта 1038 - 1039 1039 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1040 1040 "unitName": "string", ~/~/ Наименование подразделения 1041 1041 "status": 0, ~/~/ Статус объекта 1042 - 1043 1043 "createdAt": "", ~/~/ Дата создания объекта 1044 1044 }, 1045 - 1046 1046 "customFields": [ ~/~/ Произвольные поля 1047 1047 { 1048 1048 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -1065,8 +1065,7 @@ 1065 1065 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1066 1066 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1067 1067 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1068 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1069 - 1073 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1070 1070 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1071 1071 "mileageCoeff": 0, ~/~/ коэффициент пробега 1072 1072 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1096,7 +1096,6 @@ 1096 1096 "retries": 0 ~/~/ Количество попыток 1097 1097 } 1098 1098 ], 1099 - 1100 1100 "sensors": [ ~/~/ Датчики 1101 1101 { 1102 1102 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1137,31 +1137,19 @@ 1137 1137 }, 1138 1138 1139 1139 ~/~/ Характерные для произвольного: 1140 - 1141 1141 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1142 - 1143 1143 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1144 - 1145 1145 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1146 - 1147 1147 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1148 - 1149 1149 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1150 - 1151 1151 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1152 - 1153 1153 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1154 - 1155 1155 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1156 - 1157 1157 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1158 - 1159 1159 ~/~/ "ValueOn": "Вкл.", 1160 - 1161 1161 ~/~/ "ValueOff": "Выкл." 1162 1162 "summaryMaxValue": 0 ~/~/ Макс. значение 1163 1163 } 1164 - 1165 1165 "drivers": [ ~/~/ Водители 1166 1166 { 1167 1167 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1170,7 +1170,6 @@ 1170 1170 "isDefault": true ~/~/ По умолчанию 1171 1171 } 1172 1172 ], 1173 - 1174 1174 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1175 1175 { 1176 1176 "id": "", ~/~/ ID задания ... ... @@ -1187,19 +1187,27 @@ 1187 1187 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1188 1188 } 1189 1189 ], 1190 - 1191 - "statusHistory": [ ~/~/ История статусов 1180 +"statusHistory": [ ~/~/ История статусов 1192 1192 { 1193 1193 "status": 0, 1194 1194 "date": "2023-05-22T09:57:39.562Z", 1195 1195 "description": "string", 1196 1196 "additionalInfo": "string" 1197 - } 1198 - ] 1199 1199 1187 +((( 1200 1200 } 1189 + ], 1190 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1191 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1201 1201 ))) 1202 1202 1194 +((( 1195 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1196 +} 1197 + 1198 +))) 1199 +))) 1200 + 1203 1203 (% style="text-align:left" %) 1204 1204 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 1205 1205 ... ... @@ -1206,6 +1206,75 @@ 1206 1206 (% style="text-align:left" %) 1207 1207 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1208 1208 1207 + 1208 +== **Отправить команду на терминал** == 1209 + 1210 +(% class="box successmessage" %) 1211 +((( 1212 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1213 +))) 1214 + 1215 +Команда для отправки на тс. 1216 + 1217 +{ 1218 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId) 1219 +"command": "", ~/~/ Текст отправляемой команды 1220 +"retries": "", ~/~/ Количество попыток отправки на терминал 1221 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 1222 +} 1223 + 1224 +В ответ получаем cmdid 1225 + 1226 + 1227 +== **Получить ответ на отправленную на ТС команду** == 1228 + 1229 +(% class="box infomessage" %) 1230 +((( 1231 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1232 +))) 1233 + 1234 +Идентификатор команды: cmdId 1235 + 1236 +Запрос от терминала на ответ команды 1237 + 1238 +Пример ответ от терминала: 1239 + 1240 +ID= "" ~/~/ идентификатор объекта 1241 +Soft="" ~/~/ версия софта 1242 +GPS=4 ~/~/ тип трекера 1243 +Time=11:05:43 28.06.24 ~/~/ время запроса 1244 +Lat=45.056221 ~/~/ широта 1245 +Lon=39.035938 ~/~/ долгота 1246 +Speed=0.0 ~/~/ скорость 1247 +Course=181.4 ~/~/направление 1248 + 1249 +((( 1250 +== **Список отправленных объекту команд с ответами** == 1251 + 1252 +(% class="box infomessage" %) 1253 +((( 1254 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1255 +))) 1256 + 1257 +Идентификатор ТС: vehicleId 1258 + 1259 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1260 + 1261 +Пример ответа терминала 1262 + 1263 +[ 1264 +{ 1265 +"id": "", ~/~/ идентификатор пользователя 1266 +"commandText": "", ~/~/Текст команды. 1267 +"templateId": "", ~/~/Идентификатор шаблона 1268 +"updated": "", ~/~/ Время отправки 1269 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1270 +"answer": "", ~/~/ Ответ терминала. 1271 +"status": "" ~/~/ Статус отправки 1272 +} 1273 +] 1274 +))) 1275 + 1209 1209 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1210 1210 1211 1211 (% class="box successmessage" %) ... ... @@ -1225,6 +1225,11 @@ 1225 1225 1226 1226 (% style="color:#000000" %){ 1227 1227 1295 + 1296 +((( 1297 + "vehicleId": 0, ~/~/ ID ТС 1298 +))) 1299 + 1228 1228 "parentId": "" , ~/~/ ID клиента 1229 1229 "name": "" , ~/~/ имя ТС 1230 1230 "imei": "" , ~/~/ IMEI ... ... @@ -1245,7 +1245,6 @@ 1245 1245 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1246 1246 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1247 1247 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1248 - 1249 1249 "mileageCalcMethod": 0, 1250 1250 "mileageCoeff": 0, 1251 1251 "locationByCellId": true, ... ... @@ -1278,7 +1278,6 @@ 1278 1278 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1279 1279 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1280 1280 } 1281 - 1282 1282 "drivers": [ ~/~/ Водители 1283 1283 { 1284 1284 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1293,8 +1293,7 @@ 1293 1293 "retries": 0 1294 1294 } 1295 1295 ], 1296 - 1297 - "sensors": [ ~/~/ Датчики 1366 +"sensors": [ ~/~/ Датчики 1298 1298 { 1299 1299 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1300 1300 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1332,103 +1332,292 @@ 1332 1332 "additionalProp2": "string", 1333 1333 "additionalProp3": "string" 1334 1334 }, 1335 - 1336 1336 ~/~/ Характерные для произвольного: 1337 - 1338 1338 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1339 - 1340 1340 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1341 - 1342 1342 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1343 - 1344 1344 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1345 - 1346 1346 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1347 - 1348 1348 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1349 - 1350 1350 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1351 - 1352 1352 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1353 - 1354 1354 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1355 - 1356 1356 ~/~/ "ValueOn": "Вкл.", 1357 - 1358 1358 ~/~/ "ValueOff": "Выкл." 1359 - "summaryMaxValue": 0 ~/~/ Макс. значение 1416 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1417 + 1418 +((( 1419 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1420 + { 1421 + "from": 0, ~/~/ С какого значения 1422 + "color": "string", ~/~/ Каким цветом 1423 + "text": "string" ~/~/ Текст подписи к этому интервалу 1424 + } 1425 + ] 1360 1360 } 1361 1361 ], 1428 +))) 1429 + 1430 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1431 + 1432 + 1362 1362 "customFields": [ ~/~/ Произвольные поля 1363 1363 { 1364 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1365 - "name": "string", 1366 - "value": "string", 1367 - "forClient": true, 1368 - "forTooltip": true, 1369 - "forReport": true 1370 - } 1371 - ] 1435 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1436 + "name": "string", ~/~/ Наименование произвольного поля 1437 + "value": "string", ~/~/ Значение произвольного поля 1438 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1439 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1440 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1441 + 1442 +((( 1443 + } 1444 + ], 1445 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1446 +))) 1447 + 1448 +((( 1449 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1372 1372 } 1451 +))) 1373 1373 1453 + 1374 1374 (% style="color:#000000" %)Ответ: 1375 1375 1376 -(% style="color:#000000" %){ 1377 1377 1378 - "vehicleId": "", ~/~/ID ТС 1379 - "parentId": "", ~/~/Guid владельца ТС 1380 - "name": "", ~/~/Имя объекта 1381 - "imei": "", ~/~/IMEI 1382 - "deviceTypeId": "", ~/~/ID типа устройства 1383 - "modelId": "", ~/~/ID модели 1384 - "unitId": "", ~/~/ID подразделения 1385 - "sim1": "", ~/~/SIM1 1386 - "sim2": "", ~/~/SIM2 1387 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1388 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1389 - "counters": { ~/~/Счётчики 1390 - "mileageEnabled": true, 1391 - "motohoursEnabled": true, 1392 - "mileage": "", 1393 - "motohours": 345.0 1394 - }, 1395 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1396 - "id": null, 1397 - "enabled": true, ~/~/флаг включения 1398 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1399 - "login": "", ~/~/ имя учетной записи 1400 - "password": "" ~/~/ пароль учетной записи 1401 - }, 1402 - "inspectionTasks": { ~/~/ задания на ТО 1403 - "id": "", ~/~/ ID задачи 1404 - "enabled": false, ~/~/ Признак включения 1405 - "name": "", ~/~/ Имя задания 1406 - "description": "", ~/~/ Описание задания 1407 - "mileageCondition": "", ~/~/ Условие по пробегу 1408 - "lastMileage": "", ~/~/ Пробег (в метрах) 1409 - "motohoursCondition": "", ~/~/ Условие по моточасам 1410 - "lastMotohours": "", ~/~/ Моточасы 1411 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1412 - "kind": "", ~/~/ Вид периодичности по времени 1413 - "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1457 +((( 1458 +((( 1459 +((( 1460 +{ 1461 + "vehicleId": 0, ~/~/ ID ТС 1462 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1463 + "name": "string", ~/~/ Имя объекта 1464 + "imei": "string", ~/~/ IMEI 1465 + "deviceTypeId": 0, ~/~/ ID типа устройства 1466 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1467 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1468 + "sim1": "string", ~/~/ SIM1 1469 + "sim2": "string", ~/~/ SIM2 1470 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1471 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1472 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1473 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1474 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1475 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1476 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1477 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1478 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1479 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1480 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1481 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1482 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1483 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1484 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1485 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1486 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1487 + "counters": { ~/~/ Dto для состояний счётчиков 1488 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1489 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1490 + "mileage": 0, ~/~/ Пробег 1491 + "motohours": 0 ~/~/ Моточасы 1492 + }, 1493 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1494 + "id": "string", ~/~/ CMSV6 Идентификатор 1495 + "enabled": true, ~/~/ Признак включения 1496 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1497 + "login": "string", ~/~/ CMSV6 имя учетной записи 1498 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1499 + }, 1500 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1501 + { 1502 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1503 + "enabled": true, ~/~/ Признак включения 1504 + "name": "string", ~/~/ Имя задания 1505 + "description": "string", ~/~/ Описание задания 1506 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1507 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1508 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1509 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1510 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1511 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1512 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1513 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1414 1414 } 1515 + ], 1516 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1517 + { 1518 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1519 + "inputNumber": 0, ~/~/ № входа. 1520 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1521 + "comment": "string", ~/~/ Комментарий 1522 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1523 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1524 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1525 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1526 + } 1527 + ], 1528 + "commandTemplates": [ ~/~/ Список шаблонов команд 1529 + { 1530 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1531 + "name": "string", ~/~/ Название шаблона команд 1532 + "command": "string", ~/~/ Команда на выполнение 1533 + "retries": 0 ~/~/ Лимит попыток отправки 1534 + } 1535 + ], 1536 + "sensors": [ ~/~/ Список датчиков 1537 + { 1538 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1539 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1540 + "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 1541 + "name": "string", ~/~/ Имя датчика 1542 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1543 + "inputNumber": 0, ~/~/ Номер входа 1544 + "pseudonym": "string", ~/~/ Псевдоним 1545 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1546 + "isInverted": true, ~/~/ Признак инверсии 1547 + "disabled": true, ~/~/ Датчик не участвует в обработке 1548 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1549 + "gradesTables": [ ~/~/ Тарировка 1550 + { 1551 + "grades": [ ~/~/ Таблицы тарировки 1552 + { 1553 + "input": 0, ~/~/ Вход 1554 + "output": 0 ~/~/ Выход 1555 + } 1556 + ], 1557 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1558 + } 1559 + ], 1560 + "showInTooltip": true, ~/~/ Отображение в подсказке 1561 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1562 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1563 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1564 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1565 + "expr": "string", ~/~/ Выражение 1566 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1567 + "string" 1568 + ], 1569 + "customParams": { 1570 + "additionalProp1": "string", 1571 + "additionalProp2": "string", 1572 + "additionalProp3": "string" 1573 + }, 1574 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1575 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1576 + { 1577 + "from": 0, ~/~/ С какого значения 1578 + "color": "string", ~/~/ Каким цветом 1579 +))) 1415 1415 1416 -(% style="text-align:left" %) 1417 -(% style="color:#000000" %)} 1581 +((( 1582 + "text": "string" ~/~/ Текст подписи к этому интервалу 1583 + } 1584 + ] 1585 + } 1586 + ], 1587 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1588 + "customFields": [ ~/~/ Список произвольных полей 1589 + { 1590 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1591 + "name": "string", ~/~/ Наименование произвольного поля 1592 + "value": "string", ~/~/ Значение произвольного поля 1593 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1594 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1595 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1596 + } 1597 + ], 1598 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1599 +} 1600 +))) 1601 +))) 1602 +))) 1418 1418 1604 + 1419 1419 **Валидация:** 1420 1420 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1421 1421 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1422 1422 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1423 1423 1424 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 1425 1425 1611 +== **Импортировать историю ТС (Асинхронный запрос)** == 1612 + 1613 +(% class="box successmessage" %) 1614 +((( 1615 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 1616 +))) 1617 + 1618 +Метод запроса: **POST** 1619 + 1620 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 1621 + 1622 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 1623 + 1624 + 1625 +Ответ: 1626 + 1627 +{ 1628 + 1629 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1630 + 1631 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 1632 + 1633 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 1634 + 1635 + "Message": "string", ~/~/ Информация о выполнении запроса 1636 + 1637 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 1638 + 1639 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1640 + 1641 + "Data": "string" ~/~/ Данные 1642 + 1643 +} 1644 + 1645 + 1646 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 1647 + 1426 1426 (% class="box infomessage" %) 1427 1427 ((( 1650 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 1651 +))) 1652 + 1653 +Метод запроса: **GET** 1654 + 1655 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 1656 + 1657 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 1658 + 1659 + 1660 +Ответ: 1661 + 1662 +{ 1663 + 1664 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1665 + 1666 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 1667 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 1668 + 1669 + "Message": "string", ~/~/ Информация о выполнении запроса 1670 + 1671 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 1672 + 1673 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 1674 + 1675 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1676 + 1677 + "Data": "string" ~/~/ Данные 1678 + 1679 +} 1680 + 1681 + 1682 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1683 + 1684 +(% class="box infomessage" %) 1685 +((( 1428 1428 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1429 1429 ))) 1430 1430 1431 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1689 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1432 1432 1433 1433 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1434 1434 ... ... @@ -1462,9 +1462,12 @@ 1462 1462 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1463 1463 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1464 1464 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1465 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1466 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1467 - "customFields": null ~/~/ значение любого из произвольных полей ТС 1723 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1724 + "unitName": "string", ~/~/ Название подразделения (опционально) 1725 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1726 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1727 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1728 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1468 1468 } 1469 1469 1470 1470 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1471,8 +1471,14 @@ 1471 1471 1472 1472 (% style="color:#000000" %)Ответ: 1473 1473 1474 -(% style="color:#000000" %){ 1735 +(% style="color:#000000" %)[ 1736 +{ 1475 1475 1738 +((( 1739 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1740 +))) 1741 + 1742 +((( 1476 1476 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1477 1477 "name": "" ~/~/ наименование объекта 1478 1478 "imei": "" ~/~/ IMEI объекта ... ... @@ -1498,9 +1498,21 @@ 1498 1498 "forClient": true, ~/~/ право на отображение у клиента 1499 1499 "forTooltip": false, ~/~/ право на отображение в подсказке 1500 1500 "forReport": false ~/~/ право на отображение в отчетах 1501 - }(%%) 1502 -(% style="color:#000000" %)} 1768 +))) 1503 1503 1770 +((( 1771 + } 1772 + ], 1773 + "vehicleGroups": [ ~/~/ Группы ТС 1774 + { 1775 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1776 + "name": "string" ~/~/ Наименование группы ТС 1777 + } 1778 + ] 1779 + } 1780 +] 1781 +))) 1782 + 1504 1504 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1505 1505 1506 1506 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1532,13 +1532,11 @@ 1532 1532 "data": "", ~/~/ Данные 1533 1533 "overwrite": false, ~/~/ Флаг перезаписи 1534 1534 "stage": "", ~/~/ Состояние, может быть null 1535 - 1536 1536 (% style="color:#000000" %)} 1537 1537 1538 1538 (% style="color:#000000" %)Ответ: 1539 1539 1540 -(% style="color:#000000" %){ 1541 - 1818 +(% style="color:#000000" %){(%%) 1542 1542 "status": "", ~/~/ значение статуса 1543 1543 "date": "", ~/~/ Дата смены статуса 1544 1544 "description": "", ~/~/ Описание ... ... @@ -1545,10 +1545,10 @@ 1545 1545 "data": "", ~/~/ Данные 1546 1546 "overwrite": false, ~/~/ Флаг перезаписи 1547 1547 "stage": "", ~/~/ Состояние 1548 - 1549 -(% style="text-align:left" %) 1550 1550 (% style="color:#000000" %) } 1551 1551 1827 +== == 1828 + 1552 1552 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1553 1553 1554 1554 (% class="box warningmessage" %) ... ... @@ -1624,9 +1624,19 @@ 1624 1624 1625 1625 "drivers": [ ~/~/ Водители 1626 1626 { 1627 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1628 - "isDefault": true 1629 - } 1904 + 1905 +((( 1906 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1907 + "inputNumber": 0, ~/~/ № входа. 1908 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения. 1909 + "comment": "string", ~/~/ Комментарий. 1910 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1911 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1912 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения. 1913 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения. 1914 +))) 1915 + 1916 + } 1630 1630 ], 1631 1631 "commandTemplates": [ ~/~/ Шаблон команды 1632 1632 { ... ... @@ -1636,8 +1636,7 @@ 1636 1636 "retries": 0 1637 1637 } 1638 1638 ], 1639 - 1640 - "sensors": [ ~/~/ Датчики 1926 +"sensors": [ ~/~/ Датчики 1641 1641 { 1642 1642 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1643 1643 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1663,6 +1663,11 @@ 1663 1663 ], 1664 1664 "showInTooltip": true, ~/~/ Отображать в подсказке 1665 1665 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1952 + 1953 +((( 1954 + "color": "string",** ~/~/ **Цвет датчика 1955 +))) 1956 + 1666 1666 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1667 1667 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1668 1668 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1675,95 +1675,225 @@ 1675 1675 "additionalProp2": "string", 1676 1676 "additionalProp3": "string" 1677 1677 }, 1678 - 1679 1679 ~/~/ Характерные для произвольного: 1680 - 1681 1681 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1682 - 1683 1683 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1684 - 1685 1685 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1686 - 1687 1687 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1688 - 1689 1689 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1690 - 1691 1691 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1692 - 1693 1693 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1694 - 1695 1695 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1696 - 1697 1697 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1698 - 1699 1699 ~/~/ "ValueOn": "Вкл.", 1700 - 1701 1701 ~/~/ "ValueOff": "Выкл." 1702 1702 "summaryMaxValue": 0 ~/~/ Макс. значение 1982 + 1983 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1984 + { 1985 + "from": 0, ~/~/ С какого значения 1986 + "color": "string", ~/~/ Каким цветом 1987 + "text": "string" ~/~/ Текст подписи к этому интервалу 1988 + } 1989 + ] 1703 1703 } 1704 1704 ], 1992 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1993 + 1705 1705 "customFields": [ ~/~/ Произвольные поля 1706 - { 1707 - 1708 - "name": "string", 1709 - "value": "string", 1710 - "forClient": true, 1711 - "forTooltip": true, 1712 - "forReport": true 1995 + { 1996 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1997 + "name": "string", ~/~/ Наименование произвольного поля 1998 + "value": "string", ~/~/ Значение произвольного поля 1999 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2000 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2001 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1713 1713 } 1714 - ] 2003 + 2004 +((( 2005 + ], 2006 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 2007 +))) 2008 + 1715 1715 } 1716 1716 2011 + 1717 1717 (% style="color:#000000" %)Ответ: 1718 1718 1719 -(% lang="en-US" style="text-align:left" %) 1720 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 2014 +((( 2015 +{ 2016 + "vehicleId": 0, ~/~/ ID ТС 2017 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 2018 + "name": "string", ~/~/ Имя объекта 2019 + "imei": "string", ~/~/ IMEI 2020 + "deviceTypeId": 0, ~/~/ ID типа устройства 2021 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 2022 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 2023 + "sim1": "string", ~/~/ SIM1 2024 + "sim2": "string", ~/~/ SIM2 2025 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 2026 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 2027 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 2028 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 2029 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 2030 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 2031 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 2032 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 2033 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 2034 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 2035 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 2036 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 2037 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 2038 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 2039 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 2040 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 2041 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 2042 + "counters": { ~/~/ состояний счётчиков 2043 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 2044 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 2045 + "mileage": 0, ~/~/ Пробег 2046 + "motohours": 0 ~/~/ Моточасы 2047 + }, 2048 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 2049 + "id": "string", ~/~/ CMSV6 Идентификатор 2050 + "enabled": true, ~/~/ Признак включения 2051 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 2052 +))) 1721 1721 1722 -(% lang="en-US" style="text-align:left" %) 1723 - "vehicleId": "", ~/~/ ID ТС 1724 - "parentId": "", ~/~/ ID клиента 1725 - "name": "", ~/~/ имя ТС 1726 - "imei": "", ~/~/ IMEI 1727 - "deviceTypeId": "", ~/~/ типа устройства 1728 - "modelId": "", ~/~/ ID модели 1729 - "unitId": "", ~/~/ ID подразделения 1730 - "sim1": "", ~/~/ SIM 1 1731 - "sim2": "", ~/~/ SIM2 1732 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1733 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1734 - "counters": 1735 - { 1736 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1737 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1738 - "mileage": "", ~/~/ пробег 1739 - "motohours": "", ~/~/ моточасы 1740 - } 1741 - "cmsv6Parameters": ~/~/ параметры CMSv6 2054 + 2055 +((( 2056 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 2057 + "login": "string", ~/~/ CMSV6 имя учетной записи 2058 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 2059 + }, 2060 + "inspectionTasks": [ ~/~/ Задания на ТО 2061 + { 2062 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 2063 + "enabled": true, ~/~/ Признак включения 2064 + "name": "string", ~/~/ Имя задания 2065 + "description": "string", ~/~/ Описание задания 2066 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 2067 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 2068 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 2069 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 2070 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 2071 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 2072 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2073 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2074 + } 2075 + ], 2076 + "drivers": [ ~/~/ Список водителей 2077 + { 2078 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2079 + "inputNumber": 0, ~/~/ № входа. 2080 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2081 + "comment": "string", ~/~/ Комментарий. 2082 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2083 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2084 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2085 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2086 + } 2087 + ], 2088 + "commandTemplates": [ ~/~/ Список шаблонов команд 2089 + { 2090 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2091 + "name": "string", ~/~/ Название шаблона команд 2092 + "command": "string", ~/~/ Команда на выполнение 2093 + "retries": 0 ~/~/ Лимит попыток отправки 2094 + } 2095 + ], 2096 + "sensors": [ ~/~/ Список датчиков 2097 + { 2098 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2099 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2100 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2101 +))) 2102 + 2103 +((( 2104 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2105 +))) 2106 + 2107 +((( 2108 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2109 +))) 2110 + 2111 +((( 2112 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2113 +))) 2114 + 2115 +((( 2116 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2117 +))) 2118 + 2119 +((( 2120 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2121 + "name": "string", ~/~/ Имя датчика 2122 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2123 +))) 2124 + 2125 +((( 2126 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2127 + "inputNumber": 0, ~/~/ Номер входа 2128 + "pseudonym": "string", ~/~/ Псевдоним 2129 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2130 + "isInverted": true, ~/~/ Признак инверсии 2131 + "disabled": true, ~/~/ Датчик не участвует в обработке 2132 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2133 + "gradesTables": [ ~/~/ Тарировка 1742 1742 { 1743 - "id": ~/~/ идентификатор 1744 - "enabled": true, ~/~/ флаг включения 1745 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1746 - "login": "", ~/~/ имя учетной записи 1747 - "password": "", ~/~/ пароль учетной записи 1748 - } 1749 - "inspectionTasks": ~/~/ задания на ТО 1750 - { 1751 - "id": "", ~/~/ ID задания 1752 - "enabled": false, ~/~/ Признак включения 1753 - "name": "", ~/~/ Имя задания 1754 - "description": "", ~/~/ Описание задания 1755 - "mileageCondition": "", ~/~/ Условие по пробегу 1756 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1757 - "motohoursCondition": "", ~/~/ Условие по моточасам 1758 - "lastMotohours": "", ~/~/ Моточасы 1759 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1760 - "kind": "", ~/~/ Вид периодичности по времени 1761 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2135 + "grades": [ ~/~/ Таблицы тарировки 2136 + { 2137 + "input": 0, ~/~/ Вход 2138 + "output": 0 ~/~/ Выход 2139 + } 2140 + ], 2141 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1762 1762 } 2143 + ], 2144 + "showInTooltip": true, ~/~/ Отображение в подсказке 2145 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1763 1763 1764 -(% lang="en-US" style="text-align:left" %) 1765 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2147 +((( 2148 + "color": "string", ~/~/ цвет уведомлений 2149 +))) 1766 1766 2151 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2152 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2153 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2154 + "expr": "string", ~/~/ Выражение 2155 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2156 + "string" 2157 + ], 2158 + "customParams": { ~/~/ Дополнительные настройки 2159 + "additionalProp1": "string", 2160 + "additionalProp2": "string", 2161 + "additionalProp3": "string" 2162 + }, 2163 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2164 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2165 + { 2166 + "from": 0, ~/~/ С какого значения 2167 + "color": "string", ~/~/ Каким цветом 2168 + "text": "string" ~/~/ Текст подписи к этому интервалу 2169 + } 2170 + ] 2171 + } 2172 + ], 2173 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2174 + "customFields": [ ~/~/ Список произвольных полей 2175 + { 2176 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2177 + "name": "string", ~/~/ Наименование произвольного поля 2178 + "value": "string", ~/~/ Значение произвольного поля 2179 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2180 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2181 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2182 + } 2183 + ], 2184 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2185 +} 2186 +))) 2187 + 1767 1767 **Валидация:** 1768 1768 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1769 1769 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1808,12 +1808,9 @@ 1808 1808 1809 1809 (% style="color:#000000" %)Ответ: 1810 1810 1811 -(% style="color:#000000" %){ 1812 - 2232 +(% style="color:#000000" %){(%%) 1813 1813 "deviceTypeId" : "", ~/~/ ID типа устройства 1814 1814 "deviceTypeName" : "" ~/~/ Название типа устройства 1815 - 1816 -(% style="text-align:left" %) 1817 1817 (% style="color:#000000" %)} 1818 1818 1819 1819 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1835,13 +1835,10 @@ 1835 1835 1836 1836 (% style="color:#000000" %)Ответ: 1837 1837 1838 -(% style="color:#000000" %){ 1839 - 2256 +(% style="color:#000000" %){(%%) 1840 1840 "id": "", ~/~/ ID типа датчика 1841 1841 "name": "", ~/~/ Название 1842 1842 "description": "", ~/~/ Описание 1843 - 1844 -(% style="text-align:left" %) 1845 1845 (% style="color:#000000" %)} 1846 1846 1847 1847 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -2043,10 +2043,12 @@ 2043 2043 { 2044 2044 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2045 2045 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2046 - "mileageBegin": 0, ~/~/ Пробег на начало периода 2047 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 2048 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 2049 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2461 + "mileage": 0, ~/~/ Пробег за период, километры 2462 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2463 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2464 + "motohours": 0, ~/~/ Моточасы за период, секунды 2465 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2466 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2050 2050 } 2051 2051 ] 2052 2052 } ... ... @@ -2095,6 +2095,12 @@ 2095 2095 } 2096 2096 ] 2097 2097 2515 +(% class="box warningmessage" %) 2516 +((( 2517 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2518 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2519 +))) 2520 + 2098 2098 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2099 2099 2100 2100 (% class="box infomessage" %) ... ... @@ -2158,74 +2158,42 @@ 2158 2158 Тело запроса: 2159 2159 2160 2160 { 2161 - 2162 2162 "vehicleIds": [ ], ~/~/ Список ID объектов 2163 - 2164 2164 "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2165 - 2166 2166 "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2167 - 2168 2168 "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2169 - 2170 2170 } 2171 2171 2172 2172 Ответ: 2173 2173 2174 -[ 2175 - 2592 +[ 2176 2176 { 2177 - 2178 2178 "vehicleId": 0, ~/~/ ID объекта 2179 - 2180 2180 "vehicleName": "string", ~/~/ Имя объекта 2181 - 2182 2182 "moves": [ ~/~/ Событие движения 2183 - 2184 2184 { 2185 - 2186 2186 "mileage": 0, ~/~/ Пробег, км 2187 - 2188 2188 "eventId": 0, ~/~/ Идентификатор события 2189 - 2190 2190 "eventName": "string", ~/~/ Название события 2191 - 2192 2192 "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2193 - 2194 2194 "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2195 - 2196 2196 "duration": 0 ~/~/ Продолжительность события, секунд 2197 - 2198 2198 } 2199 - 2200 2200 ], 2201 - 2202 2202 "stops": [ ~/~/ События стоянок 2203 - 2204 2204 { 2205 - 2206 - "address": "string", ~/~/ Адрес события 2207 - 2608 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2208 2208 "eventId": 0, ~/~/ Идентификатор события 2209 - 2210 2210 "eventName": "string", ~/~/ Название события 2211 - 2212 2212 "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2213 - 2214 2214 "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2215 - 2216 2216 "duration": 0 ~/~/ Продолжительность события, секунд 2217 - 2218 - 2219 2219 } 2220 - 2221 2221 ] 2222 - 2223 2223 } 2224 - 2225 2225 ] 2226 2226 2227 2227 2228 - 2229 2229 == (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2230 2230 2231 2231 (% class="box infomessage" %) ... ... @@ -2262,7 +2262,6 @@ 2262 2262 } 2263 2263 2264 2264 2265 - 2266 2266 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2267 2267 2268 2268 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2570,6 +2570,32 @@ 2570 2570 2571 2571 Success 2572 2572 2963 + 2964 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2965 + 2966 +(% class="box warningmessage" %) 2967 +((( 2968 +**PUT** /api/v3/notifications/prolongation 2969 +))) 2970 + 2971 +Метод позволяет продлить уведомления. 2972 + 2973 +Метод запроса **PUT** 2974 + 2975 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 2976 + 2977 +В заголовках запроса: X-Auth: Токен авторизации. 2978 + 2979 +Тело запроса: 2980 + 2981 +[ 2982 + 2983 +0 2984 + 2985 +] 2986 + 2987 +где 0 идентификатор ids. 2988 + 2573 2573 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2574 2574 2575 2575 (% class="box errormessage" %) ... ... @@ -3760,7 +3760,7 @@ 3760 3760 **POST /api/v3/vehicles/import/{agentId}** 3761 3761 ))) 3762 3762 3763 -Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml** или **wlp. **Также они могут находится в** zip-архиве.** 4179 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 3764 3764 3765 3765 В пути указывается **agentId** - id клиента. 3766 3766 ... ... @@ -3772,7 +3772,7 @@ 3772 3772 3773 3773 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3774 3774 |withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 3775 -|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: 1- Замена,2- Слияние,3- Добавление4191 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 3776 3776 3777 3777 В теле использовать тип **form-data,** тип значения** file** 3778 3778 ... ... @@ -3951,64 +3951,67 @@ 3951 3951 Тело запроса: 3952 3952 3953 3953 { 3954 - "vehicleIds": [vehicleId], 3955 - "from": "2023-11-22T09:29:48.051Z", 3956 - "to": "2023-11-22T09:29:48.051Z" 4370 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4371 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4372 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 3957 3957 } 3958 3958 3959 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3960 -|vehicleIds|Массив ID объектов 3961 -|from|Дата начала запроса 3962 -|to|Дата окончания запроса 3963 - 3964 3964 Ответ: 3965 3965 3966 3966 { 3967 - "items": [ 4378 + "items": [ ~/~/ Список в разрезе ТС 3968 3968 { 3969 - "from": "2023-11-22T09:29:48.052Z", 3970 - "to": "2023-11-22T09:29:48.052Z", 3971 - "vehicleId": 0, 3972 - "vehicleName": "string", 3973 - "vehicleModel": "string", 3974 - "penalty": 0, 3975 - "score": 0, 3976 - "totalViolations": 0, 3977 - "violationsByType": { 3978 - "overspeedingViolations": 0, 3979 - "accelerationViolations": 0, 3980 - "brakingViolations": 0, 3981 - "turningViolations": 0, 3982 - "dangerousDrivingViolations": 0, 3983 - "sensorViolations": 0 4380 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4381 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4382 + "vehicleId": 0, ~/~/ ID ТС 4383 + "vehicleName": "string", ~/~/ Название ТС 4384 + "vehicleModel": "string", ~/~/ Модель ТС 4385 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4386 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4387 + "totalViolations": 0, ~/~/ Нарушений всего 4388 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4389 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4390 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4391 + "brakingViolations": 0, ~/~/ Нарушений торможения 4392 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4393 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4394 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3984 3984 }, 3985 - "moveTime": 0, 3986 - "mileage": 0, 3987 - "tripsCount": 0, 3988 - "trips": [ 4396 + 4397 +((( 4398 + 4399 +))) 4400 + 4401 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4402 + "mileage": 0, ~/~/ Пробег, м 4403 + "tripsCount": 0, ~/~/ Кол-во рейсов 4404 + "trips": [ ~/~/ Информация по рейсу 3989 3989 { 3990 - "penalty": 0, 3991 - "score": 0, 3992 - "violationsCount": 0, 3993 - "violationsByType": { 3994 - "overspeedingViolations": 0, 3995 - "accelerationViolations": 0, 3996 - "brakingViolations": 0, 3997 - "turningViolations": 0, 3998 - "dangerousDrivingViolations": 0, 3999 - "sensorViolations": 0 4406 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4407 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4408 + "violationsCount": 0, ~/~/ Всего нарушений 4409 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4410 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4411 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4412 + "brakingViolations": 0, ~/~/ Нарушений торможения 4413 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4414 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4415 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4000 4000 }, 4001 - "moveTime": 0, 4002 - "mileage": 0, 4003 - "motohours": 0, 4004 - "maxSpeed": 0, 4005 - "startAddress": "string", 4006 - "endAddress": "string", 4007 - "drivers": [ 4417 + 4418 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4419 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4420 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4421 + "mileage": 0, ~/~/ Пробег, м 4422 + "motohours": 0, ~/~/ Моточасы, секунды 4423 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4424 + "startAddress": "string", ~/~/ Адрес начала рейса 4425 + "endAddress": "string", ~/~/ Адрес конца рейса 4426 + "drivers": [ ~/~/ Список водителей 4008 4008 { 4009 - "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4010 - "driverName": "string", 4011 - "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 4428 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4429 + "driverName": "string", ~/~/ФИО водителя 4430 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 4012 4012 } 4013 4013 ] 4014 4014 } ... ... @@ -4017,107 +4017,891 @@ 4017 4017 ] 4018 4018 } 4019 4019 4020 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4021 -|from|Дата начала запроса 4022 -|to|Дата окончания 4023 -|vehicleId|ID объекта 4024 -|vehicleName|Имя объекта 4025 -|vehicleModel|Модель объекта 4026 -|penalty|Сумма штрафных баллов 4027 -|score|Оценка 4028 -|totalViolations|Суммарное количество нарушений 4029 -|violationsByType|Список типов нарушений и количество нарушений для каждого типа 4030 -|overspeedingViolations|Превышение скорости 4031 -|accelerationViolations|Ускорение 4032 -|brakingViolations|Торможение 4033 -|turningViolations|Резкий поворот 4034 -|dangerousDrivingViolations|Резкое вождение 4035 -|sensorViolations|Нарушение по датчику 4036 -|moveTime|Время в движении 4037 -|mileage|Пробег 4038 -|tripsCount|Количество рейсов 4039 -|motohours|Моточасы 4040 -|maxSpeed|Максимальная скорость 4041 -|startAddress|Адрес начала рейса 4042 -|endAddress|Адрес окончания рейса 4043 -|drivers|Список водителей, которые были на объекте в течениии рейса 4044 -|driverGuid|Guid водителя 4045 -|driverName|Имя водителя 4046 -|driverRfid|Номер Карты-метки 4047 - 4048 4048 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 4049 4049 4050 4050 == (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4051 4051 4052 -Транзакции по топливным картам можно получить при наличии права «Транзакции ТК» 4443 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4053 4053 4054 4054 (% class="box infomessage" %) 4055 4055 ((( 4056 - **POST**/api/v3/fuelcards/transactions4447 +POST /api/v3/fuelcards/transactions 4057 4057 ))) 4058 4058 4059 - Запрос должен содержатьпараметры:4450 +Метод запроса: POST 4060 4060 4452 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4453 +\\В заголовках запроса: X-Auth: Токен авторизации 4454 + 4455 +Параметры в теле запроса (JSON): 4456 + 4061 4061 { 4458 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4459 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4460 + "ids": [ 4461 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4462 + ], 4463 + "timezone": 0 ~/~/ Часовой пояс 4464 +} 4062 4062 4063 - "startDate": "2024-03-14T13:10:21.797Z", ~/~/ Дата начала периода построения 4064 4064 4065 - "endDate": "2024-03-14T13:10:21.797Z", ~/~/ Дата окончания периода построения 4467 +Ответ: 4468 + { 4469 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4470 + "driver": "string", ~/~/ Водители, привязанные к ТК 4471 + "object": "string", ~/~/ Наименование ТС 4472 + "amount": 0, ~/~/ Количество топлива 4473 + "amountDut": 0, ~/~/ Количество по ДУТ 4474 + "amountDiff": 0, ~/~/ Разница, л 4475 + "amountDiffPerc": 0, ~/~/ Разница, % 4476 + "summa": 0, ~/~/ Стоимость, руб 4477 + "serviceName": "string", ~/~/ Тип топлива 4478 + "price": 0, ~/~/ Цена за литр, руб 4479 + "cardName": "string", ~/~/ Наименование ТК 4480 + "cardNum": "string", ~/~/ Номер ТК 4481 + "operator": "string", ~/~/ Оператор ТК 4482 + "address": "string" ~/~/ Адрес АЗС 4483 + } 4066 4066 4067 - "ids": [ 4068 4068 4069 - 3fa85f64-5717-4562-b3fc-2c963f66afa6"~/~/Guid-ытопливных карт4486 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4070 4070 4488 + 4489 +== **Получение полных данных о ретрансляторе** == 4490 + 4491 +(% class="box infomessage" %) 4492 +((( 4493 +**GET ** **/api/v3/retranslations/{id}** 4494 +))) 4495 + 4496 +id - Идентификатор ретранслятора 4497 + 4498 + 4499 +Пример ответа: 4500 + 4501 +{ 4502 +"description": "", ~/~/ Поле описания ретранслятора 4503 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4504 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4505 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4506 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4507 +"objects": [ ~/~/ Объекты для ретрансляции 4508 +{ 4509 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4510 +"name": "", ~/~/ Наименование объекта ретрансляции 4511 +"imei": "", ~/~/ IMEI объекта ретрансляции 4512 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4513 +} 4514 + ], 4515 +"id": "", ~/~/ Идентификатор ретранслятора 4516 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4517 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4518 +} 4519 + 4520 + 4521 +== **Удаление данных ретранслятора** == 4522 + 4523 +(% class="box infomessage" %) 4524 +((( 4525 +**DELETE** **/api/v3/retranslations/{id}** 4526 +))) 4527 + 4528 +id - Идентификатор ретранслятора 4529 + 4530 + 4531 +== **Создание ретранслятора** == 4532 + 4533 +(% class="box infomessage" %) 4534 +((( 4535 +**POST ** **/api/v3/retranslations/{id}** 4536 +))) 4537 + 4538 +Запрос: 4539 + 4540 +{ 4541 +"description": "", ~/~/ Поле описания ретранслятора 4542 +"subscriberId": "", ~/~/ Идентификатор подписчика 4543 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4544 +"address": "", ~/~/ Адрес и порт принимающего сервера 4545 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4546 +"objects": [ ~/~/Объекты для ретрансляции 4547 +{ 4548 +"id": "", ~/~/ Идентификатор ретранслятора 4549 +"imei": "", ~/~/ IMEI объекта ретрансляции 4550 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4551 +} 4552 + ] 4553 +} 4554 + 4555 + 4556 +Ответ: 4557 + 4558 +{ 4559 +"description": "", ~/~/ Поле описания ретранслятора 4560 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4561 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4562 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4563 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4564 +"objects": [ ~/~/ Объекты для ретрансляции 4565 +{ 4566 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4567 +"name": "string", ~/~/ Наименование объекта ретрансляции 4568 +"imei": "", ~/~/ IMEI объекта ретрансляции 4569 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4570 +} 4071 4071 ], 4572 +"id": "", ~/~/ Идентификатор ретранслятора 4573 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4574 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4575 +} 4072 4072 4073 - "timezone": 0, ~/~/ Часовой пояс 4074 4074 4075 - "agent": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Guidклиентавладельца4578 +== **Редактирование ретранслятора** == 4076 4076 4580 +(% class="box infomessage" %) 4581 +((( 4582 +**PUT** **/api/v3/retranslations** 4583 +))) 4584 + 4585 +Пример запроса: 4586 + 4587 +{ 4588 +"id": "", ~/~/ Идентификатор ретранслятора 4589 +"description": "string", ~/~/ Поле описания ретранслятора 4590 +"subscriberId": "", ~/~/ Идентификатор подписчика 4591 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4592 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4593 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4594 +"objects": ~/~/ Объекты для ретрансляции 4595 +[ 4596 +{ 4597 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4598 +"imei": "", ~/~/ IMEI объекта ретрансляции 4599 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4077 4077 } 4601 + ] 4602 +} 4078 4078 4604 + 4605 +Пример ответа: 4606 + 4607 +{ 4608 +"description": "", ~/~/ Поле описания ретранслятора 4609 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4610 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4611 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4612 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4613 +"objects": [ ~/~/ Объекты для ретрансляции 4614 +{ 4615 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4616 +"name": "string", ~/~/ Наименование объекта ретрансляции 4617 +"imei": "", ~/~/ IMEI объекта ретрансляции 4618 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4619 +} 4620 + ], 4621 +"id": "", ~/~/ Идентификатор ретранслятора 4622 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4623 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4624 +} 4625 + 4626 + 4627 +== **Получение списка ретранслятора клиента** == 4628 + 4629 +(% class="box infomessage" %) 4630 +((( 4631 +**POST /api/v3/retranslations/find** 4632 +))) 4633 + 4634 +Пример запроса: 4635 + 4636 +{ 4637 +"id": "", ~/~/ Идентификатор ретранслятора 4638 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4639 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4640 +} 4641 + 4079 4079 Ответ: 4080 4080 4081 - { 4644 +[ 4645 +{ 4646 +"description": "", ~/~/ Поле описания ретранслятора 4647 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4648 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4649 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4650 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4651 +"id": "", ~/~/ Идентификатор ретранслятора 4652 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4653 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4654 +} 4655 +] 4082 4082 4083 - "date": "2024-03-14T13:14:26.212Z", ~/~/ Дата транзакции 4084 4084 4085 - " driver":"string",~/~/ Имя водителя4658 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4086 4086 4087 - "amount": 0, ~/~/ Количествотоплива4660 +== **API для отчета по выгрузке комбайнов** == 4088 4088 4089 - "amountDut": 0, ~/~/ Количество топлива по ДУТ 4662 +(% class="box infomessage" %) 4663 +((( 4664 +**POST /api/v3/Reports/harvesterUnloading** 4665 +))) 4090 4090 4091 - "amountDiff": 0, ~/~/ Разницав литрах4667 +Пример запроса: 4092 4092 4093 - "amountDiffPerc": 0, ~/~/ Разница в % 4669 +{ 4670 + "byTime": 0, ~/~/ Объединение событий по времени 4671 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4672 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4673 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4674 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4675 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4676 + 0 4677 + ], 4678 + "from": "", ~/~/ Дата и время начало запроса 4679 + "to": "", ~/~/ Дата и время окончания запроса 4680 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4681 +} 4094 4094 4095 - "summa": 0, ~/~/ Стоимостьвруб.4683 +Пример ответа: 4096 4096 4097 - "serviceName": "string", ~/~/ Тип топлива 4685 +[ 4686 + { 4687 + "harvesterName": "", ~/~/Комбайн, номер 4688 + "harvesterId": 0, ~/~/Комбайн, id 4689 +"harvesterModel": "", ~/~/ Модель комбайна 4690 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4691 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4692 + "events": [ ~/~/Список событий в разрезе комбайна 4693 + { 4694 + "driverId": "", ~/~/Идентификатор водителя 4695 + "driverName": "", ~/~/Водитель комбайна, ФИО 4696 + "RFID": "", ~/~/ идентификатор карты-метки 4697 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4698 + "vehicleId": 0, ~/~/идентификатор объекта 4699 + "vehicleName": "string", ~/~/ Имя объекта 4700 + "modelName": "string", ~/~/ Имя модели объекта 4701 + "nearestVehicles": [ ~/~/Объекты рядом 4702 + { 4703 + "vehicleId": 0, ~/~/идентификатор объекта 4704 + "vehicleName": "string" ~/~/ Имя объекта 4705 + } 4706 + ], 4707 + "fields": [ ~/~/Поля, где происходила выгрузка 4708 + { 4709 + "id": 0, ~/~/ идентификатор пользователя 4710 + "name": "string" ~/~/ имя пользователя 4711 + } 4712 + ], 4713 + "event": "string", ~/~/Событие 4714 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4715 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4716 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4717 + "cultureName": "string", ~/~/ название культуры 4718 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4719 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4720 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4721 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4722 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4723 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4724 + "issued": 0, ~/~/Выдано, бункеров 4725 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4726 + "latitude": 0, ~/~/Широта 4727 + "longitude": 0, ~/~/ Долгота 4728 + "litresAway": 0, ~/~/Отдано, л 4729 + "m3Away": 0 ~/~/Отдано, м3 4730 + } 4731 + ] 4732 + } 4733 +] 4098 4098 4099 - "price": 0, ~/~/ Цена за литр в руб. 4100 4100 4101 - ardName":"string",~/~/ НаименованиеТК4736 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 4102 4102 4103 - "cardNum": "string", ~/~/ Номер ТК 4104 4104 4105 - "operator": "string", ~/~/ ОператорТК4739 +== **Запрос списка полей** == 4106 4106 4107 - "address": "string", ~/~/ Адрес АЗС 4741 +(% class="box successmessage" %) 4742 +((( 4743 +**POST /api/v3/agroLands/find** 4744 +))) 4108 4108 4109 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Guid топливнойкарты4746 +Пример запроса: 4110 4110 4748 +((( 4749 +((( 4750 +((( 4751 +{ 4752 + "year": 0, ~/~/ Фильтр по году 4753 + "name": "string", ~/~/ Фильтр по названию 4754 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 4755 +} 4756 +))) 4757 +))) 4758 + 4759 + 4760 +))) 4761 + 4762 +Пример ответа: 4763 + 4764 +((( 4765 +[ 4766 + { 4767 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4768 + "year": 0, ~/~/ Год поля 4769 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 4770 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 4771 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 4772 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4773 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4774 + "counts": { ~/~/ Счётчики с/х поля 4775 + "fieldOperations": 0, ~/~/ Количество операций на поле 4776 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4777 + "facts": 0 ~/~/ Счётчик факта 4778 + }, 4779 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4780 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4781 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4782 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4783 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4784 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4785 + "planComment": "string", ~/~/ Комментарий к полю 4786 + "productivity": 0, ~/~/ Урожайность. 4787 + "id": 0, ~/~/ Идентификатор объекта геозоны 4788 + "name": "string", ~/~/ Название объекта геозоны 4789 + "type": 0, ~/~/ Тип объекта геозоны 4790 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4791 + "fname": "string", ~/~/ Имя файла 4792 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4793 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 4794 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 4795 + "description": "string", ~/~/ Описание объекта геозоны 4796 + "area": 0, ~/~/ Площадь, м2 4797 + "perimetr": 0, ~/~/ Периметр, м 4798 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 4111 4111 } 4800 +] 4112 4112 4113 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 4114 4114 4803 +== **Создание нового поля ** == 4804 + 4805 +(% class="box successmessage" %) 4806 +((( 4807 +**POST /api/v3/agroLands** 4808 +))) 4809 + 4810 +Пример запроса: 4811 + 4812 +((( 4813 +{ 4814 + "extId": "string", 4815 + "shape": "string", ~/~/ Форма поля 4816 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 4817 + "display": "string", ~/~/ Настройки отображения 4818 + "year": 0, ~/~/ Год поля 4819 + "name": "string", ~/~/ Наименование 4820 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4821 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 4822 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 4823 + "planComment": "string", ~/~/ Комментарий к полю 4824 + "cropRotations": [ ~/~/ Данные по севообороту 4825 + { 4826 + "landId": 0, ~/~/ ID поля 4827 + "landName": "string", ~/~/ Название поля 4828 + "year": 0, ~/~/ Год урожая 4829 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4830 + "cultureName": "string", ~/~/ Название культуры 4831 + "productivity": 0, ~/~/ Урожайность 4832 + "area": 0, ~/~/ Площадь поля, Га 4833 + "total": 0, ~/~/ Валовый сбор 4834 + "productivityFact": 0, ~/~/ Фактическая урожайность 4835 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4836 + "totalFact": 0, ~/~/ Фактический валовый сбор 4837 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 4838 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 4839 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 4840 + "isyearplan": true, ~/~/ Годовой план 4841 + "comment": "string" ~/~/ Комментарий 4842 + } 4843 + ] 4844 +} 4845 +))) 4846 + 4847 +((( 4848 + 4849 +))) 4850 + 4851 +Пример ответа: 4852 + 4853 +((( 4854 +((( 4855 +{ 4856 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4857 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4858 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4859 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4860 + "cropRotations": [ ~/~/ Данные по севообороту 4861 + { 4862 + "landId": 0, ~/~/ ID поля 4863 + "landName": "string", ~/~/ Название поля 4864 + "year": 0, ~/~/ Год урожая 4865 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4866 + "cultureName": "string", ~/~/ Название культуры 4867 + "productivity": 0, ~/~/ Урожайность 4868 + "area": 0, ~/~/ Площадь поля, Га. 4869 + "total": 0, ~/~/ Валовый сбор 4870 + "productivityFact": 0, ~/~/ Фактическая урожайность 4871 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4872 + "totalFact": 0, ~/~/ Фактический валовый сбор 4873 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 4874 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 4875 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 4876 + "isyearplan": true, ~/~/ годовой план 4877 + "comment": "string" ~/~/ Комментарий 4878 + } 4879 + ], 4880 + "cropVegetation": [ ~/~/ История вегетации поля 4881 + { 4882 + "values": [ ~/~/ Данные вегетации и состояния посева 4883 + { 4884 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4885 + "ndvi": 0 ~/~/ Индекс вегетации 4886 + } 4887 + ], 4888 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 4889 + { 4890 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4891 + "type": "string", ~/~/ Тип 4892 + "pictureid": "string" ~/~/ Идентификатор ресурса 4893 + } 4894 + ], 4895 + "states": [ ~/~/ Ключевые даты развития поля 4896 + { 4897 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4898 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 4899 + } 4900 + ] 4901 + } 4902 + ], 4903 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 4904 + "counts": { 4905 + "fieldOperations": 0, ~/~/ Количество операций на поле 4906 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4907 + "facts": 0 ~/~/ Счётчик факта 4908 + }, 4909 + "planComment": "string", ~/~/ Комментарий к полю 4910 +))) 4911 + 4912 +((( 4913 + "productivity": 0, ~/~/ Урожайность. 4914 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4915 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 4916 + "year": 0, ~/~/ Год поля 4917 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4918 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4919 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4920 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4921 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 4922 + "id": 0, ~/~/ Идентификатор объекта геозоны 4923 + "name": "string", ~/~/ Название объекта геозоны 4924 + "type": 0, ~/~/ Тип объекта геозоны 4925 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4926 + "fname": "string", ~/~/ Имя файла 4927 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4928 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 4929 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 4930 + "description": "string", ~/~/ Описание объекта геозоны 4931 + "area": 0, ~/~/ Площадь, м2 4932 + "perimetr": 0, ~/~/ Периметр, м 4933 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 4934 +} 4935 + 4936 + 4937 +))) 4938 +))) 4939 +))) 4940 + 4941 +== **Получение поля по id** == 4942 + 4943 +(% class="box infomessage" %) 4944 +((( 4945 +**GET /api/v3/agroLands/{id}** 4946 +))) 4947 + 4948 +Пример запроса: 4949 +id ~/~/ Идентификатор поля 4950 + 4951 +Пример ответа: 4952 + 4953 +((( 4954 +{ 4955 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4956 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4957 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4958 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4959 + "cropRotations": [ ~/~/ Данные по севообороту 4960 + { 4961 + "landId": 0, ~/~/ ID поля 4962 + "landName": "string", ~/~/ Название поля 4963 + "year": 0, ~/~/ Год урожая 4964 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4965 + "cultureName": "string", ~/~/ Название культуры 4966 + "productivity": 0, ~/~/ Урожайность 4967 + "area": 0, ~/~/ Площадь поля, Га 4968 + "total": 0, ~/~/ Валовый сбор 4969 + "productivityFact": 0, ~/~/ Фактическая урожайность 4970 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4971 + "totalFact": 0, ~/~/ Фактический валовый сбор 4972 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 4973 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 4974 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 4975 + "isyearplan": true, ~/~/ План года 4976 + "comment": "string" ~/~/ Комментарий 4977 + } 4978 + ], 4979 + "cropVegetation": [ ~/~/ История вегетации поля 4980 + { 4981 + "values": [ ~/~/ Данные вегетации и состояния посева 4982 + { 4983 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 4984 + "ndvi": 0 ~/~/ Индекс вегетации 4985 + } 4986 + ], 4987 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 4988 + { 4989 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 4990 + "type": "string", ~/~/ Тип 4991 + "pictureid": "string" ~/~/ Идентификатор ресурса 4992 + } 4993 + ], 4994 + "states": [ ~/~/ Ключевые даты развития поля 4995 + { 4996 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 4997 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 4998 + } 4999 + ] 5000 + } 5001 + ], 5002 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5003 + "counts": { 5004 + "fieldOperations": 0, ~/~/ Количество операций на поле 5005 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5006 + "facts": 0 ~/~/ Счётчик факта 5007 + }, 5008 + "planComment": "string", ~/~/ Комментарий к полю 5009 + "productivity": 0, ~/~/ Урожайность. 5010 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5011 +))) 5012 + 5013 +((( 5014 +((( 5015 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5016 + "year": 0, ~/~/ Год поля 5017 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5018 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5019 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5020 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5021 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5022 + "id": 0, ~/~/ Идентификатор объекта геозоны 5023 + "name": "string", ~/~/ Название объекта геозоны 5024 + "type": 0, ~/~/ Тип объекта геозоны 5025 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5026 + "fname": "string", ~/~/ Имя файла 5027 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5028 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5029 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5030 + "description": "string", ~/~/ Описание объекта геозоны 5031 + "area": 0, ~/~/ Площадь, м2 5032 + "perimetr": 0, ~/~/ Периметр, м 5033 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5034 +} 5035 +))) 5036 + 5037 + 5038 +== **Удаление существующего поля** == 5039 + 5040 +(% class="box errormessage" %) 5041 +((( 5042 +**DELETE /api/v3/agroLands/{id}** 5043 +))) 5044 + 5045 +Пример запроса: 5046 +id ~/~/ Идентификатор поля 5047 + 5048 +Пример ответа: 5049 + 5050 +((( 5051 +200 ~/~/ Успех 5052 +))) 5053 + 5054 +((( 5055 + 5056 +))) 5057 + 5058 +((( 5059 +((( 5060 +((( 5061 + 5062 +))) 5063 + 5064 +((( 5065 +== **Изменение поля** == 5066 + 5067 +(% class="box infomessage" %) 5068 +((( 5069 +**PUT /api/v3/agroLands** 5070 +))) 5071 + 5072 +Пример запроса: 5073 + 5074 +((( 5075 +((( 5076 +{ 5077 + "id": 0, ~/~/ Идентификатор поля 5078 + "extId": "string", ~/~/ ExtId 5079 + "shape": "string", ~/~/ Форма поля 5080 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5081 + "display": "string", ~/~/ Настройки отображения 5082 + "year": 0, ~/~/ Год поля 5083 + "name": "string", ~/~/ Наименование 5084 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5085 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5086 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5087 + "planComment": "string", ~/~/Комментарий к полю 5088 + "cropRotations": [ ~/~/ Данные по севообороту 5089 + { 5090 + "landId": 0, ~/~/ ID поля 5091 + "landName": "string", ~/~/ Название поля 5092 + "year": 0, ~/~/ Год урожая 5093 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5094 + "cultureName": "string", ~/~/ Название культуры 5095 + "productivity": 0, ~/~/ Урожайность 5096 + "area": 0, ~/~/ Площадь поля, Га. 5097 + "total": 0, ~/~/ Валовый сбор 5098 + "productivityFact": 0, ~/~/ Фактическая урожайность 5099 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5100 + "totalFact": 0, ~/~/ Фактический валовый сбор 5101 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5102 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5103 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5104 + "isyearplan": true, 5105 + "comment": "string" ~/~/ Комментарий 5106 + } 5107 + ], 5108 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5109 +} 5110 +))) 5111 +))) 5112 + 5113 +((( 5114 + 5115 +))) 5116 + 5117 +Пример ответа: 5118 + 5119 +((( 5120 +((( 5121 +((( 5122 +{ 5123 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5124 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5125 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5126 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5127 + "cropRotations": [ ~/~/ Данные по севообороту 5128 + { 5129 + "landId": 0, ~/~/ ID поля 5130 + "landName": "string", ~/~/ Название поля 5131 + "year": 0, ~/~/ Год урожая 5132 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5133 + "cultureName": "string", ~/~/ Название культуры 5134 + "productivity": 0, ~/~/ Урожайность 5135 + "area": 0, ~/~/ Площадь поля, Га 5136 + "total": 0, ~/~/ Валовый сбор 5137 + "productivityFact": 0, ~/~/ Фактическая урожайность 5138 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5139 + "totalFact": 0, ~/~/ Фактический валовый сбор 5140 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5141 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5142 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5143 + "isyearplan": true, ~/~/ 5144 + "comment": "string" ~/~/ Комментарий 5145 + } 5146 + ], 5147 + "cropVegetation": [ ~/~/ История вегетации поля 5148 + { 5149 + "values": [ ~/~/ Данные вегетации и состояния посева 5150 + { 5151 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5152 + "ndvi": 0 ~/~/ Индекс вегетации 5153 + } 5154 + ], 5155 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5156 + { 5157 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5158 + "type": "string", ~/~/ Тип 5159 + "pictureid": "string" ~/~/ Идентификатор ресурса 5160 + } 5161 + ], 5162 + "states": [ ~/~/ Ключевые даты развития поля 5163 + { 5164 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5165 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5166 + } 5167 + ] 5168 + } 5169 + ], 5170 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5171 + "counts": { 5172 + "fieldOperations": 0, ~/~/ Количество операций на поле 5173 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5174 + "facts": 0 ~/~/ Счётчик факта 5175 + }, 5176 + "planComment": "string", ~/~/ Комментарий к полю 5177 + "productivity": 0, ~/~/ Урожайность. 5178 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5179 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5180 + "year": 0, ~/~/ Год поля 5181 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5182 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5183 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5184 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5185 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5186 + "id": 0, ~/~/ Идентификатор объекта геозоны 5187 + "name": "string", ~/~/ Название объекта геозоны 5188 + "type": 0, ~/~/ Тип объекта геозоны 5189 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5190 + "fname": "string", ~/~/ Имя файла 5191 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5192 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5193 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5194 + "description": "string", ~/~/ Описание объекта геозоны 5195 + "area": 0, ~/~/ Площадь, м2 5196 + "perimetr": 0, ~/~/ Периметр, м 5197 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5198 +} 5199 +))) 5200 +))) 5201 +))) 5202 +))) 5203 +))) 5204 + 5205 + 5206 +== **Редактирование года урожая ** == 5207 + 5208 +(% class="box successmessage" %) 5209 +((( 5210 +**POST /api/v3/agroLands/updateOpenCloseYear** 5211 +))) 5212 + 5213 +Пример запроса: 5214 + 5215 +((( 5216 +((( 5217 +{ 5218 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5219 + 0 5220 + ], 5221 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5222 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5223 +} 5224 +))) 5225 + 5226 + 5227 +))) 5228 + 5229 +Пример ответа: 5230 + 5231 +((( 5232 +((( 5233 +{ 5234 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5235 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5236 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5237 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5238 + "cropRotations": [ ~/~/ Данные по севообороту 5239 + { 5240 + "landId": 0, ~/~/ ID поля 5241 + "landName": "string", ~/~/ Название поля 5242 + "year": 0, ~/~/ Год урожая 5243 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5244 + "cultureName": "string", ~/~/ Название культуры 5245 + "productivity": 0, ~/~/ Урожайность 5246 + "area": 0, ~/~/ Площадь поля, Га. 5247 + "total": 0, ~/~/ Валовый сбор 5248 + "productivityFact": 0, ~/~/ Фактическая урожайность 5249 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5250 + "totalFact": 0, ~/~/ Фактический валовый сбор 5251 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5252 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5253 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5254 + "isyearplan": true, ~/~/ 5255 + "comment": "string" ~/~/ Комментарий 5256 + } 5257 + ], 5258 + "cropVegetation": [ ~/~/ История вегетации поля 5259 + { 5260 + "values": [ ~/~/ Данные вегетации и состояния посева 5261 + { 5262 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5263 + "ndvi": 0 ~/~/ Индекс вегетации 5264 + } 5265 + ], 5266 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5267 + { 5268 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5269 + "type": "string", ~/~/ Тип 5270 + "pictureid": "string" ~/~/ Идентификатор ресурса 5271 + } 5272 + ], 5273 + "states": [ ~/~/ Ключевые даты развития поля 5274 + { 5275 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5276 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5277 + } 5278 + ] 5279 + } 5280 + ], 5281 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5282 + "counts": { 5283 + "fieldOperations": 0, ~/~/ Количество операций на поле 5284 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5285 + "facts": 0 ~/~/ Счётчик факта 5286 + }, 5287 + "planComment": "string", ~/~/ Комментарий к полю 5288 + "productivity": 0, ~/~/ Урожайность. 5289 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5290 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5291 + "year": 0, ~/~/ Год поля 5292 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5293 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5294 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5295 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5296 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5297 + "id": 0, ~/~/ Идентификатор объекта геозоны 5298 + "name": "string", ~/~/ Название объекта геозоны 5299 + "type": 0, ~/~/ Тип объекта геозоны 5300 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5301 + "fname": "string", ~/~/ Имя файла 5302 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5303 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5304 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5305 + "description": "string", ~/~/ Описание объекта геозоны 5306 + "area": 0, ~/~/ Площадь, м2 5307 + "perimetr": 0, ~/~/ ериметр, м 5308 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5309 +} 5310 +))) 5311 + 5312 + 5313 +== (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) == 5314 +))) 5315 +))) 5316 +))) 5317 + 4115 4115 == (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 4116 4116 4117 4117 4118 4118 (% class="box infomessage" %) 4119 4119 ((( 4120 -GET api/v3/Vehicles/recyclebin/all 5323 +**GET api/v3/Vehicles/recyclebin/all** 4121 4121 ))) 4122 4122 4123 4123 Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту ... ... @@ -4128,48 +4128,70 @@ 4128 4128 4129 4129 Ответ: 4130 4130 4131 -"recordTime": "2024-03-12T12:40:42.502257Z", - Время удаления объекта в UTC 4132 -"userId": "11111111-c384-43f8-8562-1c3d79a32303", - Пользователь удаливший объект 4133 -"parentId": "f649b532-e519-42da-941e-5fdb3b581482", - GUID агента 4134 -"objectId": "8c79a744-0ba6-4943-8d9e-a9d9509168f2", - GUID объекта 4135 -"objectType": "Vehicle", - Тип объекта 4136 -"details": { 4137 -"items": [ { 4138 -"name": "ObjectName", - наименование столбца 4139 -"value": "01" - содержание столбца 4140 -}, 5334 +[ 5335 + { 5336 + "recordTime": "", ~/~/Время записи 5337 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5338 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5339 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5340 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5341 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5342 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5343 + "items": [ ~/~/ 5344 +nullable: true ~/~/Детали 5345 + { 5346 + "name": "string", ~/~/наименование столбца 5347 + "value": "string" ~/~/содержание столбца 5348 + } 5349 + ] 5350 + }, 5351 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5352 + "string" 5353 + ] 5354 + } 5355 +] 4141 4141 4142 -{ 4143 -"parentName": "string", 4144 -"name": "string", 4145 -"picture": "string", 4146 -"minspeed": 0, 4147 -"maxspeed": 0, 4148 -"width": 0, 4149 -"imbeddedtrailer": true, 4150 -"hoppercapacity": 0, 4151 -"hopperdischargespeed": 0, 4152 -"modelType": 0, 4153 -"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4154 -"parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4155 -"deleted": true 4156 -} 4157 4157 4158 4158 (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины** 4159 4159 4160 4160 (% class="box infomessage" %) 4161 4161 ((( 4162 -POST /api/v3/Vehicles/recyclebin/erase5362 +**POST api/v3/Vehicles/recyclebin/erase** 4163 4163 ))) 4164 4164 4165 4165 В заголовках запроса: X-Auth: Токен авторизации 4166 4166 4167 -Параметры в теле запроса (JSON): 5367 +Пример запроса: 5368 + 4168 4168 [ 4169 -"eb737fdf-c422-4df7-8727-bd61439b8460", 4170 -"3ec2f507-dfdc-41d4-b2bb-6f66e3d27df3" 5370 +0 4171 4171 ] 5372 + 4172 4172 5374 +Пример ответа: 5375 + 5376 +[ 5377 +{ 5378 + "recordTime": "", ~/~/Время записи 5379 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5380 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5381 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5382 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5383 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5384 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5385 + "items": [ ~/~/Детали 5386 + { 5387 + "name": "", ~/~/Имя свойства 5388 + "value": "" ~/~/Значение свойства 5389 + } 5390 + ] 5391 + }, 5392 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5393 + "" 5394 + ] 5395 + } 5396 +] 5397 + 4173 4173 Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 4174 4174 4175 4175 == (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == ... ... @@ -4176,21 +4176,59 @@ 4176 4176 4177 4177 (% class="box infomessage" %) 4178 4178 ((( 4179 -POST /api/v3/Vehicles/recyclebin/restore5404 +**POST api/v3/Vehicles/recyclebin/restore** 4180 4180 ))) 4181 4181 4182 4182 В заголовках запроса: X-Auth: Токен авторизации 4183 4183 4184 4184 Параметры в теле запроса (JSON): 5410 + 5411 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5412 + 5413 +В заголовках запроса: X-Auth: Токен авторизации 5414 + 5415 + 5416 +Пример запроса: 5417 + 5418 +((( 4185 4185 [ 4186 -"eb737fdf-c422-4df7-8727-bd61439b8460", 4187 -"3ec2f507-dfdc-41d4-b2bb-6f66e3d27df3" 5420 +))) 5421 + 5422 +((( 5423 + 0 5424 +))) 5425 + 5426 +((( 4188 4188 ] 5428 +))) 4189 4189 4190 -Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 4191 4191 5431 +Пример ответа: 4192 4192 5433 +[ 5434 +{ 5435 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5436 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5437 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5438 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5439 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5440 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5441 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5442 + "items": [ ~/~/Детали 5443 + { 5444 + "name": "string", ~/~/Имя свойства 5445 + "value": "string" ~/~/Значение свойства 5446 + } 5447 + ] 5448 + }, 5449 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5450 + "string" 5451 + ] 5452 + } 5453 +] 4193 4193 5455 + 5456 + 4194 4194 (% class="box" lang="en-US" style="text-align: center;" %) 4195 4195 ((( 4196 4196 (% 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]] **