Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/09/11 10:51
<
>
edited by Андрей Калиновский
on 2025/05/06 11:26
on 2025/05/06 11:26
edited by Андрей Калиновский
on 2025/09/03 09:05
on 2025/09/03 09:05
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Content
-
... ... @@ -287,28 +287,6 @@ 287 287 "bankKS": "string" ~/~/ корр. счёт 288 288 } 289 289 290 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 291 -|(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 292 -|(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 293 -|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 294 -|(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 295 -|(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 296 -|(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) 297 -|(% style="width:215px" %)isForeign|(% style="width:861px" %)Иностранный контрагент 298 -|(% style="width:215px" %)district|(% style="width:861px" %)Округ 299 -|(% style="width:215px" %)region|(% style="width:861px" %)Регион 300 -|(% style="width:215px" %)city|(% style="width:861px" %)Город 301 -|(% style="width:215px" %)inn|(% style="width:861px" %)ИНН клиента 302 -|(% style="width:215px" %)kpp|(% style="width:861px" %)КПП клиента 303 -|(% style="width:215px" %)address|(% style="width:861px" %)Юридический адрес 304 -|(% style="width:215px" %)addressFact|(% style="width:861px" %)Фактический адрес 305 -|(% style="width:215px" %)email|(% style="width:861px" %)Электронная почта 306 -|(% style="width:215px" %)director|(% style="width:861px" %)ФИО руководителя 307 -|(% style="width:215px" %)bankName|(% style="width:861px" %)Банк 308 -|(% style="width:215px" %)bankBIK|(% style="width:861px" %)БИК 309 -|(% style="width:215px" %)bankRS|(% style="width:861px" %)Номер счета 310 -|(% style="width:215px" %)bankKS|(% style="width:861px" %)Корр. счет 311 - 312 312 == (% style="color:#000000; font-size:16px" %)**Редактирование клиента**(%%) == 313 313 314 314 (% class="box warningmessage" %) ... ... @@ -454,7 +454,7 @@ 454 454 [ 455 455 "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ группы пользователя, перечисление названия клиентских ролей 456 456 ], 457 - "language": 0~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский435 + "language": 1 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 458 458 } 459 459 { 460 460 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -766,6 +766,11 @@ 766 766 (% style="text-align:left" %) 767 767 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».** 768 768 747 +(% class="wikigeneratedid" id="H" %) 748 +((( 749 + 750 +))) 751 + 769 769 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Модель объекта**(%%) = 770 770 771 771 == (% style="color:#000000; font-size:16px" %)**Получение информации о модели объекта**(%%) == ... ... @@ -877,7 +877,7 @@ 877 877 { 878 878 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 879 879 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 880 - "deleted": true,863 + "deleted": false, 881 881 "extId": "string", 882 882 "name": "string", 883 883 "picture": "string", ... ... @@ -896,7 +896,7 @@ 896 896 { 897 897 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 898 898 "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 899 - "deleted": true,882 + "deleted": false, 900 900 "extId": "string", 901 901 "name": "string", 902 902 "picture": "string", ... ... @@ -930,7 +930,7 @@ 930 930 (% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models** 931 931 ))) 932 932 933 -(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе.916 +(% style="color:#000000" %)Метод позволяет изменить статус модели, указанного в запросе. 934 934 935 935 (% style="color:#000000" %)Метод запроса: **PUT** 936 936 ... ... @@ -997,7 +997,7 @@ 997 997 (% lang="en-US" %)**DELETE /api/v3/models/{Id}** 998 998 ))) 999 999 1000 -(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалитьпользователя, указанного в строке запроса.983 +(% style="color:#000000" %)Метод позволяет удалить модели. Метод позволяет удалить модель, указанного в строке запроса. 1001 1001 1002 1002 (% style="color:#000000" %)Метод запроса: **DELETE** 1003 1003 ... ... @@ -1628,81 +1628,6 @@ 1628 1628 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1629 1629 1630 1630 1631 -== **Импортировать историю ТС (Асинхронный запрос)** == 1632 - 1633 -(% class="box successmessage" %) 1634 -((( 1635 -**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 1636 -))) 1637 - 1638 -При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 1639 - 1640 -Метод запроса: **POST** 1641 - 1642 -URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 1643 - 1644 -Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 1645 - 1646 - 1647 -Ответ: 1648 - 1649 -{ 1650 - 1651 - "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1652 - 1653 - "Status": 0, ~/~/ Перечисление состояний выполнения запроса 1654 - 1655 -~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 1656 - 1657 - "Message": "string", ~/~/ Информация о выполнении запроса 1658 - 1659 - "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 1660 - 1661 - "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1662 - 1663 - "Data": "string" ~/~/ Данные 1664 - 1665 -} 1666 - 1667 - 1668 -== **Возвращает статус асинхронного запроса импорта истории ТС** == 1669 - 1670 -(% class="box infomessage" %) 1671 -((( 1672 -**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 1673 -))) 1674 - 1675 -При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 1676 - 1677 -Метод запроса: **GET** 1678 - 1679 -URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 1680 - 1681 -Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 1682 - 1683 - 1684 -Ответ: 1685 - 1686 -{ 1687 - 1688 - "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1689 - 1690 - "Status": 0, ~/~/ Перечисление состояний выполения запроса 1691 -~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 1692 - 1693 - "Message": "string", ~/~/ Информация о выполнении запроса 1694 - 1695 - "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 1696 - 1697 -~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 1698 - 1699 - "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1700 - 1701 - "Data": "string" ~/~/ Данные 1702 - 1703 -} 1704 - 1705 - 1706 1706 == (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1707 1707 1708 1708 (% class="box infomessage" %) ... ... @@ -1848,7 +1848,6 @@ 1848 1848 "stage": "", ~/~/ Состояние 1849 1849 (% style="color:#000000" %) } 1850 1850 1851 -== == 1852 1852 1853 1853 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1854 1854 ... ... @@ -2465,7 +2465,7 @@ 2465 2465 Тело запроса: 2466 2466 2467 2467 { 2468 - "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2375 + "sampling": 86400, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой. 2469 2469 "vehicleIds": [0], ~/~/ Список ID объектов 2470 2470 "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 2471 2471 "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода ... ... @@ -2512,7 +2512,7 @@ 2512 2512 Тело запроса: 2513 2513 2514 2514 { 2515 - "sampling": 0, ~/~/ Частота дискретизации всекундах, минимум 60 секунд.Весь периодразбивает на подпериоды с указанной частотой.2422 + "sampling": 86400, ~/~/ Частота дискретизации, секунд, минимум - 60 (если передано, то весь период бъётся на подпериоды с указанной частотой) 2516 2516 "vehicleIds": [0], ~/~/ Список ID объектов 2517 2517 "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода 2518 2518 "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода ... ... @@ -2531,6 +2531,8 @@ 2531 2531 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2532 2532 "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода 2533 2533 "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода 2441 + "fuelTankLevelStart": 0, ~/~/ Уровень топлива в цистерне на начало периода 2442 + "fuelTankLevelEnd": 0, ~/~/ Уровень топлива в цистерне на конец периода 2534 2534 "fuelConsumption": 0, ~/~/ Расход топлива 2535 2535 "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении 2536 2536 "fuelConsumptionFactTank": 0 ~/~/ Фактический расход топлива в цистерне ... ... @@ -2660,26 +2660,50 @@ 2660 2660 В заголовках запроса: X-Auth: Токен авторизации 2661 2661 2662 2662 2663 -В теле запроса перечисляетемассив id объектов, вквадратных скобкахчерез запятую.2572 +В массиве указываем id объектов через запятую 2664 2664 2665 2665 Ответ: 2575 + 2576 +[ 2666 2666 { 2667 - "vehicleId": 0, ~/~/Идентификатор объекта.2668 - "vehicleGuid": " 3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификаторобъекта.2669 - "vehicleNumber": " string",~/~/Номер объекта.2670 - "receiveTime": "202 4-02-27T14:11:00.315Z",~/~/Времяполучениязаписи на сервере,т.е. время срабатывания+ время передачи от устройствана сервер2671 - "recordTime": "202 4-02-27T14:11:00.315Z",~/~/Времязаписиотустройства, т.е. время фактическогособытия натранспортном средстве.2672 - "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4.2673 - "speed": 0,~/~/Скорость объекта.2674 - "course": 0,~/~/Курс движения [0;360]2675 - "latitude": 0,~/~/Широта [-90°;90°].2676 - "longitude": 0,~/~/Долгота [-180°;180°]. 2677 - "address": " string",~/~/Адрес.2678 - "geozones": [ ~/~/Сведения по геозонам. 2578 + "vehicleId": 55728, ~/~/ Идентификатор объекта 2579 + "vehicleGuid": "fa9c0357-9b9f-44b9-a89c-20a2cb80a9ad", ~/~/ Guid объекта 2580 + "vehicleNumber": "0105 КМ", ~/~/ Номер объекта 2581 + "receiveTime": "2025-06-27T12:37:46.7782735Z", ~/~/ Время и дата поступления данных 2582 + "recordTime": "2025-06-27T12:37:19Z", ~/~/ Время и дата формирование данных 2583 + "state": 4, ~/~/ Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2584 + "speed": 31, ~/~/ Скорость объекта 2585 + "course": 116, ~/~/ Курс движения [0;360] 2586 + "latitude": 45.722128, ~/~/ Широта [-90°;90°]. 2587 + "longitude": 39.800432, ~/~/ Долгота [-180°;180°]. 2588 + "address": "\" Краснодарский край Россия 45,722128°, 39,800432°\"", ~/~/ Адрес 2589 + "geozones": [ ~/~/ Сведения по геозонам. 2679 2679 { 2680 - "id": 0, 2681 - "name": "string" 2591 + "id": 10225647, ~/~/ ID Геозоны 2592 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2593 + }, 2594 + { 2595 + "id": 10282875, ~/~/ ID Геозоны 2596 + "name": "Ё2" ~/~/ Наименование геозоны 2597 + }, 2598 + { 2599 + "id": 10226240, ~/~/ ID Геозоны 2600 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2601 + }, 2602 + { 2603 + "id": 9747869, ~/~/ ID Геозоны 2604 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2605 + }, 2606 + { 2607 + "id": 10221123, ~/~/ ID Геозоны 2608 + "name": "53r" ~/~/ Наименование геозоны 2609 + }, 2610 + { 2611 + "id": 10197638, ~/~/ ID Геозоны 2612 + "name": "Предприятие \"Газырское\" Участок №7/Поле 7-11/1" ~/~/ Наименование геозоны 2682 2682 } 2614 + ] 2615 + } 2683 2683 2684 2684 2685 2685 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = ... ... @@ -2704,7 +2704,7 @@ 2704 2704 2705 2705 (% style="text-align:left" %) 2706 2706 { 2707 - "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2640 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор клиента, для которого надо получить данные 2708 2708 } 2709 2709 2710 2710 (% style="text-align:left" %) ... ... @@ -2715,9 +2715,9 @@ 2715 2715 "id": 0, ~/~/ Идентификатор объекта геозоны 2716 2716 "name": "string", ~/~/ Название объекта геозоны 2717 2717 "type": 0, ~/~/ Тип объекта геозоны 2651 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 2718 2718 "fname": "string", ~/~/ Имя файла 2719 2719 "parentId": "string", ~/~/ Идентификатор клиента 2720 - "radius": 0, ~/~/ Радиус геообъекта 2721 2721 "beginCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата начала расчета 2722 2722 "endCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата окончания расчета 2723 2723 "description": "string", ~/~/ Описание ... ... @@ -2831,6 +2831,11 @@ 2831 2831 "beginCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата начала расчетов для геозоны 2832 2832 "endCalc": "2025-04-24T12:10:28.751Z", ~/~/ Дата окончания расчетов для геозоны 2833 2833 "settingsData": "string" ~/~/ Параметры отображения в формате XML. 2767 + "type": 0, ~/~/ Тип геозоны - линия,полигон 2768 + "radius": 0, ~/~/ Радиус геозоны 2769 + "shape": "string", ~/~/ Координаты геозоны 2770 + "shape_format": "string" ~/~/ Формат xml,json 2771 + 2834 2834 } 2835 2835 ))) 2836 2836 ... ... @@ -2870,7 +2870,7 @@ 2870 2870 "id": 0, ~/~/ ID уведомления 2871 2871 "name": "string", ~/~/ Название уведомления 2872 2872 "active": true, ~/~/ Состояние true - активен, false - деактивирован 2873 - "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО 2811 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя) 2874 2874 "userId": "", ~/~/ Пользователь, создавший уведомление 2875 2875 "parentId": "", ~/~/ Идентификатор клиента 2876 2876 "parentName": "string" ~/~/ Имя клиента ... ... @@ -2877,6 +2877,155 @@ 2877 2877 } 2878 2878 ] 2879 2879 2818 + 2819 +== (% style="color:#000000; font-size:16px" %)**Создание уведомления**(%%) == 2820 + 2821 +(% class="box infomessage" %) 2822 +((( 2823 +**POST /api/v3/notifications** 2824 +))) 2825 + 2826 +Метод запроса **POST** 2827 + 2828 +(% style="text-align: left;" %) 2829 +(% style="color:#000000" %)Пример запроса 2830 + 2831 +((( 2832 +{ 2833 + "id": 0, ~/~/ ID правила 2834 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2835 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2836 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2837 + "name": "string", ~/~/ Имя правила 2838 + "active": true, ~/~/ Активность правила 2839 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2840 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2841 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2842 + ], 2843 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2844 + 0 2845 + ], 2846 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2847 + 0 2848 + ], 2849 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2850 + 0 2851 + ], 2852 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2853 + "additionalProp1": "string", 2854 + "additionalProp2": "string", 2855 + "additionalProp3": "string" 2856 + }, 2857 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2858 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2859 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2860 + ], 2861 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2862 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2863 + "string" 2864 + ], 2865 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2866 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2867 + { 2868 + "id": 0, ~/~/ Идентификатор участника чата. 2869 + "info": "string" ~/~/ Дополнительные сведения. 2870 + } 2871 + ], 2872 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2873 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2874 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2875 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2876 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2877 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2878 + "timezone": 0, ~/~/ часовой пояс 2879 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2880 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2881 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2882 + { 2883 + "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 - Срок действия правила истек 2884 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2885 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2886 + "additionalProp1": "string", 2887 + "additionalProp2": "string", 2888 + "additionalProp3": "string" 2889 + } 2890 + } 2891 + ] 2892 +} 2893 +))) 2894 + 2895 +((( 2896 + 2897 +))) 2898 + 2899 +((( 2900 + 2901 +))) 2902 + 2903 +Ответ: 2904 + 2905 +{ 2906 + "id": 0, ~/~/ ID правила 2907 + "type": 0, ~/~/ Шаблон события 0 - Въезд и выезд из геозоны, 2 - Превышение скорости, 4 - Слив, 5 - Заправка, 6 - Сработка тревожной кнопки, 7 - Потеря связи с объектом, 8 - Сработка дискретного датчика, 9 - Значение аналогового датчика, 10 - Адрес, 11 - Простой, 12 - Выполнение ТО, 13 - Назначение водителя 2908 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Пользователь, создавший правило 2909 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 2910 + "name": "string", ~/~/ Имя правила 2911 + "active": true, ~/~/ Активность правила 2912 + "vehicleSource": 0, ~/~/ Определяет вид источника объектов для анализа. Если значение равно 0, то объекты. Если значение равно 1, то группы объекто 2913 + "vehicleGroups": [ ~/~/ Список групп объектов для анализа. 2914 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ 2915 + ], 2916 + "vehicleIds": [ ~/~/ Список объектов для анализа. 2917 + 0 2918 + ], 2919 + "geoids": [ ~/~/ Список идентификаторов гео-объектов, в которых проводить анализ по объектам. 2920 + 0 2921 + ], 2922 + "fieldids": [ ~/~/ Список идентификаторов полей, в которых проводить анализ по объектам. 2923 + 0 2924 + ], 2925 + "settings": { ~/~/ Определяет класс расширенных параметров правила уведомлений. 2926 + "additionalProp1": "string", 2927 + "additionalProp2": "string", 2928 + "additionalProp3": "string" 2929 + }, 2930 + "toEmail": true, ~/~/ Флаг, что активна настройка "Отправка уведомлений на эл. почту пользователям системы" 2931 + "recipientIds": [ ~/~/ Список Guid пользователей, которым надо отправить сообщение на почту при срабатывании правила 2932 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 2933 + ], 2934 + "enableSideEmails": true, ~/~/ Флаг, что активна настройка "Отправка сообщений на эл. почту сторонним пользователям" 2935 + "sideEmails": [ ~/~/ Список электронных адресов для отсылки уведомлений 2936 + "string" 2937 + ], 2938 + "toTelegram": true, ~/~/ Флаг активности отправки в Telegram 2939 + "telegrams": [ ~/~/ Список получателя уведомлений в Telegram. 2940 + { 2941 + "id": 0, ~/~/ Идентификатор участника чата. 2942 + "info": "string" ~/~/ Дополнительные сведения. 2943 + } 2944 + ], 2945 + "toMobile": true, ~/~/ Флаг активности отправки в мобильное приложение 2946 + "toClient": true, ~/~/ Флаг активности отправки в интерфейсе системы 2947 + "stored": true, ~/~/ Определяет необходимость сохранять уведомления, производные от этого правила, в журнале истории уведомлений. 2948 + "kind": 0, ~/~/ Определяет вид уведомления (0 - Информация, 1 - Подтверждение) 2949 + "activationMode": 0, ~/~/ Вид активации правила (0 - сейчас, 1 - ко времени) 2950 + "activationTime": "2025-06-09T13:21:13.669Z", ~/~/ Дата/время активации правила (UTC) 2951 + "timezone": 0, ~/~/ часовой пояс 2952 + "validity": 0, ~/~/ Срок действия в днях (1-90). 2953 + "autoProlongation": true, ~/~/ Автопродление срока действия. 2954 + "templates": [ ~/~/ Переопределения шаблонов уведомлений. 2955 + { 2956 + "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 - Срок действия правила истек 2957 + "override": true, ~/~/ Определяет необходимость переопределения шаблона уведомления определенного типа. 2958 + "parameters": { ~/~/ Определяет параметры шаблона уведомлений. "subject" и "textcontent" определяют тему и тело сообщения по умолчанию, "subject_{langid}" и "textcontent_{langid}" определяет тему и тело сообщения для определенного языка, где langid - идентификатор языка. 2959 + "additionalProp1": "string", 2960 + "additionalProp2": "string", 2961 + "additionalProp3": "string" 2962 + } 2963 + } 2964 + ] 2965 +} 2966 + 2880 2880 == (% style="color:#000000; font-size:16px" %)**Запрос настроек уведомления**(%%) == 2881 2881 2882 2882 (% class="box infomessage" %) ... ... @@ -4094,16 +4094,12 @@ 4094 4094 Тело запроса: 4095 4095 4096 4096 { 4097 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4098 - "Balance": 0 4184 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4185 + "Balance": 0 ~/~/ Значение баланса. 4099 4099 } 4100 4100 4101 4101 Ответ: Success 4102 4102 4103 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4104 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4105 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4106 - 4107 4107 == (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) == 4108 4108 4109 4109 (% class="box warningmessage" %) ... ... @@ -4115,16 +4115,29 @@ 4115 4115 4116 4116 Тело запроса: 4117 4117 4201 +((( 4118 4118 { 4119 - " ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",4120 - " Balance": 04203 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4204 + "amount": 0 ~/~/ Сумма пополнения баланса 4121 4121 } 4206 +))) 4122 4122 4208 +((( 4209 + 4210 +))) 4211 + 4123 4123 Ответ: Success 4124 4124 4125 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4126 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4127 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4214 +((( 4215 +{ 4216 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки. 4217 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4218 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя. 4219 + "Moment": "2025-06-10T12:15:19.076Z", ~/~/ Время корректировки. 4220 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс. 4221 + "Description": "string" ~/~/ Описание корректировки. 4222 +} 4223 +))) 4128 4128 4129 4129 == (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) == 4130 4130 ... ... @@ -4137,16 +4137,25 @@ 4137 4137 4138 4138 Тело запроса: 4139 4139 4236 +((( 4140 4140 { 4141 - " ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",4142 - " Balance": 04238 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4239 + "amount": 0 ~/~/ Сумма списания с баланса 4143 4143 } 4241 +))) 4144 4144 4145 4145 Ответ: Success 4146 4146 4147 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4148 -|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента 4149 -|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса 4245 +((( 4246 +{ 4247 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор корректировки. 4248 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4249 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя. 4250 + "Moment": "2025-06-10T12:21:05.149Z", ~/~/ Время корректировки. 4251 + "Amount": 0, ~/~/ Значение, на которое корректируется баланс. 4252 + "Description": "string" ~/~/ Описание корректировки 4253 +} 4254 +))) 4150 4150 4151 4151 == (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) == 4152 4152 ... ... @@ -4157,28 +4157,35 @@ 4157 4157 4158 4158 Тело запроса: 4159 4159 4265 +((( 4160 4160 { 4161 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4162 - "CalculationType": 0, 4163 - "PermissibleBalance": 0, 4164 - "DefermentDays": 0, 4165 - "SendUiNotifications": true, 4166 - "SendEmailNotifications": true, 4167 - "IsPrivate": true, 4267 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4268 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни 4269 + "PermissibleBalance": 0, ~/~/ Допустимый баланс 4270 + "DefermentDays": 0, ~/~/ Отсрочка (дни). 4271 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено 4272 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено 4168 4168 } 4274 +))) 4169 4169 4276 +((( 4277 + 4278 +))) 4279 + 4170 4170 Ответ: Success 4171 4171 4172 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4173 -|ClientId|Идентификатор клиента 4174 -|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни 4175 -|PermissibleBalance|Допустимый баланс 4176 -|DefermentDays|((( 4177 -Отсрочка, количество дней 4282 +((( 4283 +{ 4284 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 4285 + "BlockingTime": "2025-06-10T12:23:28.754Z", ~/~/ Время, когда заблокируется клиент. 4286 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4287 + "CalculationType": 0, ~/~/ Определяет тип расчёта, 0 - Деньги, 1 - Дни 4288 + "PermissibleBalance": 0, ~/~/ Допустимый баланс. 4289 + "DefermentDays": 0, ~/~/ Отсрочка (дни) 4290 + "SendUiNotifications": true, ~/~/ Оповещение в web-интерфейсе, true - включено, false - выключено 4291 + "SendEmailNotifications": true ~/~/ Оповещение на почту, true - включено, false - выключено 4292 +} 4178 4178 ))) 4179 -|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено 4180 -|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено 4181 -|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом 4182 4182 4183 4183 == (% style="color:#000000; font-size:16px" %)**Изменить тариф клиента**(%%) == 4184 4184 ... ... @@ -4190,35 +4190,68 @@ 4190 4190 Тело запроса: 4191 4191 4192 4192 { 4193 - "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4194 - "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 4195 - "Features": [ 4305 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4306 + "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана. 4307 + "Features": [ ~/~/ Набор услуг по тарифу клиента. 4196 4196 { 4197 - "Feature": "string", 4198 - "IsEnabled": true, 4199 - "IsFactual": true, 4200 - "Limit": 0, 4201 - "Price": 0, 4202 - "DebitDate": "2023-10-18T13:26:58.987Z", 4203 - "PeriodValue": 0, 4204 - "PeriodType": 0 4309 + "Feature": "string", ~/~/ Код услуги. 4310 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга. 4311 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту. 4312 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование 4313 + "Price": 0, ~/~/ Цена за единицу. 4314 + "DebitDate": "2023-10-18T13:26:58.987Z", ~/~/ Следующий момент времени списания с баланса за услугу. 4315 + "PeriodValue": 0, ~/~/ Значение периода. 4316 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане ( 0 - Дни, 1 - Месяцы) 4205 4205 } 4206 4206 ] 4207 4207 } 4208 4208 4321 + 4209 4209 Ответ: Success 4210 4210 4211 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4212 -|ClientId|Идентификатор клиента 4213 -|PlanId|Идентификатор тарифного плана 4214 -|Feature|Код услуги 4215 -|IsEnabled|Признак, определяющий активирована ли услуга 4216 -|IsFactual|Признак, определяющий расчёт по факту 4217 -|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4218 -|Price|Цена за единицу. 4219 -|DebitDate|Следующий момент времени списания с баланса за услугу. 4220 -|PeriodValue|Значение периода. 4221 -|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы 4324 +((( 4325 +{ 4326 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 4327 + "Plan": { ~/~/ Определяет тарифный план (шаблон услуг) 4328 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор тарифного плана. 4329 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента-владельца. 4330 + "Name": "string", ~/~/ Наименование. 4331 + "IsArchived": true, ~/~/ Признак, определяющий архивный тарифный план. 4332 + "Constraint": { ~/~/ Ограничения по тарифу 4333 + "CalculationType": 0, ~/~/ Определяет тип расчёта (0 - деньги, 1 - дни) 4334 + "PermissibleBalance": 0, ~/~/ Допустимый баланс. 4335 + "DefermentDays": 0 ~/~/ Отсрочка (дни) 4336 + }, 4337 + "Features": [ ~/~/ Набор услуг по тарифному плану. 4338 + { 4339 + "Feature": "string", ~/~/Код услуги. 4340 + "IsFactual": true, ~/~/ Признак, определяющий возможность расчёта по факту. 4341 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4342 + "Price": 0, ~/~/ Цена за единицу. 4343 + "PeriodValue": 0, ~/~/ Значение периода. 4344 + "PeriodType": 0 ~/~/ Определяет тип периода действия услуги в тарифном плане. (0 - деньги, 1 - дни) 4345 + } 4346 + ], 4347 + "UserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор пользователя, создавшего тарифный план. 4348 + "Created": "2025-06-10T12:29:32.969Z", ~/~/ Дата создания тарифного плана. 4349 + "Deactivated": "2025-06-10T12:29:32.969Z" ~/~/ Дата деактивации тарифного плана. 4350 + }, 4351 + "Features": [ ~/~/ Набор услуг по тарифу клиента. 4352 + { 4353 + "Feature": "string", ~/~/ Код услуги. 4354 + "IsEnabled": true, ~/~/ Признак, определяющий активирована ли услуга. 4355 + "IsPrivate": true, ~/~/ Признак, определяющий, являются ли параметры по услуге тарифа частными т.е. персональными для клиента, либо определяются тарифным планом. 4356 + "IsFactual": true, ~/~/ Признак, определяющий расчёт по факту. 4357 + "Limit": 0, ~/~/ Лимит использования услуги. Значение -1 подразумевает безлимитное использование. 4358 + "Price": 0, ~/~/ Цена за единицу. 4359 + "DebitDate": "2025-06-10T12:29:32.969Z", ~/~/ Следующий момент времени списания с баланса за услугу. 4360 + "PeriodValue": 0, ~/~/ Значение периода. 4361 + "PeriodType": 0, ~/~/ Определяет тип периода действия услуги в тарифном плане. 4362 + "Quantity": 0 ~/~/ Количество использования услуги. 4363 + } 4364 + ] 4365 +} 4366 +))) 4222 4222 4223 4223 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) = 4224 4224 ... ... @@ -4323,6 +4323,43 @@ 4323 4323 |producedCount|Кол-во успешно отправленных в шину данных сообщений 4324 4324 |msgCount|Кол-во обработанных сообщений всего 4325 4325 4471 +== **Импортировать историю ТС (Асинхронный запрос)** == 4472 + 4473 +(% class="box successmessage" %) 4474 +((( 4475 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 4476 +))) 4477 + 4478 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4479 + 4480 +Метод запроса: **POST** 4481 + 4482 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 4483 + 4484 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 4485 + 4486 + 4487 +Ответ: 4488 + 4489 +{ 4490 + 4491 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4492 + 4493 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 4494 + 4495 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 4496 + 4497 + "Message": "string", ~/~/ Информация о выполнении запроса 4498 + 4499 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 4500 + 4501 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4502 + 4503 + "Data": "string" ~/~/ Данные 4504 + 4505 +} 4506 + 4507 + 4326 4326 == (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) == 4327 4327 4328 4328 (% class="box infomessage" %) ... ... @@ -4340,10 +4340,59 @@ 4340 4340 "message": "string" 4341 4341 } 4342 4342 4343 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 4344 -|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4345 -|progress|Guid ТС 4525 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)((( 4526 +**Параметр** 4527 +)))|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)((( 4528 +**Описание** 4529 +))) 4530 +|((( 4531 +activity 4532 +)))|((( 4533 +Активен ли экспорт/импорт истории сейчас, true - да, false - нет 4534 +))) 4535 +|((( 4536 +progress 4537 +)))|((( 4538 +Guid ТС 4539 +))) 4346 4346 4541 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 4542 + 4543 +(% class="box infomessage" %) 4544 +((( 4545 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 4546 +))) 4547 + 4548 +При выгрузке большого объема информации, выполняющихся более 90 секунд, рекомендуется использовать этот запрос. 4549 + 4550 +Метод запроса: **GET** 4551 + 4552 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 4553 + 4554 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 4555 + 4556 + 4557 +Ответ: 4558 + 4559 +{ 4560 + 4561 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 4562 + 4563 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 4564 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 4565 + 4566 + "Message": "string", ~/~/ Информация о выполнении запроса 4567 + 4568 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 4569 + 4570 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 4571 + 4572 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 4573 + 4574 + "Data": "string" ~/~/ Данные 4575 + 4576 +} 4577 + 4347 4347 == (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) == 4348 4348 4349 4349 (% class="box infomessage" %) ... ... @@ -5205,33 +5205,9 @@ 5205 5205 ))) 5206 5206 5207 5207 5208 -== **Удаление существующего поля** == 5209 - 5210 -(% class="box errormessage" %) 5211 5211 ((( 5212 -**DELETE /api/v3/agroLands/{id}** 5213 -))) 5214 - 5215 -Пример запроса: 5216 -id ~/~/ Идентификатор поля 5217 - 5218 -Пример ответа: 5219 - 5220 5220 ((( 5221 -200 ~/~/ Успех 5222 -))) 5223 - 5224 5224 ((( 5225 - 5226 -))) 5227 - 5228 -((( 5229 -((( 5230 -((( 5231 - 5232 -))) 5233 - 5234 -((( 5235 5235 == **Изменение поля** == 5236 5236 5237 5237 (% class="box infomessage" %) ... ... @@ -5477,9 +5477,102 @@ 5477 5477 "perimetr": 0, ~/~/ ериметр, м 5478 5478 "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5479 5479 } 5687 + 5688 + 5689 +== **Какие поля посещал объект** == 5690 + 5691 +(% class="box successmessage" %) 5692 +((( 5693 +**POST /api/v3/agroLands/visitingByVehicle** 5480 5480 ))) 5481 5481 5696 +Пример запроса: 5482 5482 5698 +{ 5699 + "vehicleId": 0, ~/~/ id объекта 5700 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 5701 + "byTime": 0, ~/~/ Объединение событий по времени 5702 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 5703 + "byDist": 0, ~/~/ Объединение событий по расстоянию 5704 + "from": "2025-07-29T12:20:28.815Z", ~/~/ Начало периода (локальное время клиента) 5705 + "to": "2025-07-29T12:20:28.815Z", ~/~/ Конец периода (локальное время клиента) 5706 + "timezone": 0 ~/~/ Таймзона клиента, в часах. Если не передана - то считается как +3, MSK 5707 +} 5708 + 5709 +Пример ответа: 5710 + 5711 +[ 5712 + { 5713 + "fieldId": 0, ~/~/ id объекта 5714 + "vehicleName": "string", ~/~/ Наименование объекта 5715 + "fieldName": "string", ~/~/ Наименование поля 5716 + "fuelUsage": 0, ~/~/ Расход топлива, л/га 5717 + "area": 0, ~/~/ Пройдено, га (информация из встроенного агрегата в модели объекта при наличии агрегата) 5718 + "vehicleId": 0, ~/~/ Идентификатор ТС 5719 + "start": "2025-07-29T12:20:28.855Z", ~/~/ Начало посещения 5720 + "end": "2025-07-29T12:20:28.855Z", ~/~/ Конец посещения 5721 + "durationSeconds": 0, ~/~/ Продолжительность посещения внутри поля 5722 + "mileage": 0 ~/~/ Пробег 5723 + } 5724 +] 5725 +))) 5726 + 5727 + 5728 +== **Посещение поля объектами ** == 5729 + 5730 +(% class="box successmessage" %) 5731 +((( 5732 +**POST /api/v3/agroLands/visitingByField** 5733 +))) 5734 + 5735 +Пример запроса: 5736 +{ 5737 + "fieldId": 0, ~/~/ ID поля 5738 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 5739 + "byTime": 0, ~/~/ Объединение событий по времени 5740 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 5741 + "byDist": 0, ~/~/ Объединение событий по расстоянию 5742 + "from": "2025-07-29T11:44:28.218Z", ~/~/ Начало периода (локальное время клиента) 5743 + "to": "2025-07-29T11:44:28.218Z", ~/~/ Конец периода (локальное время клиента) 5744 + "timezone": 0 ~/~/ Таймзона клиента, в часах. Если не передана - то считается как +3, MSK 5745 +} 5746 + 5747 +Пример ответа: 5748 + 5749 +[ 5750 + { 5751 + "fieldId": 0, ~/~/ ID поля 5752 + "vehicleName": "string", ~/~/ Наименование объекта 5753 + "fieldName": "string", ~/~/ Имя поля 5754 + "fuelUsage": 0, ~/~/ Расход топлива, л/га 5755 + "area": 0, ~/~/ Пройдено, га (информация из встроенного агрегата в модели объекта при наличии агрегата) 5756 + "vehicleId": 0, ~/~/ Идентификатор ТС 5757 + "start": "2025-07-29T11:44:28.219Z", ~/~/ Начало посещения 5758 + "end": "2025-07-29T11:44:28.219Z", ~/~/ Конец посещения 5759 + "durationSeconds": 0, ~/~/ Продолжительность посещения внутри поля 5760 + "mileage": 0 ~/~/ Пробег 5761 + } 5762 +] 5763 + 5764 + 5765 +== **Удаление существующего поля** == 5766 + 5767 +(% class="box errormessage" %) 5768 +((( 5769 +**DELETE /api/v3/agroLands/{id}** 5770 +))) 5771 + 5772 +Пример запроса: 5773 +id ~/~/ Идентификатор поля 5774 + 5775 +Пример ответа: 5776 + 5777 +((( 5778 +200 ~/~/ Успех 5779 + 5780 + 5781 +))) 5782 + 5483 5483 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5484 5484 ))) 5485 5485 ))) ... ... @@ -5904,49 +5904,129 @@ 5904 5904 ))) 5905 5905 5906 5906 6207 += **Раздел: Роли** = 6208 + 6209 +== **Получение списка клиентских и системных ролей пользователя ** == 6210 + 6211 +(% class="box successmessage" %) 6212 +((( 6213 +**POST /api/v3/groups/find** 6214 +))) 6215 + 6216 +Пример запроса: 6217 + 6218 +((( 6219 +{ 6220 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента содержащий пользовательские роли 6221 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор родительского элемента пользователей 6222 +} 6223 +))) 6224 + 6225 +((( 6226 + 6227 +))) 6228 + 6229 +((( 6230 +Пример ответа: 6231 +))) 6232 + 6233 +((( 6234 +((( 6235 +{ 6236 + "groups": [ ~/~/ Системные роли пользователя 6237 + { 6238 + "code": "string", ~/~/ Код роли. 6239 + "name": "string", ~/~/ Имя 6240 + "shortName": "string" ~/~/ Короткое имя 6241 + } 6242 + ], 6243 + "customGroups": [ ~/~/ Системные роли пользователя 6244 + { 6245 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор роли. 6246 + "name": "string", ~/~/ Наименование 6247 + "shortName": "string", ~/~/ Короткое наименование 6248 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор владельца 6249 + } 6250 + ] 6251 +} 6252 +))) 6253 +))) 6254 + 6255 +((( 6256 + 6257 +))) 6258 + 6259 +((( 6260 + 6261 +))) 6262 + 5907 5907 = **Раздел: Локатор ** = 5908 5908 5909 5909 5910 -== **Получение списка локаторов,доступных пользователю** ==6266 +== **Получение данных по локатору** == 5911 5911 5912 5912 (% class="box infomessage" %) 5913 5913 ((( 5914 -**GET /api/v3/locators** 6270 +**GET /api/v3/locators/{locatorId}** 5915 5915 ))) 5916 5916 5917 -В за головкахзапроса:X-Auth:Токен авторизации6273 +В запросе указывается locatorid - идентификатор локатора 5918 5918 5919 5919 5920 5920 Пример ответа: 5921 5921 5922 5922 ((( 5923 -[ 5924 - { 5925 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 5926 - "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 5927 - "agentName": "string", ~/~/ Наименование агента. 5928 - "isEnabled": true, ~/~/ Активен 5929 - "created": "2025-03-12T06:48:41.254Z", ~/~/ Дата создания 5930 - "updated": "2025-03-12T06:48:41.254Z", ~/~/ Дата обновления 5931 - "name": "string", ~/~/ Наименование 5932 - "status": 0, ~/~/ 5933 - "activationMode": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 5934 - "activationTime": "2025-03-12T06:48:41.254Z", ~/~/ Определяет вид активации локаторов. ( 0 - сейчас, 1 - время активации) 5935 - "validity": 0, ~/~/ Срок действия в днях (1-90). 5936 - "autoProlongation": true, ~/~/ Автопродление срока действия. 5937 - "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 5938 - "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 5939 - "url": "string", ~/~/ Ссылка 5940 - "language": 0, ~/~/ Язык. 5941 - "vehiclesCount": 0, ~/~/ Количество объектов. 5942 - "geozonesCount": 0, ~/~/ Количество геозон. 5943 - "fieldsCount": 0 ~/~/ Количество полей. 5944 - } 5945 -] 6279 +((( 6280 +{ 6281 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6282 + 0 6283 + ], 6284 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6285 + 0 6286 + ], 6287 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6288 + 0 6289 + ], 6290 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 6291 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 6292 + "agentName": "string", ~/~/ Наименование агента. 6293 + "isEnabled": true, ~/~/ Активность 6294 + "created": "2025-05-26T11:31:05.399Z", ~/~/ Дата создания 6295 + "updated": "2025-05-26T11:31:05.399Z", ~/~/ Дата обновления 6296 + "name": "string", ~/~/ Наименование. 6297 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 6298 + "activationMode": 0, ~/~/ Определяет вид активации локаторов ( 0 - сейчас, 1 - запланировать на время) 6299 + "activationTime": "2025-05-26T11:31:05.399Z", ~/~/ Время активации 6300 + "validity": 0, ~/~/ Значение срока действия 6301 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 6302 + "autoProlongation": true, ~/~/ Автопродление срока действия. 6303 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 6304 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 6305 + "url": "string", ~/~/ Ссылка 6306 + "language": 0, ~/~/ ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6307 + 6308 + "showVehicleName": true, ~/~/ Наименование объекта 6309 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6310 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6311 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6312 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6313 + "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ГИС) 6314 + 6315 + 1 6316 + 6317 + ] 6318 +} 5946 5946 ))) 6320 +))) 5947 5947 5948 5948 6323 +((( 6324 +((( 6325 + 6326 +))) 6327 +))) 5949 5949 6329 + 5950 5950 == **Создание локатора** == 5951 5951 5952 5952 (% class="box successmessage" %) ... ... @@ -5958,7 +5958,6 @@ 5958 5958 5959 5959 ((( 5960 5960 { 5961 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 5962 5962 "isEnabled": true, ~/~/ Активность 5963 5963 "name": "string", ~/~/ Наименование локатора 5964 5964 "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) ... ... @@ -5965,8 +5965,28 @@ 5965 5965 "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 5966 5966 "validity": 0, ~/~/ Срок действия в днях (1-90) 5967 5967 "autoProlongation": true, ~/~/ Автопродление срока действия. 5968 - "url": "string", ~/~/ Ссылка 5969 - "language": 0 ~/~/ Язык 6347 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6348 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор клиента. 6349 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6350 + 0 6351 + ], 6352 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6353 + 0 6354 + ], 6355 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6356 + 0 6357 + ], 6358 + 6359 + "showVehicleName": true, ~/~/ Наименование объекта 6360 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6361 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6362 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6363 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6364 + "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ГИС) 6365 + 6366 + 1 6367 + 6368 + ] 5970 5970 } 5971 5971 ))) 5972 5972 ... ... @@ -5978,7 +5978,69 @@ 5978 5978 ))) 5979 5979 5980 5980 6380 +== **Выводит список локаторов ** == 5981 5981 6382 +(% class="box successmessage" %) 6383 +((( 6384 +**POST /api/v3/locators/find** 6385 +))) 6386 + 6387 +Пример запроса: 6388 + 6389 +((( 6390 +{ 6391 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор клиента 6392 +} 6393 +))) 6394 + 6395 +((( 6396 + 6397 +))) 6398 + 6399 +((( 6400 + 6401 +))) 6402 + 6403 + 6404 +Пример ответа: 6405 + 6406 +((( 6407 +[ 6408 + { 6409 + "vehiclesCount": 0, ~/~/ Количество объектов. 6410 + "geozonesCount": 0, ~/~/ Количество геозон. 6411 + "fieldsCount": 0, ~/~/ Количество полей. 6412 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 6413 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 6414 + "agentName": "string", ~/~/ Наименование агента. 6415 + "isEnabled": true, ~/~/ Активность локатора 6416 + "created": "2025-07-03T12:57:58.738Z", ~/~/ Дата создания 6417 + "updated": "2025-07-03T12:57:58.738Z", ~/~/ Дата обновления 6418 + "name": "string", ~/~/ Наименование локатора 6419 + "status": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 6420 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 6421 + "activationTime": "2025-07-03T12:57:58.738Z", ~/~/ Дата и время активации правила (UTC) 6422 + "validity": 0, ~/~/ Срок действия в днях (1-90) 6423 + "validityType": 0, ~/~/ Тип значения срока действия (Дни = 0, Часы = 1, Минуты = 2) 6424 + "autoProlongation": true, ~/~/ Автоматическая пролонгация 6425 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 6426 + "creatorUserName": "string", ~/~/ Наименование пользователя создавшего локатора 6427 + "url": "string", ~/~/ ссылка на локатор 6428 + "language": 1, ~/~/ Язык локатора(1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6429 + "showVehicleName": true, ~/~/ Наименование объекта 6430 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6431 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6432 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6433 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6434 + "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ГИС) 6435 + 6436 + 0 6437 + ] 6438 + } 6439 +] 6440 +))) 6441 + 6442 + 5982 5982 == **Изменение локатора** == 5983 5983 5984 5984 (% class="box infomessage" %) ... ... @@ -5997,12 +5997,31 @@ 5997 5997 "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 5998 5998 "validity": 0, ~/~/ Срок действия в днях (1-90) 5999 5999 "autoProlongation": true, ~/~/ Автопродление срока действия 6000 - "url": "string", ~/~/ Ссылка 6001 - "language": 0 ~/~/ Язык 6461 + "language": 1 ~/~/ Язык (1- Русский, 2- Английский, 3- Азербайджанский, 4 - Испанский) 6462 + "vehiclesIds": [ ~/~/ ID объектов отображающихся в локаторе, записываются через запятую 6463 + 0 6464 + ], 6465 + "geoIds": [ ~/~/ ID геозон отображающихся в локаторе, записываются через запятую 6466 + 0 6467 + ], 6468 + "fieldsIds": [ ~/~/ ID полей отображающихся в локаторе, записываются через запятую 6469 + 0 6470 + ], 6471 + "showVehicleName": true, ~/~/ Наименование объекта 6472 + "showVehicleDirection": true, ~/~/ Показывать направление движения объекта на карте 6473 + "allowTrackReport": true, ~/~/ отображение колонки и кнопок **Построить историю за сутки** 6474 + "showTrackTracing": true, ~/~/ Отображение трассировки трека на карте по ссылке. 6475 + "showSensors": true, ~/~/ Отображение заведенных датчиков на объектах 6476 + "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ГИС) 6477 + 6478 + 0 6479 + 6480 + ] 6002 6002 } 6482 + 6483 + 6003 6003 ))) 6004 6004 6005 - 6006 6006 Пример ответа: 6007 6007 6008 6008 200 ~/~/ Success ... ... @@ -6024,7 +6024,6 @@ 6024 6024 ))) 6025 6025 6026 6026 6027 - 6028 6028 = **Раздел: Яндекс Маршруты** = 6029 6029 6030 6030 ... ... @@ -6038,7 +6038,6 @@ 6038 6038 Пример запроса: 6039 6039 Id ~/~/ Идентификатор поля 6040 6040 6041 - 6042 6042 Пример ответа: 6043 6043 6044 6044 ((( ... ... @@ -6056,7 +6056,6 @@ 6056 6056 ))) 6057 6057 6058 6058 6059 - 6060 6060 == **Добавить маршрут** == 6061 6061 6062 6062 (% class="box infomessage" %) ... ... @@ -6111,7 +6111,6 @@ 6111 6111 } 6112 6112 ))) 6113 6113 6114 - 6115 6115 Пример ответа: 6116 6116 6117 6117 ((( ... ... @@ -6142,7 +6142,6 @@ 6142 6142 ] 6143 6143 ))) 6144 6144 6145 - 6146 6146 Пример ответа: 6147 6147 6148 6148 ((( ... ... @@ -6166,8 +6166,6 @@ 6166 6166 Id ~/~/ Идентификатор поля 6167 6167 6168 6168 6169 -==== ==== 6170 - 6171 6171 = **Раздел: Управление доступа к машинам** = 6172 6172 6173 6173 ... ... @@ -6189,7 +6189,6 @@ 6189 6189 ))) 6190 6190 6191 6191 6192 - 6193 6193 == Задает видимость транспортных средств пользователю == 6194 6194 6195 6195 (% class="box infomessage" %) ... ... @@ -6214,10 +6214,6 @@ 6214 6214 ))) 6215 6215 6216 6216 ((( 6217 - 6218 -))) 6219 - 6220 -((( 6221 6221 Пример ответа : 6222 6222 ))) 6223 6223 ... ... @@ -6231,10 +6231,6 @@ 6231 6231 ))) 6232 6232 6233 6233 6234 - 6235 - 6236 - 6237 - 6238 6238 (% class="box" lang="en-US" style="text-align: center;" %) 6239 6239 ((( 6240 6240 (% 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]] **