Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/04/24 15:46
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. krainovim1 +XWiki.Gadmin - Content
-
... ... @@ -1,5 +1,22 @@ 1 1 (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %) 2 2 ((( 3 +(% class="box warningmessage" %) 4 +((( 5 +(% class="mark" %)##Для обеспечения бесперебойной работы команд и серверного оборудования ГЛОНАССSoft убедительно 6 +просим вас соблюдать несколько простых правил при использовании API-команд:## 7 +))) 8 + 9 +* Формировать не более 3 отчётов одновременно. 10 +* Ограничить количество активных сессий одного пользователя с одного IP-адреса до 50. 11 + 12 +В случае нарушения этих правил, ГЛОНАССSoft оставляет за собой право принудительно остановить выполнение запросов с определенных IP адресов. 13 + 14 +(% class="box infomessage" %) 15 +((( 16 +**Чтобы избежать блокировки** из-за превышения количества авторизаций, вам необходимо использовать токен авторизации, полученный с помощью метода /auth/login, во всех последующих запросах к API. Этот токен имеет ограниченный срок действия, который можно изменить, настроив параметр "Длительность сессии" в настройках пользователя. 17 +\\При выполнении запросов с одним и тем же токеном его срок действия автоматически продлевается. Это позволяет пройти авторизацию только один раз и использовать полученный токен во всех последующих запросах без необходимости повторного входа в систему. 18 +))) 19 + 3 3 **Содержание страницы:** 4 4 ))) 5 5 ... ... @@ -14,11 +14,20 @@ 14 14 15 15 Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de. 16 16 17 -(% style="color:#000000" %)− (%%)При **редактировании** необходимо передавать все параметры пользователяв теле запроса! Те параметры, значения которых не будут переданы - будут стерты!34 +(% style="color:#000000" %)− (%%)При **редактировании** любой записи (пользователь, объект и т.д) необходимо передавать все параметры записи в теле запроса! Те параметры, значения которых не будут переданы - будут стерты! 18 18 36 + 37 +(% style="color:#000000; font-size:16px" %)**Рекомендации** 38 + 39 +- Для запросов по API рекомендуется наделить пользователя ролью **Администратора партнера**, в противном случае при выполнении некоторых запросов у него не будет хватать прав (чаще всего сталкиваются с отсутствием прав при запросах сообщений от терминала за период). 40 + 19 19 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Авторизация**(%%) = 20 20 21 -== (% style="color:#000000; font-size:16px" %)**Авторизация**(%%) == 43 +(% class="box warningmessage" id="H41043244243E44043843743044643844F" %) 44 +((( 45 +(% style="color:#000000; font-size:16px" %)**Авторизация**(%%) 46 +(% style="color:#000000; font-size:16px" %)Адрес сервера всегда следует указывать именно тот, по которому происходит вход в СМТ (https:~/~/hosting.glonasssoft.ru/ , [[https:~~/~~/regions.glonasssoft.ru/>>https://regions.glonasssoft.ru/]] или другие) 47 +))) 22 22 23 23 (% class="box successmessage" %) 24 24 ((( ... ... @@ -44,12 +44,8 @@ 44 44 45 45 (% lang="en-US" %) 46 46 (% style="color:#000000" %){ 47 - 48 -(% lang="en-US" %) 49 -(% style="color:#000000" %) "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 50 - "User": "testuser" , ~/~/ имя пользователя 51 - 52 -(% lang="en-US" %) 73 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 74 + "User": "testuser" , ~/~/ имя пользователя(%%) 53 53 } 54 54 55 55 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. ... ... @@ -60,6 +60,9 @@ 60 60 |(% style="width:215px" %)(% style="color:#000000" %)AuthId|(% style="width:861px" %)Токен авторизации 61 61 |(% style="width:215px" %)(% style="color:#000000" %)User|(% style="width:861px" %)Логин пользователя 62 62 85 +(% class="wikigeneratedid" %) 86 +Также имеется возможность сквозной (/бесшовной) авторизации. Для этого к ссылке ( [[https:~~/~~/hosting.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]] / [[https:~~/~~/regions.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]]) добавьте токен авторизации - {AuthId}, чтобы попасть сразу в клиента ([[https:~~/~~/hosting.glonasssoft.ru/login?authId={AUTH_ID}>>https://hosting.glonasssoft.ru/login?authId={AUTH_ID}]]) 87 + 63 63 == (% style="color:#000000; font-size:16px" %)**Проверка авторизации**(%%) == 64 64 65 65 (% class="box infomessage" %) ... ... @@ -98,29 +98,41 @@ 98 98 Запрос должен содержать данные параметра "**agentId**" 99 99 100 100 (% style="color:#000000" %)Ответ: 126 + 127 +((( 101 101 { 102 - "agentId": "", (%%) 103 - "parentId": "", 104 - "parentName": "string", 105 - "name": "string", 106 - "fullName": "string", 107 - "agentInfoType": 0, 108 - "isForeign": true/false, 109 - "district": "string", 110 - "region": "string", 111 - "city": "string", 112 - "inn": "string", 113 - "kpp": "string", 114 - "address": "string", 115 - "addressFact": "string", 116 - "email": "string", 117 - "director": "string", 118 - "bankName": "string", 119 - "bankBIK": "string", 120 - "bankRS": "string", 121 - "bankKS": "string" 122 - } 129 + "agentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID клиента 130 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID родителя 131 + "parentName": "string", ~/~/ Наименование агента 132 + "name": "string", ~/~/ Имя клиента 133 + "fullName": "string", ~/~/ ФИО клиента 134 + "agentInfoType": 0, ~/~/ Тип клиента ((% style="color:#000000" %)0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор(%%)) 135 + "isForeign": true, ~/~/ Флаг "Иностранный контрагент" 136 + "district": "string", ~/~/ Район 137 + "region": "string", ~/~/ Область 138 + "city": "string", ~/~/ Город 139 + "email": "string", ~/~/ Email 140 + "director": "string", ~/~/ Руководитель 141 + "RegionalData": [ ~/~/ Определяет региональные сведения. 142 + { 143 + "Country": 0, ~/~/ Страна 144 + "groups": [ ~/~/ Список групп 145 + { 146 + "groupId": "string", ~/~/ Уникальный идентификатор группы 147 + "fields": [ ~/~/ Список значений полей 148 + { 149 + "name": "string", ~/~/ Имя поля формы 150 + "value": "string" ~/~/ Значение поля формы 151 + } 152 + ] 153 + } 154 + ] 155 + } 156 + ] 157 +} 158 +))) 123 123 160 + 124 124 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 125 125 |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 126 126 |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя ... ... @@ -173,7 +173,6 @@ 173 173 { 174 174 "agentId": "",(% style="color:#000000" %) (%%) 175 175 "parentId": "", 176 - "parentName": "string", 177 177 "name": "string", 178 178 "fullName": "string", 179 179 "agentInfoType": 0, ... ... @@ -184,7 +184,6 @@ 184 184 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 185 185 |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 186 186 |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 187 -|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 188 188 |(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 189 189 |(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 190 190 |(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) ... ... @@ -228,7 +228,6 @@ 228 228 "bankKS": "string" ~/~/ корр. счёт 229 229 } 230 230 231 - 232 232 Ответ: 233 233 234 234 { ... ... @@ -356,6 +356,21 @@ 356 356 357 357 Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 358 358 393 +== (% style="color:#000000; font-size:16px" %)**Смена статуса клиента (активация/блокировка)**(%%) == 394 + 395 +(% class="box warningmessage" %) 396 +((( 397 +**PUT /api/v3/agents/{id}/changeStatus/{status}** 398 +))) 399 + 400 +Метод позволяет изменить статус клиента, указанного в запросе. 401 + 402 +В пути указывается GUID клиента и статус клиента. 403 + 404 +**status **- значение 0 - заблокирован, 1 - активен. 405 + 406 +Ответ: Code 204 407 + 359 359 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Пользователи**(%%) = 360 360 361 361 == (% style="color:#000000; font-size:16px" %)**Добавление пользователя**(%%) == ... ... @@ -407,7 +407,6 @@ 407 407 ], 408 408 "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 409 409 } 410 - 411 411 { 412 412 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 413 413 "lastName": "string", ... ... @@ -421,12 +421,8 @@ 421 421 422 422 (% style="text-align:left" %) 423 423 (% style="color:#000000; font-weight:normal" %)Ответ: 424 - 425 -(% style="text-align:left" %) 426 -(% style="color:#000000; font-weight:normal" %){ 427 - 428 -(% style="text-align:left" %) 429 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 472 +{ 473 + "id": "" , ~/~/ ID пользователя 430 430 "lastName": "" , ~/~/ Фамилия , 431 431 "firstName": "" , ~/~/ Имя 432 432 "position": "" , ~/~/ Должность ... ... @@ -443,11 +443,9 @@ 443 443 "kind": "" , ~/~/ тип аутентификации 444 444 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 445 445 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 490 +} 446 446 447 -(% style="text-align:left" %) 448 -(% style="color:#000000; font-weight:normal" %)} 449 449 450 - 451 451 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 452 452 453 453 (% class="box infomessage" %) ... ... @@ -467,19 +467,16 @@ 467 467 468 468 (% style="color:#000000" %)Параметры в теле запроса (JSON): 469 469 470 -(% style="color:#000000" %){ 471 - 512 +(% style="color:#000000" %){(%%) 472 472 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 473 473 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 474 474 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 475 475 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 476 - 477 477 (% style="color:#000000" %)} 478 478 479 479 (% style="color:#000000" %)Ответ: 480 480 481 481 (% style="color:#000000" %){ (%%) 482 - 483 483 "id": "" , ~/~/ идентификатор пользователя 484 484 "lastName": "" , ~/~/ фамилия 485 485 "firstName": "" , ~/~/ имя ... ... @@ -493,7 +493,6 @@ 493 493 "sessionDuration":"", ~/~/ длительность сессии в минутах 494 494 "status": "1", ~/~/ статус пользователя 495 495 "lastLogged": "", ~/~/ дата/время последней авторизации 496 - 497 497 (% style="color:#000000" %)} 498 498 499 499 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -567,10 +567,8 @@ 567 567 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 568 568 569 569 (% lang="en-US" style="text-align:left" %) 570 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 571 - 572 -(% lang="en-US" style="text-align:left" %) 573 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 608 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 609 + "id": "" , ~/~/ ID пользователя 574 574 "lastName": "" , ~/~/ фамилия 575 575 "firstName": "" , ~/~/ имя 576 576 "position": "" , ~/~/ должность ... ... @@ -592,9 +592,7 @@ 592 592 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 593 593 }, 594 594 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 595 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 596 - 597 -(% lang="en-US" style="text-align:left" %) 631 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 598 598 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 599 599 600 600 (% lang="en-US" style="text-align:left" %) ... ... @@ -601,10 +601,8 @@ 601 601 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 602 602 603 603 (% lang="en-US" style="text-align:left" %) 604 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 605 - 606 -(% lang="en-US" style="text-align:left" %) 607 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 638 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 639 + "id": "" , ~/~/ идентификатор пользователя 608 608 "lastName": "" , ~/~/ фамилия 609 609 "firstName": "" , ~/~/ имя 610 610 "position": "" , ~/~/ должность ... ... @@ -625,10 +625,8 @@ 625 625 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 626 626 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 627 627 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 660 +} 628 628 629 -(% lang="en-US" style="text-align:left" %) 630 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 631 - 632 632 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 633 633 634 634 (% class="box warningmessage" %) ... ... @@ -648,12 +648,10 @@ 648 648 649 649 (% style="color:#000000" %)Параметры в теле запроса (JSON): 650 650 651 -(% style="color:#000000" %){ 652 - 681 +(% style="color:#000000" %){(%%) 653 653 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 654 654 "description": "" , ~/~/ описание 655 655 "data": "" , ~/~/ данные, связанные со сменой статуса 656 - 657 657 (% style="color:#000000" %)} 658 658 659 659 (% style="text-align:left" %) ... ... @@ -675,7 +675,7 @@ 675 675 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 676 676 677 677 [ 678 - 706 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 679 679 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 680 680 ] 681 681 ... ... @@ -981,7 +981,7 @@ 981 981 982 982 Ответ: В случае успеха **Success 200** 983 983 984 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 1012 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 985 985 986 986 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 987 987 ... ... @@ -1010,6 +1010,17 @@ 1010 1010 1011 1011 ((( 1012 1012 { 1041 + 1042 +((( 1043 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1044 + "IsSackEnabled": true, ~/~/ Определяет, должен ли внутренний сервер отвечать устройству сообщением SACK при получении сообщения от устройства 1045 +))) 1046 + 1047 +((( 1048 + ~/~/Используется только на ТС с типом устройства quecklink gv56, quecklink gv58, quecklink 1049 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1050 +))) 1051 + 1013 1013 "vehicleId": "", ~/~/ ID объекта 1014 1014 "name": "", ~/~/ Имя объекта 1015 1015 "imei": "", ~/~/ IMEI объекта ... ... @@ -1017,19 +1017,15 @@ 1017 1017 "deviceTypeName": "", ~/~/ Название типа устройства 1018 1018 "sim1": "", ~/~/ Номер SIM1 1019 1019 "sim2": "", ~/~/ Номер SIM2 1020 - 1021 1021 "parentId": "", ~/~/ ID клиента-родителя 1022 1022 "parentName": "", ~/~/ Наименование клиента-родителя 1023 1023 "modelId": "", ~/~/ ID модели объекта 1024 1024 "modelName": "", ~/~/ Имя модели объекта 1025 - 1026 1026 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1027 1027 "unitName": "string", ~/~/ Наименование подразделения 1028 1028 "status": 0, ~/~/ Статус объекта 1029 - 1030 1030 "createdAt": "", ~/~/ Дата создания объекта 1031 1031 }, 1032 - 1033 1033 "customFields": [ ~/~/ Произвольные поля 1034 1034 { 1035 1035 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -1052,8 +1052,7 @@ 1052 1052 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1053 1053 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1054 1054 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1055 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1056 - 1090 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1057 1057 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1058 1058 "mileageCoeff": 0, ~/~/ коэффициент пробега 1059 1059 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1083,7 +1083,6 @@ 1083 1083 "retries": 0 ~/~/ Количество попыток 1084 1084 } 1085 1085 ], 1086 - 1087 1087 "sensors": [ ~/~/ Датчики 1088 1088 { 1089 1089 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1110,6 +1110,7 @@ 1110 1110 ], 1111 1111 "showInTooltip": true, ~/~/ Отображать в подсказке 1112 1112 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1146 + "color": "string", ~/~/ Код цвета датчиков 1113 1113 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1114 1114 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1115 1115 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1124,31 +1124,19 @@ 1124 1124 }, 1125 1125 1126 1126 ~/~/ Характерные для произвольного: 1127 - 1128 1128 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1129 - 1130 1130 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1131 - 1132 1132 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1133 - 1134 1134 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1135 - 1136 1136 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1137 - 1138 1138 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1139 - 1140 1140 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1141 - 1142 1142 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1143 - 1144 1144 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1145 - 1146 1146 ~/~/ "ValueOn": "Вкл.", 1147 - 1148 1148 ~/~/ "ValueOff": "Выкл." 1149 1149 "summaryMaxValue": 0 ~/~/ Макс. значение 1150 1150 } 1151 - 1152 1152 "drivers": [ ~/~/ Водители 1153 1153 { 1154 1154 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1157,7 +1157,6 @@ 1157 1157 "isDefault": true ~/~/ По умолчанию 1158 1158 } 1159 1159 ], 1160 - 1161 1161 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1162 1162 { 1163 1163 "id": "", ~/~/ ID задания ... ... @@ -1174,19 +1174,27 @@ 1174 1174 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1175 1175 } 1176 1176 ], 1177 - 1178 - "statusHistory": [ ~/~/ История статусов 1198 +"statusHistory": [ ~/~/ История статусов 1179 1179 { 1180 1180 "status": 0, 1181 1181 "date": "2023-05-22T09:57:39.562Z", 1182 1182 "description": "string", 1183 1183 "additionalInfo": "string" 1184 - } 1185 - ] 1186 1186 1205 +((( 1187 1187 } 1207 + ], 1208 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1209 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1188 1188 ))) 1189 1189 1212 +((( 1213 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1214 +} 1215 + 1216 +))) 1217 +))) 1218 + 1190 1190 (% style="text-align:left" %) 1191 1191 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 1192 1192 ... ... @@ -1193,6 +1193,75 @@ 1193 1193 (% style="text-align:left" %) 1194 1194 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1195 1195 1225 + 1226 +== **Отправить команду на терминал** == 1227 + 1228 +(% class="box successmessage" %) 1229 +((( 1230 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1231 +))) 1232 + 1233 +Команда для отправки на тс. 1234 + 1235 +{ 1236 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId) 1237 +"command": "", ~/~/ Текст отправляемой команды 1238 +"retries": "", ~/~/ Количество попыток отправки на терминал 1239 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 1240 +} 1241 + 1242 +В ответ получаем cmdid 1243 + 1244 + 1245 +== **Получить ответ на отправленную на ТС команду** == 1246 + 1247 +(% class="box infomessage" %) 1248 +((( 1249 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1250 +))) 1251 + 1252 +Идентификатор команды: cmdId 1253 + 1254 +Запрос от терминала на ответ команды 1255 + 1256 +Пример ответ от терминала: 1257 + 1258 +ID= "" ~/~/ идентификатор объекта 1259 +Soft="" ~/~/ версия софта 1260 +GPS=4 ~/~/ тип трекера 1261 +Time=11:05:43 28.06.24 ~/~/ время запроса 1262 +Lat=45.056221 ~/~/ широта 1263 +Lon=39.035938 ~/~/ долгота 1264 +Speed=0.0 ~/~/ скорость 1265 +Course=181.4 ~/~/направление 1266 + 1267 +((( 1268 +== **Список отправленных объекту команд с ответами** == 1269 + 1270 +(% class="box infomessage" %) 1271 +((( 1272 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1273 +))) 1274 + 1275 +Идентификатор ТС: vehicleId 1276 + 1277 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1278 + 1279 +Пример ответа терминала 1280 + 1281 +[ 1282 +{ 1283 +"id": "", ~/~/ идентификатор пользователя 1284 +"commandText": "", ~/~/Текст команды. 1285 +"templateId": "", ~/~/Идентификатор шаблона 1286 +"updated": "", ~/~/ Время отправки 1287 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1288 +"answer": "", ~/~/ Ответ терминала. 1289 +"status": "" ~/~/ Статус отправки 1290 +} 1291 +] 1292 +))) 1293 + 1196 1196 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1197 1197 1198 1198 (% class="box successmessage" %) ... ... @@ -1212,6 +1212,11 @@ 1212 1212 1213 1213 (% style="color:#000000" %){ 1214 1214 1313 + 1314 +((( 1315 + "vehicleId": 0, ~/~/ ID ТС 1316 +))) 1317 + 1215 1215 "parentId": "" , ~/~/ ID клиента 1216 1216 "name": "" , ~/~/ имя ТС 1217 1217 "imei": "" , ~/~/ IMEI ... ... @@ -1232,7 +1232,6 @@ 1232 1232 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1233 1233 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1234 1234 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1235 - 1236 1236 "mileageCalcMethod": 0, 1237 1237 "mileageCoeff": 0, 1238 1238 "locationByCellId": true, ... ... @@ -1265,7 +1265,6 @@ 1265 1265 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1266 1266 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1267 1267 } 1268 - 1269 1269 "drivers": [ ~/~/ Водители 1270 1270 { 1271 1271 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1280,8 +1280,7 @@ 1280 1280 "retries": 0 1281 1281 } 1282 1282 ], 1283 - 1284 - "sensors": [ ~/~/ Датчики 1384 +"sensors": [ ~/~/ Датчики 1285 1285 { 1286 1286 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1287 1287 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1307,6 +1307,7 @@ 1307 1307 ], 1308 1308 "showInTooltip": true, ~/~/ Отображать в подсказке 1309 1309 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1410 + "color": "string", ~/~/ код цвета датчиков 1310 1310 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1311 1311 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1312 1312 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1319,103 +1319,293 @@ 1319 1319 "additionalProp2": "string", 1320 1320 "additionalProp3": "string" 1321 1321 }, 1322 - 1323 1323 ~/~/ Характерные для произвольного: 1324 - 1325 1325 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1326 - 1327 1327 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1328 - 1329 1329 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1330 - 1331 1331 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1332 - 1333 1333 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1334 - 1335 1335 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1336 - 1337 1337 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1338 - 1339 1339 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1340 - 1341 1341 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1342 - 1343 1343 ~/~/ "ValueOn": "Вкл.", 1344 - 1345 1345 ~/~/ "ValueOff": "Выкл." 1346 - "summaryMaxValue": 0 ~/~/ Макс. значение 1435 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1436 + 1437 +((( 1438 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1439 + { 1440 + "from": 0, ~/~/ С какого значения 1441 + "color": "string", ~/~/ Каким цветом 1442 + "text": "string" ~/~/ Текст подписи к этому интервалу 1443 + } 1444 + ] 1347 1347 } 1348 1348 ], 1447 +))) 1448 + 1449 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1450 + 1451 + 1349 1349 "customFields": [ ~/~/ Произвольные поля 1350 1350 { 1351 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1352 - "name": "string", 1353 - "value": "string", 1354 - "forClient": true, 1355 - "forTooltip": true, 1356 - "forReport": true 1357 - } 1358 - ] 1454 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1455 + "name": "string", ~/~/ Наименование произвольного поля 1456 + "value": "string", ~/~/ Значение произвольного поля 1457 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1458 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1459 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1460 + 1461 +((( 1462 + } 1463 + ], 1464 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1465 +))) 1466 + 1467 +((( 1468 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1359 1359 } 1470 +))) 1360 1360 1472 + 1361 1361 (% style="color:#000000" %)Ответ: 1362 1362 1363 -(% style="color:#000000" %){ 1364 1364 1365 - "vehicleId": "", ~/~/ID ТС 1366 - "parentId": "", ~/~/Guid владельца ТС 1367 - "name": "", ~/~/Имя объекта 1368 - "imei": "", ~/~/IMEI 1369 - "deviceTypeId": "", ~/~/ID типа устройства 1370 - "modelId": "", ~/~/ID модели 1371 - "unitId": "", ~/~/ID подразделения 1372 - "sim1": "", ~/~/SIM1 1373 - "sim2": "", ~/~/SIM2 1374 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1375 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1376 - "counters": { ~/~/Счётчики 1377 - "mileageEnabled": true, 1378 - "motohoursEnabled": true, 1379 - "mileage": "", 1380 - "motohours": 345.0 1381 - }, 1382 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1383 - "id": null, 1384 - "enabled": true, ~/~/флаг включения 1385 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1386 - "login": "", ~/~/ имя учетной записи 1387 - "password": "" ~/~/ пароль учетной записи 1388 - }, 1389 - "inspectionTasks": { ~/~/ задания на ТО 1390 - "id": "", ~/~/ ID задачи 1391 - "enabled": false, ~/~/ Признак включения 1392 - "name": "", ~/~/ Имя задания 1393 - "description": "", ~/~/ Описание задания 1394 - "mileageCondition": "", ~/~/ Условие по пробегу 1395 - "lastMileage": "", ~/~/ Пробег (в метрах) 1396 - "motohoursCondition": "", ~/~/ Условие по моточасам 1397 - "lastMotohours": "", ~/~/ Моточасы 1398 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1399 - "kind": "", ~/~/ Вид периодичности по времени 1400 - "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1476 +((( 1477 +((( 1478 +((( 1479 +{ 1480 + "vehicleId": 0, ~/~/ ID ТС 1481 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1482 + "name": "string", ~/~/ Имя объекта 1483 + "imei": "string", ~/~/ IMEI 1484 + "deviceTypeId": 0, ~/~/ ID типа устройства 1485 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1486 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1487 + "sim1": "string", ~/~/ SIM1 1488 + "sim2": "string", ~/~/ SIM2 1489 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1490 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1491 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1492 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1493 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1494 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1495 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1496 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1497 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1498 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1499 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1500 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1501 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1502 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1503 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1504 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1505 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1506 + "counters": { ~/~/ Dto для состояний счётчиков 1507 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1508 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1509 + "mileage": 0, ~/~/ Пробег 1510 + "motohours": 0 ~/~/ Моточасы 1511 + }, 1512 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1513 + "id": "string", ~/~/ CMSV6 Идентификатор 1514 + "enabled": true, ~/~/ Признак включения 1515 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1516 + "login": "string", ~/~/ CMSV6 имя учетной записи 1517 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1518 + }, 1519 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1520 + { 1521 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1522 + "enabled": true, ~/~/ Признак включения 1523 + "name": "string", ~/~/ Имя задания 1524 + "description": "string", ~/~/ Описание задания 1525 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1526 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1527 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1528 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1529 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1530 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1531 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1532 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1401 1401 } 1534 + ], 1535 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1536 + { 1537 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1538 + "inputNumber": 0, ~/~/ № входа. 1539 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1540 + "comment": "string", ~/~/ Комментарий 1541 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1542 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1543 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1544 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1545 + } 1546 + ], 1547 + "commandTemplates": [ ~/~/ Список шаблонов команд 1548 + { 1549 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1550 + "name": "string", ~/~/ Название шаблона команд 1551 + "command": "string", ~/~/ Команда на выполнение 1552 + "retries": 0 ~/~/ Лимит попыток отправки 1553 + } 1554 + ], 1555 + "sensors": [ ~/~/ Список датчиков 1556 + { 1557 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1558 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1559 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 1560 + "name": "string", ~/~/ Имя датчика 1561 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1562 + "inputNumber": 0, ~/~/ Номер входа 1563 + "pseudonym": "string", ~/~/ Псевдоним 1564 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1565 + "isInverted": true, ~/~/ Признак инверсии 1566 + "disabled": true, ~/~/ Датчик не участвует в обработке 1567 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1568 + "gradesTables": [ ~/~/ Тарировка 1569 + { 1570 + "grades": [ ~/~/ Таблицы тарировки 1571 + { 1572 + "input": 0, ~/~/ Вход 1573 + "output": 0 ~/~/ Выход 1574 + } 1575 + ], 1576 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1577 + } 1578 + ], 1579 + "showInTooltip": true, ~/~/ Отображение в подсказке 1580 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1581 + "color": "string", ~/~/ код цвета датчиков 1582 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1583 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1584 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1585 + "expr": "string", ~/~/ Выражение 1586 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1587 + "string" 1588 + ], 1589 + "customParams": { 1590 + "additionalProp1": "string", 1591 + "additionalProp2": "string", 1592 + "additionalProp3": "string" 1593 + }, 1594 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1595 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1596 + { 1597 + "from": 0, ~/~/ С какого значения 1598 + "color": "string", ~/~/ Каким цветом 1599 +))) 1402 1402 1403 -(% style="text-align:left" %) 1404 -(% style="color:#000000" %)} 1601 +((( 1602 + "text": "string" ~/~/ Текст подписи к этому интервалу 1603 + } 1604 + ] 1605 + } 1606 + ], 1607 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1608 + "customFields": [ ~/~/ Список произвольных полей 1609 + { 1610 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1611 + "name": "string", ~/~/ Наименование произвольного поля 1612 + "value": "string", ~/~/ Значение произвольного поля 1613 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1614 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1615 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1616 + } 1617 + ], 1618 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1619 +} 1620 +))) 1621 +))) 1622 +))) 1405 1405 1624 + 1406 1406 **Валидация:** 1407 1407 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1408 1408 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1409 1409 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1410 1410 1411 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 1412 1412 1631 +== **Импортировать историю ТС (Асинхронный запрос)** == 1632 + 1633 +(% class="box successmessage" %) 1634 +((( 1635 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 1636 +))) 1637 + 1638 +Метод запроса: **POST** 1639 + 1640 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 1641 + 1642 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 1643 + 1644 + 1645 +Ответ: 1646 + 1647 +{ 1648 + 1649 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1650 + 1651 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 1652 + 1653 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 1654 + 1655 + "Message": "string", ~/~/ Информация о выполнении запроса 1656 + 1657 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 1658 + 1659 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1660 + 1661 + "Data": "string" ~/~/ Данные 1662 + 1663 +} 1664 + 1665 + 1666 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 1667 + 1413 1413 (% class="box infomessage" %) 1414 1414 ((( 1670 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 1671 +))) 1672 + 1673 +Метод запроса: **GET** 1674 + 1675 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 1676 + 1677 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 1678 + 1679 + 1680 +Ответ: 1681 + 1682 +{ 1683 + 1684 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1685 + 1686 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 1687 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 1688 + 1689 + "Message": "string", ~/~/ Информация о выполнении запроса 1690 + 1691 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 1692 + 1693 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 1694 + 1695 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1696 + 1697 + "Data": "string" ~/~/ Данные 1698 + 1699 +} 1700 + 1701 + 1702 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1703 + 1704 +(% class="box infomessage" %) 1705 +((( 1415 1415 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1416 1416 ))) 1417 1417 1418 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1709 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1419 1419 1420 1420 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1421 1421 ... ... @@ -1449,9 +1449,12 @@ 1449 1449 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1450 1450 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1451 1451 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1452 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1453 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1454 - "customFields": null ~/~/ значение любого из произвольных полей ТС 1743 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1744 + "unitName": "string", ~/~/ Название подразделения (опционально) 1745 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1746 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1747 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1748 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1455 1455 } 1456 1456 1457 1457 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1458,8 +1458,14 @@ 1458 1458 1459 1459 (% style="color:#000000" %)Ответ: 1460 1460 1461 -(% style="color:#000000" %){ 1755 +(% style="color:#000000" %)[ 1756 +{ 1462 1462 1758 +((( 1759 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1760 +))) 1761 + 1762 +((( 1463 1463 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1464 1464 "name": "" ~/~/ наименование объекта 1465 1465 "imei": "" ~/~/ IMEI объекта ... ... @@ -1485,9 +1485,21 @@ 1485 1485 "forClient": true, ~/~/ право на отображение у клиента 1486 1486 "forTooltip": false, ~/~/ право на отображение в подсказке 1487 1487 "forReport": false ~/~/ право на отображение в отчетах 1488 - }(%%) 1489 -(% style="color:#000000" %)} 1788 +))) 1490 1490 1790 +((( 1791 + } 1792 + ], 1793 + "vehicleGroups": [ ~/~/ Группы ТС 1794 + { 1795 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1796 + "name": "string" ~/~/ Наименование группы ТС 1797 + } 1798 + ] 1799 + } 1800 +] 1801 +))) 1802 + 1491 1491 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1492 1492 1493 1493 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1519,13 +1519,11 @@ 1519 1519 "data": "", ~/~/ Данные 1520 1520 "overwrite": false, ~/~/ Флаг перезаписи 1521 1521 "stage": "", ~/~/ Состояние, может быть null 1522 - 1523 1523 (% style="color:#000000" %)} 1524 1524 1525 1525 (% style="color:#000000" %)Ответ: 1526 1526 1527 -(% style="color:#000000" %){ 1528 - 1838 +(% style="color:#000000" %){(%%) 1529 1529 "status": "", ~/~/ значение статуса 1530 1530 "date": "", ~/~/ Дата смены статуса 1531 1531 "description": "", ~/~/ Описание ... ... @@ -1532,10 +1532,10 @@ 1532 1532 "data": "", ~/~/ Данные 1533 1533 "overwrite": false, ~/~/ Флаг перезаписи 1534 1534 "stage": "", ~/~/ Состояние 1535 - 1536 -(% style="text-align:left" %) 1537 1537 (% style="color:#000000" %) } 1538 1538 1847 +== == 1848 + 1539 1539 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1540 1540 1541 1541 (% class="box warningmessage" %) ... ... @@ -1611,9 +1611,19 @@ 1611 1611 1612 1612 "drivers": [ ~/~/ Водители 1613 1613 { 1614 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1615 - "isDefault": true 1616 - } 1924 + 1925 +((( 1926 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1927 + "inputNumber": 0, ~/~/ № входа. 1928 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения. 1929 + "comment": "string", ~/~/ Комментарий. 1930 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1931 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1932 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения. 1933 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения. 1934 +))) 1935 + 1936 + } 1617 1617 ], 1618 1618 "commandTemplates": [ ~/~/ Шаблон команды 1619 1619 { ... ... @@ -1623,8 +1623,7 @@ 1623 1623 "retries": 0 1624 1624 } 1625 1625 ], 1626 - 1627 - "sensors": [ ~/~/ Датчики 1946 +"sensors": [ ~/~/ Датчики 1628 1628 { 1629 1629 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1630 1630 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1650,6 +1650,11 @@ 1650 1650 ], 1651 1651 "showInTooltip": true, ~/~/ Отображать в подсказке 1652 1652 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1972 + 1973 +((( 1974 + "color": "string",** ~/~/ **Цвет датчика 1975 +))) 1976 + 1653 1653 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1654 1654 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1655 1655 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1662,95 +1662,225 @@ 1662 1662 "additionalProp2": "string", 1663 1663 "additionalProp3": "string" 1664 1664 }, 1665 - 1666 1666 ~/~/ Характерные для произвольного: 1667 - 1668 1668 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1669 - 1670 1670 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1671 - 1672 1672 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1673 - 1674 1674 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1675 - 1676 1676 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1677 - 1678 1678 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1679 - 1680 1680 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1681 - 1682 1682 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1683 - 1684 1684 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1685 - 1686 1686 ~/~/ "ValueOn": "Вкл.", 1687 - 1688 1688 ~/~/ "ValueOff": "Выкл." 1689 1689 "summaryMaxValue": 0 ~/~/ Макс. значение 2002 + 2003 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2004 + { 2005 + "from": 0, ~/~/ С какого значения 2006 + "color": "string", ~/~/ Каким цветом 2007 + "text": "string" ~/~/ Текст подписи к этому интервалу 2008 + } 2009 + ] 1690 1690 } 1691 1691 ], 2012 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2013 + 1692 1692 "customFields": [ ~/~/ Произвольные поля 1693 - { 1694 - 1695 - "name": "string", 1696 - "value": "string", 1697 - "forClient": true, 1698 - "forTooltip": true, 1699 - "forReport": true 2015 + { 2016 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2017 + "name": "string", ~/~/ Наименование произвольного поля 2018 + "value": "string", ~/~/ Значение произвольного поля 2019 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2020 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2021 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1700 1700 } 1701 - ] 2023 + 2024 +((( 2025 + ], 2026 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 2027 +))) 2028 + 1702 1702 } 1703 1703 2031 + 1704 1704 (% style="color:#000000" %)Ответ: 1705 1705 1706 -(% lang="en-US" style="text-align:left" %) 1707 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 2034 +((( 2035 +{ 2036 + "vehicleId": 0, ~/~/ ID ТС 2037 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 2038 + "name": "string", ~/~/ Имя объекта 2039 + "imei": "string", ~/~/ IMEI 2040 + "deviceTypeId": 0, ~/~/ ID типа устройства 2041 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 2042 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 2043 + "sim1": "string", ~/~/ SIM1 2044 + "sim2": "string", ~/~/ SIM2 2045 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 2046 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 2047 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 2048 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 2049 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 2050 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 2051 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 2052 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 2053 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 2054 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 2055 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 2056 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 2057 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 2058 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 2059 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 2060 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 2061 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 2062 + "counters": { ~/~/ состояний счётчиков 2063 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 2064 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 2065 + "mileage": 0, ~/~/ Пробег 2066 + "motohours": 0 ~/~/ Моточасы 2067 + }, 2068 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 2069 + "id": "string", ~/~/ CMSV6 Идентификатор 2070 + "enabled": true, ~/~/ Признак включения 2071 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 2072 +))) 1708 1708 1709 -(% lang="en-US" style="text-align:left" %) 1710 - "vehicleId": "", ~/~/ ID ТС 1711 - "parentId": "", ~/~/ ID клиента 1712 - "name": "", ~/~/ имя ТС 1713 - "imei": "", ~/~/ IMEI 1714 - "deviceTypeId": "", ~/~/ типа устройства 1715 - "modelId": "", ~/~/ ID модели 1716 - "unitId": "", ~/~/ ID подразделения 1717 - "sim1": "", ~/~/ SIM 1 1718 - "sim2": "", ~/~/ SIM2 1719 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1720 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1721 - "counters": 1722 - { 1723 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1724 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1725 - "mileage": "", ~/~/ пробег 1726 - "motohours": "", ~/~/ моточасы 1727 - } 1728 - "cmsv6Parameters": ~/~/ параметры CMSv6 2074 + 2075 +((( 2076 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 2077 + "login": "string", ~/~/ CMSV6 имя учетной записи 2078 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 2079 + }, 2080 + "inspectionTasks": [ ~/~/ Задания на ТО 2081 + { 2082 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 2083 + "enabled": true, ~/~/ Признак включения 2084 + "name": "string", ~/~/ Имя задания 2085 + "description": "string", ~/~/ Описание задания 2086 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 2087 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 2088 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 2089 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 2090 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 2091 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 2092 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2093 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2094 + } 2095 + ], 2096 + "drivers": [ ~/~/ Список водителей 2097 + { 2098 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2099 + "inputNumber": 0, ~/~/ № входа. 2100 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2101 + "comment": "string", ~/~/ Комментарий. 2102 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2103 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2104 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2105 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2106 + } 2107 + ], 2108 + "commandTemplates": [ ~/~/ Список шаблонов команд 2109 + { 2110 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2111 + "name": "string", ~/~/ Название шаблона команд 2112 + "command": "string", ~/~/ Команда на выполнение 2113 + "retries": 0 ~/~/ Лимит попыток отправки 2114 + } 2115 + ], 2116 + "sensors": [ ~/~/ Список датчиков 2117 + { 2118 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2119 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2120 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2121 +))) 2122 + 2123 +((( 2124 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2125 +))) 2126 + 2127 +((( 2128 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2129 +))) 2130 + 2131 +((( 2132 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2133 +))) 2134 + 2135 +((( 2136 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2137 +))) 2138 + 2139 +((( 2140 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2141 + "name": "string", ~/~/ Имя датчика 2142 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2143 +))) 2144 + 2145 +((( 2146 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2147 + "inputNumber": 0, ~/~/ Номер входа 2148 + "pseudonym": "string", ~/~/ Псевдоним 2149 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2150 + "isInverted": true, ~/~/ Признак инверсии 2151 + "disabled": true, ~/~/ Датчик не участвует в обработке 2152 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2153 + "gradesTables": [ ~/~/ Тарировка 1729 1729 { 1730 - "id": ~/~/ идентификатор 1731 - "enabled": true, ~/~/ флаг включения 1732 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1733 - "login": "", ~/~/ имя учетной записи 1734 - "password": "", ~/~/ пароль учетной записи 1735 - } 1736 - "inspectionTasks": ~/~/ задания на ТО 1737 - { 1738 - "id": "", ~/~/ ID задания 1739 - "enabled": false, ~/~/ Признак включения 1740 - "name": "", ~/~/ Имя задания 1741 - "description": "", ~/~/ Описание задания 1742 - "mileageCondition": "", ~/~/ Условие по пробегу 1743 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1744 - "motohoursCondition": "", ~/~/ Условие по моточасам 1745 - "lastMotohours": "", ~/~/ Моточасы 1746 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1747 - "kind": "", ~/~/ Вид периодичности по времени 1748 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2155 + "grades": [ ~/~/ Таблицы тарировки 2156 + { 2157 + "input": 0, ~/~/ Вход 2158 + "output": 0 ~/~/ Выход 2159 + } 2160 + ], 2161 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1749 1749 } 2163 + ], 2164 + "showInTooltip": true, ~/~/ Отображение в подсказке 2165 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1750 1750 1751 -(% lang="en-US" style="text-align:left" %) 1752 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2167 +((( 2168 + "color": "string", ~/~/ цвет уведомлений 2169 +))) 1753 1753 2171 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2172 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2173 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2174 + "expr": "string", ~/~/ Выражение 2175 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2176 + "string" 2177 + ], 2178 + "customParams": { ~/~/ Дополнительные настройки 2179 + "additionalProp1": "string", 2180 + "additionalProp2": "string", 2181 + "additionalProp3": "string" 2182 + }, 2183 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2184 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2185 + { 2186 + "from": 0, ~/~/ С какого значения 2187 + "color": "string", ~/~/ Каким цветом 2188 + "text": "string" ~/~/ Текст подписи к этому интервалу 2189 + } 2190 + ] 2191 + } 2192 + ], 2193 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2194 + "customFields": [ ~/~/ Список произвольных полей 2195 + { 2196 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2197 + "name": "string", ~/~/ Наименование произвольного поля 2198 + "value": "string", ~/~/ Значение произвольного поля 2199 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2200 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2201 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2202 + } 2203 + ], 2204 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2205 +} 2206 +))) 2207 + 1754 1754 **Валидация:** 1755 1755 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1756 1756 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1789,18 +1789,15 @@ 1789 1789 1790 1790 (% style="color:#000000" %)Метод запроса: **GET** 1791 1791 1792 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/ users/api/v3/devices/types>>url:https://hosting.glonasssoft.ru/api/v3/users/api/v3/devices/types]]2246 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/devices/types>>https://hosting.glonasssoft.ru/api/v3/devices/types]] 1793 1793 1794 1794 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1795 1795 1796 1796 (% style="color:#000000" %)Ответ: 1797 1797 1798 -(% style="color:#000000" %){ 1799 - 2252 +(% style="color:#000000" %){(%%) 1800 1800 "deviceTypeId" : "", ~/~/ ID типа устройства 1801 1801 "deviceTypeName" : "" ~/~/ Название типа устройства 1802 - 1803 -(% style="text-align:left" %) 1804 1804 (% style="color:#000000" %)} 1805 1805 1806 1806 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1822,13 +1822,10 @@ 1822 1822 1823 1823 (% style="color:#000000" %)Ответ: 1824 1824 1825 -(% style="color:#000000" %){ 1826 - 2276 +(% style="color:#000000" %){(%%) 1827 1827 "id": "", ~/~/ ID типа датчика 1828 1828 "name": "", ~/~/ Название 1829 1829 "description": "", ~/~/ Описание 1830 - 1831 -(% style="text-align:left" %) 1832 1832 (% style="color:#000000" %)} 1833 1833 1834 1834 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1872,6 +1872,56 @@ 1872 1872 } 1873 1873 ] 1874 1874 2323 +== (% style="color:#000000; font-size:16px" %)**Получить тип и номер входа сырого параметра **(%%) == 2324 + 2325 +(% class="box infomessage" style="text-align: left;" %) 2326 +((( 2327 +**POST /api/v3/terminalMessages/mapping** 2328 +))) 2329 + 2330 +Запрос позволяет узнать тип и номер входа для сырого параметра, приходящего по указанному протоколу. 2331 + 2332 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/terminalMessages/mapping 2333 + 2334 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2335 + 2336 +{ 2337 + "protocolType": 0, 2338 + "params": ["string"] 2339 +} 2340 + 2341 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2342 +|protocolType|ID типа протокола 2343 +|params|((( 2344 +Массив наименований параметров в сообщении 2345 +))) 2346 + 2347 +Ответ: 2348 + 2349 +{ 2350 + "protocolType": 0, 2351 + "mapping": { 2352 + "additionalProp1": { 2353 + "inputType": 0, 2354 + "inputNumber": 0 2355 + }, 2356 + "additionalProp2": { 2357 + "inputType": 0, 2358 + "inputNumber": 0 2359 + } 2360 + } 2361 +} 2362 + 2363 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2364 +|protocolType|Тип протокола 2365 +|inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 2366 +|inputNumber|((( 2367 +Номер входа 2368 +))) 2369 + 2370 +(% class="wikigeneratedid" %) 2371 +Перечень 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/]] 2372 + 1875 1875 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1876 1876 1877 1877 (% class="box infomessage" %) ... ... @@ -1896,6 +1896,11 @@ 1896 1896 "to": "2023-03-29T09:14:46.107Z" ~/~/ конец периода запроса 1897 1897 } 1898 1898 2397 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2398 +|vehicleId|ID объекта 2399 +|from|Дата и время начала периода запроса 2400 +|to|Дата и время окончания периода запроса 2401 + 1899 1899 Ответ: 1900 1900 1901 1901 [ ... ... @@ -1902,25 +1902,43 @@ 1902 1902 { 1903 1903 "messages": [ 1904 1904 { 1905 - "deviceTime": "2023-03-29T09:14:46.125Z", ~/~/ Время устройства 1906 - "serverTime": "2023-03-29T09:14:46.125Z", ~/~/ Время сервера 1907 - "speed": 0, ~/~/ Скорость, км/ч 1908 - "altitude": 0, ~/~/ Высота, м 1909 - "latitude": 0, ~/~/ Широта [-90°;90°] 1910 - "longitude": 0, ~/~/ Долгота [-180°;180°] 1911 - "satellites": 0, ~/~/ Кол-во спутников 1912 - "voltage": 0, ~/~/ Напряжение 1913 - "parameters": { ~/~/ список параметров датчиков передаваемых терминалом 2408 + "deviceTime": "2023-11-29T07:40:44.052Z", 2409 + "serverTime": "2023-11-29T07:40:44.052Z", 2410 + "speed": 0, 2411 + "altitude": 0, 2412 + "latitude": 0, 2413 + "longitude": 0, 2414 + "satellites": 0, 2415 + "course": 0, 2416 + "voltage": 0, 2417 + "parameters": { 1914 1914 "additionalProp1": "string", 1915 1915 "additionalProp2": "string", 1916 1916 "additionalProp3": "string" 1917 1917 }, 1918 - "photoCount": 0 ~/~/ Кол-во фото 2422 + "photoCount": 0, 2423 + "lbsCorrectedCoords": true, 2424 + "protocolType": 0 1919 1919 } 1920 1920 ] 1921 1921 } 1922 1922 ] 1923 1923 2430 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2431 +|deviceTime|Время сообщения терминала 2432 +|serverTime|Время когда сообщение поступило на сервер 2433 +|speed|Скорость 2434 +|altitude|Высота над уровнем моря 2435 +|latitude|Широта 2436 +|longitude|Долгота 2437 +|satellites|Кол-во спутников 2438 +|course|Курс 2439 +|voltage|Бортовое напряжение 2440 +|parameters|Список параметров и их значений 2441 +|photoCount|Количество фото 2442 +|lbsCorrectedCoords|Признак того, что координаты были скорректированы по LBS, true - скорректированы, false - не скорректированы 2443 +|protocolType|ID типа протокола 2444 + 1924 1924 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос данных об объекте за период**(%%) = 1925 1925 1926 1926 == (% style="color:#000000; font-size:16px" %)**Получение данных о пробеге и моточасах транспортного средства**(%%) == ... ... @@ -1957,10 +1957,14 @@ 1957 1957 { 1958 1958 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 1959 1959 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 1960 - "mileageBegin": 0, ~/~/ Пробег на начало периода 1961 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 1962 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 1963 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2481 + "mileage": 0, ~/~/ Пробег за период, километры 2482 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2483 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2484 + "motohours": 0, ~/~/ Моточасы за период, секунды 2485 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2486 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2487 + "idlingTime": 0 ~/~/ Холостой ход за период, секунд 2488 + 1964 1964 } 1965 1965 ] 1966 1966 } ... ... @@ -2004,11 +2004,19 @@ 2004 2004 "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2005 2005 "fuelConsumption": 0, ~/~/ Расход топлива 2006 2006 "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2532 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне 2533 + 2007 2007 } 2008 2008 ] 2009 2009 } 2010 2010 ] 2011 2011 2539 +(% class="box warningmessage" %) 2540 +((( 2541 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2542 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2543 +))) 2544 + 2012 2012 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2013 2013 2014 2014 (% class="box infomessage" %) ... ... @@ -2043,7 +2043,8 @@ 2043 2043 "model": "string", ~/~/ Модель объекта 2044 2044 "fuels": [ ~/~/ Массив данным по заправкам и сливам 2045 2045 { 2046 - "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив 2579 + "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 2580 + 2047 2047 "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало 2048 2048 "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание 2049 2049 "valueFuel": 0, ~/~/ Количество ... ... @@ -2054,6 +2054,96 @@ 2054 2054 } 2055 2055 ] 2056 2056 2591 + 2592 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) == 2593 + 2594 +(% class="box infomessage" %) 2595 +((( 2596 +**POST /api/v3/vehicles/moveStop** 2597 +))) 2598 + 2599 +Метод запроса: **POST** 2600 + 2601 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop 2602 + 2603 +В заголовках запроса: X-Auth: Токен авторизации 2604 + 2605 + 2606 +Тело запроса: 2607 + 2608 +{ 2609 + "vehicleIds": [ ], ~/~/ Список ID объектов 2610 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2611 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2612 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2613 +} 2614 + 2615 +Ответ: 2616 + 2617 +[ 2618 + { 2619 + "vehicleId": 0, ~/~/ ID объекта 2620 + "vehicleName": "string", ~/~/ Имя объекта 2621 + "moves": [ ~/~/ Событие движения 2622 + { 2623 + "mileage": 0, ~/~/ Пробег, км 2624 + "eventId": 0, ~/~/ Идентификатор события 2625 + "eventName": "string", ~/~/ Название события 2626 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2627 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2628 + "duration": 0 ~/~/ Продолжительность события, секунд 2629 + } 2630 + ], 2631 + "stops": [ ~/~/ События стоянок 2632 + { 2633 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2634 + "eventId": 0, ~/~/ Идентификатор события 2635 + "eventName": "string", ~/~/ Название события 2636 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2637 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2638 + "duration": 0 ~/~/ Продолжительность события, секунд 2639 + } 2640 + ] 2641 + } 2642 +] 2643 + 2644 + 2645 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2646 + 2647 +(% class="box infomessage" %) 2648 +((( 2649 +**POST /api/v3/vehicles/getlastdata** 2650 +))) 2651 + 2652 +Метод запроса: **POST** 2653 + 2654 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata 2655 + 2656 +В заголовках запроса: X-Auth: Токен авторизации 2657 + 2658 + 2659 +В теле запроса перечисляете массив id объектов, в квадратных скобках через запятую. 2660 + 2661 +Ответ: 2662 + { 2663 + "vehicleId": 0, ~/~/Идентификатор объекта. 2664 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификатор объекта. 2665 + "vehicleNumber": "string",~/~/Номер объекта. 2666 + "receiveTime": "2024-02-27T14:11:00.315Z",~/~/Время получения записи на сервере, т.е. время срабатывания + время передачи от устройства на сервер 2667 + "recordTime": "2024-02-27T14:11:00.315Z",~/~/Время записи от устройства, т.е. время фактического события на транспортном средстве. 2668 + "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2669 + "speed": 0,~/~/Скорость объекта. 2670 + "course": 0,~/~/Курс движения [0;360] 2671 + "latitude": 0,~/~/Широта [-90°;90°]. 2672 + "longitude": 0,~/~/Долгота [-180°;180°]. 2673 + "address": "string",~/~/Адрес. 2674 + "geozones": [ ~/~/Сведения по геозонам. 2675 + { 2676 + "id": 0, 2677 + "name": "string" 2678 + } 2679 + 2680 + 2057 2057 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2058 2058 2059 2059 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2361,6 +2361,32 @@ 2361 2361 2362 2362 Success 2363 2363 2988 + 2989 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2990 + 2991 +(% class="box warningmessage" %) 2992 +((( 2993 +**PUT** /api/v3/notifications/prolongation 2994 +))) 2995 + 2996 +Метод позволяет продлить уведомления. 2997 + 2998 +Метод запроса **PUT** 2999 + 3000 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 3001 + 3002 +В заголовках запроса: X-Auth: Токен авторизации. 3003 + 3004 +Тело запроса: 3005 + 3006 +[ 3007 + 3008 +0 3009 + 3010 +] 3011 + 3012 +где 0 идентификатор ids. 3013 + 2364 2364 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2365 2365 2366 2366 (% class="box errormessage" %) ... ... @@ -3050,13 +3050,19 @@ 3050 3050 { 3051 3051 "name": "string", 3052 3052 "number": 0, 3053 - "period": 0, ~/~/ Частота трансляции радиометки3703 + "period": 0, 3054 3054 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3055 3055 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3056 - "deleted": true 3057 3057 } 3058 3058 ] 3059 3059 3709 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3710 +|parentId|ID клиента 3711 +|name|Название карты-метки 3712 +|number|Номер 3713 +|period|Период запросов в секундах (работает только для агрегатов) 3714 +|id|ID карты-метки 3715 + 3060 3060 == (% style="color:#000000; font-size:16px" %)**Получить данные карты-метки**(%%) == 3061 3061 3062 3062 (% class="box infomessage" %) ... ... @@ -3072,13 +3072,19 @@ 3072 3072 { 3073 3073 "name": "string", 3074 3074 "number": 0, 3075 - "period": 0, ~/~/ Частота трансляции радиометки3731 + "period": 0, 3076 3076 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3077 3077 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3078 - "deleted": true 3079 3079 } 3080 3080 ] 3081 3081 3737 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3738 +|name|Название карты-метки 3739 +|number|Номер 3740 +|period|Период запросов в секундах (работает только для агрегатов) 3741 +|id|ID карты-метки 3742 +|parentId|ID клиента 3743 + 3082 3082 == (% style="color:#000000; font-size:16px" %)**Добавить карту-метку**(%%) == 3083 3083 3084 3084 (% class="box successmessage" %) ... ... @@ -3093,7 +3093,6 @@ 3093 3093 "number": 0, 3094 3094 "period": 0, 3095 3095 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3096 - "deleted": true 3097 3097 } 3098 3098 3099 3099 Ответ: ... ... @@ -3104,9 +3104,15 @@ 3104 3104 "period": 0, 3105 3105 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3106 3106 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3107 - "deleted": true 3108 3108 } 3109 3109 3770 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3771 +|name|Название карты-метки 3772 +|number|Номер 3773 +|period|Период запросов в секундах (работает только для агрегатов) 3774 +|id|ID карты-метки 3775 +|parentId|ID клиента 3776 + 3110 3110 == (% style="color:#000000; font-size:16px" %)**Редактировать карту-метку**(%%) == 3111 3111 3112 3112 (% class="box warningmessage" %) ... ... @@ -3122,7 +3122,6 @@ 3122 3122 "period": 0, 3123 3123 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3124 3124 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3125 - "deleted": true 3126 3126 } 3127 3127 3128 3128 Ответ: ... ... @@ -3133,9 +3133,15 @@ 3133 3133 "period": 0, 3134 3134 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3135 3135 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3136 - "deleted": true 3137 3137 } 3138 3138 3804 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3805 +|name|Название карты-метки 3806 +|number|Номер 3807 +|period|Период запросов в секундах (работает только для агрегатов) 3808 +|id|ID карты-метки 3809 +|parentId|ID клиента 3810 + 3139 3139 == (% style="color:#000000; font-size:16px" %)**Удалить карту-метку**(%%) == 3140 3140 3141 3141 (% class="box errormessage" %) ... ... @@ -3384,6 +3384,8 @@ 3384 3384 **PUT /api/v3/Billing/client/balance** 3385 3385 ))) 3386 3386 4059 +Устанавливает указанное значение баланса не создавая операции пополнение/снятие. 4060 + 3387 3387 Тело запроса: 3388 3388 3389 3389 { ... ... @@ -3397,6 +3397,50 @@ 3397 3397 |(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3398 3398 |(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 3399 3399 4074 +== (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) == 4075 + 4076 +(% class="box warningmessage" %) 4077 +((( 4078 +**PUT /api/v3/billing/client/balance/deposit** 4079 +))) 4080 + 4081 +Создает операцию **Пополнение **с указанной суммой 4082 + 4083 +Тело запроса: 4084 + 4085 +{ 4086 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4087 + "Balance": 0 4088 +} 4089 + 4090 +Ответ: Success 4091 + 4092 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4093 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4094 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4095 + 4096 +== (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) == 4097 + 4098 +Создает операцию **Списание **с указанной суммой 4099 + 4100 +(% class="box warningmessage" %) 4101 +((( 4102 +**PUT /api/v3/billing/client/balance/withdraw** 4103 +))) 4104 + 4105 +Тело запроса: 4106 + 4107 +{ 4108 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4109 + "Balance": 0 4110 +} 4111 + 4112 +Ответ: Success 4113 + 4114 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4115 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4116 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4117 + 3400 3400 == (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) == 3401 3401 3402 3402 (% class="box warningmessage" %) ... ... @@ -3471,6 +3471,145 @@ 3471 3471 3472 3472 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) = 3473 3473 4192 +(% class="box warningmessage" %) 4193 +((( 4194 +Для тестирования запросов **Импорта **в Postman необходимо скачать его на ПК. Версия в браузере не позволяет загружать файлы в тело запроса. 4195 +))) 4196 + 4197 +== (% style="color:#000000; font-size:16px" %)**Импорт объектов**(%%) == 4198 + 4199 +(% class="box infomessage" %) 4200 +((( 4201 +**POST /api/v3/vehicles/import/{agentId}** 4202 +))) 4203 + 4204 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 4205 + 4206 +В пути указывается **agentId** - id клиента. 4207 + 4208 +**Заголовок** 4209 + 4210 +**X-Auth: [токен авторизации]** 4211 + 4212 +**Параметры** 4213 + 4214 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4215 +|withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 4216 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 4217 + 4218 +В теле использовать тип **form-data,** тип значения** file** 4219 + 4220 +**Ключи** 4221 + 4222 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4223 +|data|В значении передаем файл объекта, формат **xml** или **wlp ** 4224 +|csv|В значении передаем файл датчиков, формат **csv** 4225 + 4226 +Ответ: 4227 + 4228 +{ 4229 + "vehicleId": 0, 4230 + "name": "string", 4231 + "errors": ["string"] 4232 +} 4233 + 4234 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4235 +|vehicleId|ID созданного объекта 4236 +|name|Имя созданного объекта 4237 +|errors|Ошибки и их описание 4238 + 4239 +== (% style="color:#000000; font-size:16px" %)**Импорт сообщений**(%%) == 4240 + 4241 +(% class="box infomessage" %) 4242 +((( 4243 +**POST** **/api/v3/vehicles/import/history/{vehicleId}** 4244 +))) 4245 + 4246 +(% class="wikigeneratedid" %) 4247 +Позволяет импортировать сообщения в выбранный объект. Сообщения должны иметь формат **wln** или **json**. Также они могут быть упакованы и переданы в виде в **zip-архива**. 4248 + 4249 +(% class="wikigeneratedid" %) 4250 +В пути указывается **vehicleId **- id объекта. 4251 + 4252 +**Заголовок** 4253 + 4254 +**X-Auth: [токен авторизации]** 4255 + 4256 +В теле использовать тип **form-data.** 4257 + 4258 +Ключи: 4259 + 4260 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4261 +|**history**|В значении передавать файл с историей 4262 + 4263 +В случае, если загружается история из файла **wln **можно выполнять подмену названий параметров. В ключе вы указываете название параметра из файла, в значении указываете значение на которое нужно заменить. 4264 + 4265 +Ответ: 4266 + 4267 +{ 4268 + "results": [ 4269 + { 4270 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4271 + "vehicleId": 0, 4272 + "errors": [ 4273 + "string" 4274 + ], 4275 + "firstMessageDate": "2023-11-28T09:27:58.949Z", 4276 + "lastMessageDate": "2023-11-28T09:27:58.949Z", 4277 + "producedCount": 0, 4278 + "msgCount": 0 4279 + } 4280 + ] 4281 +} 4282 + 4283 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4284 +|results|Результаты импорта в разрезе ТС 4285 +|vehicleGuid|Guid ТС 4286 +|vehicleId|ID ТС 4287 +|errors|Список ошибок импорта истории (если пустой - нет ошибок) 4288 +|firstMessageDate|Дата первого импортированного сообщения (UTC) 4289 +|lastMessageDate|Дата последнего импортированного сообщения (UTC) 4290 +|producedCount|Кол-во успешно отправленных в шину данных сообщений 4291 +|msgCount|Кол-во обработанных сообщений всего 4292 + 4293 +== (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 4294 + 4295 +(% class="box infomessage" %) 4296 +((( 4297 +**GET /api/v3/vehicles/import/history/status** 4298 +))) 4299 + 4300 +Запрос статуса импорта истории. Может потребоваться в случае импорта истории за большой период. 4301 + 4302 +Ответ: 4303 + 4304 +{ 4305 + "activity": true, 4306 + "progress": 0, 4307 + "message": "string" 4308 +} 4309 + 4310 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4311 +|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4312 +|progress|Guid ТС 4313 + 4314 +== (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 4315 + 4316 +(% class="box infomessage" %) 4317 +((( 4318 +**POST /api/v3/vehicles/export** 4319 +))) 4320 + 4321 +Запрос позволяет экспортировать файлы с настройками объектов. В запросе передается массив id объектов. 4322 + 4323 +Тело запроса: 4324 + 4325 +[ 4326 + id 4327 +] 4328 + 4329 +Ответ: Success 200, получаете файлы с настройками. 4330 + 3474 3474 == (% style="color:#000000; font-size:16px" %)**Экспорт сообщений**(%%) == 3475 3475 3476 3476 (% class="box infomessage" %) ... ... @@ -3521,24 +3521,1739 @@ 3521 3521 |progress|Прогресс экспорта, от 0 до 100% 3522 3522 |message|Текст описывающий статус 3523 3523 3524 -= =(% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) ==4381 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) = 3525 3525 4383 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) == 4384 + 3526 3526 (% class="box infomessage" %) 3527 3527 ((( 3528 -**POST /api/v3/v ehicles/export**4387 +**POST /api/v3/EcoDriving/rating** 3529 3529 ))) 3530 3530 3531 - Запрос позволяетэкспортироватьфайлыснастройками объектов. Взапросе передается массивidобъектов.4390 +Позволяет получить данные рейтинга нарушений выбранных объектов за указанный период времени. Данные, выдаваемые этим запросом аналогичны тем, что вы можете увидеть в окне **Качество вождения** в мониторинге. В массиве **items **передается список объектов из рейтинга качества вождения, в **trips **передается информация по отдельным рейсам объекта. 3532 3532 3533 3533 Тело запроса: 3534 3534 4394 +{ 4395 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4396 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4397 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 4398 +} 4399 + 4400 +Ответ: 4401 + 4402 +{ 4403 + "items": [ ~/~/ Список в разрезе ТС 4404 + { 4405 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4406 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4407 + "vehicleId": 0, ~/~/ ID ТС 4408 + "vehicleName": "string", ~/~/ Название ТС 4409 + "vehicleModel": "string", ~/~/ Модель ТС 4410 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4411 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4412 + "totalViolations": 0, ~/~/ Нарушений всего 4413 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4414 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4415 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4416 + "brakingViolations": 0, ~/~/ Нарушений торможения 4417 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4418 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4419 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4420 + }, 4421 + 4422 +((( 4423 + 4424 +))) 4425 + 4426 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4427 + "mileage": 0, ~/~/ Пробег, м 4428 + "tripsCount": 0, ~/~/ Кол-во рейсов 4429 + "trips": [ ~/~/ Информация по рейсу 4430 + { 4431 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4432 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4433 + "violationsCount": 0, ~/~/ Всего нарушений 4434 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4435 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4436 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4437 + "brakingViolations": 0, ~/~/ Нарушений торможения 4438 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4439 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4440 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4441 + }, 4442 + 4443 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4444 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4445 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4446 + "mileage": 0, ~/~/ Пробег, м 4447 + "motohours": 0, ~/~/ Моточасы, секунды 4448 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4449 + "startAddress": "string", ~/~/ Адрес начала рейса 4450 + "endAddress": "string", ~/~/ Адрес конца рейса 4451 + "drivers": [ ~/~/ Список водителей 4452 + { 4453 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4454 + "driverName": "string", ~/~/ФИО водителя 4455 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 4456 + } 4457 + ] 4458 + } 4459 + ] 4460 + } 4461 + ] 4462 +} 4463 + 4464 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 4465 + 4466 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4467 + 4468 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4469 + 4470 +(% class="box infomessage" %) 4471 +((( 4472 +**POST /api/v3/fuelcards/transactions** 4473 +))) 4474 + 4475 +Метод запроса: POST 4476 + 4477 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4478 +\\В заголовках запроса: X-Auth: Токен авторизации 4479 + 4480 +Параметры в теле запроса (JSON): 4481 + 4482 +{ 4483 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4484 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4485 + "ids": [ 4486 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4487 + ], 4488 + "timezone": 0 ~/~/ Часовой пояс 4489 +} 4490 + 4491 + 4492 +Ответ: 4493 + { 4494 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4495 + "driver": "string", ~/~/ Водители, привязанные к ТК 4496 + "object": "string", ~/~/ Наименование ТС 4497 + "amount": 0, ~/~/ Количество топлива 4498 + "amountDut": 0, ~/~/ Количество по ДУТ 4499 + "amountDiff": 0, ~/~/ Разница, л 4500 + "amountDiffPerc": 0, ~/~/ Разница, % 4501 + "summa": 0, ~/~/ Стоимость, руб 4502 + "serviceName": "string", ~/~/ Тип топлива 4503 + "price": 0, ~/~/ Цена за литр, руб 4504 + "cardName": "string", ~/~/ Наименование ТК 4505 + "cardNum": "string", ~/~/ Номер ТК 4506 + "operator": "string", ~/~/ Оператор ТК 4507 + "address": "string" ~/~/ Адрес АЗС 4508 + } 4509 + 4510 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) == 4511 + 4512 +(% class="box infomessage" %) 4513 +((( 4514 +**GET /api/v3/fuelcards** 4515 +))) 4516 + 4517 +Метод запроса: GET 4518 + 4519 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список 4520 + 4521 +Ответ: 4522 + 3535 3535 [ 3536 - id 4524 + { 4525 + "Name": "string", ~/~/ Определяет наименование карты. 4526 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора. 4527 + "Number": "string", ~/~/ Определяет № карты. 4528 + "Enabled": true, ~/~/ Определяет признак активности карты. 4529 + "Description": "string", ~/~/ Определяет описание карты. 4530 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты 4531 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 4532 + "deleted": true ~/~/ Признак удаления 4533 + } 3537 3537 ] 3538 3538 3539 - Ответ: Success200,получаетефайлыснастройками.4536 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 3540 3540 3541 3541 4539 +== **Получение полных данных о ретрансляторе** == 4540 + 4541 +(% class="box infomessage" %) 4542 +((( 4543 +**GET ** **/api/v3/retranslations/{id}** 4544 +))) 4545 + 4546 +id - Идентификатор ретранслятора 4547 + 4548 + 4549 +Пример ответа: 4550 + 4551 +{ 4552 +"description": "", ~/~/ Поле описания ретранслятора 4553 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4554 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4555 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4556 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4557 +"objects": [ ~/~/ Объекты для ретрансляции 4558 +{ 4559 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4560 +"name": "", ~/~/ Наименование объекта ретрансляции 4561 +"imei": "", ~/~/ IMEI объекта ретрансляции 4562 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4563 +} 4564 + ], 4565 +"id": "", ~/~/ Идентификатор ретранслятора 4566 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4567 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4568 +} 4569 + 4570 + 4571 +== **Удаление данных ретранслятора** == 4572 + 4573 +(% class="box infomessage" %) 4574 +((( 4575 +**DELETE** **/api/v3/retranslations/{id}** 4576 +))) 4577 + 4578 +id - Идентификатор ретранслятора 4579 + 4580 + 4581 +== **Создание ретранслятора** == 4582 + 4583 +(% class="box infomessage" %) 4584 +((( 4585 +**POST ** **/api/v3/retranslations/{id}** 4586 +))) 4587 + 4588 +Запрос: 4589 + 4590 +{ 4591 +"description": "", ~/~/ Поле описания ретранслятора 4592 +"subscriberId": "", ~/~/ Идентификатор подписчика 4593 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4594 +"address": "", ~/~/ Адрес и порт принимающего сервера 4595 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4596 +"objects": [ ~/~/Объекты для ретрансляции 4597 +{ 4598 +"id": "", ~/~/ Идентификатор ретранслятора 4599 +"imei": "", ~/~/ IMEI объекта ретрансляции 4600 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4601 +} 4602 + ] 4603 +} 4604 + 4605 + 4606 +Ответ: 4607 + 4608 +{ 4609 +"description": "", ~/~/ Поле описания ретранслятора 4610 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4611 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4612 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4613 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4614 +"objects": [ ~/~/ Объекты для ретрансляции 4615 +{ 4616 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4617 +"name": "string", ~/~/ Наименование объекта ретрансляции 4618 +"imei": "", ~/~/ IMEI объекта ретрансляции 4619 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4620 +} 4621 + ], 4622 +"id": "", ~/~/ Идентификатор ретранслятора 4623 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4624 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4625 +} 4626 + 4627 + 4628 +== **Редактирование ретранслятора** == 4629 + 4630 +(% class="box infomessage" %) 4631 +((( 4632 +**PUT** **/api/v3/retranslations** 4633 +))) 4634 + 4635 +Пример запроса: 4636 + 4637 +{ 4638 +"id": "", ~/~/ Идентификатор ретранслятора 4639 +"description": "string", ~/~/ Поле описания ретранслятора 4640 +"subscriberId": "", ~/~/ Идентификатор подписчика 4641 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4642 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4643 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4644 +"objects": ~/~/ Объекты для ретрансляции 4645 +[ 4646 +{ 4647 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4648 +"imei": "", ~/~/ IMEI объекта ретрансляции 4649 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4650 +} 4651 + ] 4652 +} 4653 + 4654 + 4655 +Пример ответа: 4656 + 4657 +{ 4658 +"description": "", ~/~/ Поле описания ретранслятора 4659 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4660 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4661 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4662 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4663 +"objects": [ ~/~/ Объекты для ретрансляции 4664 +{ 4665 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4666 +"name": "string", ~/~/ Наименование объекта ретрансляции 4667 +"imei": "", ~/~/ IMEI объекта ретрансляции 4668 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4669 +} 4670 + ], 4671 +"id": "", ~/~/ Идентификатор ретранслятора 4672 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4673 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4674 +} 4675 + 4676 + 4677 +== **Получение списка ретранслятора клиента** == 4678 + 4679 +(% class="box infomessage" %) 4680 +((( 4681 +**POST /api/v3/retranslations/find** 4682 +))) 4683 + 4684 +Пример запроса: 4685 + 4686 +{ 4687 +"id": "", ~/~/ Идентификатор ретранслятора 4688 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4689 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4690 +} 4691 + 4692 +Ответ: 4693 + 4694 +[ 4695 +{ 4696 +"description": "", ~/~/ Поле описания ретранслятора 4697 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4698 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4699 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4700 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4701 +"id": "", ~/~/ Идентификатор ретранслятора 4702 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4703 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4704 +} 4705 +] 4706 + 4707 + 4708 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4709 + 4710 +== **API для отчета по выгрузке комбайнов** == 4711 + 4712 +(% class="box infomessage" %) 4713 +((( 4714 +**POST /api/v3/Reports/harvesterUnloading** 4715 +))) 4716 + 4717 +Пример запроса: 4718 + 4719 +{ 4720 + "byTime": 0, ~/~/ Объединение событий по времени 4721 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4722 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4723 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4724 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4725 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4726 + 0 4727 + ], 4728 + "from": "", ~/~/ Дата и время начало запроса 4729 + "to": "", ~/~/ Дата и время окончания запроса 4730 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4731 +} 4732 + 4733 +Пример ответа: 4734 + 4735 +[ 4736 + { 4737 + "harvesterName": "", ~/~/Комбайн, номер 4738 + "harvesterId": 0, ~/~/Комбайн, id 4739 +"harvesterModel": "", ~/~/ Модель комбайна 4740 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4741 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4742 + "events": [ ~/~/Список событий в разрезе комбайна 4743 + { 4744 + "driverId": "", ~/~/Идентификатор водителя 4745 + "driverName": "", ~/~/Водитель комбайна, ФИО 4746 + "RFID": "", ~/~/ идентификатор карты-метки 4747 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4748 + "vehicleId": 0, ~/~/идентификатор объекта 4749 + "vehicleName": "string", ~/~/ Имя объекта 4750 + "modelName": "string", ~/~/ Имя модели объекта 4751 + "nearestVehicles": [ ~/~/Объекты рядом 4752 + { 4753 + "vehicleId": 0, ~/~/идентификатор объекта 4754 + "vehicleName": "string" ~/~/ Имя объекта 4755 + } 4756 + ], 4757 + "fields": [ ~/~/Поля, где происходила выгрузка 4758 + { 4759 + "id": 0, ~/~/ идентификатор пользователя 4760 + "name": "string" ~/~/ имя пользователя 4761 + } 4762 + ], 4763 + "event": "string", ~/~/Событие 4764 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4765 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4766 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4767 + "cultureName": "string", ~/~/ название культуры 4768 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4769 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4770 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4771 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4772 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4773 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4774 + "issued": 0, ~/~/Выдано, бункеров 4775 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4776 + "latitude": 0, ~/~/Широта 4777 + "longitude": 0, ~/~/ Долгота 4778 + "litresAway": 0, ~/~/Отдано, л 4779 + "m3Away": 0 ~/~/Отдано, м3 4780 + } 4781 + ] 4782 + } 4783 +] 4784 + 4785 + 4786 +== **Отчет трек-датчики** == 4787 + 4788 +(% class="box infomessage" %) 4789 +((( 4790 +**POST /api/v3/Reports/sensorsWorks** 4791 +))) 4792 + 4793 +**Пример запроса:** 4794 + 4795 +{ 4796 + "vehicleIds": [ ~/~/ Список ID объектов 4797 + 0 4798 + ], 4799 + "from": "2025-02-20T06:39:23.888Z", ~/~/ Начало периода (локальное время клиента) 4800 + "to": "2025-02-20T06:39:23.888Z", ~/~/ Конец периода (локальное время клиента) 4801 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4802 +} 4803 + 4804 +**Пример ответа:** 4805 + 4806 +((( 4807 +{ 4808 + "vehicleSensorWorks": [ ~/~/ Интервалы работы оборудования для конкретного ТС 4809 + { 4810 + "vehicleId": 0, ~/~/ Идентификатор ТС 4811 + "sensorWorks": [ ~/~/ Интервалы работы оборудования. 4812 + { 4813 + "start": "2025-02-20T06:39:23.979Z", ~/~/ Начало интервала работы оборудования. 4814 + "end": "2025-02-20T06:39:23.979Z", ~/~/ Конец интервала работы оборудования. 4815 + "duration": 0, ~/~/ Продолжительность интервала в секундах. 4816 + "name": "string", ~/~/ Наименование оборудования. 4817 + "mileage": 0, ~/~/ Пробег за время работы оборудования. 4818 + "totalMileage": 0, ~/~/ Общий пробег. 4819 + "avgSpeed": 0 ~/~/ Средняя скорость. 4820 + } 4821 + ] 4822 + } 4823 + ] 4824 +} 4825 +))) 4826 + 4827 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 4828 + 4829 + 4830 +== **Запрос списка полей** == 4831 + 4832 +(% class="box successmessage" %) 4833 +((( 4834 +**POST /api/v3/agroLands/find** 4835 +))) 4836 + 4837 +Пример запроса: 4838 + 4839 +((( 4840 +((( 4841 +((( 4842 +{ 4843 + "year": 0, ~/~/ Фильтр по году 4844 + "name": "string", ~/~/ Фильтр по названию 4845 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 4846 +} 4847 +))) 4848 +))) 4849 + 4850 + 4851 +))) 4852 + 4853 +Пример ответа: 4854 + 4855 +((( 4856 +[ 4857 + { 4858 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4859 + "year": 0, ~/~/ Год поля 4860 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 4861 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 4862 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 4863 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4864 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4865 + "counts": { ~/~/ Счётчики с/х поля 4866 + "fieldOperations": 0, ~/~/ Количество операций на поле 4867 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4868 + "facts": 0 ~/~/ Счётчик факта 4869 + }, 4870 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4871 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4872 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4873 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4874 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4875 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4876 + "planComment": "string", ~/~/ Комментарий к полю 4877 + "productivity": 0, ~/~/ Урожайность. 4878 + "id": 0, ~/~/ Идентификатор объекта геозоны 4879 + "name": "string", ~/~/ Название объекта геозоны 4880 + "type": 0, ~/~/ Тип объекта геозоны 4881 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4882 + "fname": "string", ~/~/ Имя файла 4883 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4884 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 4885 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 4886 + "description": "string", ~/~/ Описание объекта геозоны 4887 + "area": 0, ~/~/ Площадь, м2 4888 + "perimetr": 0, ~/~/ Периметр, м 4889 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 4890 + } 4891 +] 4892 + 4893 + 4894 +== **Создание нового поля ** == 4895 + 4896 +(% class="box successmessage" %) 4897 +((( 4898 +**POST /api/v3/agroLands** 4899 +))) 4900 + 4901 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 4902 +X-agent - ID клиента 4903 + 4904 +Пример запроса: 4905 + 4906 +((( 4907 +{ 4908 + "extId": "string", 4909 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля 4910 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля 4911 + "display": "string", ~/~/ Настройки отображения 4912 + "year": 0, ~/~/ Год поля 4913 + "name": "string", ~/~/ Наименование 4914 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4915 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 4916 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 4917 + "planComment": "string", ~/~/ Комментарий к полю 4918 + "cropRotations": [ ~/~/ Данные по севообороту 4919 + { 4920 + "landId": 0, ~/~/ ID поля 4921 + "landName": "string", ~/~/ Название поля 4922 + "year": 0, ~/~/ Год урожая 4923 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4924 + "cultureName": "string", ~/~/ Название культуры 4925 + "productivity": 0, ~/~/ Урожайность 4926 + "area": 0, ~/~/ Площадь поля, Га 4927 + "total": 0, ~/~/ Валовый сбор 4928 + "productivityFact": 0, ~/~/ Фактическая урожайность 4929 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4930 + "totalFact": 0, ~/~/ Фактический валовый сбор 4931 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 4932 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 4933 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 4934 + "isyearplan": true, ~/~/ Годовой план 4935 + "comment": "string" ~/~/ Комментарий 4936 + } 4937 + ] 4938 +} 4939 +))) 4940 + 4941 +((( 4942 + 4943 +))) 4944 + 4945 +Пример ответа: 4946 + 4947 +((( 4948 +((( 4949 +{ 4950 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4951 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4952 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4953 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4954 + "cropRotations": [ ~/~/ Данные по севообороту 4955 + { 4956 + "landId": 0, ~/~/ ID поля 4957 + "landName": "string", ~/~/ Название поля 4958 + "year": 0, ~/~/ Год урожая 4959 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4960 + "cultureName": "string", ~/~/ Название культуры 4961 + "productivity": 0, ~/~/ Урожайность 4962 + "area": 0, ~/~/ Площадь поля, Га. 4963 + "total": 0, ~/~/ Валовый сбор 4964 + "productivityFact": 0, ~/~/ Фактическая урожайность 4965 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4966 + "totalFact": 0, ~/~/ Фактический валовый сбор 4967 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 4968 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 4969 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 4970 + "isyearplan": true, ~/~/ годовой план 4971 + "comment": "string" ~/~/ Комментарий 4972 + } 4973 + ], 4974 + "cropVegetation": [ ~/~/ История вегетации поля 4975 + { 4976 + "values": [ ~/~/ Данные вегетации и состояния посева 4977 + { 4978 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4979 + "ndvi": 0 ~/~/ Индекс вегетации 4980 + } 4981 + ], 4982 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 4983 + { 4984 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4985 + "type": "string", ~/~/ Тип 4986 + "pictureid": "string" ~/~/ Идентификатор ресурса 4987 + } 4988 + ], 4989 + "states": [ ~/~/ Ключевые даты развития поля 4990 + { 4991 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4992 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 4993 + } 4994 + ] 4995 + } 4996 + ], 4997 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 4998 + "counts": { 4999 + "fieldOperations": 0, ~/~/ Количество операций на поле 5000 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5001 + "facts": 0 ~/~/ Счётчик факта 5002 + }, 5003 + "planComment": "string", ~/~/ Комментарий к полю 5004 +))) 5005 + 5006 +((( 5007 + "productivity": 0, ~/~/ Урожайность. 5008 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5009 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 5010 + "year": 0, ~/~/ Год поля 5011 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5012 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5013 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5014 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5015 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 5016 + "id": 0, ~/~/ Идентификатор объекта геозоны 5017 + "name": "string", ~/~/ Название объекта геозоны 5018 + "type": 0, ~/~/ Тип объекта геозоны 5019 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5020 + "fname": "string", ~/~/ Имя файла 5021 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5022 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 5023 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 5024 + "description": "string", ~/~/ Описание объекта геозоны 5025 + "area": 0, ~/~/ Площадь, м2 5026 + "perimetr": 0, ~/~/ Периметр, м 5027 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 5028 +} 5029 + 5030 + 5031 +))) 5032 +))) 5033 +))) 5034 + 5035 +== **Получение поля по id** == 5036 + 5037 +(% class="box infomessage" %) 5038 +((( 5039 +**GET /api/v3/agroLands/{id}** 5040 +))) 5041 + 5042 +Пример запроса: 5043 +id ~/~/ Идентификатор поля 5044 + 5045 +Пример ответа: 5046 + 5047 +((( 5048 +{ 5049 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5050 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5051 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5052 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5053 + "cropRotations": [ ~/~/ Данные по севообороту 5054 + { 5055 + "landId": 0, ~/~/ ID поля 5056 + "landName": "string", ~/~/ Название поля 5057 + "year": 0, ~/~/ Год урожая 5058 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5059 + "cultureName": "string", ~/~/ Название культуры 5060 + "productivity": 0, ~/~/ Урожайность 5061 + "area": 0, ~/~/ Площадь поля, Га 5062 + "total": 0, ~/~/ Валовый сбор 5063 + "productivityFact": 0, ~/~/ Фактическая урожайность 5064 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5065 + "totalFact": 0, ~/~/ Фактический валовый сбор 5066 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 5067 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 5068 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 5069 + "isyearplan": true, ~/~/ План года 5070 + "comment": "string" ~/~/ Комментарий 5071 + } 5072 + ], 5073 + "cropVegetation": [ ~/~/ История вегетации поля 5074 + { 5075 + "values": [ ~/~/ Данные вегетации и состояния посева 5076 + { 5077 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5078 + "ndvi": 0 ~/~/ Индекс вегетации 5079 + } 5080 + ], 5081 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5082 + { 5083 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5084 + "type": "string", ~/~/ Тип 5085 + "pictureid": "string" ~/~/ Идентификатор ресурса 5086 + } 5087 + ], 5088 + "states": [ ~/~/ Ключевые даты развития поля 5089 + { 5090 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5091 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 5092 + } 5093 + ] 5094 + } 5095 + ], 5096 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5097 + "counts": { 5098 + "fieldOperations": 0, ~/~/ Количество операций на поле 5099 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5100 + "facts": 0 ~/~/ Счётчик факта 5101 + }, 5102 + "planComment": "string", ~/~/ Комментарий к полю 5103 + "productivity": 0, ~/~/ Урожайность. 5104 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5105 +))) 5106 + 5107 +((( 5108 +((( 5109 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5110 + "year": 0, ~/~/ Год поля 5111 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5112 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5113 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5114 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5115 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5116 + "id": 0, ~/~/ Идентификатор объекта геозоны 5117 + "name": "string", ~/~/ Название объекта геозоны 5118 + "type": 0, ~/~/ Тип объекта геозоны 5119 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5120 + "fname": "string", ~/~/ Имя файла 5121 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5122 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5123 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5124 + "description": "string", ~/~/ Описание объекта геозоны 5125 + "area": 0, ~/~/ Площадь, м2 5126 + "perimetr": 0, ~/~/ Периметр, м 5127 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5128 +} 5129 +))) 5130 + 5131 + 5132 +== **Удаление существующего поля** == 5133 + 5134 +(% class="box errormessage" %) 5135 +((( 5136 +**DELETE /api/v3/agroLands/{id}** 5137 +))) 5138 + 5139 +Пример запроса: 5140 +id ~/~/ Идентификатор поля 5141 + 5142 +Пример ответа: 5143 + 5144 +((( 5145 +200 ~/~/ Успех 5146 +))) 5147 + 5148 +((( 5149 + 5150 +))) 5151 + 5152 +((( 5153 +((( 5154 +((( 5155 + 5156 +))) 5157 + 5158 +((( 5159 +== **Изменение поля** == 5160 + 5161 +(% class="box infomessage" %) 5162 +((( 5163 +**PUT /api/v3/agroLands** 5164 +))) 5165 + 5166 +Пример запроса: 5167 + 5168 +((( 5169 +((( 5170 +{ 5171 + "id": 0, ~/~/ Идентификатор поля 5172 + "extId": "string", ~/~/ ExtId 5173 + "shape": "string", ~/~/ Форма поля 5174 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5175 + "display": "string", ~/~/ Настройки отображения 5176 + "year": 0, ~/~/ Год поля 5177 + "name": "string", ~/~/ Наименование 5178 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5179 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5180 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5181 + "planComment": "string", ~/~/Комментарий к полю 5182 + "cropRotations": [ ~/~/ Данные по севообороту 5183 + { 5184 + "landId": 0, ~/~/ ID поля 5185 + "landName": "string", ~/~/ Название поля 5186 + "year": 0, ~/~/ Год урожая 5187 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5188 + "cultureName": "string", ~/~/ Название культуры 5189 + "productivity": 0, ~/~/ Урожайность 5190 + "area": 0, ~/~/ Площадь поля, Га. 5191 + "total": 0, ~/~/ Валовый сбор 5192 + "productivityFact": 0, ~/~/ Фактическая урожайность 5193 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5194 + "totalFact": 0, ~/~/ Фактический валовый сбор 5195 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5196 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5197 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5198 + "isyearplan": true, 5199 + "comment": "string" ~/~/ Комментарий 5200 + } 5201 + ], 5202 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5203 +} 5204 +))) 5205 +))) 5206 + 5207 +((( 5208 + 5209 +))) 5210 + 5211 +Пример ответа: 5212 + 5213 +((( 5214 +((( 5215 +((( 5216 +{ 5217 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5218 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5219 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5220 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5221 + "cropRotations": [ ~/~/ Данные по севообороту 5222 + { 5223 + "landId": 0, ~/~/ ID поля 5224 + "landName": "string", ~/~/ Название поля 5225 + "year": 0, ~/~/ Год урожая 5226 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5227 + "cultureName": "string", ~/~/ Название культуры 5228 + "productivity": 0, ~/~/ Урожайность 5229 + "area": 0, ~/~/ Площадь поля, Га 5230 + "total": 0, ~/~/ Валовый сбор 5231 + "productivityFact": 0, ~/~/ Фактическая урожайность 5232 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5233 + "totalFact": 0, ~/~/ Фактический валовый сбор 5234 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5235 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5236 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5237 + "isyearplan": true, ~/~/ 5238 + "comment": "string" ~/~/ Комментарий 5239 + } 5240 + ], 5241 + "cropVegetation": [ ~/~/ История вегетации поля 5242 + { 5243 + "values": [ ~/~/ Данные вегетации и состояния посева 5244 + { 5245 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5246 + "ndvi": 0 ~/~/ Индекс вегетации 5247 + } 5248 + ], 5249 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5250 + { 5251 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5252 + "type": "string", ~/~/ Тип 5253 + "pictureid": "string" ~/~/ Идентификатор ресурса 5254 + } 5255 + ], 5256 + "states": [ ~/~/ Ключевые даты развития поля 5257 + { 5258 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5259 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5260 + } 5261 + ] 5262 + } 5263 + ], 5264 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5265 + "counts": { 5266 + "fieldOperations": 0, ~/~/ Количество операций на поле 5267 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5268 + "facts": 0 ~/~/ Счётчик факта 5269 + }, 5270 + "planComment": "string", ~/~/ Комментарий к полю 5271 + "productivity": 0, ~/~/ Урожайность. 5272 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5273 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5274 + "year": 0, ~/~/ Год поля 5275 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5276 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5277 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5278 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5279 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5280 + "id": 0, ~/~/ Идентификатор объекта геозоны 5281 + "name": "string", ~/~/ Название объекта геозоны 5282 + "type": 0, ~/~/ Тип объекта геозоны 5283 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5284 + "fname": "string", ~/~/ Имя файла 5285 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5286 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5287 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5288 + "description": "string", ~/~/ Описание объекта геозоны 5289 + "area": 0, ~/~/ Площадь, м2 5290 + "perimetr": 0, ~/~/ Периметр, м 5291 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5292 +} 5293 +))) 5294 +))) 5295 +))) 5296 +))) 5297 +))) 5298 + 5299 + 5300 +== **Редактирование года урожая ** == 5301 + 5302 +(% class="box successmessage" %) 5303 +((( 5304 +**POST /api/v3/agroLands/updateOpenCloseYear** 5305 +))) 5306 + 5307 +Пример запроса: 5308 + 5309 +((( 5310 +((( 5311 +{ 5312 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5313 + 0 5314 + ], 5315 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5316 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5317 +} 5318 +))) 5319 + 5320 + 5321 +))) 5322 + 5323 +Пример ответа: 5324 + 5325 +((( 5326 +((( 5327 +{ 5328 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5329 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5330 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5331 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5332 + "cropRotations": [ ~/~/ Данные по севообороту 5333 + { 5334 + "landId": 0, ~/~/ ID поля 5335 + "landName": "string", ~/~/ Название поля 5336 + "year": 0, ~/~/ Год урожая 5337 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5338 + "cultureName": "string", ~/~/ Название культуры 5339 + "productivity": 0, ~/~/ Урожайность 5340 + "area": 0, ~/~/ Площадь поля, Га. 5341 + "total": 0, ~/~/ Валовый сбор 5342 + "productivityFact": 0, ~/~/ Фактическая урожайность 5343 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5344 + "totalFact": 0, ~/~/ Фактический валовый сбор 5345 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5346 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5347 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5348 + "isyearplan": true, ~/~/ 5349 + "comment": "string" ~/~/ Комментарий 5350 + } 5351 + ], 5352 + "cropVegetation": [ ~/~/ История вегетации поля 5353 + { 5354 + "values": [ ~/~/ Данные вегетации и состояния посева 5355 + { 5356 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5357 + "ndvi": 0 ~/~/ Индекс вегетации 5358 + } 5359 + ], 5360 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5361 + { 5362 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5363 + "type": "string", ~/~/ Тип 5364 + "pictureid": "string" ~/~/ Идентификатор ресурса 5365 + } 5366 + ], 5367 + "states": [ ~/~/ Ключевые даты развития поля 5368 + { 5369 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5370 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5371 + } 5372 + ] 5373 + } 5374 + ], 5375 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5376 + "counts": { 5377 + "fieldOperations": 0, ~/~/ Количество операций на поле 5378 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5379 + "facts": 0 ~/~/ Счётчик факта 5380 + }, 5381 + "planComment": "string", ~/~/ Комментарий к полю 5382 + "productivity": 0, ~/~/ Урожайность. 5383 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5384 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5385 + "year": 0, ~/~/ Год поля 5386 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5387 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5388 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5389 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5390 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5391 + "id": 0, ~/~/ Идентификатор объекта геозоны 5392 + "name": "string", ~/~/ Название объекта геозоны 5393 + "type": 0, ~/~/ Тип объекта геозоны 5394 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5395 + "fname": "string", ~/~/ Имя файла 5396 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5397 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5398 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5399 + "description": "string", ~/~/ Описание объекта геозоны 5400 + "area": 0, ~/~/ Площадь, м2 5401 + "perimetr": 0, ~/~/ ериметр, м 5402 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5403 +} 5404 +))) 5405 + 5406 + 5407 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5408 +))) 5409 +))) 5410 +))) 5411 + 5412 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 5413 + 5414 + 5415 +(% class="box infomessage" %) 5416 +((( 5417 +**GET api/v3/Vehicles/recyclebin/all** 5418 +))) 5419 + 5420 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 5421 + 5422 +Параметр запроса: {parentId} - идентификатор агента 5423 + 5424 +В заголовках запроса: X-Auth: Токен авторизации 5425 + 5426 +Ответ: 5427 + 5428 +[ 5429 + { 5430 + "recordTime": "", ~/~/Время записи 5431 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5432 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5433 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5434 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5435 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5436 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5437 + "items": [ ~/~/ 5438 +nullable: true ~/~/Детали 5439 + { 5440 + "name": "string", ~/~/наименование столбца 5441 + "value": "string" ~/~/содержание столбца 5442 + } 5443 + ] 5444 + }, 5445 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5446 + "string" 5447 + ] 5448 + } 5449 +] 5450 + 5451 + 5452 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) == 5453 + 5454 +(% class="box infomessage" %) 5455 +((( 5456 +**POST api/v3/Vehicles/recyclebin/erase** 5457 +))) 5458 + 5459 +В заголовках запроса: X-Auth: Токен авторизации 5460 + 5461 +Пример запроса: 5462 + 5463 +[ 5464 +0 5465 +] 5466 + 5467 + 5468 +Пример ответа: 5469 + 5470 +[ 5471 +{ 5472 + "recordTime": "", ~/~/Время записи 5473 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5474 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5475 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5476 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5477 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5478 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5479 + "items": [ ~/~/Детали 5480 + { 5481 + "name": "", ~/~/Имя свойства 5482 + "value": "" ~/~/Значение свойства 5483 + } 5484 + ] 5485 + }, 5486 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5487 + "" 5488 + ] 5489 + } 5490 +] 5491 + 5492 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 5493 + 5494 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 5495 + 5496 +(% class="box infomessage" %) 5497 +((( 5498 +**POST api/v3/Vehicles/recyclebin/restore** 5499 +))) 5500 + 5501 +В заголовках запроса: X-Auth: Токен авторизации 5502 + 5503 +Параметры в теле запроса (JSON): 5504 + 5505 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5506 + 5507 +В заголовках запроса: X-Auth: Токен авторизации 5508 + 5509 + 5510 +Пример запроса: 5511 + 5512 +((( 5513 +[ 5514 +))) 5515 + 5516 +((( 5517 + 0 5518 +))) 5519 + 5520 +((( 5521 +] 5522 +))) 5523 + 5524 + 5525 +Пример ответа: 5526 + 5527 +[ 5528 +{ 5529 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5530 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5531 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5532 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5533 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5534 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5535 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5536 + "items": [ ~/~/Детали 5537 + { 5538 + "name": "string", ~/~/Имя свойства 5539 + "value": "string" ~/~/Значение свойства 5540 + } 5541 + ] 5542 + }, 5543 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5544 + "string" 5545 + ] 5546 + } 5547 +] 5548 + 5549 + 5550 += **Раздел: Журнал заданий ** = 5551 + 5552 + 5553 +== **Создание задания в Журнале заданий** == 5554 + 5555 +(% class="box infomessage" %) 5556 +((( 5557 +**POST /api/v3/vehicletasks** 5558 +))) 5559 + 5560 +Пример запроса: 5561 + 5562 +((( 5563 +{ 5564 + "vehicleId": 0, ~/~/ Идентификатор ТС 5565 + "description": "string", ~/~/ Описание 5566 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5567 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5568 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы 5569 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы 5570 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5571 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5572 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5573 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5574 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5575 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5576 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5577 + "cost": { 5578 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5579 + "Name": "string", ~/~/ Наименование 5580 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection ) 5581 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5582 + "Norm": 0 ~/~/ Норма внесения 5583 + }, 5584 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 5585 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5586 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания 5587 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления 5588 + "deleted": true, ~/~/ Признак удаления 5589 + "extId": "string", 5590 + "GeoIds": [ ~/~/ Cвязанные поля 5591 + 0 5592 + ] 5593 +} 5594 +))) 5595 + 5596 + 5597 +Пример ответа: 5598 + 5599 +{ 5600 + "vehicleId": 0, ~/~/ Идентификатор ТС 5601 + "description": "string", ~/~/ Описание 5602 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5603 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5604 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5605 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5606 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5607 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5608 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5609 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5610 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5611 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5612 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5613 + "cost": { 5614 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5615 + "Name": "string", ~/~/ Наименование 5616 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5617 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5618 + "Norm": 0 ~/~/ Норма внесения 5619 + }, 5620 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5621 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5622 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5623 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5624 + "deleted": true, ~/~/ Признак удаления 5625 + "extId": "string", ~/~/ ExtId 5626 + "GeoIds": [ ~/~/ Связанные поля 5627 + 0 5628 + ] 5629 +} 5630 + 5631 + 5632 +== **Редактирование задания в Журнале заданий** == 5633 + 5634 +(% class="box successmessage" %) 5635 +((( 5636 +**PUT /api/v3/vehicletasks** 5637 +))) 5638 + 5639 +Пример запроса: 5640 + 5641 +((( 5642 +{ 5643 + "vehicleId": 0, ~/~/ Идентификатор ТС 5644 + "description": "string", ~/~/ Описание 5645 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5646 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5647 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы 5648 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы 5649 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5650 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5651 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5652 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5653 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5654 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5655 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5656 + "cost": { 5657 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5658 + "Name": "string", ~/~/ Наименование 5659 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5660 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5661 + "Norm": 0 ~/~/ Норма внесения 5662 + }, 5663 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5664 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5665 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания 5666 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления 5667 + "deleted": true, ~/~/ Признак удаления 5668 + "extId": "string", ~/~/ ExtId 5669 + "GeoIds": [ ~/~/ Связанные поля 5670 + 0 5671 + ] 5672 +} 5673 +))) 5674 + 5675 + 5676 +Пример ответа: 5677 + 5678 +{ 5679 + "vehicleId": 0, ~/~/ Идентификатор ТС 5680 + "description": "string", ~/~/ Описание 5681 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5682 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5683 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5684 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5685 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5686 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5687 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5688 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5689 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5690 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5691 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5692 + "cost": { 5693 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5694 + "Name": "string", ~/~/ Наименование 5695 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5696 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5697 + "Norm": 0 ~/~/ Норма внесения 5698 + }, 5699 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5700 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5701 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5702 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5703 + "deleted": true, ~/~/ Признак удаления 5704 + "extId": "string", ~/~/ ExtId 5705 + "GeoIds": [ ~/~/ Связанные поля 5706 + 0 5707 + ] 5708 +} 5709 + 5710 + 5711 +== **Удаление задания в Журнале заданий** == 5712 + 5713 +(% class="box warningmessage" %) 5714 +((( 5715 +**DELETE /api/v3/vehicletasks** 5716 +))) 5717 + 5718 +Пример запроса: 5719 + 5720 +((( 5721 +[ 5722 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 5723 +] 5724 +))) 5725 + 5726 +((( 5727 + 5728 +))) 5729 + 5730 +Пример ответа: 5731 + 5732 +{ 5733 + "vehicleId": 0, ~/~/ Идентификатор ТС 5734 + "description": "string", ~/~/ Описание 5735 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5736 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5737 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5738 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5739 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5740 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5741 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5742 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5743 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5744 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5745 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5746 + "cost": { 5747 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5748 + "Name": "string", ~/~/ Наименование 5749 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5750 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5751 + "Norm": 0 ~/~/ Норма внесения 5752 + }, 5753 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5754 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5755 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5756 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5757 + "deleted": true, ~/~/ Признак удаления 5758 + "extId": "string", ~/~/ ExtId 5759 + "GeoIds": [ ~/~/ Связанные поля 5760 + 0 5761 + ] 5762 +} 5763 + 5764 + 5765 +== **Получение списка Журнала заданий** == 5766 + 5767 +(% class="box infomessage" %) 5768 +((( 5769 +**POST /api/v3/vehicletasks/getbyperiod** 5770 +))) 5771 + 5772 +Пример запроса: 5773 + 5774 +((( 5775 +{ 5776 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода. 5777 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода. 5778 + "TimeZone": 0, ~/~/ Часовой пояс. 5779 + "OperationsIds": [ ~/~/ Идентификаторы видов работ для фильтрации журнала 5780 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 5781 + ], 5782 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала 5783 + 0 5784 + ], 5785 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала 5786 + 0 5787 + ], 5788 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска. 5789 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 5790 +} 5791 +))) 5792 + 5793 + 5794 +Пример ответа: 5795 + 5796 +((( 5797 +{ 5798 + "total": 0, ~/~/ Общее количество записей 5799 + "pages": 0, ~/~/ Общее количество страниц 5800 + "currentPage": 0, ~/~/ Текущая страница 5801 + "items": [ ~/~/ Записи 5802 + { 5803 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5804 + "isGroup": true, ~/~/ Вид задания (true - групповое, иначе - одиночное). 5805 + "name": "string", ~/~/ Название задания. 5806 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc 5807 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc 5808 + "workKind": "string", ~/~/ Вид работ 5809 + "techOp": "string", ~/~/ Тех. операция 5810 + "trailerModel": "string", ~/~/ Модель агрегата 5811 + "width": "string", ~/~/ Ширина, м 5812 + "speed": "string", ~/~/ Тех. скорость 5813 + "fields": "string", ~/~/ Поля 5814 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га) 5815 + "vehicles": "string", ~/~/ Объект-модель 5816 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов) 5817 + "drivers": "string", ~/~/ Водители 5818 + "tmc": "string", ~/~/ ТМЦ 5819 + "client": "string", ~/~/ Клиент 5820 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5821 + "dep": "string", ~/~/ Подразделение 5822 + "geoIds": [ ~/~/ Связанные поля 5823 + 0 5824 + ] 5825 + } 5826 + ] 5827 +} 5828 +))) 5829 + 5830 + 5831 += **Раздел: Локатор ** = 5832 + 5833 + 5834 +== **Получение списка локаторов, доступных пользователю ** == 5835 + 5836 +(% class="box infomessage" %) 5837 +((( 5838 +**GET /api/v3/locators** 5839 +))) 5840 + 5841 +В заголовках запроса: X-Auth: Токен авторизации 5842 + 5843 + 5844 +Пример ответа: 5845 + 5846 +((( 5847 +[ 5848 + { 5849 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 5850 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 5851 + "agentName": "string", ~/~/ Наименование агента. 5852 + "isEnabled": true, ~/~/ Активен 5853 + "created": "2025-03-12T06:48:41.254Z", ~/~/ Дата создания 5854 + "updated": "2025-03-12T06:48:41.254Z", ~/~/ Дата обновления 5855 + "name": "string", ~/~/ Наименование 5856 + "status": 0, ~/~/ 5857 + "activationMode": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 5858 + "activationTime": "2025-03-12T06:48:41.254Z", ~/~/ Определяет вид активации локаторов. ( 0 - сейчас, 1 - время активации) 5859 + "validity": 0, ~/~/ Срок действия в днях (1-90). 5860 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5861 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 5862 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 5863 + "url": "string", ~/~/ Ссылка 5864 + "language": 0, ~/~/ Язык. 5865 + "vehiclesCount": 0, ~/~/ Количество объектов. 5866 + "geozonesCount": 0, ~/~/ Количество геозон. 5867 + "fieldsCount": 0 ~/~/ Количество полей. 5868 + } 5869 +] 5870 +))) 5871 + 5872 + 5873 + 5874 +== **Создание локатора** == 5875 + 5876 +(% class="box successmessage" %) 5877 +((( 5878 +**POST /api/v3/locators** 5879 +))) 5880 + 5881 +Пример запроса: 5882 + 5883 +((( 5884 +{ 5885 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 5886 + "isEnabled": true, ~/~/ Активность 5887 + "name": "string", ~/~/ Наименование локатора 5888 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 5889 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 5890 + "validity": 0, ~/~/ Срок действия в днях (1-90) 5891 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5892 + "url": "string", ~/~/ Ссылка 5893 + "language": 0 ~/~/ Язык 5894 +} 5895 +))) 5896 + 5897 + 5898 +Пример ответа: 5899 + 5900 +((( 5901 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора 5902 +))) 5903 + 5904 + 5905 + 5906 +== **Изменение локатора** == 5907 + 5908 +(% class="box infomessage" %) 5909 +((( 5910 +**PUT /api/v3/locators** 5911 +))) 5912 + 5913 +Пример запроса: 5914 + 5915 +((( 5916 +{ 5917 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 5918 + "isEnabled": true, ~/~/ Активность 5919 + "name": "string", ~/~/ Наименование 5920 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 5921 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 5922 + "validity": 0, ~/~/ Срок действия в днях (1-90) 5923 + "autoProlongation": true, ~/~/ Автопродление срока действия 5924 + "url": "string", ~/~/ Ссылка 5925 + "language": 0 ~/~/ Язык 5926 +} 5927 +))) 5928 + 5929 + 5930 +Пример ответа: 5931 + 5932 +200 ~/~/ Success 5933 + 5934 + 5935 +== **Удалить локатор** == 5936 + 5937 +(% class="box warningmessage" %) 5938 +((( 5939 +**DELETE /api/v3/locators** 5940 +))) 5941 + 5942 +Пример запроса: 5943 + 5944 +((( 5945 +[ 5946 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора 5947 +] 5948 +))) 5949 + 5950 + 5951 + 5952 += **Раздел: Яндекс Маршруты** = 5953 + 5954 + 5955 +== **Возвращение списка маршрутов** == 5956 + 5957 +(% class="box infomessage" %) 5958 +((( 5959 +**GET /api/v3/TransportRoutes** 5960 +))) 5961 + 5962 +Пример запроса: 5963 +Id ~/~/ Идентификатор поля 5964 + 5965 + 5966 +Пример ответа: 5967 + 5968 +((( 5969 +[ 5970 + { 5971 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 5972 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 5973 + "name": "string", ~/~/ Наименование маршрута. 5974 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 5975 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 5976 + 0 5977 + ] 5978 + } 5979 +] 5980 +))) 5981 + 5982 + 5983 + 5984 +== **Добавить маршрут** == 5985 + 5986 +(% class="box infomessage" %) 5987 +((( 5988 +**POST /api/v3/TransportRoutes** 5989 +))) 5990 + 5991 +Пример запроса: 5992 +{ 5993 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 5994 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 5995 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 5996 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 5997 + 0 5998 + ] 5999 +} 6000 + 6001 + 6002 +Пример ответа: 6003 + 6004 +((( 6005 +{ 6006 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6007 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6008 + "name": "string", ~/~/ Определяет наименование маршрута 6009 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6010 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6011 + 0 6012 + ] 6013 +} 6014 +))) 6015 + 6016 + 6017 +== **Обновление маршрута** == 6018 + 6019 +(% class="box successmessage" %) 6020 +((( 6021 +**PUT /api/v3/TransportRoutes** 6022 +))) 6023 + 6024 +Пример запроса: 6025 + 6026 +((( 6027 +{ 6028 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6029 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6030 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6031 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6032 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6033 + 0 6034 + ] 6035 +} 6036 +))) 6037 + 6038 + 6039 +Пример ответа: 6040 + 6041 +((( 6042 +{ 6043 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6044 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6045 + "name": "string", ~/~/ Определяет наименование маршрута 6046 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6047 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6048 + 0 6049 + ] 6050 +} 6051 +))) 6052 + 6053 + 6054 +== **Получить связки маршрутов ТС** == 6055 + 6056 +(% class="box infomessage" %) 6057 +((( 6058 +**POST /api/v3/TransportRoutes/getroutesvehicles** 6059 +))) 6060 + 6061 +Пример запроса: 6062 + 6063 +((( 6064 +[ 6065 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ идентификатор маршрута 6066 +] 6067 +))) 6068 + 6069 + 6070 +Пример ответа: 6071 + 6072 +((( 6073 +[ 6074 + { 6075 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС 6076 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута 6077 + } 6078 +] 6079 +))) 6080 + 6081 + 6082 +== **Удалить маршрут** == 6083 + 6084 +(% class="box warningmessage" %) 6085 +((( 6086 +**DELETE /api/v3/TransportRoutes/{id}** 6087 +))) 6088 + 6089 +Пример запроса: 6090 +Id ~/~/ Идентификатор поля 6091 + 6092 + 6093 +==== ==== 6094 + 6095 +==== **Раздел: Управление доступа к машинам** ==== 6096 + 6097 + 6098 +== Получение списка ID == 6099 + 6100 +(% class="box infomessage" %) 6101 +((( 6102 +**GET /api/v3/UserVisibleVehicles/{userId}** 6103 +))) 6104 + 6105 + 6106 + 6107 + 6108 + 6109 + 6110 + 6111 + 6112 + 6113 + 3542 3542 (% class="box" lang="en-US" style="text-align: center;" %) 3543 3543 ((( 3544 3544 (% 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]] **