Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/03/12 10:28
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Artem1 +XWiki.krainovim - Tags
-
... ... @@ -1,1 +1,1 @@ 1 -Public API 1 +Public API|API - Content
-
... ... @@ -20,20 +20,27 @@ 20 20 (% style="color:#000000; font-size:14pt" %)**Раздел Авторизация** 21 21 ))) 22 22 23 -(% class="box infomessage" %)23 +(% class="box successmessage" %) 24 24 ((( 25 - (% style="color:#000000; line-height:100%" %)**Авторизация **(% style="color:#000000" %)**— **(% lang="en-US" %)** GET25 + (% style="color:#000000; line-height:100%" %)**Авторизация **(% style="color:#000000" %)**— **(% lang="en-US" %)**POST /api/v3/auth/login** 26 26 ))) 27 27 28 28 (% style="color:#000000" %) Метод позволяет получить токен авторизации, который необходимо добавлять в заголовок для работы со всеми методами API. В параметрах метода передается имя пользователя и пароль. 29 29 30 -(% style="color:#000000" %)Метод запроса: ** GET**30 +(% style="color:#000000" %)Метод запроса: **POST** 31 31 32 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/auth/login ?username=demo&password=demo>>url:https://hosting.glonasssoft.ru/api/v3/auth/login?username=demo&password=demo]]32 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/auth/login>>https://hosting.glonasssoft.ru/api/v3/auth/login]] 33 33 34 34 (% style="color:#000000" %)В случае успешного выполнения метода, поле «__**AuthId**__» содержит токен авторизации «__**X-Auth**__». 35 35 36 -(% lang="en-US" %) 36 +(% style="color:#000000" %)Параметры в теле запроса (JSON): 37 + 38 +(% style="color:#000000" %){ 39 + "login": "testuser", 40 + "password": "testuser" 41 +}(%%) 42 + 43 + 37 37 (% style="color:#000000" %)**Ответ:** 38 38 39 39 (% lang="en-US" %) ... ... @@ -40,8 +40,8 @@ 40 40 (% style="color:#000000" %){ 41 41 42 42 (% lang="en-US" %) 43 -(% style="color:#000000" %) "AuthId": "" , ~/~/ токен авторизации 44 - "User": "" , ~/~/ имя пользователя 50 +(% style="color:#000000" %) "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 51 + "User": "testuser" , ~/~/ имя пользователя 45 45 46 46 (% lang="en-US" %) 47 47 } ... ... @@ -296,7 +296,7 @@ 296 296 (% style="color:#000000" %)**Изменение статуса пользователя**// //**— **(% lang="en-US" %)**PUT /api/v3/users/status/{id}** 297 297 ))) 298 298 299 -(% style="color:#000000" %) Метод позволяет изменить статус пользователя . Метод позволяет изменить статус пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации **«__X-Auth__»**).306 +(% style="color:#000000" %) Метод позволяет изменить статус пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации **«__X-Auth__»**). 300 300 301 301 (% style="color:#000000" %)Метод запроса: **PUT** 302 302 ... ... @@ -320,6 +320,61 @@ 320 320 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»** 321 321 322 322 330 +(% class="box warningmessage" %) 331 +((( 332 +**Блокировка пользователей** (% style="color:#000000; line-height:100%" %)**— POST /api/v3/users/disable** 333 +))) 334 + 335 +Метода позволяет выполнить массовую блокировку пользователей (% style="color:#000000" %)(обязательный параметр в заголовках запроса - токен авторизации **«__X-Auth__»**). 336 + 337 +(% style="color:#000000" %)Метод запроса: (% style="color:#000000; line-height:100%" %)**POST** 338 + 339 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/users/disable>>https://hosting.glonasssoft.ru/api/v3/users/disable]] 340 + 341 +(% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 342 + 343 + [ 344 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 345 + "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 346 + ] 347 + 348 +(% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»** 349 + 350 + 351 +(% class="box warningmessage" %) 352 +((( 353 +**Разблокировка пользователей** (% style="color:#000000; line-height:100%" %)**— POST /api/v3/users/enable** 354 +))) 355 + 356 +Метода позволяет выполнить массовую разблокировку пользователей (% style="color:#000000" %)(обязательный параметр в заголовках запроса - токен авторизации **«__X-Auth__»**). 357 + 358 +(% style="color:#000000" %)Метод запроса: (% style="color:#000000; line-height:100%" %)**POST** 359 + 360 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/users/enable>>https://hosting.glonasssoft.ru/api/v3/users/enable]] 361 + 362 +(% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 363 + 364 + [ 365 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 366 + "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 367 + ] 368 + 369 +(% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»**(%%) 370 +\\(% style="color:#000000" %)__Для двух, описанных выше, методов если не получилось выполнить включение или отключение некоторых пользователей из переданного списка возвращается ответ - 206 Partial Content__ 371 + 372 +В теле ответа: 373 +{ 374 + "errorMessages": [ 375 + "Agent 0f8c2a8b-4b71-48d0-b780-341053089874 cannot access to object Agents d493fd88-60c8-465d-afad-912f5ac9d719." 376 + ], 377 + "users": [ 378 + "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 379 + ] 380 +} 381 +\\\\"errorMessages" - массив ошибок, из-за которых не выполнилось действие с пользователями. 382 +"users" - массив id пользователей, которых не удалось включить или отключить. 383 + 384 + 323 323 (% class="box errormessage" %) 324 324 ((( 325 325 (% style="color:#000000; line-height:100%" %)**Удаление пользователя — **(% lang="en-US" %)**DELETE /api/v3/users/{id}** ... ... @@ -367,21 +367,76 @@ 367 367 368 368 (% style="color:#000000" %)Ответ: 369 369 370 - (% style="color:#000000" %){432 +{ 371 371 372 - "vehicleId": "" , ~/~/ идентификатор объекта 373 - "name": "" , ~/~/ имя объекта 374 - "imei": "" , ~/~/ IMEI объекта 375 - "deviceTypeId": "" , ~/~/ идентификатор устройства объекта 376 - "deviceTypeName": "" , ~/~/ наименование устройства объекта 377 - "parentId": "" , ~/~/ идентификатор клиента-родителя 378 - "parentName": "" , ~/~/ наименование клиента-родителя, 379 - "modelId": "" , ~/~/ идентификатор модели объекта 380 - "modelName": "" , ~/~/ наименование модели объекта, 381 - "unitId": "" , ~/~/ идентификатор подразделения 382 - "unitName": "" , ~/~/ наименование подразделения 383 - "status": "" , ~/~/ статус объекта 434 + "vehicleId": "", ~/~/ ID объекта 384 384 436 + "name": "", ~/~/ Имя объекта 437 + 438 + "imei": "", ~/~/ IMEI объекта 439 + 440 + "deviceTypeId": , ~/~/ ID типа устройства 441 + 442 + "deviceTypeName": "", ~/~/ Название типа устройства 443 + 444 + "sim1": "", ~/~/ Номер SIM1 445 + 446 + "parentId": "", Номер SIM2 447 + 448 + "parentName": "", (% style="color:#000000" %)Наименование клиента-родителя 449 + 450 + "modelId": "", ID модели объекта 451 + 452 + "modelName": "", Имя модели объекта 453 + 454 + "createdAt": "", Дата создания объекта 455 + 456 + "mileageCalcMethod": "", Выбранный метод расчета пробега 457 + 458 + "counters": { ~/~/ Нормы 459 + 460 + "mileageEnabled": "", ~/~/ Флаг активности счётчика "Пробег" (true - включен, false - отключен) 461 + 462 + "motohoursEnabled": "", ~/~/ флаг активности счётчика "Моточасы" (true - включен, false - отключен) 463 + 464 + "mileage": "", ~/~/ Пробег по нормам в метрах 465 + 466 + "motohours": "" ~/~/ Моточасы по нормам, в секундах 467 + 468 + }, 469 + 470 + "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 471 + 472 + { 473 + 474 + "id": "", ~/~/ ID задания 475 + 476 + "enabled": "", ~/~/ Флаг активности задания 477 + 478 + "name": "", ~/~/ Наименование задания 479 + 480 + "description": "", ~/~/ Описание задания 481 + 482 + "mileageCondition": "", ~/~/ Условие по пробегу (в метрах, null - условие не работает) 483 + 484 + "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО (null - неважно) 485 + 486 + "motohoursCondition": "", ~/~/ Условие по моточасам (в секундах, null - условие не работает) 487 + 488 + "lastMotohours": "", ~/~/ Моточасы (в секундах) на момент последнего ТО (null - неважно) 489 + 490 + "periodicCondition": "", ~/~/ Условие периодичности по времени (null - условие не работает) 491 + 492 + "kind": "", ~/~/ Вид периодичности по времени (дни - Days, месяцы - Months, года - Years, null - условие не работает) 493 + 494 + "lastInspectionDate": "" ~/~/ Дата последнего ТО (null - не указано) 495 + 496 + "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 497 + 498 + } 499 + 500 + ] 501 + 385 385 } 386 386 387 387 (% style="text-align:left" %) ... ... @@ -418,12 +418,22 @@ 418 418 "sim2": "" , ~/~/ Номер SIM2 419 419 "consumptionPer100Km": "" , ~/~/ Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено) 420 420 "consumptionPerHour": "" , ~/~/ Расход топлива за моточас (если заполнено, то consumptionPer100Km не может быть заполнено) 421 - "consumptionIdle": "" , ~/~/ Расход топлива на холостом ходу 422 - "counters": { 423 - "mileage": "" , ~/~/ пробег 424 - "mileageEnabled": true, ~/~/ флаг активности счётчика "пробег" 425 - "motohours": "" , ~/~/ моточасы 426 - "motohoursEnabled": true ~/~/ флаг активности счётчика "моточасы" 538 + "consumptionIdle": "" , ~/~/ Расход топлива на холостом ходу 539 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 540 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 541 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 542 + "consumptionPer100KmSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 543 + "consumptionPer100KmSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 544 + "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 545 + "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 546 + "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 547 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 548 + "counters": ~/~/ счетчики 549 + { 550 + "mileage": "" , ~/~/ пробег 551 + "mileageEnabled": true, ~/~/ флаг активности счётчика "пробег" 552 + "motohours": "" , ~/~/ моточасы 553 + "motohoursEnabled": true ~/~/ флаг активности счётчика "моточасы" 427 427 }, 428 428 "cmsv6Parameters": { ~/~/ параметры CMSv6 429 429 "enabled": true, ~/~/ флаг включения ... ... @@ -494,7 +494,12 @@ 494 494 (% style="text-align:left" %) 495 495 (% style="color:#000000" %)} 496 496 624 +**Валидация:** 625 +- сезонный параметр может быть задан только если задана соответствующая обычная норма; 626 +- сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 627 +- при задании сезонной нормы обязательны соответствующие даты начала/окончания. 497 497 629 + 498 498 (% class="box successmessage" %) 499 499 ((( 500 500 (% style="color:#000000; line-height:100%" %)**Получение параметров объектов — **(% lang="en-US" %)**POST /api/v3/vehicles/find** ... ... @@ -629,6 +629,7 @@ 629 629 630 630 (% style="color:#000000" %){ 631 631 764 +((( 632 632 (% style="color:#000000" %) "vehicleId": "", ~/~/ ID ТС 633 633 "parentId": "", ~/~/ ID клиента 634 634 "name": "", ~/~/ имя ТС ... ... @@ -637,15 +637,25 @@ 637 637 "modelId": "", ~/~/ , ID модели 638 638 "unitId": "", ~/~/ подразделения 639 639 "sim1": "", ~/~/ SIM 1 640 - "sim2": "", ~/~/ SIM2 641 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 642 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 643 - "counters": 773 + "sim2": "", ~/~/ SIM2 (%%) 774 + "consumptionPer100Km": "" , ~/~/ Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено) 775 + "consumptionPerHour": "" , ~/~/ Расход топлива за моточас (если заполнено, то consumptionPer100Km не может быть заполнено) 776 + "consumptionIdle": "" , ~/~/ Расход топлива на холостом ходу 777 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 778 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 779 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 780 + "consumptionPer100KmSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 781 + "consumptionPer100KmSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 782 + "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 783 + "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 784 + "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 785 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 786 +(% style="color:#000000" %) "counters": 644 644 { 645 645 "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 646 646 "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 647 - "mileage": «», пробег648 - "motohours": «»моточасы790 + "mileage": "", ~/~/ пробег, в метрах 791 + "motohours": "" ~/~/ моточасы, в секундах 649 649 } 650 650 "cmsv6Parameters": ~/~/ параметры CMSv6 651 651 { ... ... @@ -669,6 +669,7 @@ 669 669 "kind": "", ~/~/ Вид периодичности по времени 670 670 "maxQuantity": "", ~/~/ Сколько раз выполнить задание 671 671 } 815 +))) 672 672 673 673 (% style="color:#000000" %)} 674 674 ... ... @@ -722,7 +722,12 @@ 722 722 (% lang="en-US" style="text-align:left" %) 723 723 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 724 724 869 +**валидация:** 870 +- сезонный параметр может быть задан только если задана соответствующая обычная норма; 871 +- сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 872 +- при задании сезонной нормы обязательны соответствующие даты начала/окончания. 725 725 874 + 726 726 (% class="box errormessage" %) 727 727 ((( 728 728 (% style="color:#000000; line-height:100%" %)**Удаление объекта — **(% lang="en-US" %)**DELETE /api/v3/vehicles/{vehicleId}**