<
From version < 213.1 >
edited by Андрей Калиновский
on 2025/03/19 13:51
To version < 265.1 >
edited by Андрей Калиновский
on 2025/10/23 09:55
>
Change comment: There is no comment for this version

Summary

Details

Icon Page properties
Content
... ... @@ -13,12 +13,10 @@
13 13  
14 14  (% class="box infomessage" %)
15 15  (((
16 -**Чтобы избежать блокировки** из-за превышения количества авторизаций, вам необходимо использовать токен авторизации, полученный с помощью метода /auth/login, во всех последующих запросах к API. Этот токен имеет ограниченный срок действия, который можно изменить, настроив параметр "Длительность сессии" в пользовательских настройках.
16 +**Чтобы избежать блокировки** из-за превышения количества авторизаций, вам необходимо использовать токен авторизации, полученный с помощью метода /auth/login, во всех последующих запросах к API. Этот токен имеет ограниченный срок действия, который можно изменить, настроив параметр "Длительность сессии" в настройках пользователя.
17 +\\При выполнении запросов с одним и тем же токеном его срок действия автоматически продлевается. Это позволяет пройти авторизацию только один раз и использовать полученный токен во всех последующих запросах без необходимости повторного входа в систему.
17 17  )))
18 18  
19 -При выполнении запросов с одним и тем же токеном его срок действия автоматически продлевается. Это позволяет пройти авторизацию только один раз и использовать полученный токен во всех последующих запросах без необходимости повторного входа в систему.
20 -
21 -
22 22  **Содержание страницы:**
23 23  )))
24 24  
... ... @@ -125,29 +125,41 @@
125 125  Запрос должен содержать данные параметра "**agentId**"
126 126  
127 127  (% style="color:#000000" %)Ответ:
126 +
127 +(((
128 128  {
129 - "agentId": "",  (%%)
130 - "parentId": "",
131 - "parentName": "string",
132 - "name": "string",
133 - "fullName": "string",
134 - "agentInfoType": 0,
135 - "isForeign": true/false,
136 - "district": "string", 
137 - "region": "string",
138 - "city": "string",
139 - "inn": "string",
140 - "kpp": "string",
141 - "address": "string",
142 - "addressFact": "string",
143 - "email": "string",
144 - "director": "string",
145 - "bankName": "string",
146 - "bankBIK": "string",
147 - "bankRS": "string",
148 - "bankKS": "string"
149 - }
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 +)))
150 150  
160 +
151 151  |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
152 152  |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 
153 153  |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя
... ... @@ -192,7 +192,7 @@
192 192  (% style="color:#000000" %)Параметр запроса:
193 193  
194 194  (% style="color:#000000" %){
195 - "parentId": "string"
205 + "parentId": "(%%)string(% style="color:#000000" %)" ~/~/ для получение собственного parentId отправьте пустой запрос (пример "parentId": "" ) 
196 196  }
197 197  
198 198  (% style="color:#000000" %)Ответ:
... ... @@ -277,28 +277,6 @@
277 277   "bankKS": "string" ~/~/ корр. счёт
278 278  }
279 279  
280 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
281 -|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 
282 -|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя
283 -|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя
284 -|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента
285 -|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента
286 -|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор)
287 -|(% style="width:215px" %)isForeign|(% style="width:861px" %)Иностранный контрагент
288 -|(% style="width:215px" %)district|(% style="width:861px" %)Округ
289 -|(% style="width:215px" %)region|(% style="width:861px" %)Регион
290 -|(% style="width:215px" %)city|(% style="width:861px" %)Город
291 -|(% style="width:215px" %)inn|(% style="width:861px" %)ИНН клиента
292 -|(% style="width:215px" %)kpp|(% style="width:861px" %)КПП клиента
293 -|(% style="width:215px" %)address|(% style="width:861px" %)Юридический адрес
294 -|(% style="width:215px" %)addressFact|(% style="width:861px" %)Фактический адрес
295 -|(% style="width:215px" %)email|(% style="width:861px" %)Электронная почта
296 -|(% style="width:215px" %)director|(% style="width:861px" %)ФИО руководителя
297 -|(% style="width:215px" %)bankName|(% style="width:861px" %)Банк
298 -|(% style="width:215px" %)bankBIK|(% style="width:861px" %)БИК
299 -|(% style="width:215px" %)bankRS|(% style="width:861px" %)Номер счета
300 -|(% style="width:215px" %)bankKS|(% style="width:861px" %)Корр. счет
301 -
302 302  == (% style="color:#000000; font-size:16px" %)**Редактирование клиента**(%%) ==
303 303  
304 304  (% class="box warningmessage" %)
... ... @@ -444,7 +444,7 @@
444 444   [
445 445   "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ группы пользователя, перечисление названия клиентских ролей
446 446   ],
447 - "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский
435 + "language": 1 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский
448 448  }
449 449  {
450 450   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
... ... @@ -756,6 +756,11 @@
756 756  (% style="text-align:left" %)
757 757  (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».**
758 758  
747 +(% class="wikigeneratedid" id="H" %)
748 +(((
749 +
750 +)))
751 +
759 759  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Модель объекта**(%%) =
760 760  
761 761  == (% style="color:#000000; font-size:16px" %)**Получение информации о модели объекта**(%%) ==
... ... @@ -867,7 +867,7 @@
867 867  {
868 868   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
869 869   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
870 - "deleted": true,
863 + "deleted": false,
871 871   "extId": "string",
872 872   "name": "string",
873 873   "picture": "string",
... ... @@ -886,7 +886,7 @@
886 886  {
887 887   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
888 888   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
889 - "deleted": true,
882 + "deleted": false,
890 890   "extId": "string",
891 891   "name": "string",
892 892   "picture": "string",
... ... @@ -920,7 +920,7 @@
920 920  (% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models**
921 921  )))
922 922  
923 -(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе.
916 +(% style="color:#000000" %)Метод позволяет изменить статус модели, указанного в запросе.
924 924  
925 925  (% style="color:#000000" %)Метод запроса: **PUT**
926 926  
... ... @@ -987,7 +987,7 @@
987 987  (% lang="en-US" %)**DELETE /api/v3/models/{Id}**
988 988  )))
989 989  
990 -(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалить пользователя, указанного в строке запроса.
983 +(% style="color:#000000" %)Метод позволяет удалить модели. Метод позволяет удалить модель, указанного в строке запроса.
991 991  
992 992  (% style="color:#000000" %)Метод запроса: **DELETE**
993 993  
... ... @@ -1064,6 +1064,12 @@
1064 1064   "forTooltip": true, ~/~/ Отображать в подсказке
1065 1065   "forReport": true ~/~/ Отображать в отчете
1066 1066   }
1060 + ],
1061 + "vehicleGroups": [  ~/~/ Группы ТС
1062 + {
1063 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности
1064 + "name": "string" ~/~/ Наименование группы ТС
1065 + }
1067 1067  
1068 1068  ], ~/~/ Данные с вкладки нормы
1069 1069   "consumptionPer100Km": "" , ~/~/ Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено)
... ... @@ -1114,7 +1114,7 @@
1114 1114   "type": 0, ~/~/ Тип датчика
1115 1115   "name": "string", ~/~/ Имя датчика
1116 1116   "inputType": 0, ~/~/ Тип входа, Analog, Digital, Impulse, ImpulseFrequency, Diagnosis, Rs485, Rs232, Wire, FMS, BLE
1117 - "inputNumber": 0, ~/~/ Номер входа
1116 + "parameterName": "string", ~/~/ Имя параметра (взамен связки Input type + port number)
1118 1118   "pseudonym": "string", ~/~/ Псевдоним
1119 1119   "medianDegree": 0, ~/~/ Медианная фильтрация
1120 1120   "isInverted": true, ~/~/ Инвертировать, true - Вкл., false - Выкл.
... ... @@ -1147,27 +1147,31 @@
1147 1147   "additionalProp3": "string"
1148 1148   },
1149 1149  
1150 -~/~/ Характерные для произвольного:
1151 -~/~/  "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off
1152 -~/~/  "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы
1153 -~/~/  "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off
1154 -~/~/  "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний
1155 -~/~/  "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off
1156 -~/~/  "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off
1157 -~/~/  "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off
1158 -~/~/  "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область)
1159 -~/~/ Характерные для таблицы тарировки Вкл./Выкл.:
1160 -~/~/ "ValueOn": "Вкл.",
1161 -~/~/ "ValueOff": "Выкл."
1162 - "summaryMaxValue": 0 ~/~/ Макс. значение
1163 - }
1149 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления.
1150 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге
1151 + {
1152 + "from": 0, ~/~/ С какого значения
1153 + "color": "string", ~/~/ Каким цветом
1154 + "text": "string" ~/~/ Текст подписи к этому интервалу
1155 + }
1156 + ],
1157 + "disableEmissionsValidation": true, ~/~/ Нужно ли валидировать выбросы значений. Применяется для датчиков с типом "Накопительный"
1158 + "unitOfMeasure": 0 ~/~/ Единица измерения значений датчика. (0 - по умолчанию, 1 - секунды, 2 - часы)
1159 + } 
1160 + ],
1164 1164   "drivers": [ ~/~/ Водители
1165 1165   {
1166 1166   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1167 1167   "name": "string", ~/~/ Наименование
1168 - "description": "string",
1169 - "isDefault": true ~/~/ По умолчанию
1165 + "description": "string", ~/~/ Описание
1166 + "assignments": [  ~/~/ Информация по назначениям
1167 + {
1168 + "beginTime": "2025-10-21T12:28:41.021Z", ~/~/Момент времени начала назначения.
1169 + "endTime": "2025-10-21T12:28:41.021Z", ~/~/ Момент времени окончания назначения.
1170 + "createTime": "2025-10-21T12:28:41.021Z" ~/~/ Момент времени создания назначения.
1170 1170   }
1172 + ]
1173 + }
1171 1171   ],
1172 1172   "inspectionTasks": [ ~/~/ Задания на тех. обслуживание
1173 1173   {
... ... @@ -1618,77 +1618,6 @@
1618 1618  - при задании сезонной нормы обязательны соответствующие даты начала/окончания.
1619 1619  
1620 1620  
1621 -== **Импортировать историю ТС (Асинхронный запрос)** ==
1622 -
1623 -(% class="box successmessage" %)
1624 -(((
1625 -**POST /api/v3/Vehicles/importAsync/history/{vehicleId} **
1626 -)))
1627 -
1628 -Метод запроса: **POST**
1629 -
1630 -URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} **
1631 -
1632 -Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства
1633 -
1634 -
1635 -Ответ:
1636 -
1637 -{
1638 -
1639 - "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
1640 -
1641 - "Status": 0, ~/~/ Перечисление состояний выполнения запроса
1642 -
1643 -~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest)
1644 -
1645 - "Message": "string", ~/~/ Информация о выполнении запроса
1646 -
1647 - "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None)
1648 -
1649 - "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
1650 -
1651 - "Data": "string" ~/~/ Данные
1652 -
1653 -}
1654 -
1655 -
1656 -== **Возвращает статус асинхронного запроса импорта истории ТС** ==
1657 -
1658 -(% class="box infomessage" %)
1659 -(((
1660 -**GET /api/v3/Vehicles/importAsync/history/state/{requestId}**
1661 -)))
1662 -
1663 -Метод запроса: **GET**
1664 -
1665 -URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}**
1666 -
1667 -Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса
1668 -
1669 -
1670 -Ответ:
1671 -
1672 -{
1673 -
1674 - "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
1675 -
1676 - "Status": 0, ~/~/ Перечисление состояний выполения запроса
1677 -~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest
1678 -
1679 - "Message": "string", ~/~/ Информация о выполнении запроса
1680 -
1681 - "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса
1682 -
1683 -~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None
1684 -
1685 - "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
1686 -
1687 - "Data": "string" ~/~/ Данные
1688 -
1689 -}
1690 -
1691 -
1692 1692  == (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) ==
1693 1693  
1694 1694  (% class="box infomessage" %)
... ... @@ -1834,7 +1834,6 @@
1834 1834   "stage": "", ~/~/ Состояние
1835 1835  (% style="color:#000000" %) }
1836 1836  
1837 -== ==
1838 1838  
1839 1839  == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) ==
1840 1840  
... ... @@ -2451,7 +2451,7 @@
2451 2451  Тело запроса:
2452 2452  
2453 2453  {
2454 - "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой.
2385 + "sampling": 86400, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой.
2455 2455   "vehicleIds": [0], ~/~/ Список ID объектов
2456 2456   "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода
2457 2457   "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода
... ... @@ -2498,7 +2498,6 @@
2498 2498  Тело запроса:
2499 2499  
2500 2500  {
2501 - "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой.
2502 2502   "vehicleIds": [0], ~/~/ Список ID объектов
2503 2503   "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода
2504 2504   "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода
... ... @@ -2517,8 +2517,12 @@
2517 2517   "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 
2518 2518   "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода
2519 2519   "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода
2450 + "fuelTankLevelStart": 0, ~/~/ Уровень топлива в цистерне на начало периода
2451 + "fuelTankLevelEnd": 0, ~/~/ Уровень топлива в цистерне на конец периода
2520 2520   "fuelConsumption": 0, ~/~/ Расход топлива
2521 2521   "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении
2454 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне
2455 +
2522 2522   }
2523 2523   ]
2524 2524   }
... ... @@ -2527,7 +2527,6 @@
2527 2527  (% class="box warningmessage" %)
2528 2528  (((
2529 2529  Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"".
2530 -\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling".
2531 2531  )))
2532 2532  
2533 2533  == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) ==
... ... @@ -2564,12 +2564,21 @@
2564 2564   "model": "string", ~/~/ Модель объекта
2565 2565   "fuels": [ ~/~/ Массив данным по заправкам и сливам
2566 2566   {
2567 - "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив
2500 + "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
2501 +
2502 +(((
2568 2568   "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало
2569 2569   "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание
2570 2570   "valueFuel": 0, ~/~/ Количество
2571 2571   "fuelStart": 0, ~/~/ Уровень топлива на начало события
2572 2572   "fuelEnd": 0 ~/~/ Уровень топливо на конец события
2508 +)))
2509 +
2510 +(((
2511 + "latitude": 0, ~/~/ Широта.
2512 + "longitude": 0 ~/~/ Долгота.
2513 +)))
2514 +
2573 2573   }
2574 2574   ]
2575 2575   }
... ... @@ -2643,194 +2643,241 @@
2643 2643  В заголовках запроса: X-Auth: Токен авторизации
2644 2644  
2645 2645  
2646 теле запроса перечисляете массив id объектов, в квадратных скобках через запятую.
2588 массиве указываем id объектов через запятую
2647 2647  
2648 2648  Ответ:
2591 +
2592 +[
2649 2649   {
2650 - "vehicleId": 0, ~/~/Идентификатор объекта.
2651 - "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификатор объекта.
2652 - "vehicleNumber": "string",~/~/Номер объекта.
2653 - "receiveTime": "2024-02-27T14:11:00.315Z",~/~/Время получения записи на сервере, т.е. время срабатывания + время передачи от устройства на сервер
2654 - "recordTime": "2024-02-27T14:11:00.315Z",~/~/Время записи от устройства, т.е. время фактического события на транспортном средстве.
2655 - "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4.
2656 - "speed": 0,~/~/Скорость объекта.
2657 - "course": 0,~/~/Курс движения [0;360]
2658 - "latitude": 0,~/~/Широта [-90°;90°].
2659 - "longitude": 0,~/~/Долгота [-180°;180°].
2660 - "address": "string",~/~/Адрес.
2661 - "geozones": [ ~/~/Сведения по геозонам.
2594 + "vehicleId": 55728, ~/~/ Идентификатор объекта 
2595 + "vehicleGuid": "fa9c0357-9b9f-44b9-a89c-20a2cb80a9ad", ~/~/ Guid объекта 
2596 + "vehicleNumber": "0105 КМ", ~/~/ Номер объекта 
2597 + "receiveTime": "2025-06-27T12:37:46.7782735Z", ~/~/ Время и дата поступления данных 
2598 + "recordTime": "2025-06-27T12:37:19Z", ~/~/ Время и дата формирование данных 
2599 + "state": 4, ~/~/ Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4.
2600 + "speed": 31, ~/~/ Скорость объекта 
2601 + "course": 116, ~/~/ Курс движения [0;360]
2602 + "latitude": 45.722128, ~/~/ Широта [-90°;90°].
2603 + "longitude": 39.800432, ~/~/ Долгота [-180°;180°].
2604 + "address": "\" Краснодарский край Россия 45,722128°, 39,800432°\"", ~/~/ Адрес 
2605 + "geozones": [ ~/~/ Сведения по геозонам. 
2662 2662   {
2663 - "id": 0,
2664 - "name": "string"
2607 + "id": 10225647, ~/~/ ID Геозоны 
2608 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 
2609 + },
2610 + {
2611 + "id": 10282875, ~/~/ ID Геозоны 
2612 + "name": "Ё2" ~/~/ Наименование геозоны 
2613 + },
2614 + {
2615 + "id": 10226240, ~/~/ ID Геозоны 
2616 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 
2617 + },
2618 + {
2619 + "id": 9747869, ~/~/ ID Геозоны 
2620 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 
2621 + },
2622 + {
2623 + "id": 10221123, ~/~/ ID Геозоны 
2624 + "name": "53r" ~/~/ Наименование геозоны 
2625 + },
2626 + {
2627 + "id": 10197638, ~/~/ ID Геозоны 
2628 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 
2665 2665   }
2630 + ]
2631 + }
2666 2666  
2667 2667  
2668 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) =
2634 += =
2669 2669  
2670 -== (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) ==
2636 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) =
2671 2671  
2638 +== (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) ==
2639 +
2672 2672  (% class="box infomessage" %)
2673 2673  (((
2674 -(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/find**
2642 +**POST /api/v3/notifications/find**
2675 2675  )))
2676 2676  
2677 -(% style="color:#000000" %)Метод позволяет получить список геообъектов клиента. Возвращает массив геообъектов со всей информацией о них.
2645 +Метод возвращает информацию об уведомлениях переданного клиента и его клиентов ниже по иерархии.
2678 2678  
2679 -(% style="color:#000000" %)Метод запроса: **POST**
2647 +(% style="text-align: left;" %)
2648 +Метод запроса **POST**
2680 2680  
2681 -(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/find
2650 +(% style="text-align: left;" %)
2651 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/notifications/find
2682 2682  
2653 +(% style="text-align: left;" %)
2683 2683  (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
2684 2684  
2685 -(% style="text-align:left" %)
2686 -Тело запроса:
2687 -
2688 -(% style="text-align:left" %)
2689 2689  {
2690 - "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
2657 + "parentId": "" ~/~/ id клиента
2691 2691  }
2692 2692  
2693 -(% style="text-align:left" %)
2694 2694  Ответ:
2695 2695  
2696 2696  [
2697 2697   {
2698 - "id": 0, ~/~/ Идентификатор объекта геозоны
2699 - "name": "string", ~/~/ Название объекта геозоны
2700 - "type": 0, ~/~/ Тип объекта геозоны
2701 - "fname": "string", ~/~/ Имя файла
2702 - "parentId": "string", ~/~/ Идентификатор клиента
2703 - "radius": 0, ~/~/ Радиус геообъекта
2704 - "beginCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата начала расчета
2705 - "endCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата окончания расчета
2706 - "description": "string", ~/~/ Описание
2707 - "area": 0, ~/~/ Площадь, м^^2^^
2708 - "perimetr": 0, ~/~/ Периметр, м
2709 - "createDate": "2023-08-01T07:54:54.893Z", ~/~/ Дата создания
2664 + "id": 0, ~/~/ ID уведомления
2665 + "name": "string", ~/~/ Название уведомления
2666 + "active": true, ~/~/ Состояние true - активен, false - деактивирован
2667 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя) 
2668 + "userId": "", ~/~/ Пользователь, создавший уведомление
2669 + "parentId": "", ~/~/ Идентификатор клиента
2670 + "parentName": "string" ~/~/ Имя клиента
2710 2710   }
2711 2711  ]
2712 2712  
2713 -== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по объектам**(%%) ==
2714 2714  
2675 +== (% style="color:#000000; font-size:16px" %)**Создание уведомления**(%%) ==
2676 +
2715 2715  (% class="box infomessage" %)
2716 2716  (((
2717 -(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/vehicles**
2679 +**POST /api/v3/notifications**
2718 2718  )))
2719 2719  
2720 -(% style="color:#000000" %)Метод позволяет получить список пересечений выбранных объектов со всеми геообъектами за выбранный период.
2682 +Метод запроса **POST**
2721 2721  
2722 -(% style="color:#000000" %)Метод запроса: **POST**
2684 +(% style="text-align: left;" %)
2685 +(% style="color:#000000" %)Пример запроса
2723 2723  
2724 -(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/vehicles
2725 -
2726 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
2727 -
2728 -(% style="text-align:left" %)
2729 -Тело запроса:
2730 -
2687 +(((
2731 2731  {
2732 - "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса
2733 - "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания
2734 - "ids": [ ], ~/~/ Массив id объектов
2735 - "byTime": 0, ~/~/ Объединение событий по времени 
2736 - "byDist": 0, ~/~/ Объединение событий по расстоянию
2737 - "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения
2738 - "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра
2689 + "id": 0, ~/~/ ID правила
2690 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя
2691 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило
2692 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
2693 + "name": "string", ~/~/ Имя правила
2694 + "active": true, ~/~/ Активность правила
2695 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто
2696 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа.
2697 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 
2698 + ],
2699 + "vehicleIds": [ ~/~/ Список объектов для анализа.
2700 + 0
2701 + ],
2702 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам.
2703 + 0
2704 + ],
2705 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам.
2706 + 0
2707 + ],
2708 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений.
2709 + "additionalProp1": "string",  
2710 + "additionalProp2": "string",
2711 + "additionalProp3": "string"
2712 + },
2713 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы"
2714 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила
2715 + "3fa85f64-5717-4562-b3fc-2c963f66afa6"
2716 + ],
2717 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям"
2718 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений
2719 + "string"
2720 + ],
2721 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram
2722 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram.
2723 + {
2724 + "id": 0, ~/~/ Идентификатор участника чата.
2725 + "info": "string" ~/~/ Дополнительные сведения.
2726 + }
2727 + ],
2728 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение
2729 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы
2730 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений.
2731 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 
2732 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени)
2733 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC)
2734 + "timezone": 0, ~/~/ часовой пояс 
2735 + "validity": 0, ~/~/ Срок действия в днях (1-90).
2736 + "autoProlongation": true, ~/~/ Автопродление срока действия.
2737 + "templates": [ ~/~/  Переопределения шаблонов уведомлений.
2738 + {
2739 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек
2740 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа.
2741 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка.
2742 + "additionalProp1": "string",
2743 + "additionalProp2": "string",
2744 + "additionalProp3": "string"
2745 + }
2746 + }
2747 + ]
2739 2739  }
2749 +)))
2740 2740  
2741 -Ответ:
2742 -[
2743 - {
2744 - "geozoneId": 0, ~/~/ ID геообъекта
2745 - "geozoneName": "string", ~/~/ Название геообъекта
2746 - "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда
2747 - "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда
2748 - "duration": 0, ~/~/ Продолжительность нахождения в геообъекте
2749 - "vehicleId": 0, ~/~/ ID объекта
2750 - "vehicleName": "string" ~/~/ Имя объекта
2751 - }
2752 -]
2753 -
2754 -== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по геообъектам**(%%) ==
2755 -
2756 -(% class="box infomessage" %)
2757 2757  (((
2758 -(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/geozones**
2752 +
2759 2759  )))
2760 2760  
2761 -(% style="color:#000000" %)Метод позволяет получить список пересечений выбранных геообъектов со всеми объектами за выбранный период.
2762 -
2763 -(% style="color:#000000" %)Метод запроса: **POST**
2764 -
2765 -(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/geozones
2766 -
2767 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
2768 -
2769 -(% style="text-align:left" %)
2770 -Тело запроса:
2771 -
2772 -{
2773 - "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса
2774 - "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания
2775 - "ids": [ ], ~/~/ Массив id геообъектов
2776 - "byTime": 0, ~/~/ Объединение событий по времени 
2777 - "byDist": 0, ~/~/ Объединение событий по расстоянию
2778 - "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения
2779 - "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра
2780 -}
2781 -
2782 -Ответ:
2783 -
2784 -[
2785 - {
2786 - "geozoneId": 0, ~/~/ ID геообъекта
2787 - "geozoneName": "string", ~/~/ Название геообъекта
2788 - "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда
2789 - "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда
2790 - "duration": 0, ~/~/ Продолжительность нахождения в геообъекте
2791 - "vehicleId": 0, ~/~/ ID объекта
2792 - "vehicleName": "string" ~/~/ Имя объекта
2793 - }
2794 -]
2795 -
2796 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) =
2797 -
2798 -== (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) ==
2799 -
2800 -(% class="box infomessage" %)
2801 2801  (((
2802 -**POST /api/v3/notifications/find**
2756 +
2803 2803  )))
2804 2804  
2805 -Метод возвращает информацию об уведомлениях переданного клиента и его клиентов ниже по иерархии.
2759 +Ответ:
2806 2806  
2807 -(% style="text-align: left;" %)
2808 -Метод запроса **POST**
2809 -
2810 -(% style="text-align: left;" %)
2811 -(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/notifications/find
2812 -
2813 -(% style="text-align: left;" %)
2814 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
2815 -
2816 2816  {
2817 - "parentId": "" ~/~/ id клиента
2762 + "id": 0, ~/~/ ID правила
2763 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя
2764 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило
2765 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
2766 + "name": "string", ~/~/ Имя правила
2767 + "active": true, ~/~/ Активность правила
2768 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто
2769 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа.
2770 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 
2771 + ],
2772 + "vehicleIds": [ ~/~/ Список объектов для анализа.
2773 + 0
2774 + ],
2775 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам.
2776 + 0
2777 + ],
2778 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам.
2779 + 0
2780 + ],
2781 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений.
2782 + "additionalProp1": "string",  
2783 + "additionalProp2": "string",
2784 + "additionalProp3": "string"
2785 + },
2786 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы"
2787 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила
2788 + "3fa85f64-5717-4562-b3fc-2c963f66afa6"
2789 + ],
2790 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям"
2791 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений
2792 + "string"
2793 + ],
2794 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram
2795 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram.
2796 + {
2797 + "id": 0, ~/~/ Идентификатор участника чата.
2798 + "info": "string" ~/~/ Дополнительные сведения.
2799 + }
2800 + ],
2801 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение
2802 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы
2803 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений.
2804 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 
2805 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени)
2806 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC)
2807 + "timezone": 0, ~/~/ часовой пояс 
2808 + "validity": 0, ~/~/ Срок действия в днях (1-90).
2809 + "autoProlongation": true, ~/~/ Автопродление срока действия.
2810 + "templates": [ ~/~/  Переопределения шаблонов уведомлений.
2811 + {
2812 + "type": 0, ~/~/ 0 - Нет, 1 - Превышение скорости, 2 - Вход в геозону, 3 - выход из геозоны, 4 - Паническая активация, 5 - Дискретный датчик, 6 - Отключение дискретного датчика, 7 - Работа аналогового датчика, 8 - Отсутствуют данные, 9 - Отсутствуют координаты, 10 - Бездействие, 11 - Адрес объекта, 12 - Заканчивается топливо, 13 - Заправка, 14 - Превышение скорости, 15 - Превышение скорости, 16 - Превышение нормы, 17 - Возврат к бездействию, 18 - Адрес объекта, 19 - Отсутствуют данные, 20 - отсутствуют координаты, 21 - Запланировано техническое обслуживание автомобиля, 22 - Требуется техническое обслуживание автомобиля, 23 - Техническое обслуживание автомобиля завершено, 24 - Открыто назначение водителя, 25 - Закрыто назначение водителя, 255 - Срок действия правила истек
2813 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа.
2814 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка.
2815 + "additionalProp1": "string",
2816 + "additionalProp2": "string",
2817 + "additionalProp3": "string"
2818 + }
2819 + }
2820 + ]
2818 2818  }
2819 2819  
2820 -Ответ:
2821 -
2822 -[
2823 - {
2824 - "id": 0, ~/~/ ID уведомления
2825 - "name": "string", ~/~/ Название уведомления
2826 - "active": true, ~/~/ Состояние true - активен, false - деактивирован
2827 - "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО
2828 - "userId": "", ~/~/ Пользователь, создавший уведомление
2829 - "parentId": "", ~/~/ Идентификатор клиента
2830 - "parentName": "string" ~/~/ Имя клиента
2831 - }
2832 -]
2833 -
2834 2834  == (% style="color:#000000; font-size:16px" %)**Запрос настроек уведомления**(%%) ==
2835 2835  
2836 2836  (% class="box infomessage" %)
... ... @@ -4048,16 +4048,12 @@
4048 4048  Тело запроса:
4049 4049  
4050 4050  {
4051 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
4052 - "Balance": 0
4040 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4041 + "Balance": 0 ~/~/ Значение баланса.
4053 4053  }
4054 4054  
4055 4055  Ответ: Success
4056 4056  
4057 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4058 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
4059 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса
4060 -
4061 4061  == (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) ==
4062 4062  
4063 4063  (% class="box warningmessage" %)
... ... @@ -4069,16 +4069,29 @@
4069 4069  
4070 4070  Тело запроса:
4071 4071  
4057 +(((
4072 4072  {
4073 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
4074 - "Balance": 0
4059 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4060 + "amount": 0 ~/~/ Сумма пополнения баланса 
4075 4075  }
4062 +)))
4076 4076  
4064 +(((
4065 +
4066 +)))
4067 +
4077 4077  Ответ: Success
4078 4078  
4079 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4080 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
4081 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса
4070 +(((
4071 +{
4072 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки.
4073 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4074 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя.
4075 + "Moment": "2025-06-10T12:15:19.076Z", ~/~/ Время корректировки.
4076 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс.
4077 + "Description": "string" ~/~/ Описание корректировки.
4078 +}
4079 +)))
4082 4082  
4083 4083  == (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) ==
4084 4084  
... ... @@ -4091,16 +4091,25 @@
4091 4091  
4092 4092  Тело запроса:
4093 4093  
4092 +(((
4094 4094  {
4095 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
4096 - "Balance": 0
4094 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4095 + "amount": 0 ~/~/ Сумма списания с баланса
4097 4097  }
4097 +)))
4098 4098  
4099 4099  Ответ: Success
4100 4100  
4101 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4102 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
4103 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса
4101 +(((
4102 +{
4103 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки.
4104 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4105 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя.
4106 + "Moment": "2025-06-10T12:21:05.149Z", ~/~/ Время корректировки.
4107 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс.
4108 + "Description": "string" ~/~/ Описание корректировки
4109 +}
4110 +)))
4104 4104  
4105 4105  == (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) ==
4106 4106  
... ... @@ -4111,28 +4111,35 @@
4111 4111  
4112 4112  Тело запроса:
4113 4113  
4121 +(((
4114 4114  {
4115 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
4116 - "CalculationType": 0,
4117 - "PermissibleBalance": 0,
4118 - "DefermentDays": 0,
4119 - "SendUiNotifications": true,
4120 - "SendEmailNotifications": true,
4121 - "IsPrivate": true,
4123 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4124 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни
4125 + "PermissibleBalance": 0, ~/~/ Допустимый баланс
4126 + "DefermentDays": 0, ~/~/ Отсрочка (дни).
4127 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено
4128 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено
4122 4122  }
4130 +)))
4123 4123  
4132 +(((
4133 +
4134 +)))
4135 +
4124 4124  Ответ: Success
4125 4125  
4126 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4127 -|ClientId|Идентификатор клиента
4128 -|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни
4129 -|PermissibleBalance|Допустимый баланс
4130 -|DefermentDays|(((
4131 -Отсрочка, количество дней
4138 +(((
4139 +{
4140 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом
4141 + "BlockingTime": "2025-06-10T12:23:28.754Z", ~/~/ Время, когда заблокируется клиент.
4142 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4143 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни
4144 + "PermissibleBalance": 0, ~/~/ Допустимый баланс.
4145 + "DefermentDays": 0, ~/~/ Отсрочка (дни)
4146 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено
4147 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено
4148 +}
4132 4132  )))
4133 -|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено
4134 -|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено
4135 -|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом
4136 4136  
4137 4137  == (% style="color:#000000; font-size:16px" %)**Изменить тариф клиента**(%%) ==
4138 4138  
... ... @@ -4144,35 +4144,68 @@
4144 4144  Тело запроса:
4145 4145  
4146 4146  {
4147 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
4148 - "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
4149 - "Features": [
4161 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор клиента.
4162 + "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана.
4163 + "Features": [ ~/~/ Набор услуг по тарифу клиента.
4150 4150   {
4151 - "Feature": "string",
4152 - "IsEnabled": true,
4153 - "IsFactual": true,
4154 - "Limit": 0,
4155 - "Price": 0,
4156 - "DebitDate": "2023-10-18T13:26:58.987Z",
4157 - "PeriodValue": 0,
4158 - "PeriodType": 0
4165 + "Feature": "string", ~/~/ Код услуги.
4166 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга.
4167 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту.
4168 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование
4169 + "Price": 0, ~/~/ Цена за единицу.
4170 + "DebitDate": "2023-10-18T13:26:58.987Z", ~/~/ Следующий момент времени списания с баланса за услугу.
4171 + "PeriodValue": 0, ~/~/ Значение периода.
4172 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане ( 0 - Дни, 1 - Месяцы)
4159 4159   }
4160 4160   ]
4161 4161  }
4162 4162  
4177 +
4163 4163  Ответ: Success
4164 4164  
4165 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4166 -|ClientId|Идентификатор клиента
4167 -|PlanId|Идентификатор тарифного плана
4168 -|Feature|Код услуги
4169 -|IsEnabled|Признак, определяющий активирована ли услуга
4170 -|IsFactual|Признак, определяющий расчёт по факту
4171 -|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
4172 -|Price|Цена за единицу.
4173 -|DebitDate|Следующий момент времени списания с баланса за услугу.
4174 -|PeriodValue|Значение периода.
4175 -|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы
4180 +(((
4181 +{
4182 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
4183 + "Plan": { ~/~/ Определяет тарифный план (шаблон услуг)
4184 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана.
4185 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента-владельца.
4186 + "Name": "string", ~/~/ Наименование.
4187 + "IsArchived": true, ~/~/ Признак, определяющий архивный тарифный план.
4188 + "Constraint": { ~/~/ Ограничения по тарифу 
4189 + "CalculationType": 0, ~/~/ Определяет тип расчёта (0 - деньги, 1 - дни) 
4190 + "PermissibleBalance": 0, ~/~/ Допустимый баланс.
4191 + "DefermentDays": 0 ~/~/ Отсрочка (дни)
4192 + },
4193 + "Features": [ ~/~/ Набор услуг по тарифному плану.
4194 + {
4195 + "Feature": "string", ~/~/Код услуги.
4196 + "IsFactual": true, ~/~/ Признак, определяющий возможность расчёта по факту.
4197 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
4198 + "Price": 0, ~/~/ Цена за единицу.
4199 + "PeriodValue": 0, ~/~/ Значение периода.
4200 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане. (0 - деньги, 1 - дни) 
4201 + }
4202 + ],
4203 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя, создавшего тарифный план.
4204 + "Created": "2025-06-10T12:29:32.969Z", ~/~/ Дата создания тарифного плана.
4205 + "Deactivated": "2025-06-10T12:29:32.969Z" ~/~/ Дата деактивации тарифного плана.
4206 + },
4207 + "Features": [ ~/~/ Набор услуг по тарифу клиента.
4208 + {
4209 + "Feature": "string", ~/~/ Код услуги.
4210 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга.
4211 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры по услуге тарифа частными т.е. персональными для клиента, либо определяются тарифным планом.
4212 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту.
4213 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
4214 + "Price": 0, ~/~/ Цена за единицу.
4215 + "DebitDate": "2025-06-10T12:29:32.969Z", ~/~/ Следующий момент времени списания с баланса за услугу.
4216 + "PeriodValue": 0, ~/~/ Значение периода.
4217 + "PeriodType": 0, ~/~/ Определяет тип периода действия услуги в тарифном плане.
4218 + "Quantity": 0 ~/~/ Количество использования услуги.
4219 + }
4220 + ]
4221 +}
4222 +)))
4176 4176  
4177 4177  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) =
4178 4178  
... ... @@ -4277,6 +4277,43 @@
4277 4277  |producedCount|Кол-во успешно отправленных в шину данных сообщений
4278 4278  |msgCount|Кол-во обработанных сообщений всего
4279 4279  
4327 +== **Импортировать историю ТС (Асинхронный запрос)** ==
4328 +
4329 +(% class="box successmessage" %)
4330 +(((
4331 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} **
4332 +)))
4333 +
4334 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос.
4335 +
4336 +Метод запроса: **POST**
4337 +
4338 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} **
4339 +
4340 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства
4341 +
4342 +
4343 +Ответ:
4344 +
4345 +{
4346 +
4347 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
4348 +
4349 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса
4350 +
4351 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest)
4352 +
4353 + "Message": "string", ~/~/ Информация о выполнении запроса
4354 +
4355 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None)
4356 +
4357 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
4358 +
4359 + "Data": "string" ~/~/ Данные
4360 +
4361 +}
4362 +
4363 +
4280 4280  == (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) ==
4281 4281  
4282 4282  (% class="box infomessage" %)
... ... @@ -4294,10 +4294,59 @@
4294 4294   "message": "string"
4295 4295  }
4296 4296  
4297 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
4298 -|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет
4299 -|progress|Guid ТС
4381 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)(((
4382 +**Параметр**
4383 +)))|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)(((
4384 +**Описание**
4385 +)))
4386 +|(((
4387 +activity
4388 +)))|(((
4389 +Активен ли экспорт/импорт истории сейчас, true - да, false - нет
4390 +)))
4391 +|(((
4392 +progress
4393 +)))|(((
4394 +Guid ТС
4395 +)))
4300 4300  
4397 +== **Возвращает статус асинхронного запроса импорта истории ТС** ==
4398 +
4399 +(% class="box infomessage" %)
4400 +(((
4401 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}**
4402 +)))
4403 +
4404 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос.
4405 +
4406 +Метод запроса: **GET**
4407 +
4408 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}**
4409 +
4410 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса
4411 +
4412 +
4413 +Ответ:
4414 +
4415 +{
4416 +
4417 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
4418 +
4419 + "Status": 0, ~/~/ Перечисление состояний выполения запроса
4420 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest
4421 +
4422 + "Message": "string", ~/~/ Информация о выполнении запроса
4423 +
4424 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса
4425 +
4426 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None
4427 +
4428 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
4429 +
4430 + "Data": "string" ~/~/ Данные
4431 +
4432 +}
4433 +
4301 4301  == (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) ==
4302 4302  
4303 4303  (% class="box infomessage" %)
... ... @@ -4809,8 +4809,51 @@
4809 4809   }
4810 4810   ]
4811 4811  }
4945 +
4946 +
4947 +== **Превышение скорости** ==
4948 +
4949 +(% class="box infomessage" %)
4950 +(((
4951 +**POST /api/v3/Reports/overSpeedDuration**
4812 4812  )))
4813 4813  
4954 + Публичный API запрос о превышениях скорости по объекту в секундах с выбором способа определения нарушений (дорожное ограничение или фиксированное ограничение).
4955 +
4956 +Пример запроса:
4957 +
4958 +(((
4959 +{
4960 + "vehicleId": 0, ~/~/ идентификационный номер транспортного средства
4961 + "from": "2025-04-21T10:45:25.258Z", ~/~/ Начало периода (локальное время клиента)
4962 + "to": "2025-04-21T10:45:25.258Z", ~/~/ Конец периода (локальное время клиента)
4963 + "timezone": 0, ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK
4964 + "overSpeedDetectionType": 0 ~/~/ тип нарушения (1-дорожное ограничение, 2-фиксированный ) 
4965 +}
4966 +)))
4967 +
4968 +(((
4969 +
4970 +)))
4971 +
4972 +(((
4973 +Пример ответа:
4974 +)))
4975 +
4976 +(((
4977 +(((
4978 +[
4979 + {
4980 + "eventDate": "2025-04-21T10:45:25.267Z", ~/~/  Дата и время события 
4981 + "duration": 0, ~/~/ Продолжительность события в секундах 
4982 + "maxSpeed": 0, ~/~/ Максимальная скорость 
4983 + "speedLimit": 0 ~/~/ Ограничение скорости 
4984 + }
4985 +]
4986 +)))
4987 +)))
4988 +)))
4989 +
4814 4814  = (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) =
4815 4815  
4816 4816  
... ... @@ -5116,33 +5116,9 @@
5116 5116  )))
5117 5117  
5118 5118  
5119 -== **Удаление существующего поля** ==
5120 -
5121 -(% class="box errormessage" %)
5122 5122  (((
5123 -**DELETE /api/v3/agroLands/{id}**
5124 -)))
5125 -
5126 -Пример запроса:
5127 -id  ~/~/ Идентификатор поля
5128 -
5129 -Пример ответа:
5130 -
5131 5131  (((
5132 -200 ~/~/ Успех
5133 -)))
5134 -
5135 5135  (((
5136 -
5137 -)))
5138 -
5139 -(((
5140 -(((
5141 -(((
5142 -
5143 -)))
5144 -
5145 -(((
5146 5146  == **Изменение поля** ==
5147 5147  
5148 5148  (% class="box infomessage" %)
... ... @@ -5388,9 +5388,102 @@
5388 5388   "perimetr": 0, ~/~/ ериметр, м
5389 5389   "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд
5390 5390  }
5543 +
5544 +
5545 +== **Какие поля посещал объект** ==
5546 +
5547 +(% class="box successmessage" %)
5548 +(((
5549 +**POST /api/v3/agroLands/visitingByVehicle**
5391 5391  )))
5392 5392  
5552 +Пример запроса:
5393 5393  
5554 +{
5555 + "vehicleId": 0, ~/~/ id объекта 
5556 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения
5557 + "byTime": 0, ~/~/ Объединение событий по времени
5558 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра
5559 + "byDist": 0, ~/~/ Объединение событий по расстоянию
5560 + "from": "2025-07-29T12:20:28.815Z", ~/~/ Начало периода (локальное время клиента)
5561 + "to": "2025-07-29T12:20:28.815Z", ~/~/ Конец периода (локальное время клиента)
5562 + "timezone": 0 ~/~/ Таймзона клиента, в часах. Если не передана - то считается как +3, MSK
5563 +}
5564 +
5565 +Пример ответа:
5566 +
5567 +[
5568 + {
5569 + "fieldId": 0, ~/~/ id объекта 
5570 + "vehicleName": "string", ~/~/ Наименование объекта 
5571 + "fieldName": "string", ~/~/ Наименование поля 
5572 + "fuelUsage": 0, ~/~/ Расход топлива, л/га
5573 + "area": 0, ~/~/ Пройдено, га (информация из встроенного агрегата в модели объекта при наличии агрегата)
5574 + "vehicleId": 0, ~/~/ Идентификатор ТС
5575 + "start": "2025-07-29T12:20:28.855Z", ~/~/ Начало посещения
5576 + "end": "2025-07-29T12:20:28.855Z", ~/~/ Конец посещения
5577 + "durationSeconds": 0, ~/~/ Продолжительность посещения внутри поля 
5578 + "mileage": 0 ~/~/ Пробег 
5579 + }
5580 +]
5581 +)))
5582 +
5583 +
5584 +== **Посещение поля объектами ** ==
5585 +
5586 +(% class="box successmessage" %)
5587 +(((
5588 +**POST /api/v3/agroLands/visitingByField**
5589 +)))
5590 +
5591 +Пример запроса:
5592 +{
5593 + "fieldId": 0, ~/~/ ID поля
5594 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения
5595 + "byTime": 0, ~/~/ Объединение событий по времени
5596 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра
5597 + "byDist": 0, ~/~/ Объединение событий по расстоянию
5598 + "from": "2025-07-29T11:44:28.218Z", ~/~/ Начало периода (локальное время клиента)
5599 + "to": "2025-07-29T11:44:28.218Z", ~/~/ Конец периода (локальное время клиента)
5600 + "timezone": 0 ~/~/ Таймзона клиента, в часах. Если не передана - то считается как +3, MSK
5601 +}
5602 +
5603 +Пример ответа:
5604 +
5605 +[
5606 + {
5607 + "fieldId": 0, ~/~/ ID поля
5608 + "vehicleName": "string", ~/~/ Наименование объекта 
5609 + "fieldName": "string", ~/~/ Имя поля
5610 + "fuelUsage": 0, ~/~/ Расход топлива, л/га
5611 + "area": 0, ~/~/ Пройдено, га (информация из встроенного агрегата в модели объекта при наличии агрегата)
5612 + "vehicleId": 0, ~/~/ Идентификатор ТС
5613 + "start": "2025-07-29T11:44:28.219Z", ~/~/ Начало посещения
5614 + "end": "2025-07-29T11:44:28.219Z", ~/~/ Конец посещения
5615 + "durationSeconds": 0, ~/~/ Продолжительность посещения внутри поля 
5616 + "mileage": 0 ~/~/ Пробег
5617 + }
5618 +]
5619 +
5620 +
5621 +== **Удаление существующего поля** ==
5622 +
5623 +(% class="box errormessage" %)
5624 +(((
5625 +**DELETE /api/v3/agroLands/{id}**
5626 +)))
5627 +
5628 +Пример запроса:
5629 +id  ~/~/ Идентификатор поля
5630 +
5631 +Пример ответа:
5632 +
5633 +(((
5634 +200 ~/~/ Успех
5635 +
5636 +
5637 +)))
5638 +
5394 5394  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) =
5395 5395  )))
5396 5396  )))
... ... @@ -5815,49 +5815,129 @@
5815 5815  )))
5816 5816  
5817 5817  
6063 += **Раздел: Роли** =
6064 +
6065 +== **Получение списка клиентских и системных ролей пользователя ** ==
6066 +
6067 +(% class="box successmessage" %)
6068 +(((
6069 +**POST /api/v3/groups/find**
6070 +)))
6071 +
6072 +Пример запроса:
6073 +
6074 +(((
6075 +{
6076 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента содержащий пользовательские роли
6077 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей 
6078 +}
6079 +)))
6080 +
6081 +(((
6082 +
6083 +)))
6084 +
6085 +(((
6086 +Пример ответа:
6087 +)))
6088 +
6089 +(((
6090 +(((
6091 +{
6092 + "groups": [  ~/~/ Системные роли пользователя
6093 + {
6094 + "code": "string", ~/~/ Код роли.
6095 + "name": "string", ~/~/ Имя  
6096 + "shortName": "string" ~/~/ Короткое имя 
6097 + }
6098 + ],
6099 + "customGroups": [ ~/~/ Системные роли пользователя
6100 + {
6101 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор роли.
6102 + "name": "string", ~/~/ Наименование 
6103 + "shortName": "string", ~/~/ Короткое наименование 
6104 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор владельца
6105 + }
6106 + ]
6107 +}
6108 +)))
6109 +)))
6110 +
6111 +(((
6112 +
6113 +)))
6114 +
6115 +(((
6116 +
6117 +)))
6118 +
5818 5818  = **Раздел: Локатор ** =
5819 5819  
5820 5820  
5821 -== **Получение списка локаторов, доступных пользователю ** ==
6122 +== **Получение данных по локатору** ==
5822 5822  
5823 5823  (% class="box infomessage" %)
5824 5824  (((
5825 -**GET /api/v3/locators**
6126 +**GET /api/v3/locators/{locatorId}**
5826 5826  )))
5827 5827  
5828 -В заголовках запроса: X-Auth: Токен авторизации
6129 +В запросе указывается locatorid - идентификатор локатора
5829 5829  
5830 5830  
5831 5831  Пример ответа:
5832 5832  
5833 5833  (((
5834 -[
5835 - {
5836 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор локатора.
5837 - "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента.
5838 - "agentName": "string", ~/~/ Наименование агента.
5839 - "isEnabled": true, ~/~/ Активен 
5840 - "created": "2025-03-12T06:48:41.254Z", ~/~/ Дата создания
5841 - "updated": "2025-03-12T06:48:41.254Z", ~/~/ Дата обновления
5842 - "name": "string", ~/~/ Наименование
5843 - "status": 0, ~/~/ 
5844 - "activationMode": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 
5845 - "activationTime": "2025-03-12T06:48:41.254Z", ~/~/ Определяет вид активации локаторов. ( 0 - сейчас, 1 - время активации) 
5846 - "validity": 0, ~/~/ Срок действия в днях (1-90).
5847 - "autoProlongation": true, ~/~/ Автопродление срока действия.
5848 - "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор.
5849 - "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор.
5850 - "url": "string", ~/~/ Ссылка
5851 - "language": 0, ~/~/ Язык.
5852 - "vehiclesCount": 0, ~/~/ Количество объектов.
5853 - "geozonesCount": 0, ~/~/ Количество геозон.
5854 - "fieldsCount": 0 ~/~/ Количество полей.
5855 - }
5856 -]
6135 +(((
6136 +{
6137 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 
6138 + 0
6139 + ],
6140 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 
6141 + 0
6142 + ],
6143 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 
6144 + 0
6145 + ],
6146 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора.
6147 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
6148 + "agentName": "string", ~/~/ Наименование агента.
6149 + "isEnabled": true, ~/~/ Активность 
6150 + "created": "2025-05-26T11:31:05.399Z", ~/~/ Дата создания
6151 + "updated": "2025-05-26T11:31:05.399Z", ~/~/ Дата обновления
6152 + "name": "string", ~/~/ Наименование.
6153 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 
6154 + "activationMode": 0, ~/~/ Определяет вид активации локаторов ( 0 - сейчас, 1 - запланировать на время)
6155 + "activationTime": "2025-05-26T11:31:05.399Z", ~/~/ Время активации
6156 + "validity": 0, ~/~/ Значение срока действия
6157 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 
6158 + "autoProlongation": true, ~/~/ Автопродление срока действия.
6159 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор.
6160 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор.
6161 + "url": "string", ~/~/ Ссылка
6162 + "language": 0, ~/~/ ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский)
6163 +
6164 + "showVehicleName": true, ~/~/ Наименование объекта
6165 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте
6166 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки**
6167 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке.
6168 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах
6169 + "availableMapLayers": [ ~/~/Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС)
6170 +
6171 + 1
6172 +
6173 + ]
6174 +}
5857 5857  )))
6176 +)))
5858 5858  
5859 5859  
6179 +(((
6180 +(((
6181 +
6182 +)))
6183 +)))
5860 5860  
6185 +
5861 5861  == **Создание локатора** ==
5862 5862  
5863 5863  (% class="box successmessage" %)
... ... @@ -5869,7 +5869,6 @@
5869 5869  
5870 5870  (((
5871 5871  {
5872 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора
5873 5873   "isEnabled": true, ~/~/ Активность
5874 5874   "name": "string", ~/~/ Наименование локатора
5875 5875   "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени)
... ... @@ -5876,8 +5876,28 @@
5876 5876   "activationTime": "2025-03-12T07:00:08.272Z", ~/~/  Время активации
5877 5877   "validity": 0, ~/~/ Срок действия в днях (1-90)
5878 5878   "autoProlongation": true, ~/~/ Автопродление срока действия.
5879 - "url": "string", ~/~/ Ссылка
5880 - "language": 0 ~/~/ Язык
6203 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский)
6204 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента.
6205 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 
6206 + 0
6207 + ],
6208 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 
6209 + 0
6210 + ],
6211 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 
6212 + 0
6213 + ],
6214 +
6215 + "showVehicleName": true, ~/~/ Наименование объекта
6216 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте
6217 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки**
6218 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке.
6219 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах
6220 + "availableMapLayers": [ ~/~/Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС)
6221 +
6222 + 1
6223 +
6224 + ]
5881 5881  }
5882 5882  )))
5883 5883  
... ... @@ -5889,7 +5889,69 @@
5889 5889  )))
5890 5890  
5891 5891  
6236 +== **Выводит список локаторов ** ==
5892 5892  
6238 +(% class="box successmessage" %)
6239 +(((
6240 +**POST /api/v3/locators/find**
6241 +)))
6242 +
6243 +Пример запроса:
6244 +
6245 +(((
6246 +{
6247 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор клиента
6248 +}
6249 +)))
6250 +
6251 +(((
6252 +
6253 +)))
6254 +
6255 +(((
6256 +
6257 +)))
6258 +
6259 +
6260 +Пример ответа:
6261 +
6262 +(((
6263 +[
6264 + {
6265 + "vehiclesCount": 0, ~/~/ Количество объектов.
6266 + "geozonesCount": 0, ~/~/ Количество геозон.
6267 + "fieldsCount": 0, ~/~/ Количество полей.
6268 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора.
6269 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента.
6270 + "agentName": "string", ~/~/ Наименование агента.
6271 + "isEnabled": true, ~/~/ Активность локатора
6272 + "created": "2025-07-03T12:57:58.738Z", ~/~/ Дата создания
6273 + "updated": "2025-07-03T12:57:58.738Z", ~/~/ Дата обновления 
6274 + "name": "string", ~/~/ Наименование локатора 
6275 + "status": 0,  ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 
6276 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 
6277 + "activationTime": "2025-07-03T12:57:58.738Z", ~/~/ Дата и время активации правила (UTC)
6278 + "validity": 0, ~/~/ Срок действия в днях (1-90)
6279 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 
6280 + "autoProlongation": true, ~/~/ Автоматическая пролонгация 
6281 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор.
6282 + "creatorUserName": "string", ~/~/ Наименование пользователя создавшего локатора 
6283 + "url": "string", ~/~/ ссылка на локатор 
6284 + "language": 1, ~/~/ Язык локатора(1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский)
6285 + "showVehicleName": true, ~/~/ Наименование объекта
6286 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте
6287 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки**
6288 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке.
6289 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах
6290 + "availableMapLayers": [ ~/~/Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС)
6291 +
6292 + 0
6293 + ]
6294 + }
6295 +]
6296 +)))
6297 +
6298 +
5893 5893  == **Изменение локатора** ==
5894 5894  
5895 5895  (% class="box infomessage" %)
... ... @@ -5908,12 +5908,31 @@
5908 5908   "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации
5909 5909   "validity": 0, ~/~/ Срок действия в днях (1-90)
5910 5910   "autoProlongation": true, ~/~/ Автопродление срока действия
5911 - "url": "string", ~/~/ Ссылка
5912 - "language": 0 ~/~/ Язык
6317 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский)
6318 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 
6319 + 0
6320 + ],
6321 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 
6322 + 0
6323 + ],
6324 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 
6325 + 0
6326 + ],
6327 + "showVehicleName": true, ~/~/ Наименование объекта
6328 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте
6329 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки**
6330 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке.
6331 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах
6332 + "availableMapLayers": [ ~/~/Слои на карте ,по умолчанию OpenStreetMap (1-OpenStreetMap, 2-Yandex (Карта), 3-Yandex (Спутник), 4-Yandex (Гибрид), 5-Yandex (Пробки), 6-Google (Карта), 7-Google (Гибрид), 8-Google (Рельеф), 9-Google (Спутник), 10-Bing (Карта), 11-Bing (Гибрид), 12-Bing(Темная карта), 13-2ГИС)
6333 +
6334 + 0
6335 +
6336 + ]
5913 5913  }
6338 +
6339 +
5914 5914  )))
5915 5915  
5916 -
5917 5917  Пример ответа:
5918 5918  
5919 5919  200 ~/~/ Success
... ... @@ -5935,8 +5935,201 @@
5935 5935  )))
5936 5936  
5937 5937  
6363 += **Раздел: Яндекс Маршруты** =
5938 5938  
5939 5939  
6366 +== **Возвращение списка маршрутов** ==
6367 +
6368 +(% class="box infomessage" %)
6369 +(((
6370 +**GET /api/v3/TransportRoutes**
6371 +)))
6372 +
6373 +Пример запроса:
6374 +Id  ~/~/ Идентификатор поля
6375 +
6376 +Пример ответа:
6377 +
6378 +(((
6379 +[
6380 + {
6381 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 
6382 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6383 + "name": "string", ~/~/ Наименование маршрута.
6384 + "kind": 0,  ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water)
6385 + "vehicles": [  ~/~/ Определяет список ТС для маршрута
6386 + 0
6387 + ]
6388 + }
6389 +]
6390 +)))
6391 +
6392 +
6393 +== **Добавить маршрут** ==
6394 +
6395 +(% class="box infomessage" %)
6396 +(((
6397 +**POST /api/v3/TransportRoutes**
6398 +)))
6399 +
6400 +Пример запроса: 
6401 +{
6402 + "name": "string",  ~/~/  Опредлеляет наименование маршрута.
6403 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6404 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water )
6405 + "vehicles": [  ~/~/ Определяет список ТС для маршрута
6406 + 0
6407 + ]
6408 +}
6409 +
6410 +
6411 +Пример ответа:
6412 +
6413 +(((
6414 +{
6415 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
6416 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6417 + "name": "string", ~/~/ Определяет наименование маршрута 
6418 + "kind": 0,  ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 
6419 + "vehicles": [ ~/~/ Определяет список ТС для маршрута
6420 + 0
6421 + ]
6422 +}
6423 +)))
6424 +
6425 +
6426 +== **Обновление маршрута** ==
6427 +
6428 +(% class="box successmessage" %)
6429 +(((
6430 +**PUT /api/v3/TransportRoutes**
6431 +)))
6432 +
6433 +Пример запроса:
6434 +
6435 +(((
6436 +{
6437 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
6438 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6439 + "name": "string", ~/~/ Опредлеляет наименование маршрута.
6440 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water)
6441 + "vehicles": [ ~/~/ Определяет список ТС для маршрута
6442 + 0
6443 + ]
6444 +}
6445 +)))
6446 +
6447 +Пример ответа:
6448 +
6449 +(((
6450 +{
6451 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID
6452 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут
6453 + "name": "string", ~/~/ Определяет наименование маршрута 
6454 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water )
6455 + "vehicles": [ ~/~/ Определяет список ТС для маршрута
6456 + 0
6457 + ]
6458 +}
6459 +)))
6460 +
6461 +
6462 +== **Получить связки маршрутов ТС** ==
6463 +
6464 +(% class="box infomessage" %)
6465 +(((
6466 +**POST /api/v3/TransportRoutes/getroutesvehicles**
6467 +)))
6468 +
6469 +Пример запроса:
6470 +
6471 +(((
6472 +[
6473 + "3fa85f64-5717-4562-b3fc-2c963f66afa6"  ~/~/ идентификатор маршрута
6474 +]
6475 +)))
6476 +
6477 +Пример ответа:
6478 +
6479 +(((
6480 +[
6481 + {
6482 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС
6483 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута
6484 + }
6485 +]
6486 +)))
6487 +
6488 +
6489 +== **Удалить маршрут** ==
6490 +
6491 +(% class="box warningmessage" %)
6492 +(((
6493 +**DELETE /api/v3/TransportRoutes/{id}**
6494 +)))
6495 +
6496 +Пример запроса:
6497 +Id  ~/~/ Идентификатор поля
6498 +
6499 +
6500 += **Раздел: Управление доступа к машинам** =
6501 +
6502 +
6503 +== Получение списка транспортных средств видимых пользователю ==
6504 +
6505 +(% class="box infomessage" %)
6506 +(((
6507 +**GET /api/v3/UserVisibleVehicles/{userId}**
6508 +)))
6509 +
6510 +Пример ответа:
6511 +
6512 +(((
6513 +{
6514 + "vehicleIds": [  ~/~/ Идентификаторы ТС
6515 + 0
6516 + ]
6517 +}
6518 +)))
6519 +
6520 +
6521 +== Задает видимость транспортных средств пользователю ==
6522 +
6523 +(% class="box infomessage" %)
6524 +(((
6525 +**POST /api/v3/UserVisibleVehicles**
6526 +)))
6527 +
6528 +Пример запроса:
6529 +
6530 +(((
6531 +(((
6532 +{
6533 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор пользователя
6534 + "vehicleIds": [ ~/~/ Идентификаторы ТС
6535 + 0
6536 + ]
6537 +}
6538 +)))
6539 +
6540 +(((
6541 +
6542 +)))
6543 +
6544 +(((
6545 +Пример ответа :
6546 +)))
6547 +
6548 +(((
6549 +
6550 +)))
6551 +
6552 +(((
6553 +200 ~/~/ Success
6554 +)))
6555 +)))
6556 +
6557 +
5940 5940  (% class="box" lang="en-US" style="text-align: center;" %)
5941 5941  (((
5942 5942  (% lang="ru-RU" style="color:#000000; font-family:Liberation Serif,serif; font-size:14pt; font-style:normal; font-variant:normal" %)**По вопросам работы PUBLIC API 3.0 можно обращаться**(% lang="ru-RU" style="color:#000000; font-size:14pt" %)** на [[support@glonasssoft.ru>>mailto:support@glonasssoft.ru]] **

Меню

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