Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/07/03 16:28
<
>
edited by Андрей Калиновский
on 2024/02/28 10:46
on 2024/02/28 10:46
edited by Андрей Калиновский
on 2025/07/03 16:18
on 2025/07/03 16:18
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Content
-
... ... @@ -1,5 +1,22 @@ 1 1 (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %) 2 2 ((( 3 +(% class="box warningmessage" %) 4 +((( 5 +(% class="mark" %)##Для обеспечения бесперебойной работы команд и серверного оборудования ГЛОНАССSoft убедительно 6 +просим вас соблюдать несколько простых правил при использовании API-команд:## 7 +))) 8 + 9 +* Формировать не более 3 отчётов одновременно. 10 +* Ограничить количество активных сессий одного пользователя с одного IP-адреса до 50. 11 + 12 +В случае нарушения этих правил, ГЛОНАССSoft оставляет за собой право принудительно остановить выполнение запросов с определенных IP адресов. 13 + 14 +(% class="box infomessage" %) 15 +((( 16 +**Чтобы избежать блокировки** из-за превышения количества авторизаций, вам необходимо использовать токен авторизации, полученный с помощью метода /auth/login, во всех последующих запросах к API. Этот токен имеет ограниченный срок действия, который можно изменить, настроив параметр "Длительность сессии" в настройках пользователя. 17 +\\При выполнении запросов с одним и тем же токеном его срок действия автоматически продлевается. Это позволяет пройти авторизацию только один раз и использовать полученный токен во всех последующих запросах без необходимости повторного входа в систему. 18 +))) 19 + 3 3 **Содержание страницы:** 4 4 ))) 5 5 ... ... @@ -14,11 +14,20 @@ 14 14 15 15 Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de. 16 16 17 -(% style="color:#000000" %)− (%%)При **редактировании** необходимо передавать все параметры пользователяв теле запроса! Те параметры, значения которых не будут переданы - будут стерты!34 +(% style="color:#000000" %)− (%%)При **редактировании** любой записи (пользователь, объект и т.д) необходимо передавать все параметры записи в теле запроса! Те параметры, значения которых не будут переданы - будут стерты! 18 18 36 + 37 +(% style="color:#000000; font-size:16px" %)**Рекомендации** 38 + 39 +- Для запросов по API рекомендуется наделить пользователя ролью **Администратора партнера**, в противном случае при выполнении некоторых запросов у него не будет хватать прав (чаще всего сталкиваются с отсутствием прав при запросах сообщений от терминала за период). 40 + 19 19 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Авторизация**(%%) = 20 20 21 -== (% style="color:#000000; font-size:16px" %)**Авторизация**(%%) == 43 +(% class="box warningmessage" id="H41043244243E44043843743044643844F" %) 44 +((( 45 +(% style="color:#000000; font-size:16px" %)**Авторизация**(%%) 46 +(% style="color:#000000; font-size:16px" %)Адрес сервера всегда следует указывать именно тот, по которому происходит вход в СМТ (https:~/~/hosting.glonasssoft.ru/ , [[https:~~/~~/regions.glonasssoft.ru/>>https://regions.glonasssoft.ru/]] или другие) 47 +))) 22 22 23 23 (% class="box successmessage" %) 24 24 ((( ... ... @@ -44,12 +44,8 @@ 44 44 45 45 (% lang="en-US" %) 46 46 (% style="color:#000000" %){ 47 - 48 -(% lang="en-US" %) 49 -(% style="color:#000000" %) "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 50 - "User": "testuser" , ~/~/ имя пользователя 51 - 52 -(% lang="en-US" %) 73 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 74 + "User": "testuser" , ~/~/ имя пользователя(%%) 53 53 } 54 54 55 55 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. ... ... @@ -60,6 +60,9 @@ 60 60 |(% style="width:215px" %)(% style="color:#000000" %)AuthId|(% style="width:861px" %)Токен авторизации 61 61 |(% style="width:215px" %)(% style="color:#000000" %)User|(% style="width:861px" %)Логин пользователя 62 62 85 +(% class="wikigeneratedid" %) 86 +Также имеется возможность сквозной (/бесшовной) авторизации. Для этого к ссылке ( [[https:~~/~~/hosting.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]] / [[https:~~/~~/regions.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]]) добавьте токен авторизации - {AuthId}, чтобы попасть сразу в клиента ([[https:~~/~~/hosting.glonasssoft.ru/login?authId={AUTH_ID}>>https://hosting.glonasssoft.ru/login?authId={AUTH_ID}]]) 87 + 63 63 == (% style="color:#000000; font-size:16px" %)**Проверка авторизации**(%%) == 64 64 65 65 (% class="box infomessage" %) ... ... @@ -98,29 +98,41 @@ 98 98 Запрос должен содержать данные параметра "**agentId**" 99 99 100 100 (% style="color:#000000" %)Ответ: 126 + 127 +((( 101 101 { 102 - "agentId": "", (%%) 103 - "parentId": "", 104 - "parentName": "string", 105 - "name": "string", 106 - "fullName": "string", 107 - "agentInfoType": 0, 108 - "isForeign": true/false, 109 - "district": "string", 110 - "region": "string", 111 - "city": "string", 112 - "inn": "string", 113 - "kpp": "string", 114 - "address": "string", 115 - "addressFact": "string", 116 - "email": "string", 117 - "director": "string", 118 - "bankName": "string", 119 - "bankBIK": "string", 120 - "bankRS": "string", 121 - "bankKS": "string" 122 - } 129 + "agentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID клиента 130 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID родителя 131 + "parentName": "string", ~/~/ Наименование агента 132 + "name": "string", ~/~/ Имя клиента 133 + "fullName": "string", ~/~/ ФИО клиента 134 + "agentInfoType": 0, ~/~/ Тип клиента ((% style="color:#000000" %)0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор(%%)) 135 + "isForeign": true, ~/~/ Флаг "Иностранный контрагент" 136 + "district": "string", ~/~/ Район 137 + "region": "string", ~/~/ Область 138 + "city": "string", ~/~/ Город 139 + "email": "string", ~/~/ Email 140 + "director": "string", ~/~/ Руководитель 141 + "RegionalData": [ ~/~/ Определяет региональные сведения. 142 + { 143 + "Country": 0, ~/~/ Страна 144 + "groups": [ ~/~/ Список групп 145 + { 146 + "groupId": "string", ~/~/ Уникальный идентификатор группы 147 + "fields": [ ~/~/ Список значений полей 148 + { 149 + "name": "string", ~/~/ Имя поля формы 150 + "value": "string" ~/~/ Значение поля формы 151 + } 152 + ] 153 + } 154 + ] 155 + } 156 + ] 157 +} 158 +))) 123 123 160 + 124 124 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 125 125 |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 126 126 |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя ... ... @@ -226,7 +226,6 @@ 226 226 "bankKS": "string" ~/~/ корр. счёт 227 227 } 228 228 229 - 230 230 Ответ: 231 231 232 232 { ... ... @@ -418,9 +418,8 @@ 418 418 [ 419 419 "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ группы пользователя, перечисление названия клиентских ролей 420 420 ], 421 - "language": 0~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский457 + "language": 1 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 422 422 } 423 - 424 424 { 425 425 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 426 426 "lastName": "string", ... ... @@ -434,12 +434,8 @@ 434 434 435 435 (% style="text-align:left" %) 436 436 (% style="color:#000000; font-weight:normal" %)Ответ: 437 - 438 -(% style="text-align:left" %) 439 -(% style="color:#000000; font-weight:normal" %){ 440 - 441 -(% style="text-align:left" %) 442 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 472 +{ 473 + "id": "" , ~/~/ ID пользователя 443 443 "lastName": "" , ~/~/ Фамилия , 444 444 "firstName": "" , ~/~/ Имя 445 445 "position": "" , ~/~/ Должность ... ... @@ -456,11 +456,9 @@ 456 456 "kind": "" , ~/~/ тип аутентификации 457 457 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 458 458 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 490 +} 459 459 460 -(% style="text-align:left" %) 461 -(% style="color:#000000; font-weight:normal" %)} 462 462 463 - 464 464 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 465 465 466 466 (% class="box infomessage" %) ... ... @@ -480,19 +480,16 @@ 480 480 481 481 (% style="color:#000000" %)Параметры в теле запроса (JSON): 482 482 483 -(% style="color:#000000" %){ 484 - 512 +(% style="color:#000000" %){(%%) 485 485 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 486 486 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 487 487 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 488 488 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 489 - 490 490 (% style="color:#000000" %)} 491 491 492 492 (% style="color:#000000" %)Ответ: 493 493 494 494 (% style="color:#000000" %){ (%%) 495 - 496 496 "id": "" , ~/~/ идентификатор пользователя 497 497 "lastName": "" , ~/~/ фамилия 498 498 "firstName": "" , ~/~/ имя ... ... @@ -506,7 +506,6 @@ 506 506 "sessionDuration":"", ~/~/ длительность сессии в минутах 507 507 "status": "1", ~/~/ статус пользователя 508 508 "lastLogged": "", ~/~/ дата/время последней авторизации 509 - 510 510 (% style="color:#000000" %)} 511 511 512 512 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -580,10 +580,8 @@ 580 580 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 581 581 582 582 (% lang="en-US" style="text-align:left" %) 583 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 584 - 585 -(% lang="en-US" style="text-align:left" %) 586 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 608 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 609 + "id": "" , ~/~/ ID пользователя 587 587 "lastName": "" , ~/~/ фамилия 588 588 "firstName": "" , ~/~/ имя 589 589 "position": "" , ~/~/ должность ... ... @@ -605,9 +605,7 @@ 605 605 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 606 606 }, 607 607 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 608 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 609 - 610 -(% lang="en-US" style="text-align:left" %) 631 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 611 611 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 612 612 613 613 (% lang="en-US" style="text-align:left" %) ... ... @@ -614,10 +614,8 @@ 614 614 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 615 615 616 616 (% lang="en-US" style="text-align:left" %) 617 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 618 - 619 -(% lang="en-US" style="text-align:left" %) 620 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 638 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 639 + "id": "" , ~/~/ идентификатор пользователя 621 621 "lastName": "" , ~/~/ фамилия 622 622 "firstName": "" , ~/~/ имя 623 623 "position": "" , ~/~/ должность ... ... @@ -638,10 +638,8 @@ 638 638 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 639 639 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 640 640 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 660 +} 641 641 642 -(% lang="en-US" style="text-align:left" %) 643 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 644 - 645 645 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 646 646 647 647 (% class="box warningmessage" %) ... ... @@ -661,12 +661,10 @@ 661 661 662 662 (% style="color:#000000" %)Параметры в теле запроса (JSON): 663 663 664 -(% style="color:#000000" %){ 665 - 681 +(% style="color:#000000" %){(%%) 666 666 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 667 667 "description": "" , ~/~/ описание 668 668 "data": "" , ~/~/ данные, связанные со сменой статуса 669 - 670 670 (% style="color:#000000" %)} 671 671 672 672 (% style="text-align:left" %) ... ... @@ -688,7 +688,7 @@ 688 688 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 689 689 690 690 [ 691 - 706 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 692 692 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 693 693 ] 694 694 ... ... @@ -751,6 +751,9 @@ 751 751 (% style="text-align:left" %) 752 752 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».** 753 753 769 +(% class="wikigeneratedid" %) 770 += = 771 + 754 754 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Модель объекта**(%%) = 755 755 756 756 == (% style="color:#000000; font-size:16px" %)**Получение информации о модели объекта**(%%) == ... ... @@ -862,7 +862,7 @@ 862 862 { 863 863 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 864 864 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 865 - "deleted": true,883 + "deleted": false, 866 866 "extId": "string", 867 867 "name": "string", 868 868 "picture": "string", ... ... @@ -881,7 +881,7 @@ 881 881 { 882 882 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 883 883 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 884 - "deleted": true,902 + "deleted": false, 885 885 "extId": "string", 886 886 "name": "string", 887 887 "picture": "string", ... ... @@ -915,7 +915,7 @@ 915 915 (% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models** 916 916 ))) 917 917 918 -(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе.936 +(% style="color:#000000" %)Метод позволяет изменить статус модели, указанного в запросе. 919 919 920 920 (% style="color:#000000" %)Метод запроса: **PUT** 921 921 ... ... @@ -982,7 +982,7 @@ 982 982 (% lang="en-US" %)**DELETE /api/v3/models/{Id}** 983 983 ))) 984 984 985 -(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалитьпользователя, указанного в строке запроса.1003 +(% style="color:#000000" %)Метод позволяет удалить модели. Метод позволяет удалить модель, указанного в строке запроса. 986 986 987 987 (% style="color:#000000" %)Метод запроса: **DELETE** 988 988 ... ... @@ -994,7 +994,7 @@ 994 994 995 995 Ответ: В случае успеха **Success 200** 996 996 997 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 1015 += (% 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 { 1044 + 1045 +((( 1046 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1047 + "IsSackEnabled": true, ~/~/ Определяет, должен ли внутренний сервер отвечать устройству сообщением SACK при получении сообщения от устройства 1048 +))) 1049 + 1050 +((( 1051 + ~/~/Используется только на ТС с типом устройства quecklink gv56, quecklink gv58, quecklink 1052 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1053 +))) 1054 + 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 - 1093 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1070 1070 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1071 1071 "mileageCoeff": 0, ~/~/ коэффициент пробега 1072 1072 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1096,7 +1096,6 @@ 1096 1096 "retries": 0 ~/~/ Количество попыток 1097 1097 } 1098 1098 ], 1099 - 1100 1100 "sensors": [ ~/~/ Датчики 1101 1101 { 1102 1102 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1123,6 +1123,7 @@ 1123 1123 ], 1124 1124 "showInTooltip": true, ~/~/ Отображать в подсказке 1125 1125 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1149 + "color": "string", ~/~/ Код цвета датчиков 1126 1126 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1127 1127 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1128 1128 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1137,31 +1137,19 @@ 1137 1137 }, 1138 1138 1139 1139 ~/~/ Характерные для произвольного: 1140 - 1141 1141 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1142 - 1143 1143 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1144 - 1145 1145 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1146 - 1147 1147 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1148 - 1149 1149 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1150 - 1151 1151 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1152 - 1153 1153 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1154 - 1155 1155 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1156 - 1157 1157 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1158 - 1159 1159 ~/~/ "ValueOn": "Вкл.", 1160 - 1161 1161 ~/~/ "ValueOff": "Выкл." 1162 1162 "summaryMaxValue": 0 ~/~/ Макс. значение 1163 1163 } 1164 - 1165 1165 "drivers": [ ~/~/ Водители 1166 1166 { 1167 1167 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1170,7 +1170,6 @@ 1170 1170 "isDefault": true ~/~/ По умолчанию 1171 1171 } 1172 1172 ], 1173 - 1174 1174 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1175 1175 { 1176 1176 "id": "", ~/~/ ID задания ... ... @@ -1187,19 +1187,27 @@ 1187 1187 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1188 1188 } 1189 1189 ], 1190 - 1191 - "statusHistory": [ ~/~/ История статусов 1201 +"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 1208 +((( 1200 1200 } 1210 + ], 1211 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1212 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1201 1201 ))) 1202 1202 1215 +((( 1216 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1217 +} 1218 + 1219 +))) 1220 +))) 1221 + 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 1228 + 1229 +== **Отправить команду на терминал** == 1230 + 1231 +(% class="box successmessage" %) 1232 +((( 1233 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1234 +))) 1235 + 1236 +Команда для отправки на тс. 1237 + 1238 +{ 1239 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId) 1240 +"command": "", ~/~/ Текст отправляемой команды 1241 +"retries": "", ~/~/ Количество попыток отправки на терминал 1242 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 1243 +} 1244 + 1245 +В ответ получаем cmdid 1246 + 1247 + 1248 +== **Получить ответ на отправленную на ТС команду** == 1249 + 1250 +(% class="box infomessage" %) 1251 +((( 1252 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1253 +))) 1254 + 1255 +Идентификатор команды: cmdId 1256 + 1257 +Запрос от терминала на ответ команды 1258 + 1259 +Пример ответ от терминала: 1260 + 1261 +ID= "" ~/~/ идентификатор объекта 1262 +Soft="" ~/~/ версия софта 1263 +GPS=4 ~/~/ тип трекера 1264 +Time=11:05:43 28.06.24 ~/~/ время запроса 1265 +Lat=45.056221 ~/~/ широта 1266 +Lon=39.035938 ~/~/ долгота 1267 +Speed=0.0 ~/~/ скорость 1268 +Course=181.4 ~/~/направление 1269 + 1270 +((( 1271 +== **Список отправленных объекту команд с ответами** == 1272 + 1273 +(% class="box infomessage" %) 1274 +((( 1275 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1276 +))) 1277 + 1278 +Идентификатор ТС: vehicleId 1279 + 1280 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1281 + 1282 +Пример ответа терминала 1283 + 1284 +[ 1285 +{ 1286 +"id": "", ~/~/ идентификатор пользователя 1287 +"commandText": "", ~/~/Текст команды. 1288 +"templateId": "", ~/~/Идентификатор шаблона 1289 +"updated": "", ~/~/ Время отправки 1290 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1291 +"answer": "", ~/~/ Ответ терминала. 1292 +"status": "" ~/~/ Статус отправки 1293 +} 1294 +] 1295 +))) 1296 + 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 1316 + 1317 +((( 1318 + "vehicleId": 0, ~/~/ ID ТС 1319 +))) 1320 + 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": [ ~/~/ Датчики 1387 +"sensors": [ ~/~/ Датчики 1298 1298 { 1299 1299 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1300 1300 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1320,6 +1320,7 @@ 1320 1320 ], 1321 1321 "showInTooltip": true, ~/~/ Отображать в подсказке 1322 1322 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1413 + "color": "string", ~/~/ код цвета датчиков 1323 1323 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1324 1324 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1325 1325 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1332,103 +1332,222 @@ 1332 1332 "additionalProp2": "string", 1333 1333 "additionalProp3": "string" 1334 1334 }, 1335 - 1336 1336 ~/~/ Характерные для произвольного: 1337 - 1338 1338 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1339 - 1340 1340 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1341 - 1342 1342 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1343 - 1344 1344 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1345 - 1346 1346 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1347 - 1348 1348 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1349 - 1350 1350 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1351 - 1352 1352 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1353 - 1354 1354 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1355 - 1356 1356 ~/~/ "ValueOn": "Вкл.", 1357 - 1358 1358 ~/~/ "ValueOff": "Выкл." 1359 - "summaryMaxValue": 0 ~/~/ Макс. значение 1438 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1439 + 1440 +((( 1441 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1442 + { 1443 + "from": 0, ~/~/ С какого значения 1444 + "color": "string", ~/~/ Каким цветом 1445 + "text": "string" ~/~/ Текст подписи к этому интервалу 1446 + } 1447 + ] 1360 1360 } 1361 1361 ], 1450 +))) 1451 + 1452 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1453 + 1454 + 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 - ] 1457 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1458 + "name": "string", ~/~/ Наименование произвольного поля 1459 + "value": "string", ~/~/ Значение произвольного поля 1460 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1461 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1462 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1463 + 1464 +((( 1465 + } 1466 + ], 1467 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1468 +))) 1469 + 1470 +((( 1471 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1372 1372 } 1473 +))) 1373 1373 1475 + 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 - однократно) 1479 +((( 1480 +((( 1481 +((( 1482 +{ 1483 + "vehicleId": 0, ~/~/ ID ТС 1484 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1485 + "name": "string", ~/~/ Имя объекта 1486 + "imei": "string", ~/~/ IMEI 1487 + "deviceTypeId": 0, ~/~/ ID типа устройства 1488 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1489 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1490 + "sim1": "string", ~/~/ SIM1 1491 + "sim2": "string", ~/~/ SIM2 1492 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1493 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1494 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1495 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1496 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1497 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1498 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1499 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1500 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1501 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1502 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1503 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1504 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1505 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1506 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1507 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1508 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1509 + "counters": { ~/~/ Dto для состояний счётчиков 1510 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1511 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1512 + "mileage": 0, ~/~/ Пробег 1513 + "motohours": 0 ~/~/ Моточасы 1514 + }, 1515 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1516 + "id": "string", ~/~/ CMSV6 Идентификатор 1517 + "enabled": true, ~/~/ Признак включения 1518 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1519 + "login": "string", ~/~/ CMSV6 имя учетной записи 1520 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1521 + }, 1522 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1523 + { 1524 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1525 + "enabled": true, ~/~/ Признак включения 1526 + "name": "string", ~/~/ Имя задания 1527 + "description": "string", ~/~/ Описание задания 1528 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1529 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1530 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1531 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1532 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1533 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1534 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1535 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1414 1414 } 1537 + ], 1538 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1539 + { 1540 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1541 + "inputNumber": 0, ~/~/ № входа. 1542 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1543 + "comment": "string", ~/~/ Комментарий 1544 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1545 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1546 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1547 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1548 + } 1549 + ], 1550 + "commandTemplates": [ ~/~/ Список шаблонов команд 1551 + { 1552 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1553 + "name": "string", ~/~/ Название шаблона команд 1554 + "command": "string", ~/~/ Команда на выполнение 1555 + "retries": 0 ~/~/ Лимит попыток отправки 1556 + } 1557 + ], 1558 + "sensors": [ ~/~/ Список датчиков 1559 + { 1560 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1561 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1562 + "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 1563 + "name": "string", ~/~/ Имя датчика 1564 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1565 + "inputNumber": 0, ~/~/ Номер входа 1566 + "pseudonym": "string", ~/~/ Псевдоним 1567 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1568 + "isInverted": true, ~/~/ Признак инверсии 1569 + "disabled": true, ~/~/ Датчик не участвует в обработке 1570 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1571 + "gradesTables": [ ~/~/ Тарировка 1572 + { 1573 + "grades": [ ~/~/ Таблицы тарировки 1574 + { 1575 + "input": 0, ~/~/ Вход 1576 + "output": 0 ~/~/ Выход 1577 + } 1578 + ], 1579 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1580 + } 1581 + ], 1582 + "showInTooltip": true, ~/~/ Отображение в подсказке 1583 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1584 + "color": "string", ~/~/ код цвета датчиков 1585 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1586 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1587 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1588 + "expr": "string", ~/~/ Выражение 1589 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1590 + "string" 1591 + ], 1592 + "customParams": { 1593 + "additionalProp1": "string", 1594 + "additionalProp2": "string", 1595 + "additionalProp3": "string" 1596 + }, 1597 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1598 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1599 + { 1600 + "from": 0, ~/~/ С какого значения 1601 + "color": "string", ~/~/ Каким цветом 1602 +))) 1415 1415 1416 -(% style="text-align:left" %) 1417 -(% style="color:#000000" %)} 1604 +((( 1605 + "text": "string" ~/~/ Текст подписи к этому интервалу 1606 + } 1607 + ] 1608 + } 1609 + ], 1610 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1611 + "customFields": [ ~/~/ Список произвольных полей 1612 + { 1613 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1614 + "name": "string", ~/~/ Наименование произвольного поля 1615 + "value": "string", ~/~/ Значение произвольного поля 1616 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1617 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1618 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1619 + } 1620 + ], 1621 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1622 +} 1623 +))) 1624 +))) 1625 +))) 1418 1418 1627 + 1419 1419 **Валидация:** 1420 1420 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1421 1421 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1422 1422 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1423 1423 1424 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 1425 1425 1634 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1635 + 1426 1426 (% class="box infomessage" %) 1427 1427 ((( 1428 1428 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1429 1429 ))) 1430 1430 1431 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1641 +(% 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 ~/~/ значение любого из произвольных полей ТС 1675 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1676 + "unitName": "string", ~/~/ Название подразделения (опционально) 1677 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1678 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1679 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1680 + "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" %){ 1687 +(% style="color:#000000" %)[ 1688 +{ 1475 1475 1690 +((( 1691 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1692 +))) 1693 + 1694 +((( 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" %)} 1720 +))) 1503 1503 1722 +((( 1723 + } 1724 + ], 1725 + "vehicleGroups": [ ~/~/ Группы ТС 1726 + { 1727 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1728 + "name": "string" ~/~/ Наименование группы ТС 1729 + } 1730 + ] 1731 + } 1732 +] 1733 +))) 1734 + 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 - 1770 +(% style="color:#000000" %){(%%) 1542 1542 "status": "", ~/~/ значение статуса 1543 1543 "date": "", ~/~/ Дата смены статуса 1544 1544 "description": "", ~/~/ Описание ... ... @@ -1545,10 +1545,9 @@ 1545 1545 "data": "", ~/~/ Данные 1546 1546 "overwrite": false, ~/~/ Флаг перезаписи 1547 1547 "stage": "", ~/~/ Состояние 1548 - 1549 -(% style="text-align:left" %) 1550 1550 (% style="color:#000000" %) } 1551 1551 1779 + 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 - } 1855 + 1856 +((( 1857 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1858 + "inputNumber": 0, ~/~/ № входа. 1859 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения. 1860 + "comment": "string", ~/~/ Комментарий. 1861 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1862 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1863 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения. 1864 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения. 1865 +))) 1866 + 1867 + } 1630 1630 ], 1631 1631 "commandTemplates": [ ~/~/ Шаблон команды 1632 1632 { ... ... @@ -1636,8 +1636,7 @@ 1636 1636 "retries": 0 1637 1637 } 1638 1638 ], 1639 - 1640 - "sensors": [ ~/~/ Датчики 1877 +"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, ~/~/ Отображать последнее валидное значение 1903 + 1904 +((( 1905 + "color": "string",** ~/~/ **Цвет датчика 1906 +))) 1907 + 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 ~/~/ Макс. значение 1933 + 1934 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1935 + { 1936 + "from": 0, ~/~/ С какого значения 1937 + "color": "string", ~/~/ Каким цветом 1938 + "text": "string" ~/~/ Текст подписи к этому интервалу 1939 + } 1940 + ] 1703 1703 } 1704 1704 ], 1943 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1944 + 1705 1705 "customFields": [ ~/~/ Произвольные поля 1706 - { 1707 - 1708 - "name": "string", 1709 - "value": "string", 1710 - "forClient": true, 1711 - "forTooltip": true, 1712 - "forReport": true 1946 + { 1947 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1948 + "name": "string", ~/~/ Наименование произвольного поля 1949 + "value": "string", ~/~/ Значение произвольного поля 1950 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1951 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1952 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1713 1713 } 1714 - ] 1954 + 1955 +((( 1956 + ], 1957 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1958 +))) 1959 + 1715 1715 } 1716 1716 1962 + 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" %){ 1965 +((( 1966 +{ 1967 + "vehicleId": 0, ~/~/ ID ТС 1968 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1969 + "name": "string", ~/~/ Имя объекта 1970 + "imei": "string", ~/~/ IMEI 1971 + "deviceTypeId": 0, ~/~/ ID типа устройства 1972 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1973 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1974 + "sim1": "string", ~/~/ SIM1 1975 + "sim2": "string", ~/~/ SIM2 1976 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1977 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1978 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1979 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1980 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1981 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1982 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1983 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1984 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1985 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1986 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1987 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1988 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 1989 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1990 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1991 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1992 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1993 + "counters": { ~/~/ состояний счётчиков 1994 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1995 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1996 + "mileage": 0, ~/~/ Пробег 1997 + "motohours": 0 ~/~/ Моточасы 1998 + }, 1999 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 2000 + "id": "string", ~/~/ CMSV6 Идентификатор 2001 + "enabled": true, ~/~/ Признак включения 2002 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 2003 +))) 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 2005 + 2006 +((( 2007 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 2008 + "login": "string", ~/~/ CMSV6 имя учетной записи 2009 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 2010 + }, 2011 + "inspectionTasks": [ ~/~/ Задания на ТО 2012 + { 2013 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 2014 + "enabled": true, ~/~/ Признак включения 2015 + "name": "string", ~/~/ Имя задания 2016 + "description": "string", ~/~/ Описание задания 2017 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 2018 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 2019 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 2020 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 2021 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 2022 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 2023 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2024 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2025 + } 2026 + ], 2027 + "drivers": [ ~/~/ Список водителей 2028 + { 2029 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2030 + "inputNumber": 0, ~/~/ № входа. 2031 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2032 + "comment": "string", ~/~/ Комментарий. 2033 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2034 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2035 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2036 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2037 + } 2038 + ], 2039 + "commandTemplates": [ ~/~/ Список шаблонов команд 2040 + { 2041 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2042 + "name": "string", ~/~/ Название шаблона команд 2043 + "command": "string", ~/~/ Команда на выполнение 2044 + "retries": 0 ~/~/ Лимит попыток отправки 2045 + } 2046 + ], 2047 + "sensors": [ ~/~/ Список датчиков 2048 + { 2049 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2050 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2051 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2052 +))) 2053 + 2054 +((( 2055 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2056 +))) 2057 + 2058 +((( 2059 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2060 +))) 2061 + 2062 +((( 2063 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2064 +))) 2065 + 2066 +((( 2067 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2068 +))) 2069 + 2070 +((( 2071 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2072 + "name": "string", ~/~/ Имя датчика 2073 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2074 +))) 2075 + 2076 +((( 2077 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2078 + "inputNumber": 0, ~/~/ Номер входа 2079 + "pseudonym": "string", ~/~/ Псевдоним 2080 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2081 + "isInverted": true, ~/~/ Признак инверсии 2082 + "disabled": true, ~/~/ Датчик не участвует в обработке 2083 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2084 + "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": "", ~/~/ Сколько раз выполнить задание 2086 + "grades": [ ~/~/ Таблицы тарировки 2087 + { 2088 + "input": 0, ~/~/ Вход 2089 + "output": 0 ~/~/ Выход 2090 + } 2091 + ], 2092 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1762 1762 } 2094 + ], 2095 + "showInTooltip": true, ~/~/ Отображение в подсказке 2096 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1763 1763 1764 -(% lang="en-US" style="text-align:left" %) 1765 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2098 +((( 2099 + "color": "string", ~/~/ цвет уведомлений 2100 +))) 1766 1766 2102 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2103 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2104 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2105 + "expr": "string", ~/~/ Выражение 2106 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2107 + "string" 2108 + ], 2109 + "customParams": { ~/~/ Дополнительные настройки 2110 + "additionalProp1": "string", 2111 + "additionalProp2": "string", 2112 + "additionalProp3": "string" 2113 + }, 2114 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2115 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2116 + { 2117 + "from": 0, ~/~/ С какого значения 2118 + "color": "string", ~/~/ Каким цветом 2119 + "text": "string" ~/~/ Текст подписи к этому интервалу 2120 + } 2121 + ] 2122 + } 2123 + ], 2124 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2125 + "customFields": [ ~/~/ Список произвольных полей 2126 + { 2127 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2128 + "name": "string", ~/~/ Наименование произвольного поля 2129 + "value": "string", ~/~/ Значение произвольного поля 2130 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2131 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2132 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2133 + } 2134 + ], 2135 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2136 +} 2137 +))) 2138 + 1767 1767 **Валидация:** 1768 1768 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1769 1769 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1808,12 +1808,9 @@ 1808 1808 1809 1809 (% style="color:#000000" %)Ответ: 1810 1810 1811 -(% style="color:#000000" %){ 1812 - 2183 +(% 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 - 2207 +(% style="color:#000000" %){(%%) 1840 1840 "id": "", ~/~/ ID типа датчика 1841 1841 "name": "", ~/~/ Название 1842 1842 "description": "", ~/~/ Описание 1843 - 1844 -(% style="text-align:left" %) 1845 1845 (% style="color:#000000" %)} 1846 1846 1847 1847 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1928,8 +1928,13 @@ 1928 1928 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 1929 1929 |protocolType|Тип протокола 1930 1930 |inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 1931 -|inputNumber|Номер входа 2297 +|inputNumber|((( 2298 +Номер входа 2299 +))) 1932 1932 2301 +(% class="wikigeneratedid" %) 2302 +Перечень ID протоколов в статье - [[ID протоколов для получения типов и номеров входа сырого параметра.>>https://wiki.glonasssoft.ru/bin/view/API/ID%20%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D1%8B%20%D0%B4%D0%BB%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D1%8F%20%D1%82%D0%B8%D0%BF%D0%B0%20%D0%B8%20%D0%BD%D0%BE%D0%BC%D0%B5%D1%80%D0%B0%20%D0%B2%D1%85%D0%BE%D0%B4%D0%B0%20%D1%81%D1%8B%D1%80%D0%BE%D0%B3%D0%BE%20%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B0/]] 2303 + 1933 1933 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1934 1934 1935 1935 (% class="box infomessage" %) ... ... @@ -2038,10 +2038,14 @@ 2038 2038 { 2039 2039 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2040 2040 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2041 - "mileageBegin": 0, ~/~/ Пробег на начало периода 2042 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 2043 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 2044 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2412 + "mileage": 0, ~/~/ Пробег за период, километры 2413 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2414 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2415 + "motohours": 0, ~/~/ Моточасы за период, секунды 2416 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2417 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2418 + "idlingTime": 0 ~/~/ Холостой ход за период, секунд 2419 + 2045 2045 } 2046 2046 ] 2047 2047 } ... ... @@ -2083,13 +2083,23 @@ 2083 2083 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2084 2084 "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода 2085 2085 "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2461 + "fuelTankLevelStart": 0, ~/~/ Уровень топлива в цистерне на начало периода 2462 + "fuelTankLevelEnd": 0, ~/~/ Уровень топлива в цистерне на конец периода 2086 2086 "fuelConsumption": 0, ~/~/ Расход топлива 2087 2087 "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2465 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне 2466 + 2088 2088 } 2089 2089 ] 2090 2090 } 2091 2091 ] 2092 2092 2472 +(% class="box warningmessage" %) 2473 +((( 2474 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2475 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2476 +))) 2477 + 2093 2093 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2094 2094 2095 2095 (% class="box infomessage" %) ... ... @@ -2124,7 +2124,8 @@ 2124 2124 "model": "string", ~/~/ Модель объекта 2125 2125 "fuels": [ ~/~/ Массив данным по заправкам и сливам 2126 2126 { 2127 - "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив 2512 + "event": 0, ~/~/ Тип события 0 - Other, 1 - Engine, 2 - Stop, 3 - FuelIn, 4 - FuelOut, 5 - Garbage, 6 - Grader, 8 - Otval, 9 - Sand, 10 - MixerLand, 11 - MixerMove, 12 - OpenCircuit, 13 - TechSpeed, 14 - Work, 15 - Braid, 16 - Broom, 17 - ReFuller, 18 - Crane, 19 - Power, 20 - TankFuelIn, 21 - TankFuelOut, 22 - BigStop, 23 - OverSpeed, 24 - Unloading, 25 - Warning, 26 - GarbageWork, 27 - Custom, 28 - CustomWork, 29 - GNSS, 30 - GrainIn, 31 - GrainOut, 32 - WeighingTerminal, 33 - Stopping, 34 - FertilizerWork, 35 - FertilizerRefueling 2513 + 2128 2128 "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало 2129 2129 "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание 2130 2130 "valueFuel": 0, ~/~/ Количество ... ... @@ -2153,74 +2153,42 @@ 2153 2153 Тело запроса: 2154 2154 2155 2155 { 2156 - 2157 2157 "vehicleIds": [ ], ~/~/ Список ID объектов 2158 - 2159 2159 "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2160 - 2161 2161 "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2162 - 2163 2163 "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2164 - 2165 2165 } 2166 2166 2167 2167 Ответ: 2168 2168 2169 -[ 2170 - 2550 +[ 2171 2171 { 2172 - 2173 2173 "vehicleId": 0, ~/~/ ID объекта 2174 - 2175 2175 "vehicleName": "string", ~/~/ Имя объекта 2176 - 2177 2177 "moves": [ ~/~/ Событие движения 2178 - 2179 2179 { 2180 - 2181 2181 "mileage": 0, ~/~/ Пробег, км 2182 - 2183 2183 "eventId": 0, ~/~/ Идентификатор события 2184 - 2185 2185 "eventName": "string", ~/~/ Название события 2186 - 2187 2187 "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2188 - 2189 2189 "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2190 - 2191 2191 "duration": 0 ~/~/ Продолжительность события, секунд 2192 - 2193 2193 } 2194 - 2195 2195 ], 2196 - 2197 2197 "stops": [ ~/~/ События стоянок 2198 - 2199 2199 { 2200 - 2201 - "address": "string", ~/~/ Адрес события 2202 - 2566 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2203 2203 "eventId": 0, ~/~/ Идентификатор события 2204 - 2205 2205 "eventName": "string", ~/~/ Название события 2206 - 2207 2207 "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2208 - 2209 2209 "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2210 - 2211 2211 "duration": 0 ~/~/ Продолжительность события, секунд 2212 - 2213 - 2214 2214 } 2215 - 2216 2216 ] 2217 - 2218 2218 } 2219 - 2220 2220 ] 2221 2221 2222 2222 2223 - 2224 2224 == (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2225 2225 2226 2226 (% class="box infomessage" %) ... ... @@ -2235,29 +2235,52 @@ 2235 2235 В заголовках запроса: X-Auth: Токен авторизации 2236 2236 2237 2237 2238 -В теле запроса перечисляетемассив id объектов2592 +В массиве указываем id объектов через запятую 2239 2239 2240 2240 Ответ: 2595 + 2596 +[ 2241 2241 { 2242 - "vehicleId": 0, ~/~/Идентификатор объекта.2243 - "vehicleGuid": " 3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификаторобъекта.2244 - "vehicleNumber": " string",~/~/Номер объекта.2245 - "receiveTime": "202 4-02-27T14:11:00.315Z",~/~/Времяполучениязаписи на сервере,т.е. время срабатывания+ время передачи от устройствана сервер2246 - "recordTime": "202 4-02-27T14:11:00.315Z",~/~/Времязаписиотустройства, т.е. время фактическогособытия натранспортном средстве.2247 - "state": 0,~/~/Определяет состояния объекта в мониторинге:вдвижении,остановка,стоянка,отключена,нетданных.2248 - "speed": 0,~/~/Скорость объекта.2249 - "course": 0,~/~/Курс движения [0;360]2250 - "latitude": 0,~/~/Широта [-90°;90°].2251 - "longitude": 0,~/~/Долгота [-180°;180°]. 2252 - "address": " string",~/~/Адрес.2253 - "geozones": [ ~/~/Сведения по геозонам. 2598 + "vehicleId": 55728, ~/~/ Идентификатор объекта 2599 + "vehicleGuid": "fa9c0357-9b9f-44b9-a89c-20a2cb80a9ad", ~/~/ Guid объекта 2600 + "vehicleNumber": "0105 КМ", ~/~/ Номер объекта 2601 + "receiveTime": "2025-06-27T12:37:46.7782735Z", ~/~/ Время и дата поступления данных 2602 + "recordTime": "2025-06-27T12:37:19Z", ~/~/ Время и дата формирование данных 2603 + "state": 4, ~/~/ Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2604 + "speed": 31, ~/~/ Скорость объекта 2605 + "course": 116, ~/~/ Курс движения [0;360] 2606 + "latitude": 45.722128, ~/~/ Широта [-90°;90°]. 2607 + "longitude": 39.800432, ~/~/ Долгота [-180°;180°]. 2608 + "address": "\" Краснодарский край Россия 45,722128°, 39,800432°\"", ~/~/ Адрес 2609 + "geozones": [ ~/~/ Сведения по геозонам. 2254 2254 { 2255 - "id": 0, 2256 - "name": "string" 2611 + "id": 10225647, ~/~/ ID Геозоны 2612 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2613 + }, 2614 + { 2615 + "id": 10282875, ~/~/ ID Геозоны 2616 + "name": "Ё2" ~/~/ Наименование геозоны 2617 + }, 2618 + { 2619 + "id": 10226240, ~/~/ ID Геозоны 2620 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2621 + }, 2622 + { 2623 + "id": 9747869, ~/~/ ID Геозоны 2624 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2625 + }, 2626 + { 2627 + "id": 10221123, ~/~/ ID Геозоны 2628 + "name": "53r" ~/~/ Наименование геозоны 2629 + }, 2630 + { 2631 + "id": 10197638, ~/~/ ID Геозоны 2632 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2257 2257 } 2634 + ] 2635 + } 2258 2258 2259 2259 2260 - 2261 2261 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2262 2262 2263 2263 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2386,6 +2386,35 @@ 2386 2386 } 2387 2387 ] 2388 2388 2766 + 2767 +== (% style="color:#000000; font-size:16px" %)**Обновить информацию по геозоне**(%%) == 2768 + 2769 +(% class="box successmessage" %) 2770 +((( 2771 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**PUT **(%%)**/api/v3/gis** 2772 +))) 2773 + 2774 +(% style="color:#000000" %)Метод запроса: **PUT** 2775 + 2776 +Пример запроса: 2777 + 2778 +((( 2779 +{ 2780 + "id": 0, ~/~/ Идентификатор объекта геозоны 2781 + "name": "string", ~/~/ Наименование объекта геозоны 2782 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 2783 + "description": "string", ~/~/ Описание объекта геозоны 2784 + "beginCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата начала расчетов для геозоны 2785 + "endCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата окончания расчетов для геозоны 2786 + "settingsData": "string" ~/~/ Параметры отображения в формате XML. 2787 +} 2788 +))) 2789 + 2790 + 2791 +Пример ответа: 2792 + 2793 +200 ~/~/ Success 2794 + 2389 2389 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) = 2390 2390 2391 2391 == (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) == ... ... @@ -2417,7 +2417,7 @@ 2417 2417 "id": 0, ~/~/ ID уведомления 2418 2418 "name": "string", ~/~/ Название уведомления 2419 2419 "active": true, ~/~/ Состояние true - активен, false - деактивирован 2420 - "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО 2826 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя) 2421 2421 "userId": "", ~/~/ Пользователь, создавший уведомление 2422 2422 "parentId": "", ~/~/ Идентификатор клиента 2423 2423 "parentName": "string" ~/~/ Имя клиента ... ... @@ -2424,6 +2424,155 @@ 2424 2424 } 2425 2425 ] 2426 2426 2833 + 2834 +== (% style="color:#000000; font-size:16px" %)**Создание уведомления**(%%) == 2835 + 2836 +(% class="box infomessage" %) 2837 +((( 2838 +**POST /api/v3/notifications** 2839 +))) 2840 + 2841 +Метод запроса **POST** 2842 + 2843 +(% style="text-align: left;" %) 2844 +(% style="color:#000000" %)Пример запроса 2845 + 2846 +((( 2847 +{ 2848 + "id": 0, ~/~/ ID правила 2849 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2850 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2851 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2852 + "name": "string", ~/~/ Имя правила 2853 + "active": true, ~/~/ Активность правила 2854 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2855 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2856 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2857 + ], 2858 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2859 + 0 2860 + ], 2861 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2862 + 0 2863 + ], 2864 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2865 + 0 2866 + ], 2867 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2868 + "additionalProp1": "string", 2869 + "additionalProp2": "string", 2870 + "additionalProp3": "string" 2871 + }, 2872 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2873 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2874 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2875 + ], 2876 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2877 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2878 + "string" 2879 + ], 2880 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2881 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2882 + { 2883 + "id": 0, ~/~/ Идентификатор участника чата. 2884 + "info": "string" ~/~/ Дополнительные сведения. 2885 + } 2886 + ], 2887 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2888 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2889 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2890 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2891 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2892 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2893 + "timezone": 0, ~/~/ часовой пояс 2894 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2895 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2896 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2897 + { 2898 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек 2899 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2900 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2901 + "additionalProp1": "string", 2902 + "additionalProp2": "string", 2903 + "additionalProp3": "string" 2904 + } 2905 + } 2906 + ] 2907 +} 2908 +))) 2909 + 2910 +((( 2911 + 2912 +))) 2913 + 2914 +((( 2915 + 2916 +))) 2917 + 2918 +Ответ: 2919 + 2920 +{ 2921 + "id": 0, ~/~/ ID правила 2922 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2923 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2924 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2925 + "name": "string", ~/~/ Имя правила 2926 + "active": true, ~/~/ Активность правила 2927 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2928 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2929 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2930 + ], 2931 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2932 + 0 2933 + ], 2934 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2935 + 0 2936 + ], 2937 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2938 + 0 2939 + ], 2940 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2941 + "additionalProp1": "string", 2942 + "additionalProp2": "string", 2943 + "additionalProp3": "string" 2944 + }, 2945 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2946 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2947 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2948 + ], 2949 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2950 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2951 + "string" 2952 + ], 2953 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2954 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2955 + { 2956 + "id": 0, ~/~/ Идентификатор участника чата. 2957 + "info": "string" ~/~/ Дополнительные сведения. 2958 + } 2959 + ], 2960 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2961 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2962 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2963 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2964 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2965 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2966 + "timezone": 0, ~/~/ часовой пояс 2967 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2968 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2969 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2970 + { 2971 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек 2972 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2973 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2974 + "additionalProp1": "string", 2975 + "additionalProp2": "string", 2976 + "additionalProp3": "string" 2977 + } 2978 + } 2979 + ] 2980 +} 2981 + 2427 2427 == (% style="color:#000000; font-size:16px" %)**Запрос настроек уведомления**(%%) == 2428 2428 2429 2429 (% class="box infomessage" %) ... ... @@ -2565,6 +2565,32 @@ 2565 2565 2566 2566 Success 2567 2567 3123 + 3124 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 3125 + 3126 +(% class="box warningmessage" %) 3127 +((( 3128 +**PUT** /api/v3/notifications/prolongation 3129 +))) 3130 + 3131 +Метод позволяет продлить уведомления. 3132 + 3133 +Метод запроса **PUT** 3134 + 3135 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 3136 + 3137 +В заголовках запроса: X-Auth: Токен авторизации. 3138 + 3139 +Тело запроса: 3140 + 3141 +[ 3142 + 3143 +0 3144 + 3145 +] 3146 + 3147 +где 0 идентификатор ids. 3148 + 2568 2568 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2569 2569 2570 2570 (% class="box errormessage" %) ... ... @@ -3615,16 +3615,12 @@ 3615 3615 Тело запроса: 3616 3616 3617 3617 { 3618 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3619 - "Balance": 0 4199 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4200 + "Balance": 0 ~/~/ Значение баланса. 3620 3620 } 3621 3621 3622 3622 Ответ: Success 3623 3623 3624 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3625 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3626 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 3627 - 3628 3628 == (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) == 3629 3629 3630 3630 (% class="box warningmessage" %) ... ... @@ -3636,16 +3636,29 @@ 3636 3636 3637 3637 Тело запроса: 3638 3638 4216 +((( 3639 3639 { 3640 - " ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",3641 - " Balance": 04218 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4219 + "amount": 0 ~/~/ Сумма пополнения баланса 3642 3642 } 4221 +))) 3643 3643 4223 +((( 4224 + 4225 +))) 4226 + 3644 3644 Ответ: Success 3645 3645 3646 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3647 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3648 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4229 +((( 4230 +{ 4231 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки. 4232 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4233 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя. 4234 + "Moment": "2025-06-10T12:15:19.076Z", ~/~/ Время корректировки. 4235 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс. 4236 + "Description": "string" ~/~/ Описание корректировки. 4237 +} 4238 +))) 3649 3649 3650 3650 == (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) == 3651 3651 ... ... @@ -3658,16 +3658,25 @@ 3658 3658 3659 3659 Тело запроса: 3660 3660 4251 +((( 3661 3661 { 3662 - " ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",3663 - " Balance": 04253 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4254 + "amount": 0 ~/~/ Сумма списания с баланса 3664 3664 } 4256 +))) 3665 3665 3666 3666 Ответ: Success 3667 3667 3668 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3669 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3670 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4260 +((( 4261 +{ 4262 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки. 4263 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4264 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя. 4265 + "Moment": "2025-06-10T12:21:05.149Z", ~/~/ Время корректировки. 4266 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс. 4267 + "Description": "string" ~/~/ Описание корректировки 4268 +} 4269 +))) 3671 3671 3672 3672 == (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) == 3673 3673 ... ... @@ -3678,28 +3678,35 @@ 3678 3678 3679 3679 Тело запроса: 3680 3680 4280 +((( 3681 3681 { 3682 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3683 - "CalculationType": 0, 3684 - "PermissibleBalance": 0, 3685 - "DefermentDays": 0, 3686 - "SendUiNotifications": true, 3687 - "SendEmailNotifications": true, 3688 - "IsPrivate": true, 4282 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4283 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни 4284 + "PermissibleBalance": 0, ~/~/ Допустимый баланс 4285 + "DefermentDays": 0, ~/~/ Отсрочка (дни). 4286 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено 4287 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено 3689 3689 } 4289 +))) 3690 3690 4291 +((( 4292 + 4293 +))) 4294 + 3691 3691 Ответ: Success 3692 3692 3693 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3694 -|ClientId|Идентификатор клиента 3695 -|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 3696 -|PermissibleBalance|Допустимый баланс 3697 -|DefermentDays|((( 3698 -Отсрочка, количество дней 4297 +((( 4298 +{ 4299 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 4300 + "BlockingTime": "2025-06-10T12:23:28.754Z", ~/~/ Время, когда заблокируется клиент. 4301 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4302 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни 4303 + "PermissibleBalance": 0, ~/~/ Допустимый баланс. 4304 + "DefermentDays": 0, ~/~/ Отсрочка (дни) 4305 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено 4306 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено 4307 +} 3699 3699 ))) 3700 -|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено 3701 -|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено 3702 -|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 3703 3703 3704 3704 == (% style="color:#000000; font-size:16px" %)**Изменить тариф клиента**(%%) == 3705 3705 ... ... @@ -3711,35 +3711,68 @@ 3711 3711 Тело запроса: 3712 3712 3713 3713 { 3714 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3715 - "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3716 - "Features": [ 4320 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4321 + "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана. 4322 + "Features": [ ~/~/ Набор услуг по тарифу клиента. 3717 3717 { 3718 - "Feature": "string", 3719 - "IsEnabled": true, 3720 - "IsFactual": true, 3721 - "Limit": 0, 3722 - "Price": 0, 3723 - "DebitDate": "2023-10-18T13:26:58.987Z", 3724 - "PeriodValue": 0, 3725 - "PeriodType": 0 4324 + "Feature": "string", ~/~/ Код услуги. 4325 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга. 4326 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту. 4327 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование 4328 + "Price": 0, ~/~/ Цена за единицу. 4329 + "DebitDate": "2023-10-18T13:26:58.987Z", ~/~/ Следующий момент времени списания с баланса за услугу. 4330 + "PeriodValue": 0, ~/~/ Значение периода. 4331 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане ( 0 - Дни, 1 - Месяцы) 3726 3726 } 3727 3727 ] 3728 3728 } 3729 3729 4336 + 3730 3730 Ответ: Success 3731 3731 3732 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3733 -|ClientId|Идентификатор клиента 3734 -|PlanId|Идентификатор тарифного плана 3735 -|Feature|Код услуги 3736 -|IsEnabled|Признак, определяющий активирована ли услуга 3737 -|IsFactual|Признак, определяющий расчёт по факту 3738 -|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 3739 -|Price|Цена за единицу. 3740 -|DebitDate|Следующий момент времени списания с баланса за услугу. 3741 -|PeriodValue|Значение периода. 3742 -|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 4339 +((( 4340 +{ 4341 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4342 + "Plan": { ~/~/ Определяет тарифный план (шаблон услуг) 4343 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана. 4344 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента-владельца. 4345 + "Name": "string", ~/~/ Наименование. 4346 + "IsArchived": true, ~/~/ Признак, определяющий архивный тарифный план. 4347 + "Constraint": { ~/~/ Ограничения по тарифу 4348 + "CalculationType": 0, ~/~/ Определяет тип расчёта (0 - деньги, 1 - дни) 4349 + "PermissibleBalance": 0, ~/~/ Допустимый баланс. 4350 + "DefermentDays": 0 ~/~/ Отсрочка (дни) 4351 + }, 4352 + "Features": [ ~/~/ Набор услуг по тарифному плану. 4353 + { 4354 + "Feature": "string", ~/~/Код услуги. 4355 + "IsFactual": true, ~/~/ Признак, определяющий возможность расчёта по факту. 4356 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4357 + "Price": 0, ~/~/ Цена за единицу. 4358 + "PeriodValue": 0, ~/~/ Значение периода. 4359 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане. (0 - деньги, 1 - дни) 4360 + } 4361 + ], 4362 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя, создавшего тарифный план. 4363 + "Created": "2025-06-10T12:29:32.969Z", ~/~/ Дата создания тарифного плана. 4364 + "Deactivated": "2025-06-10T12:29:32.969Z" ~/~/ Дата деактивации тарифного плана. 4365 + }, 4366 + "Features": [ ~/~/ Набор услуг по тарифу клиента. 4367 + { 4368 + "Feature": "string", ~/~/ Код услуги. 4369 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга. 4370 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры по услуге тарифа частными т.е. персональными для клиента, либо определяются тарифным планом. 4371 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту. 4372 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4373 + "Price": 0, ~/~/ Цена за единицу. 4374 + "DebitDate": "2025-06-10T12:29:32.969Z", ~/~/ Следующий момент времени списания с баланса за услугу. 4375 + "PeriodValue": 0, ~/~/ Значение периода. 4376 + "PeriodType": 0, ~/~/ Определяет тип периода действия услуги в тарифном плане. 4377 + "Quantity": 0 ~/~/ Количество использования услуги. 4378 + } 4379 + ] 4380 +} 4381 +))) 3743 3743 3744 3744 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) = 3745 3745 ... ... @@ -3755,7 +3755,7 @@ 3755 3755 **POST /api/v3/vehicles/import/{agentId}** 3756 3756 ))) 3757 3757 3758 -Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml** или **wlp. **Также они могут находится в** zip-архиве.** 4397 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 3759 3759 3760 3760 В пути указывается **agentId** - id клиента. 3761 3761 ... ... @@ -3767,7 +3767,7 @@ 3767 3767 3768 3768 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3769 3769 |withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 3770 -|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: 1- Замена,2- Слияние,3- Добавление4409 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 3771 3771 3772 3772 В теле использовать тип **form-data,** тип значения** file** 3773 3773 ... ... @@ -3844,6 +3844,43 @@ 3844 3844 |producedCount|Кол-во успешно отправленных в шину данных сообщений 3845 3845 |msgCount|Кол-во обработанных сообщений всего 3846 3846 4486 +== **Импортировать историю ТС (Асинхронный запрос)** == 4487 + 4488 +(% class="box successmessage" %) 4489 +((( 4490 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 4491 +))) 4492 + 4493 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4494 + 4495 +Метод запроса: **POST** 4496 + 4497 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 4498 + 4499 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 4500 + 4501 + 4502 +Ответ: 4503 + 4504 +{ 4505 + 4506 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4507 + 4508 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 4509 + 4510 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 4511 + 4512 + "Message": "string", ~/~/ Информация о выполнении запроса 4513 + 4514 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 4515 + 4516 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4517 + 4518 + "Data": "string" ~/~/ Данные 4519 + 4520 +} 4521 + 4522 + 3847 3847 == (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 3848 3848 3849 3849 (% class="box infomessage" %) ... ... @@ -3861,10 +3861,59 @@ 3861 3861 "message": "string" 3862 3862 } 3863 3863 3864 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3865 -|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет 3866 -|progress|Guid ТС 4540 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)((( 4541 +**Параметр** 4542 +)))|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)((( 4543 +**Описание** 4544 +))) 4545 +|((( 4546 +activity 4547 +)))|((( 4548 +Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4549 +))) 4550 +|((( 4551 +progress 4552 +)))|((( 4553 +Guid ТС 4554 +))) 3867 3867 4556 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 4557 + 4558 +(% class="box infomessage" %) 4559 +((( 4560 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 4561 +))) 4562 + 4563 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4564 + 4565 +Метод запроса: **GET** 4566 + 4567 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 4568 + 4569 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 4570 + 4571 + 4572 +Ответ: 4573 + 4574 +{ 4575 + 4576 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4577 + 4578 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 4579 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 4580 + 4581 + "Message": "string", ~/~/ Информация о выполнении запроса 4582 + 4583 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 4584 + 4585 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 4586 + 4587 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4588 + 4589 + "Data": "string" ~/~/ Данные 4590 + 4591 +} 4592 + 3868 3868 == (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 3869 3869 3870 3870 (% class="box infomessage" %) ... ... @@ -3946,64 +3946,67 @@ 3946 3946 Тело запроса: 3947 3947 3948 3948 { 3949 - "vehicleIds": [vehicleId], 3950 - "from": "2023-11-22T09:29:48.051Z", 3951 - "to": "2023-11-22T09:29:48.051Z" 4674 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4675 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4676 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 3952 3952 } 3953 3953 3954 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3955 -|vehicleIds|Массив ID объектов 3956 -|from|Дата начала запроса 3957 -|to|Дата окончания запроса 3958 - 3959 3959 Ответ: 3960 3960 3961 3961 { 3962 - "items": [ 4682 + "items": [ ~/~/ Список в разрезе ТС 3963 3963 { 3964 - "from": "2023-11-22T09:29:48.052Z", 3965 - "to": "2023-11-22T09:29:48.052Z", 3966 - "vehicleId": 0, 3967 - "vehicleName": "string", 3968 - "vehicleModel": "string", 3969 - "penalty": 0, 3970 - "score": 0, 3971 - "totalViolations": 0, 3972 - "violationsByType": { 3973 - "overspeedingViolations": 0, 3974 - "accelerationViolations": 0, 3975 - "brakingViolations": 0, 3976 - "turningViolations": 0, 3977 - "dangerousDrivingViolations": 0, 3978 - "sensorViolations": 0 4684 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4685 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4686 + "vehicleId": 0, ~/~/ ID ТС 4687 + "vehicleName": "string", ~/~/ Название ТС 4688 + "vehicleModel": "string", ~/~/ Модель ТС 4689 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4690 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4691 + "totalViolations": 0, ~/~/ Нарушений всего 4692 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4693 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4694 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4695 + "brakingViolations": 0, ~/~/ Нарушений торможения 4696 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4697 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4698 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3979 3979 }, 3980 - "moveTime": 0, 3981 - "mileage": 0, 3982 - "tripsCount": 0, 3983 - "trips": [ 4700 + 4701 +((( 4702 + 4703 +))) 4704 + 4705 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4706 + "mileage": 0, ~/~/ Пробег, м 4707 + "tripsCount": 0, ~/~/ Кол-во рейсов 4708 + "trips": [ ~/~/ Информация по рейсу 3984 3984 { 3985 - "penalty": 0, 3986 - "score": 0, 3987 - "violationsCount": 0, 3988 - "violationsByType": { 3989 - "overspeedingViolations": 0, 3990 - "accelerationViolations": 0, 3991 - "brakingViolations": 0, 3992 - "turningViolations": 0, 3993 - "dangerousDrivingViolations": 0, 3994 - "sensorViolations": 0 4710 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4711 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4712 + "violationsCount": 0, ~/~/ Всего нарушений 4713 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4714 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4715 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4716 + "brakingViolations": 0, ~/~/ Нарушений торможения 4717 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4718 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4719 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3995 3995 }, 3996 - "moveTime": 0, 3997 - "mileage": 0, 3998 - "motohours": 0, 3999 - "maxSpeed": 0, 4000 - "startAddress": "string", 4001 - "endAddress": "string", 4002 - "drivers": [ 4721 + 4722 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4723 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4724 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4725 + "mileage": 0, ~/~/ Пробег, м 4726 + "motohours": 0, ~/~/ Моточасы, секунды 4727 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4728 + "startAddress": "string", ~/~/ Адрес начала рейса 4729 + "endAddress": "string", ~/~/ Адрес конца рейса 4730 + "drivers": [ ~/~/ Список водителей 4003 4003 { 4004 - "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4005 - "driverName": "string", 4006 - "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 4732 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4733 + "driverName": "string", ~/~/ФИО водителя 4734 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 4007 4007 } 4008 4008 ] 4009 4009 } ... ... @@ -4012,34 +4012,1976 @@ 4012 4012 ] 4013 4013 } 4014 4014 4015 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4016 -|from|Дата начала запроса 4017 -|to|Дата окончания 4018 -|vehicleId|ID объекта 4019 -|vehicleName|Имя объекта 4020 -|vehicleModel|Модель объекта 4021 -|penalty|Сумма штрафных баллов 4022 -|score|Оценка 4023 -|totalViolations|Суммарное количество нарушений 4024 -|violationsByType|Список типов нарушений и количество нарушений для каждого типа 4025 -|overspeedingViolations|Превышение скорости 4026 -|accelerationViolations|Ускорение 4027 -|brakingViolations|Торможение 4028 -|turningViolations|Резкий поворот 4029 -|dangerousDrivingViolations|Резкое вождение 4030 -|sensorViolations|Нарушение по датчику 4031 -|moveTime|Время в движении 4032 -|mileage|Пробег 4033 -|tripsCount|Количество рейсов 4034 -|motohours|Моточасы 4035 -|maxSpeed|Максимальная скорость 4036 -|startAddress|Адрес начала рейса 4037 -|endAddress|Адрес окончания рейса 4038 -|drivers|Список водителей, которые были на объекте в течениии рейса 4039 -|driverGuid|Guid водителя 4040 -|driverName|Имя водителя 4041 -|driverRfid|Номер Карты-метки 4743 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 4042 4042 4745 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4746 + 4747 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4748 + 4749 +(% class="box infomessage" %) 4750 +((( 4751 +**POST /api/v3/fuelcards/transactions** 4752 +))) 4753 + 4754 +Метод запроса: POST 4755 + 4756 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4757 +\\В заголовках запроса: X-Auth: Токен авторизации 4758 + 4759 +Параметры в теле запроса (JSON): 4760 + 4761 +{ 4762 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4763 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4764 + "ids": [ 4765 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4766 + ], 4767 + "timezone": 0 ~/~/ Часовой пояс 4768 +} 4769 + 4770 + 4771 +Ответ: 4772 + { 4773 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4774 + "driver": "string", ~/~/ Водители, привязанные к ТК 4775 + "object": "string", ~/~/ Наименование ТС 4776 + "amount": 0, ~/~/ Количество топлива 4777 + "amountDut": 0, ~/~/ Количество по ДУТ 4778 + "amountDiff": 0, ~/~/ Разница, л 4779 + "amountDiffPerc": 0, ~/~/ Разница, % 4780 + "summa": 0, ~/~/ Стоимость, руб 4781 + "serviceName": "string", ~/~/ Тип топлива 4782 + "price": 0, ~/~/ Цена за литр, руб 4783 + "cardName": "string", ~/~/ Наименование ТК 4784 + "cardNum": "string", ~/~/ Номер ТК 4785 + "operator": "string", ~/~/ Оператор ТК 4786 + "address": "string" ~/~/ Адрес АЗС 4787 + } 4788 + 4789 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) == 4790 + 4791 +(% class="box infomessage" %) 4792 +((( 4793 +**GET /api/v3/fuelcards** 4794 +))) 4795 + 4796 +Метод запроса: GET 4797 + 4798 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список 4799 + 4800 +Ответ: 4801 + 4802 +[ 4803 + { 4804 + "Name": "string", ~/~/ Определяет наименование карты. 4805 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора. 4806 + "Number": "string", ~/~/ Определяет № карты. 4807 + "Enabled": true, ~/~/ Определяет признак активности карты. 4808 + "Description": "string", ~/~/ Определяет описание карты. 4809 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты 4810 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 4811 + "deleted": true ~/~/ Признак удаления 4812 + } 4813 +] 4814 + 4815 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4816 + 4817 + 4818 +== **Получение полных данных о ретрансляторе** == 4819 + 4820 +(% class="box infomessage" %) 4821 +((( 4822 +**GET ** **/api/v3/retranslations/{id}** 4823 +))) 4824 + 4825 +id - Идентификатор ретранслятора 4826 + 4827 + 4828 +Пример ответа: 4829 + 4830 +{ 4831 +"description": "", ~/~/ Поле описания ретранслятора 4832 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4833 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4834 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4835 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4836 +"objects": [ ~/~/ Объекты для ретрансляции 4837 +{ 4838 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4839 +"name": "", ~/~/ Наименование объекта ретрансляции 4840 +"imei": "", ~/~/ IMEI объекта ретрансляции 4841 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4842 +} 4843 + ], 4844 +"id": "", ~/~/ Идентификатор ретранслятора 4845 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4846 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4847 +} 4848 + 4849 + 4850 +== **Удаление данных ретранслятора** == 4851 + 4852 +(% class="box infomessage" %) 4853 +((( 4854 +**DELETE** **/api/v3/retranslations/{id}** 4855 +))) 4856 + 4857 +id - Идентификатор ретранслятора 4858 + 4859 + 4860 +== **Создание ретранслятора** == 4861 + 4862 +(% class="box infomessage" %) 4863 +((( 4864 +**POST ** **/api/v3/retranslations/{id}** 4865 +))) 4866 + 4867 +Запрос: 4868 + 4869 +{ 4870 +"description": "", ~/~/ Поле описания ретранслятора 4871 +"subscriberId": "", ~/~/ Идентификатор подписчика 4872 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4873 +"address": "", ~/~/ Адрес и порт принимающего сервера 4874 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4875 +"objects": [ ~/~/Объекты для ретрансляции 4876 +{ 4877 +"id": "", ~/~/ Идентификатор ретранслятора 4878 +"imei": "", ~/~/ IMEI объекта ретрансляции 4879 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4880 +} 4881 + ] 4882 +} 4883 + 4884 + 4885 +Ответ: 4886 + 4887 +{ 4888 +"description": "", ~/~/ Поле описания ретранслятора 4889 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4890 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4891 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4892 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4893 +"objects": [ ~/~/ Объекты для ретрансляции 4894 +{ 4895 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4896 +"name": "string", ~/~/ Наименование объекта ретрансляции 4897 +"imei": "", ~/~/ IMEI объекта ретрансляции 4898 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4899 +} 4900 + ], 4901 +"id": "", ~/~/ Идентификатор ретранслятора 4902 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4903 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4904 +} 4905 + 4906 + 4907 +== **Редактирование ретранслятора** == 4908 + 4909 +(% class="box infomessage" %) 4910 +((( 4911 +**PUT** **/api/v3/retranslations** 4912 +))) 4913 + 4914 +Пример запроса: 4915 + 4916 +{ 4917 +"id": "", ~/~/ Идентификатор ретранслятора 4918 +"description": "string", ~/~/ Поле описания ретранслятора 4919 +"subscriberId": "", ~/~/ Идентификатор подписчика 4920 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4921 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4922 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4923 +"objects": ~/~/ Объекты для ретрансляции 4924 +[ 4925 +{ 4926 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4927 +"imei": "", ~/~/ IMEI объекта ретрансляции 4928 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4929 +} 4930 + ] 4931 +} 4932 + 4933 + 4934 +Пример ответа: 4935 + 4936 +{ 4937 +"description": "", ~/~/ Поле описания ретранслятора 4938 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4939 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4940 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4941 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4942 +"objects": [ ~/~/ Объекты для ретрансляции 4943 +{ 4944 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4945 +"name": "string", ~/~/ Наименование объекта ретрансляции 4946 +"imei": "", ~/~/ IMEI объекта ретрансляции 4947 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4948 +} 4949 + ], 4950 +"id": "", ~/~/ Идентификатор ретранслятора 4951 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4952 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4953 +} 4954 + 4955 + 4956 +== **Получение списка ретранслятора клиента** == 4957 + 4958 +(% class="box infomessage" %) 4959 +((( 4960 +**POST /api/v3/retranslations/find** 4961 +))) 4962 + 4963 +Пример запроса: 4964 + 4965 +{ 4966 +"id": "", ~/~/ Идентификатор ретранслятора 4967 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4968 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4969 +} 4970 + 4971 +Ответ: 4972 + 4973 +[ 4974 +{ 4975 +"description": "", ~/~/ Поле описания ретранслятора 4976 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4977 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4978 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4979 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4980 +"id": "", ~/~/ Идентификатор ретранслятора 4981 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4982 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4983 +} 4984 +] 4985 + 4986 + 4987 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4988 + 4989 +== **API для отчета по выгрузке комбайнов** == 4990 + 4991 +(% class="box infomessage" %) 4992 +((( 4993 +**POST /api/v3/Reports/harvesterUnloading** 4994 +))) 4995 + 4996 +Пример запроса: 4997 + 4998 +{ 4999 + "byTime": 0, ~/~/ Объединение событий по времени 5000 + "byDist": 0, ~/~/ Объединение событий по расстоянию 5001 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 5002 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 5003 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 5004 + "vehicleIds": [ ~/~/ Список id объектов для анализа 5005 + 0 5006 + ], 5007 + "from": "", ~/~/ Дата и время начало запроса 5008 + "to": "", ~/~/ Дата и время окончания запроса 5009 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 5010 +} 5011 + 5012 +Пример ответа: 5013 + 5014 +[ 5015 + { 5016 + "harvesterName": "", ~/~/Комбайн, номер 5017 + "harvesterId": 0, ~/~/Комбайн, id 5018 +"harvesterModel": "", ~/~/ Модель комбайна 5019 +"hopperCapacity": 0, ~/~/ Объем бункера м3 5020 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 5021 + "events": [ ~/~/Список событий в разрезе комбайна 5022 + { 5023 + "driverId": "", ~/~/Идентификатор водителя 5024 + "driverName": "", ~/~/Водитель комбайна, ФИО 5025 + "RFID": "", ~/~/ идентификатор карты-метки 5026 + "rfidName": "", ~/~/Водитель комбайна, имя метки 5027 + "vehicleId": 0, ~/~/идентификатор объекта 5028 + "vehicleName": "string", ~/~/ Имя объекта 5029 + "modelName": "string", ~/~/ Имя модели объекта 5030 + "nearestVehicles": [ ~/~/Объекты рядом 5031 + { 5032 + "vehicleId": 0, ~/~/идентификатор объекта 5033 + "vehicleName": "string" ~/~/ Имя объекта 5034 + } 5035 + ], 5036 + "fields": [ ~/~/Поля, где происходила выгрузка 5037 + { 5038 + "id": 0, ~/~/ идентификатор пользователя 5039 + "name": "string" ~/~/ имя пользователя 5040 + } 5041 + ], 5042 + "event": "string", ~/~/Событие 5043 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 5044 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 5045 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 5046 + "cultureName": "string", ~/~/ название культуры 5047 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 5048 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 5049 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 5050 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 5051 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 5052 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 5053 + "issued": 0, ~/~/Выдано, бункеров 5054 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 5055 + "latitude": 0, ~/~/Широта 5056 + "longitude": 0, ~/~/ Долгота 5057 + "litresAway": 0, ~/~/Отдано, л 5058 + "m3Away": 0 ~/~/Отдано, м3 5059 + } 5060 + ] 5061 + } 5062 +] 5063 + 5064 + 5065 +== **Отчет трек-датчики** == 5066 + 5067 +(% class="box infomessage" %) 5068 +((( 5069 +**POST /api/v3/Reports/sensorsWorks** 5070 +))) 5071 + 5072 +**Пример запроса:** 5073 + 5074 +{ 5075 + "vehicleIds": [ ~/~/ Список ID объектов 5076 + 0 5077 + ], 5078 + "from": "2025-02-20T06:39:23.888Z", ~/~/ Начало периода (локальное время клиента) 5079 + "to": "2025-02-20T06:39:23.888Z", ~/~/ Конец периода (локальное время клиента) 5080 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 5081 +} 5082 + 5083 +**Пример ответа:** 5084 + 5085 +((( 5086 +{ 5087 + "vehicleSensorWorks": [ ~/~/ Интервалы работы оборудования для конкретного ТС 5088 + { 5089 + "vehicleId": 0, ~/~/ Идентификатор ТС 5090 + "sensorWorks": [ ~/~/ Интервалы работы оборудования. 5091 + { 5092 + "start": "2025-02-20T06:39:23.979Z", ~/~/ Начало интервала работы оборудования. 5093 + "end": "2025-02-20T06:39:23.979Z", ~/~/ Конец интервала работы оборудования. 5094 + "duration": 0, ~/~/ Продолжительность интервала в секундах. 5095 + "name": "string", ~/~/ Наименование оборудования. 5096 + "mileage": 0, ~/~/ Пробег за время работы оборудования. 5097 + "totalMileage": 0, ~/~/ Общий пробег. 5098 + "avgSpeed": 0 ~/~/ Средняя скорость. 5099 + } 5100 + ] 5101 + } 5102 + ] 5103 +} 5104 + 5105 + 5106 +== **Превышение скорости** == 5107 + 5108 +(% class="box infomessage" %) 5109 +((( 5110 +**POST /api/v3/Reports/overSpeedDuration** 5111 +))) 5112 + 5113 + Публичный API запрос о превышениях скорости по объекту в секундах с выбором способа определения нарушений (дорожное ограничение или фиксированное ограничение). 5114 + 5115 +Пример запроса: 5116 + 5117 +((( 5118 +{ 5119 + "vehicleId": 0, ~/~/ идентификационный номер транспортного средства 5120 + "from": "2025-04-21T10:45:25.258Z", ~/~/ Начало периода (локальное время клиента) 5121 + "to": "2025-04-21T10:45:25.258Z", ~/~/ Конец периода (локальное время клиента) 5122 + "timezone": 0, ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 5123 + "overSpeedDetectionType": 0 ~/~/ тип нарушения (1-дорожное ограничение, 2-фиксированный ) 5124 +} 5125 +))) 5126 + 5127 +((( 5128 + 5129 +))) 5130 + 5131 +((( 5132 +Пример ответа: 5133 +))) 5134 + 5135 +((( 5136 +((( 5137 +[ 5138 + { 5139 + "eventDate": "2025-04-21T10:45:25.267Z", ~/~/ Дата и время события 5140 + "duration": 0, ~/~/ Продолжительность события в секундах 5141 + "maxSpeed": 0, ~/~/ Максимальная скорость 5142 + "speedLimit": 0 ~/~/ Ограничение скорости 5143 + } 5144 +] 5145 +))) 5146 +))) 5147 +))) 5148 + 5149 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 5150 + 5151 + 5152 +== **Запрос списка полей** == 5153 + 5154 +(% class="box successmessage" %) 5155 +((( 5156 +**POST /api/v3/agroLands/find** 5157 +))) 5158 + 5159 +Пример запроса: 5160 + 5161 +((( 5162 +((( 5163 +((( 5164 +{ 5165 + "year": 0, ~/~/ Фильтр по году 5166 + "name": "string", ~/~/ Фильтр по названию 5167 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 5168 +} 5169 +))) 5170 +))) 5171 + 5172 + 5173 +))) 5174 + 5175 +Пример ответа: 5176 + 5177 +((( 5178 +[ 5179 + { 5180 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5181 + "year": 0, ~/~/ Год поля 5182 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 5183 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 5184 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5185 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5186 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5187 + "counts": { ~/~/ Счётчики с/х поля 5188 + "fieldOperations": 0, ~/~/ Количество операций на поле 5189 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5190 + "facts": 0 ~/~/ Счётчик факта 5191 + }, 5192 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5193 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5194 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5195 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5196 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5197 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5198 + "planComment": "string", ~/~/ Комментарий к полю 5199 + "productivity": 0, ~/~/ Урожайность. 5200 + "id": 0, ~/~/ Идентификатор объекта геозоны 5201 + "name": "string", ~/~/ Название объекта геозоны 5202 + "type": 0, ~/~/ Тип объекта геозоны 5203 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5204 + "fname": "string", ~/~/ Имя файла 5205 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5206 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 5207 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 5208 + "description": "string", ~/~/ Описание объекта геозоны 5209 + "area": 0, ~/~/ Площадь, м2 5210 + "perimetr": 0, ~/~/ Периметр, м 5211 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 5212 + } 5213 +] 5214 + 5215 + 5216 +== **Создание нового поля ** == 5217 + 5218 +(% class="box successmessage" %) 5219 +((( 5220 +**POST /api/v3/agroLands** 5221 +))) 5222 + 5223 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 5224 +X-agent - ID клиента 5225 + 5226 +Пример запроса: 5227 + 5228 +((( 5229 +{ 5230 + "extId": "string", 5231 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля 5232 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля 5233 + "display": "string", ~/~/ Настройки отображения 5234 + "year": 0, ~/~/ Год поля 5235 + "name": "string", ~/~/ Наименование 5236 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5237 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 5238 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 5239 + "planComment": "string", ~/~/ Комментарий к полю 5240 + "cropRotations": [ ~/~/ Данные по севообороту 5241 + { 5242 + "landId": 0, ~/~/ ID поля 5243 + "landName": "string", ~/~/ Название поля 5244 + "year": 0, ~/~/ Год урожая 5245 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5246 + "cultureName": "string", ~/~/ Название культуры 5247 + "productivity": 0, ~/~/ Урожайность 5248 + "area": 0, ~/~/ Площадь поля, Га 5249 + "total": 0, ~/~/ Валовый сбор 5250 + "productivityFact": 0, ~/~/ Фактическая урожайность 5251 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5252 + "totalFact": 0, ~/~/ Фактический валовый сбор 5253 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 5254 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 5255 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 5256 + "isyearplan": true, ~/~/ Годовой план 5257 + "comment": "string" ~/~/ Комментарий 5258 + } 5259 + ] 5260 +} 5261 +))) 5262 + 5263 +((( 5264 + 5265 +))) 5266 + 5267 +Пример ответа: 5268 + 5269 +((( 5270 +((( 5271 +{ 5272 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5273 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5274 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5275 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5276 + "cropRotations": [ ~/~/ Данные по севообороту 5277 + { 5278 + "landId": 0, ~/~/ ID поля 5279 + "landName": "string", ~/~/ Название поля 5280 + "year": 0, ~/~/ Год урожая 5281 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5282 + "cultureName": "string", ~/~/ Название культуры 5283 + "productivity": 0, ~/~/ Урожайность 5284 + "area": 0, ~/~/ Площадь поля, Га. 5285 + "total": 0, ~/~/ Валовый сбор 5286 + "productivityFact": 0, ~/~/ Фактическая урожайность 5287 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5288 + "totalFact": 0, ~/~/ Фактический валовый сбор 5289 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 5290 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 5291 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 5292 + "isyearplan": true, ~/~/ годовой план 5293 + "comment": "string" ~/~/ Комментарий 5294 + } 5295 + ], 5296 + "cropVegetation": [ ~/~/ История вегетации поля 5297 + { 5298 + "values": [ ~/~/ Данные вегетации и состояния посева 5299 + { 5300 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5301 + "ndvi": 0 ~/~/ Индекс вегетации 5302 + } 5303 + ], 5304 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5305 + { 5306 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5307 + "type": "string", ~/~/ Тип 5308 + "pictureid": "string" ~/~/ Идентификатор ресурса 5309 + } 5310 + ], 5311 + "states": [ ~/~/ Ключевые даты развития поля 5312 + { 5313 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5314 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5315 + } 5316 + ] 5317 + } 5318 + ], 5319 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 5320 + "counts": { 5321 + "fieldOperations": 0, ~/~/ Количество операций на поле 5322 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5323 + "facts": 0 ~/~/ Счётчик факта 5324 + }, 5325 + "planComment": "string", ~/~/ Комментарий к полю 5326 +))) 5327 + 5328 +((( 5329 + "productivity": 0, ~/~/ Урожайность. 5330 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5331 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 5332 + "year": 0, ~/~/ Год поля 5333 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5334 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5335 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5336 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5337 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 5338 + "id": 0, ~/~/ Идентификатор объекта геозоны 5339 + "name": "string", ~/~/ Название объекта геозоны 5340 + "type": 0, ~/~/ Тип объекта геозоны 5341 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5342 + "fname": "string", ~/~/ Имя файла 5343 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5344 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 5345 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 5346 + "description": "string", ~/~/ Описание объекта геозоны 5347 + "area": 0, ~/~/ Площадь, м2 5348 + "perimetr": 0, ~/~/ Периметр, м 5349 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 5350 +} 5351 + 5352 + 5353 +))) 5354 +))) 5355 +))) 5356 + 5357 +== **Получение поля по id** == 5358 + 5359 +(% class="box infomessage" %) 5360 +((( 5361 +**GET /api/v3/agroLands/{id}** 5362 +))) 5363 + 5364 +Пример запроса: 5365 +id ~/~/ Идентификатор поля 5366 + 5367 +Пример ответа: 5368 + 5369 +((( 5370 +{ 5371 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5372 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5373 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5374 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5375 + "cropRotations": [ ~/~/ Данные по севообороту 5376 + { 5377 + "landId": 0, ~/~/ ID поля 5378 + "landName": "string", ~/~/ Название поля 5379 + "year": 0, ~/~/ Год урожая 5380 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5381 + "cultureName": "string", ~/~/ Название культуры 5382 + "productivity": 0, ~/~/ Урожайность 5383 + "area": 0, ~/~/ Площадь поля, Га 5384 + "total": 0, ~/~/ Валовый сбор 5385 + "productivityFact": 0, ~/~/ Фактическая урожайность 5386 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5387 + "totalFact": 0, ~/~/ Фактический валовый сбор 5388 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 5389 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 5390 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 5391 + "isyearplan": true, ~/~/ План года 5392 + "comment": "string" ~/~/ Комментарий 5393 + } 5394 + ], 5395 + "cropVegetation": [ ~/~/ История вегетации поля 5396 + { 5397 + "values": [ ~/~/ Данные вегетации и состояния посева 5398 + { 5399 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5400 + "ndvi": 0 ~/~/ Индекс вегетации 5401 + } 5402 + ], 5403 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5404 + { 5405 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5406 + "type": "string", ~/~/ Тип 5407 + "pictureid": "string" ~/~/ Идентификатор ресурса 5408 + } 5409 + ], 5410 + "states": [ ~/~/ Ключевые даты развития поля 5411 + { 5412 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5413 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 5414 + } 5415 + ] 5416 + } 5417 + ], 5418 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5419 + "counts": { 5420 + "fieldOperations": 0, ~/~/ Количество операций на поле 5421 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5422 + "facts": 0 ~/~/ Счётчик факта 5423 + }, 5424 + "planComment": "string", ~/~/ Комментарий к полю 5425 + "productivity": 0, ~/~/ Урожайность. 5426 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5427 +))) 5428 + 5429 +((( 5430 +((( 5431 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5432 + "year": 0, ~/~/ Год поля 5433 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5434 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5435 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5436 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5437 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5438 + "id": 0, ~/~/ Идентификатор объекта геозоны 5439 + "name": "string", ~/~/ Название объекта геозоны 5440 + "type": 0, ~/~/ Тип объекта геозоны 5441 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5442 + "fname": "string", ~/~/ Имя файла 5443 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5444 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5445 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5446 + "description": "string", ~/~/ Описание объекта геозоны 5447 + "area": 0, ~/~/ Площадь, м2 5448 + "perimetr": 0, ~/~/ Периметр, м 5449 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5450 +} 5451 +))) 5452 + 5453 + 5454 +== **Удаление существующего поля** == 5455 + 5456 +(% class="box errormessage" %) 5457 +((( 5458 +**DELETE /api/v3/agroLands/{id}** 5459 +))) 5460 + 5461 +Пример запроса: 5462 +id ~/~/ Идентификатор поля 5463 + 5464 +Пример ответа: 5465 + 5466 +((( 5467 +200 ~/~/ Успех 5468 +))) 5469 + 5470 +((( 5471 + 5472 +))) 5473 + 5474 +((( 5475 +((( 5476 +((( 5477 + 5478 +))) 5479 + 5480 +((( 5481 +== **Изменение поля** == 5482 + 5483 +(% class="box infomessage" %) 5484 +((( 5485 +**PUT /api/v3/agroLands** 5486 +))) 5487 + 5488 +Пример запроса: 5489 + 5490 +((( 5491 +((( 5492 +{ 5493 + "id": 0, ~/~/ Идентификатор поля 5494 + "extId": "string", ~/~/ ExtId 5495 + "shape": "string", ~/~/ Форма поля 5496 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5497 + "display": "string", ~/~/ Настройки отображения 5498 + "year": 0, ~/~/ Год поля 5499 + "name": "string", ~/~/ Наименование 5500 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5501 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5502 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5503 + "planComment": "string", ~/~/Комментарий к полю 5504 + "cropRotations": [ ~/~/ Данные по севообороту 5505 + { 5506 + "landId": 0, ~/~/ ID поля 5507 + "landName": "string", ~/~/ Название поля 5508 + "year": 0, ~/~/ Год урожая 5509 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5510 + "cultureName": "string", ~/~/ Название культуры 5511 + "productivity": 0, ~/~/ Урожайность 5512 + "area": 0, ~/~/ Площадь поля, Га. 5513 + "total": 0, ~/~/ Валовый сбор 5514 + "productivityFact": 0, ~/~/ Фактическая урожайность 5515 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5516 + "totalFact": 0, ~/~/ Фактический валовый сбор 5517 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5518 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5519 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5520 + "isyearplan": true, 5521 + "comment": "string" ~/~/ Комментарий 5522 + } 5523 + ], 5524 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5525 +} 5526 +))) 5527 +))) 5528 + 5529 +((( 5530 + 5531 +))) 5532 + 5533 +Пример ответа: 5534 + 5535 +((( 5536 +((( 5537 +((( 5538 +{ 5539 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5540 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5541 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5542 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5543 + "cropRotations": [ ~/~/ Данные по севообороту 5544 + { 5545 + "landId": 0, ~/~/ ID поля 5546 + "landName": "string", ~/~/ Название поля 5547 + "year": 0, ~/~/ Год урожая 5548 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5549 + "cultureName": "string", ~/~/ Название культуры 5550 + "productivity": 0, ~/~/ Урожайность 5551 + "area": 0, ~/~/ Площадь поля, Га 5552 + "total": 0, ~/~/ Валовый сбор 5553 + "productivityFact": 0, ~/~/ Фактическая урожайность 5554 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5555 + "totalFact": 0, ~/~/ Фактический валовый сбор 5556 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5557 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5558 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5559 + "isyearplan": true, ~/~/ 5560 + "comment": "string" ~/~/ Комментарий 5561 + } 5562 + ], 5563 + "cropVegetation": [ ~/~/ История вегетации поля 5564 + { 5565 + "values": [ ~/~/ Данные вегетации и состояния посева 5566 + { 5567 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5568 + "ndvi": 0 ~/~/ Индекс вегетации 5569 + } 5570 + ], 5571 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5572 + { 5573 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5574 + "type": "string", ~/~/ Тип 5575 + "pictureid": "string" ~/~/ Идентификатор ресурса 5576 + } 5577 + ], 5578 + "states": [ ~/~/ Ключевые даты развития поля 5579 + { 5580 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5581 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5582 + } 5583 + ] 5584 + } 5585 + ], 5586 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5587 + "counts": { 5588 + "fieldOperations": 0, ~/~/ Количество операций на поле 5589 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5590 + "facts": 0 ~/~/ Счётчик факта 5591 + }, 5592 + "planComment": "string", ~/~/ Комментарий к полю 5593 + "productivity": 0, ~/~/ Урожайность. 5594 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5595 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5596 + "year": 0, ~/~/ Год поля 5597 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5598 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5599 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5600 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5601 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5602 + "id": 0, ~/~/ Идентификатор объекта геозоны 5603 + "name": "string", ~/~/ Название объекта геозоны 5604 + "type": 0, ~/~/ Тип объекта геозоны 5605 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5606 + "fname": "string", ~/~/ Имя файла 5607 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5608 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5609 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5610 + "description": "string", ~/~/ Описание объекта геозоны 5611 + "area": 0, ~/~/ Площадь, м2 5612 + "perimetr": 0, ~/~/ Периметр, м 5613 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5614 +} 5615 +))) 5616 +))) 5617 +))) 5618 +))) 5619 +))) 5620 + 5621 + 5622 +== **Редактирование года урожая ** == 5623 + 5624 +(% class="box successmessage" %) 5625 +((( 5626 +**POST /api/v3/agroLands/updateOpenCloseYear** 5627 +))) 5628 + 5629 +Пример запроса: 5630 + 5631 +((( 5632 +((( 5633 +{ 5634 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5635 + 0 5636 + ], 5637 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5638 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5639 +} 5640 +))) 5641 + 5642 + 5643 +))) 5644 + 5645 +Пример ответа: 5646 + 5647 +((( 5648 +((( 5649 +{ 5650 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5651 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5652 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5653 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5654 + "cropRotations": [ ~/~/ Данные по севообороту 5655 + { 5656 + "landId": 0, ~/~/ ID поля 5657 + "landName": "string", ~/~/ Название поля 5658 + "year": 0, ~/~/ Год урожая 5659 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5660 + "cultureName": "string", ~/~/ Название культуры 5661 + "productivity": 0, ~/~/ Урожайность 5662 + "area": 0, ~/~/ Площадь поля, Га. 5663 + "total": 0, ~/~/ Валовый сбор 5664 + "productivityFact": 0, ~/~/ Фактическая урожайность 5665 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5666 + "totalFact": 0, ~/~/ Фактический валовый сбор 5667 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5668 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5669 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5670 + "isyearplan": true, ~/~/ 5671 + "comment": "string" ~/~/ Комментарий 5672 + } 5673 + ], 5674 + "cropVegetation": [ ~/~/ История вегетации поля 5675 + { 5676 + "values": [ ~/~/ Данные вегетации и состояния посева 5677 + { 5678 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5679 + "ndvi": 0 ~/~/ Индекс вегетации 5680 + } 5681 + ], 5682 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5683 + { 5684 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5685 + "type": "string", ~/~/ Тип 5686 + "pictureid": "string" ~/~/ Идентификатор ресурса 5687 + } 5688 + ], 5689 + "states": [ ~/~/ Ключевые даты развития поля 5690 + { 5691 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5692 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5693 + } 5694 + ] 5695 + } 5696 + ], 5697 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5698 + "counts": { 5699 + "fieldOperations": 0, ~/~/ Количество операций на поле 5700 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5701 + "facts": 0 ~/~/ Счётчик факта 5702 + }, 5703 + "planComment": "string", ~/~/ Комментарий к полю 5704 + "productivity": 0, ~/~/ Урожайность. 5705 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5706 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5707 + "year": 0, ~/~/ Год поля 5708 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5709 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5710 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5711 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5712 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5713 + "id": 0, ~/~/ Идентификатор объекта геозоны 5714 + "name": "string", ~/~/ Название объекта геозоны 5715 + "type": 0, ~/~/ Тип объекта геозоны 5716 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5717 + "fname": "string", ~/~/ Имя файла 5718 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5719 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5720 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5721 + "description": "string", ~/~/ Описание объекта геозоны 5722 + "area": 0, ~/~/ Площадь, м2 5723 + "perimetr": 0, ~/~/ ериметр, м 5724 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5725 +} 5726 +))) 5727 + 5728 + 5729 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5730 +))) 5731 +))) 5732 +))) 5733 + 5734 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 5735 + 5736 + 5737 +(% class="box infomessage" %) 5738 +((( 5739 +**GET api/v3/Vehicles/recyclebin/all** 5740 +))) 5741 + 5742 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 5743 + 5744 +Параметр запроса: {parentId} - идентификатор агента 5745 + 5746 +В заголовках запроса: X-Auth: Токен авторизации 5747 + 5748 +Ответ: 5749 + 5750 +[ 5751 + { 5752 + "recordTime": "", ~/~/Время записи 5753 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5754 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5755 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5756 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5757 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5758 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5759 + "items": [ ~/~/ 5760 +nullable: true ~/~/Детали 5761 + { 5762 + "name": "string", ~/~/наименование столбца 5763 + "value": "string" ~/~/содержание столбца 5764 + } 5765 + ] 5766 + }, 5767 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5768 + "string" 5769 + ] 5770 + } 5771 +] 5772 + 5773 + 5774 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) == 5775 + 5776 +(% class="box infomessage" %) 5777 +((( 5778 +**POST api/v3/Vehicles/recyclebin/erase** 5779 +))) 5780 + 5781 +В заголовках запроса: X-Auth: Токен авторизации 5782 + 5783 +Пример запроса: 5784 + 5785 +[ 5786 +0 5787 +] 5788 + 5789 + 5790 +Пример ответа: 5791 + 5792 +[ 5793 +{ 5794 + "recordTime": "", ~/~/Время записи 5795 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5796 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5797 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5798 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5799 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5800 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5801 + "items": [ ~/~/Детали 5802 + { 5803 + "name": "", ~/~/Имя свойства 5804 + "value": "" ~/~/Значение свойства 5805 + } 5806 + ] 5807 + }, 5808 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5809 + "" 5810 + ] 5811 + } 5812 +] 5813 + 5814 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 5815 + 5816 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 5817 + 5818 +(% class="box infomessage" %) 5819 +((( 5820 +**POST api/v3/Vehicles/recyclebin/restore** 5821 +))) 5822 + 5823 +В заголовках запроса: X-Auth: Токен авторизации 5824 + 5825 +Параметры в теле запроса (JSON): 5826 + 5827 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5828 + 5829 +В заголовках запроса: X-Auth: Токен авторизации 5830 + 5831 + 5832 +Пример запроса: 5833 + 5834 +((( 5835 +[ 5836 +))) 5837 + 5838 +((( 5839 + 0 5840 +))) 5841 + 5842 +((( 5843 +] 5844 +))) 5845 + 5846 + 5847 +Пример ответа: 5848 + 5849 +[ 5850 +{ 5851 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5852 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5853 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5854 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5855 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5856 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5857 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5858 + "items": [ ~/~/Детали 5859 + { 5860 + "name": "string", ~/~/Имя свойства 5861 + "value": "string" ~/~/Значение свойства 5862 + } 5863 + ] 5864 + }, 5865 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5866 + "string" 5867 + ] 5868 + } 5869 +] 5870 + 5871 + 5872 += **Раздел: Журнал заданий ** = 5873 + 5874 + 5875 +== **Создание задания в Журнале заданий** == 5876 + 5877 +(% class="box infomessage" %) 5878 +((( 5879 +**POST /api/v3/vehicletasks** 5880 +))) 5881 + 5882 +Пример запроса: 5883 + 5884 +((( 5885 +{ 5886 + "vehicleId": 0, ~/~/ Идентификатор ТС 5887 + "description": "string", ~/~/ Описание 5888 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5889 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5890 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы 5891 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы 5892 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5893 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5894 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5895 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5896 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5897 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5898 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5899 + "cost": { 5900 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5901 + "Name": "string", ~/~/ Наименование 5902 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection ) 5903 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5904 + "Norm": 0 ~/~/ Норма внесения 5905 + }, 5906 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 5907 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5908 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания 5909 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления 5910 + "deleted": true, ~/~/ Признак удаления 5911 + "extId": "string", 5912 + "GeoIds": [ ~/~/ Cвязанные поля 5913 + 0 5914 + ] 5915 +} 5916 +))) 5917 + 5918 + 5919 +Пример ответа: 5920 + 5921 +{ 5922 + "vehicleId": 0, ~/~/ Идентификатор ТС 5923 + "description": "string", ~/~/ Описание 5924 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5925 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5926 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5927 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5928 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5929 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5930 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5931 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5932 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5933 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5934 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5935 + "cost": { 5936 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5937 + "Name": "string", ~/~/ Наименование 5938 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5939 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5940 + "Norm": 0 ~/~/ Норма внесения 5941 + }, 5942 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5943 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5944 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5945 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5946 + "deleted": true, ~/~/ Признак удаления 5947 + "extId": "string", ~/~/ ExtId 5948 + "GeoIds": [ ~/~/ Связанные поля 5949 + 0 5950 + ] 5951 +} 5952 + 5953 + 5954 +== **Редактирование задания в Журнале заданий** == 5955 + 5956 +(% class="box successmessage" %) 5957 +((( 5958 +**PUT /api/v3/vehicletasks** 5959 +))) 5960 + 5961 +Пример запроса: 5962 + 5963 +((( 5964 +{ 5965 + "vehicleId": 0, ~/~/ Идентификатор ТС 5966 + "description": "string", ~/~/ Описание 5967 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5968 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5969 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы 5970 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы 5971 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5972 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5973 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5974 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5975 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5976 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5977 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5978 + "cost": { 5979 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5980 + "Name": "string", ~/~/ Наименование 5981 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5982 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5983 + "Norm": 0 ~/~/ Норма внесения 5984 + }, 5985 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5986 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5987 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания 5988 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления 5989 + "deleted": true, ~/~/ Признак удаления 5990 + "extId": "string", ~/~/ ExtId 5991 + "GeoIds": [ ~/~/ Связанные поля 5992 + 0 5993 + ] 5994 +} 5995 +))) 5996 + 5997 + 5998 +Пример ответа: 5999 + 6000 +{ 6001 + "vehicleId": 0, ~/~/ Идентификатор ТС 6002 + "description": "string", ~/~/ Описание 6003 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 6004 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 6005 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 6006 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 6007 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 6008 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 6009 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 6010 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 6011 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 6012 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 6013 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 6014 + "cost": { 6015 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 6016 + "Name": "string", ~/~/ Наименование 6017 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 6018 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 6019 + "Norm": 0 ~/~/ Норма внесения 6020 + }, 6021 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6022 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 6023 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 6024 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 6025 + "deleted": true, ~/~/ Признак удаления 6026 + "extId": "string", ~/~/ ExtId 6027 + "GeoIds": [ ~/~/ Связанные поля 6028 + 0 6029 + ] 6030 +} 6031 + 6032 + 6033 +== **Удаление задания в Журнале заданий** == 6034 + 6035 +(% class="box warningmessage" %) 6036 +((( 6037 +**DELETE /api/v3/vehicletasks** 6038 +))) 6039 + 6040 +Пример запроса: 6041 + 6042 +((( 6043 +[ 6044 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 6045 +] 6046 +))) 6047 + 6048 +((( 6049 + 6050 +))) 6051 + 6052 +Пример ответа: 6053 + 6054 +{ 6055 + "vehicleId": 0, ~/~/ Идентификатор ТС 6056 + "description": "string", ~/~/ Описание 6057 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 6058 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 6059 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 6060 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 6061 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 6062 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 6063 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 6064 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 6065 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 6066 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 6067 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 6068 + "cost": { 6069 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 6070 + "Name": "string", ~/~/ Наименование 6071 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 6072 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 6073 + "Norm": 0 ~/~/ Норма внесения 6074 + }, 6075 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6076 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 6077 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 6078 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 6079 + "deleted": true, ~/~/ Признак удаления 6080 + "extId": "string", ~/~/ ExtId 6081 + "GeoIds": [ ~/~/ Связанные поля 6082 + 0 6083 + ] 6084 +} 6085 + 6086 + 6087 +== **Получение списка Журнала заданий** == 6088 + 6089 +(% class="box infomessage" %) 6090 +((( 6091 +**POST /api/v3/vehicletasks/getbyperiod** 6092 +))) 6093 + 6094 +Пример запроса: 6095 + 6096 +((( 6097 +{ 6098 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода. 6099 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода. 6100 + "TimeZone": 0, ~/~/ Часовой пояс. 6101 + "OperationsIds": [ ~/~/ Идентификаторы видов работ для фильтрации журнала 6102 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 6103 + ], 6104 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала 6105 + 0 6106 + ], 6107 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала 6108 + 0 6109 + ], 6110 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска. 6111 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 6112 +} 6113 +))) 6114 + 6115 + 6116 +Пример ответа: 6117 + 6118 +((( 6119 +{ 6120 + "total": 0, ~/~/ Общее количество записей 6121 + "pages": 0, ~/~/ Общее количество страниц 6122 + "currentPage": 0, ~/~/ Текущая страница 6123 + "items": [ ~/~/ Записи 6124 + { 6125 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 6126 + "isGroup": true, ~/~/ Вид задания (true - групповое, иначе - одиночное). 6127 + "name": "string", ~/~/ Название задания. 6128 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc 6129 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc 6130 + "workKind": "string", ~/~/ Вид работ 6131 + "techOp": "string", ~/~/ Тех. операция 6132 + "trailerModel": "string", ~/~/ Модель агрегата 6133 + "width": "string", ~/~/ Ширина, м 6134 + "speed": "string", ~/~/ Тех. скорость 6135 + "fields": "string", ~/~/ Поля 6136 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га) 6137 + "vehicles": "string", ~/~/ Объект-модель 6138 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов) 6139 + "drivers": "string", ~/~/ Водители 6140 + "tmc": "string", ~/~/ ТМЦ 6141 + "client": "string", ~/~/ Клиент 6142 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 6143 + "dep": "string", ~/~/ Подразделение 6144 + "geoIds": [ ~/~/ Связанные поля 6145 + 0 6146 + ] 6147 + } 6148 + ] 6149 +} 6150 +))) 6151 + 6152 + 6153 += **Раздел: Роли** = 6154 + 6155 +== **Получение списка клиентских и системных ролей пользователя ** == 6156 + 6157 +(% class="box successmessage" %) 6158 +((( 6159 +**POST /api/v3/groups/find** 6160 +))) 6161 + 6162 +Пример запроса: 6163 + 6164 +((( 6165 +{ 6166 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента содержащий пользовательские роли 6167 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей 6168 +} 6169 +))) 6170 + 6171 +((( 6172 + 6173 +))) 6174 + 6175 +((( 6176 +Пример ответа: 6177 +))) 6178 + 6179 +((( 6180 +((( 6181 +{ 6182 + "groups": [ ~/~/ Системные роли пользователя 6183 + { 6184 + "code": "string", ~/~/ Код роли. 6185 + "name": "string", ~/~/ Имя 6186 + "shortName": "string" ~/~/ Короткое имя 6187 + } 6188 + ], 6189 + "customGroups": [ ~/~/ Системные роли пользователя 6190 + { 6191 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор роли. 6192 + "name": "string", ~/~/ Наименование 6193 + "shortName": "string", ~/~/ Короткое наименование 6194 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор владельца 6195 + } 6196 + ] 6197 +} 6198 +))) 6199 +))) 6200 + 6201 +((( 6202 + 6203 +))) 6204 + 6205 +((( 6206 + 6207 +))) 6208 + 6209 += **Раздел: Локатор ** = 6210 + 6211 + 6212 +== **Получение списка локаторов, доступных пользователю ** == 6213 + 6214 +(% class="box infomessage" %) 6215 +((( 6216 +**GET /api/v3/locators ** 6217 +))) 6218 + 6219 +В заголовках запроса: X-Auth: Токен авторизации 6220 + 6221 + 6222 +Пример ответа: 6223 + 6224 +((( 6225 +((( 6226 +{ 6227 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6228 + 0 6229 + ], 6230 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6231 + 0 6232 + ], 6233 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6234 + 0 6235 + ], 6236 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 6237 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 6238 + "agentName": "string", ~/~/ Наименование агента. 6239 + "isEnabled": true, ~/~/ Активность 6240 + "created": "2025-05-26T11:31:05.399Z", ~/~/ Дата создания 6241 + "updated": "2025-05-26T11:31:05.399Z", ~/~/ Дата обновления 6242 + "name": "string", ~/~/ Наименование. 6243 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 6244 + "activationMode": 0, ~/~/ Определяет вид активации локаторов ( 0 - сейчас, 1 - запланировать на время) 6245 + "activationTime": "2025-05-26T11:31:05.399Z", ~/~/ Время активации 6246 + "validity": 0, ~/~/ Значение срока действия 6247 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 6248 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6249 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 6250 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 6251 + "url": "string", ~/~/ Ссылка 6252 + "language": 0, ~/~/ ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6253 + "showVehicleName": true, ~/~/ Наименование объекта 6254 + "showVehicleDirection": true, ~/~/ Направление движения на треке 6255 + "allowTrackReport": true, ~/~/ Трек 6256 + "showTrackTracing": true, ~/~/ Трассировка трека 6257 + "showSensors": true, ~/~/ Датчик 6258 + "availableMapLayers": [ ~/~/ Слои на карте 6259 + 0 6260 + ] 6261 +} 6262 +))) 6263 +))) 6264 + 6265 + 6266 +((( 6267 +((( 6268 + 6269 +))) 6270 +))) 6271 + 6272 + 6273 +== **Создание локатора** == 6274 + 6275 +(% class="box successmessage" %) 6276 +((( 6277 +**POST /api/v3/locators** 6278 +))) 6279 + 6280 +Пример запроса: 6281 + 6282 +((( 6283 +{ 6284 + "isEnabled": true, ~/~/ Активность 6285 + "name": "string", ~/~/ Наименование локатора 6286 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 6287 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 6288 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6289 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6290 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6291 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 6292 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6293 + 0 6294 + ], 6295 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6296 + 0 6297 + ], 6298 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6299 + 0 6300 + ], 6301 + "showVehicleName": true, ~/~/ Наименование объекта 6302 + "showVehicleDirection": true, ~/~/ Направление движения на треке 6303 + "allowTrackReport": true, ~/~/ Трек 6304 + "showTrackTracing": true, ~/~/ Трассировка трека 6305 + "showSensors": true, ~/~/ Датчик 6306 + "availableMapLayers": 1 [ ~/~/ Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 6307 + ] 6308 +} 6309 +))) 6310 + 6311 + 6312 +Пример ответа: 6313 + 6314 +((( 6315 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора 6316 +))) 6317 + 6318 + 6319 +== **Выводит список локаторов ** == 6320 + 6321 +(% class="box successmessage" %) 6322 +((( 6323 +**POST /api/v3/locators/find** 6324 +))) 6325 + 6326 +Пример запроса: 6327 + 6328 +((( 6329 +{ 6330 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор клиента 6331 +} 6332 +))) 6333 + 6334 +((( 6335 + 6336 +))) 6337 + 6338 +((( 6339 +{ 6340 + "isEnabled": true, ~/~/ Активность 6341 + "name": "string", ~/~/ Наименование локатора 6342 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 6343 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 6344 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6345 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6346 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6347 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 6348 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6349 + 0 6350 + ], 6351 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6352 + 0 6353 + ], 6354 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6355 + 0 6356 + ], 6357 + "showVehicleName": true, ~/~/ Наименование объекта 6358 + "showVehicleDirection": true, ~/~/ Направление движения на треке 6359 + "allowTrackReport": true, ~/~/ Трек 6360 + "showTrackTracing": true, ~/~/ Трассировка трека 6361 + "showSensors": true, ~/~/ Датчик 6362 + "availableMapLayers": 1 [ ~/~/ Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 6363 + ] 6364 +} 6365 +))) 6366 + 6367 + 6368 +Пример ответа: 6369 + 6370 +((( 6371 +[ 6372 + { 6373 + "vehiclesCount": 0, ~/~/ Количество объектов. 6374 + "geozonesCount": 0, ~/~/ Количество геозон. 6375 + "fieldsCount": 0, ~/~/ Количество полей. 6376 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 6377 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 6378 + "agentName": "string", ~/~/ Наименование агента. 6379 + "isEnabled": true, ~/~/ Активность локатора 6380 + "created": "2025-07-03T12:57:58.738Z", ~/~/ Дата создания 6381 + "updated": "2025-07-03T12:57:58.738Z", ~/~/ Дата обновления 6382 + "name": "string", ~/~/ Наименование локатора 6383 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 6384 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6385 + "activationTime": "2025-07-03T12:57:58.738Z", ~/~/ Дата и время активации правила (UTC) 6386 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6387 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 6388 + "autoProlongation": true, ~/~/ Автоматическая пролонгация 6389 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 6390 + "creatorUserName": "string", ~/~/ Наименование пользователя создавшего локатора 6391 + "url": "string", ~/~/ ссылка на локатор 6392 + "language": 1, ~/~/ Язык локатора(1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6393 + "showVehicleName": true, ~/~/ Наименование объекта 6394 + "showVehicleDirection": true, ~/~/ Направление движения на треке 6395 + "allowTrackReport": true, ~/~/ Трек 6396 + "showTrackTracing": true, ~/~/ Трассировка трека 6397 + "showSensors": true, ~/~/ Датчик 6398 + "availableMapLayers": [ ~/~/Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 6399 + 6400 + 0 6401 + ] 6402 + } 6403 +] 6404 +))) 6405 + 6406 + 6407 + 6408 +== **Изменение локатора** == 6409 + 6410 +(% class="box infomessage" %) 6411 +((( 6412 +**PUT /api/v3/locators** 6413 +))) 6414 + 6415 +Пример запроса: 6416 + 6417 +((( 6418 +{ 6419 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6420 + "isEnabled": true, ~/~/ Активность 6421 + "name": "string", ~/~/ Наименование 6422 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6423 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 6424 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6425 + "autoProlongation": true, ~/~/ Автопродление срока действия 6426 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6427 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6428 + 0 6429 + ], 6430 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6431 + 0 6432 + ], 6433 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6434 + 0 6435 + ], 6436 + "showVehicleName": true, ~/~/ Наименование объекта 6437 + "showVehicleDirection": true, ~/~/ Направление движения на треке 6438 + "allowTrackReport": true, ~/~/ Трек 6439 + "showTrackTracing": true, ~/~/ Трассировка трека 6440 + "showSensors": true, ~/~/ Датчик 6441 + "availableMapLayers": 1 [ ~/~/ Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 6442 + ] 6443 +} 6444 + 6445 + 6446 +))) 6447 + 6448 +Пример ответа: 6449 + 6450 +200 ~/~/ Success 6451 + 6452 + 6453 +== **Удалить локатор** == 6454 + 6455 +(% class="box warningmessage" %) 6456 +((( 6457 +**DELETE /api/v3/locators** 6458 +))) 6459 + 6460 +Пример запроса: 6461 + 6462 +((( 6463 +[ 6464 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора 6465 +] 6466 +))) 6467 + 6468 + 6469 + 6470 += **Раздел: Яндекс Маршруты** = 6471 + 6472 + 6473 +== **Возвращение списка маршрутов** == 6474 + 6475 +(% class="box infomessage" %) 6476 +((( 6477 +**GET /api/v3/TransportRoutes** 6478 +))) 6479 + 6480 +Пример запроса: 6481 +Id ~/~/ Идентификатор поля 6482 + 6483 + 6484 +Пример ответа: 6485 + 6486 +((( 6487 +[ 6488 + { 6489 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 6490 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6491 + "name": "string", ~/~/ Наименование маршрута. 6492 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6493 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6494 + 0 6495 + ] 6496 + } 6497 +] 6498 +))) 6499 + 6500 + 6501 + 6502 +== **Добавить маршрут** == 6503 + 6504 +(% class="box infomessage" %) 6505 +((( 6506 +**POST /api/v3/TransportRoutes** 6507 +))) 6508 + 6509 +Пример запроса: 6510 +{ 6511 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6512 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6513 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6514 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6515 + 0 6516 + ] 6517 +} 6518 + 6519 + 6520 +Пример ответа: 6521 + 6522 +((( 6523 +{ 6524 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6525 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6526 + "name": "string", ~/~/ Определяет наименование маршрута 6527 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6528 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6529 + 0 6530 + ] 6531 +} 6532 +))) 6533 + 6534 + 6535 +== **Обновление маршрута** == 6536 + 6537 +(% class="box successmessage" %) 6538 +((( 6539 +**PUT /api/v3/TransportRoutes** 6540 +))) 6541 + 6542 +Пример запроса: 6543 + 6544 +((( 6545 +{ 6546 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6547 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6548 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6549 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6550 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6551 + 0 6552 + ] 6553 +} 6554 +))) 6555 + 6556 + 6557 +Пример ответа: 6558 + 6559 +((( 6560 +{ 6561 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6562 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6563 + "name": "string", ~/~/ Определяет наименование маршрута 6564 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6565 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6566 + 0 6567 + ] 6568 +} 6569 +))) 6570 + 6571 + 6572 +== **Получить связки маршрутов ТС** == 6573 + 6574 +(% class="box infomessage" %) 6575 +((( 6576 +**POST /api/v3/TransportRoutes/getroutesvehicles** 6577 +))) 6578 + 6579 +Пример запроса: 6580 + 6581 +((( 6582 +[ 6583 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ идентификатор маршрута 6584 +] 6585 +))) 6586 + 6587 + 6588 +Пример ответа: 6589 + 6590 +((( 6591 +[ 6592 + { 6593 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС 6594 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута 6595 + } 6596 +] 6597 +))) 6598 + 6599 + 6600 +== **Удалить маршрут** == 6601 + 6602 +(% class="box warningmessage" %) 6603 +((( 6604 +**DELETE /api/v3/TransportRoutes/{id}** 6605 +))) 6606 + 6607 +Пример запроса: 6608 +Id ~/~/ Идентификатор поля 6609 + 6610 + 6611 + 6612 += **Раздел: Управление доступа к машинам** = 6613 + 6614 + 6615 +== Получение списка транспортных средств видимых пользователю == 6616 + 6617 +(% class="box infomessage" %) 6618 +((( 6619 +**GET /api/v3/UserVisibleVehicles/{userId}** 6620 +))) 6621 + 6622 +Пример ответа: 6623 + 6624 +((( 6625 +{ 6626 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6627 + 0 6628 + ] 6629 +} 6630 +))) 6631 + 6632 + 6633 + 6634 +== Задает видимость транспортных средств пользователю == 6635 + 6636 +(% class="box infomessage" %) 6637 +((( 6638 +**POST /api/v3/UserVisibleVehicles** 6639 +))) 6640 + 6641 +Пример запроса: 6642 + 6643 +((( 6644 +((( 6645 +{ 6646 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя 6647 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6648 + 0 6649 + ] 6650 +} 6651 +))) 6652 + 6653 +((( 6654 + 6655 +))) 6656 + 6657 +((( 6658 + 6659 +))) 6660 + 6661 +((( 6662 +Пример ответа : 6663 +))) 6664 + 6665 +((( 6666 + 6667 +))) 6668 + 6669 +((( 6670 +200 ~/~/ Success 6671 +))) 6672 +))) 6673 + 6674 + 6675 +== **Получение перечня моделей ** == 6676 + 6677 +(% class="box successmessage" %) 6678 +((( 6679 +**POST /api/v3/models/find** 6680 +))) 6681 + 6682 +Пример запроса: 6683 + 6684 +((( 6685 +((( 6686 +{ 6687 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6688 + "name": "string", ~/~/ Наименование локатора 6689 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей 6690 +))) 6691 + 6692 + 6693 + 6694 + Пример ответа: 6695 + 6696 + 6697 +((( 6698 +[ 6699 + { 6700 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6701 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя, для которого надо получить данные 6702 + "parentName": "string", ~/~/ Наименование пользователя, для которого надо получить данные 6703 + "name": "string", ~/~/ Наименование локатора 6704 + "modelType": 0 ~/~/ Типы моделей транспортных средств (0 - None, 1 - Агро, 2 - Перевозчик, 3 - Машины) 6705 + } 6706 +] 6707 +))) 6708 +))) 6709 + 6710 + 6711 + 6712 + 4043 4043 (% class="box" lang="en-US" style="text-align: center;" %) 4044 4044 ((( 4045 4045 (% 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]] **