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