Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/02/25 16:35
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Content
-
... ... @@ -1,7 +1,6 @@ 1 1 (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %) 2 2 == Описание ГЛОНАССSoft Public API 3.0 == 3 3 4 -== == 5 5 6 6 (% class="box" style="text-align: center;" %) 7 7 ((( ... ... @@ -111,6 +111,148 @@ 111 111 } 112 112 113 113 113 +(% class="box successmessage" %) 114 +((( 115 +**Добавление клиента — POST /api/v3/agents ** 116 +))) 117 + 118 +Метод позволяет добавить клиента, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «**X-Auth**»). 119 + 120 +Метод запроса: **POST** 121 + 122 +URL запроса: [[https:~~/~~/hosting.glonasssoft.ru/api/v3/agents>>https://hosting.glonasssoft.ru/api/v3/agents]] 123 + 124 +В заголовках запроса: X-Auth: Токен авторизации 125 + 126 +Параметры в теле запроса (JSON): 127 + 128 +{ 129 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 130 + "name": "string", ~/~/ имя 131 + "fullName": "string", ~/~/ полное наименование 132 + "isForeign": true, ~/~/ иностранный контрагент 133 + "district": "string", ~/~/ округ 134 + "region": "string", ~/~/ регион 135 + "city": "string", ~/~/ город 136 + "inn": "string", ~/~/ ИНН 137 + "kpp": "string", ~/~/ КПП 138 + "address": "string", ~/~/ юридический адрес 139 + "addressFact": "string", ~/~/ фактический адрес 140 + "email": "string", ~/~/ email 141 + "director": "string", ~/~/ ФИО руководителя 142 + "bankName": "string", ~/~/ банк 143 + "bankBIK": "string", ~/~/ БИК 144 + "bankRS": "string", ~/~/ номер счёта 145 + "bankKS": "string" ~/~/ корр. счёт 146 +} 147 + 148 + 149 +Ответ: 150 + 151 +{ 152 + "agentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента 153 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 154 + "name": "string", ~/~/ имя 155 + "fullName": "string", ~/~/ полное наименование 156 + "isForeign": true, ~/~/ иностранный контрагент 157 + "district": "string", ~/~/ округ 158 + "region": "string", ~/~/ регион 159 + "city": "string", ~/~/ город 160 + "inn": "string", ~/~/ ИНН 161 + "kpp": "string", ~/~/ КПП 162 + "address": "string", ~/~/ юридический адрес 163 + "addressFact": "string", ~/~/ фактический адрес 164 + "email": "string", ~/~/ email 165 + "director": "string", ~/~/ ФИО руководителя 166 + "bankName": "string", ~/~/ банк 167 + "bankBIK": "string", ~/~/ БИК 168 + "bankRS": "string", ~/~/ номер счёта 169 + "bankKS": "string" ~/~/ корр. счёт 170 +} 171 + 172 + 173 +(% class="box warningmessage" %) 174 +((( 175 +**Редактирование клиента — PUT /api/v3/agents** 176 +))) 177 + 178 +Метод позволяет отредактировать клиента, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «**X-Auth**»). 179 + 180 +Метод запроса: **PUT** 181 + 182 +URL запроса: [[https:~~/~~/hosting.glonasssoft.ru/api/v3/agents>>https://hosting.glonasssoft.ru/api/v3/agents]] 183 + 184 +В заголовках запроса: X-Auth: Токен авторизации 185 + 186 + 187 +Параметры в теле запроса (JSON): 188 + 189 +{ 190 + "agentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента 191 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 192 + "name": "string", ~/~/ имя 193 + "fullName": "string", ~/~/ полное наименование 194 + "isForeign": true, ~/~/ иностранный контрагент 195 + "district": "string", ~/~/ округ 196 + "region": "string", ~/~/ регион 197 + "city": "string", ~/~/ город 198 + "inn": "string", ~/~/ ИНН 199 + "kpp": "string", ~/~/ КПП 200 + "address": "string", ~/~/ юридический адрес 201 + "addressFact": "string", ~/~/ фактический адрес 202 + "email": "string", ~/~/ email 203 + "director": "string", ~/~/ ФИО руководителя 204 + "bankName": "string", ~/~/ банк 205 + "bankBIK": "string", ~/~/ БИК 206 + "bankRS": "string", ~/~/ номер счёта 207 + "bankKS": "string" ~/~/ корр. счёт 208 +} 209 + 210 + 211 +Ответ: 212 + 213 +{ 214 + "agentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента 215 + "parentId": "00000000-0000-0000-0000-000000000000", ~/~/ идентификатор клиента-родителя 216 + "name": "string", ~/~/ имя 217 + "fullName": "string", ~/~/ полное наименование 218 + "isForeign": true, ~/~/ иностранный контрагент 219 + "district": "string", ~/~/ округ 220 + "region": "string", ~/~/ регион 221 + "city": "string", ~/~/ город 222 + "inn": "string", ~/~/ ИНН 223 + "kpp": "string", ~/~/ КПП 224 + "address": "string", ~/~/ юридический адрес 225 + "addressFact": "string", ~/~/ фактический адрес 226 + "email": "string", ~/~/ email 227 + "director": "string", ~/~/ ФИО руководителя 228 + "bankName": "string", ~/~/ банк 229 + "bankBIK": "string", ~/~/ БИК 230 + "bankRS": "string", ~/~/ номер счёта 231 + "bankKS": "string" ~/~/ корр. счёт 232 +} 233 + 234 + 235 +(% class="box errormessage" %) 236 +((( 237 +**Удаление клиента — DELETE /api/v3/agents/{clientId}** 238 +))) 239 + 240 + 241 +Метод позволяет удалить клиента, указанного в строке запроса (обязательный параметр в заголовках запроса - токен авторизации «**X-Auth**»). 242 + 243 +Метод запроса: **DELETE** 244 + 245 +URL запроса: [[https:~~/~~/hosting.glonasssoft.ru/api/v3/agents/>>https://hosting.glonasssoft.ru/api/v3/agents/]]**{clientId}** 246 + 247 +Параметр запроса: **{clientId}** - Guid пользователя 248 + 249 +В заголовках запроса: X-Auth: Токен авторизации 250 + 251 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 252 + 253 + 254 + 114 114 (% class="box" style="text-align: center;" %) 115 115 ((( 116 116 (% style="color:#000000; font-size:14pt" %)**Раздел Пользователи** ... ... @@ -137,9 +137,9 @@ 137 137 "position": "", ~/~/ должность 138 138 "phone": "", ~/~/ телефон 139 139 "organization": "", ~/~/ организация 140 - "login": "", ~/~/ логин 141 - "password": "", ~/~/ пароль ( при добавлении - обязателен, при редактировании, если null - менять пароль не надо)142 - "email": "", ~/~/ email 281 + "login": "", ~/~/ логин (обязателен) 282 + "password": "", ~/~/ пароль (обязателен) 283 + "email": "", ~/~/ email (обязателен) 143 143 "description": "", ~/~/ описание 144 144 "isEnabled": "", ~/~/ признак включения 145 145 "parentId": "", ~/~/ Guid родительского агента ... ... @@ -148,7 +148,7 @@ 148 148 "doubleAuth": "" , ~/~/ параметры двухфакторной аутентификации 149 149 "kind": "", ~/~/ тип аутентификации (None - выключена, Email - по email) 150 150 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 151 - "groups": 292 + "groups": ["", ""] , ~/~/ группы пользователя, перечисление названия групп (data-row) 152 152 } 153 153 154 154 (% style="text-align:left" %) ... ... @@ -174,7 +174,7 @@ 174 174 "doubleAuth": "" , ~/~/ параметры двухфакторной аутентификации 175 175 "kind": "" , ~/~/ тип аутентификации 176 176 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 177 - "groups": группы пользователя,«user»названия группыпользователя318 + "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 178 178 179 179 (% style="text-align:left" %) 180 180 (% style="color:#000000; font-weight:normal" %)} ... ... @@ -227,6 +227,54 @@ 227 227 (% style="color:#000000" %)} 228 228 229 229 371 +(% class="box successmessage" %) 372 +((( 373 +(% style="color:#000000; line-height:100%" %)**Получение информации о пользователе — **(% lang="en-US" %)**GET /api/v3/users/{GUID}** 374 +))) 375 + 376 +(% style="color:#000000" %) Метод возвращает подробную информацию о пользователе клиента-родителя авторизованного пользователя или пользователя его дочерних клиентов. Информация о пользователе предоставляется при наличии права **«__Просмотр пользователей__»**. 377 + 378 +(% style="color:#000000" %)Метод запроса: **GET** 379 + 380 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/(% lang="en-US" %)users/{GUID}>>https://hosting.glonasssoft.ru/api/v3/users/{GUID}]] 381 + 382 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 383 + 384 +(% style="color:#000000" %)Ответ: 385 + 386 +((( 387 +((( 388 +{ 389 + "id": "", ~/~/ GUID пользователя 390 + "lastName": "", ~/~/ Фамилия 391 + "firstName": "", ~/~/ Имя 392 + "position": "", ~/~/ Должность 393 + "phone": "", ~/~/ Номер телефона 394 + "parentId": "", ~/~/ GUID клиента, которому принадлежит пользователь 395 + "parentName": "", Наименование клиента, которому принадлежит пользователь 396 + "organization": "", ~/~/ Организация 397 + "login": "", ~/~/ Логин пользователя 398 + "email": "", ~/~/ Адрес электронной почты 399 + "language": , ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 400 + "isReadOnly": , ~/~/ Право только на чтение, true - включено, false - отключено 401 + "description": "", ~/~/ Описание 402 + "isEnabled": , ~/~/ Включен, true - включен, false - отключен 403 + "doubleAuth": , ~/~/ Состояние двухэтапной аутентификации, true - включен, false - отключен 404 + "doubleAuthEmail": "", ~/~/ Адрес электронной почты двухэтапной аутентификации 405 + "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 406 + "sessionDuration": 30, ~/~/ Длительность сессии в минутах 407 + "status": 0, ~/~/ Статус пользователя, 0 - новый, 1 - подтвержден, 2 - активен, 3 - уточнить, 4 - блокирован 408 + "lastLogged": "2022-08-22T06:57:51.002129Z", ~/~/ Дата и время последнего входа пользователя 409 + "groups": [], ~/~/ Список ролей пользователя 410 + "customGroups": [], ~/~/ Список клиентских ролей пользователя 411 + "authDevices": [ ], ~/~/ Список авторизованных устройств 412 + "mobileDoubleAuthDevices": [], ~/~/ Список авторизованных мобильных устройств 413 + "pushNotificationsDevices": [] ~/~/ Список мобильных устройств которые были подписаны на мобильные уведомления 414 +} 415 +))) 416 +))) 417 + 418 + 230 230 (% class="box warningmessage" %) 231 231 ((( 232 232 (% style="color:#000000; line-height:100%" %)**Редактирование пользователя — **(% lang="en-US" %)**PUT /api/v3/users** ... ... @@ -240,6 +240,8 @@ 240 240 241 241 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 242 242 432 +**При редактировании необходимо передавать все параметры пользователя в теле запроса! Те параметры, значения которых не будут переданы - будут стерты!** 433 + 243 243 (% lang="en-US" style="text-align:left" %) 244 244 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 245 245 ... ... @@ -253,10 +253,10 @@ 253 253 "position": "" , ~/~/ должность 254 254 "phone": "" , ~/~/ телефон 255 255 "organization": "" , ~/~/ организация 256 - "login": "" , ~/~/ логин 257 - "password": "" , ~/~/ пароль ( при добавлении - обязателен, при редактировании, если null - менятьпарольне надо)258 - "email": "" , ~/~/ email 259 - "description": "" , ~/~/ описание 447 + "login": "" , ~/~/ логин (% style="color:#000000" %)(Если null - менять не надо)(%%) 448 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "password": "" , ~/~/ пароль (Если null - менять не надо) 449 + "email": "" , ~/~/ email (% style="color:#000000" %)(Если null - менять не надо)(%%) 450 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "description": "" , ~/~/ описание 260 260 "isEnabled": "" , ~/~/ признак включения 261 261 "parentId": "" , ~/~/ Guid родительского агента 262 262 "leaderId": "" , ~/~/ Guid руководителя (null - не задан) ... ... @@ -369,6 +369,7 @@ 369 369 (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»**(%%) 370 370 \\(% style="color:#000000" %)__Для двух, описанных выше, методов если не получилось выполнить включение или отключение некоторых пользователей из переданного списка возвращается ответ - 206 Partial Content__ 371 371 563 +((( 372 372 В теле ответа: 373 373 { 374 374 "errorMessages": [ ... ... @@ -381,6 +381,7 @@ 381 381 \\\\"errorMessages" - массив ошибок, из-за которых не выполнилось действие с пользователями. 382 382 "users" - массив id пользователей, которых не удалось включить или отключить. 383 383 576 +))) 384 384 385 385 (% class="box errormessage" %) 386 386 ((( ... ... @@ -429,75 +429,44 @@ 429 429 430 430 (% style="color:#000000" %)Ответ: 431 431 625 +((( 432 432 { 433 - 434 - "vehicleId": , 435 - 436 - "name": "", 437 - 438 - "imei": "", 439 - 440 - "deviceTypeId": , 441 - 442 - "deviceTypeName": "", 443 - 444 - "sim1": "", 445 - 446 - "parentId": "", 447 - 448 - "parentName": "", 449 - 450 - "modelId": "", 451 - 452 - "modelName": "", 453 - 454 - "createdAt": "", 455 - 456 - "mileageCalcMethod": "", 457 - 458 - "counters": { 459 - 460 - "mileageEnabled": , 461 - 462 - "motohoursEnabled": , 463 - 464 - "mileage": 22438858.137653351, ~/~/ пробег по нормам в метрах 465 - 466 - "motohours": 54545302.0 ~/~/ моточасы по нормам, в секундах 467 - 627 + "vehicleId": "", ~/~/ ID объекта 628 + "name": "", ~/~/ Имя объекта 629 + "imei": "", ~/~/ IMEI объекта 630 + "deviceTypeId": , ~/~/ ID типа устройства 631 + "deviceTypeName": "", ~/~/ Название типа устройства 632 + "sim1": "", ~/~/ Номер SIM1 633 + "parentId": "", Номер SIM2 634 + "parentName": "", Наименование клиента-родителя 635 + "modelId": "", ID модели объекта 636 + "modelName": "", Имя модели объекта 637 + "createdAt": "", Дата создания объекта 638 + "mileageCalcMethod": "", Выбранный метод расчета пробега 639 + "counters": { ~/~/ Нормы 640 + "mileageEnabled": "", ~/~/ Флаг активности счётчика "Пробег" (true - включен, false - отключен) 641 + "motohoursEnabled": "", ~/~/ флаг активности счётчика "Моточасы" (true - включен, false - отключен) 642 + "mileage": "", ~/~/ Пробег по нормам в метрах 643 + "motohours": "" ~/~/ Моточасы по нормам, в секундах 468 468 }, 469 - 470 - "inspectionTasks": [ 471 - 645 + "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 472 472 { 473 - 474 - "id": "", 475 - 476 - "enabled": , 477 - 478 - "name": "", 479 - 480 - "description": "", 481 - 482 - "mileageCondition": , 483 - 484 - "lastMileage": , 485 - 486 - "motohoursCondition": , 487 - 488 - "lastMotohours": , 489 - 490 - "periodicCondition": , 491 - 492 - "kind": "", 493 - 494 - "lastInspectionDate": "" 495 - 647 + "id": "", ~/~/ ID задания 648 + "enabled": "", ~/~/ Флаг активности задания (true - включен, false - отключен) 649 + "name": "", ~/~/ Наименование задания 650 + "description": "", ~/~/ Описание задания 651 + "mileageCondition": "", ~/~/ Условие по пробегу (в метрах, null - условие не работает) 652 + "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО (null - неважно) 653 + "motohoursCondition": "", ~/~/ Условие по моточасам (в секундах, null - условие не работает) 654 + "lastMotohours": "", ~/~/ Моточасы (в секундах) на момент последнего ТО (null - неважно) 655 + "periodicCondition": "", ~/~/ Условие периодичности по времени (null - условие не работает) 656 + "kind": "", ~/~/ Вид периодичности по времени (дни - Days, месяцы - Months, года - Years, null - условие не работает) 657 + "lastInspectionDate": "" ~/~/ Дата последнего ТО (null - не указано) 658 + "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 496 496 } 497 - 498 498 ] 499 - 500 500 } 662 +))) 501 501 502 502 (% style="text-align:left" %) 503 503 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: ... ... @@ -658,17 +658,17 @@ 658 658 659 659 (% style="color:#000000" %)Параметры в теле запроса (JSON): 660 660 661 -(% class="western" style="color:#000000" %)##{## 823 +{ 824 + "vehicleId": null, ~/~/ 84350, ID ТС (int, опционально) 825 + "name": null, ~/~/ Имя ТС (string, опционально) 826 + "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 827 + "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 828 + "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 829 + "parentId": null, ~/~/ ID клиента (Guid, опционально) 830 + "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 831 + "customFields": null ~/~/ значение любого из произвольных полей ТС 832 +} 662 662 663 -(% class="western" style="color:#000000" %) "vehicleId": null, ~/~/ 84350, ID ТС (int, опционально) 664 - "name": null, ~/~/ Имя ТС (string, опционально) 665 - "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 666 - "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 667 - "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 668 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 669 - "unitId": null ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально)(%%) 670 -(% style="color:#000000" %)} 671 - 672 672 (% style="color:#000000" %) Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. 673 673 674 674 (% style="color:#000000" %)Ответ: ... ... @@ -691,7 +691,16 @@ 691 691 "status": "" ~/~/ статус объекта (%%)(-1 - Новый, 0 - Блокировка, 1 - Активен, 2 - Отменен, 3 - Оборудован, 4 - Диагностика, 692 692 ~/~/ 5 - Сервис, 6 - Демонтаж, 7 - Монтаж, 8 - Дозаказ, 9 - Обслужен, 10 - Списан, 693 693 ~/~/ 11 - Неисправен, 12 - Проверен, 13 - Не эксплуатируется) 694 -(% style="color:#000000" %) "createdAt": "" ~/~/ дата создания объектов (%%) 856 +(% style="color:#000000" %) "createdAt": "" ~/~/ дата создания объектов 857 + "customFields": [ 858 + { 859 + "id": "", ~/~/ идентификатор произвольного поля 860 + "name": "", ~/~/ имя произвольного поля 861 + "value": "", ~/~/ значение произвольного поля 862 + "forClient": true, ~/~/ право на отображение у клиента 863 + "forTooltip": false, ~/~/ право на отображение в подсказке 864 + "forReport": false ~/~/ право на отображение в отчетах 865 + }(%%) 695 695 (% style="color:#000000" %)} 696 696 697 697 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**.