Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/05/06 12:41
<
>
edited by Андрей Калиновский
on 2025/02/20 09:52
on 2025/02/20 09:52
edited by Андрей Калиновский
on 2025/05/06 11:45
on 2025/05/06 11:45
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Content
-
... ... @@ -11,6 +11,11 @@ 11 11 12 12 В случае нарушения этих правил, ГЛОНАССSoft оставляет за собой право принудительно остановить выполнение запросов с определенных IP адресов. 13 13 14 +(% class="box infomessage" %) 15 +((( 16 +**Чтобы избежать блокировки** из-за превышения количества авторизаций, вам необходимо использовать токен авторизации, полученный с помощью метода /auth/login, во всех последующих запросах к API. Этот токен имеет ограниченный срок действия, который можно изменить, настроив параметр "Длительность сессии" в настройках пользователя. 17 +\\При выполнении запросов с одним и тем же токеном его срок действия автоматически продлевается. Это позволяет пройти авторизацию только один раз и использовать полученный токен во всех последующих запросах без необходимости повторного входа в систему. 18 +))) 14 14 15 15 **Содержание страницы:** 16 16 ))) ... ... @@ -118,29 +118,41 @@ 118 118 Запрос должен содержать данные параметра "**agentId**" 119 119 120 120 (% style="color:#000000" %)Ответ: 126 + 127 +((( 121 121 { 122 - "agentId": "", (%%) 123 - "parentId": "", 124 - "parentName": "string", 125 - "name": "string", 126 - "fullName": "string", 127 - "agentInfoType": 0, 128 - "isForeign": true/false, 129 - "district": "string", 130 - "region": "string", 131 - "city": "string", 132 - "inn": "string", 133 - "kpp": "string", 134 - "address": "string", 135 - "addressFact": "string", 136 - "email": "string", 137 - "director": "string", 138 - "bankName": "string", 139 - "bankBIK": "string", 140 - "bankRS": "string", 141 - "bankKS": "string" 142 - } 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 +))) 143 143 160 + 144 144 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 145 145 |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 146 146 |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя ... ... @@ -1611,81 +1611,10 @@ 1611 1611 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1612 1612 1613 1613 1614 -= =**ИмпортироватьисториюТС(Асинхронныйзапрос)**==1631 +(% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами** 1615 1615 1616 -(% class="box successmessage" %) 1617 -((( 1618 -**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 1619 -))) 1620 - 1621 -Метод запроса: **POST** 1622 - 1623 -URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 1624 - 1625 -Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 1626 - 1627 - 1628 -Ответ: 1629 - 1630 -{ 1631 - 1632 - "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1633 - 1634 - "Status": 0, ~/~/ Перечисление состояний выполнения запроса 1635 - 1636 -~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 1637 - 1638 - "Message": "string", ~/~/ Информация о выполнении запроса 1639 - 1640 - "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 1641 - 1642 - "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1643 - 1644 - "Data": "string" ~/~/ Данные 1645 - 1646 -} 1647 - 1648 - 1649 -== **Возвращает статус асинхронного запроса импорта истории ТС** == 1650 - 1651 1651 (% class="box infomessage" %) 1652 1652 ((( 1653 -**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 1654 -))) 1655 - 1656 -Метод запроса: **GET** 1657 - 1658 -URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 1659 - 1660 -Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 1661 - 1662 - 1663 -Ответ: 1664 - 1665 -{ 1666 - 1667 - "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1668 - 1669 - "Status": 0, ~/~/ Перечисление состояний выполения запроса 1670 -~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 1671 - 1672 - "Message": "string", ~/~/ Информация о выполнении запроса 1673 - 1674 - "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 1675 - 1676 -~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 1677 - 1678 - "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1679 - 1680 - "Data": "string" ~/~/ Данные 1681 - 1682 -} 1683 - 1684 - 1685 -== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1686 - 1687 -(% class="box infomessage" %) 1688 -((( 1689 1689 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1690 1690 ))) 1691 1691 ... ... @@ -2512,6 +2512,8 @@ 2512 2512 "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2513 2513 "fuelConsumption": 0, ~/~/ Расход топлива 2514 2514 "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2461 + "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне 2462 + 2515 2515 } 2516 2516 ] 2517 2517 } ... ... @@ -2557,7 +2557,8 @@ 2557 2557 "model": "string", ~/~/ Модель объекта 2558 2558 "fuels": [ ~/~/ Массив данным по заправкам и сливам 2559 2559 { 2560 - "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив 2508 + "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 2509 + 2561 2561 "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало 2562 2562 "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание 2563 2563 "valueFuel": 0, ~/~/ Количество ... ... @@ -2786,6 +2786,35 @@ 2786 2786 } 2787 2787 ] 2788 2788 2738 + 2739 +== (% style="color:#000000; font-size:16px" %)**Обновить информацию по геозоне**(%%) == 2740 + 2741 +(% class="box successmessage" %) 2742 +((( 2743 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**PUT **(%%)**/api/v3/gis** 2744 +))) 2745 + 2746 +(% style="color:#000000" %)Метод запроса: **PUT** 2747 + 2748 +Пример запроса: 2749 + 2750 +((( 2751 +{ 2752 + "id": 0, ~/~/ Идентификатор объекта геозоны 2753 + "name": "string", ~/~/ Наименование объекта геозоны 2754 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 2755 + "description": "string", ~/~/ Описание объекта геозоны 2756 + "beginCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата начала расчетов для геозоны 2757 + "endCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата окончания расчетов для геозоны 2758 + "settingsData": "string" ~/~/ Параметры отображения в формате XML. 2759 +} 2760 +))) 2761 + 2762 + 2763 +Пример ответа: 2764 + 2765 +200 ~/~/ Success 2766 + 2789 2789 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) = 2790 2790 2791 2791 == (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) == ... ... @@ -4270,6 +4270,51 @@ 4270 4270 |producedCount|Кол-во успешно отправленных в шину данных сообщений 4271 4271 |msgCount|Кол-во обработанных сообщений всего 4272 4272 4251 +(% class="wikigeneratedid" %) 4252 +== == 4253 + 4254 +== **Импортировать историю ТС (Асинхронный запрос)** == 4255 + 4256 +(% class="box successmessage" %) 4257 +((( 4258 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 4259 +))) 4260 + 4261 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4262 + 4263 +Метод запроса: **POST** 4264 + 4265 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 4266 + 4267 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 4268 + 4269 + 4270 +Ответ: 4271 + 4272 +{ 4273 + 4274 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4275 + 4276 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 4277 + 4278 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 4279 + 4280 + "Message": "string", ~/~/ Информация о выполнении запроса 4281 + 4282 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 4283 + 4284 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4285 + 4286 + "Data": "string" ~/~/ Данные 4287 + 4288 +} 4289 + 4290 + 4291 +== == 4292 + 4293 +(% class="wikigeneratedid" %) 4294 +== == 4295 + 4273 4273 == (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 4274 4274 4275 4275 (% class="box infomessage" %) ... ... @@ -4291,6 +4291,46 @@ 4291 4291 |activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4292 4292 |progress|Guid ТС 4293 4293 4317 +(% class="wikigeneratedid" %) 4318 +== == 4319 + 4320 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 4321 + 4322 +(% class="box infomessage" %) 4323 +((( 4324 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 4325 +))) 4326 + 4327 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4328 + 4329 +Метод запроса: **GET** 4330 + 4331 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 4332 + 4333 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 4334 + 4335 + 4336 +Ответ: 4337 + 4338 +{ 4339 + 4340 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4341 + 4342 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 4343 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 4344 + 4345 + "Message": "string", ~/~/ Информация о выполнении запроса 4346 + 4347 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 4348 + 4349 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 4350 + 4351 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4352 + 4353 + "Data": "string" ~/~/ Данные 4354 + 4355 +} 4356 + 4294 4294 == (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 4295 4295 4296 4296 (% class="box infomessage" %) ... ... @@ -4802,8 +4802,51 @@ 4802 4802 } 4803 4803 ] 4804 4804 } 4868 + 4869 + 4870 +== **Превышение скорости** == 4871 + 4872 +(% class="box infomessage" %) 4873 +((( 4874 +**POST /api/v3/Reports/overSpeedDuration** 4805 4805 ))) 4806 4806 4877 + Публичный API запрос о превышениях скорости по объекту в секундах с выбором способа определения нарушений (дорожное ограничение или фиксированное ограничение). 4878 + 4879 +Пример запроса: 4880 + 4881 +((( 4882 +{ 4883 + "vehicleId": 0, ~/~/ идентификационный номер транспортного средства 4884 + "from": "2025-04-21T10:45:25.258Z", ~/~/ Начало периода (локальное время клиента) 4885 + "to": "2025-04-21T10:45:25.258Z", ~/~/ Конец периода (локальное время клиента) 4886 + "timezone": 0, ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4887 + "overSpeedDetectionType": 0 ~/~/ тип нарушения (1-дорожное ограничение, 2-фиксированный ) 4888 +} 4889 +))) 4890 + 4891 +((( 4892 + 4893 +))) 4894 + 4895 +((( 4896 +Пример ответа: 4897 +))) 4898 + 4899 +((( 4900 +((( 4901 +[ 4902 + { 4903 + "eventDate": "2025-04-21T10:45:25.267Z", ~/~/ Дата и время события 4904 + "duration": 0, ~/~/ Продолжительность события в секундах 4905 + "maxSpeed": 0, ~/~/ Максимальная скорость 4906 + "speedLimit": 0 ~/~/ Ограничение скорости 4907 + } 4908 +] 4909 +))) 4910 +))) 4911 +))) 4912 + 4807 4807 = (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 4808 4808 4809 4809 ... ... @@ -4878,13 +4878,16 @@ 4878 4878 **POST /api/v3/agroLands** 4879 4879 ))) 4880 4880 4987 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 4988 +X-agent - ID клиента 4989 + 4881 4881 Пример запроса: 4882 4882 4883 4883 ((( 4884 4884 { 4885 4885 "extId": "string", 4886 - "shape": " string", ~/~/ Форма поля4887 - "shapeFormat": "s tring", ~/~/ Формат, в котором представлена форма поля4995 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля 4996 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля 4888 4888 "display": "string", ~/~/ Настройки отображения 4889 4889 "year": 0, ~/~/ Год поля 4890 4890 "name": "string", ~/~/ Наименование ... ... @@ -5381,7 +5381,7 @@ 5381 5381 ))) 5382 5382 5383 5383 5384 -= =(% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) ==5493 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5385 5385 ))) 5386 5386 ))) 5387 5387 ))) ... ... @@ -5426,7 +5426,7 @@ 5426 5426 ] 5427 5427 5428 5428 5429 -(% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины** 5538 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) == 5430 5430 5431 5431 (% class="box infomessage" %) 5432 5432 ((( ... ... @@ -5524,7 +5524,618 @@ 5524 5524 ] 5525 5525 5526 5526 5636 += **Раздел: Журнал заданий ** = 5527 5527 5638 + 5639 +== **Создание задания в Журнале заданий** == 5640 + 5641 +(% class="box infomessage" %) 5642 +((( 5643 +**POST /api/v3/vehicletasks** 5644 +))) 5645 + 5646 +Пример запроса: 5647 + 5648 +((( 5649 +{ 5650 + "vehicleId": 0, ~/~/ Идентификатор ТС 5651 + "description": "string", ~/~/ Описание 5652 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5653 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5654 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы 5655 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы 5656 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5657 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5658 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5659 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5660 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5661 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5662 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5663 + "cost": { 5664 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5665 + "Name": "string", ~/~/ Наименование 5666 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection ) 5667 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5668 + "Norm": 0 ~/~/ Норма внесения 5669 + }, 5670 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 5671 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5672 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания 5673 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления 5674 + "deleted": true, ~/~/ Признак удаления 5675 + "extId": "string", 5676 + "GeoIds": [ ~/~/ Cвязанные поля 5677 + 0 5678 + ] 5679 +} 5680 +))) 5681 + 5682 + 5683 +Пример ответа: 5684 + 5685 +{ 5686 + "vehicleId": 0, ~/~/ Идентификатор ТС 5687 + "description": "string", ~/~/ Описание 5688 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5689 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5690 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5691 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5692 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5693 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5694 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5695 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5696 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5697 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5698 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5699 + "cost": { 5700 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5701 + "Name": "string", ~/~/ Наименование 5702 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5703 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5704 + "Norm": 0 ~/~/ Норма внесения 5705 + }, 5706 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5707 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5708 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5709 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5710 + "deleted": true, ~/~/ Признак удаления 5711 + "extId": "string", ~/~/ ExtId 5712 + "GeoIds": [ ~/~/ Связанные поля 5713 + 0 5714 + ] 5715 +} 5716 + 5717 + 5718 +== **Редактирование задания в Журнале заданий** == 5719 + 5720 +(% class="box successmessage" %) 5721 +((( 5722 +**PUT /api/v3/vehicletasks** 5723 +))) 5724 + 5725 +Пример запроса: 5726 + 5727 +((( 5728 +{ 5729 + "vehicleId": 0, ~/~/ Идентификатор ТС 5730 + "description": "string", ~/~/ Описание 5731 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5732 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5733 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы 5734 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы 5735 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5736 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5737 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5738 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5739 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5740 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5741 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5742 + "cost": { 5743 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5744 + "Name": "string", ~/~/ Наименование 5745 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5746 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5747 + "Norm": 0 ~/~/ Норма внесения 5748 + }, 5749 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5750 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5751 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания 5752 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления 5753 + "deleted": true, ~/~/ Признак удаления 5754 + "extId": "string", ~/~/ ExtId 5755 + "GeoIds": [ ~/~/ Связанные поля 5756 + 0 5757 + ] 5758 +} 5759 +))) 5760 + 5761 + 5762 +Пример ответа: 5763 + 5764 +{ 5765 + "vehicleId": 0, ~/~/ Идентификатор ТС 5766 + "description": "string", ~/~/ Описание 5767 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5768 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5769 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5770 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5771 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5772 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5773 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5774 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5775 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5776 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5777 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5778 + "cost": { 5779 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5780 + "Name": "string", ~/~/ Наименование 5781 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5782 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5783 + "Norm": 0 ~/~/ Норма внесения 5784 + }, 5785 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5786 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5787 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5788 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5789 + "deleted": true, ~/~/ Признак удаления 5790 + "extId": "string", ~/~/ ExtId 5791 + "GeoIds": [ ~/~/ Связанные поля 5792 + 0 5793 + ] 5794 +} 5795 + 5796 + 5797 +== **Удаление задания в Журнале заданий** == 5798 + 5799 +(% class="box warningmessage" %) 5800 +((( 5801 +**DELETE /api/v3/vehicletasks** 5802 +))) 5803 + 5804 +Пример запроса: 5805 + 5806 +((( 5807 +[ 5808 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 5809 +] 5810 +))) 5811 + 5812 +((( 5813 + 5814 +))) 5815 + 5816 +Пример ответа: 5817 + 5818 +{ 5819 + "vehicleId": 0, ~/~/ Идентификатор ТС 5820 + "description": "string", ~/~/ Описание 5821 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5822 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5823 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5824 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5825 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5826 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5827 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5828 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5829 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5830 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5831 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5832 + "cost": { 5833 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5834 + "Name": "string", ~/~/ Наименование 5835 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5836 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5837 + "Norm": 0 ~/~/ Норма внесения 5838 + }, 5839 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5840 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5841 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5842 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5843 + "deleted": true, ~/~/ Признак удаления 5844 + "extId": "string", ~/~/ ExtId 5845 + "GeoIds": [ ~/~/ Связанные поля 5846 + 0 5847 + ] 5848 +} 5849 + 5850 + 5851 +== **Получение списка Журнала заданий** == 5852 + 5853 +(% class="box infomessage" %) 5854 +((( 5855 +**POST /api/v3/vehicletasks/getbyperiod** 5856 +))) 5857 + 5858 +Пример запроса: 5859 + 5860 +((( 5861 +{ 5862 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода. 5863 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода. 5864 + "TimeZone": 0, ~/~/ Часовой пояс. 5865 + "OperationsIds": [ ~/~/ Идентификаторы видов работ для фильтрации журнала 5866 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 5867 + ], 5868 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала 5869 + 0 5870 + ], 5871 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала 5872 + 0 5873 + ], 5874 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска. 5875 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 5876 +} 5877 +))) 5878 + 5879 + 5880 +Пример ответа: 5881 + 5882 +((( 5883 +{ 5884 + "total": 0, ~/~/ Общее количество записей 5885 + "pages": 0, ~/~/ Общее количество страниц 5886 + "currentPage": 0, ~/~/ Текущая страница 5887 + "items": [ ~/~/ Записи 5888 + { 5889 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5890 + "isGroup": true, ~/~/ Вид задания (true - групповое, иначе - одиночное). 5891 + "name": "string", ~/~/ Название задания. 5892 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc 5893 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc 5894 + "workKind": "string", ~/~/ Вид работ 5895 + "techOp": "string", ~/~/ Тех. операция 5896 + "trailerModel": "string", ~/~/ Модель агрегата 5897 + "width": "string", ~/~/ Ширина, м 5898 + "speed": "string", ~/~/ Тех. скорость 5899 + "fields": "string", ~/~/ Поля 5900 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га) 5901 + "vehicles": "string", ~/~/ Объект-модель 5902 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов) 5903 + "drivers": "string", ~/~/ Водители 5904 + "tmc": "string", ~/~/ ТМЦ 5905 + "client": "string", ~/~/ Клиент 5906 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5907 + "dep": "string", ~/~/ Подразделение 5908 + "geoIds": [ ~/~/ Связанные поля 5909 + 0 5910 + ] 5911 + } 5912 + ] 5913 +} 5914 +))) 5915 + 5916 + 5917 += **Раздел: Локатор ** = 5918 + 5919 + 5920 +== **Получение списка локаторов, доступных пользователю ** == 5921 + 5922 +(% class="box infomessage" %) 5923 +((( 5924 +**GET /api/v3/locators** 5925 +))) 5926 + 5927 +В заголовках запроса: X-Auth: Токен авторизации 5928 + 5929 + 5930 +Пример ответа: 5931 + 5932 +((( 5933 +[ 5934 + { 5935 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 5936 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 5937 + "agentName": "string", ~/~/ Наименование агента. 5938 + "isEnabled": true, ~/~/ Активен 5939 + "created": "2025-03-12T06:48:41.254Z", ~/~/ Дата создания 5940 + "updated": "2025-03-12T06:48:41.254Z", ~/~/ Дата обновления 5941 + "name": "string", ~/~/ Наименование 5942 + "status": 0, ~/~/ 5943 + "activationMode": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 5944 + "activationTime": "2025-03-12T06:48:41.254Z", ~/~/ Определяет вид активации локаторов. ( 0 - сейчас, 1 - время активации) 5945 + "validity": 0, ~/~/ Срок действия в днях (1-90). 5946 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5947 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 5948 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 5949 + "url": "string", ~/~/ Ссылка 5950 + "language": 0, ~/~/ Язык. 5951 + "vehiclesCount": 0, ~/~/ Количество объектов. 5952 + "geozonesCount": 0, ~/~/ Количество геозон. 5953 + "fieldsCount": 0 ~/~/ Количество полей. 5954 + } 5955 +] 5956 +))) 5957 + 5958 + 5959 + 5960 +== **Создание локатора** == 5961 + 5962 +(% class="box successmessage" %) 5963 +((( 5964 +**POST /api/v3/locators** 5965 +))) 5966 + 5967 +Пример запроса: 5968 + 5969 +((( 5970 +{ 5971 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 5972 + "isEnabled": true, ~/~/ Активность 5973 + "name": "string", ~/~/ Наименование локатора 5974 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 5975 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 5976 + "validity": 0, ~/~/ Срок действия в днях (1-90) 5977 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5978 + "url": "string", ~/~/ Ссылка 5979 + "language": 0 ~/~/ Язык 5980 +} 5981 +))) 5982 + 5983 + 5984 +Пример ответа: 5985 + 5986 +((( 5987 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора 5988 +))) 5989 + 5990 + 5991 + 5992 +== **Изменение локатора** == 5993 + 5994 +(% class="box infomessage" %) 5995 +((( 5996 +**PUT /api/v3/locators** 5997 +))) 5998 + 5999 +Пример запроса: 6000 + 6001 +((( 6002 +{ 6003 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 6004 + "isEnabled": true, ~/~/ Активность 6005 + "name": "string", ~/~/ Наименование 6006 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6007 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 6008 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6009 + "autoProlongation": true, ~/~/ Автопродление срока действия 6010 + "url": "string", ~/~/ Ссылка 6011 + "language": 0 ~/~/ Язык 6012 +} 6013 +))) 6014 + 6015 + 6016 +Пример ответа: 6017 + 6018 +200 ~/~/ Success 6019 + 6020 + 6021 +== **Удалить локатор** == 6022 + 6023 +(% class="box warningmessage" %) 6024 +((( 6025 +**DELETE /api/v3/locators** 6026 +))) 6027 + 6028 +Пример запроса: 6029 + 6030 +((( 6031 +[ 6032 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора 6033 +] 6034 +))) 6035 + 6036 + 6037 + 6038 += **Раздел: Яндекс Маршруты** = 6039 + 6040 + 6041 +== **Возвращение списка маршрутов** == 6042 + 6043 +(% class="box infomessage" %) 6044 +((( 6045 +**GET /api/v3/TransportRoutes** 6046 +))) 6047 + 6048 +Пример запроса: 6049 +Id ~/~/ Идентификатор поля 6050 + 6051 + 6052 +Пример ответа: 6053 + 6054 +((( 6055 +[ 6056 + { 6057 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ id 6058 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6059 + "name": "string", ~/~/ Наименование маршрута. 6060 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6061 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6062 + 0 6063 + ] 6064 + } 6065 +] 6066 +))) 6067 + 6068 + 6069 + 6070 +== **Добавить маршрут** == 6071 + 6072 +(% class="box infomessage" %) 6073 +((( 6074 +**POST /api/v3/TransportRoutes** 6075 +))) 6076 + 6077 +Пример запроса: 6078 +{ 6079 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6080 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6081 + "kind": 0, ~/~/ Определяет вид маршрута. (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6082 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6083 + 0 6084 + ] 6085 +} 6086 + 6087 + 6088 +Пример ответа: 6089 + 6090 +((( 6091 +{ 6092 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6093 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6094 + "name": "string", ~/~/ Определяет наименование маршрута 6095 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6096 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6097 + 0 6098 + ] 6099 +} 6100 +))) 6101 + 6102 + 6103 +== **Обновление маршрута** == 6104 + 6105 +(% class="box successmessage" %) 6106 +((( 6107 +**PUT /api/v3/TransportRoutes** 6108 +))) 6109 + 6110 +Пример запроса: 6111 + 6112 +((( 6113 +{ 6114 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6115 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6116 + "name": "string", ~/~/ Опредлеляет наименование маршрута. 6117 + "kind": 0, ~/~/ Определяет вид маршрута (0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water) 6118 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6119 + 0 6120 + ] 6121 +} 6122 +))) 6123 + 6124 + 6125 +Пример ответа: 6126 + 6127 +((( 6128 +{ 6129 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 6130 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id записи к которой принадлежит маршрут 6131 + "name": "string", ~/~/ Определяет наименование маршрута 6132 + "kind": 0, ~/~/ Определяет вид маршрута ( 0 - Bus, 1 - Trolley, 2 - Tram, 3 - Taxi, 4 - Water ) 6133 + "vehicles": [ ~/~/ Определяет список ТС для маршрута 6134 + 0 6135 + ] 6136 +} 6137 +))) 6138 + 6139 + 6140 +== **Получить связки маршрутов ТС** == 6141 + 6142 +(% class="box infomessage" %) 6143 +((( 6144 +**POST /api/v3/TransportRoutes/getroutesvehicles** 6145 +))) 6146 + 6147 +Пример запроса: 6148 + 6149 +((( 6150 +[ 6151 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ идентификатор маршрута 6152 +] 6153 +))) 6154 + 6155 + 6156 +Пример ответа: 6157 + 6158 +((( 6159 +[ 6160 + { 6161 + "vehicleId": 0, ~/~/ Опредлеляет идентификатор ТС 6162 + "routeGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Определяет идентификатор маршрута 6163 + } 6164 +] 6165 +))) 6166 + 6167 + 6168 +== **Удалить маршрут** == 6169 + 6170 +(% class="box warningmessage" %) 6171 +((( 6172 +**DELETE /api/v3/TransportRoutes/{id}** 6173 +))) 6174 + 6175 +Пример запроса: 6176 +Id ~/~/ Идентификатор поля 6177 + 6178 + 6179 +==== ==== 6180 + 6181 += **Раздел: Управление доступа к машинам** = 6182 + 6183 + 6184 +== Получение списка транспортных средств видимых пользователю == 6185 + 6186 +(% class="box infomessage" %) 6187 +((( 6188 +**GET /api/v3/UserVisibleVehicles/{userId}** 6189 +))) 6190 + 6191 +Пример ответа: 6192 + 6193 +((( 6194 +{ 6195 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6196 + 0 6197 + ] 6198 +} 6199 +))) 6200 + 6201 + 6202 + 6203 +== Задает видимость транспортных средств пользователю == 6204 + 6205 +(% class="box infomessage" %) 6206 +((( 6207 +**POST /api/v3/UserVisibleVehicles** 6208 +))) 6209 + 6210 +Пример запроса: 6211 + 6212 +((( 6213 +((( 6214 +{ 6215 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя 6216 + "vehicleIds": [ ~/~/ Идентификаторы ТС 6217 + 0 6218 + ] 6219 +} 6220 +))) 6221 + 6222 +((( 6223 + 6224 +))) 6225 + 6226 +((( 6227 + 6228 +))) 6229 + 6230 +((( 6231 +Пример ответа : 6232 +))) 6233 + 6234 +((( 6235 + 6236 +))) 6237 + 6238 +((( 6239 +200 ~/~/ Success 6240 +))) 6241 +))) 6242 + 6243 + 6244 + 6245 + 6246 + 6247 + 5528 5528 (% class="box" lang="en-US" style="text-align: center;" %) 5529 5529 ((( 5530 5530 (% 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]] **