<
From version < 116.1 >
edited by Илья Крайнов
on 2023/11/20 18:01
To version < 244.1 >
edited by Андрей Калиновский
on 2025/07/03 09:44
>
Change comment: There is no comment for this version

Summary

Details

Icon Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.krainovim
1 +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 - "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc",
706 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc",
679 679   "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1"
680 680   ]
681 681  
... ... @@ -849,7 +849,7 @@
849 849  {
850 850   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
851 851   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
852 - "deleted": true,
880 + "deleted": false,
853 853   "extId": "string",
854 854   "name": "string",
855 855   "picture": "string",
... ... @@ -868,7 +868,7 @@
868 868  {
869 869   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
870 870   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
871 - "deleted": true,
899 + "deleted": false,
872 872   "extId": "string",
873 873   "name": "string",
874 874   "picture": "string",
... ... @@ -902,7 +902,7 @@
902 902  (% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models**
903 903  )))
904 904  
905 -(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе.
933 +(% style="color:#000000" %)Метод позволяет изменить статус модели, указанного в запросе.
906 906  
907 907  (% style="color:#000000" %)Метод запроса: **PUT**
908 908  
... ... @@ -969,7 +969,7 @@
969 969  (% lang="en-US" %)**DELETE /api/v3/models/{Id}**
970 970  )))
971 971  
972 -(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалить пользователя, указанного в строке запроса.
1000 +(% style="color:#000000" %)Метод позволяет удалить модели. Метод позволяет удалить модель, указанного в строке запроса.
973 973  
974 974  (% style="color:#000000" %)Метод запроса: **DELETE**
975 975  
... ... @@ -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,222 @@
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 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) ==
1632 +
1413 1413  (% class="box infomessage" %)
1414 1414  (((
1415 1415  (% lang="en-US" %)**POST /api/v3/vehicles/find**
1416 1416  )))
1417 1417  
1418 -(% style="color:#000000" %)Метод позволяет получить основные параметры объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).
1638 +(% 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 ~/~/ значение любого из произвольных полей ТС
1672 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально)
1673 + "unitName": "string",  ~/~/ Название подразделения (опционально)
1674 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально)
1675 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально)
1676 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально)
1677 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные
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" %){
1684 +(% style="color:#000000" %)[
1685 +{
1462 1462  
1687 +(((
1688 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC
1689 +)))
1690 +
1691 +(((
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" %)}
1717 +)))
1490 1490  
1719 +(((
1720 + }
1721 + ],
1722 + "vehicleGroups": [  ~/~/ Группы ТС
1723 + {
1724 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности
1725 + "name": "string" ~/~/ Наименование группы ТС
1726 + }
1727 + ]
1728 + }
1729 +]
1730 +)))
1731 +
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 -
1767 +(% style="color:#000000" %){(%%)
1529 1529   "status": "", ~/~/ значение статуса
1530 1530   "date": "", ~/~/ Дата смены статуса 
1531 1531   "description": "", ~/~/ Описание
... ... @@ -1532,10 +1532,9 @@
1532 1532   "data": "", ~/~/ Данные
1533 1533   "overwrite": false, ~/~/ Флаг перезаписи
1534 1534   "stage": "", ~/~/ Состояние
1535 -
1536 -(% style="text-align:left" %)
1537 1537  (% style="color:#000000" %) }
1538 1538  
1776 +
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 - }
1852 +
1853 +(((
1854 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор объекта.
1855 + "inputNumber": 0, ~/~/ № входа.
1856 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения.
1857 + "comment": "string", ~/~/ Комментарий.
1858 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения.
1859 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя.
1860 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения.
1861 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения.
1862 +)))
1863 +
1864 + } 
1617 1617   ],
1618 1618   "commandTemplates": [ ~/~/ Шаблон команды
1619 1619   {
... ... @@ -1623,8 +1623,7 @@
1623 1623   "retries": 0
1624 1624   }
1625 1625   ],
1626 -
1627 - "sensors": [ ~/~/ Датчики
1874 +"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, ~/~/ Отображать последнее валидное значение
1900 +
1901 +(((
1902 + "color": "string",** ~/~/ **Цвет датчика
1903 +)))
1904 +
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 ~/~/ Макс. значение
1930 +
1931 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге
1932 + {
1933 + "from": 0, ~/~/ С какого значения
1934 + "color": "string", ~/~/ Каким цветом
1935 + "text": "string" ~/~/ Текст подписи к этому интервалу
1936 + }
1937 + ]
1690 1690   }
1691 1691   ],
1940 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах
1941 +
1692 1692   "customFields": [ ~/~/ Произвольные поля
1693 - {
1694 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1695 - "name": "string",
1696 - "value": "string",
1697 - "forClient": true,
1698 - "forTooltip": true,
1699 - "forReport": true
1943 + {     
1944 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ System.Guid идентификатор элемента сущности
1945 + "name": "string", ~/~/ Наименование произвольного поля
1946 + "value": "string", ~/~/ Значение произвольного поля
1947 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента
1948 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте)
1949 + "forReport": true ~/~/ Отобразить произвольное поле в отчете
1700 1700   }
1701 - ]
1951 +
1952 +(((
1953 + ],
1954 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов
1955 +)))
1956 +
1702 1702  }
1703 1703  
1959 +
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" %){    
1962 +(((
1963 +{
1964 + "vehicleId": 0, ~/~/ ID ТС
1965 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 
1966 + "name": "string", ~/~/ Имя объекта
1967 + "imei": "string", ~/~/ IMEI
1968 + "deviceTypeId": 0, ~/~/ ID типа устройства
1969 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели
1970 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения
1971 + "sim1": "string", ~/~/ SIM1
1972 + "sim2": "string", ~/~/ SIM2
1973 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км
1974 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас
1975 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу
1976 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км
1977 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас
1978 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу
1979 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км
1980 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км
1981 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас
1982 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас
1983 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х
1984 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х
1985 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor
1986 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1)
1987 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны?
1988 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат.
1989 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат.
1990 + "counters": { ~/~/ состояний счётчиков
1991 + "mileageEnabled": true,  ~/~/ Флаг включения счётчика "Пробег"
1992 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы"
1993 + "mileage": 0, ~/~/ Пробег
1994 + "motohours": 0 ~/~/ Моточасы 
1995 + },
1996 + "cmsv6Parameters": { ~/~/ Dto для CMSv6
1997 + "id": "string", ~/~/ CMSV6 Идентификатор
1998 + "enabled": true, ~/~/ Признак включения
1999 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 
2000 +)))
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
2002 +
2003 +(((
2004 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол.
2005 + "login": "string", ~/~/ CMSV6 имя учетной записи
2006 + "password": "string" ~/~/ CMSV6 — пароль учетной записи
2007 + },
2008 + "inspectionTasks": [ ~/~/ Задания на ТО
2009 + {
2010 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи
2011 + "enabled": true, ~/~/ Признак включения
2012 + "name": "string", ~/~/ Имя задания
2013 + "description": "string", ~/~/ Описание задания
2014 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах)
2015 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО
2016 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах)
2017 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО
2018 + "periodicCondition": 0, ~/~/ Условие периодичности по времени
2019 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы
2020 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО
2021 + "maxQuantity": 0  ~/~/ Условие по количеству записей для деактивации
2022 + }
2023 + ],
2024 + "drivers": [  ~/~/ Список водителей
2025 + {
2026 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта.
2027 + "inputNumber": 0, ~/~/ № входа.
2028 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения.
2029 + "comment": "string", ~/~/ Комментарий.
2030 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения.
2031 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя.
2032 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения.
2033 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения.
2034 + }
2035 + ],
2036 + "commandTemplates": [ ~/~/ Список шаблонов команд
2037 + {
2038 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона
2039 + "name": "string", ~/~/ Название шаблона команд
2040 + "command": "string", ~/~/ Команда на выполнение
2041 + "retries": 0 ~/~/ Лимит попыток отправки
2042 + }
2043 + ],
2044 + "sensors": [  ~/~/ Список датчиков 
2045 + {
2046 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика
2047 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite
2048 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition,
2049 +)))
2050 +
2051 +(((
2052 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature,
2053 +)))
2054 +
2055 +(((
2056 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp,
2057 +)))
2058 +
2059 +(((
2060 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal,
2061 +)))
2062 +
2063 +(((
2064 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel,
2065 +)))
2066 +
2067 +(((
2068 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed
2069 + "name": "string", ~/~/ Имя датчика
2070 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse,
2071 +)))
2072 +
2073 +(((
2074 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual
2075 + "inputNumber": 0, ~/~/ Номер входа
2076 + "pseudonym": "string", ~/~/ Псевдоним
2077 + "medianDegree": 0, ~/~/ Степень медианной фильтрации
2078 + "isInverted": true, ~/~/ Признак инверсии
2079 + "disabled": true, ~/~/ Датчик не участвует в обработке
2080 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика.  0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs
2081 + "gradesTables": [ ~/~/ Тарировка
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": "", ~/~/ Сколько раз выполнить задание
2083 + "grades": [ ~/~/ Таблицы тарировки
2084 + {
2085 + "input": 0, ~/~/ Вход
2086 + "output": 0 ~/~/ Выход
2087 + }
2088 + ],
2089 + "relevanceTime": "2024-10-30T10:31:17.196Z"  ~/~/ Время, с которого наступает актуальность таблицы тарировки
1749 1749   }
2091 + ],
2092 + "showInTooltip": true, ~/~/ Отображение в подсказке
2093 + "showLastValid": true, ~/~/ Отображать последнее валидное значение
1750 1750  
1751 -(% lang="en-US" style="text-align:left" %)
1752 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)}
2095 +(((
2096 + "color": "string", ~/~/ цвет уведомлений
2097 +)))
1753 1753  
2099 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива
2100 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания
2101 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 
2102 + "expr": "string", ~/~/ Выражение
2103 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков
2104 + "string" 
2105 + ],
2106 + "customParams": { ~/~/ Дополнительные настройки
2107 + "additionalProp1": "string",
2108 + "additionalProp2": "string",
2109 + "additionalProp3": "string"
2110 + },
2111 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления.
2112 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге
2113 + {
2114 + "from": 0, ~/~/ С какого значения
2115 + "color": "string", ~/~/ Каким цветом
2116 + "text": "string" ~/~/ Текст подписи к этому интервалу
2117 + }
2118 + ]
2119 + }
2120 + ],
2121 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах
2122 + "customFields": [ ~/~/ Список произвольных полей
2123 + {
2124 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности
2125 + "name": "string", ~/~/ Наименование произвольного поля
2126 + "value": "string", ~/~/ Значение произвольного поля
2127 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента
2128 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте)
2129 + "forReport": true ~/~/ Отобразить произвольное поле в отчете
2130 + }
2131 + ],
2132 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor
2133 +}
2134 +)))
2135 +
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]]
2174 +(% 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 -
2180 +(% 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 -
2204 +(% 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  
2251 +== (% style="color:#000000; font-size:16px" %)**Получить тип и номер входа сырого параметра **(%%) ==
2252 +
2253 +(% class="box infomessage" style="text-align: left;" %)
2254 +(((
2255 +**POST /api/v3/terminalMessages/mapping**
2256 +)))
2257 +
2258 +Запрос позволяет узнать тип и номер входа для сырого параметра, приходящего по указанному протоколу.
2259 +
2260 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/terminalMessages/mapping
2261 +
2262 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
2263 +
2264 +{
2265 + "protocolType": 0,
2266 + "params": ["string"]
2267 +}
2268 +
2269 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
2270 +|protocolType|ID типа протокола
2271 +|params|(((
2272 +Массив наименований параметров в сообщении
2273 +)))
2274 +
2275 +Ответ:
2276 +
2277 +{
2278 + "protocolType": 0,
2279 + "mapping": {
2280 + "additionalProp1": {
2281 + "inputType": 0,
2282 + "inputNumber": 0
2283 + },
2284 + "additionalProp2": {
2285 + "inputType": 0,
2286 + "inputNumber": 0
2287 + }
2288 + }
2289 +}
2290 +
2291 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
2292 +|protocolType|Тип протокола
2293 +|inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный
2294 +|inputNumber|(((
2295 +Номер входа
2296 +)))
2297 +
2298 +(% class="wikigeneratedid" %)
2299 +Перечень ID протоколов в статье - [[ID протоколов для получения типов и номеров входа сырого параметра.>>https://wiki.glonasssoft.ru/bin/view/API/ID%20%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D1%8B%20%D0%B4%D0%BB%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D1%8F%20%D1%82%D0%B8%D0%BF%D0%B0%20%D0%B8%20%D0%BD%D0%BE%D0%BC%D0%B5%D1%80%D0%B0%20%D0%B2%D1%85%D0%BE%D0%B4%D0%B0%20%D1%81%D1%8B%D1%80%D0%BE%D0%B3%D0%BE%20%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B0/]]
2300 +
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  
2325 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
2326 +|vehicleId|ID объекта
2327 +|from|Дата и время начала периода запроса
2328 +|to|Дата и время окончания периода запроса
2329 +
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": { ~/~/ список параметров датчиков передаваемых терминалом
2336 + "deviceTime": "2023-11-29T07:40:44.052Z",
2337 + "serverTime": "2023-11-29T07:40:44.052Z",
2338 + "speed": 0,
2339 + "altitude": 0,
2340 + "latitude": 0,
2341 + "longitude": 0,
2342 + "satellites": 0,
2343 + "course": 0,
2344 + "voltage": 0,
2345 + "parameters": {
1914 1914   "additionalProp1": "string",
1915 1915   "additionalProp2": "string",
1916 1916   "additionalProp3": "string"
1917 1917   },
1918 - "photoCount": 0 ~/~/ Кол-во фото
2350 + "photoCount": 0,
2351 + "lbsCorrectedCoords": true,
2352 + "protocolType": 0
1919 1919   }
1920 1920   ]
1921 1921   }
1922 1922  ]
1923 1923  
2358 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
2359 +|deviceTime|Время сообщения терминала
2360 +|serverTime|Время когда сообщение поступило на сервер
2361 +|speed|Скорость
2362 +|altitude|Высота над уровнем моря
2363 +|latitude|Широта
2364 +|longitude|Долгота
2365 +|satellites|Кол-во спутников
2366 +|course|Курс
2367 +|voltage|Бортовое напряжение
2368 +|parameters|Список параметров и их значений
2369 +|photoCount|Количество фото
2370 +|lbsCorrectedCoords|Признак того, что координаты были скорректированы по LBS, true - скорректированы, false - не скорректированы
2371 +|protocolType|ID типа протокола
2372 +
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 ~/~/ Моточасы на окончание периода
2409 + "mileage": 0, ~/~/ Пробег за период, километры
2410 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 
2411 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры
2412 + "motohours": 0, ~/~/ Моточасы за период, секунды
2413 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды
2414 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды
2415 + "idlingTime": 0 ~/~/  Холостой ход за период, секунд
2416 +
1964 1964   }
1965 1965   ]
1966 1966   }
... ... @@ -2002,13 +2002,23 @@
2002 2002   "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 
2003 2003   "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода
2004 2004   "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода
2458 + "fuelTankLevelStart": 0, ~/~/ Уровень топлива в цистерне на начало периода
2459 + "fuelTankLevelEnd": 0, ~/~/ Уровень топлива в цистерне на конец периода
2005 2005   "fuelConsumption": 0, ~/~/ Расход топлива
2006 2006   "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении
2462 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне
2463 +
2007 2007   }
2008 2008   ]
2009 2009   }
2010 2010  ]
2011 2011  
2469 +(% class="box warningmessage" %)
2470 +(((
2471 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"".
2472 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling".
2473 +)))
2474 +
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 - слив
2509 + "event": 0, ~/~/ Тип события 0 - Other, 1 - Engine, 2 - Stop, 3 - FuelIn, 4 - FuelOut, 5 - Garbage, 6 - Grader, 8 - Otval, 9 - Sand, 10 - MixerLand, 11 - MixerMove, 12 - OpenCircuit, 13 - TechSpeed, 14 - Work, 15 - Braid, 16 - Broom, 17 - ReFuller, 18 - Crane, 19 - Power, 20 - TankFuelIn, 21 - TankFuelOut, 22 - BigStop, 23 - OverSpeed, 24 - Unloading, 25 - Warning, 26 - GarbageWork, 27 - Custom, 28 - CustomWork, 29 - GNSS, 30 - GrainIn, 31 - GrainOut, 32 - WeighingTerminal, 33 - Stopping, 34 - FertilizerWork, 35 - FertilizerRefueling
2510 +
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,120 @@
2054 2054   }
2055 2055  ]
2056 2056  
2521 +
2522 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) ==
2523 +
2524 +(% class="box infomessage" %)
2525 +(((
2526 +**POST /api/v3/vehicles/moveStop**
2527 +)))
2528 +
2529 +Метод запроса: **POST**
2530 +
2531 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop
2532 +
2533 +В заголовках запроса: X-Auth: Токен авторизации
2534 +
2535 +
2536 +Тело запроса:
2537 +
2538 +{
2539 + "vehicleIds": [ ], ~/~/ Список ID объектов
2540 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса
2541 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса
2542 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3
2543 +}
2544 +
2545 +Ответ:
2546 +
2547 +[ 
2548 + {
2549 + "vehicleId": 0, ~/~/ ID объекта
2550 + "vehicleName": "string", ~/~/ Имя объекта
2551 + "moves": [ ~/~/ Событие движения
2552 + {
2553 + "mileage": 0, ~/~/ Пробег, км
2554 + "eventId": 0, ~/~/ Идентификатор события
2555 + "eventName": "string", ~/~/ Название события
2556 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события
2557 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события
2558 + "duration": 0 ~/~/ Продолжительность события, секунд
2559 + }
2560 + ],
2561 + "stops": [ ~/~/ События стоянок
2562 + {
2563 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты
2564 + "eventId": 0, ~/~/ Идентификатор события
2565 + "eventName": "string", ~/~/ Название события
2566 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события
2567 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события
2568 + "duration": 0 ~/~/ Продолжительность события, секунд
2569 + }
2570 + ]
2571 + }
2572 +]
2573 +
2574 +
2575 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) ==
2576 +
2577 +(% class="box infomessage" %)
2578 +(((
2579 +**POST /api/v3/vehicles/getlastdata**
2580 +)))
2581 +
2582 +Метод запроса: **POST**
2583 +
2584 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata
2585 +
2586 +В заголовках запроса: X-Auth: Токен авторизации
2587 +
2588 +
2589 +В массиве указываем id объектов через запятую
2590 +
2591 +Ответ:
2592 +
2593 +[
2594 + {
2595 + "vehicleId": 55728, ~/~/ Идентификатор объекта 
2596 + "vehicleGuid": "fa9c0357-9b9f-44b9-a89c-20a2cb80a9ad", ~/~/ Guid объекта 
2597 + "vehicleNumber": "0105 КМ", ~/~/ Номер объекта 
2598 + "receiveTime": "2025-06-27T12:37:46.7782735Z", ~/~/ Время и дата поступления данных 
2599 + "recordTime": "2025-06-27T12:37:19Z", ~/~/ Время и дата формирование данных 
2600 + "state": 4, ~/~/ Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4.
2601 + "speed": 31, ~/~/ Скорость объекта 
2602 + "course": 116, ~/~/ Курс движения [0;360]
2603 + "latitude": 45.722128, ~/~/ Широта [-90°;90°].
2604 + "longitude": 39.800432, ~/~/ Долгота [-180°;180°].
2605 + "address": "\" Краснодарский край Россия 45,722128°, 39,800432°\"", ~/~/ Адрес 
2606 + "geozones": [ ~/~/ Сведения по геозонам. 
2607 + {
2608 + "id": 10225647, ~/~/ ID Геозоны 
2609 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 
2610 + },
2611 + {
2612 + "id": 10282875, ~/~/ ID Геозоны 
2613 + "name": "Ё2" ~/~/ Наименование геозоны 
2614 + },
2615 + {
2616 + "id": 10226240, ~/~/ ID Геозоны 
2617 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 
2618 + },
2619 + {
2620 + "id": 9747869, ~/~/ ID Геозоны 
2621 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 
2622 + },
2623 + {
2624 + "id": 10221123, ~/~/ ID Геозоны 
2625 + "name": "53r" ~/~/ Наименование геозоны 
2626 + },
2627 + {
2628 + "id": 10197638, ~/~/ ID Геозоны 
2629 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 
2630 + }
2631 + ]
2632 + }
2633 +
2634 +
2057 2057  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) =
2058 2058  
2059 2059  == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) ==
... ... @@ -2182,6 +2182,35 @@
2182 2182   }
2183 2183  ]
2184 2184  
2763 +
2764 +== (% style="color:#000000; font-size:16px" %)**Обновить информацию по геозоне**(%%) ==
2765 +
2766 +(% class="box successmessage" %)
2767 +(((
2768 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**PUT **(%%)**/api/v3/gis**
2769 +)))
2770 +
2771 +(% style="color:#000000" %)Метод запроса: **PUT**
2772 +
2773 +Пример запроса:
2774 +
2775 +(((
2776 +{
2777 + "id": 0,  ~/~/ Идентификатор объекта геозоны
2778 + "name": "string",  ~/~/ Наименование объекта геозоны
2779 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Подразделение
2780 + "description": "string", ~/~/ Описание объекта геозоны
2781 + "beginCalc": "2025-04-24T12:10:28.751Z",  ~/~/ Дата начала расчетов для геозоны
2782 + "endCalc": "2025-04-24T12:10:28.751Z",  ~/~/ Дата окончания расчетов для геозоны
2783 + "settingsData": "string"  ~/~/ Параметры отображения в формате XML.
2784 +}
2785 +)))
2786 +
2787 +
2788 +Пример ответа:
2789 +
2790 +200 ~/~/ Success
2791 +
2185 2185  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) =
2186 2186  
2187 2187  == (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) ==
... ... @@ -2213,7 +2213,7 @@
2213 2213   "id": 0, ~/~/ ID уведомления
2214 2214   "name": "string", ~/~/ Название уведомления
2215 2215   "active": true, ~/~/ Состояние true - активен, false - деактивирован
2216 - "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО
2823 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя) 
2217 2217   "userId": "", ~/~/ Пользователь, создавший уведомление
2218 2218   "parentId": "", ~/~/ Идентификатор клиента
2219 2219   "parentName": "string" ~/~/ Имя клиента
... ... @@ -2220,6 +2220,155 @@
2220 2220   }
2221 2221  ]
2222 2222  
2830 +
2831 +== (% style="color:#000000; font-size:16px" %)**Создание уведомления**(%%) ==
2832 +
2833 +(% class="box infomessage" %)
2834 +(((
2835 +**POST /api/v3/notifications**
2836 +)))
2837 +
2838 +Метод запроса **POST**
2839 +
2840 +(% style="text-align: left;" %)
2841 +(% style="color:#000000" %)Пример запроса
2842 +
2843 +(((
2844 +{
2845 + "id": 0, ~/~/ ID правила
2846 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя
2847 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило
2848 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
2849 + "name": "string", ~/~/ Имя правила
2850 + "active": true, ~/~/ Активность правила
2851 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто
2852 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа.
2853 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 
2854 + ],
2855 + "vehicleIds": [ ~/~/ Список объектов для анализа.
2856 + 0
2857 + ],
2858 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам.
2859 + 0
2860 + ],
2861 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам.
2862 + 0
2863 + ],
2864 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений.
2865 + "additionalProp1": "string",  
2866 + "additionalProp2": "string",
2867 + "additionalProp3": "string"
2868 + },
2869 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы"
2870 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила
2871 + "3fa85f64-5717-4562-b3fc-2c963f66afa6"
2872 + ],
2873 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям"
2874 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений
2875 + "string"
2876 + ],
2877 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram
2878 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram.
2879 + {
2880 + "id": 0, ~/~/ Идентификатор участника чата.
2881 + "info": "string" ~/~/ Дополнительные сведения.
2882 + }
2883 + ],
2884 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение
2885 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы
2886 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений.
2887 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 
2888 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени)
2889 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC)
2890 + "timezone": 0, ~/~/ часовой пояс 
2891 + "validity": 0, ~/~/ Срок действия в днях (1-90).
2892 + "autoProlongation": true, ~/~/ Автопродление срока действия.
2893 + "templates": [ ~/~/  Переопределения шаблонов уведомлений.
2894 + {
2895 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек
2896 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа.
2897 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка.
2898 + "additionalProp1": "string",
2899 + "additionalProp2": "string",
2900 + "additionalProp3": "string"
2901 + }
2902 + }
2903 + ]
2904 +}
2905 +)))
2906 +
2907 +(((
2908 +
2909 +)))
2910 +
2911 +(((
2912 +
2913 +)))
2914 +
2915 +Ответ:
2916 +
2917 +{
2918 + "id": 0, ~/~/ ID правила
2919 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя
2920 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило
2921 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
2922 + "name": "string", ~/~/ Имя правила
2923 + "active": true, ~/~/ Активность правила
2924 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто
2925 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа.
2926 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 
2927 + ],
2928 + "vehicleIds": [ ~/~/ Список объектов для анализа.
2929 + 0
2930 + ],
2931 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам.
2932 + 0
2933 + ],
2934 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам.
2935 + 0
2936 + ],
2937 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений.
2938 + "additionalProp1": "string",  
2939 + "additionalProp2": "string",
2940 + "additionalProp3": "string"
2941 + },
2942 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы"
2943 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила
2944 + "3fa85f64-5717-4562-b3fc-2c963f66afa6"
2945 + ],
2946 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям"
2947 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений
2948 + "string"
2949 + ],
2950 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram
2951 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram.
2952 + {
2953 + "id": 0, ~/~/ Идентификатор участника чата.
2954 + "info": "string" ~/~/ Дополнительные сведения.
2955 + }
2956 + ],
2957 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение
2958 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы
2959 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений.
2960 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 
2961 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени)
2962 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC)
2963 + "timezone": 0, ~/~/ часовой пояс 
2964 + "validity": 0, ~/~/ Срок действия в днях (1-90).
2965 + "autoProlongation": true, ~/~/ Автопродление срока действия.
2966 + "templates": [ ~/~/  Переопределения шаблонов уведомлений.
2967 + {
2968 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек
2969 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа.
2970 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка.
2971 + "additionalProp1": "string",
2972 + "additionalProp2": "string",
2973 + "additionalProp3": "string"
2974 + }
2975 + }
2976 + ]
2977 +}
2978 +
2223 2223  == (% style="color:#000000; font-size:16px" %)**Запрос настроек уведомления**(%%) ==
2224 2224  
2225 2225  (% class="box infomessage" %)
... ... @@ -2361,6 +2361,32 @@
2361 2361  
2362 2362  Success
2363 2363  
3120 +
3121 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) ==
3122 +
3123 +(% class="box warningmessage" %)
3124 +(((
3125 +**PUT** /api/v3/notifications/prolongation
3126 +)))
3127 +
3128 +Метод позволяет продлить уведомления.
3129 +
3130 +Метод запроса **PUT**
3131 +
3132 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation
3133 +
3134 +В заголовках запроса: X-Auth: Токен авторизации.
3135 +
3136 +Тело запроса:
3137 +
3138 +[
3139 +
3140 +0
3141 +
3142 +]
3143 +
3144 +где 0 идентификатор ids.
3145 +
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, ~/~/ Частота трансляции радиометки
3835 + "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  
3841 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3842 +|parentId|ID клиента
3843 +|name|Название карты-метки
3844 +|number|Номер
3845 +|period|Период запросов в секундах (работает только для агрегатов)
3846 +|id|ID карты-метки
3847 +
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, ~/~/ Частота трансляции радиометки
3863 + "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  
3869 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3870 +|name|Название карты-метки
3871 +|number|Номер
3872 +|period|Период запросов в секундах (работает только для агрегатов)
3873 +|id|ID карты-метки
3874 +|parentId|ID клиента
3875 +
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  
3902 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3903 +|name|Название карты-метки
3904 +|number|Номер
3905 +|period|Период запросов в секундах (работает только для агрегатов)
3906 +|id|ID карты-метки
3907 +|parentId|ID клиента
3908 +
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  
3936 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3937 +|name|Название карты-метки
3938 +|number|Номер
3939 +|period|Период запросов в секундах (работает только для агрегатов)
3940 +|id|ID карты-метки
3941 +|parentId|ID клиента
3942 +
3139 3139  == (% style="color:#000000; font-size:16px" %)**Удалить карту-метку**(%%) ==
3140 3140  
3141 3141  (% class="box errormessage" %)
... ... @@ -3384,19 +3384,83 @@
3384 3384  **PUT /api/v3/Billing/client/balance**
3385 3385  )))
3386 3386  
4191 +Устанавливает указанное значение баланса не создавая операции пополнение/снятие.
4192 +
3387 3387  Тело запроса:
3388 3388  
3389 3389  {
3390 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3391 - "Balance": 0
4196 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4197 + "Balance": 0 ~/~/ Значение баланса.
3392 3392  }
3393 3393  
3394 3394  Ответ: Success
3395 3395  
3396 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3397 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
3398 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса
4202 +== (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) ==
3399 3399  
4204 +(% class="box warningmessage" %)
4205 +(((
4206 +**PUT /api/v3/billing/client/balance/deposit**
4207 +)))
4208 +
4209 +Создает операцию **Пополнение **с указанной суммой
4210 +
4211 +Тело запроса:
4212 +
4213 +(((
4214 +{
4215 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4216 + "amount": 0 ~/~/ Сумма пополнения баланса 
4217 +}
4218 +)))
4219 +
4220 +(((
4221 +
4222 +)))
4223 +
4224 +Ответ: Success
4225 +
4226 +(((
4227 +{
4228 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки.
4229 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4230 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя.
4231 + "Moment": "2025-06-10T12:15:19.076Z", ~/~/ Время корректировки.
4232 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс.
4233 + "Description": "string" ~/~/ Описание корректировки.
4234 +}
4235 +)))
4236 +
4237 +== (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) ==
4238 +
4239 +Создает операцию **Списание **с указанной суммой
4240 +
4241 +(% class="box warningmessage" %)
4242 +(((
4243 +**PUT /api/v3/billing/client/balance/withdraw**
4244 +)))
4245 +
4246 +Тело запроса:
4247 +
4248 +(((
4249 +{
4250 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4251 + "amount": 0 ~/~/ Сумма списания с баланса
4252 +}
4253 +)))
4254 +
4255 +Ответ: Success
4256 +
4257 +(((
4258 +{
4259 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки.
4260 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4261 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя.
4262 + "Moment": "2025-06-10T12:21:05.149Z", ~/~/ Время корректировки.
4263 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс.
4264 + "Description": "string" ~/~/ Описание корректировки
4265 +}
4266 +)))
4267 +
3400 3400  == (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) ==
3401 3401  
3402 3402  (% class="box warningmessage" %)
... ... @@ -3406,28 +3406,35 @@
3406 3406  
3407 3407  Тело запроса:
3408 3408  
4277 +(((
3409 3409  {
3410 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3411 - "CalculationType": 0,
3412 - "PermissibleBalance": 0,
3413 - "DefermentDays": 0,
3414 - "SendUiNotifications": true,
3415 - "SendEmailNotifications": true,
3416 - "IsPrivate": true,
4279 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4280 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни
4281 + "PermissibleBalance": 0, ~/~/ Допустимый баланс
4282 + "DefermentDays": 0, ~/~/ Отсрочка (дни).
4283 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено
4284 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено
3417 3417  }
4286 +)))
3418 3418  
4288 +(((
4289 +
4290 +)))
4291 +
3419 3419  Ответ: Success
3420 3420  
3421 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3422 -|ClientId|Идентификатор клиента
3423 -|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни
3424 -|PermissibleBalance|Допустимый баланс
3425 -|DefermentDays|(((
3426 -Отсрочка, количество дней
4294 +(((
4295 +{
4296 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом
4297 + "BlockingTime": "2025-06-10T12:23:28.754Z", ~/~/ Время, когда заблокируется клиент.
4298 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4299 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни
4300 + "PermissibleBalance": 0, ~/~/ Допустимый баланс.
4301 + "DefermentDays": 0, ~/~/ Отсрочка (дни)
4302 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено
4303 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено
4304 +}
3427 3427  )))
3428 -|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено
3429 -|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено
3430 -|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом
3431 3431  
3432 3432  == (% style="color:#000000; font-size:16px" %)**Изменить тариф клиента**(%%) ==
3433 3433  
... ... @@ -3439,38 +3439,296 @@
3439 3439  Тело запроса:
3440 3440  
3441 3441  {
3442 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3443 - "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3444 - "Features": [
4317 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор клиента.
4318 + "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана.
4319 + "Features": [ ~/~/ Набор услуг по тарифу клиента.
3445 3445   {
3446 - "Feature": "string",
3447 - "IsEnabled": true,
3448 - "IsFactual": true,
3449 - "Limit": 0,
3450 - "Price": 0,
3451 - "DebitDate": "2023-10-18T13:26:58.987Z",
3452 - "PeriodValue": 0,
3453 - "PeriodType": 0
4321 + "Feature": "string", ~/~/ Код услуги.
4322 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга.
4323 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту.
4324 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование
4325 + "Price": 0, ~/~/ Цена за единицу.
4326 + "DebitDate": "2023-10-18T13:26:58.987Z", ~/~/ Следующий момент времени списания с баланса за услугу.
4327 + "PeriodValue": 0, ~/~/ Значение периода.
4328 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане ( 0 - Дни, 1 - Месяцы)
3454 3454   }
3455 3455   ]
3456 3456  }
3457 3457  
4333 +
3458 3458  Ответ: Success
3459 3459  
3460 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3461 -|ClientId|Идентификатор клиента
3462 -|PlanId|Идентификатор тарифного плана
3463 -|Feature|Код услуги
3464 -|IsEnabled|Признак, определяющий активирована ли услуга
3465 -|IsFactual|Признак, определяющий расчёт по факту
3466 -|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
3467 -|Price|Цена за единицу.
3468 -|DebitDate|Следующий момент времени списания с баланса за услугу.
3469 -|PeriodValue|Значение периода.
3470 -|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы
4336 +(((
4337 +{
4338 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4339 + "Plan": { ~/~/ Определяет тарифный план (шаблон услуг)
4340 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана.
4341 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента-владельца.
4342 + "Name": "string", ~/~/ Наименование.
4343 + "IsArchived": true, ~/~/ Признак, определяющий архивный тарифный план.
4344 + "Constraint": { ~/~/ Ограничения по тарифу 
4345 + "CalculationType": 0, ~/~/ Определяет тип расчёта (0 - деньги, 1 - дни) 
4346 + "PermissibleBalance": 0, ~/~/ Допустимый баланс.
4347 + "DefermentDays": 0 ~/~/ Отсрочка (дни)
4348 + },
4349 + "Features": [ ~/~/ Набор услуг по тарифному плану.
4350 + {
4351 + "Feature": "string", ~/~/Код услуги.
4352 + "IsFactual": true, ~/~/ Признак, определяющий возможность расчёта по факту.
4353 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
4354 + "Price": 0, ~/~/ Цена за единицу.
4355 + "PeriodValue": 0, ~/~/ Значение периода.
4356 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане. (0 - деньги, 1 - дни) 
4357 + }
4358 + ],
4359 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя, создавшего тарифный план.
4360 + "Created": "2025-06-10T12:29:32.969Z", ~/~/ Дата создания тарифного плана.
4361 + "Deactivated": "2025-06-10T12:29:32.969Z" ~/~/ Дата деактивации тарифного плана.
4362 + },
4363 + "Features": [ ~/~/ Набор услуг по тарифу клиента.
4364 + {
4365 + "Feature": "string", ~/~/ Код услуги.
4366 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга.
4367 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры по услуге тарифа частными т.е. персональными для клиента, либо определяются тарифным планом.
4368 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту.
4369 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
4370 + "Price": 0, ~/~/ Цена за единицу.
4371 + "DebitDate": "2025-06-10T12:29:32.969Z", ~/~/ Следующий момент времени списания с баланса за услугу.
4372 + "PeriodValue": 0, ~/~/ Значение периода.
4373 + "PeriodType": 0, ~/~/ Определяет тип периода действия услуги в тарифном плане.
4374 + "Quantity": 0 ~/~/ Количество использования услуги.
4375 + }
4376 + ]
4377 +}
4378 +)))
3471 3471  
3472 3472  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) =
3473 3473  
4382 +(% class="box warningmessage" %)
4383 +(((
4384 +Для тестирования запросов **Импорта **в Postman необходимо скачать его на ПК. Версия в браузере не позволяет загружать файлы в тело запроса.
4385 +)))
4386 +
4387 +== (% style="color:#000000; font-size:16px" %)**Импорт объектов**(%%) ==
4388 +
4389 +(% class="box infomessage" %)
4390 +(((
4391 +**POST /api/v3/vehicles/import/{agentId}**
4392 +)))
4393 +
4394 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).**
4395 +
4396 +В пути указывается **agentId** - id клиента.
4397 +
4398 +**Заголовок**
4399 +
4400 +**X-Auth: [токен авторизации]**
4401 +
4402 +**Параметры**
4403 +
4404 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4405 +|withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать.
4406 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление
4407 +
4408 +В теле использовать тип **form-data,** тип значения** file**
4409 +
4410 +**Ключи**
4411 +
4412 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4413 +|data|В значении передаем файл объекта, формат **xml** или **wlp **
4414 +|csv|В значении передаем файл датчиков, формат **csv**
4415 +
4416 +Ответ:
4417 +
4418 +{
4419 + "vehicleId": 0,
4420 + "name": "string",
4421 + "errors": ["string"]
4422 +}
4423 +
4424 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4425 +|vehicleId|ID созданного объекта
4426 +|name|Имя созданного объекта
4427 +|errors|Ошибки и их описание
4428 +
4429 +== (% style="color:#000000; font-size:16px" %)**Импорт сообщений**(%%) ==
4430 +
4431 +(% class="box infomessage" %)
4432 +(((
4433 +**POST** **/api/v3/vehicles/import/history/{vehicleId}**
4434 +)))
4435 +
4436 +(% class="wikigeneratedid" %)
4437 +Позволяет импортировать сообщения в выбранный объект. Сообщения должны иметь формат **wln** или **json**. Также они могут быть упакованы и переданы в виде в **zip-архива**.
4438 +
4439 +(% class="wikigeneratedid" %)
4440 +В пути указывается **vehicleId **- id объекта.
4441 +
4442 +**Заголовок**
4443 +
4444 +**X-Auth: [токен авторизации]**
4445 +
4446 +В теле использовать тип **form-data.**
4447 +
4448 +Ключи:
4449 +
4450 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4451 +|**history**|В значении передавать файл с историей
4452 +
4453 +В случае, если загружается история из файла **wln **можно выполнять подмену названий параметров. В ключе вы указываете название параметра из файла, в значении указываете значение на которое нужно заменить.
4454 +
4455 +Ответ:
4456 +
4457 +{
4458 + "results": [
4459 + {
4460 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
4461 + "vehicleId": 0,
4462 + "errors": [
4463 + "string"
4464 + ],
4465 + "firstMessageDate": "2023-11-28T09:27:58.949Z",
4466 + "lastMessageDate": "2023-11-28T09:27:58.949Z",
4467 + "producedCount": 0,
4468 + "msgCount": 0
4469 + }
4470 + ]
4471 +}
4472 +
4473 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4474 +|results|Результаты импорта в разрезе ТС
4475 +|vehicleGuid|Guid ТС
4476 +|vehicleId|ID ТС
4477 +|errors|Список ошибок импорта истории (если пустой - нет ошибок)
4478 +|firstMessageDate|Дата первого импортированного сообщения (UTC)
4479 +|lastMessageDate|Дата последнего импортированного сообщения (UTC)
4480 +|producedCount|Кол-во успешно отправленных в шину данных сообщений
4481 +|msgCount|Кол-во обработанных сообщений всего
4482 +
4483 +== **Импортировать историю ТС (Асинхронный запрос)** ==
4484 +
4485 +(% class="box successmessage" %)
4486 +(((
4487 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} **
4488 +)))
4489 +
4490 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос.
4491 +
4492 +Метод запроса: **POST**
4493 +
4494 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} **
4495 +
4496 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства
4497 +
4498 +
4499 +Ответ:
4500 +
4501 +{
4502 +
4503 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
4504 +
4505 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса
4506 +
4507 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest)
4508 +
4509 + "Message": "string", ~/~/ Информация о выполнении запроса
4510 +
4511 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None)
4512 +
4513 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
4514 +
4515 + "Data": "string" ~/~/ Данные
4516 +
4517 +}
4518 +
4519 +
4520 +== (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) ==
4521 +
4522 +(% class="box infomessage" %)
4523 +(((
4524 +**GET /api/v3/vehicles/import/history/status**
4525 +)))
4526 +
4527 +Запрос статуса импорта истории. Может потребоваться в случае импорта истории за большой период.
4528 +
4529 +Ответ:
4530 +
4531 +{
4532 + "activity": true,
4533 + "progress": 0,
4534 + "message": "string"
4535 +}
4536 +
4537 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)(((
4538 +**Параметр**
4539 +)))|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)(((
4540 +**Описание**
4541 +)))
4542 +|(((
4543 +activity
4544 +)))|(((
4545 +Активен ли экспорт/импорт истории сейчас, true - да, false - нет
4546 +)))
4547 +|(((
4548 +progress
4549 +)))|(((
4550 +Guid ТС
4551 +)))
4552 +
4553 +== **Возвращает статус асинхронного запроса импорта истории ТС** ==
4554 +
4555 +(% class="box infomessage" %)
4556 +(((
4557 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}**
4558 +)))
4559 +
4560 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос.
4561 +
4562 +Метод запроса: **GET**
4563 +
4564 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}**
4565 +
4566 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса
4567 +
4568 +
4569 +Ответ:
4570 +
4571 +{
4572 +
4573 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
4574 +
4575 + "Status": 0, ~/~/ Перечисление состояний выполения запроса
4576 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest
4577 +
4578 + "Message": "string", ~/~/ Информация о выполнении запроса
4579 +
4580 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса
4581 +
4582 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None
4583 +
4584 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
4585 +
4586 + "Data": "string" ~/~/ Данные
4587 +
4588 +}
4589 +
4590 +== (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) ==
4591 +
4592 +(% class="box infomessage" %)
4593 +(((
4594 +**POST /api/v3/vehicles/export**
4595 +)))
4596 +
4597 +Запрос позволяет экспортировать файлы с настройками объектов. В запросе передается массив id объектов.
4598 +
4599 +Тело запроса:
4600 +
4601 +[
4602 + id
4603 +]
4604 +
4605 +Ответ: Success 200, получаете файлы с настройками.
4606 +
3474 3474  == (% style="color:#000000; font-size:16px" %)**Экспорт сообщений**(%%) ==
3475 3475  
3476 3476  (% class="box infomessage" %)
... ... @@ -3521,24 +3521,1966 @@
3521 3521  |progress|Прогресс экспорта, от 0 до 100%
3522 3522  |message|Текст описывающий статус
3523 3523  
3524 -== (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) ==
4657 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) =
3525 3525  
4659 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) ==
4660 +
3526 3526  (% class="box infomessage" %)
3527 3527  (((
3528 -**POST /api/v3/vehicles/export**
4663 +**POST /api/v3/EcoDriving/rating**
3529 3529  )))
3530 3530  
3531 -Запрос позволяет экспортировать файлы с настройками объектов. В запросе передается массив id объектов.
4666 +Позволяет получить данные рейтинга нарушений выбранных объектов за указанный период времени. Данные, выдаваемые этим запросом аналогичны тем, что вы можете увидеть в окне **Качество вождения** в мониторинге. В массиве **items **передается список объектов из рейтинга качества вождения, в **trips **передается информация по отдельным рейсам объекта.
3532 3532  
3533 3533  Тело запроса:
3534 3534  
4670 +{
4671 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов
4672 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса
4673 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса
4674 +}
4675 +
4676 +Ответ:
4677 +
4678 +{
4679 + "items": [  ~/~/ Список в разрезе ТС
4680 + {
4681 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода
4682 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода
4683 + "vehicleId": 0, ~/~/ ID ТС
4684 + "vehicleName": "string", ~/~/ Название ТС
4685 + "vehicleModel": "string", ~/~/ Модель ТС
4686 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС
4687 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС
4688 + "totalViolations": 0, ~/~/ Нарушений всего
4689 + "violationsByType": { ~/~/ Информация о нарушениях по типу
4690 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости
4691 + "accelerationViolations": 0, ~/~/ Нарушений ускорения
4692 + "brakingViolations": 0, ~/~/ Нарушений торможения
4693 + "turningViolations": 0, ~/~/ Нарушений опасного поворота
4694 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения
4695 + "sensorViolations": 0 ~/~/ Нарушений по датчику
4696 + },
4697 +
4698 +(((
4699 +
4700 +)))
4701 +
4702 + "moveTime": 0, ~/~/ Продолжительность движения, сек
4703 + "mileage": 0, ~/~/ Пробег, м
4704 + "tripsCount": 0, ~/~/ Кол-во рейсов
4705 + "trips": [  ~/~/ Информация по рейсу
4706 + {
4707 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс
4708 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс
4709 + "violationsCount": 0, ~/~/ Всего нарушений
4710 + "violationsByType": { ~/~/ Информация о нарушениях по типу
4711 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости
4712 + "accelerationViolations": 0, ~/~/ Нарушений ускорения
4713 + "brakingViolations": 0, ~/~/ Нарушений торможения
4714 + "turningViolations": 0, ~/~/ Нарушений опасного поворота
4715 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения
4716 + "sensorViolations": 0 ~/~/ Нарушений по датчику
4717 + },
4718 +
4719 + "startDate": "2024-11-18T13:23:38.516Z",  ~/~/ Дата начала поездки
4720 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки
4721 + "moveTime": 0, ~/~/ Продолжительность движения, сек
4722 + "mileage": 0, ~/~/ Пробег, м
4723 + "motohours": 0, ~/~/ Моточасы, секунды
4724 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс
4725 + "startAddress": "string", ~/~/ Адрес начала рейса
4726 + "endAddress": "string", ~/~/ Адрес конца рейса
4727 + "drivers": [  ~/~/ Список водителей
4728 + {
4729 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя
4730 + "driverName": "string", ~/~/ФИО водителя
4731 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки
4732 + }
4733 + ]
4734 + }
4735 + ]
4736 + }
4737 + ]
4738 +}
4739 +
4740 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) =
4741 +
4742 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) ==
4743 +
4744 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам.
4745 +
4746 +(% class="box infomessage" %)
4747 +(((
4748 +**POST /api/v3/fuelcards/transactions**
4749 +)))
4750 +
4751 +Метод запроса: POST
4752 +
4753 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions
4754 +\\В заголовках запроса: X-Auth: Токен авторизации
4755 +
4756 +Параметры в теле запроса (JSON):
4757 +
4758 +{
4759 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода
4760 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода
4761 + "ids": [ 
4762 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт
4763 + ],
4764 + "timezone": 0 ~/~/ Часовой пояс
4765 +}
4766 +
4767 +
4768 +Ответ:
4769 + {
4770 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции
4771 + "driver": "string", ~/~/ Водители, привязанные к ТК
4772 + "object": "string", ~/~/ Наименование ТС
4773 + "amount": 0, ~/~/ Количество топлива
4774 + "amountDut": 0, ~/~/ Количество по ДУТ
4775 + "amountDiff": 0, ~/~/ Разница, л
4776 + "amountDiffPerc": 0, ~/~/ Разница, %
4777 + "summa": 0, ~/~/ Стоимость, руб
4778 + "serviceName": "string", ~/~/ Тип топлива
4779 + "price": 0, ~/~/ Цена за литр, руб
4780 + "cardName": "string", ~/~/ Наименование ТК
4781 + "cardNum": "string", ~/~/ Номер ТК
4782 + "operator": "string", ~/~/ Оператор ТК
4783 + "address": "string" ~/~/ Адрес АЗС
4784 + }
4785 +
4786 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) ==
4787 +
4788 +(% class="box infomessage" %)
4789 +(((
4790 +**GET /api/v3/fuelcards**
4791 +)))
4792 +
4793 +Метод запроса: GET
4794 +
4795 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список
4796 +
4797 +Ответ:
4798 +
3535 3535  [
3536 - id
4800 + {
4801 + "Name": "string", ~/~/ Определяет наименование карты.
4802 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора.
4803 + "Number": "string", ~/~/ Определяет № карты.
4804 + "Enabled": true, ~/~/ Определяет признак активности карты.
4805 + "Description": "string", ~/~/ Определяет описание карты.
4806 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты
4807 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя
4808 + "deleted": true ~/~/ Признак удаления
4809 + }
3537 3537  ]
3538 3538  
3539 -Ответ: Success 200, получаете файлы с настройками.
4812 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** =
3540 3540  
3541 3541  
4815 +== **Получение полных данных о ретрансляторе** ==
4816 +
4817 +(% class="box infomessage" %)
4818 +(((
4819 +**GET ** **/api/v3/retranslations/{id}**
4820 +)))
4821 +
4822 +id - Идентификатор ретранслятора
4823 +
4824 +
4825 +Пример ответа:
4826 +
4827 +{  
4828 +"description": "", ~/~/ Поле описания ретранслятора
4829 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться)
4830 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4831 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен
4832 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4833 +"objects": [ ~/~/ Объекты для ретрансляции
4834 +{      
4835 +"id": "",  ~/~/ Идентификатор объекта ретрансляции
4836 +"name": "", ~/~/ Наименование объекта ретрансляции
4837 +"imei": "", ~/~/ IMEI объекта  ретрансляции
4838 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен
4839 +}
4840 + ],  
4841 +"id": "", ~/~/ Идентификатор ретранслятора 
4842 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента)
4843 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен
4844 +}
4845 +
4846 +
4847 +== **Удаление данных ретранслятора** ==
4848 +
4849 +(% class="box infomessage" %)
4850 +(((
4851 +**DELETE** **/api/v3/retranslations/{id}**
4852 +)))
4853 +
4854 +id - Идентификатор ретранслятора
4855 +
4856 +
4857 +== **Создание ретранслятора** ==
4858 +
4859 +(% class="box infomessage" %)
4860 +(((
4861 +**POST ** **/api/v3/retranslations/{id}**
4862 +)))
4863 +
4864 +Запрос:
4865 +
4866 +{  
4867 +"description": "", ~/~/ Поле описания ретранслятора
4868 +"subscriberId": "", ~/~/ Идентификатор подписчика
4869 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4870 +"address": "", ~/~/ Адрес и порт принимающего сервера
4871 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен
4872 +"objects": [ ~/~/Объекты для ретрансляции
4873 +{      
4874 +"id": "", ~/~/ Идентификатор ретранслятора 
4875 +"imei": "", ~/~/ IMEI объекта ретрансляции
4876 +"isEnabled": ""  ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен
4877 +}
4878 + ]
4879 +}
4880 +
4881 +
4882 +Ответ:
4883 +
4884 +{  
4885 +"description": "", ~/~/ Поле описания ретранслятора
4886 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться)
4887 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4888 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен
4889 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4890 +"objects": [ ~/~/ Объекты для ретрансляции
4891 +{      
4892 +"id": "", ~/~/ Идентификатор объекта ретрансляции     
4893 +"name": "string", ~/~/ Наименование объекта ретрансляции    
4894 +"imei": "", ~/~/ IMEI объекта ретрансляции
4895 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен  
4896 +}
4897 + ],
4898 +"id": "", ~/~/ Идентификатор ретранслятора   
4899 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента)
4900 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален
4901 +}
4902 +
4903 +
4904 +== **Редактирование ретранслятора** ==
4905 +
4906 +(% class="box infomessage" %)
4907 +(((
4908 +**PUT** **/api/v3/retranslations**
4909 +)))
4910 +
4911 +Пример запроса:
4912 +
4913 +{  
4914 +"id": "", ~/~/ Идентификатор ретранслятора   
4915 +"description": "string", ~/~/ Поле описания ретранслятора
4916 +"subscriberId": "", ~/~/ Идентификатор подписчика
4917 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4918 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен
4919 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4920 +"objects": ~/~/ Объекты для ретрансляции
4921 +[    
4922 +{      
4923 +"id": "",  ~/~/ Идентификатор объекта ретрансляции 
4924 +"imei": "", ~/~/ IMEI объекта ретрансляции
4925 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен
4926 +}
4927 + ]
4928 +}
4929 +
4930 +
4931 +Пример ответа:
4932 +
4933 +{  
4934 +"description": "", ~/~/ Поле описания ретранслятора
4935 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться)
4936 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4937 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен
4938 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4939 +"objects": [ ~/~/ Объекты для ретрансляции
4940 +{      
4941 +"id": "", ~/~/ Идентификатор объекта ретрансляции     
4942 +"name": "string", ~/~/ Наименование объекта ретрансляции    
4943 +"imei": "", ~/~/ IMEI объекта ретрансляции
4944 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен  
4945 +}
4946 + ],
4947 +"id": "", ~/~/ Идентификатор ретранслятора   
4948 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента)
4949 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален
4950 +}
4951 +
4952 +
4953 +== **Получение списка ретранслятора клиента** ==
4954 +
4955 +(% class="box infomessage" %)
4956 +(((
4957 +**POST /api/v3/retranslations/find**
4958 +)))
4959 +
4960 +Пример запроса:
4961 +
4962 +{  
4963 +"id": "", ~/~/ Идентификатор ретранслятора   
4964 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу
4965 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр).
4966 +}
4967 +
4968 +Ответ:
4969 +
4970 +[ 
4971 +{    
4972 +"description": "", ~/~/ Поле описания ретранслятора
4973 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться)
4974 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4975 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен
4976 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4977 +"id": "", ~/~/ Идентификатор ретранслятора   
4978 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента)
4979 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален
4980 +}
4981 +]
4982 +
4983 +
4984 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) =
4985 +
4986 +== **API для отчета по выгрузке комбайнов** ==
4987 +
4988 +(% class="box infomessage" %)
4989 +(((
4990 +**POST /api/v3/Reports/harvesterUnloading**
4991 +)))
4992 +
4993 +Пример запроса:
4994 +
4995 +{
4996 + "byTime": 0, ~/~/ Объединение событий по времени
4997 + "byDist": 0, ~/~/ Объединение событий по расстоянию
4998 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения
4999 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра
5000 + "showNearestObjects": true, ~/~/Показывать объекты рядом?
5001 + "vehicleIds": [ ~/~/ Список id объектов для анализа
5002 + 0
5003 + ],
5004 + "from": "", ~/~/ Дата и время начало запроса
5005 + "to": "", ~/~/ Дата и время окончания запроса
5006 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3
5007 +}
5008 +
5009 +Пример ответа:
5010 +
5011 +[ 
5012 + {
5013 + "harvesterName": "", ~/~/Комбайн, номер
5014 + "harvesterId": 0, ~/~/Комбайн, id
5015 +"harvesterModel": "", ~/~/ Модель комбайна
5016 +"hopperCapacity": 0, ~/~/ Объем бункера м3
5017 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек
5018 + "events": [ ~/~/Список событий в разрезе комбайна
5019 + {
5020 + "driverId": "", ~/~/Идентификатор водителя
5021 + "driverName": "", ~/~/Водитель комбайна, ФИО
5022 + "RFID": "", ~/~/ идентификатор карты-метки
5023 + "rfidName": "", ~/~/Водитель комбайна, имя метки
5024 + "vehicleId": 0, ~/~/идентификатор объекта
5025 + "vehicleName": "string", ~/~/ Имя объекта
5026 + "modelName": "string", ~/~/ Имя модели объекта
5027 + "nearestVehicles": [ ~/~/Объекты рядом
5028 + {
5029 + "vehicleId": 0, ~/~/идентификатор объекта
5030 + "vehicleName": "string" ~/~/ Имя объекта
5031 + }
5032 + ],
5033 + "fields": [ ~/~/Поля, где происходила выгрузка
5034 + {
5035 + "id": 0, ~/~/ идентификатор пользователя 
5036 + "name": "string" ~/~/ имя пользователя 
5037 + }
5038 + ],
5039 + "event": "string", ~/~/Событие
5040 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода
5041 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода
5042 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах
5043 + "cultureName": "string", ~/~/ название культуры
5044 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события)
5045 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события)
5046 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события)
5047 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события)
5048 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события)
5049 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события)
5050 + "issued": 0, ~/~/Выдано, бункеров
5051 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера)
5052 + "latitude": 0, ~/~/Широта
5053 + "longitude": 0, ~/~/ Долгота
5054 + "litresAway": 0, ~/~/Отдано, л
5055 + "m3Away": 0 ~/~/Отдано, м3
5056 + }
5057 + ]
5058 + }
5059 +]
5060 +
5061 +
5062 +== **Отчет трек-датчики** ==
5063 +
5064 +(% class="box infomessage" %)
5065 +(((
5066 +**POST /api/v3/Reports/sensorsWorks**
5067 +)))
5068 +
5069 +**Пример запроса:**
5070 +
5071 +{
5072 + "vehicleIds": [ ~/~/ Список ID объектов
5073 + 0
5074 + ],
5075 + "from": "2025-02-20T06:39:23.888Z",  ~/~/ Начало периода (локальное время клиента)
5076 + "to": "2025-02-20T06:39:23.888Z", ~/~/  Конец периода (локальное время клиента)
5077 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK
5078 +}
5079 +
5080 +**Пример ответа:**
5081 +
5082 +(((
5083 +{
5084 + "vehicleSensorWorks": [  ~/~/ Интервалы работы оборудования для конкретного ТС
5085 + {
5086 + "vehicleId": 0, ~/~/ Идентификатор ТС
5087 + "sensorWorks": [ ~/~/ Интервалы работы оборудования. 
5088 + {
5089 + "start": "2025-02-20T06:39:23.979Z", ~/~/ Начало интервала работы оборудования.
5090 + "end": "2025-02-20T06:39:23.979Z", ~/~/ Конец интервала работы оборудования.
5091 + "duration": 0, ~/~/  Продолжительность интервала в секундах.
5092 + "name": "string", ~/~/ Наименование оборудования.
5093 + "mileage": 0, ~/~/ Пробег за время работы оборудования.
5094 + "totalMileage": 0, ~/~/ Общий пробег.
5095 + "avgSpeed": 0 ~/~/ Средняя скорость.
5096 + }
5097 + ]
5098 + }
5099 + ]
5100 +}
5101 +
5102 +
5103 +== **Превышение скорости** ==
5104 +
5105 +(% class="box infomessage" %)
5106 +(((
5107 +**POST /api/v3/Reports/overSpeedDuration**
5108 +)))
5109 +
5110 + Публичный API запрос о превышениях скорости по объекту в секундах с выбором способа определения нарушений (дорожное ограничение или фиксированное ограничение).
5111 +
5112 +Пример запроса:
5113 +
5114 +(((
5115 +{
5116 + "vehicleId": 0, ~/~/ идентификационный номер транспортного средства
5117 + "from": "2025-04-21T10:45:25.258Z", ~/~/ Начало периода (локальное время клиента)
5118 + "to": "2025-04-21T10:45:25.258Z", ~/~/ Конец периода (локальное время клиента)
5119 + "timezone": 0, ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK
5120 + "overSpeedDetectionType": 0 ~/~/ тип нарушения (1-дорожное ограничение, 2-фиксированный ) 
5121 +}
5122 +)))
5123 +
5124 +(((
5125 +
5126 +)))
5127 +
5128 +(((
5129 +Пример ответа:
5130 +)))
5131 +
5132 +(((
5133 +(((
5134 +[
5135 + {
5136 + "eventDate": "2025-04-21T10:45:25.267Z", ~/~/  Дата и время события 
5137 + "duration": 0, ~/~/ Продолжительность события в секундах 
5138 + "maxSpeed": 0, ~/~/ Максимальная скорость 
5139 + "speedLimit": 0 ~/~/ Ограничение скорости 
5140 + }
5141 +]
5142 +)))
5143 +)))
5144 +)))
5145 +
5146 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) =
5147 +
5148 +
5149 +== **Запрос списка полей** ==
5150 +
5151 +(% class="box successmessage" %)
5152 +(((
5153 +**POST /api/v3/agroLands/find**
5154 +)))
5155 +
5156 +Пример запроса:
5157 +
5158 +(((
5159 +(((
5160 +(((
5161 +{
5162 + "year": 0, ~/~/ Фильтр по году
5163 + "name": "string", ~/~/ Фильтр по названию
5164 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению
5165 +}
5166 +)))
5167 +)))
5168 +
5169 +
5170 +)))
5171 +
5172 +Пример ответа:
5173 +
5174 +(((
5175 +[
5176 + {
5177 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
5178 + "year": 0, ~/~/ Год поля
5179 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая
5180 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая
5181 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто
5182 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры
5183 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
5184 + "counts": { ~/~/ Счётчики с/х поля 
5185 + "fieldOperations": 0, ~/~/ Количество операций на поле
5186 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле
5187 + "facts": 0 ~/~/ Счётчик факта
5188 + },
5189 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5190 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5191 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5192 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5193 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
5194 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
5195 + "planComment": "string", ~/~/ Комментарий к полю
5196 + "productivity": 0, ~/~/ Урожайность.
5197 + "id": 0, ~/~/ Идентификатор объекта геозоны
5198 + "name": "string", ~/~/ Название объекта геозоны
5199 + "type": 0, ~/~/ Тип объекта геозоны
5200 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5201 + "fname": "string", ~/~/ Имя файла
5202 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
5203 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны
5204 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны
5205 + "description": "string", ~/~/ Описание объекта геозоны
5206 + "area": 0, ~/~/ Площадь, м2
5207 + "perimetr": 0, ~/~/ Периметр, м
5208 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд
5209 + }
5210 +]
5211 +
5212 +
5213 +== **Создание нового поля ** ==
5214 +
5215 +(% class="box successmessage" %)
5216 +(((
5217 +**POST /api/v3/agroLands**
5218 +)))
5219 +
5220 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 
5221 +X-agent  - ID клиента
5222 +
5223 +Пример запроса:
5224 +
5225 +(((
5226 +{
5227 + "extId": "string", 
5228 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля
5229 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля
5230 + "display": "string", ~/~/ Настройки отображения
5231 + "year": 0, ~/~/ Год поля
5232 + "name": "string", ~/~/ Наименование
5233 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5234 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая
5235 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая
5236 + "planComment": "string", ~/~/ Комментарий к полю
5237 + "cropRotations": [ ~/~/ Данные по севообороту
5238 + {
5239 + "landId": 0, ~/~/ ID поля
5240 + "landName": "string", ~/~/ Название поля
5241 + "year": 0, ~/~/ Год урожая
5242 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
5243 + "cultureName": "string", ~/~/ Название культуры
5244 + "productivity": 0, ~/~/ Урожайность
5245 + "area": 0, ~/~/ Площадь поля, Га
5246 + "total": 0, ~/~/ Валовый сбор
5247 + "productivityFact": 0, ~/~/ Фактическая урожайность
5248 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5249 + "totalFact": 0, ~/~/ Фактический валовый сбор
5250 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ
5251 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева
5252 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая
5253 + "isyearplan": true, ~/~/ Годовой план 
5254 + "comment": "string" ~/~/ Комментарий
5255 + }
5256 + ]
5257 +}
5258 +)))
5259 +
5260 +(((
5261 +
5262 +)))
5263 +
5264 +Пример ответа:
5265 +
5266 +(((
5267 +(((
5268 +{
5269 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор культуры
5270 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
5271 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
5272 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
5273 + "cropRotations": [ ~/~/ Данные по севообороту
5274 + {
5275 + "landId": 0, ~/~/ ID поля
5276 + "landName": "string", ~/~/ Название поля
5277 + "year": 0, ~/~/ Год урожая 
5278 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
5279 + "cultureName": "string", ~/~/ Название культуры
5280 + "productivity": 0, ~/~/ Урожайность
5281 + "area": 0, ~/~/ Площадь поля, Га.
5282 + "total": 0, ~/~/ Валовый сбор
5283 + "productivityFact": 0, ~/~/ Фактическая урожайность
5284 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5285 + "totalFact": 0, ~/~/ Фактический валовый сбор
5286 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ
5287 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева
5288 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая
5289 + "isyearplan": true, ~/~/ годовой план 
5290 + "comment": "string" ~/~/ Комментарий
5291 + }
5292 + ],
5293 + "cropVegetation": [ ~/~/ История вегетации поля
5294 + {
5295 + "values": [  ~/~/ Данные вегетации и состояния посева
5296 + {
5297 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата
5298 + "ndvi": 0 ~/~/ Индекс вегетации
5299 + }
5300 + ],
5301 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI
5302 + {
5303 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата
5304 + "type": "string", ~/~/ Тип
5305 + "pictureid": "string" ~/~/ Идентификатор ресурса
5306 + }
5307 + ],
5308 + "states": [ ~/~/ Ключевые даты развития поля
5309 + {
5310 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата
5311 + "state": 0 ~/~/ Статус  0 - Всходы, 1 - Вершина, 2 - Сбор урожая
5312 + }
5313 + ]
5314 + }
5315 + ],
5316 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая
5317 + "counts": {
5318 + "fieldOperations": 0, ~/~/ Количество операций на поле
5319 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле
5320 + "facts": 0 ~/~/ Счётчик факта
5321 + },
5322 + "planComment": "string", ~/~/ Комментарий к полю
5323 +)))
5324 +
5325 +(((
5326 + "productivity": 0, ~/~/ Урожайность.
5327 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
5328 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая
5329 + "year": 0, ~/~/ Год поля
5330 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5331 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5332 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5333 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5334 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто
5335 + "id": 0, ~/~/ Идентификатор объекта геозоны
5336 + "name": "string", ~/~/ Название объекта геозоны
5337 + "type": 0, ~/~/ Тип объекта геозоны
5338 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5339 + "fname": "string", ~/~/ Имя файла
5340 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
5341 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны
5342 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны
5343 + "description": "string", ~/~/ Описание объекта геозоны
5344 + "area": 0, ~/~/ Площадь, м2
5345 + "perimetr": 0, ~/~/ Периметр, м
5346 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд
5347 +}
5348 +
5349 +
5350 +)))
5351 +)))
5352 +)))
5353 +
5354 +== **Получение поля по id** ==
5355 +
5356 +(% class="box infomessage" %)
5357 +(((
5358 +**GET /api/v3/agroLands/{id}**
5359 +)))
5360 +
5361 +Пример запроса:
5362 +id  ~/~/ Идентификатор поля
5363 +
5364 +Пример ответа:
5365 +
5366 +(((
5367 +{
5368 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор культуры
5369 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
5370 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
5371 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
5372 + "cropRotations": [ ~/~/ Данные по севообороту
5373 + {
5374 + "landId": 0, ~/~/ ID поля
5375 + "landName": "string", ~/~/ Название поля
5376 + "year": 0, ~/~/ Год урожая
5377 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
5378 + "cultureName": "string", ~/~/ Название культуры
5379 + "productivity": 0, ~/~/ Урожайность
5380 + "area": 0, ~/~/ Площадь поля, Га
5381 + "total": 0, ~/~/ Валовый сбор
5382 + "productivityFact": 0, ~/~/ Фактическая урожайность
5383 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5384 + "totalFact": 0, ~/~/ Фактический валовый сбор
5385 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ
5386 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева
5387 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая
5388 + "isyearplan": true, ~/~/ План года 
5389 + "comment": "string" ~/~/ Комментарий
5390 + }
5391 + ],
5392 + "cropVegetation": [ ~/~/ История вегетации поля
5393 + {
5394 + "values": [ ~/~/ Данные вегетации и состояния посева
5395 + {
5396 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата
5397 + "ndvi": 0 ~/~/ Индекс вегетации
5398 + }
5399 + ],
5400 + "resources": [  ~/~/ Данные о снимках для каждого значения NDVI
5401 + {
5402 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата
5403 + "type": "string", ~/~/ Тип 
5404 + "pictureid": "string" ~/~/ Идентификатор ресурса
5405 + }
5406 + ],
5407 + "states": [ ~/~/ Ключевые даты развития поля
5408 + {
5409 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 
5410 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая
5411 + }
5412 + ]
5413 + }
5414 + ],
5415 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая
5416 + "counts": {
5417 + "fieldOperations": 0, ~/~/ Количество операций на поле
5418 + "actualFieldOperations": 0,  ~/~/ Кол-во актуальных операций на поле
5419 + "facts": 0 ~/~/ Счётчик факта
5420 + },
5421 + "planComment": "string", ~/~/ Комментарий к полю
5422 + "productivity": 0, ~/~/ Урожайность.
5423 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
5424 +)))
5425 +
5426 +(((
5427 +(((
5428 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая
5429 + "year": 0, ~/~/ Год поля
5430 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 
5431 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой)
5432 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой)
5433 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой)
5434 + "status": 0,  ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой)
5435 + "id": 0, ~/~/ Идентификатор объекта геозоны
5436 + "name": "string", ~/~/ Название объекта геозоны
5437 + "type": 0, ~/~/ Тип объекта геозоны 
5438 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5439 + "fname": "string", ~/~/ Имя файла
5440 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
5441 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны
5442 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны
5443 + "description": "string", ~/~/ Описание объекта геозоны
5444 + "area": 0, ~/~/ Площадь, м2
5445 + "perimetr": 0, ~/~/ Периметр, м
5446 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд
5447 +}
5448 +)))
5449 +
5450 +
5451 +== **Удаление существующего поля** ==
5452 +
5453 +(% class="box errormessage" %)
5454 +(((
5455 +**DELETE /api/v3/agroLands/{id}**
5456 +)))
5457 +
5458 +Пример запроса:
5459 +id  ~/~/ Идентификатор поля
5460 +
5461 +Пример ответа:
5462 +
5463 +(((
5464 +200 ~/~/ Успех
5465 +)))
5466 +
5467 +(((
5468 +
5469 +)))
5470 +
5471 +(((
5472 +(((
5473 +(((
5474 +
5475 +)))
5476 +
5477 +(((
5478 +== **Изменение поля** ==
5479 +
5480 +(% class="box infomessage" %)
5481 +(((
5482 +**PUT /api/v3/agroLands**
5483 +)))
5484 +
5485 +Пример запроса:
5486 +
5487 +(((
5488 +(((
5489 +{
5490 + "id": 0, ~/~/ Идентификатор поля
5491 + "extId": "string", ~/~/ ExtId
5492 + "shape": "string", ~/~/ Форма поля
5493 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля
5494 + "display": "string", ~/~/ Настройки отображения
5495 + "year": 0, ~/~/ Год поля
5496 + "name": "string", ~/~/ Наименование
5497 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5498 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая
5499 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая
5500 + "planComment": "string", ~/~/Комментарий к полю
5501 + "cropRotations": [  ~/~/ Данные по севообороту
5502 + {
5503 + "landId": 0, ~/~/ ID поля
5504 + "landName": "string", ~/~/ Название поля
5505 + "year": 0, ~/~/ Год урожая
5506 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
5507 + "cultureName": "string", ~/~/ Название культуры
5508 + "productivity": 0, ~/~/ Урожайность
5509 + "area": 0, ~/~/ Площадь поля, Га.
5510 + "total": 0, ~/~/ Валовый сбор
5511 + "productivityFact": 0, ~/~/ Фактическая урожайность
5512 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5513 + "totalFact": 0, ~/~/ Фактический валовый сбор
5514 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ
5515 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева
5516 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая
5517 + "isyearplan": true, 
5518 + "comment": "string" ~/~/ Комментарий
5519 + }
5520 + ],
5521 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику
5522 +}
5523 +)))
5524 +)))
5525 +
5526 +(((
5527 +
5528 +)))
5529 +
5530 +Пример ответа:
5531 +
5532 +(((
5533 +(((
5534 +(((
5535 +{
5536 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры
5537 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
5538 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
5539 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
5540 + "cropRotations": [ ~/~/ Данные по севообороту
5541 + {
5542 + "landId": 0, ~/~/ ID поля
5543 + "landName": "string", ~/~/ Название поля
5544 + "year": 0, ~/~/  Год урожая
5545 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
5546 + "cultureName": "string", ~/~/ Название культуры
5547 + "productivity": 0, ~/~/ Урожайность
5548 + "area": 0, ~/~/ Площадь поля, Га
5549 + "total": 0, ~/~/ Валовый сбор
5550 + "productivityFact": 0, ~/~/ Фактическая урожайность
5551 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5552 + "totalFact": 0, ~/~/ Фактический валовый сбор
5553 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ
5554 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева
5555 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая
5556 + "isyearplan": true, ~/~/ 
5557 + "comment": "string" ~/~/ Комментарий
5558 + }
5559 + ],
5560 + "cropVegetation": [ ~/~/ История вегетации поля
5561 + {
5562 + "values": [ ~/~/ Данные вегетации и состояния посева
5563 + {
5564 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата
5565 + "ndvi": 0 ~/~/ Индекс вегетации
5566 + }
5567 + ],
5568 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI
5569 + {
5570 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата
5571 + "type": "string", ~/~/ Тип
5572 + "pictureid": "string" ~/~/ Идентификатор ресурса
5573 + }
5574 + ],
5575 + "states": [ ~/~/ Ключевые даты развития поля 
5576 + {
5577 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата
5578 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая
5579 + }
5580 + ]
5581 + }
5582 + ],
5583 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая
5584 + "counts": { 
5585 + "fieldOperations": 0, ~/~/ Количество операций на поле
5586 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле
5587 + "facts": 0 ~/~/ Счётчик факта
5588 + },
5589 + "planComment": "string", ~/~/ Комментарий к полю
5590 + "productivity": 0, ~/~/ Урожайность.
5591 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
5592 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая
5593 + "year": 0, ~/~/ Год поля
5594 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5595 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5596 + "factState": 0,  ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5597 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5598 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 
5599 + "id": 0, ~/~/ Идентификатор объекта геозоны
5600 + "name": "string", ~/~/ Название объекта геозоны
5601 + "type": 0, ~/~/ Тип объекта геозоны
5602 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5603 + "fname": "string", ~/~/ Имя файла
5604 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
5605 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны
5606 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны
5607 + "description": "string", ~/~/ Описание объекта геозоны
5608 + "area": 0, ~/~/ Площадь, м2
5609 + "perimetr": 0, ~/~/ Периметр, м
5610 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд
5611 +}
5612 +)))
5613 +)))
5614 +)))
5615 +)))
5616 +)))
5617 +
5618 +
5619 +== **Редактирование года урожая ** ==
5620 +
5621 +(% class="box successmessage" %)
5622 +(((
5623 +**POST /api/v3/agroLands/updateOpenCloseYear**
5624 +)))
5625 +
5626 +Пример запроса:
5627 +
5628 +(((
5629 +(((
5630 +{
5631 + "agroLandIds": [  ~/~/ Идентификаторы полей для которых меняется год урожая
5632 + 0
5633 + ],
5634 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая
5635 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая
5636 +}
5637 +)))
5638 +
5639 +
5640 +)))
5641 +
5642 +Пример ответа:
5643 +
5644 +(((
5645 +(((
5646 +{
5647 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры
5648 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
5649 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
5650 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
5651 + "cropRotations": [ ~/~/ Данные по севообороту
5652 + {
5653 + "landId": 0, ~/~/ ID поля
5654 + "landName": "string", ~/~/ Название поля
5655 + "year": 0, ~/~/ Год урожая
5656 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
5657 + "cultureName": "string", ~/~/ Название культуры
5658 + "productivity": 0, ~/~/ Урожайность
5659 + "area": 0, ~/~/ Площадь поля, Га.
5660 + "total": 0, ~/~/ Валовый сбор
5661 + "productivityFact": 0, ~/~/ Фактическая урожайность
5662 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5663 + "totalFact": 0, ~/~/ Фактический валовый сбор
5664 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ
5665 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева
5666 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая
5667 + "isyearplan": true, ~/~/ 
5668 + "comment": "string" ~/~/ Комментарий
5669 + }
5670 + ],
5671 + "cropVegetation": [ ~/~/ История вегетации поля
5672 + {
5673 + "values": [ ~/~/ Данные вегетации и состояния посева
5674 + {
5675 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата
5676 + "ndvi": 0 ~/~/ Индекс вегетации
5677 + }
5678 + ],
5679 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI
5680 + {
5681 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата
5682 + "type": "string", ~/~/ Тип
5683 + "pictureid": "string" ~/~/ Идентификатор ресурса
5684 + }
5685 + ],
5686 + "states": [ ~/~/ Ключевые даты развития поля
5687 + {
5688 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 
5689 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая
5690 + }
5691 + ]
5692 + }
5693 + ],
5694 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая
5695 + "counts": { 
5696 + "fieldOperations": 0, ~/~/ Количество операций на поле
5697 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле
5698 + "facts": 0 ~/~/ Счётчик факта
5699 + },
5700 + "planComment": "string", ~/~/ Комментарий к полю
5701 + "productivity": 0, ~/~/ Урожайность.
5702 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
5703 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая
5704 + "year": 0, ~/~/ Год поля
5705 + "planState": 0,  ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5706 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5707 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5708 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5709 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто
5710 + "id": 0, ~/~/ Идентификатор объекта геозоны
5711 + "name": "string", ~/~/ Название объекта геозоны
5712 + "type": 0, ~/~/ Тип объекта геозоны
5713 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5714 + "fname": "string", ~/~/ Имя файла
5715 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
5716 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны
5717 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны
5718 + "description": "string", ~/~/ Описание объекта геозоны
5719 + "area": 0, ~/~/ Площадь, м2
5720 + "perimetr": 0, ~/~/ ериметр, м
5721 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд
5722 +}
5723 +)))
5724 +
5725 +
5726 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) =
5727 +)))
5728 +)))
5729 +)))
5730 +
5731 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) ==
5732 +
5733 +
5734 +(% class="box infomessage" %)
5735 +(((
5736 +**GET api/v3/Vehicles/recyclebin/all**
5737 +)))
5738 +
5739 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту
5740 +
5741 +Параметр запроса: {parentId} - идентификатор агента
5742 +
5743 +В заголовках запроса: X-Auth: Токен авторизации
5744 +
5745 +Ответ:
5746 +
5747 +[ 
5748 + {
5749 + "recordTime": "", ~/~/Время записи
5750 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину
5751 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину
5752 + "objectId": 0, ~/~/ID объекта, помещённого в корзину
5753 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину
5754 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину
5755 + "details": { ~/~/Список деталей объекта, помещённого в корзину
5756 + "items": [ ~/~/ 
5757 +nullable: true ~/~/Детали
5758 + {
5759 + "name": "string", ~/~/наименование столбца
5760 + "value": "string" ~/~/содержание столбца
5761 + }
5762 + ]
5763 + },
5764 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта
5765 + "string"
5766 + ]
5767 + }
5768 +]
5769 +
5770 +
5771 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) ==
5772 +
5773 +(% class="box infomessage" %)
5774 +(((
5775 +**POST api/v3/Vehicles/recyclebin/erase**
5776 +)))
5777 +
5778 +В заголовках запроса: X-Auth: Токен авторизации
5779 +
5780 +Пример запроса:
5781 +
5782 +[
5783 +0
5784 +]
5785 +
5786 +
5787 +Пример ответа:
5788 +
5789 +[ 
5790 +{
5791 + "recordTime": "", ~/~/Время записи
5792 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину
5793 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину
5794 + "objectId": 0, ~/~/ID объекта, помещённого в корзин
5795 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину
5796 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину
5797 + "details": { ~/~/Список деталей объекта, помещённого в корзину
5798 + "items": [ ~/~/Детали
5799 + {
5800 + "name": "", ~/~/Имя свойства
5801 + "value": "" ~/~/Значение свойства
5802 + }
5803 + ]
5804 + },
5805 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта
5806 + ""
5807 + ]
5808 + }
5809 +]
5810 +
5811 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».
5812 +
5813 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) ==
5814 +
5815 +(% class="box infomessage" %)
5816 +(((
5817 +**POST api/v3/Vehicles/recyclebin/restore**
5818 +)))
5819 +
5820 +В заголовках запроса: X-Auth: Токен авторизации
5821 +
5822 +Параметры в теле запроса (JSON):
5823 +
5824 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить.
5825 +
5826 +В заголовках запроса: X-Auth: Токен авторизации
5827 +
5828 +
5829 +Пример запроса:
5830 +
5831 +(((
5832 +[
5833 +)))
5834 +
5835 +(((
5836 + 0
5837 +)))
5838 +
5839 +(((
5840 +]
5841 +)))
5842 +
5843 +
5844 +Пример ответа:
5845 +
5846 +[
5847 +{
5848 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи
5849 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину
5850 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину
5851 + "objectId": 0, ~/~/ID объекта, помещённого в корзину
5852 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину
5853 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину
5854 + "details": { ~/~/Список деталей объекта, помещённого в корзину
5855 + "items": [ ~/~/Детали
5856 + {
5857 + "name": "string", ~/~/Имя свойства
5858 + "value": "string" ~/~/Значение свойства
5859 + }
5860 + ]
5861 + },
5862 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта
5863 + "string"
5864 + ]
5865 + }
5866 +]
5867 +
5868 +
5869 += **Раздел: Журнал заданий ** =
5870 +
5871 +
5872 +== **Создание задания в Журнале заданий** ==
5873 +
5874 +(% class="box infomessage" %)
5875 +(((
5876 +**POST /api/v3/vehicletasks**
5877 +)))
5878 +
5879 +Пример запроса:
5880 +
5881 +(((
5882 +{
5883 + "vehicleId": 0, ~/~/ Идентификатор ТС
5884 + "description": "string", ~/~/ Описание
5885 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата
5886 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя
5887 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы
5888 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы
5889 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ
5890 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция
5891 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата
5892 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м
5893 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м
5894 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч
5895 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч
5896 + "cost": { 
5897 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор
5898 + "Name": "string", ~/~/ Наименование
5899 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection )
5900 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 
5901 + "Norm": 0 ~/~/ Норма внесения
5902 + },
5903 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 
5904 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя
5905 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания
5906 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления
5907 + "deleted": true, ~/~/ Признак удаления
5908 + "extId": "string", 
5909 + "GeoIds": [ ~/~/ Cвязанные поля
5910 + 0
5911 + ]
5912 +}
5913 +)))
5914 +
5915 +
5916 +Пример ответа:
5917 +
5918 +{
5919 + "vehicleId": 0, ~/~/ Идентификатор ТС
5920 + "description": "string", ~/~/ Описание
5921 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата
5922 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя
5923 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы
5924 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы
5925 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ
5926 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция
5927 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата
5928 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м
5929 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м
5930 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч
5931 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч
5932 + "cost": { 
5933 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор
5934 + "Name": "string", ~/~/ Наименование
5935 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection)
5936 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 
5937 + "Norm": 0 ~/~/ Норма внесения
5938 + },
5939 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
5940 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя
5941 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания
5942 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления
5943 + "deleted": true, ~/~/ Признак удаления
5944 + "extId": "string", ~/~/ ExtId
5945 + "GeoIds": [ ~/~/ Связанные поля
5946 + 0
5947 + ]
5948 +}
5949 +
5950 +
5951 +== **Редактирование задания в Журнале заданий** ==
5952 +
5953 +(% class="box successmessage" %)
5954 +(((
5955 +**PUT /api/v3/vehicletasks**
5956 +)))
5957 +
5958 +Пример запроса:
5959 +
5960 +(((
5961 +{
5962 + "vehicleId": 0, ~/~/ Идентификатор ТС
5963 + "description": "string", ~/~/ Описание
5964 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата
5965 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя
5966 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы
5967 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы
5968 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ
5969 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция
5970 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата
5971 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м
5972 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м
5973 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч
5974 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч
5975 + "cost": { 
5976 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор
5977 + "Name": "string", ~/~/ Наименование
5978 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection)
5979 + "MeasureType": 0,  ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 
5980 + "Norm": 0 ~/~/ Норма внесения
5981 + },
5982 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
5983 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя
5984 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания
5985 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления
5986 + "deleted": true, ~/~/ Признак удаления
5987 + "extId": "string", ~/~/ ExtId
5988 + "GeoIds": [ ~/~/ Связанные поля
5989 + 0
5990 + ]
5991 +}
5992 +)))
5993 +
5994 +
5995 +Пример ответа:
5996 +
5997 +{
5998 + "vehicleId": 0, ~/~/ Идентификатор ТС
5999 + "description": "string", ~/~/ Описание
6000 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата
6001 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя
6002 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы
6003 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы
6004 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ
6005 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция
6006 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата
6007 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м
6008 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м
6009 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч
6010 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч
6011 + "cost": { 
6012 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор
6013 + "Name": "string", ~/~/ Наименование
6014 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection)
6015 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 
6016 + "Norm": 0 ~/~/ Норма внесения
6017 + },
6018 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
6019 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя
6020 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания
6021 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления
6022 + "deleted": true, ~/~/ Признак удаления
6023 + "extId": "string", ~/~/ ExtId
6024 + "GeoIds": [ ~/~/ Связанные поля
6025 + 0
6026 + ]
6027 +}
6028 +
6029 +
6030 +== **Удаление задания в Журнале заданий** ==
6031 +
6032 +(% class="box warningmessage" %)
6033 +(((
6034 +**DELETE /api/v3/vehicletasks**
6035 +)))
6036 +
6037 +Пример запроса:
6038 +
6039 +(((
6040 +[
6041 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 
6042 +]
6043 +)))
6044 +
6045 +(((
6046 +
6047 +)))
6048 +
6049 +Пример ответа:
6050 +
6051 +{
6052 + "vehicleId": 0, ~/~/ Идентификатор ТС
6053 + "description": "string", ~/~/ Описание
6054 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата
6055 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя
6056 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы
6057 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы
6058 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ
6059 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция
6060 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата
6061 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м
6062 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м
6063 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч
6064 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч
6065 + "cost": { 
6066 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор
6067 + "Name": "string", ~/~/ Наименование
6068 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection)
6069 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 
6070 + "Norm": 0 ~/~/ Норма внесения
6071 + },
6072 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
6073 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя
6074 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания
6075 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления
6076 + "deleted": true, ~/~/ Признак удаления
6077 + "extId": "string", ~/~/ ExtId
6078 + "GeoIds": [ ~/~/ Связанные поля
6079 + 0
6080 + ]
6081 +}
6082 +
6083 +
6084 +== **Получение списка Журнала заданий** ==
6085 +
6086 +(% class="box infomessage" %)
6087 +(((
6088 +**POST /api/v3/vehicletasks/getbyperiod**
6089 +)))
6090 +
6091 +Пример запроса:
6092 +
6093 +(((
6094 +{
6095 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода.
6096 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода.
6097 + "TimeZone": 0, ~/~/ Часовой пояс.
6098 + "OperationsIds": [  ~/~/ Идентификаторы видов работ для фильтрации журнала
6099 + "3fa85f64-5717-4562-b3fc-2c963f66afa6"
6100 + ],
6101 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала
6102 + 0
6103 + ],
6104 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала
6105 + 0
6106 + ],
6107 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска.
6108 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 
6109 +}
6110 +)))
6111 +
6112 +
6113 +Пример ответа:
6114 +
6115 +(((
6116 +{
6117 + "total": 0,  ~/~/ Общее количество записей
6118 + "pages": 0,  ~/~/ Общее количество страниц
6119 + "currentPage": 0, ~/~/ Текущая страница
6120 + "items": [  ~/~/ Записи 
6121 + {
6122 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания
6123 + "isGroup": true,  ~/~/ Вид задания (true - групповое, иначе - одиночное).
6124 + "name": "string", ~/~/ Название задания.
6125 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc
6126 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc
6127 + "workKind": "string", ~/~/ Вид работ
6128 + "techOp": "string", ~/~/ Тех. операция
6129 + "trailerModel": "string", ~/~/ Модель агрегата
6130 + "width": "string", ~/~/ Ширина, м
6131 + "speed": "string", ~/~/ Тех. скорость
6132 + "fields": "string", ~/~/ Поля
6133 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га)
6134 + "vehicles": "string", ~/~/ Объект-модель
6135 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов)
6136 + "drivers": "string", ~/~/ Водители
6137 + "tmc": "string", ~/~/ ТМЦ
6138 + "client": "string", ~/~/  Клиент
6139 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания
6140 + "dep": "string", ~/~/ Подразделение
6141 + "geoIds": [ ~/~/  Связанные поля
6142 + 0
6143 + ]
6144 + }
6145 + ]
6146 +}
6147 +)))
6148 +
6149 +
6150 += **Раздел: Роли** =
6151 +
6152 +== **Получение списка клиентских и системных ролей пользователя ** ==
6153 +
6154 +(% class="box successmessage" %)
6155 +(((
6156 +**POST /api/v3/groups/find**
6157 +)))
6158 +
6159 +Пример запроса:
6160 +
6161 +(((
6162 +{
6163 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента содержащий пользовательские роли
6164 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей 
6165 +}
6166 +)))
6167 +
6168 +(((
6169 +
6170 +)))
6171 +
6172 +(((
6173 +Пример ответа:
6174 +)))
6175 +
6176 +(((
6177 +(((
6178 +{
6179 + "groups": [  ~/~/ Системные роли пользователя
6180 + {
6181 + "code": "string", ~/~/ Код роли.
6182 + "name": "string", ~/~/ Имя  
6183 + "shortName": "string" ~/~/ Короткое имя 
6184 + }
6185 + ],
6186 + "customGroups": [ ~/~/ Системные роли пользователя
6187 + {
6188 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор роли.
6189 + "name": "string", ~/~/ Наименование 
6190 + "shortName": "string", ~/~/ Короткое наименование 
6191 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор владельца
6192 + }
6193 + ]
6194 +}
6195 +)))
6196 +)))
6197 +
6198 +(((
6199 +
6200 +)))
6201 +
6202 +(((
6203 +
6204 +)))
6205 +
6206 += **Раздел: Локатор ** =
6207 +
6208 +
6209 +== **Получение списка локаторов, доступных пользователю ** ==
6210 +
6211 +(% class="box infomessage" %)
6212 +(((
6213 +**GET /api/v3/locators **
6214 +)))
6215 +
6216 +В заголовках запроса: X-Auth: Токен авторизации
6217 +
6218 +
6219 +Пример ответа:
6220 +
6221 +(((
6222 +(((
6223 +{
6224 + "vehiclesIds": [ ~/~/ Объекты
6225 + 0
6226 + ],
6227 + "geoIds": [ ~/~/ Геозоны
6228 + 0
6229 + ],
6230 + "fieldsIds": [ ~/~/ Поля
6231 + 0
6232 + ],
6233 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора.
6234 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
6235 + "agentName": "string", ~/~/ Наименование агента.
6236 + "isEnabled": true, ~/~/ Активность 
6237 + "created": "2025-05-26T11:31:05.399Z", ~/~/ Дата создания
6238 + "updated": "2025-05-26T11:31:05.399Z", ~/~/ Дата обновления
6239 + "name": "string", ~/~/ Наименование.
6240 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 
6241 + "activationMode": 0, ~/~/ Определяет вид активации локаторов ( 0 - сейчас, 1 - запланировать на время)
6242 + "activationTime": "2025-05-26T11:31:05.399Z", ~/~/ Время активации
6243 + "validity": 0, ~/~/ Значение срока действия
6244 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 
6245 + "autoProlongation": true, ~/~/ Автопродление срока действия.
6246 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор.
6247 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор.
6248 + "url": "string", ~/~/ Ссылка
6249 + "language": 0, ~/~/ Язык
6250 + "showVehicleName": true, ~/~/ Наименование объекта
6251 + "showVehicleDirection": true, ~/~/ Направление движения на треке
6252 + "allowTrackReport": true, ~/~/ Трек
6253 + "showTrackTracing": true, ~/~/ Трассировка трека
6254 + "showSensors": true, ~/~/ Датчик
6255 + "availableMapLayers": [ ~/~/  Слои на карте
6256 + 0
6257 + ]
6258 +}
6259 +)))
6260 +)))
6261 +
6262 +
6263 +== **Получение перечня моделей ** ==
6264 +
6265 +(% class="box successmessage" %)
6266 +(((
6267 +**POST /api/v3/models/find**
6268 +)))
6269 +
6270 +Пример запроса:
6271 +
6272 +(((
6273 +(((
6274 +{
6275 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора
6276 + "name": "string", ~/~/ Наименование локатора
6277 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей
6278 +)))
6279 +
6280 +
6281 +
6282 + Пример ответа: 
6283 +
6284 +
6285 +(((
6286 +[
6287 + {
6288 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 
6289 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя, для которого надо получить данные
6290 + "parentName": "string", ~/~/ Наименование пользователя, для которого надо получить данные
6291 + "name": "string", ~/~/ Наименование локатора
6292 + "modelType": 0 ~/~/ Типы моделей транспортных средств (0 - None, 1 - Агро, 2 - Перевозчик, 3 - Машины) 
6293 + }
6294 +]
6295 +)))
6296 +)))
6297 +
6298 +
6299 +== **Создание локатора** ==
6300 +
6301 +(% class="box successmessage" %)
6302 +(((
6303 +**POST /api/v3/locators**
6304 +)))
6305 +
6306 +Пример запроса:
6307 +
6308 +(((
6309 +{
6310 + "isEnabled": true, ~/~/ Активность
6311 + "name": "string", ~/~/ Наименование локатора
6312 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени)
6313 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/  Время активации
6314 + "validity": 0, ~/~/ Срок действия в днях (1-90)
6315 + "autoProlongation": true, ~/~/ Автопродление срока действия.
6316 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский)
6317 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
6318 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 
6319 + 0
6320 + ],
6321 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 
6322 + 0
6323 + ],
6324 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 
6325 + 0
6326 + ],
6327 + "showVehicleName": true, ~/~/ Наименование объекта
6328 + "showVehicleDirection": true, ~/~/ Направление движения на треке
6329 + "allowTrackReport": true, ~/~/ Трек
6330 + "showTrackTracing": true, ~/~/ Трассировка трека
6331 + "showSensors": true, ~/~/ Датчик
6332 + "availableMapLayers": 1 [ ~/~/ Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 
6333 + ]
6334 +}
6335 +)))
6336 +
6337 +
6338 +Пример ответа:
6339 +
6340 +(((
6341 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора
6342 +)))
6343 +
6344 +
6345 +
6346 +== **Изменение локатора** ==
6347 +
6348 +(% class="box infomessage" %)
6349 +(((
6350 +**PUT /api/v3/locators**
6351 +)))
6352 +
6353 +Пример запроса:
6354 +
6355 +(((
6356 +{
6357 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора
6358 + "isEnabled": true, ~/~/ Активность 
6359 + "name": "string", ~/~/ Наименование
6360 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 
6361 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации
6362 + "validity": 0, ~/~/ Срок действия в днях (1-90)
6363 + "autoProlongation": true, ~/~/ Автопродление срока действия
6364 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский)
6365 + "vehiclesIds": [ ~/~/ Oбъекты
6366 + 0
6367 + ],
6368 + "geoIds": [ ~/~/ Геозоны
6369 + 0
6370 + ],
6371 + "fieldsIds": [ ~/~/ Поля
6372 + 0
6373 + ],
6374 + "showVehicleName": true, ~/~/ Наименование объекта
6375 + "showVehicleDirection": true, ~/~/ Направление движения на треке
6376 + "allowTrackReport": true, ~/~/ Трек
6377 + "showTrackTracing": true, ~/~/ Трассировка трека
6378 + "showSensors": true, ~/~/ Датчик
6379 + "availableMapLayers": 1 [ ~/~/ Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС) 
6380 + ]
6381 +}
6382 +
6383 +
6384 +)))
6385 +
6386 +Пример ответа:
6387 +
6388 +200 ~/~/ Success
6389 +
6390 +
6391 +== **Удалить локатор** ==
6392 +
6393 +(% class="box warningmessage" %)
6394 +(((
6395 +**DELETE /api/v3/locators**
6396 +)))
6397 +
6398 +Пример запроса:
6399 +
6400 +(((
6401 +[
6402 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора
6403 +]
6404 +)))
6405 +
6406 +
6407 +
6408 += **Раздел: Яндекс Маршруты** =
6409 +
6410 +
6411 +== **Возвращение списка маршрутов** ==
6412 +
6413 +(% class="box infomessage" %)
6414 +(((
6415 +**GET /api/v3/TransportRoutes**
6416 +)))
6417 +
6418 +Пример запроса:
6419 +Id  ~/~/ Идентификатор поля
6420 +
6421 +
6422 +Пример ответа:
6423 +
6424 +(((
6425 +[
6426 + {
6427 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 
6428 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6429 + "name": "string", ~/~/ Наименование маршрута.
6430 + "kind": 0,  ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water)
6431 + "vehicles": [  ~/~/ Определяет список ТС для маршрута
6432 + 0
6433 + ]
6434 + }
6435 +]
6436 +)))
6437 +
6438 +
6439 +
6440 +== **Добавить маршрут** ==
6441 +
6442 +(% class="box infomessage" %)
6443 +(((
6444 +**POST /api/v3/TransportRoutes**
6445 +)))
6446 +
6447 +Пример запроса: 
6448 +{
6449 + "name": "string",  ~/~/  Опредлеляет наименование маршрута.
6450 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6451 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water )
6452 + "vehicles": [  ~/~/ Определяет список ТС для маршрута
6453 + 0
6454 + ]
6455 +}
6456 +
6457 +
6458 +Пример ответа:
6459 +
6460 +(((
6461 +{
6462 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
6463 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6464 + "name": "string", ~/~/ Определяет наименование маршрута 
6465 + "kind": 0,  ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 
6466 + "vehicles": [ ~/~/ Определяет список ТС для маршрута
6467 + 0
6468 + ]
6469 +}
6470 +)))
6471 +
6472 +
6473 +== **Обновление маршрута** ==
6474 +
6475 +(% class="box successmessage" %)
6476 +(((
6477 +**PUT /api/v3/TransportRoutes**
6478 +)))
6479 +
6480 +Пример запроса:
6481 +
6482 +(((
6483 +{
6484 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
6485 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6486 + "name": "string", ~/~/ Опредлеляет наименование маршрута.
6487 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water)
6488 + "vehicles": [ ~/~/ Определяет список ТС для маршрута
6489 + 0
6490 + ]
6491 +}
6492 +)))
6493 +
6494 +
6495 +Пример ответа:
6496 +
6497 +(((
6498 +{
6499 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
6500 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6501 + "name": "string", ~/~/ Определяет наименование маршрута 
6502 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water )
6503 + "vehicles": [ ~/~/ Определяет список ТС для маршрута
6504 + 0
6505 + ]
6506 +}
6507 +)))
6508 +
6509 +
6510 +== **Получить связки маршрутов ТС** ==
6511 +
6512 +(% class="box infomessage" %)
6513 +(((
6514 +**POST /api/v3/TransportRoutes/getroutesvehicles**
6515 +)))
6516 +
6517 +Пример запроса:
6518 +
6519 +(((
6520 +[
6521 + "3fa85f64-5717-4562-b3fc-2c963f66afa6"  ~/~/ идентификатор маршрута
6522 +]
6523 +)))
6524 +
6525 +
6526 +Пример ответа:
6527 +
6528 +(((
6529 +[
6530 + {
6531 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС
6532 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута
6533 + }
6534 +]
6535 +)))
6536 +
6537 +
6538 +== **Удалить маршрут** ==
6539 +
6540 +(% class="box warningmessage" %)
6541 +(((
6542 +**DELETE /api/v3/TransportRoutes/{id}**
6543 +)))
6544 +
6545 +Пример запроса:
6546 +Id  ~/~/ Идентификатор поля
6547 +
6548 +
6549 +
6550 += **Раздел: Управление доступа к машинам** =
6551 +
6552 +
6553 +== Получение списка транспортных средств видимых пользователю ==
6554 +
6555 +(% class="box infomessage" %)
6556 +(((
6557 +**GET /api/v3/UserVisibleVehicles/{userId}**
6558 +)))
6559 +
6560 +Пример ответа:
6561 +
6562 +(((
6563 +{
6564 + "vehicleIds": [  ~/~/ Идентификаторы ТС
6565 + 0
6566 + ]
6567 +}
6568 +)))
6569 +
6570 +
6571 +
6572 +== Задает видимость транспортных средств пользователю ==
6573 +
6574 +(% class="box infomessage" %)
6575 +(((
6576 +**POST /api/v3/UserVisibleVehicles**
6577 +)))
6578 +
6579 +Пример запроса:
6580 +
6581 +(((
6582 +(((
6583 +{
6584 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор пользователя
6585 + "vehicleIds": [ ~/~/ Идентификаторы ТС
6586 + 0
6587 + ]
6588 +}
6589 +)))
6590 +
6591 +(((
6592 +
6593 +)))
6594 +
6595 +(((
6596 +
6597 +)))
6598 +
6599 +(((
6600 +Пример ответа :
6601 +)))
6602 +
6603 +(((
6604 +
6605 +)))
6606 +
6607 +(((
6608 +200 ~/~/ Success
6609 +)))
6610 +)))
6611 +
6612 +
6613 +
6614 +
6615 +
6616 +
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]] **

Меню

ГЛОНАССSoft wiki - 2024 г.