Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/07/29 15:51
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. krainovim1 +XWiki.Gadmin - Content
-
... ... @@ -1,5 +1,22 @@ 1 1 (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %) 2 2 ((( 3 +(% class="box warningmessage" %) 4 +((( 5 +(% class="mark" %)##Для обеспечения бесперебойной работы команд и серверного оборудования ГЛОНАССSoft убедительно 6 +просим вас соблюдать несколько простых правил при использовании API-команд:## 7 +))) 8 + 9 +* Формировать не более 3 отчётов одновременно. 10 +* Ограничить количество активных сессий одного пользователя с одного IP-адреса до 50. 11 + 12 +В случае нарушения этих правил, ГЛОНАССSoft оставляет за собой право принудительно остановить выполнение запросов с определенных IP адресов. 13 + 14 +(% class="box infomessage" %) 15 +((( 16 +**Чтобы избежать блокировки** из-за превышения количества авторизаций, вам необходимо использовать токен авторизации, полученный с помощью метода /auth/login, во всех последующих запросах к API. Этот токен имеет ограниченный срок действия, который можно изменить, настроив параметр "Длительность сессии" в настройках пользователя. 17 +\\При выполнении запросов с одним и тем же токеном его срок действия автоматически продлевается. Это позволяет пройти авторизацию только один раз и использовать полученный токен во всех последующих запросах без необходимости повторного входа в систему. 18 +))) 19 + 3 3 **Содержание страницы:** 4 4 ))) 5 5 ... ... @@ -14,13 +14,22 @@ 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 -(% class="box infomessage" %)49 +(% class="box successmessage" %) 24 24 ((( 25 25 (% lang="en-US" %)**POST /api/v3/auth/login** 26 26 ))) ... ... @@ -31,7 +31,7 @@ 31 31 32 32 (% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/auth/login>>https://hosting.glonasssoft.ru/api/v3/auth/login]] 33 33 34 -(% style="color:#000000" %)В случае успешного выполнения метода, поле « __**AuthId**__» содержит токен авторизации «__**X-Auth**__».60 +(% style="color:#000000" %)В случае успешного выполнения метода, поле «AuthId» содержит токен авторизации «X-Auth». 35 35 36 36 (% style="color:#000000" %)Параметры в теле запроса (JSON): 37 37 ... ... @@ -40,21 +40,25 @@ 40 40 "password": "testuser" 41 41 } 42 42 43 - 44 44 (% style="color:#000000" %)**Ответ:** 45 45 46 46 (% lang="en-US" %) 47 47 (% style="color:#000000" %){ 48 - 49 -(% lang="en-US" %) 50 -(% style="color:#000000" %) "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 51 - "User": "testuser" , ~/~/ имя пользователя 52 - 53 -(% lang="en-US" %) 73 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 74 + "User": "testuser" , ~/~/ имя пользователя(%%) 54 54 } 55 55 56 56 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. 57 57 79 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 80 +|(% style="width:215px" %)(% style="color:#000000" %)login|(% style="width:861px" %)Логин пользователя 81 +|(% style="width:215px" %)(% style="color:#000000" %)password|(% style="width:861px" %)Пароль пользователя 82 +|(% style="width:215px" %)(% style="color:#000000" %)AuthId|(% style="width:861px" %)Токен авторизации 83 +|(% style="width:215px" %)(% style="color:#000000" %)User|(% style="width:861px" %)Логин пользователя 84 + 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 + 58 58 == (% style="color:#000000; font-size:16px" %)**Проверка авторизации**(%%) == 59 59 60 60 (% class="box infomessage" %) ... ... @@ -93,30 +93,63 @@ 93 93 Запрос должен содержать данные параметра "**agentId**" 94 94 95 95 (% style="color:#000000" %)Ответ: 96 -А 126 + 127 +((( 97 97 { 98 - "agentId": "", ~/~/ идентификатор клиента (%%) 99 - "parentId": "", (% style="color:#000000" %)~/~/ идентификатор клиента-родителя(%%) 100 - "parentName": "string", ~/~/ наименование (% style="color:#000000" %)клиента-родителя(%%) 101 - "name": "string", (% style="color:#000000" %)~/~/ наименование клиента (%%) 102 - "fullName": "string", (% style="color:#000000" %)~/~/ полное наименование клиента(%%) 103 - "agentInfoType": 0, (% style="color:#000000" %)~/~/ тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор)(%%) 104 - "isForeign": true/false, ~/~/ Иностранный контрагент 105 - "district": "string", ~/~/ округ 106 - "region": "string", ~/~/ регион 107 - "city": "string", ~/~/ город 108 - "inn": "string", ~/~/ ИНН клиента 109 - "kpp": "string", ~/~/ КПП клиента 110 - "address": "string", ~/~/ юридический адрес 111 - "addressFact": "string", ~/~/ фактический адрес 112 - "email": "string", ~/~/ почта 113 - "director": "string", ~/~/ ФИО руководителя 114 - "bankName": "string", ~/~/ Банк 115 - "bankBIK": "string", ~/~/ БИК 116 - "bankRS": "string", ~/~/ Номер счета 117 - "bankKS": "string" ~/~/ Корр. счет 118 - } 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 +))) 119 119 160 + 161 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 162 +|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 163 +|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 164 +|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 165 +|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 166 +|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 167 +|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 168 +|(% style="width:215px" %)isForeign|(% style="width:861px" %)Иностранный контрагент 169 +|(% style="width:215px" %)district|(% style="width:861px" %)Округ 170 +|(% style="width:215px" %)region|(% style="width:861px" %)Регион 171 +|(% style="width:215px" %)city|(% style="width:861px" %)Город 172 +|(% style="width:215px" %)inn|(% style="width:861px" %)ИНН клиента 173 +|(% style="width:215px" %)kpp|(% style="width:861px" %)КПП клиента 174 +|(% style="width:215px" %)address|(% style="width:861px" %)Юридический адрес 175 +|(% style="width:215px" %)addressFact|(% style="width:861px" %)Фактический адрес 176 +|(% style="width:215px" %)email|(% style="width:861px" %)Электронная почта 177 +|(% style="width:215px" %)director|(% style="width:861px" %)ФИО руководителя 178 +|(% style="width:215px" %)bankName|(% style="width:861px" %)Банк 179 +|(% style="width:215px" %)bankBIK|(% style="width:861px" %)БИК 180 +|(% style="width:215px" %)bankRS|(% style="width:861px" %)Номер счета 181 +|(% style="width:215px" %)bankKS|(% style="width:861px" %)Корр. счет 182 + 120 120 == (% style="color:#000000; font-size:16px" %)**Получение параметров дочерних клиентов**(%%) == 121 121 122 122 (% class="box infomessage" %) ... ... @@ -130,7 +130,7 @@ 130 130 131 131 (% style="color:#000000" %)− возвращается информация о клиенте, которому принадлежит авторизованный пользователь, и его дочерних клиентах; 132 132 133 -(% style="color:#000000" %)− информация о клиенте типа «Партнер» и его подклиентов возвращается при наличии права «__**Доступ к партнёрским клиентам**__».196 +(% style="color:#000000" %)− информация о клиенте типа «Партнер» и его клиентов возвращается при наличии права «__**Доступ к партнёрским клиентам**__». 134 134 135 135 (% style="color:#000000" %)Метод запроса: **POST** 136 136 ... ... @@ -145,15 +145,23 @@ 145 145 (% style="color:#000000" %)Ответ: 146 146 147 147 { 148 - "agentId": "", (% style="color:#000000" %)~/~/ идентификатор клиента (%%) 149 - "parentId": "", (% style="color:#000000" %)~/~/ идентификатор клиента-родителя(%%) 150 - "parentName": "string", ~/~/ наименование (% style="color:#000000" %)клиента-родителя(%%) 151 - "name": "string", (% style="color:#000000" %)~/~/ наименование клиента (%%) 152 - "fullName": "string", (% style="color:#000000" %)~/~/ полное наименование клиента(%%) 153 - "agentInfoType": 0, (% style="color:#000000" %)~/~/ тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 154 - "status": "",~/~/ статус клиента (0- Новый, 1 - Потенциальный, 2 - В разработке, 3 - Тест, 4 - На оформлении, 5 - Внедрение, 6 - Работает, 7 - Работал, 8 - Потерян, 9 - Отказ) 211 + "agentId": "",(% style="color:#000000" %) (%%) 212 + "parentId": "", 213 + "name": "string", 214 + "fullName": "string", 215 + "agentInfoType": 0, 216 +(% style="color:#000000" %) "status": "", 155 155 } 156 156 219 + 220 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 221 +|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 222 +|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 223 +|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 224 +|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 225 +|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 226 +|(% style="width:215px" %)(% style="color:#000000" %)status|(% style="width:861px" %)Статус клиента, 0 - заблокирован, 1 - Активен 227 + 157 157 == (% style="color:#000000; font-size:16px" %)**Добавление клиента**(%%) == 158 158 159 159 (% class="box successmessage" %) ... ... @@ -172,7 +172,7 @@ 172 172 Параметры в теле запроса (JSON): 173 173 174 174 { 175 - 246 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 176 176 "name": "string", ~/~/ имя 177 177 "fullName": "string", ~/~/ полное наименование 178 178 "agentInfoType": 0, (% style="color:#000000" %)~/~/ тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор)(%%) ... ... @@ -192,7 +192,6 @@ 192 192 "bankKS": "string" ~/~/ корр. счёт 193 193 } 194 194 195 - 196 196 Ответ: 197 197 198 198 { ... ... @@ -217,6 +217,28 @@ 217 217 "bankKS": "string" ~/~/ корр. счёт 218 218 } 219 219 290 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 291 +|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 292 +|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 293 +|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 294 +|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 295 +|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 296 +|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 297 +|(% style="width:215px" %)isForeign|(% style="width:861px" %)Иностранный контрагент 298 +|(% style="width:215px" %)district|(% style="width:861px" %)Округ 299 +|(% style="width:215px" %)region|(% style="width:861px" %)Регион 300 +|(% style="width:215px" %)city|(% style="width:861px" %)Город 301 +|(% style="width:215px" %)inn|(% style="width:861px" %)ИНН клиента 302 +|(% style="width:215px" %)kpp|(% style="width:861px" %)КПП клиента 303 +|(% style="width:215px" %)address|(% style="width:861px" %)Юридический адрес 304 +|(% style="width:215px" %)addressFact|(% style="width:861px" %)Фактический адрес 305 +|(% style="width:215px" %)email|(% style="width:861px" %)Электронная почта 306 +|(% style="width:215px" %)director|(% style="width:861px" %)ФИО руководителя 307 +|(% style="width:215px" %)bankName|(% style="width:861px" %)Банк 308 +|(% style="width:215px" %)bankBIK|(% style="width:861px" %)БИК 309 +|(% style="width:215px" %)bankRS|(% style="width:861px" %)Номер счета 310 +|(% style="width:215px" %)bankKS|(% style="width:861px" %)Корр. счет 311 + 220 220 == (% style="color:#000000; font-size:16px" %)**Редактирование клиента**(%%) == 221 221 222 222 (% class="box warningmessage" %) ... ... @@ -232,7 +232,6 @@ 232 232 233 233 В заголовках запроса: X-Auth: Токен авторизации 234 234 235 - 236 236 Параметры в теле запроса (JSON): 237 237 238 238 { ... ... @@ -257,7 +257,6 @@ 257 257 "bankKS": "string" ~/~/ корр. счёт 258 258 } 259 259 260 - 261 261 Ответ: 262 262 263 263 { ... ... @@ -300,6 +300,21 @@ 300 300 301 301 Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 302 302 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 + 303 303 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Пользователи**(%%) = 304 304 305 305 == (% style="color:#000000; font-size:16px" %)**Добавление пользователя**(%%) == ... ... @@ -351,7 +351,6 @@ 351 351 ], 352 352 "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 353 353 } 354 - 355 355 { 356 356 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 357 357 "lastName": "string", ... ... @@ -363,15 +363,10 @@ 363 363 "password": "string", 364 364 "email": "string", 365 365 366 - 367 367 (% style="text-align:left" %) 368 368 (% style="color:#000000; font-weight:normal" %)Ответ: 369 - 370 -(% style="text-align:left" %) 371 -(% style="color:#000000; font-weight:normal" %){ 372 - 373 -(% style="text-align:left" %) 374 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 472 +{ 473 + "id": "" , ~/~/ ID пользователя 375 375 "lastName": "" , ~/~/ Фамилия , 376 376 "firstName": "" , ~/~/ Имя 377 377 "position": "" , ~/~/ Должность ... ... @@ -388,9 +388,8 @@ 388 388 "kind": "" , ~/~/ тип аутентификации 389 389 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 390 390 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 490 +} 391 391 392 -(% style="text-align:left" %) 393 -(% style="color:#000000; font-weight:normal" %)} 394 394 395 395 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 396 396 ... ... @@ -411,19 +411,16 @@ 411 411 412 412 (% style="color:#000000" %)Параметры в теле запроса (JSON): 413 413 414 -(% style="color:#000000" %){ 415 - 512 +(% style="color:#000000" %){(%%) 416 416 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 417 417 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 418 418 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 419 419 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 420 - 421 421 (% style="color:#000000" %)} 422 422 423 423 (% style="color:#000000" %)Ответ: 424 424 425 425 (% style="color:#000000" %){ (%%) 426 - 427 427 "id": "" , ~/~/ идентификатор пользователя 428 428 "lastName": "" , ~/~/ фамилия 429 429 "firstName": "" , ~/~/ имя ... ... @@ -437,7 +437,6 @@ 437 437 "sessionDuration":"", ~/~/ длительность сессии в минутах 438 438 "status": "1", ~/~/ статус пользователя 439 439 "lastLogged": "", ~/~/ дата/время последней авторизации 440 - 441 441 (% style="color:#000000" %)} 442 442 443 443 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -511,10 +511,8 @@ 511 511 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 512 512 513 513 (% lang="en-US" style="text-align:left" %) 514 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 515 - 516 -(% lang="en-US" style="text-align:left" %) 517 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 608 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 609 + "id": "" , ~/~/ ID пользователя 518 518 "lastName": "" , ~/~/ фамилия 519 519 "firstName": "" , ~/~/ имя 520 520 "position": "" , ~/~/ должность ... ... @@ -536,9 +536,7 @@ 536 536 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 537 537 }, 538 538 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 539 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 540 - 541 -(% lang="en-US" style="text-align:left" %) 631 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 542 542 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 543 543 544 544 (% lang="en-US" style="text-align:left" %) ... ... @@ -545,10 +545,8 @@ 545 545 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 546 546 547 547 (% lang="en-US" style="text-align:left" %) 548 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 549 - 550 -(% lang="en-US" style="text-align:left" %) 551 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 638 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 639 + "id": "" , ~/~/ идентификатор пользователя 552 552 "lastName": "" , ~/~/ фамилия 553 553 "firstName": "" , ~/~/ имя 554 554 "position": "" , ~/~/ должность ... ... @@ -569,10 +569,8 @@ 569 569 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 570 570 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 571 571 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 660 +} 572 572 573 -(% lang="en-US" style="text-align:left" %) 574 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 575 - 576 576 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 577 577 578 578 (% class="box warningmessage" %) ... ... @@ -592,12 +592,10 @@ 592 592 593 593 (% style="color:#000000" %)Параметры в теле запроса (JSON): 594 594 595 -(% style="color:#000000" %){ 596 - 681 +(% style="color:#000000" %){(%%) 597 597 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 598 598 "description": "" , ~/~/ описание 599 599 "data": "" , ~/~/ данные, связанные со сменой статуса 600 - 601 601 (% style="color:#000000" %)} 602 602 603 603 (% style="text-align:left" %) ... ... @@ -619,7 +619,7 @@ 619 619 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 620 620 621 621 [ 622 - 706 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 623 623 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 624 624 ] 625 625 ... ... @@ -682,8 +682,251 @@ 682 682 (% style="text-align:left" %) 683 683 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».** 684 684 685 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: ** Транспортныесредства**(%%) =769 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Модель объекта**(%%) = 686 686 771 +== (% style="color:#000000; font-size:16px" %)**Получение информации о модели объекта**(%%) == 772 + 773 +(% class="box infomessage" %) 774 +((( 775 +(% lang="en-US" %)**GET /api/v3/models/{Id}** 776 +))) 777 + 778 +Метод возвращает полную информацию о модели объекта. 779 + 780 +(% style="color:#000000" %)Метод запроса: **GET** 781 + 782 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/(% lang="en-US" %)v3/models/(% style="color:#000000" %){(%%)ID} 783 + 784 +(% style="color:#000000" %)Параметр запроса: {__**id}**__ - идентификатор модели объекта 785 + 786 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 787 + 788 +(% style="color:#000000" %)Ответ: 789 + 790 +(% style="color:#000000" %){ 791 + "parentName": "string", 792 + "name": "string", 793 + "picture": "string", 794 + "minspeed": 0, 795 + "maxspeed": 0, 796 + "width": 0, 797 + "imbeddedtrailer": true, 798 + "hoppercapacity": 0, 799 + "hopperdischargespeed": 0, 800 + "modelType": 0, 801 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 802 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 803 + "deleted": true 804 +} 805 + 806 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 807 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 808 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 809 +|(% style="width:215px" %)(% style="color:#000000" %)picture|(% style="width:861px" %)Название иконки транспорта 810 +|(% style="width:215px" %)(% style="color:#000000" %)minspeed|(% style="width:861px" %)Минимальная технологическая скорость обработки поля, в км/ч 811 +|(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч 812 +|(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах 813 +|(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат 814 +|(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера 815 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость2 выгрузки из бункера, л/сек 816 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 817 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 818 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 819 +|(% style="width:215px" %)(% style="color:#000000" %)deleted|(% style="width:861px" %)Признак удаления, тип: boolean 820 + 821 +== (% style="color:#000000; font-size:16px" %)**Просмотр списка моделей**(%%) == 822 + 823 +(% class="box successmessage" %) 824 +((( 825 +(% lang="en-US" %)**POST /api/v3/models/find** 826 +))) 827 + 828 +(% style="color:#000000" %)Метод позволяет получить список всех моделей клиента, указанного в запросе. 829 + 830 +(% style="color:#000000" %)Метод запроса: **POST** 831 + 832 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/models/find 833 + 834 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 835 + 836 +(% style="color:#000000" %)Параметры в теле запроса (JSON):{ 837 + 838 +(% style="color:#000000" %) "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 839 +} 840 + 841 +(% style="color:#000000" %)Ответ: 842 + 843 +(% style="color:#000000" %)[ 844 + { 845 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 846 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 847 + "parentName": "string", 848 + "name": "string", 849 + "modelType": 0 850 + } 851 +] 852 + 853 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 854 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 855 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 856 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 857 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 858 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 859 + 860 +== (% style="color:#000000; font-size:16px" %)**Добавление модели**(%%) == 861 + 862 +(% class="box successmessage" %) 863 +((( 864 +(% lang="en-US" %)**POST /api/v3/models** 865 +))) 866 + 867 +(% style="color:#000000" %)Метод позволяет добавить объект, указанный в запросе. 868 + 869 +(% style="color:#000000" %)Метод запроса: **POST** 870 + 871 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/(% lang="en-US" %)models 872 + 873 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 874 + 875 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 876 + 877 +{ 878 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 879 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 880 + "deleted": true, 881 + "extId": "string", 882 + "name": "string", 883 + "picture": "string", 884 + "minspeed": 0, 885 + "maxspeed": 0, 886 + "width": 0, 887 + "imbeddedtrailer": true, 888 + "fueloutlay": 0, 889 + "hoppercapacity": 0, 890 + "hopperdischargespeed": 0, 891 + "modelType": 0 892 +} 893 + 894 +Ответ: 895 + 896 +{ 897 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 898 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 899 + "deleted": true, 900 + "extId": "string", 901 + "name": "string", 902 + "picture": "string", 903 + "minspeed": 0, 904 + "maxspeed": 0, 905 + "width": 0, 906 + "imbeddedtrailer": true, 907 + "hoppercapacity": 0, 908 + "hopperdischargespeed": 0, 909 + "modelType": 0 910 +} 911 + 912 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 913 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 914 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 915 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 916 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 917 +|(% style="width:215px" %)(% style="color:#000000" %)picture|(% style="width:861px" %)Название иконки транспорта 918 +|(% style="width:215px" %)(% style="color:#000000" %)minspeed|(% style="width:861px" %)Минимальная технологическая скорость обработки поля, в км/ч 919 +|(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч 920 +|(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах 921 +|(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат 922 +|(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера 923 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость выгрузки из бункера, л/сек 924 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 925 + 926 +== (% style="color:#000000; font-size:16px" %)**Редактирование модели**(%%) == 927 + 928 +(% class="box warningmessage" %) 929 +((( 930 +(% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models** 931 +))) 932 + 933 +(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе. 934 + 935 +(% style="color:#000000" %)Метод запроса: **PUT** 936 + 937 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/(% lang="en-US" %)api/v3/models 938 + 939 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 940 + 941 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 942 + 943 +{ 944 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 945 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 946 + "deleted": true, 947 + "extId": "string", 948 + "name": "string", 949 + "picture": "string", 950 + "minspeed": 0, 951 + "maxspeed": 0, 952 + "width": 0, 953 + "imbeddedtrailer": true, 954 + "fueloutlay": 0, 955 + "hoppercapacity": 0, 956 + "hopperdischargespeed": 0, 957 + "modelType": 0 958 +} 959 + 960 +Ответ: 961 + 962 +{ 963 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 964 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 965 + "deleted": true, 966 + "extId": "string", 967 + "name": "string", 968 + "picture": "string", 969 + "minspeed": 0, 970 + "maxspeed": 0, 971 + "width": 0, 972 + "imbeddedtrailer": true, 973 + "fueloutlay": 0, 974 + "hoppercapacity": 0, 975 + "hopperdischargespeed": 0, 976 + "modelType": 0 977 +} 978 + 979 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 980 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта 981 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта 982 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта 983 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта 984 +|(% style="width:215px" %)(% style="color:#000000" %)picture|(% style="width:861px" %)Название иконки транспорта 985 +|(% style="width:215px" %)(% style="color:#000000" %)minspeed|(% style="width:861px" %)Минимальная технологическая скорость обработки поля, в км/ч 986 +|(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч 987 +|(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах 988 +|(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат 989 +|(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера 990 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость выгрузки из бункера, л/сек 991 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car 992 + 993 +== (% style="color:#000000; font-size:16px" %)**Удаление модели**(%%) == 994 + 995 +(% class="box errormessage" %) 996 +((( 997 +(% lang="en-US" %)**DELETE /api/v3/models/{Id}** 998 +))) 999 + 1000 +(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалить пользователя, указанного в строке запроса. 1001 + 1002 +(% style="color:#000000" %)Метод запроса: **DELETE** 1003 + 1004 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru(% lang="en-US" %)/api/v3/models/{Id} 1005 + 1006 +(% style="color:#000000" %)Параметр запроса: {**__id__**} - id модели 1007 + 1008 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1009 + 1010 +Ответ: В случае успеха **Success 200** 1011 + 1012 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 1013 + 687 687 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 688 688 689 689 (% class="box infomessage" %) ... ... @@ -711,6 +711,17 @@ 711 711 712 712 ((( 713 713 { 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 + 714 714 "vehicleId": "", ~/~/ ID объекта 715 715 "name": "", ~/~/ Имя объекта 716 716 "imei": "", ~/~/ IMEI объекта ... ... @@ -718,19 +718,15 @@ 718 718 "deviceTypeName": "", ~/~/ Название типа устройства 719 719 "sim1": "", ~/~/ Номер SIM1 720 720 "sim2": "", ~/~/ Номер SIM2 721 - 722 722 "parentId": "", ~/~/ ID клиента-родителя 723 723 "parentName": "", ~/~/ Наименование клиента-родителя 724 724 "modelId": "", ~/~/ ID модели объекта 725 725 "modelName": "", ~/~/ Имя модели объекта 726 - 727 727 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 728 728 "unitName": "string", ~/~/ Наименование подразделения 729 729 "status": 0, ~/~/ Статус объекта 730 - 731 731 "createdAt": "", ~/~/ Дата создания объекта 732 732 }, 733 - 734 734 "customFields": [ ~/~/ Произвольные поля 735 735 { 736 736 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -753,8 +753,7 @@ 753 753 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 754 754 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 755 755 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 756 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 757 - 1090 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 758 758 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 759 759 "mileageCoeff": 0, ~/~/ коэффициент пробега 760 760 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -784,57 +784,68 @@ 784 784 "retries": 0 ~/~/ Количество попыток 785 785 } 786 786 ], 787 - 788 788 "sensors": [ ~/~/ Датчики 789 789 { 790 790 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 791 - "kind": 0, ~/~/ Тип, 0- простой,1- виртуальный1123 + "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный 792 792 "type": 0, ~/~/ Тип датчика 793 793 "name": "string", ~/~/ Имя датчика 794 - "inputType": 0, ~/~/ Тип входа 1126 + "inputType": 0, ~/~/ Тип входа, Analog, Digital, Impulse, ImpulseFrequency, Diagnosis, Rs485, Rs232, Wire, FMS, BLE 795 795 "inputNumber": 0, ~/~/ Номер входа 796 796 "pseudonym": "string", ~/~/ Псевдоним 797 797 "medianDegree": 0, ~/~/ Медианная фильтрация 798 798 "isInverted": true, ~/~/ Инвертировать, true - Вкл., false - Выкл. 799 799 "disabled": true, ~/~/ Состояние: Отключен, true - Вкл., false - Выкл. 800 - "gradeType": 0, 801 - "gradesTables": [ 1132 + "gradeType": 0, ~/~/ Тип тарировки, 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1133 + "gradesTables": [ ~/~/ Массив таблиц тарировки 802 802 { 803 - "grades": [ 1135 + "grades": [ ~/~/ Таблица тарировки 1 804 804 { 805 - "input": 0, 806 - "output": 0 1137 + "input": 0, ~/~/ Входящее значение 1138 + "output": 0 ~/~/ Выходящее значение 807 807 } 808 808 ], 809 - "relevanceTime": "2023-05-22T09:57:39.562Z" 1141 + "relevanceTime": "2023-05-22T09:57:39.562Z" ~/~/ Дата/время начала применения тарировочной таблицы 810 810 } 811 811 ], 812 - "showInTooltip": true, 813 - "showLastValid": true, 814 - "showAsDutOnGraph": true, 815 - "showWithoutIgn": true, 816 - "agrFunction": 0, 817 - "expr": "string", 818 - "children": [ 1144 + "showInTooltip": true, ~/~/ Отображать в подсказке 1145 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1146 + "color": "string", ~/~/ Код цвета датчиков 1147 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1148 + "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1149 + "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION 1150 + "expr": "string", ~/~/ Формула 1151 + "children": [ ~/~/ массив дочерних датчиков 819 819 "string" 820 820 ], 821 - "customParams": { 1154 + "customParams": { ~/~/ прочие произвольные параметры 822 822 "additionalProp1": "string", 823 823 "additionalProp2": "string", 824 824 "additionalProp3": "string" 825 825 }, 826 - "summaryMaxValue": 0 827 - } 828 828 1160 +~/~/ Характерные для произвольного: 1161 +~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1162 +~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1163 +~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1164 +~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1165 +~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1166 +~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1167 +~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1168 +~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1169 +~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1170 +~/~/ "ValueOn": "Вкл.", 1171 +~/~/ "ValueOff": "Выкл." 1172 + "summaryMaxValue": 0 ~/~/ Макс. значение 1173 + } 829 829 "drivers": [ ~/~/ Водители 830 830 { 831 831 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 832 - "name": "string", 1177 + "name": "string", ~/~/ Наименование 833 833 "description": "string", 834 - "isDefault": true 1179 + "isDefault": true ~/~/ По умолчанию 835 835 } 836 836 ], 837 - 838 838 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 839 839 { 840 840 "id": "", ~/~/ ID задания ... ... @@ -851,19 +851,27 @@ 851 851 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 852 852 } 853 853 ], 854 - 855 - "statusHistory": [ ~/~/ История статусов 1198 +"statusHistory": [ ~/~/ История статусов 856 856 { 857 857 "status": 0, 858 858 "date": "2023-05-22T09:57:39.562Z", 859 859 "description": "string", 860 860 "additionalInfo": "string" 861 - } 862 - ] 863 863 1205 +((( 864 864 } 1207 + ], 1208 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1209 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 865 865 ))) 866 866 1212 +((( 1213 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1214 +} 1215 + 1216 +))) 1217 +))) 1218 + 867 867 (% style="text-align:left" %) 868 868 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 869 869 ... ... @@ -870,6 +870,75 @@ 870 870 (% style="text-align:left" %) 871 871 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 872 872 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 + 873 873 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 874 874 875 875 (% class="box successmessage" %) ... ... @@ -889,6 +889,11 @@ 889 889 890 890 (% style="color:#000000" %){ 891 891 1313 + 1314 +((( 1315 + "vehicleId": 0, ~/~/ ID ТС 1316 +))) 1317 + 892 892 "parentId": "" , ~/~/ ID клиента 893 893 "name": "" , ~/~/ имя ТС 894 894 "imei": "" , ~/~/ IMEI ... ... @@ -909,6 +909,10 @@ 909 909 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 910 910 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 911 911 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1338 + "mileageCalcMethod": 0, 1339 + "mileageCoeff": 0, 1340 + "locationByCellId": true, 1341 + "dottedLineTrackWhenNoCoords": true, 912 912 "counters": ~/~/ счетчики 913 913 { 914 914 "mileage": "" , ~/~/ пробег ... ... @@ -937,67 +937,275 @@ 937 937 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 938 938 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 939 939 } 1370 +"drivers": [ ~/~/ Водители 1371 + { 1372 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1373 + "isDefault": true 1374 + } 1375 + ], 1376 + "commandTemplates": [ ~/~/ Шаблон команды 1377 + { 1378 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1379 + "name": "string", 1380 + "command": "string", 1381 + "retries": 0 1382 + } 1383 + ], 1384 +"sensors": [ ~/~/ Датчики 1385 + { 1386 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1387 + "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный 1388 + "type": 0, ~/~/ Тип датчика 1389 + "name": "string", ~/~/ Имя датчика 1390 + "inputType": 0, ~/~/ Тип входа, Analog, Digital, Impulse, ImpulseFrequency, Diagnosis, Rs485, Rs232, Wire, FMS, BLE 1391 + "inputNumber": 0, ~/~/ Номер входа 1392 + "pseudonym": "string", ~/~/ Псевдоним 1393 + "medianDegree": 0, ~/~/ Медианная фильтрация 1394 + "isInverted": true, ~/~/ Инвертировать, true - Вкл., false - Выкл. 1395 + "disabled": true, ~/~/ Состояние: Отключен, true - Вкл., false - Выкл. 1396 + "gradeType": 0, ~/~/ Тип тарировки, 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1397 + "gradesTables": [ ~/~/ Массив таблиц тарировки 1398 + { 1399 + "grades": [ ~/~/ Таблица тарировки 1 1400 + { 1401 + "input": 0, ~/~/ Входящее значение 1402 + "output": 0 ~/~/ Выходящее значение 1403 + } 1404 + ], 1405 + "relevanceTime": "2023-05-22T09:57:39.562Z" ~/~/ Дата/время начала применения тарировочной таблицы 1406 + } 1407 + ], 1408 + "showInTooltip": true, ~/~/ Отображать в подсказке 1409 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1410 + "color": "string", ~/~/ код цвета датчиков 1411 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1412 + "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1413 + "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION 1414 + "expr": "string", ~/~/ Формула 1415 + "children": [ ~/~/ массив дочерних датчиков 1416 + "string" 1417 + ], 1418 + "customParams": { ~/~/ прочие произвольные параметры 1419 + "additionalProp1": "string", 1420 + "additionalProp2": "string", 1421 + "additionalProp3": "string" 1422 + }, 1423 +~/~/ Характерные для произвольного: 1424 +~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1425 +~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1426 +~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1427 +~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1428 +~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1429 +~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1430 +~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1431 +~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1432 +~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1433 +~/~/ "ValueOn": "Вкл.", 1434 +~/~/ "ValueOff": "Выкл." 1435 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 940 940 941 -(% style="color:#000000" %) } 1437 +((( 1438 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1439 + { 1440 + "from": 0, ~/~/ С какого значения 1441 + "color": "string", ~/~/ Каким цветом 1442 + "text": "string" ~/~/ Текст подписи к этому интервалу 1443 + } 1444 + ] 1445 + } 1446 + ], 1447 +))) 942 942 1449 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1450 + 1451 + 1452 + "customFields": [ ~/~/ Произвольные поля 1453 + { 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 - По датчику относительных Моточасов 1469 +} 1470 +))) 1471 + 1472 + 943 943 (% style="color:#000000" %)Ответ: 944 944 945 -(% style="color:#000000" %){ 946 946 947 - "vehicleId": "", ~/~/ID ТС 948 - "parentId": "", ~/~/Guid владельца ТС 949 - "name": "", ~/~/Имя объекта 950 - "imei": "", ~/~/IMEI 951 - "deviceTypeId": "", ~/~/ID типа устройства 952 - "modelId": "", ~/~/ID модели 953 - "unitId": "", ~/~/ID подразделения 954 - "sim1": "", ~/~/SIM1 955 - "sim2": "", ~/~/SIM2 956 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 957 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 958 - "counters": { ~/~/Счётчики 959 - "mileageEnabled": true, 960 - "motohoursEnabled": true, 961 - "mileage": "", 962 - "motohours": 345.0 963 - }, 964 - "cmsv6Parameters": { ~/~/Параметры CmsV6 965 - "id": null, 966 - "enabled": true, ~/~/флаг включения 967 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 968 - "login": "", ~/~/ имя учетной записи 969 - "password": "" ~/~/ пароль учетной записи 970 - }, 971 - "inspectionTasks": { ~/~/ задания на ТО 972 - "id": "", ~/~/ ID задачи 973 - "enabled": false, ~/~/ Признак включения 974 - "name": "", ~/~/ Имя задания 975 - "description": "", ~/~/ Описание задания 976 - "mileageCondition": "", ~/~/ Условие по пробегу 977 - "lastMileage": "", ~/~/ Пробег (в метрах) 978 - "motohoursCondition": "", ~/~/ Условие по моточасам 979 - "lastMotohours": "", ~/~/ Моточасы 980 - "periodicCondition": "", ~/~/ Условие периодичности по времени 981 - "kind": "", ~/~/ Вид периодичности по времени 982 - "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 ~/~/ Условие по количеству записей для деактивации 983 983 } 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 +))) 984 984 985 -(% style="text-align:left" %) 986 -(% 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 +))) 987 987 1624 + 988 988 **Валидация:** 989 989 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 990 990 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 991 991 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 992 992 993 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 994 994 1631 +(% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами** 1632 + 995 995 (% class="box infomessage" %) 996 996 ((( 997 997 (% lang="en-US" %)**POST /api/v3/vehicles/find** 998 998 ))) 999 999 1000 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1638 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1001 1001 1002 1002 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1003 1003 ... ... @@ -1031,9 +1031,12 @@ 1031 1031 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1032 1032 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1033 1033 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1034 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1035 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1036 - "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" ~/~/ Идентификатор агента, для которого надо получить данные 1037 1037 } 1038 1038 1039 1039 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1040,8 +1040,14 @@ 1040 1040 1041 1041 (% style="color:#000000" %)Ответ: 1042 1042 1043 -(% style="color:#000000" %){ 1684 +(% style="color:#000000" %)[ 1685 +{ 1044 1044 1687 +((( 1688 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1689 +))) 1690 + 1691 +((( 1045 1045 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1046 1046 "name": "" ~/~/ наименование объекта 1047 1047 "imei": "" ~/~/ IMEI объекта ... ... @@ -1067,9 +1067,21 @@ 1067 1067 "forClient": true, ~/~/ право на отображение у клиента 1068 1068 "forTooltip": false, ~/~/ право на отображение в подсказке 1069 1069 "forReport": false ~/~/ право на отображение в отчетах 1070 - }(%%) 1071 -(% style="color:#000000" %)} 1717 +))) 1072 1072 1719 +((( 1720 + } 1721 + ], 1722 + "vehicleGroups": [ ~/~/ Группы ТС 1723 + { 1724 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1725 + "name": "string" ~/~/ Наименование группы ТС 1726 + } 1727 + ] 1728 + } 1729 +] 1730 +))) 1731 + 1073 1073 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1074 1074 1075 1075 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1101,13 +1101,11 @@ 1101 1101 "data": "", ~/~/ Данные 1102 1102 "overwrite": false, ~/~/ Флаг перезаписи 1103 1103 "stage": "", ~/~/ Состояние, может быть null 1104 - 1105 1105 (% style="color:#000000" %)} 1106 1106 1107 1107 (% style="color:#000000" %)Ответ: 1108 1108 1109 -(% style="color:#000000" %){ 1110 - 1767 +(% style="color:#000000" %){(%%) 1111 1111 "status": "", ~/~/ значение статуса 1112 1112 "date": "", ~/~/ Дата смены статуса 1113 1113 "description": "", ~/~/ Описание ... ... @@ -1114,10 +1114,9 @@ 1114 1114 "data": "", ~/~/ Данные 1115 1115 "overwrite": false, ~/~/ Флаг перезаписи 1116 1116 "stage": "", ~/~/ Состояние 1117 - 1118 -(% style="text-align:left" %) 1119 1119 (% style="color:#000000" %) } 1120 1120 1776 + 1121 1121 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1122 1122 1123 1123 (% class="box warningmessage" %) ... ... @@ -1135,18 +1135,16 @@ 1135 1135 1136 1136 (% style="color:#000000" %)Параметры в теле запроса (JSON): 1137 1137 1138 -(% style="color:#000000" %){ 1139 - 1140 -((( 1141 -(% style="color:#000000" %) "vehicleId": "", ~/~/ ID ТС 1142 - "parentId": "", ~/~/ ID клиента 1143 - "name": "", ~/~/ имя ТС 1144 - "imei": "", ~/~/ IMEI 1145 - "deviceTypeId": "", ~/~/ ID типа устройства 1146 - "modelId": "", ~/~/ , ID модели 1147 - "unitId": "", ~/~/ подразделения 1148 - "sim1": "", ~/~/ SIM 1 1149 - "sim2": "", ~/~/ SIM2 (%%) 1794 +(% style="color:#000000" %){ 1795 + "vehicleId": , ~/~/ ID объекта 1796 + "parentId": "" , ~/~/ ID клиента 1797 + "name": "" , ~/~/ имя ТС 1798 + "imei": "" , ~/~/ IMEI 1799 + "deviceTypeId": "" , ~/~/ ID типа устройства 1800 + "modelId": "" , ~/~/ ID модели 1801 + "unitId": "" , ~/~/ ID подразделения 1802 + "sim1": "" , ~/~/ Номер SIM 1 1803 + "sim2": "" , ~/~/ Номер SIM2 1150 1150 "consumptionPer100Km": "" , ~/~/ Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено) 1151 1151 "consumptionPerHour": "" , ~/~/ Расход топлива за моточас (если заполнено, то consumptionPer100Km не может быть заполнено) 1152 1152 "consumptionIdle": "" , ~/~/ Расход топлива на холостом ходу ... ... @@ -1159,89 +1159,326 @@ 1159 1159 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1160 1160 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1161 1161 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1162 -(% style="color:#000000" %) "counters": 1163 - { 1164 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1165 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1166 - "mileage": "", ~/~/ пробег, в метрах 1167 - "motohours": "" ~/~/ моточасы, в секундах 1168 - } 1169 - "cmsv6Parameters": ~/~/ параметры CMSv6 1170 - { 1171 - "id": "", ~/~/ идентификатор 1172 - "enabled": true, ~/~/ флаг включения 1173 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1174 - "login": "", ~/~/ имя учетной записи 1175 - "password": "", ~/~/ пароль учетной записи 1176 - } 1177 - "inspectionTasks": ~/~/ задания на ТО 1178 - { 1179 - "id": "", ~/~/ ID задания 1180 - "enabled": false, ~/~/ Признак включения 1181 - "name": "", ~/~/ Имя задания 1182 - "description": "", ~/~/ Описание задания 1183 - "mileageCondition": "", ~/~/ Условие по пробегу (в метрах, null - условие не работает) 1184 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО (null - неважно) 1185 - "motohoursCondition": "", ~/~/ Условие по моточасам (в секундах, null - условие не работает) 1186 - "lastMotohours": "", ~/~/ Моточасы (в секундах) на момент последнего ТО (null - неважно) 1187 - "periodicCondition": "", ~/~/ Условие периодичности по времени (null - условие не работает) 1188 - "kind": "", ~/~/ Вид периодичности по времени 1189 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 1190 - } 1816 + 1817 + "mileageCalcMethod": 0, 1818 + "mileageCoeff": 0, 1819 + "locationByCellId": true, 1820 + "dottedLineTrackWhenNoCoords": true, 1821 + "counters": ~/~/ счетчики 1822 + { 1823 + "mileage": "" , ~/~/ пробег 1824 + "mileageEnabled": true, ~/~/ флаг активности счётчика "пробег" 1825 + "motohours": "" , ~/~/ моточасы 1826 + "motohoursEnabled": true ~/~/ флаг активности счётчика "моточасы" 1827 + }, 1828 + "cmsv6Parameters": { ~/~/ параметры CMSv6 1829 + "enabled": true, ~/~/ флаг включения 1830 + "id": "" , ~/~/ идентификатор 1831 + "host": "" , ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1832 + "login": "" , ~/~/ имя учетной записи 1833 + "password": "" ~/~/ пароль учетной записи 1834 + }, 1835 + "inspectionTasks": ~/~/ задания на ТО 1836 + { 1837 + "enabled": "" , ~/~/ Признак включения 1838 + "name": "" , ~/~/ Имя задания 1839 + "description": "" , ~/~/ Описание задания 1840 + "mileageCondition": "" , ~/~/ Условие по пробегу (в метрах, null - условие не работает) 1841 + "lastMileage": "" , ~/~/ Пробег (в метрах) на момент последнего ТО (null - неважно) 1842 + "motohoursCondition": "" , ~/~/ Условие по моточасам (в секундах, null - условие не работает) 1843 + "lastMotohours": "" , ~/~/ Моточасы (в секундах) на момент последнего ТО (null - неважно) 1844 + "periodicCondition": "" , ~/~/ Условие периодичности по времени (null - условие не работает) 1845 + "kind": "" , ~/~/ Вид периодичности по времени (дни - Days, месяцы - Months, года - Years, null - условие не работает) 1846 + "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1847 + "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1848 + } 1849 + 1850 +"drivers": [ ~/~/ Водители 1851 + { 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" ~/~/ Момент времени окончания назначения. 1191 1191 ))) 1192 1192 1193 -(% style="color:#000000" %)} 1864 + } 1865 + ], 1866 + "commandTemplates": [ ~/~/ Шаблон команды 1867 + { 1868 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1869 + "name": "string", 1870 + "command": "string", 1871 + "retries": 0 1872 + } 1873 + ], 1874 +"sensors": [ ~/~/ Датчики 1875 + { 1876 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1877 + "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный 1878 + "type": 0, ~/~/ Тип датчика 1879 + "name": "string", ~/~/ Имя датчика 1880 + "inputType": 0, ~/~/ Тип входа, Analog, Digital, Impulse, ImpulseFrequency, Diagnosis, Rs485, Rs232, Wire, FMS, BLE 1881 + "inputNumber": 0, ~/~/ Номер входа 1882 + "pseudonym": "string", ~/~/ Псевдоним 1883 + "medianDegree": 0, ~/~/ Медианная фильтрация 1884 + "isInverted": true, ~/~/ Инвертировать, true - Вкл., false - Выкл. 1885 + "disabled": true, ~/~/ Состояние: Отключен, true - Вкл., false - Выкл. 1886 + "gradeType": 0, ~/~/ Тип тарировки, 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1887 + "gradesTables": [ ~/~/ Массив таблиц тарировки 1888 + { 1889 + "grades": [ ~/~/ Таблица тарировки 1 1890 + { 1891 + "input": 0, ~/~/ Входящее значение 1892 + "output": 0 ~/~/ Выходящее значение 1893 + } 1894 + ], 1895 + "relevanceTime": "2023-05-22T09:57:39.562Z" ~/~/ Дата/время начала применения тарировочной таблицы 1896 + } 1897 + ], 1898 + "showInTooltip": true, ~/~/ Отображать в подсказке 1899 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1194 1194 1901 +((( 1902 + "color": "string",** ~/~/ **Цвет датчика 1903 +))) 1904 + 1905 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1906 + "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1907 + "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION 1908 + "expr": "string", ~/~/ Формула 1909 + "children": [ ~/~/ массив дочерних датчиков 1910 + "string" 1911 + ], 1912 + "customParams": { ~/~/ прочие произвольные параметры 1913 + "additionalProp1": "string", 1914 + "additionalProp2": "string", 1915 + "additionalProp3": "string" 1916 + }, 1917 +~/~/ Характерные для произвольного: 1918 +~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1919 +~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1920 +~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1921 +~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1922 +~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1923 +~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1924 +~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1925 +~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1926 +~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1927 +~/~/ "ValueOn": "Вкл.", 1928 +~/~/ "ValueOff": "Выкл." 1929 + "summaryMaxValue": 0 ~/~/ Макс. значение 1930 + 1931 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1932 + { 1933 + "from": 0, ~/~/ С какого значения 1934 + "color": "string", ~/~/ Каким цветом 1935 + "text": "string" ~/~/ Текст подписи к этому интервалу 1936 + } 1937 + ] 1938 + } 1939 + ], 1940 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1941 + 1942 + "customFields": [ ~/~/ Произвольные поля 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 ~/~/ Отобразить произвольное поле в отчете 1950 + } 1951 + 1952 +((( 1953 + ], 1954 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1955 +))) 1956 + 1957 +} 1958 + 1959 + 1195 1195 (% style="color:#000000" %)Ответ: 1196 1196 1197 -(% lang="en-US" style="text-align:left" %) 1198 -(% 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 +))) 1199 1199 1200 -(% lang="en-US" style="text-align:left" %) 1201 - "vehicleId": "", ~/~/ ID ТС 1202 - "parentId": "", ~/~/ ID клиента 1203 - "name": "", ~/~/ имя ТС 1204 - "imei": "", ~/~/ IMEI 1205 - "deviceTypeId": "", ~/~/ типа устройства 1206 - "modelId": "", ~/~/ ID модели 1207 - "unitId": "", ~/~/ ID подразделения 1208 - "sim1": "", ~/~/ SIM 1 1209 - "sim2": "", ~/~/ SIM2 1210 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1211 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1212 - "counters": 1213 - { 1214 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1215 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1216 - "mileage": "", ~/~/ пробег 1217 - "motohours": "", ~/~/ моточасы 1218 - } 1219 - "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": [ ~/~/ Тарировка 1220 1220 { 1221 - "id": ~/~/ идентификатор 1222 - "enabled": true, ~/~/ флаг включения 1223 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1224 - "login": "", ~/~/ имя учетной записи 1225 - "password": "", ~/~/ пароль учетной записи 1226 - } 1227 - "inspectionTasks": ~/~/ задания на ТО 1228 - { 1229 - "id": "", ~/~/ ID задания 1230 - "enabled": false, ~/~/ Признак включения 1231 - "name": "", ~/~/ Имя задания 1232 - "description": "", ~/~/ Описание задания 1233 - "mileageCondition": "", ~/~/ Условие по пробегу 1234 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1235 - "motohoursCondition": "", ~/~/ Условие по моточасам 1236 - "lastMotohours": "", ~/~/ Моточасы 1237 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1238 - "kind": "", ~/~/ Вид периодичности по времени 1239 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2083 + "grades": [ ~/~/ Таблицы тарировки 2084 + { 2085 + "input": 0, ~/~/ Вход 2086 + "output": 0 ~/~/ Выход 2087 + } 2088 + ], 2089 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1240 1240 } 2091 + ], 2092 + "showInTooltip": true, ~/~/ Отображение в подсказке 2093 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1241 1241 1242 -(% lang="en-US" style="text-align:left" %) 1243 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2095 +((( 2096 + "color": "string", ~/~/ цвет уведомлений 2097 +))) 1244 1244 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 + 1245 1245 **Валидация:** 1246 1246 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1247 1247 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1280,18 +1280,15 @@ 1280 1280 1281 1281 (% style="color:#000000" %)Метод запроса: **GET** 1282 1282 1283 -(% 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]] 1284 1284 1285 1285 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1286 1286 1287 1287 (% style="color:#000000" %)Ответ: 1288 1288 1289 -(% style="color:#000000" %){ 1290 - 2180 +(% style="color:#000000" %){(%%) 1291 1291 "deviceTypeId" : "", ~/~/ ID типа устройства 1292 1292 "deviceTypeName" : "" ~/~/ Название типа устройства 1293 - 1294 -(% style="text-align:left" %) 1295 1295 (% style="color:#000000" %)} 1296 1296 1297 1297 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1313,13 +1313,10 @@ 1313 1313 1314 1314 (% style="color:#000000" %)Ответ: 1315 1315 1316 -(% style="color:#000000" %){ 1317 - 2204 +(% style="color:#000000" %){(%%) 1318 1318 "id": "", ~/~/ ID типа датчика 1319 1319 "name": "", ~/~/ Название 1320 1320 "description": "", ~/~/ Описание 1321 - 1322 -(% style="text-align:left" %) 1323 1323 (% style="color:#000000" %)} 1324 1324 1325 1325 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1363,6 +1363,56 @@ 1363 1363 } 1364 1364 ] 1365 1365 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 + 1366 1366 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1367 1367 1368 1368 (% class="box infomessage" %) ... ... @@ -1387,6 +1387,11 @@ 1387 1387 "to": "2023-03-29T09:14:46.107Z" ~/~/ конец периода запроса 1388 1388 } 1389 1389 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 + 1390 1390 Ответ: 1391 1391 1392 1392 [ ... ... @@ -1393,25 +1393,436 @@ 1393 1393 { 1394 1394 "messages": [ 1395 1395 { 1396 - "deviceTime": "2023-03-29T09:14:46.125Z", ~/~/ Время устройства 1397 - "serverTime": "2023-03-29T09:14:46.125Z", ~/~/ Время сервера 1398 - "speed": 0, ~/~/ Скорость, км/ч 1399 - "altitude": 0, ~/~/ Высота, м 1400 - "latitude": 0, ~/~/ Широта [-90°;90°] 1401 - "longitude": 0, ~/~/ Долгота [-180°;180°] 1402 - "satellites": 0, ~/~/ Кол-во спутников 1403 - "voltage": 0, ~/~/ Напряжение 1404 - "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": { 1405 1405 "additionalProp1": "string", 1406 1406 "additionalProp2": "string", 1407 1407 "additionalProp3": "string" 1408 1408 }, 1409 - "photoCount": 0 ~/~/ Кол-во фото 2350 + "photoCount": 0, 2351 + "lbsCorrectedCoords": true, 2352 + "protocolType": 0 1410 1410 } 1411 1411 ] 1412 1412 } 1413 1413 ] 1414 1414 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 + 2373 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос данных об объекте за период**(%%) = 2374 + 2375 +== (% style="color:#000000; font-size:16px" %)**Получение данных о пробеге и моточасах транспортного средства**(%%) == 2376 + 2377 +(% class="box infomessage" %) 2378 +((( 2379 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/vehicles/mileageAndMotohours** 2380 +))) 2381 + 2382 +(% style="color:#000000" %)Метод запроса: **POST** 2383 + 2384 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/mileageAndMotohours 2385 + 2386 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2387 + 2388 +(% style="text-align:left" %) 2389 +Тело запроса: 2390 + 2391 +{ 2392 + "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2393 + "vehicleIds": [0], ~/~/ Список ID объектов 2394 + "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 2395 + "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода 2396 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2397 +} 2398 + 2399 +Ответ: 2400 + 2401 +[ 2402 + { 2403 + "vehicleId": 0, ~/~/ ID объекта 2404 + "name": "string", ~/~/ Имя ТС 2405 + "periods": [ ~/~/ Периоды 2406 + { 2407 + "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2408 + "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2409 + "mileage": 0, ~/~/ Пробег за период, километры 2410 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2411 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2412 + "motohours": 0, ~/~/ Моточасы за период, секунды 2413 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2414 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2415 + "idlingTime": 0 ~/~/ Холостой ход за период, секунд 2416 + 2417 + } 2418 + ] 2419 + } 2420 +] 2421 + 2422 +== (% style="color:#000000; font-size:16px" %)**Получение данных о расходе транспортного средства**(%%) == 2423 + 2424 +(% class="box infomessage" %) 2425 +((( 2426 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/vehicles/fuelConsumption** 2427 +))) 2428 + 2429 +(% style="color:#000000" %)Метод запроса: **POST** 2430 + 2431 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/fuelConsumption 2432 + 2433 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2434 + 2435 +(% style="text-align:left" %) 2436 +Тело запроса: 2437 + 2438 +{ 2439 + "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2440 + "vehicleIds": [0], ~/~/ Список ID объектов 2441 + "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 2442 + "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода 2443 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2444 +} 2445 + 2446 +Ответ: 2447 + 2448 +[ 2449 + { 2450 + "vehicleId": 0, ~/~/ ID объекта 2451 + "name": "string", ~/~/ Имя ТС 2452 + "periods": [ ~/~/ Периоды 2453 + { 2454 + "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2455 + "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2456 + "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода 2457 + "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2458 + "fuelConsumption": 0, ~/~/ Расход топлива 2459 + "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2460 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне 2461 + 2462 + } 2463 + ] 2464 + } 2465 +] 2466 + 2467 +(% class="box warningmessage" %) 2468 +((( 2469 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2470 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2471 +))) 2472 + 2473 +== (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2474 + 2475 +(% class="box infomessage" %) 2476 +((( 2477 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/vehicles/fuelInOut** 2478 +))) 2479 + 2480 +(% style="color:#000000" %)Метод запроса: **POST** 2481 + 2482 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/fuelInOut 2483 + 2484 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2485 + 2486 +(% style="text-align:left" %) 2487 +Тело запроса: 2488 + 2489 +{ 2490 + "vehicleIds": [0], ~/~/ Список ID объектов 2491 + "from": "2023-08-09T14:27:44.772Z", ~/~/ Дата и время начало запроса 2492 + "to": "2023-08-09T14:27:44.772Z", ~/~/ Дата и время окончания запроса 2493 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2494 +} 2495 + 2496 +Ответ: 2497 + 2498 +[ 2499 + { 2500 + "start": "2023-08-09T14:27:44.773Z", ~/~/ Начало периода 2501 + "end": "2023-08-09T14:27:44.773Z", ~/~/ Окончание периода 2502 + "vehicleId": 0, ~/~/ ID объекта 2503 + "name": "string", ~/~/ Имя объекта 2504 + "model": "string", ~/~/ Модель объекта 2505 + "fuels": [ ~/~/ Массив данным по заправкам и сливам 2506 + { 2507 + "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 2508 + 2509 + "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало 2510 + "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание 2511 + "valueFuel": 0, ~/~/ Количество 2512 + "fuelStart": 0, ~/~/ Уровень топлива на начало события 2513 + "fuelEnd": 0 ~/~/ Уровень топливо на конец события 2514 + } 2515 + ] 2516 + } 2517 +] 2518 + 2519 + 2520 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) == 2521 + 2522 +(% class="box infomessage" %) 2523 +((( 2524 +**POST /api/v3/vehicles/moveStop** 2525 +))) 2526 + 2527 +Метод запроса: **POST** 2528 + 2529 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop 2530 + 2531 +В заголовках запроса: X-Auth: Токен авторизации 2532 + 2533 + 2534 +Тело запроса: 2535 + 2536 +{ 2537 + "vehicleIds": [ ], ~/~/ Список ID объектов 2538 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2539 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2540 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2541 +} 2542 + 2543 +Ответ: 2544 + 2545 +[ 2546 + { 2547 + "vehicleId": 0, ~/~/ ID объекта 2548 + "vehicleName": "string", ~/~/ Имя объекта 2549 + "moves": [ ~/~/ Событие движения 2550 + { 2551 + "mileage": 0, ~/~/ Пробег, км 2552 + "eventId": 0, ~/~/ Идентификатор события 2553 + "eventName": "string", ~/~/ Название события 2554 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2555 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2556 + "duration": 0 ~/~/ Продолжительность события, секунд 2557 + } 2558 + ], 2559 + "stops": [ ~/~/ События стоянок 2560 + { 2561 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2562 + "eventId": 0, ~/~/ Идентификатор события 2563 + "eventName": "string", ~/~/ Название события 2564 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2565 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2566 + "duration": 0 ~/~/ Продолжительность события, секунд 2567 + } 2568 + ] 2569 + } 2570 +] 2571 + 2572 + 2573 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2574 + 2575 +(% class="box infomessage" %) 2576 +((( 2577 +**POST /api/v3/vehicles/getlastdata** 2578 +))) 2579 + 2580 +Метод запроса: **POST** 2581 + 2582 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata 2583 + 2584 +В заголовках запроса: X-Auth: Токен авторизации 2585 + 2586 + 2587 +В теле запроса перечисляете массив id объектов, в квадратных скобках через запятую. 2588 + 2589 +Ответ: 2590 + { 2591 + "vehicleId": 0, ~/~/Идентификатор объекта. 2592 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификатор объекта. 2593 + "vehicleNumber": "string",~/~/Номер объекта. 2594 + "receiveTime": "2024-02-27T14:11:00.315Z",~/~/Время получения записи на сервере, т.е. время срабатывания + время передачи от устройства на сервер 2595 + "recordTime": "2024-02-27T14:11:00.315Z",~/~/Время записи от устройства, т.е. время фактического события на транспортном средстве. 2596 + "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2597 + "speed": 0,~/~/Скорость объекта. 2598 + "course": 0,~/~/Курс движения [0;360] 2599 + "latitude": 0,~/~/Широта [-90°;90°]. 2600 + "longitude": 0,~/~/Долгота [-180°;180°]. 2601 + "address": "string",~/~/Адрес. 2602 + "geozones": [ ~/~/Сведения по геозонам. 2603 + { 2604 + "id": 0, 2605 + "name": "string" 2606 + } 2607 + 2608 + 2609 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2610 + 2611 +== (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == 2612 + 2613 +(% class="box infomessage" %) 2614 +((( 2615 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/find** 2616 +))) 2617 + 2618 +(% style="color:#000000" %)Метод позволяет получить список геообъектов клиента. Возвращает массив геообъектов со всей информацией о них. 2619 + 2620 +(% style="color:#000000" %)Метод запроса: **POST** 2621 + 2622 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/find 2623 + 2624 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2625 + 2626 +(% style="text-align:left" %) 2627 +Тело запроса: 2628 + 2629 +(% style="text-align:left" %) 2630 +{ 2631 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2632 +} 2633 + 2634 +(% style="text-align:left" %) 2635 +Ответ: 2636 + 2637 +[ 2638 + { 2639 + "id": 0, ~/~/ Идентификатор объекта геозоны 2640 + "name": "string", ~/~/ Название объекта геозоны 2641 + "type": 0, ~/~/ Тип объекта геозоны 2642 + "fname": "string", ~/~/ Имя файла 2643 + "parentId": "string", ~/~/ Идентификатор клиента 2644 + "radius": 0, ~/~/ Радиус геообъекта 2645 + "beginCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата начала расчета 2646 + "endCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата окончания расчета 2647 + "description": "string", ~/~/ Описание 2648 + "area": 0, ~/~/ Площадь, м^^2^^ 2649 + "perimetr": 0, ~/~/ Периметр, м 2650 + "createDate": "2023-08-01T07:54:54.893Z", ~/~/ Дата создания 2651 + } 2652 +] 2653 + 2654 +== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по объектам**(%%) == 2655 + 2656 +(% class="box infomessage" %) 2657 +((( 2658 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/vehicles** 2659 +))) 2660 + 2661 +(% style="color:#000000" %)Метод позволяет получить список пересечений выбранных объектов со всеми геообъектами за выбранный период. 2662 + 2663 +(% style="color:#000000" %)Метод запроса: **POST** 2664 + 2665 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/vehicles 2666 + 2667 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2668 + 2669 +(% style="text-align:left" %) 2670 +Тело запроса: 2671 + 2672 +{ 2673 + "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса 2674 + "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания 2675 + "ids": [ ], ~/~/ Массив id объектов 2676 + "byTime": 0, ~/~/ Объединение событий по времени 2677 + "byDist": 0, ~/~/ Объединение событий по расстоянию 2678 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 2679 + "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра 2680 +} 2681 + 2682 +Ответ: 2683 +[ 2684 + { 2685 + "geozoneId": 0, ~/~/ ID геообъекта 2686 + "geozoneName": "string", ~/~/ Название геообъекта 2687 + "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда 2688 + "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда 2689 + "duration": 0, ~/~/ Продолжительность нахождения в геообъекте 2690 + "vehicleId": 0, ~/~/ ID объекта 2691 + "vehicleName": "string" ~/~/ Имя объекта 2692 + } 2693 +] 2694 + 2695 +== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по геообъектам**(%%) == 2696 + 2697 +(% class="box infomessage" %) 2698 +((( 2699 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/geozones** 2700 +))) 2701 + 2702 +(% style="color:#000000" %)Метод позволяет получить список пересечений выбранных геообъектов со всеми объектами за выбранный период. 2703 + 2704 +(% style="color:#000000" %)Метод запроса: **POST** 2705 + 2706 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/geozones 2707 + 2708 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2709 + 2710 +(% style="text-align:left" %) 2711 +Тело запроса: 2712 + 2713 +{ 2714 + "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса 2715 + "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания 2716 + "ids": [ ], ~/~/ Массив id геообъектов 2717 + "byTime": 0, ~/~/ Объединение событий по времени 2718 + "byDist": 0, ~/~/ Объединение событий по расстоянию 2719 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 2720 + "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра 2721 +} 2722 + 2723 +Ответ: 2724 + 2725 +[ 2726 + { 2727 + "geozoneId": 0, ~/~/ ID геообъекта 2728 + "geozoneName": "string", ~/~/ Название геообъекта 2729 + "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда 2730 + "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда 2731 + "duration": 0, ~/~/ Продолжительность нахождения в геообъекте 2732 + "vehicleId": 0, ~/~/ ID объекта 2733 + "vehicleName": "string" ~/~/ Имя объекта 2734 + } 2735 +] 2736 + 2737 + 2738 +== (% style="color:#000000; font-size:16px" %)**Обновить информацию по геозоне**(%%) == 2739 + 2740 +(% class="box successmessage" %) 2741 +((( 2742 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**PUT **(%%)**/api/v3/gis** 2743 +))) 2744 + 2745 +(% style="color:#000000" %)Метод запроса: **PUT** 2746 + 2747 +Пример запроса: 2748 + 2749 +((( 2750 +{ 2751 + "id": 0, ~/~/ Идентификатор объекта геозоны 2752 + "name": "string", ~/~/ Наименование объекта геозоны 2753 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 2754 + "description": "string", ~/~/ Описание объекта геозоны 2755 + "beginCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата начала расчетов для геозоны 2756 + "endCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата окончания расчетов для геозоны 2757 + "settingsData": "string" ~/~/ Параметры отображения в формате XML. 2758 +} 2759 +))) 2760 + 2761 + 2762 +Пример ответа: 2763 + 2764 +200 ~/~/ Success 2765 + 1415 1415 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) = 1416 1416 1417 1417 == (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) == ... ... @@ -1591,6 +1591,32 @@ 1591 1591 1592 1592 Success 1593 1593 2945 + 2946 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2947 + 2948 +(% class="box warningmessage" %) 2949 +((( 2950 +**PUT** /api/v3/notifications/prolongation 2951 +))) 2952 + 2953 +Метод позволяет продлить уведомления. 2954 + 2955 +Метод запроса **PUT** 2956 + 2957 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 2958 + 2959 +В заголовках запроса: X-Auth: Токен авторизации. 2960 + 2961 +Тело запроса: 2962 + 2963 +[ 2964 + 2965 +0 2966 + 2967 +] 2968 + 2969 +где 0 идентификатор ids. 2970 + 1594 1594 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 1595 1595 1596 1596 (% class="box errormessage" %) ... ... @@ -1612,6 +1612,3264 @@ 1612 1612 1613 1613 Success 1614 1614 2992 + 2993 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Водители**(%%) = 2994 + 2995 +== (% style="color:#000000; font-size:16px" %)**Получить список водителей клиента**(%%) == 2996 + 2997 +(% class="box infomessage" %) 2998 +((( 2999 +**POST /api/v3/Drivers/find** 3000 +))) 3001 + 3002 +Передается параметр: parentId - ID клиента-родителя 3003 + 3004 +Ответ: 3005 + 3006 +[ 3007 + { 3008 + "name": "string", ~/~/ Определяет наименование 3009 + "description": "string", ~/~/ Определяет описание 3010 + "hiredate": "2023-06-30T09:37:58.407Z", ~/~/ Определяет дату найма 3011 + "chopdate": "2023-06-30T09:37:58.407Z", ~/~/ Определяет дату увольнения 3012 + "exclusive": true, ~/~/ Определяет признак "Исключительный" 3013 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID водителя 3014 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 3015 + "deleted": true ~/~/ Признак удаления 3016 + } 3017 +] 3018 + 3019 +== (% style="color:#000000; font-size:16px" %)**Получить данные о водителе**(%%) == 3020 + 3021 +(% class="box infomessage" %) 3022 +((( 3023 +**GET /api/v3/Drivers/{driverGuid}** 3024 +))) 3025 + 3026 +Передается параметр: ID водителя 3027 + 3028 +Ответ: 3029 + 3030 +{ 3031 + "name": "string", ~/~/ Определяет наименование 3032 + "description": "string", ~/~/ Определяет описание 3033 + "hiredate": "2023-06-30T09:33:33.083Z", ~/~/ Определяет дату найма 3034 + "chopdate": "2023-06-30T09:33:33.083Z", ~/~/ Определяет дату увольнения 3035 + "exclusive": true, ~/~/ Определяет признак "Исключительный" 3036 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID водителя 3037 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 3038 + "deleted": true ~/~/ Признак удаления 3039 +} 3040 + 3041 +== (% style="color:#000000; font-size:16px" %)**Добавить водителя**(%%) == 3042 + 3043 +(% class="box successmessage" %) 3044 +((( 3045 +**POST /api/v3/Drivers** 3046 +))) 3047 + 3048 +Запрос: 3049 + 3050 +{ 3051 + "name": "string", 3052 + "description": "string", 3053 + "hiredate": "2023-06-30T12:50:54.020Z", 3054 + "chopdate": "2023-06-30T12:50:54.020Z", 3055 + "exclusive": true, 3056 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3057 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3058 + "deleted": true 3059 +} 3060 + 3061 +Ответ: 3062 + 3063 +{ 3064 + "name": "string", 3065 + "description": "string", 3066 + "hiredate": "2023-06-30T12:50:54.051Z", 3067 + "chopdate": "2023-06-30T12:50:54.051Z", 3068 + "exclusive": true, 3069 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3070 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3071 + "deleted": true 3072 +} 3073 + 3074 + 3075 +== (% style="color:#000000; font-size:16px" %)**Редактировать водителя**(%%) == 3076 + 3077 +(% class="box warningmessage" %) 3078 +((( 3079 +**PUT /api/v3/Drivers** 3080 +))) 3081 + 3082 +Запрос: 3083 + 3084 +{ 3085 + "name": "string", 3086 + "description": "string", 3087 + "hiredate": "2023-06-30T12:50:27.910Z", 3088 + "chopdate": "2023-06-30T12:50:27.910Z", 3089 + "exclusive": true, 3090 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3091 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3092 + "deleted": true 3093 +} 3094 + 3095 +Ответ: 3096 + 3097 +{ 3098 + "name": "string", 3099 + "description": "string", 3100 + "hiredate": "2023-06-30T12:50:27.929Z", 3101 + "chopdate": "2023-06-30T12:50:27.929Z", 3102 + "exclusive": true, 3103 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3104 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3105 + "deleted": true 3106 +} 3107 + 3108 + 3109 +== (% style="color:#000000; font-size:16px" %)**Удалить водителя**(%%) == 3110 + 3111 +(% class="box errormessage" %) 3112 +((( 3113 +**DELETE /api/v3/Drivers/{driverGuid}** 3114 +))) 3115 + 3116 +Передается параметр: ID водителя 3117 + 3118 +Ответ: 3119 + 3120 +Success 3121 + 3122 + 3123 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Журнал назначений**(%%) = 3124 + 3125 +== (% style="color:#000000; font-size:18.6667px" %)**Назначение водителя на объект**(%%) == 3126 + 3127 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения водителей запросом к водителю**(%%) === 3128 + 3129 +(% class="box infomessage" %) 3130 +((( 3131 +**POST /api/v3/DriversVehiclesAssignments/GetByDrivers** 3132 +))) 3133 + 3134 +Запрос: 3135 + 3136 +{ 3137 + "Ids": [ 3138 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3139 + ], 3140 + "BeginTime": "2023-06-30T12:49:04.365Z", 3141 + "EndTime": "2023-06-30T12:49:04.365Z" 3142 +} 3143 + 3144 +Ответ: 3145 + 3146 +[ 3147 + { 3148 + "VehicleId": 0, 3149 + "CreateTime": "2023-06-30T09:52:31.240Z", 3150 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3151 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3152 + "BeginTime": "2023-06-30T09:52:31.240Z", 3153 + "EndTime": "2023-06-30T09:52:31.240Z" 3154 + } 3155 +] 3156 + 3157 + 3158 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения водителей запросом к объекту**(%%) === 3159 + 3160 +(% class="box infomessage" %) 3161 +((( 3162 +**POST /api/v3/DriversVehiclesAssignments/GetByVehicles** 3163 +))) 3164 + 3165 +Запрос: 3166 + 3167 +{ 3168 + "Ids": [ 3169 + 0 3170 + ], 3171 + "BeginTime": "2023-06-30T12:48:39.419Z", 3172 + "EndTime": "2023-06-30T12:48:39.419Z" 3173 +} 3174 + 3175 +Ответ: 3176 + 3177 +[ 3178 + { 3179 + "VehicleId": 0, 3180 + "CreateTime": "2023-06-30T09:54:01.631Z", 3181 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3182 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3183 + "BeginTime": "2023-06-30T09:54:01.631Z", 3184 + "EndTime": "2023-06-30T09:54:01.631Z" 3185 + } 3186 +] 3187 + 3188 + 3189 +=== (% style="color:#000000; font-size:16px" %)**Создать назначение водителя на объект**(%%) === 3190 + 3191 +(% class="box successmessage" %) 3192 +((( 3193 +**POST /api/v3/DriversVehiclesAssignments** 3194 +))) 3195 + 3196 +Передается массив назначений 3197 + 3198 +Запрос: 3199 + 3200 +[ 3201 + { 3202 + "VehicleId": 0, ~/~/ Идентификатор объекта 3203 + "CreateTime": "2023-06-30T11:04:46.902Z", ~/~/ Момент времени создания назначения 3204 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 3205 + "BeginTime": "2023-06-30T11:04:46.902Z", ~/~/ Момент времени начала назначения 3206 + "EndTime": "2023-06-30T11:04:46.902Z" ~/~/ Момент времени окончания назначения. Необязательно. 3207 + } 3208 +] 3209 + 3210 +Ответ: 3211 + 3212 +[ 3213 + { 3214 + "VehicleId": 0, 3215 + "CreateTime": "2023-06-30T11:04:46.903Z", 3216 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3217 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3218 + "BeginTime": "2023-06-30T11:04:46.903Z", 3219 + "EndTime": "2023-06-30T11:04:46.903Z" 3220 + } 3221 +] 3222 + 3223 + 3224 +=== (% style="color:#000000; font-size:16px" %)**Изменить назначения водителей на объекты**(%%) === 3225 + 3226 +(% class="box warningmessage" %) 3227 +((( 3228 +**PUT /api/v3/DriversVehiclesAssignments** 3229 +))) 3230 + 3231 +Запрос: 3232 + 3233 +[ 3234 + { 3235 + "VehicleId": 0, 3236 + "CreateTime": "2023-06-30T11:14:08.117Z", 3237 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения 3238 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3239 + "BeginTime": "2023-06-30T11:14:08.117Z", 3240 + "EndTime": "2023-06-30T11:14:08.117Z" 3241 + } 3242 +] 3243 + 3244 +Ответ: 3245 + 3246 +[ 3247 + { 3248 + "VehicleId": 0, 3249 + "CreateTime": "2023-06-30T11:14:53.349Z", 3250 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3251 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3252 + "BeginTime": "2023-06-30T11:14:53.349Z", 3253 + "EndTime": "2023-06-30T11:14:53.349Z" 3254 + } 3255 +] 3256 + 3257 + 3258 +=== (% style="color:#000000; font-size:16px" %)**Удалить назначения водителей на объекты**(%%) === 3259 + 3260 +(% class="box errormessage" %) 3261 +((( 3262 +**DELETE /api/v3/DriversVehiclesAssignments** 3263 +))) 3264 + 3265 +Запрос: 3266 + 3267 +[ 3268 + "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3269 +] 3270 + 3271 +Ответ: 3272 + 3273 +Success 3274 + 3275 + 3276 +== (% style="color:#000000; font-size:18.6667px" %)**Назначение карты-метки водителю**(%%) == 3277 + 3278 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения меток запросом к водителю**(%%) === 3279 + 3280 +(% class="box infomessage" %) 3281 +((( 3282 +**POST /api/v3/DriversRfidsAssignments/GetByDrivers** 3283 +))) 3284 + 3285 +Запрос: 3286 + 3287 +{ 3288 + "Ids": [ 3289 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3290 + ], 3291 + "BeginTime": "2023-06-30T12:47:12.162Z", 3292 + "EndTime": "2023-06-30T12:47:12.162Z" 3293 +} 3294 + 3295 +Ответ: 3296 + 3297 +[ 3298 + { 3299 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор метки 3300 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения 3301 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 3302 + "BeginTime": "2023-06-30T11:19:40.703Z", 3303 + "EndTime": "2023-06-30T11:19:40.703Z" 3304 + } 3305 +] 3306 + 3307 + 3308 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения меток запросом к карте-метке**(%%) === 3309 + 3310 +(% class="box infomessage" %) 3311 +((( 3312 +**POST /api/v3/DriversRfidsAssignments/GetByRfids** 3313 +))) 3314 + 3315 +Запрос: 3316 + 3317 +{ 3318 + "Ids": [ 3319 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3320 + ], 3321 + "BeginTime": "2023-06-30T12:47:12.162Z", 3322 + "EndTime": "2023-06-30T12:47:12.162Z" 3323 +} 3324 + 3325 +Ответ: 3326 + 3327 +[ 3328 + { 3329 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор метки 3330 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения 3331 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 3332 + "BeginTime": "2023-06-30T11:19:40.703Z", 3333 + "EndTime": "2023-06-30T11:19:40.703Z" 3334 + } 3335 +] 3336 + 3337 + 3338 +=== (% style="color:#000000; font-size:16px" %)**Добавить назначения меток на водителей**(%%) === 3339 + 3340 +(% class="box successmessage" %) 3341 +((( 3342 +**POST /api/v3/DriversRfidsAssignments** 3343 +))) 3344 + 3345 +Запрос: 3346 + 3347 +[ 3348 + { 3349 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3350 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3351 + "BeginTime": "2023-06-30T11:27:08.635Z", 3352 + "EndTime": "2023-06-30T11:27:08.635Z" 3353 + } 3354 +] 3355 + 3356 +Ответ: 3357 + 3358 +[ 3359 + { 3360 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3361 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3362 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3363 + "BeginTime": "2023-06-30T11:27:08.677Z", 3364 + "EndTime": "2023-06-30T11:27:08.677Z" 3365 + } 3366 +] 3367 + 3368 + 3369 +=== (% style="color:#000000; font-size:16px" %)**Изменить назначения меток на водителей**(%%) === 3370 + 3371 +(% class="box warningmessage" %) 3372 +((( 3373 +**PUT /api/v3/DriversRfidsAssignments** 3374 +))) 3375 + 3376 +Запрос: 3377 + 3378 +[ 3379 + { 3380 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3381 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3382 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3383 + "BeginTime": "2023-06-30T11:28:43.330Z", 3384 + "EndTime": "2023-06-30T11:28:43.330Z" 3385 + } 3386 +] 3387 + 3388 +Ответ: 3389 + 3390 +[ 3391 + { 3392 + "Rfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3393 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3394 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3395 + "BeginTime": "2023-06-30T11:28:43.331Z", 3396 + "EndTime": "2023-06-30T11:28:43.331Z" 3397 + } 3398 +] 3399 + 3400 + 3401 +=== (% style="color:#000000; font-size:16px" %)**Удалить назначения меток на водителей**(%%) === 3402 + 3403 +(% class="box errormessage" %) 3404 +((( 3405 +**DELETE /api/v3/DriversRfidsAssignments** 3406 +))) 3407 + 3408 +Запрос: 3409 + 3410 +[ 3411 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3412 +] 3413 + 3414 +Ответ: 3415 + 3416 +Success 3417 + 3418 + 3419 +== (% style="color:#000000; font-size:18.6667px" %)**Назначение топливной карты водителю**(%%) == 3420 + 3421 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения топливных карт запросом к водителю**(%%) === 3422 + 3423 +(% class="box infomessage" %) 3424 +((( 3425 +**POST /api/v3/DriversFuelCardsAssignments/GetByDrivers** 3426 +))) 3427 + 3428 +Запрос: 3429 + 3430 +{ 3431 + "Ids": [ 3432 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3433 + ], 3434 + "BeginTime": "2023-06-30T12:45:10.852Z", 3435 + "EndTime": "2023-06-30T12:45:10.852Z" 3436 +} 3437 + 3438 +Ответ: 3439 + 3440 +[ 3441 + { 3442 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3443 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3444 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3445 + "BeginTime": "2023-06-30T11:58:04.695Z", 3446 + "EndTime": "2023-06-30T11:58:04.695Z" 3447 + } 3448 +] 3449 + 3450 + 3451 +=== (% style="color:#000000; font-size:16px" %)**Получить назначения топливных карт запросом к топливной карте**(%%) === 3452 + 3453 +(% class="box infomessage" %) 3454 +((( 3455 +**POST /api/v3/DriversFuelCardsAssignments/GetByCards** 3456 +))) 3457 + 3458 +Запрос: 3459 + 3460 +{ 3461 + "Ids": [ 3462 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3463 + ], 3464 + "BeginTime": "2023-06-30T12:45:10.852Z", 3465 + "EndTime": "2023-06-30T12:45:10.852Z" 3466 +} 3467 + 3468 +Ответ: 3469 + 3470 +[ 3471 + { 3472 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3473 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3474 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3475 + "BeginTime": "2023-06-30T11:58:04.695Z", 3476 + "EndTime": "2023-06-30T11:58:04.695Z" 3477 + } 3478 +] 3479 + 3480 + 3481 +=== (% style="color:#000000; font-size:16px" %)**Добавить назначение топливной карты водителю**(%%) === 3482 + 3483 +(% class="box successmessage" %) 3484 +((( 3485 +**POST /api/v3/DriversFuelCardsAssignments** 3486 +))) 3487 + 3488 +Запрос: 3489 + 3490 +[ 3491 + { 3492 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3493 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3494 + "BeginTime": "2023-06-30T12:09:53.175Z", 3495 + "EndTime": "2023-06-30T12:09:53.175Z" 3496 + } 3497 +] 3498 + 3499 +Ответ: 3500 + 3501 +[ 3502 + { 3503 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3504 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3505 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3506 + "BeginTime": "2023-06-30T12:09:53.201Z", 3507 + "EndTime": "2023-06-30T12:09:53.201Z" 3508 + } 3509 +] 3510 + 3511 + 3512 +=== (% style="color:#000000; font-size:16px" %)**Редактировать назначение топливной карты водителю**(%%) === 3513 + 3514 +(% class="box warningmessage" %) 3515 +((( 3516 +**PUT /api/v3/DriversFuelCardsAssignments** 3517 +))) 3518 + 3519 +Запрос: 3520 + 3521 +[ 3522 + { 3523 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3524 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3525 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3526 + "BeginTime": "2023-06-30T12:09:53.201Z", 3527 + "EndTime": "2023-06-30T12:09:53.201Z" 3528 + } 3529 +] 3530 + 3531 +Ответ: 3532 + 3533 +[ 3534 + { 3535 + "CardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3536 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3537 + "DriverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3538 + "BeginTime": "2023-06-30T12:09:53.201Z", 3539 + "EndTime": "2023-06-30T12:09:53.201Z" 3540 + } 3541 +] 3542 + 3543 + 3544 +=== (% style="color:#000000; font-size:16px" %)**Удалить назначение топливной карты водителю**(%%) === 3545 + 3546 +(% class="box errormessage" %) 3547 +((( 3548 +**DELETE /api/v3/DriversFuelCardsAssignments** 3549 +))) 3550 + 3551 +Запрос: 3552 + 3553 +[ 3554 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3555 +] 3556 + 3557 +Ответ: 3558 + 3559 +Success 3560 + 3561 + 3562 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Назначения агрегатов**(%%) = 3563 + 3564 +== (% style="color:#000000; font-size:16px" %)**Получить список назначений агрегатов на выбранные объекты**(%%) == 3565 + 3566 +(% class="box infomessage" %) 3567 +((( 3568 +**POST /api/v3/Trailers** 3569 +))) 3570 + 3571 +Пример запроса: 3572 + 3573 +{ 3574 + "startDate": "2023-11-14T10:48:03.671Z", 3575 + "endDate": "2023-11-14T10:48:03.671Z", 3576 + "ids": [ 0 ], 3577 + "timezone": 0 3578 +} 3579 + 3580 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3581 +|(% style="width:215px" %)startDate|(% style="width:861px" %)Дата и время начала запроса 3582 +|(% style="width:215px" %)endDate|(% style="width:861px" %)Дата и время окончания запроса 3583 +|(% style="width:215px" %)ids|(% style="width:861px" %)Массив ID объектов 3584 +|(% style="width:215px" %)timezone|(% style="width:861px" %)Часовой пояс, по умолчанию UTC. 3585 + 3586 +Пример ответа: 3587 + 3588 +[ 3589 + { 3590 + "SD": "2023-11-14T10:48:03.717Z", 3591 + "ED": "2023-11-14T10:48:03.717Z", 3592 + "id": 0, 3593 + "SLat": 0, 3594 + "SLon": 0, 3595 + "ELat": 0, 3596 + "ELon": 0, 3597 + "mileage": 0 3598 + "Duration": 0 3599 + "Address": "string", 3600 + "Address2": "string", 3601 + "name": "string", 3602 + "rid": "string", 3603 + "rguid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3604 + "trailer": { 3605 + "ModelGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3606 + "Number": "string", 3607 + "Description": "string", 3608 + "OwnerGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3609 + "ExternalID": "string", 3610 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3611 + "CreateTime": "2023-11-14T10:48:03.717Z", 3612 + "UpdateTime": "2023-11-14T10:48:03.717Z", 3613 + "IsDeleted": true 3614 + }, 3615 + "filesCount": 0, 3616 + } 3617 +] 3618 + 3619 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3620 +|SD|Дата и время начала события 3621 +|ED|Дата и время окончания события 3622 +|id|ID объекта 3623 +|SLat|Широта начальной координаты 3624 +|SLon|Долгота начальной координаты 3625 +|ELat|Широта конечной координаты 3626 +|ELon|Долгота конечной координаты 3627 +|mileage|Пробег 3628 +|Duration|Продолжительность 3629 +|Address|Адрес начального местоположения 3630 +|Address2|Адрес конечного местоположения 3631 +|name|Имя радиометки 3632 +|rid|Номер радиометки 3633 +|rguid|ID радиометки 3634 +|trailer|Информация об агрегате 3635 +|ModelGuid|ID агрегата 3636 +|Number|Название/номер агрегата 3637 +|Description|Текст примечания агрегата 3638 + 3639 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Карты-метки**(%%) = 3640 + 3641 +== (% style="color:#000000; font-size:16px" %)**Получить список карт-меток определенного клиента**(%%) == 3642 + 3643 +(% class="box infomessage" %) 3644 +((( 3645 +**POST /api/v3/Rfids/find** 3646 +))) 3647 + 3648 +Запрос: 3649 + 3650 +{ 3651 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 3652 +} 3653 + 3654 +Ответ: 3655 + 3656 +[ 3657 + { 3658 + "name": "string", 3659 + "number": 0, 3660 + "period": 0, 3661 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3662 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3663 + } 3664 +] 3665 + 3666 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3667 +|parentId|ID клиента 3668 +|name|Название карты-метки 3669 +|number|Номер 3670 +|period|Период запросов в секундах (работает только для агрегатов) 3671 +|id|ID карты-метки 3672 + 3673 +== (% style="color:#000000; font-size:16px" %)**Получить данные карты-метки**(%%) == 3674 + 3675 +(% class="box infomessage" %) 3676 +((( 3677 +**GET /api/v3/Rfids/{rfidGuid}** 3678 +))) 3679 + 3680 +Передаем параметр rfidGuid - идентификатор карты-метки 3681 + 3682 +Ответ: 3683 + 3684 +[ 3685 + { 3686 + "name": "string", 3687 + "number": 0, 3688 + "period": 0, 3689 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3690 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3691 + } 3692 +] 3693 + 3694 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3695 +|name|Название карты-метки 3696 +|number|Номер 3697 +|period|Период запросов в секундах (работает только для агрегатов) 3698 +|id|ID карты-метки 3699 +|parentId|ID клиента 3700 + 3701 +== (% style="color:#000000; font-size:16px" %)**Добавить карту-метку**(%%) == 3702 + 3703 +(% class="box successmessage" %) 3704 +((( 3705 +**POST /api/v3/Rfids** 3706 +))) 3707 + 3708 +Запрос: 3709 + 3710 +{ 3711 + "name": "string", 3712 + "number": 0, 3713 + "period": 0, 3714 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3715 +} 3716 + 3717 +Ответ: 3718 + 3719 +{ 3720 + "name": "string", 3721 + "number": 0, 3722 + "period": 0, 3723 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3724 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3725 +} 3726 + 3727 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3728 +|name|Название карты-метки 3729 +|number|Номер 3730 +|period|Период запросов в секундах (работает только для агрегатов) 3731 +|id|ID карты-метки 3732 +|parentId|ID клиента 3733 + 3734 +== (% style="color:#000000; font-size:16px" %)**Редактировать карту-метку**(%%) == 3735 + 3736 +(% class="box warningmessage" %) 3737 +((( 3738 +**PUT /api/v3/Rfids** 3739 +))) 3740 + 3741 +Запрос: 3742 + 3743 +{ 3744 + "name": "string", 3745 + "number": 0, 3746 + "period": 0, 3747 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3748 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3749 +} 3750 + 3751 +Ответ: 3752 + 3753 +{ 3754 + "name": "string", 3755 + "number": 0, 3756 + "period": 0, 3757 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3758 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3759 +} 3760 + 3761 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3762 +|name|Название карты-метки 3763 +|number|Номер 3764 +|period|Период запросов в секундах (работает только для агрегатов) 3765 +|id|ID карты-метки 3766 +|parentId|ID клиента 3767 + 3768 +== (% style="color:#000000; font-size:16px" %)**Удалить карту-метку**(%%) == 3769 + 3770 +(% class="box errormessage" %) 3771 +((( 3772 +**DELETE /api/v3/Rfids/{rfidGuid}** 3773 +))) 3774 + 3775 +Передаем параметр **rfidGuid** - идентификатор карты-метки 3776 + 3777 +Ответ: 3778 + 3779 +Success 3780 + 3781 + 3782 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Биллинг**(%%) = 3783 + 3784 +== (% style="color:#000000; font-size:16px" %)**Узнать баланс клиента**(%%) == 3785 + 3786 +(% class="box infomessage" %) 3787 +((( 3788 +**GET /api/v3/Billing/client/balance/{clientId}** 3789 +))) 3790 + 3791 +Параметр запроса: **clientId **- идентификатор клиента. 3792 + 3793 +Ответ: 3794 + 3795 +{ 3796 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3797 + "Balance": 0 3798 +} 3799 + 3800 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3801 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3802 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 3803 + 3804 +== (% style="color:#000000; font-size:16px" %)**Узнать ограничения клиента**(%%) == 3805 + 3806 +(% class="box infomessage" %) 3807 +((( 3808 +**GET /api/v3/Billing/client/constraint/{clientId}** 3809 +))) 3810 + 3811 +Параметр запроса: **clientId **- идентификатор клиента. 3812 + 3813 +Ответ: 3814 + 3815 +{ 3816 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3817 + "CalculationType": 0, 3818 + "PermissibleBalance": 0, 3819 + "DefermentDays": 0, 3820 + "SendUiNotifications": true, 3821 + "SendEmailNotifications": true, 3822 + "IsPrivate": true, 3823 +} 3824 + 3825 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3826 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 3827 +|(% style="width:215px" %)CalculationType|(% style="width:861px" %)Определяет тип расчёта, 0 - Деньги, 1 - Дни 3828 +|(% style="width:215px" %)PermissibleBalance|(% style="width:861px" %)Допустимый баланс 3829 +|(% style="width:215px" %)DefermentDays|(% style="width:861px" %)Отсрочка, количество дней. 3830 +|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено 3831 +|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено 3832 +|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 3833 + 3834 +== (% style="color:#000000; font-size:16px" %)**Узнать состояние тарифного плана клиента**(%%) == 3835 + 3836 +(% class="box infomessage" %) 3837 +((( 3838 +**GET /api/v3/Billing/client/plan/{clientId}** 3839 +))) 3840 + 3841 +Параметры запроса: 3842 + 3843 +**clientId **- идентификатор клиента. 3844 + 3845 +**planId **- идентификатор тарифного плана. 3846 + 3847 +Ответ: 3848 + 3849 +{ 3850 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3851 + "Plan": { **~/~/ Описание тарифного плана** 3852 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3853 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3854 + "Name": "string", 3855 + "IsArchived": true, 3856 + "Constraint": { 3857 + "CalculationType": 0, 3858 + "PermissibleBalance": 0, 3859 + "DefermentDays": 0 3860 + }, 3861 + "Features": [ **~/~/ Описание шаблона услуг тарифного плана** 3862 + { 3863 + "Feature": "string", 3864 + "IsFactual": true, 3865 + "Limit": 0, 3866 + "Price": 0, 3867 + "PeriodValue": 0, 3868 + "PeriodType": 0 3869 + } 3870 + ] 3871 + }, 3872 + "DebitDate": "2023-10-18T12:46:24.213Z", 3873 + "Features": [ **~/~/ Описание услуг тарифного плана как есть** 3874 + { 3875 + "Feature": "string", 3876 + "IsEnabled": true, 3877 + "IsPrivate": true, 3878 + "IsFactual": true, 3879 + "Limit": 0, 3880 + "Price": 0, 3881 + "DebitDate": "2023-10-18T12:46:24.213Z", 3882 + "PeriodValue": 0, 3883 + "PeriodType": 0 3884 + } 3885 + ] 3886 +} 3887 + 3888 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3889 +|ClientId|Идентификатор клиента 3890 +|Id|Идентификатор тарифного плана 3891 +|OwnerId|Идентификатор клиента-владельца 3892 +|Name|Наименование тарифного плана 3893 +|IsArchived|Признак, определяющий архивный тарифный план 3894 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 3895 +|PermissibleBalance|Допустимый баланс 3896 +|DefermentDays|Отсрочка, количество дней 3897 +|Feature|Код услуги 3898 +|IsEnabled|Признак, определяющий активирована ли услуга 3899 +|IsPrivate|Признак, определяющий, являются ли параметры по услуге тарифа частными т.е. персональными для клиента, либо определяются тарифным планом. 3900 +|IsFactual|Признак, определяющий расчёт по факту 3901 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 3902 +|Price|Цена за единицу. 3903 +|DebitDate|Следующий момент времени списания с баланса за услугу. 3904 +|PeriodValue|Значение периода. 3905 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 3906 + 3907 +== (% style="color:#000000; font-size:16px" %)**Получить тарифные планы принадлежащие клиенту**(%%) == 3908 + 3909 +(% class="box infomessage" %) 3910 +((( 3911 +**GET /api/v3/Billing/client/constraint/getowned/{clientId}** 3912 +))) 3913 + 3914 +Параметр запроса: **clientId **- идентификатор клиента. 3915 + 3916 +Ответ: 3917 + 3918 +[ 3919 + { 3920 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3921 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3922 + "Name": "string", 3923 + "IsArchived": true, 3924 + "Constraint": { 3925 + "CalculationType": 0, 3926 + "PermissibleBalance": 0, 3927 + "DefermentDays": 0 3928 + }, 3929 + "Features": [ 3930 + { 3931 + "Feature": "string", 3932 + "IsFactual": true, 3933 + "Limit": 0, 3934 + "Price": 0, 3935 + "PeriodValue": 0, 3936 + "PeriodType": 0 3937 + } 3938 + ] 3939 + } 3940 +] 3941 + 3942 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3943 +|ClientId|Идентификатор клиента 3944 +|Id|Идентификатор тарифного плана 3945 +|OwnerId|Идентификатор клиента-владельца 3946 +|Name|Наименование тарифного плана 3947 +|IsArchived|Признак, определяющий архивный тарифный план 3948 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 3949 +|PermissibleBalance|Допустимый баланс 3950 +|DefermentDays|Отсрочка, количество дней 3951 +|Feature|Код услуги 3952 +|IsFactual|Признак, определяющий расчёт по факту 3953 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 3954 +|Price|Цена за единицу. 3955 +|PeriodValue|Значение периода. 3956 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 3957 + 3958 +== (% style="color:#000000; font-size:16px" %)**Получить список доступных тарифных планов**(%%) == 3959 + 3960 +(% class="box infomessage" %) 3961 +((( 3962 +**GET /api/v3/Billing/client/constraint/getowned/{clientId}** 3963 +))) 3964 + 3965 +Параметр запроса: **clientId **- идентификатор клиента. 3966 + 3967 +Ответ: 3968 + 3969 +[ 3970 + { 3971 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3972 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3973 + "Name": "string", 3974 + "IsArchived": true, 3975 + "Constraint": { 3976 + "CalculationType": 0, 3977 + "PermissibleBalance": 0, 3978 + "DefermentDays": 0 3979 + }, 3980 + "Features": [ 3981 + { 3982 + "Feature": "string", 3983 + "IsFactual": true, 3984 + "Limit": 0, 3985 + "Price": 0, 3986 + "PeriodValue": 0, 3987 + "PeriodType": 0 3988 + } 3989 + ] 3990 + } 3991 +] 3992 + 3993 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3994 +|ClientId|Идентификатор клиента 3995 +|Id|Идентификатор тарифного плана 3996 +|OwnerId|Идентификатор клиента-владельца 3997 +|Name|Наименование тарифного плана 3998 +|IsArchived|Признак, определяющий архивный тарифный план 3999 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 4000 +|PermissibleBalance|Допустимый баланс 4001 +|DefermentDays|Отсрочка, количество дней 4002 +|Feature|Код услуги 4003 +|IsFactual|Признак, определяющий расчёт по факту 4004 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4005 +|Price|Цена за единицу. 4006 +|PeriodValue|Значение периода. 4007 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 4008 + 4009 +== (% style="color:#000000; font-size:16px" %)**Изменить баланс**(%%) == 4010 + 4011 +(% class="box warningmessage" %) 4012 +((( 4013 +**PUT /api/v3/Billing/client/balance** 4014 +))) 4015 + 4016 +Устанавливает указанное значение баланса не создавая операции пополнение/снятие. 4017 + 4018 +Тело запроса: 4019 + 4020 +{ 4021 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4022 + "Balance": 0 4023 +} 4024 + 4025 +Ответ: Success 4026 + 4027 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4028 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4029 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4030 + 4031 +== (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) == 4032 + 4033 +(% class="box warningmessage" %) 4034 +((( 4035 +**PUT /api/v3/billing/client/balance/deposit** 4036 +))) 4037 + 4038 +Создает операцию **Пополнение **с указанной суммой 4039 + 4040 +Тело запроса: 4041 + 4042 +{ 4043 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4044 + "Balance": 0 4045 +} 4046 + 4047 +Ответ: Success 4048 + 4049 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4050 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4051 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4052 + 4053 +== (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) == 4054 + 4055 +Создает операцию **Списание **с указанной суммой 4056 + 4057 +(% class="box warningmessage" %) 4058 +((( 4059 +**PUT /api/v3/billing/client/balance/withdraw** 4060 +))) 4061 + 4062 +Тело запроса: 4063 + 4064 +{ 4065 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4066 + "Balance": 0 4067 +} 4068 + 4069 +Ответ: Success 4070 + 4071 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4072 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4073 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4074 + 4075 +== (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) == 4076 + 4077 +(% class="box warningmessage" %) 4078 +((( 4079 +**PUT /api/v3/Billing/client/constraint** 4080 +))) 4081 + 4082 +Тело запроса: 4083 + 4084 +{ 4085 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4086 + "CalculationType": 0, 4087 + "PermissibleBalance": 0, 4088 + "DefermentDays": 0, 4089 + "SendUiNotifications": true, 4090 + "SendEmailNotifications": true, 4091 + "IsPrivate": true, 4092 +} 4093 + 4094 +Ответ: Success 4095 + 4096 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4097 +|ClientId|Идентификатор клиента 4098 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 4099 +|PermissibleBalance|Допустимый баланс 4100 +|DefermentDays|((( 4101 +Отсрочка, количество дней 4102 +))) 4103 +|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено 4104 +|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено 4105 +|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 4106 + 4107 +== (% style="color:#000000; font-size:16px" %)**Изменить тариф клиента**(%%) == 4108 + 4109 +(% class="box warningmessage" %) 4110 +((( 4111 +**PUT /api/v3/Billing/client/plan** 4112 +))) 4113 + 4114 +Тело запроса: 4115 + 4116 +{ 4117 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4118 + "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4119 + "Features": [ 4120 + { 4121 + "Feature": "string", 4122 + "IsEnabled": true, 4123 + "IsFactual": true, 4124 + "Limit": 0, 4125 + "Price": 0, 4126 + "DebitDate": "2023-10-18T13:26:58.987Z", 4127 + "PeriodValue": 0, 4128 + "PeriodType": 0 4129 + } 4130 + ] 4131 +} 4132 + 4133 +Ответ: Success 4134 + 4135 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4136 +|ClientId|Идентификатор клиента 4137 +|PlanId|Идентификатор тарифного плана 4138 +|Feature|Код услуги 4139 +|IsEnabled|Признак, определяющий активирована ли услуга 4140 +|IsFactual|Признак, определяющий расчёт по факту 4141 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4142 +|Price|Цена за единицу. 4143 +|DebitDate|Следующий момент времени списания с баланса за услугу. 4144 +|PeriodValue|Значение периода. 4145 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 4146 + 4147 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) = 4148 + 4149 +(% class="box warningmessage" %) 4150 +((( 4151 +Для тестирования запросов **Импорта **в Postman необходимо скачать его на ПК. Версия в браузере не позволяет загружать файлы в тело запроса. 4152 +))) 4153 + 4154 +== (% style="color:#000000; font-size:16px" %)**Импорт объектов**(%%) == 4155 + 4156 +(% class="box infomessage" %) 4157 +((( 4158 +**POST /api/v3/vehicles/import/{agentId}** 4159 +))) 4160 + 4161 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 4162 + 4163 +В пути указывается **agentId** - id клиента. 4164 + 4165 +**Заголовок** 4166 + 4167 +**X-Auth: [токен авторизации]** 4168 + 4169 +**Параметры** 4170 + 4171 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4172 +|withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 4173 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 4174 + 4175 +В теле использовать тип **form-data,** тип значения** file** 4176 + 4177 +**Ключи** 4178 + 4179 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4180 +|data|В значении передаем файл объекта, формат **xml** или **wlp ** 4181 +|csv|В значении передаем файл датчиков, формат **csv** 4182 + 4183 +Ответ: 4184 + 4185 +{ 4186 + "vehicleId": 0, 4187 + "name": "string", 4188 + "errors": ["string"] 4189 +} 4190 + 4191 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4192 +|vehicleId|ID созданного объекта 4193 +|name|Имя созданного объекта 4194 +|errors|Ошибки и их описание 4195 + 4196 +== (% style="color:#000000; font-size:16px" %)**Импорт сообщений**(%%) == 4197 + 4198 +(% class="box infomessage" %) 4199 +((( 4200 +**POST** **/api/v3/vehicles/import/history/{vehicleId}** 4201 +))) 4202 + 4203 +(% class="wikigeneratedid" %) 4204 +Позволяет импортировать сообщения в выбранный объект. Сообщения должны иметь формат **wln** или **json**. Также они могут быть упакованы и переданы в виде в **zip-архива**. 4205 + 4206 +(% class="wikigeneratedid" %) 4207 +В пути указывается **vehicleId **- id объекта. 4208 + 4209 +**Заголовок** 4210 + 4211 +**X-Auth: [токен авторизации]** 4212 + 4213 +В теле использовать тип **form-data.** 4214 + 4215 +Ключи: 4216 + 4217 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4218 +|**history**|В значении передавать файл с историей 4219 + 4220 +В случае, если загружается история из файла **wln **можно выполнять подмену названий параметров. В ключе вы указываете название параметра из файла, в значении указываете значение на которое нужно заменить. 4221 + 4222 +Ответ: 4223 + 4224 +{ 4225 + "results": [ 4226 + { 4227 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4228 + "vehicleId": 0, 4229 + "errors": [ 4230 + "string" 4231 + ], 4232 + "firstMessageDate": "2023-11-28T09:27:58.949Z", 4233 + "lastMessageDate": "2023-11-28T09:27:58.949Z", 4234 + "producedCount": 0, 4235 + "msgCount": 0 4236 + } 4237 + ] 4238 +} 4239 + 4240 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4241 +|results|Результаты импорта в разрезе ТС 4242 +|vehicleGuid|Guid ТС 4243 +|vehicleId|ID ТС 4244 +|errors|Список ошибок импорта истории (если пустой - нет ошибок) 4245 +|firstMessageDate|Дата первого импортированного сообщения (UTC) 4246 +|lastMessageDate|Дата последнего импортированного сообщения (UTC) 4247 +|producedCount|Кол-во успешно отправленных в шину данных сообщений 4248 +|msgCount|Кол-во обработанных сообщений всего 4249 + 4250 +== == 4251 + 4252 +== **Импортировать историю ТС (Асинхронный запрос)** == 4253 + 4254 +(% class="box successmessage" %) 4255 +((( 4256 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 4257 +))) 4258 + 4259 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4260 + 4261 +Метод запроса: **POST** 4262 + 4263 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 4264 + 4265 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 4266 + 4267 + 4268 +Ответ: 4269 + 4270 +{ 4271 + 4272 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4273 + 4274 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 4275 + 4276 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 4277 + 4278 + "Message": "string", ~/~/ Информация о выполнении запроса 4279 + 4280 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 4281 + 4282 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4283 + 4284 + "Data": "string" ~/~/ Данные 4285 + 4286 +} 4287 + 4288 + 4289 +== (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 4290 + 4291 +(% class="box infomessage" %) 4292 +((( 4293 +**GET /api/v3/vehicles/import/history/status** 4294 +))) 4295 + 4296 +Запрос статуса импорта истории. Может потребоваться в случае импорта истории за большой период. 4297 + 4298 +Ответ: 4299 + 4300 +{ 4301 + "activity": true, 4302 + "progress": 0, 4303 + "message": "string" 4304 +} 4305 + 4306 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)((( 4307 +**Параметр** 4308 +)))|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)((( 4309 +**Описание** 4310 +))) 4311 +|((( 4312 +activity 4313 +)))|((( 4314 +Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4315 +))) 4316 +|((( 4317 +progress 4318 +)))|((( 4319 +Guid ТС 4320 +))) 4321 + 4322 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 4323 + 4324 +(% class="box infomessage" %) 4325 +((( 4326 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 4327 +))) 4328 + 4329 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4330 + 4331 +Метод запроса: **GET** 4332 + 4333 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 4334 + 4335 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 4336 + 4337 + 4338 +Ответ: 4339 + 4340 +{ 4341 + 4342 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4343 + 4344 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 4345 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 4346 + 4347 + "Message": "string", ~/~/ Информация о выполнении запроса 4348 + 4349 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 4350 + 4351 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 4352 + 4353 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4354 + 4355 + "Data": "string" ~/~/ Данные 4356 + 4357 +} 4358 + 4359 +== (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 4360 + 4361 +(% class="box infomessage" %) 4362 +((( 4363 +**POST /api/v3/vehicles/export** 4364 +))) 4365 + 4366 +Запрос позволяет экспортировать файлы с настройками объектов. В запросе передается массив id объектов. 4367 + 4368 +Тело запроса: 4369 + 4370 +[ 4371 + id 4372 +] 4373 + 4374 +Ответ: Success 200, получаете файлы с настройками. 4375 + 4376 +== (% style="color:#000000; font-size:16px" %)**Экспорт сообщений**(%%) == 4377 + 4378 +(% class="box infomessage" %) 4379 +((( 4380 +**POST /api/v3/vehicles/export/history** 4381 +))) 4382 + 4383 +Метод возвращает список сообщений терминала объекта за выбранный период. 4384 + 4385 +Тело запроса: 4386 + 4387 +{ 4388 + "vehicleId": 0, 4389 + "asArchive": true, 4390 + "from": "2023-09-27T12:17:45.973Z", 4391 + "to": "2023-09-27T12:17:45.973Z" 4392 +} 4393 + 4394 +Ответ: 4395 + 4396 +Получаете файл. Сообщение: Code 200/Success 4397 + 4398 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4399 +|vehicleId|ID объекта 4400 +|asArchive|true - Архивировать файл, False - не архивировать 4401 +|from|Дата и время начала запроса 4402 +|to|Дата и время окончания запроса 4403 + 4404 +== (% style="color:#000000; font-size:16px" %)**Статус экспорта сообщений**(%%) == 4405 + 4406 +(% class="box infomessage" %) 4407 +((( 4408 +**GET /api/v3/vehicles/export/history/status** 4409 +))) 4410 + 4411 +Метод возвращает список сообщений терминала объекта за выбранный период. 4412 + 4413 +Ответ: 4414 + 4415 +{ 4416 + "activity": true, 4417 + "progress": 0, 4418 + "message": "string" 4419 +} 4420 + 4421 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4422 +|activity|Статус экспорта, где true - экспорт в процессе выполнения, false - в данный момент ничего не экспортируется. 4423 +|progress|Прогресс экспорта, от 0 до 100% 4424 +|message|Текст описывающий статус 4425 + 4426 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) = 4427 + 4428 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) == 4429 + 4430 +(% class="box infomessage" %) 4431 +((( 4432 +**POST /api/v3/EcoDriving/rating** 4433 +))) 4434 + 4435 +Позволяет получить данные рейтинга нарушений выбранных объектов за указанный период времени. Данные, выдаваемые этим запросом аналогичны тем, что вы можете увидеть в окне **Качество вождения** в мониторинге. В массиве **items **передается список объектов из рейтинга качества вождения, в **trips **передается информация по отдельным рейсам объекта. 4436 + 4437 +Тело запроса: 4438 + 4439 +{ 4440 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4441 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4442 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 4443 +} 4444 + 4445 +Ответ: 4446 + 4447 +{ 4448 + "items": [ ~/~/ Список в разрезе ТС 4449 + { 4450 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4451 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4452 + "vehicleId": 0, ~/~/ ID ТС 4453 + "vehicleName": "string", ~/~/ Название ТС 4454 + "vehicleModel": "string", ~/~/ Модель ТС 4455 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4456 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4457 + "totalViolations": 0, ~/~/ Нарушений всего 4458 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4459 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4460 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4461 + "brakingViolations": 0, ~/~/ Нарушений торможения 4462 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4463 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4464 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4465 + }, 4466 + 4467 +((( 4468 + 4469 +))) 4470 + 4471 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4472 + "mileage": 0, ~/~/ Пробег, м 4473 + "tripsCount": 0, ~/~/ Кол-во рейсов 4474 + "trips": [ ~/~/ Информация по рейсу 4475 + { 4476 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4477 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4478 + "violationsCount": 0, ~/~/ Всего нарушений 4479 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4480 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4481 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4482 + "brakingViolations": 0, ~/~/ Нарушений торможения 4483 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4484 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4485 + "sensorViolations": 0 ~/~/ Нарушений по датчику 4486 + }, 4487 + 4488 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4489 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4490 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4491 + "mileage": 0, ~/~/ Пробег, м 4492 + "motohours": 0, ~/~/ Моточасы, секунды 4493 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4494 + "startAddress": "string", ~/~/ Адрес начала рейса 4495 + "endAddress": "string", ~/~/ Адрес конца рейса 4496 + "drivers": [ ~/~/ Список водителей 4497 + { 4498 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4499 + "driverName": "string", ~/~/ФИО водителя 4500 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 4501 + } 4502 + ] 4503 + } 4504 + ] 4505 + } 4506 + ] 4507 +} 4508 + 4509 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 4510 + 4511 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4512 + 4513 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4514 + 4515 +(% class="box infomessage" %) 4516 +((( 4517 +**POST /api/v3/fuelcards/transactions** 4518 +))) 4519 + 4520 +Метод запроса: POST 4521 + 4522 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4523 +\\В заголовках запроса: X-Auth: Токен авторизации 4524 + 4525 +Параметры в теле запроса (JSON): 4526 + 4527 +{ 4528 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4529 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4530 + "ids": [ 4531 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4532 + ], 4533 + "timezone": 0 ~/~/ Часовой пояс 4534 +} 4535 + 4536 + 4537 +Ответ: 4538 + { 4539 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4540 + "driver": "string", ~/~/ Водители, привязанные к ТК 4541 + "object": "string", ~/~/ Наименование ТС 4542 + "amount": 0, ~/~/ Количество топлива 4543 + "amountDut": 0, ~/~/ Количество по ДУТ 4544 + "amountDiff": 0, ~/~/ Разница, л 4545 + "amountDiffPerc": 0, ~/~/ Разница, % 4546 + "summa": 0, ~/~/ Стоимость, руб 4547 + "serviceName": "string", ~/~/ Тип топлива 4548 + "price": 0, ~/~/ Цена за литр, руб 4549 + "cardName": "string", ~/~/ Наименование ТК 4550 + "cardNum": "string", ~/~/ Номер ТК 4551 + "operator": "string", ~/~/ Оператор ТК 4552 + "address": "string" ~/~/ Адрес АЗС 4553 + } 4554 + 4555 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) == 4556 + 4557 +(% class="box infomessage" %) 4558 +((( 4559 +**GET /api/v3/fuelcards** 4560 +))) 4561 + 4562 +Метод запроса: GET 4563 + 4564 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список 4565 + 4566 +Ответ: 4567 + 4568 +[ 4569 + { 4570 + "Name": "string", ~/~/ Определяет наименование карты. 4571 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора. 4572 + "Number": "string", ~/~/ Определяет № карты. 4573 + "Enabled": true, ~/~/ Определяет признак активности карты. 4574 + "Description": "string", ~/~/ Определяет описание карты. 4575 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты 4576 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 4577 + "deleted": true ~/~/ Признак удаления 4578 + } 4579 +] 4580 + 4581 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4582 + 4583 + 4584 +== **Получение полных данных о ретрансляторе** == 4585 + 4586 +(% class="box infomessage" %) 4587 +((( 4588 +**GET ** **/api/v3/retranslations/{id}** 4589 +))) 4590 + 4591 +id - Идентификатор ретранслятора 4592 + 4593 + 4594 +Пример ответа: 4595 + 4596 +{ 4597 +"description": "", ~/~/ Поле описания ретранслятора 4598 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4599 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4600 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4601 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4602 +"objects": [ ~/~/ Объекты для ретрансляции 4603 +{ 4604 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4605 +"name": "", ~/~/ Наименование объекта ретрансляции 4606 +"imei": "", ~/~/ IMEI объекта ретрансляции 4607 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4608 +} 4609 + ], 4610 +"id": "", ~/~/ Идентификатор ретранслятора 4611 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4612 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4613 +} 4614 + 4615 + 4616 +== **Удаление данных ретранслятора** == 4617 + 4618 +(% class="box infomessage" %) 4619 +((( 4620 +**DELETE** **/api/v3/retranslations/{id}** 4621 +))) 4622 + 4623 +id - Идентификатор ретранслятора 4624 + 4625 + 4626 +== **Создание ретранслятора** == 4627 + 4628 +(% class="box infomessage" %) 4629 +((( 4630 +**POST ** **/api/v3/retranslations/{id}** 4631 +))) 4632 + 4633 +Запрос: 4634 + 4635 +{ 4636 +"description": "", ~/~/ Поле описания ретранслятора 4637 +"subscriberId": "", ~/~/ Идентификатор подписчика 4638 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4639 +"address": "", ~/~/ Адрес и порт принимающего сервера 4640 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4641 +"objects": [ ~/~/Объекты для ретрансляции 4642 +{ 4643 +"id": "", ~/~/ Идентификатор ретранслятора 4644 +"imei": "", ~/~/ IMEI объекта ретрансляции 4645 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4646 +} 4647 + ] 4648 +} 4649 + 4650 + 4651 +Ответ: 4652 + 4653 +{ 4654 +"description": "", ~/~/ Поле описания ретранслятора 4655 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4656 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4657 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4658 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4659 +"objects": [ ~/~/ Объекты для ретрансляции 4660 +{ 4661 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4662 +"name": "string", ~/~/ Наименование объекта ретрансляции 4663 +"imei": "", ~/~/ IMEI объекта ретрансляции 4664 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4665 +} 4666 + ], 4667 +"id": "", ~/~/ Идентификатор ретранслятора 4668 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4669 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4670 +} 4671 + 4672 + 4673 +== **Редактирование ретранслятора** == 4674 + 4675 +(% class="box infomessage" %) 4676 +((( 4677 +**PUT** **/api/v3/retranslations** 4678 +))) 4679 + 4680 +Пример запроса: 4681 + 4682 +{ 4683 +"id": "", ~/~/ Идентификатор ретранслятора 4684 +"description": "string", ~/~/ Поле описания ретранслятора 4685 +"subscriberId": "", ~/~/ Идентификатор подписчика 4686 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4687 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4688 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4689 +"objects": ~/~/ Объекты для ретрансляции 4690 +[ 4691 +{ 4692 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4693 +"imei": "", ~/~/ IMEI объекта ретрансляции 4694 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4695 +} 4696 + ] 4697 +} 4698 + 4699 + 4700 +Пример ответа: 4701 + 4702 +{ 4703 +"description": "", ~/~/ Поле описания ретранслятора 4704 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4705 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4706 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4707 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4708 +"objects": [ ~/~/ Объекты для ретрансляции 4709 +{ 4710 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4711 +"name": "string", ~/~/ Наименование объекта ретрансляции 4712 +"imei": "", ~/~/ IMEI объекта ретрансляции 4713 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4714 +} 4715 + ], 4716 +"id": "", ~/~/ Идентификатор ретранслятора 4717 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4718 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4719 +} 4720 + 4721 + 4722 +== **Получение списка ретранслятора клиента** == 4723 + 4724 +(% class="box infomessage" %) 4725 +((( 4726 +**POST /api/v3/retranslations/find** 4727 +))) 4728 + 4729 +Пример запроса: 4730 + 4731 +{ 4732 +"id": "", ~/~/ Идентификатор ретранслятора 4733 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4734 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4735 +} 4736 + 4737 +Ответ: 4738 + 4739 +[ 4740 +{ 4741 +"description": "", ~/~/ Поле описания ретранслятора 4742 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4743 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4744 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4745 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4746 +"id": "", ~/~/ Идентификатор ретранслятора 4747 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4748 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4749 +} 4750 +] 4751 + 4752 + 4753 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4754 + 4755 +== **API для отчета по выгрузке комбайнов** == 4756 + 4757 +(% class="box infomessage" %) 4758 +((( 4759 +**POST /api/v3/Reports/harvesterUnloading** 4760 +))) 4761 + 4762 +Пример запроса: 4763 + 4764 +{ 4765 + "byTime": 0, ~/~/ Объединение событий по времени 4766 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4767 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4768 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4769 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4770 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4771 + 0 4772 + ], 4773 + "from": "", ~/~/ Дата и время начало запроса 4774 + "to": "", ~/~/ Дата и время окончания запроса 4775 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4776 +} 4777 + 4778 +Пример ответа: 4779 + 4780 +[ 4781 + { 4782 + "harvesterName": "", ~/~/Комбайн, номер 4783 + "harvesterId": 0, ~/~/Комбайн, id 4784 +"harvesterModel": "", ~/~/ Модель комбайна 4785 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4786 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4787 + "events": [ ~/~/Список событий в разрезе комбайна 4788 + { 4789 + "driverId": "", ~/~/Идентификатор водителя 4790 + "driverName": "", ~/~/Водитель комбайна, ФИО 4791 + "RFID": "", ~/~/ идентификатор карты-метки 4792 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4793 + "vehicleId": 0, ~/~/идентификатор объекта 4794 + "vehicleName": "string", ~/~/ Имя объекта 4795 + "modelName": "string", ~/~/ Имя модели объекта 4796 + "nearestVehicles": [ ~/~/Объекты рядом 4797 + { 4798 + "vehicleId": 0, ~/~/идентификатор объекта 4799 + "vehicleName": "string" ~/~/ Имя объекта 4800 + } 4801 + ], 4802 + "fields": [ ~/~/Поля, где происходила выгрузка 4803 + { 4804 + "id": 0, ~/~/ идентификатор пользователя 4805 + "name": "string" ~/~/ имя пользователя 4806 + } 4807 + ], 4808 + "event": "string", ~/~/Событие 4809 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4810 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4811 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4812 + "cultureName": "string", ~/~/ название культуры 4813 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4814 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4815 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4816 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4817 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4818 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4819 + "issued": 0, ~/~/Выдано, бункеров 4820 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4821 + "latitude": 0, ~/~/Широта 4822 + "longitude": 0, ~/~/ Долгота 4823 + "litresAway": 0, ~/~/Отдано, л 4824 + "m3Away": 0 ~/~/Отдано, м3 4825 + } 4826 + ] 4827 + } 4828 +] 4829 + 4830 + 4831 +== **Отчет трек-датчики** == 4832 + 4833 +(% class="box infomessage" %) 4834 +((( 4835 +**POST /api/v3/Reports/sensorsWorks** 4836 +))) 4837 + 4838 +**Пример запроса:** 4839 + 4840 +{ 4841 + "vehicleIds": [ ~/~/ Список ID объектов 4842 + 0 4843 + ], 4844 + "from": "2025-02-20T06:39:23.888Z", ~/~/ Начало периода (локальное время клиента) 4845 + "to": "2025-02-20T06:39:23.888Z", ~/~/ Конец периода (локальное время клиента) 4846 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4847 +} 4848 + 4849 +**Пример ответа:** 4850 + 4851 +((( 4852 +{ 4853 + "vehicleSensorWorks": [ ~/~/ Интервалы работы оборудования для конкретного ТС 4854 + { 4855 + "vehicleId": 0, ~/~/ Идентификатор ТС 4856 + "sensorWorks": [ ~/~/ Интервалы работы оборудования. 4857 + { 4858 + "start": "2025-02-20T06:39:23.979Z", ~/~/ Начало интервала работы оборудования. 4859 + "end": "2025-02-20T06:39:23.979Z", ~/~/ Конец интервала работы оборудования. 4860 + "duration": 0, ~/~/ Продолжительность интервала в секундах. 4861 + "name": "string", ~/~/ Наименование оборудования. 4862 + "mileage": 0, ~/~/ Пробег за время работы оборудования. 4863 + "totalMileage": 0, ~/~/ Общий пробег. 4864 + "avgSpeed": 0 ~/~/ Средняя скорость. 4865 + } 4866 + ] 4867 + } 4868 + ] 4869 +} 4870 + 4871 + 4872 +== **Превышение скорости** == 4873 + 4874 +(% class="box infomessage" %) 4875 +((( 4876 +**POST /api/v3/Reports/overSpeedDuration** 4877 +))) 4878 + 4879 + Публичный API запрос о превышениях скорости по объекту в секундах с выбором способа определения нарушений (дорожное ограничение или фиксированное ограничение). 4880 + 4881 +Пример запроса: 4882 + 4883 +((( 4884 +{ 4885 + "vehicleId": 0, ~/~/ идентификационный номер транспортного средства 4886 + "from": "2025-04-21T10:45:25.258Z", ~/~/ Начало периода (локальное время клиента) 4887 + "to": "2025-04-21T10:45:25.258Z", ~/~/ Конец периода (локальное время клиента) 4888 + "timezone": 0, ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4889 + "overSpeedDetectionType": 0 ~/~/ тип нарушения (1-дорожное ограничение, 2-фиксированный ) 4890 +} 4891 +))) 4892 + 4893 +((( 4894 + 4895 +))) 4896 + 4897 +((( 4898 +Пример ответа: 4899 +))) 4900 + 4901 +((( 4902 +((( 4903 +[ 4904 + { 4905 + "eventDate": "2025-04-21T10:45:25.267Z", ~/~/ Дата и время события 4906 + "duration": 0, ~/~/ Продолжительность события в секундах 4907 + "maxSpeed": 0, ~/~/ Максимальная скорость 4908 + "speedLimit": 0 ~/~/ Ограничение скорости 4909 + } 4910 +] 4911 +))) 4912 +))) 4913 +))) 4914 + 4915 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 4916 + 4917 + 4918 +== **Запрос списка полей** == 4919 + 4920 +(% class="box successmessage" %) 4921 +((( 4922 +**POST /api/v3/agroLands/find** 4923 +))) 4924 + 4925 +Пример запроса: 4926 + 4927 +((( 4928 +((( 4929 +((( 4930 +{ 4931 + "year": 0, ~/~/ Фильтр по году 4932 + "name": "string", ~/~/ Фильтр по названию 4933 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 4934 +} 4935 +))) 4936 +))) 4937 + 4938 + 4939 +))) 4940 + 4941 +Пример ответа: 4942 + 4943 +((( 4944 +[ 4945 + { 4946 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4947 + "year": 0, ~/~/ Год поля 4948 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 4949 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 4950 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 4951 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4952 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4953 + "counts": { ~/~/ Счётчики с/х поля 4954 + "fieldOperations": 0, ~/~/ Количество операций на поле 4955 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4956 + "facts": 0 ~/~/ Счётчик факта 4957 + }, 4958 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4959 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4960 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4961 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4962 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4963 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4964 + "planComment": "string", ~/~/ Комментарий к полю 4965 + "productivity": 0, ~/~/ Урожайность. 4966 + "id": 0, ~/~/ Идентификатор объекта геозоны 4967 + "name": "string", ~/~/ Название объекта геозоны 4968 + "type": 0, ~/~/ Тип объекта геозоны 4969 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4970 + "fname": "string", ~/~/ Имя файла 4971 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4972 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 4973 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 4974 + "description": "string", ~/~/ Описание объекта геозоны 4975 + "area": 0, ~/~/ Площадь, м2 4976 + "perimetr": 0, ~/~/ Периметр, м 4977 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 4978 + } 4979 +] 4980 + 4981 + 4982 +== **Создание нового поля ** == 4983 + 4984 +(% class="box successmessage" %) 4985 +((( 4986 +**POST /api/v3/agroLands** 4987 +))) 4988 + 4989 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 4990 +X-agent - ID клиента 4991 + 4992 +Пример запроса: 4993 + 4994 +((( 4995 +{ 4996 + "extId": "string", 4997 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля 4998 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля 4999 + "display": "string", ~/~/ Настройки отображения 5000 + "year": 0, ~/~/ Год поля 5001 + "name": "string", ~/~/ Наименование 5002 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5003 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 5004 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 5005 + "planComment": "string", ~/~/ Комментарий к полю 5006 + "cropRotations": [ ~/~/ Данные по севообороту 5007 + { 5008 + "landId": 0, ~/~/ ID поля 5009 + "landName": "string", ~/~/ Название поля 5010 + "year": 0, ~/~/ Год урожая 5011 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5012 + "cultureName": "string", ~/~/ Название культуры 5013 + "productivity": 0, ~/~/ Урожайность 5014 + "area": 0, ~/~/ Площадь поля, Га 5015 + "total": 0, ~/~/ Валовый сбор 5016 + "productivityFact": 0, ~/~/ Фактическая урожайность 5017 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5018 + "totalFact": 0, ~/~/ Фактический валовый сбор 5019 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 5020 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 5021 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 5022 + "isyearplan": true, ~/~/ Годовой план 5023 + "comment": "string" ~/~/ Комментарий 5024 + } 5025 + ] 5026 +} 5027 +))) 5028 + 5029 +((( 5030 + 5031 +))) 5032 + 5033 +Пример ответа: 5034 + 5035 +((( 5036 +((( 5037 +{ 5038 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5039 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5040 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5041 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5042 + "cropRotations": [ ~/~/ Данные по севообороту 5043 + { 5044 + "landId": 0, ~/~/ ID поля 5045 + "landName": "string", ~/~/ Название поля 5046 + "year": 0, ~/~/ Год урожая 5047 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5048 + "cultureName": "string", ~/~/ Название культуры 5049 + "productivity": 0, ~/~/ Урожайность 5050 + "area": 0, ~/~/ Площадь поля, Га. 5051 + "total": 0, ~/~/ Валовый сбор 5052 + "productivityFact": 0, ~/~/ Фактическая урожайность 5053 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5054 + "totalFact": 0, ~/~/ Фактический валовый сбор 5055 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 5056 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 5057 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 5058 + "isyearplan": true, ~/~/ годовой план 5059 + "comment": "string" ~/~/ Комментарий 5060 + } 5061 + ], 5062 + "cropVegetation": [ ~/~/ История вегетации поля 5063 + { 5064 + "values": [ ~/~/ Данные вегетации и состояния посева 5065 + { 5066 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5067 + "ndvi": 0 ~/~/ Индекс вегетации 5068 + } 5069 + ], 5070 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5071 + { 5072 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5073 + "type": "string", ~/~/ Тип 5074 + "pictureid": "string" ~/~/ Идентификатор ресурса 5075 + } 5076 + ], 5077 + "states": [ ~/~/ Ключевые даты развития поля 5078 + { 5079 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 5080 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5081 + } 5082 + ] 5083 + } 5084 + ], 5085 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 5086 + "counts": { 5087 + "fieldOperations": 0, ~/~/ Количество операций на поле 5088 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5089 + "facts": 0 ~/~/ Счётчик факта 5090 + }, 5091 + "planComment": "string", ~/~/ Комментарий к полю 5092 +))) 5093 + 5094 +((( 5095 + "productivity": 0, ~/~/ Урожайность. 5096 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5097 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 5098 + "year": 0, ~/~/ Год поля 5099 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5100 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5101 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5102 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5103 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 5104 + "id": 0, ~/~/ Идентификатор объекта геозоны 5105 + "name": "string", ~/~/ Название объекта геозоны 5106 + "type": 0, ~/~/ Тип объекта геозоны 5107 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5108 + "fname": "string", ~/~/ Имя файла 5109 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5110 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 5111 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 5112 + "description": "string", ~/~/ Описание объекта геозоны 5113 + "area": 0, ~/~/ Площадь, м2 5114 + "perimetr": 0, ~/~/ Периметр, м 5115 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 5116 +} 5117 + 5118 + 5119 +))) 5120 +))) 5121 +))) 5122 + 5123 +== **Получение поля по id** == 5124 + 5125 +(% class="box infomessage" %) 5126 +((( 5127 +**GET /api/v3/agroLands/{id}** 5128 +))) 5129 + 5130 +Пример запроса: 5131 +id ~/~/ Идентификатор поля 5132 + 5133 +Пример ответа: 5134 + 5135 +((( 5136 +{ 5137 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5138 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5139 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5140 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5141 + "cropRotations": [ ~/~/ Данные по севообороту 5142 + { 5143 + "landId": 0, ~/~/ ID поля 5144 + "landName": "string", ~/~/ Название поля 5145 + "year": 0, ~/~/ Год урожая 5146 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5147 + "cultureName": "string", ~/~/ Название культуры 5148 + "productivity": 0, ~/~/ Урожайность 5149 + "area": 0, ~/~/ Площадь поля, Га 5150 + "total": 0, ~/~/ Валовый сбор 5151 + "productivityFact": 0, ~/~/ Фактическая урожайность 5152 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5153 + "totalFact": 0, ~/~/ Фактический валовый сбор 5154 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 5155 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 5156 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 5157 + "isyearplan": true, ~/~/ План года 5158 + "comment": "string" ~/~/ Комментарий 5159 + } 5160 + ], 5161 + "cropVegetation": [ ~/~/ История вегетации поля 5162 + { 5163 + "values": [ ~/~/ Данные вегетации и состояния посева 5164 + { 5165 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5166 + "ndvi": 0 ~/~/ Индекс вегетации 5167 + } 5168 + ], 5169 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5170 + { 5171 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5172 + "type": "string", ~/~/ Тип 5173 + "pictureid": "string" ~/~/ Идентификатор ресурса 5174 + } 5175 + ], 5176 + "states": [ ~/~/ Ключевые даты развития поля 5177 + { 5178 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5179 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 5180 + } 5181 + ] 5182 + } 5183 + ], 5184 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5185 + "counts": { 5186 + "fieldOperations": 0, ~/~/ Количество операций на поле 5187 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5188 + "facts": 0 ~/~/ Счётчик факта 5189 + }, 5190 + "planComment": "string", ~/~/ Комментарий к полю 5191 + "productivity": 0, ~/~/ Урожайность. 5192 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5193 +))) 5194 + 5195 +((( 5196 +((( 5197 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5198 + "year": 0, ~/~/ Год поля 5199 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5200 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5201 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5202 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5203 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5204 + "id": 0, ~/~/ Идентификатор объекта геозоны 5205 + "name": "string", ~/~/ Название объекта геозоны 5206 + "type": 0, ~/~/ Тип объекта геозоны 5207 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5208 + "fname": "string", ~/~/ Имя файла 5209 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5210 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5211 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5212 + "description": "string", ~/~/ Описание объекта геозоны 5213 + "area": 0, ~/~/ Площадь, м2 5214 + "perimetr": 0, ~/~/ Периметр, м 5215 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5216 +} 5217 +))) 5218 + 5219 + 5220 +== **Удаление существующего поля** == 5221 + 5222 +(% class="box errormessage" %) 5223 +((( 5224 +**DELETE /api/v3/agroLands/{id}** 5225 +))) 5226 + 5227 +Пример запроса: 5228 +id ~/~/ Идентификатор поля 5229 + 5230 +Пример ответа: 5231 + 5232 +((( 5233 +200 ~/~/ Успех 5234 +))) 5235 + 5236 +((( 5237 + 5238 +))) 5239 + 5240 +((( 5241 +((( 5242 +((( 5243 + 5244 +))) 5245 + 5246 +((( 5247 +== **Изменение поля** == 5248 + 5249 +(% class="box infomessage" %) 5250 +((( 5251 +**PUT /api/v3/agroLands** 5252 +))) 5253 + 5254 +Пример запроса: 5255 + 5256 +((( 5257 +((( 5258 +{ 5259 + "id": 0, ~/~/ Идентификатор поля 5260 + "extId": "string", ~/~/ ExtId 5261 + "shape": "string", ~/~/ Форма поля 5262 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5263 + "display": "string", ~/~/ Настройки отображения 5264 + "year": 0, ~/~/ Год поля 5265 + "name": "string", ~/~/ Наименование 5266 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5267 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5268 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5269 + "planComment": "string", ~/~/Комментарий к полю 5270 + "cropRotations": [ ~/~/ Данные по севообороту 5271 + { 5272 + "landId": 0, ~/~/ ID поля 5273 + "landName": "string", ~/~/ Название поля 5274 + "year": 0, ~/~/ Год урожая 5275 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5276 + "cultureName": "string", ~/~/ Название культуры 5277 + "productivity": 0, ~/~/ Урожайность 5278 + "area": 0, ~/~/ Площадь поля, Га. 5279 + "total": 0, ~/~/ Валовый сбор 5280 + "productivityFact": 0, ~/~/ Фактическая урожайность 5281 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5282 + "totalFact": 0, ~/~/ Фактический валовый сбор 5283 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5284 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5285 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5286 + "isyearplan": true, 5287 + "comment": "string" ~/~/ Комментарий 5288 + } 5289 + ], 5290 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5291 +} 5292 +))) 5293 +))) 5294 + 5295 +((( 5296 + 5297 +))) 5298 + 5299 +Пример ответа: 5300 + 5301 +((( 5302 +((( 5303 +((( 5304 +{ 5305 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5306 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5307 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5308 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5309 + "cropRotations": [ ~/~/ Данные по севообороту 5310 + { 5311 + "landId": 0, ~/~/ ID поля 5312 + "landName": "string", ~/~/ Название поля 5313 + "year": 0, ~/~/ Год урожая 5314 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5315 + "cultureName": "string", ~/~/ Название культуры 5316 + "productivity": 0, ~/~/ Урожайность 5317 + "area": 0, ~/~/ Площадь поля, Га 5318 + "total": 0, ~/~/ Валовый сбор 5319 + "productivityFact": 0, ~/~/ Фактическая урожайность 5320 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5321 + "totalFact": 0, ~/~/ Фактический валовый сбор 5322 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5323 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5324 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5325 + "isyearplan": true, ~/~/ 5326 + "comment": "string" ~/~/ Комментарий 5327 + } 5328 + ], 5329 + "cropVegetation": [ ~/~/ История вегетации поля 5330 + { 5331 + "values": [ ~/~/ Данные вегетации и состояния посева 5332 + { 5333 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5334 + "ndvi": 0 ~/~/ Индекс вегетации 5335 + } 5336 + ], 5337 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5338 + { 5339 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5340 + "type": "string", ~/~/ Тип 5341 + "pictureid": "string" ~/~/ Идентификатор ресурса 5342 + } 5343 + ], 5344 + "states": [ ~/~/ Ключевые даты развития поля 5345 + { 5346 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5347 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5348 + } 5349 + ] 5350 + } 5351 + ], 5352 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5353 + "counts": { 5354 + "fieldOperations": 0, ~/~/ Количество операций на поле 5355 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5356 + "facts": 0 ~/~/ Счётчик факта 5357 + }, 5358 + "planComment": "string", ~/~/ Комментарий к полю 5359 + "productivity": 0, ~/~/ Урожайность. 5360 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5361 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5362 + "year": 0, ~/~/ Год поля 5363 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5364 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5365 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5366 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5367 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5368 + "id": 0, ~/~/ Идентификатор объекта геозоны 5369 + "name": "string", ~/~/ Название объекта геозоны 5370 + "type": 0, ~/~/ Тип объекта геозоны 5371 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5372 + "fname": "string", ~/~/ Имя файла 5373 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5374 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5375 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5376 + "description": "string", ~/~/ Описание объекта геозоны 5377 + "area": 0, ~/~/ Площадь, м2 5378 + "perimetr": 0, ~/~/ Периметр, м 5379 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5380 +} 5381 +))) 5382 +))) 5383 +))) 5384 +))) 5385 +))) 5386 + 5387 + 5388 +== **Редактирование года урожая ** == 5389 + 5390 +(% class="box successmessage" %) 5391 +((( 5392 +**POST /api/v3/agroLands/updateOpenCloseYear** 5393 +))) 5394 + 5395 +Пример запроса: 5396 + 5397 +((( 5398 +((( 5399 +{ 5400 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5401 + 0 5402 + ], 5403 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5404 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5405 +} 5406 +))) 5407 + 5408 + 5409 +))) 5410 + 5411 +Пример ответа: 5412 + 5413 +((( 5414 +((( 5415 +{ 5416 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5417 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5418 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5419 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5420 + "cropRotations": [ ~/~/ Данные по севообороту 5421 + { 5422 + "landId": 0, ~/~/ ID поля 5423 + "landName": "string", ~/~/ Название поля 5424 + "year": 0, ~/~/ Год урожая 5425 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5426 + "cultureName": "string", ~/~/ Название культуры 5427 + "productivity": 0, ~/~/ Урожайность 5428 + "area": 0, ~/~/ Площадь поля, Га. 5429 + "total": 0, ~/~/ Валовый сбор 5430 + "productivityFact": 0, ~/~/ Фактическая урожайность 5431 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5432 + "totalFact": 0, ~/~/ Фактический валовый сбор 5433 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5434 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5435 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5436 + "isyearplan": true, ~/~/ 5437 + "comment": "string" ~/~/ Комментарий 5438 + } 5439 + ], 5440 + "cropVegetation": [ ~/~/ История вегетации поля 5441 + { 5442 + "values": [ ~/~/ Данные вегетации и состояния посева 5443 + { 5444 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5445 + "ndvi": 0 ~/~/ Индекс вегетации 5446 + } 5447 + ], 5448 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5449 + { 5450 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5451 + "type": "string", ~/~/ Тип 5452 + "pictureid": "string" ~/~/ Идентификатор ресурса 5453 + } 5454 + ], 5455 + "states": [ ~/~/ Ключевые даты развития поля 5456 + { 5457 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5458 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5459 + } 5460 + ] 5461 + } 5462 + ], 5463 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5464 + "counts": { 5465 + "fieldOperations": 0, ~/~/ Количество операций на поле 5466 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5467 + "facts": 0 ~/~/ Счётчик факта 5468 + }, 5469 + "planComment": "string", ~/~/ Комментарий к полю 5470 + "productivity": 0, ~/~/ Урожайность. 5471 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5472 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5473 + "year": 0, ~/~/ Год поля 5474 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5475 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5476 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5477 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5478 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5479 + "id": 0, ~/~/ Идентификатор объекта геозоны 5480 + "name": "string", ~/~/ Название объекта геозоны 5481 + "type": 0, ~/~/ Тип объекта геозоны 5482 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5483 + "fname": "string", ~/~/ Имя файла 5484 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5485 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5486 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5487 + "description": "string", ~/~/ Описание объекта геозоны 5488 + "area": 0, ~/~/ Площадь, м2 5489 + "perimetr": 0, ~/~/ ериметр, м 5490 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5491 +} 5492 +))) 5493 + 5494 + 5495 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5496 +))) 5497 +))) 5498 +))) 5499 + 5500 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 5501 + 5502 + 5503 +(% class="box infomessage" %) 5504 +((( 5505 +**GET api/v3/Vehicles/recyclebin/all** 5506 +))) 5507 + 5508 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 5509 + 5510 +Параметр запроса: {parentId} - идентификатор агента 5511 + 5512 +В заголовках запроса: X-Auth: Токен авторизации 5513 + 5514 +Ответ: 5515 + 5516 +[ 5517 + { 5518 + "recordTime": "", ~/~/Время записи 5519 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5520 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5521 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5522 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5523 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5524 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5525 + "items": [ ~/~/ 5526 +nullable: true ~/~/Детали 5527 + { 5528 + "name": "string", ~/~/наименование столбца 5529 + "value": "string" ~/~/содержание столбца 5530 + } 5531 + ] 5532 + }, 5533 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5534 + "string" 5535 + ] 5536 + } 5537 +] 5538 + 5539 + 5540 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) == 5541 + 5542 +(% class="box infomessage" %) 5543 +((( 5544 +**POST api/v3/Vehicles/recyclebin/erase** 5545 +))) 5546 + 5547 +В заголовках запроса: X-Auth: Токен авторизации 5548 + 5549 +Пример запроса: 5550 + 5551 +[ 5552 +0 5553 +] 5554 + 5555 + 5556 +Пример ответа: 5557 + 5558 +[ 5559 +{ 5560 + "recordTime": "", ~/~/Время записи 5561 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5562 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5563 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5564 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5565 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5566 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5567 + "items": [ ~/~/Детали 5568 + { 5569 + "name": "", ~/~/Имя свойства 5570 + "value": "" ~/~/Значение свойства 5571 + } 5572 + ] 5573 + }, 5574 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5575 + "" 5576 + ] 5577 + } 5578 +] 5579 + 5580 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 5581 + 5582 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 5583 + 5584 +(% class="box infomessage" %) 5585 +((( 5586 +**POST api/v3/Vehicles/recyclebin/restore** 5587 +))) 5588 + 5589 +В заголовках запроса: X-Auth: Токен авторизации 5590 + 5591 +Параметры в теле запроса (JSON): 5592 + 5593 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5594 + 5595 +В заголовках запроса: X-Auth: Токен авторизации 5596 + 5597 + 5598 +Пример запроса: 5599 + 5600 +((( 5601 +[ 5602 +))) 5603 + 5604 +((( 5605 + 0 5606 +))) 5607 + 5608 +((( 5609 +] 5610 +))) 5611 + 5612 + 5613 +Пример ответа: 5614 + 5615 +[ 5616 +{ 5617 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5618 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5619 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5620 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5621 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5622 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5623 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5624 + "items": [ ~/~/Детали 5625 + { 5626 + "name": "string", ~/~/Имя свойства 5627 + "value": "string" ~/~/Значение свойства 5628 + } 5629 + ] 5630 + }, 5631 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5632 + "string" 5633 + ] 5634 + } 5635 +] 5636 + 5637 + 5638 += **Раздел: Журнал заданий ** = 5639 + 5640 + 5641 +== **Создание задания в Журнале заданий** == 5642 + 5643 +(% class="box infomessage" %) 5644 +((( 5645 +**POST /api/v3/vehicletasks** 5646 +))) 5647 + 5648 +Пример запроса: 5649 + 5650 +((( 5651 +{ 5652 + "vehicleId": 0, ~/~/ Идентификатор ТС 5653 + "description": "string", ~/~/ Описание 5654 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5655 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5656 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы 5657 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы 5658 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5659 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5660 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5661 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5662 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5663 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5664 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5665 + "cost": { 5666 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5667 + "Name": "string", ~/~/ Наименование 5668 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection ) 5669 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5670 + "Norm": 0 ~/~/ Норма внесения 5671 + }, 5672 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 5673 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5674 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания 5675 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления 5676 + "deleted": true, ~/~/ Признак удаления 5677 + "extId": "string", 5678 + "GeoIds": [ ~/~/ Cвязанные поля 5679 + 0 5680 + ] 5681 +} 5682 +))) 5683 + 5684 + 5685 +Пример ответа: 5686 + 5687 +{ 5688 + "vehicleId": 0, ~/~/ Идентификатор ТС 5689 + "description": "string", ~/~/ Описание 5690 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5691 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5692 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5693 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5694 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5695 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5696 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5697 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5698 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5699 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5700 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5701 + "cost": { 5702 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5703 + "Name": "string", ~/~/ Наименование 5704 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5705 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5706 + "Norm": 0 ~/~/ Норма внесения 5707 + }, 5708 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5709 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5710 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5711 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5712 + "deleted": true, ~/~/ Признак удаления 5713 + "extId": "string", ~/~/ ExtId 5714 + "GeoIds": [ ~/~/ Связанные поля 5715 + 0 5716 + ] 5717 +} 5718 + 5719 + 5720 +== **Редактирование задания в Журнале заданий** == 5721 + 5722 +(% class="box successmessage" %) 5723 +((( 5724 +**PUT /api/v3/vehicletasks** 5725 +))) 5726 + 5727 +Пример запроса: 5728 + 5729 +((( 5730 +{ 5731 + "vehicleId": 0, ~/~/ Идентификатор ТС 5732 + "description": "string", ~/~/ Описание 5733 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5734 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5735 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы 5736 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы 5737 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5738 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5739 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5740 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5741 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5742 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5743 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5744 + "cost": { 5745 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5746 + "Name": "string", ~/~/ Наименование 5747 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5748 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5749 + "Norm": 0 ~/~/ Норма внесения 5750 + }, 5751 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5752 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5753 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания 5754 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления 5755 + "deleted": true, ~/~/ Признак удаления 5756 + "extId": "string", ~/~/ ExtId 5757 + "GeoIds": [ ~/~/ Связанные поля 5758 + 0 5759 + ] 5760 +} 5761 +))) 5762 + 5763 + 5764 +Пример ответа: 5765 + 5766 +{ 5767 + "vehicleId": 0, ~/~/ Идентификатор ТС 5768 + "description": "string", ~/~/ Описание 5769 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5770 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5771 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5772 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5773 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5774 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5775 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5776 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5777 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5778 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5779 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5780 + "cost": { 5781 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5782 + "Name": "string", ~/~/ Наименование 5783 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5784 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5785 + "Norm": 0 ~/~/ Норма внесения 5786 + }, 5787 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5788 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5789 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5790 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5791 + "deleted": true, ~/~/ Признак удаления 5792 + "extId": "string", ~/~/ ExtId 5793 + "GeoIds": [ ~/~/ Связанные поля 5794 + 0 5795 + ] 5796 +} 5797 + 5798 + 5799 +== **Удаление задания в Журнале заданий** == 5800 + 5801 +(% class="box warningmessage" %) 5802 +((( 5803 +**DELETE /api/v3/vehicletasks** 5804 +))) 5805 + 5806 +Пример запроса: 5807 + 5808 +((( 5809 +[ 5810 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 5811 +] 5812 +))) 5813 + 5814 +((( 5815 + 5816 +))) 5817 + 5818 +Пример ответа: 5819 + 5820 +{ 5821 + "vehicleId": 0, ~/~/ Идентификатор ТС 5822 + "description": "string", ~/~/ Описание 5823 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5824 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5825 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5826 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5827 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5828 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5829 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5830 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5831 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5832 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5833 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5834 + "cost": { 5835 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5836 + "Name": "string", ~/~/ Наименование 5837 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5838 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5839 + "Norm": 0 ~/~/ Норма внесения 5840 + }, 5841 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5842 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5843 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5844 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5845 + "deleted": true, ~/~/ Признак удаления 5846 + "extId": "string", ~/~/ ExtId 5847 + "GeoIds": [ ~/~/ Связанные поля 5848 + 0 5849 + ] 5850 +} 5851 + 5852 + 5853 +== **Получение списка Журнала заданий** == 5854 + 5855 +(% class="box infomessage" %) 5856 +((( 5857 +**POST /api/v3/vehicletasks/getbyperiod** 5858 +))) 5859 + 5860 +Пример запроса: 5861 + 5862 +((( 5863 +{ 5864 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода. 5865 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода. 5866 + "TimeZone": 0, ~/~/ Часовой пояс. 5867 + "OperationsIds": [ ~/~/ Идентификаторы видов работ для фильтрации журнала 5868 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 5869 + ], 5870 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала 5871 + 0 5872 + ], 5873 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала 5874 + 0 5875 + ], 5876 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска. 5877 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 5878 +} 5879 +))) 5880 + 5881 + 5882 +Пример ответа: 5883 + 5884 +((( 5885 +{ 5886 + "total": 0, ~/~/ Общее количество записей 5887 + "pages": 0, ~/~/ Общее количество страниц 5888 + "currentPage": 0, ~/~/ Текущая страница 5889 + "items": [ ~/~/ Записи 5890 + { 5891 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5892 + "isGroup": true, ~/~/ Вид задания (true - групповое, иначе - одиночное). 5893 + "name": "string", ~/~/ Название задания. 5894 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc 5895 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc 5896 + "workKind": "string", ~/~/ Вид работ 5897 + "techOp": "string", ~/~/ Тех. операция 5898 + "trailerModel": "string", ~/~/ Модель агрегата 5899 + "width": "string", ~/~/ Ширина, м 5900 + "speed": "string", ~/~/ Тех. скорость 5901 + "fields": "string", ~/~/ Поля 5902 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га) 5903 + "vehicles": "string", ~/~/ Объект-модель 5904 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов) 5905 + "drivers": "string", ~/~/ Водители 5906 + "tmc": "string", ~/~/ ТМЦ 5907 + "client": "string", ~/~/ Клиент 5908 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5909 + "dep": "string", ~/~/ Подразделение 5910 + "geoIds": [ ~/~/ Связанные поля 5911 + 0 5912 + ] 5913 + } 5914 + ] 5915 +} 5916 +))) 5917 + 5918 + 5919 += **Раздел: Локатор ** = 5920 + 5921 + 5922 +== **Получение списка локаторов, доступных пользователю ** == 5923 + 5924 +(% class="box infomessage" %) 5925 +((( 5926 +**GET /api/v3/locators** 5927 +))) 5928 + 5929 +В заголовках запроса: X-Auth: Токен авторизации 5930 + 5931 + 5932 +Пример ответа: 5933 + 5934 +((( 5935 +[ 5936 + { 5937 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 5938 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 5939 + "agentName": "string", ~/~/ Наименование агента. 5940 + "isEnabled": true, ~/~/ Активен 5941 + "created": "2025-03-12T06:48:41.254Z", ~/~/ Дата создания 5942 + "updated": "2025-03-12T06:48:41.254Z", ~/~/ Дата обновления 5943 + "name": "string", ~/~/ Наименование 5944 + "status": 0, ~/~/ 5945 + "activationMode": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 5946 + "activationTime": "2025-03-12T06:48:41.254Z", ~/~/ Определяет вид активации локаторов. ( 0 - сейчас, 1 - время активации) 5947 + "validity": 0, ~/~/ Срок действия в днях (1-90). 5948 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5949 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 5950 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 5951 + "url": "string", ~/~/ Ссылка 5952 + "language": 0, ~/~/ Язык. 5953 + "vehiclesCount": 0, ~/~/ Количество объектов. 5954 + "geozonesCount": 0, ~/~/ Количество геозон. 5955 + "fieldsCount": 0 ~/~/ Количество полей. 5956 + } 5957 +] 5958 +))) 5959 + 5960 + 5961 + 5962 +== **Создание локатора** == 5963 + 5964 +(% class="box successmessage" %) 5965 +((( 5966 +**POST /api/v3/locators** 5967 +))) 5968 + 5969 +Пример запроса: 5970 + 5971 +((( 5972 +{ 5973 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 5974 + "isEnabled": true, ~/~/ Активность 5975 + "name": "string", ~/~/ Наименование локатора 5976 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 5977 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 5978 + "validity": 0, ~/~/ Срок действия в днях (1-90) 5979 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5980 + "url": "string", ~/~/ Ссылка 5981 + "language": 0 ~/~/ Язык 5982 +} 5983 +))) 5984 + 5985 + 5986 +Пример ответа: 5987 + 5988 +((( 5989 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора 5990 +))) 5991 + 5992 + 5993 + 5994 +== **Изменение локатора** == 5995 + 5996 +(% class="box infomessage" %) 5997 +((( 5998 +**PUT /api/v3/locators** 5999 +))) 6000 + 6001 +Пример запроса: 6002 + 6003 +((( 6004 +{ 6005 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6006 + "isEnabled": true, ~/~/ Активность 6007 + "name": "string", ~/~/ Наименование 6008 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6009 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 6010 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6011 + "autoProlongation": true, ~/~/ Автопродление срока действия 6012 + "url": "string", ~/~/ Ссылка 6013 + "language": 0 ~/~/ Язык 6014 +} 6015 +))) 6016 + 6017 + 6018 +Пример ответа: 6019 + 6020 +200 ~/~/ Success 6021 + 6022 + 6023 +== **Удалить локатор** == 6024 + 6025 +(% class="box warningmessage" %) 6026 +((( 6027 +**DELETE /api/v3/locators** 6028 +))) 6029 + 6030 +Пример запроса: 6031 + 6032 +((( 6033 +[ 6034 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора 6035 +] 6036 +))) 6037 + 6038 + 6039 + 6040 += **Раздел: Яндекс Маршруты** = 6041 + 6042 + 6043 +== **Возвращение списка маршрутов** == 6044 + 6045 +(% class="box infomessage" %) 6046 +((( 6047 +**GET /api/v3/TransportRoutes** 6048 +))) 6049 + 6050 +Пример запроса: 6051 +Id ~/~/ Идентификатор поля 6052 + 6053 + 6054 +Пример ответа: 6055 + 6056 +((( 6057 +[ 6058 + { 6059 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 6060 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6061 + "name": "string", ~/~/ Наименование маршрута. 6062 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6063 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6064 + 0 6065 + ] 6066 + } 6067 +] 6068 +))) 6069 + 6070 + 6071 + 6072 +== **Добавить маршрут** == 6073 + 6074 +(% class="box infomessage" %) 6075 +((( 6076 +**POST /api/v3/TransportRoutes** 6077 +))) 6078 + 6079 +Пример запроса: 6080 +{ 6081 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6082 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6083 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6084 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6085 + 0 6086 + ] 6087 +} 6088 + 6089 + 6090 +Пример ответа: 6091 + 6092 +((( 6093 +{ 6094 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6095 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6096 + "name": "string", ~/~/ Определяет наименование маршрута 6097 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6098 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6099 + 0 6100 + ] 6101 +} 6102 +))) 6103 + 6104 + 6105 +== **Обновление маршрута** == 6106 + 6107 +(% class="box successmessage" %) 6108 +((( 6109 +**PUT /api/v3/TransportRoutes** 6110 +))) 6111 + 6112 +Пример запроса: 6113 + 6114 +((( 6115 +{ 6116 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6117 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6118 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6119 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6120 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6121 + 0 6122 + ] 6123 +} 6124 +))) 6125 + 6126 + 6127 +Пример ответа: 6128 + 6129 +((( 6130 +{ 6131 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6132 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6133 + "name": "string", ~/~/ Определяет наименование маршрута 6134 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6135 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6136 + 0 6137 + ] 6138 +} 6139 +))) 6140 + 6141 + 6142 +== **Получить связки маршрутов ТС** == 6143 + 6144 +(% class="box infomessage" %) 6145 +((( 6146 +**POST /api/v3/TransportRoutes/getroutesvehicles** 6147 +))) 6148 + 6149 +Пример запроса: 6150 + 6151 +((( 6152 +[ 6153 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ идентификатор маршрута 6154 +] 6155 +))) 6156 + 6157 + 6158 +Пример ответа: 6159 + 6160 +((( 6161 +[ 6162 + { 6163 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС 6164 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута 6165 + } 6166 +] 6167 +))) 6168 + 6169 + 6170 +== **Удалить маршрут** == 6171 + 6172 +(% class="box warningmessage" %) 6173 +((( 6174 +**DELETE /api/v3/TransportRoutes/{id}** 6175 +))) 6176 + 6177 +Пример запроса: 6178 +Id ~/~/ Идентификатор поля 6179 + 6180 + 6181 +==== ==== 6182 + 6183 += **Раздел: Управление доступа к машинам** = 6184 + 6185 + 6186 +== Получение списка транспортных средств видимых пользователю == 6187 + 6188 +(% class="box infomessage" %) 6189 +((( 6190 +**GET /api/v3/UserVisibleVehicles/{userId}** 6191 +))) 6192 + 6193 +Пример ответа: 6194 + 6195 +((( 6196 +{ 6197 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6198 + 0 6199 + ] 6200 +} 6201 +))) 6202 + 6203 + 6204 + 6205 +== Задает видимость транспортных средств пользователю == 6206 + 6207 +(% class="box infomessage" %) 6208 +((( 6209 +**POST /api/v3/UserVisibleVehicles** 6210 +))) 6211 + 6212 +Пример запроса: 6213 + 6214 +((( 6215 +((( 6216 +{ 6217 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя 6218 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6219 + 0 6220 + ] 6221 +} 6222 +))) 6223 + 6224 +((( 6225 + 6226 +))) 6227 + 6228 +((( 6229 + 6230 +))) 6231 + 6232 +((( 6233 +Пример ответа : 6234 +))) 6235 + 6236 +((( 6237 + 6238 +))) 6239 + 6240 +((( 6241 +200 ~/~/ Success 6242 +))) 6243 +))) 6244 + 6245 + 6246 + 6247 + 6248 + 6249 + 1615 1615 (% class="box" lang="en-US" style="text-align: center;" %) 1616 1616 ((( 1617 1617 (% 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]] **
- image-20231020124453-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.krainovim - Size
-
... ... @@ -1,0 +1,1 @@ 1 +268.0 KB - Content