Содержание страницы:

Действующие ограничения

Между запросами должна быть пауза в 1 секунду (превышение отвергается системой с уведомлением о превышении частоты запросов).

Для работы со всеми методами API необходимо в заголовок добавлять X-Auth (токен авторизации, получаемый методом auth/login).

Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de.

− При редактировании необходимо передавать все параметры пользователя в теле запроса! Те параметры, значения которых не будут переданы - будут стерты!

Раздел: Авторизация

Авторизация

POST /api/v3/auth/login

Метод позволяет получить токен авторизации, который необходимо добавлять в заголовок для работы со всеми методами API. В параметрах метода передается имя пользователя и пароль.

Метод запроса: POST

URL запроса: https://hosting.glonasssoft.ru/api/v3/auth/login

В случае успешного выполнения метода, поле «AuthId» содержит токен авторизации «X-Auth».

Параметры в теле запроса (JSON):

{
    "login": "testuser",
    "password": "testuser"
}

Ответ:

{

    "AuthId": "93c6jg79-b88b-4a35-a2d0-70dg9jc2898b" ,  // токен авторизации         
    "User": "testuser" ,  // имя пользователя

}

Примечание: Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется.

Проверка авторизации

GET /api/v3/auth/check

Метод позволяет проверить статус авторизации. Метод позволяет проверить активен токен авторизации или нет (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: GET

URL запроса: https://hosting.glonasssoft.ru/api/v3/auth/check

В заголовках запроса: X-Auth: Токен авторизации

Ответ: В случае если сессия активна HTTP ответ «200». В случае если сессия разорвана HTTP ответ «401».

Раздел: Клиенты

Получение основных параметров клиента

GET /api/v3/agents

Метод позволяет получить основные параметры клиентов: наименование, полное наименование, тип, статус и идентификатор клиента-родителя. Метод возвращает информацию о клиентах с учетом настроек авторизованного пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»):

− информация о клиентах предоставляется при наличии права «Просмотр клиентов»;

− возвращается информация о клиенте, которому принадлежит авторизованный пользователь, и его дочерних клиентах;

− информация о клиенте типа «Партнер» и его подклиентов возвращается при наличии права «Доступ к партнёрским клиентам».

Метод запроса: GET

URL запроса: https://hosting.glonasssoft.ru/api/v3/agents?parentId=<parentId>

Параметр запроса: <parentId> - идентификатор клиента-родителя (опционально)

В заголовках запроса: X-Auth: Токен авторизации

Ответ:

{         
    "agentId": "",  // идентификатор клиента         
    "parentId": "",  // идентификатор клиента-родителя         
    "name": "",  // наименование клиента         
    "fullName": "",  // полное наименование клиента         
    "agentInfoType": "",  // тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор)
    "status": "",  // статус клиента (0- Новый, 1 - Потенциальный, 2 - В разработке, 3 - Тест, 4 - На оформлении, 5 - Внедрение, 6 - Работает, 7 - Работал, 8 - Потерян, 9 - Отказ)
}

Добавление клиента

POST /api/v3/agents 

Метод позволяет добавить клиента, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: POST

URL запроса: https://hosting.glonasssoft.ru/api/v3/agents

В заголовках запроса: X-Auth: Токен авторизации

Параметры в теле запроса (JSON):

{
   "parentId": "00000000-0000-0000-0000-000000000000", // идентификатор клиента-родителя 
  "name": "string", // имя
  "fullName": "string", // полное наименование
  "isForeign": true, // иностранный контрагент
  "district": "string", // округ
  "region": "string", // регион
  "city": "string", // город
  "inn": "string", // ИНН
  "kpp": "string", // КПП
  "address": "string", // юридический адрес
  "addressFact": "string", // фактический адрес
  "email": "string", // email
  "director": "string", // ФИО руководителя
  "bankName": "string", // банк
  "bankBIK": "string", // БИК
  "bankRS": "string", // номер счёта
  "bankKS": "string" // корр. счёт
}

Ответ:

{
  "agentId": "00000000-0000-0000-0000-000000000000", // идентификатор клиента
  "parentId": "00000000-0000-0000-0000-000000000000", // идентификатор клиента-родителя 
  "name": "string", // имя
  "fullName": "string", // полное наименование
  "isForeign": true, // иностранный контрагент
  "district": "string", // округ
  "region": "string", // регион
  "city": "string", // город
  "inn": "string", // ИНН
  "kpp": "string", // КПП
  "address": "string", // юридический адрес
  "addressFact": "string", // фактический адрес
  "email": "string", // email
  "director": "string", // ФИО руководителя
  "bankName": "string", // банк
  "bankBIK": "string", // БИК
  "bankRS": "string", // номер счёта
  "bankKS": "string" // корр. счёт
}

Редактирование клиента

PUT /api/v3/agents

Метод позволяет отредактировать клиента, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: PUT

URL запроса: https://hosting.glonasssoft.ru/api/v3/agents

В заголовках запроса: X-Auth: Токен авторизации

Параметры в теле запроса (JSON):

{
  "agentId": "00000000-0000-0000-0000-000000000000", // идентификатор клиента
  "parentId": "00000000-0000-0000-0000-000000000000", // идентификатор клиента-родителя 
  "name": "string", // имя
  "fullName": "string", // полное наименование
  "isForeign": true, // иностранный контрагент
  "district": "string", // округ
  "region": "string", // регион
  "city": "string", // город
  "inn": "string", // ИНН
  "kpp": "string", // КПП
  "address": "string", // юридический адрес
  "addressFact": "string", // фактический адрес
  "email": "string", // email
  "director": "string", // ФИО руководителя
  "bankName": "string", // банк
  "bankBIK": "string", // БИК
  "bankRS": "string", // номер счёта
  "bankKS": "string" // корр. счёт
}

Ответ:

{
  "agentId": "00000000-0000-0000-0000-000000000000", // идентификатор клиента
  "parentId": "00000000-0000-0000-0000-000000000000", // идентификатор клиента-родителя 
  "name": "string", // имя
  "fullName": "string", // полное наименование
  "isForeign": true, // иностранный контрагент
  "district": "string", // округ
  "region": "string", // регион
  "city": "string", // город
  "inn": "string", // ИНН
  "kpp": "string", // КПП
  "address": "string", // юридический адрес
  "addressFact": "string", // фактический адрес
  "email": "string", // email
  "director": "string", // ФИО руководителя
  "bankName": "string", // банк
  "bankBIK": "string", // БИК
  "bankRS": "string", // номер счёта
  "bankKS": "string" // корр. счёт
}

Удаление клиента

DELETE /api/v3/agents/{clientId}

Метод позволяет удалить клиента, указанного в строке запроса (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: DELETE

URL запроса: https://hosting.glonasssoft.ru/api/v3/agents/{clientId}

Параметр запроса: {clientId} - Guid пользователя

В заголовках запроса: X-Auth: Токен авторизации

Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».

Раздел: Пользователи

Добавление пользователя

POST /api/v3/users

Метод позволяет добавить пользователя. Метод позволяет добавить пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: POST

URL запроса: https://hosting.glonasssoft.ru/api/v3/users

В заголовках запроса: X-Auth: Токен авторизации

Параметры в теле запроса (JSON):


    "lastName": "",  // фамилия   
    "firstName": "",  // имя   
    "position": "",  // должность   
    "phone": "",  // телефон   
    "organization": "",  // организация   
    "login": "",  // логин (обязателен)
    "password": "",  // пароль (обязателен)
    "email": "",  // email (обязателен)
    "description": "",  // описание   
    "isEnabled": "",  // признак включения   
    "parentId": "",  // Guid родительского агента   
    "leaderId": "",  // Guid руководителя (null - не задан)   
    "sessionDuration": "",  // продолжительность сессии, в минутах (null - по умолчанию, 30 минут)   
    "doubleAuth": "" ,  // параметры двухфакторной аутентификации     
    "kind": "",  // тип аутентификации (None - выключена, Email - по email)     
    "target": "" ,  // в случае аутентификации по email - email-адрес  
    "groups": ["", ""] ,  // группы пользователя, перечисление названия групп (data-row)
}

Ответ:

{     

    "id": "" ,  // ID пользователя     
    "lastName": "" ,  // Фамилия ,     
    "firstName": "" ,  // Имя     
    "position": "" ,  // Должность     
    "phone": "" ,  // Телефон     
    "organization": "" ,  // Организация     
    "login": "" ,  // Логин     
    "password": "" ,  // Пароль     
    "email": "" ,  // Email     
    "description": "" ,  // Описание     
    "isEnabled": "" ,  // Признак включения     
    "parentId": "" ,  // Guid родительского агента     
    "sessionDuration": "" ,  // Продолжительность сессии, в минутах     
    "doubleAuth": "" ,  // параметры двухфакторной аутентификации         
    "kind": "" ,  // тип аутентификации         
    "target": "" ,  // в случае аутентификации по email - email-адрес     
    "groups": 
["", ""] ,  // роли пользователя, перечислены названия групп пользователя

}

Получение списка пользователей

POST /api/v3/users/find

Метод позволяет получить основные параметры пользователей: логин, имя, адрес электронной почты, номер телефона, статус, идентификатор клиента-родителя и прочее.

Метод возвращает информацию о пользователях клиента-родителя авторизованного пользователя и пользователях его дочерних клиентов. Информация о пользователях предоставляется при наличии права «Просмотр пользователей».

Метод запроса: POST

URL запроса: https://hosting.glonasssoft.ru/api/v3/users/find

Условия фильтрации объектов задаются в теле запроса.

Параметры в теле запроса (JSON):

{

  "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303",  // GUID агента, для которого надо получить данные, null - для текущего агента
  "userId": "11111111-c384-43f8-8562-1c3d79a32303",  // ID пользователя, по которому фильтруется, null - неважно
  "login": "qqqqqq",  // Логин пользователя, по которому фильтруется, null - неважно
  "email": "eee",  // Email пользователя, по которому фильтруется, null - неважно

}

Ответ:

{            

    "id": "" ,  // идентификатор пользователя         
    "lastName": "" ,  // фамилия         
    "firstName": "" ,  // имя         
    "position": "" ,  // должность         
    "phone": "" ,  // телефон         
    "parentId": "" ,  // идентификатор клиента-родителя         
    "parentName": "" ,  // наименование клиента-родителя         
    "organization": "" ,  // организация         
    "login": "" ,  // логин        
    "email": "" ,  // E-mail
    "sessionDuration":"", // длительность сессии в минутах
    "status": "1",  // статус пользователя         
    "astLogged": "", // дата/время последней авторизации

}

Получение информации о пользователе

GET /api/v3/users/{GUID}

Метод возвращает подробную информацию о пользователе клиента-родителя авторизованного пользователя или пользователя его дочерних клиентов. Информация о пользователе предоставляется при наличии права «Просмотр пользователей».

Метод запроса: GET

URL запроса: https://hosting.glonasssoft.ru/api/v3/users/{GUID}

В заголовках запроса: X-Auth: Токен авторизации

Ответ:

{
    "id": "", // GUID пользователя
    "lastName": "", // Фамилия 
    "firstName": "", // Имя
    "position": "", // Должность
    "phone": "", // Номер телефона
    "parentId": "", // GUID клиента, которому принадлежит пользователь
    "parentName": "", Наименование клиента, которому принадлежит пользователь
    "organization": "", // Организация
    "login": "", // Логин пользователя
    "email": "", // Адрес электронной почты
    "language": , // Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский
    "isReadOnly": , // Право только на чтение, true - включено, false - отключено
    "description": "", // Описание
    "isEnabled": , // Включен, true - включен, false - отключен
    "doubleAuth": , // Состояние двухэтапной аутентификации, true - включен, false - отключен
    "doubleAuthEmail": "", // Адрес электронной почты двухэтапной аутентификации
    "isDisabledMobile": false, // Запретить использовать мобильное приложение, true - включен, false - отключен
    "sessionDuration": 30, // Длительность сессии в минутах
    "status": 0, // Статус пользователя, 0 - новый, 1 - подтвержден, 2 - активен, 3 - уточнить, 4 - блокирован
    "lastLogged": "2022-08-22T06:57:51.002129Z", // Дата и время последнего входа пользователя
    "groups": [], // Список ролей пользователя
    "customGroups": [], // Список клиентских ролей пользователя
    "authDevices": [ ], // Список авторизованных устройств
    "mobileDoubleAuthDevices": [], // Список авторизованных мобильных устройств
    "pushNotificationsDevices": [] // Список мобильных устройств которые были подписаны на мобильные уведомления
}

Редактирование пользователя

PUT /api/v3/users

Метод позволяет отредактировать пользователя. Метод позволяет отредактировать пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: PUT

URL запроса: https://hosting.glonasssoft.ru/api/v3/users

В заголовках запроса: X-Auth: Токен авторизации

Параметры в теле запроса (JSON):

{   

    "id": "" ,  // ID пользователя 
    "lastName": "" ,  // фамилия   
    "firstName": "" ,  // имя   
    "position": "" ,  // должность   
    "phone": "" ,  // телефон   
    "organization": "" ,  // организация   
    "login": "" ,  // логин   
(Если null - менять не надо)
    "password": "" ,  // пароль (Если null - менять не надо)   
    "email": "" ,  // email   
(Если null - менять не надо)
    "description": "" ,  // описание   
    "isEnabled": "" ,  // признак включения   
    "parentId": "" ,  // Guid родительского агента   
    "leaderId": "" ,  // Guid руководителя (null - не задан)   
    "sessionDuration": "" ,  // продолжительность сессии, в минутах (null - по умолчанию, 30 минут)   
    "doubleAuth": "" ,  // параметры двухфакторной аутентификации    
    "kind": "" ,  // тип аутентификации         
    "target": "" ,  // в случае аутентификации по email - email-адрес     
    "groups": "" ,  // группы пользователя, «user» названия группы пользователя

}

Ответ:

{     

    "id": "" ,  // идентификатор пользователя         
    "lastName": "" ,  // фамилия         
    "firstName": "" ,  // имя         
    "position": "" ,  // должность         
    "phone": "" ,  // телефон     
    "organization": "" ,  // организация     
    "login": "" ,  // логин     
    "password": "" ,  // пароль 
    "email": "" ,  // email     
    "description": "" ,  // описание      
    "isEnabled": "" ,  // признак включения       
    "parentId": "" ,  // Guid родительского агента     
    "sessionDuration": "" ,  // продолжительность сессии, в минутах 
    "doubleAuth": "" ,  // параметры двухфакторной аутентификации    
    "kind": "" ,  // тип аутентификации         
    "target": "" ,  // в случае аутентификации по email - email-адрес     
    "groups": "" ,  // группы пользователя, «user» названия группы пользователя

}

Изменение статуса пользователя

 PUT /api/v3/users/status/{id}

Метод позволяет изменить статус пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: PUT

URL запроса: https://hosting.glonasssoft.ru/api/v3/users/status/{id}

Параметр запроса: {id} - Guid пользователя

В заголовках запроса: X-Auth: Токен авторизации

Параметры в теле запроса (JSON):

{

    "status": "" ,  // статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован)
    "description": "" ,  // описание
    "data": "" ,  // данные, связанные со сменой статуса

}

Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»

Блокировка пользователей

POST /api/v3/users/disable

Метода позволяет выполнить массовую блокировку пользователей (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: POST

URL запроса: https://hosting.glonasssoft.ru/api/v3/users/disable

В теле запроса перечисляете массив id пользователей (JSON):

 [ 
    "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc",
    "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1"
  ]

Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»

Разблокировка пользователей

POST /api/v3/users/enable

Метода позволяет выполнить массовую разблокировку пользователей (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: POST

URL запроса: https://hosting.glonasssoft.ru/api/v3/users/enable

В теле запроса перечисляете массив id пользователей (JSON):

 [ 
    "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc",
    "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1"
  ]

Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200»

Для двух, описанных выше, методов если не получилось выполнить включение или отключение некоторых пользователей из переданного списка возвращается ответ - 206 Partial Content

В теле ответа:
{
    "errorMessages": [
        "Agent 0f8c2a8b-4b71-48d0-b780-341053089874 cannot access to object Agents d493fd88-60c8-465d-afad-912f5ac9d719."
    ],
    "users": [
        "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1"
    ]
}


"errorMessages" - массив ошибок, из-за которых не выполнилось действие с пользователями.
"users" - массив id пользователей, которых не удалось включить или отключить.

Удаление пользователя

DELETE /api/v3/users/{id}

Метод позволяет удалить пользователя. Метод позволяет удалить пользователя, указанного в строке запроса (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: DELETE

URL запроса: https://hosting.glonasssoft.ru/api/v3/users/{id}

Параметр запроса: {id} - Guid пользователя

В заголовках запроса: X-Auth: Токен авторизации

Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».

Раздел: Транспортные средства

Получение информации об объекте

GET /api/v3/vehicles/{vehicleId}

Метод позволяет получить всю информацию из карточки объекта: ID, имя объекта, imei, тип устройства, SIM1, SIM2, ID клиента, название клиента, ID модели, наименование модели объекта, ID подразделения, водители, ТО, текущий пробег, моточасы, нормы расхода, полную историю статусов со всеми комментариями, список датчиков (тип, наименование, тип входа, номер входа, псевдоним, тип датчика, тип тарировки, тарировка, состояние чекбоксов «отображается в подсказке» и «отображать последнее валидное значение».

Метод возвращает информацию об объекте с учетом настроек авторизованного пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»):

− возвращается информация об объекте клиента-родителя авторизованного пользователя и объекте его дочерних клиентов;

− информация о ТО предоставляется с учётом прав на «Просмотр заданий на техобслуживание».

Метод запроса: GET

URL запроса: https://hosting.glonasssoft.ru/api/v3/vehicles/<vehicleID>

Параметр запроса: <vehicleid> - идентификатор объекта (опционально)

В заголовках запроса: X-Auth: Токен авторизации

Ответ:

{
    "vehicleId": "", // ID объекта
    "name": "", // Имя объекта
    "imei": "", // IMEI объекта
    "deviceTypeId": , // ID типа устройства
    "deviceTypeName": "", // Название типа устройства
    "sim1": "", // Номер SIM1
    "parentId": "", Номер SIM2
    "parentName": "", Наименование клиента-родителя
    "modelId": "", ID модели объекта
    "modelName": "", Имя модели объекта
    "createdAt": "", Дата создания объекта
    "mileageCalcMethod": "", Выбранный метод расчета пробега
    "counters": { // Нормы
        "mileageEnabled": "", // Флаг активности счётчика "Пробег" (true - включен, false - отключен)
        "motohoursEnabled": "", // флаг активности счётчика "Моточасы" (true - включен, false - отключен)
        "mileage": "", // Пробег по нормам в метрах
        "motohours": "" // Моточасы по нормам, в секундах
    },
    "inspectionTasks": [ // Задания на тех. обслуживание
        {
            "id": "", // ID  задания
            "enabled": "", // Флаг активности задания (true - включен, false - отключен)
            "name": "", // Наименование задания
            "description": "", // Описание задания
            "mileageCondition": "", // Условие по пробегу (в метрах, null - условие не работает)
            "lastMileage": "", // Пробег (в метрах) на момент последнего ТО (null - неважно)
            "motohoursCondition": "", // Условие по моточасам (в секундах, null - условие не работает)
            "lastMotohours": "", // Моточасы (в секундах) на момент последнего ТО (null - неважно)
            "periodicCondition": "", // Условие периодичности по времени (null - условие не работает)
            "kind": "", // Вид периодичности по времени (дни - Days, месяцы - Months, года - Years, null - условие не работает)
            "lastInspectionDate": "" // Дата последнего ТО (null - не указано)
            "maxQuantity": ""   // Сколько раз выполнить задание (null - однократно)
        }
    ]
}

Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже:

0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется».

Добавление объекта

POST /api/v3/vehicles

Метод позволяет добавить объект. Метод позволяет добавить объект, указанный в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth», Content-Type: application/jsoncharset=utf-8).

Метод запроса: POST

URL запроса: https://hosting.glonasssoft.ru/api/v3/vehicles

В заголовках запроса: X-Auth: Токен авторизации

Параметры в теле запроса (JSON): Обязательные параметры наименование и модель объекта В теле запроса - объект JSON

{

    "parentId": "" ,  // ID клиента
    "name": "" ,  // имя ТС
    "imei": "" ,  // IMEI
    "deviceTypeId": "" ,  // ID типа устройства
    "modelId": "" , // ID модели
    "unitId": "" ,  // ID подразделения
    "sim1": "" ,  // Номер SIM 1
    "sim2": "" ,  // Номер SIM2
    "consumptionPer100Km": "" ,  // Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено)
    "consumptionPerHour": "" ,  // Расход топлива за моточас (если заполнено, то consumptionPer100Km не может быть заполнено)
    "consumptionIdle": "" ,  // Расход топлива на холостом ходу
    "consumptionPer100KmSeasonal": 0, // Сезонный расход топлива на 100 км 
    "consumptionPerHourSeasonal": 0, // Сезонный расход топлива на моточас
     "consumptionIdleSeasonal": 0, // Сезонный расход топлива на холостом ходу 
     "consumptionPer100KmSeasonalBegin": "" ,  // День/месяц начала работы сезонной нормы расхода на 100 км
     "consumptionPer100KmSeasonalEnd": "" ,  // День/месяц окончания работы сезонной нормы расхода на 100 км
     "consumptionPerHourSeasonalBegin": "" ,  // День/месяц начала работы сезонной нормы расхода на моточас
     "consumptionPerHourSeasonalEnd": "" ,  // День/месяц окончания работы сезонной нормы расхода на моточас
     "consumptionIdleSeasonalBegin": "" ,  // День/месяц начала работы сезонной нормы расхода на х/х
     "consumptionIdleSeasonalEnd": "" ,  // День/месяц окончания работы сезонной нормы расхода на х/х
     "counters":  // счетчики
      {
     "mileage": "" ,  // пробег
     "mileageEnabled": true,  // флаг активности счётчика "пробег"
     "motohours": "" ,  // моточасы
     "motohoursEnabled": true  // флаг активности счётчика "моточасы"
      },
    "cmsv6Parameters": { // параметры CMSv6
      "enabled": true,  // флаг включения
      "id": "" ,  // идентификатор
      "host": "" ,  // IP-адрес или доменное имя из URL веб-сайта CMSV6
      "login": "" ,  // имя учетной записи
      "password": ""   // пароль учетной записи
      },
    "inspectionTasks":  // задания на ТО
      {
      "enabled": "" ,  // Признак включения
      "name": "" ,  // Имя задания
      "description": "" ,  // Описание задания
      "mileageCondition": "" ,  // Условие по пробегу (в метрах, null - условие не работает)
      "lastMileage": "" ,  // Пробег (в метрах) на момент последнего ТО (null - неважно)
      "motohoursCondition": "" ,  // Условие по моточасам (в секундах, null - условие не работает)
      "lastMotohours": "" ,  // Моточасы (в секундах) на момент последнего ТО (null - неважно)
      "periodicCondition": "" ,  //  Условие периодичности по времени (null - условие не работает)
      "kind": "" ,  // Вид периодичности по времени (дни - Days, месяцы - Months, года - Years, null - условие не работает)
      "lastInspectionDate": "" ,  // Дата последнего ТО (null - не указано)
      "maxQuantity": ""   // Сколько раз выполнить задание (null - однократно)
      }

 }

Ответ:

{

    "vehicleId": "", //ID ТС 
    "parentId": "", //Guid владельца ТС
    "name": "", //Имя объекта
    "imei": "", //IMEI
    "deviceTypeId": "", //ID типа устройства
    "modelId": "", //ID модели
    "unitId": "", //ID подразделения
    "sim1": "", //SIM1
    "sim2": "", //SIM2
    "consumptionPer100Km": "", //Расход топлива на 100 км
    "consumptionIdle": "", //Расход топлива на холостом ходу
 "counters": { //Счётчики
    "mileageEnabled": true,
    "motohoursEnabled": true,
    "mileage": "",
    "motohours": 345.0
    },
 "cmsv6Parameters": { //Параметры CmsV6
    "id": null,
    "enabled": true, //флаг включения
    "host": "", // IP-адрес или доменное имя из URL веб-сайта CMSV6
    "login": "", // имя учетной записи
    "password": "" // пароль учетной записи
    },
  "inspectionTasks": { // задания на ТО
    "id": "", // ID задачи
    "enabled": false, // Признак включения
    "name": "", // Имя задания
    "description": "", // Описание задания
    "mileageCondition": "", // Условие по пробегу
    "lastMileage": "", // Пробег (в метрах)
    "motohoursCondition": "", // Условие по моточасам
    "lastMotohours": "", // Моточасы
    "periodicCondition": "", // Условие периодичности по времени
    "kind": "", // Вид периодичности по времени 
    "maxQuantity": "" // Сколько раз выполнить задание (null - однократно)
    }

}

Валидация:
- сезонный параметр может быть задан только если задана соответствующая обычная норма;
- сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма;
- при задании сезонной нормы обязательны соответствующие даты начала/окончания.

Получение параметров объектов

POST /api/v3/vehicles/find

Метод позволяет получить основные параметры объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).

Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»):

− возвращается информация об объектах клиента-родителя авторизованного пользователя и объектах его дочерних клиентов;

− возвращает информацию об объектах с учетом заданных настроек видимости объектов;

− информация предоставляется с учетом наличия прав на просмотр объектов заблокированных договоров (объекты, принадлежащие заблокированному договору возвращаются при наличии любого из прав «Видимость объектов заблокированных договоров в панели управления» или «Видимость объектов заблокированных договоров в мониторинге»;

− информация о телефонах SIM1/SIM2 предоставляется при наличии права «Просмотр номеров телефонов объектов»;

− информация о статусе объекта предоставляется при наличии права «Просмотр статуса объекта».

Метод запроса: POST

URL запроса: https://hosting.glonasssoft.ru/api/v3/vehicles/find

В заголовках запроса:

− Content-Type: application/json

− X-Auth: Токен авторизации

Условия фильтрации объектов задаются в теле запроса.

Параметры в теле запроса (JSON):

{
    "vehicleId": null, // 84350, ID ТС (int, опционально)
    "name": null, // Имя ТС (string, опционально)
    "imei": null, // "710179307", // IMEI (string, опционально)
    "sim": null, // "938112", // Номер телефона (string, опционально)
    "deviceTypeId": null, // 5, ID типа устройства (short, опционально)
    "parentId": null, // ID клиента (Guid, опционально)
    "unitId": null, // "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально)
    "customFields": null // значение любого из произвольных полей ТС
}

Фильтрация осуществляется по точному совпадению значений параметров «vehicleId», «deviceTypeId», «parentId», «unitId», и по частичному - «name», «imei», «sim». Фильтрация по значению параметра «sim» осуществляется при наличии у авторизованного пользователя права «Просмотр номеров телефонов объектов».

Ответ:

{

    "vehicleId": "" // идентификатор объекта         
    "name": "" // наименование объекта         
    "imei": "" // IMEI объекта         
    "deviceTypeId": "" // идентификатор типа устройства         
    "deviceTypeName": "" // наименование типа устройства         
    "sim1": "" // первый номер телефона         
    "sim2": "" // второй номер телефона         
    "parentId": "" // идентификатор клиента-родителя         
    "parentName": "" // наименование клиента-родителя         
    "modelId": "" // идентификатор модели объекта         
    "modelName": "" // наименование модели объекта         
    "unitId": "" // идентификатор подразделения         
    "unitName": "" // наименование подразделения         
    "status": "" // статус объекта         
(-1 - Новый, 0 - Блокировка, 1 - Активен, 2 - Отменен, 3 - Оборудован, 4 - Диагностика, 
                                                           // 5 - Сервис, 6 - Демонтаж, 7 - Монтаж, 8 - Дозаказ, 9 - Обслужен, 10 - Списан, 
                                                          // 11 - Неисправен, 12 - Проверен, 13 - Не эксплуатируется)
    "createdAt": "" // дата создания объектов  
    "customFields": [ 
            {
                "id": "", // идентификатор произвольного поля
                "name": "", // имя произвольного поля
                "value": "", // значение произвольного поля
                "forClient": true, // право на отображение у клиента
                "forTooltip": false, // право на отображение в подсказке
                "forReport": false // право на отображение в отчетах
            }

}

          Параметры «sim1» и «sim2» содержатся в ответе при наличии у авторизованного пользователя права «Просмотр номеров телефонов объектов». Параметр «status» содержится в ответе при наличии у авторизованного пользователя права «Просмотр статуса объекта».

Изменение статуса объекта

POST /api/v3/vehicles/changeStatus/{vehicleId}

Метод позволяет изменить статус объекта. Метод позволяет изменить статус объекта, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: POST

URL запроса: https://hosting.glonasssoft.ru/api/v3/vehicles/changeStatus/{vehicleId}

Параметр запроса: {vehicleId} - ID ТС

В заголовках запроса: X-Auth: Токен авторизации

Параметры в теле запроса (JSON):

{

  "status": "", // значение статуса (-1 - Новый, 0 - Блокировка, 1 - Активен, 2 - Отменен, 3 - Оборудован, 4 - Диагностика, 
                                   // 5 - Сервис, 6 - Демонтаж, 7 - Монтаж, 8 - Дозаказ, 9 - Обслужен, 10 - Списан, 
                                   // 11 - Неисправен, 12 - Проверен, 13 - Не эксплуатируется)
  "date": "", // Дата смены статуса (null если сменить немедленно)
  "description": "", // Описание
  "data": "", // Данные
  "overwrite": false, // Флаг перезаписи
  "stage": "", // Состояние, может быть null

}

Ответ:

{

  "status": "", // значение статуса
  "date": "", // Дата смены статуса 
  "description": "", // Описание
  "data": "", // Данные
  "overwrite": false, // Флаг перезаписи
  "stage": "", // Состояние

  }

Редактирование объекта

PUT /api/v3/vehicles

Метод позволяет отредактировать объект. Метод позволяет отредактировать объект, указанный в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: PUT

URL запроса: https://hosting.glonasssoft.ru/api/v3/vehicles

В заголовках запроса: X-Auth: Токен авторизации

Параметры в теле запроса (JSON):

{     

    "vehicleId": "", // ID ТС     
    "parentId": "", // ID клиента     
    "name": "", // имя ТС     
    "imei": "", // IMEI     
    "deviceTypeId": "", // ID типа устройства     
    "modelId": "", // , ID модели    
    "unitId": "", // подразделения     
    "sim1": "", // SIM 1     
    "sim2": "", // SIM2     

    "consumptionPer100Km": "" ,  // Расход топлива на 100 км (если заполнено, то consumptionPerHour не может быть заполнено)
    "consumptionPerHour": "" ,  // Расход топлива за моточас (если заполнено, то consumptionPer100Km не может быть заполнено)
    "consumptionIdle": "" ,  // Расход топлива на холостом ходу
    "consumptionPer100KmSeasonal": 0, // Сезонный расход топлива на 100 км 
    "consumptionPerHourSeasonal": 0, // Сезонный расход топлива на моточас
     "consumptionIdleSeasonal": 0, // Сезонный расход топлива на холостом ходу 
     "consumptionPer100KmSeasonalBegin": "" ,  // День/месяц начала работы сезонной нормы расхода на 100 км
     "consumptionPer100KmSeasonalEnd": "" ,  // День/месяц окончания работы сезонной нормы расхода на 100 км
     "consumptionPerHourSeasonalBegin": "" ,  // День/месяц начала работы сезонной нормы расхода на моточас
     "consumptionPerHourSeasonalEnd": "" ,  // День/месяц окончания работы сезонной нормы расхода на моточас
     "consumptionIdleSeasonalBegin": "" ,  // День/месяц начала работы сезонной нормы расхода на х/х
     "consumptionIdleSeasonalEnd": "" ,  // День/месяц окончания работы сезонной нормы расхода на х/х
         "counters": 
        {         
         "mileageEnabled": true, // флаг активности счётчика «пробег»         
         "motohoursEnabled": true, // флаг активности счётчика «моточасы»         
         "mileage": "", // пробег, в метрах   
         "motohours": "" // моточасы, в секундах
        }     
        "cmsv6Parameters": //  параметры CMSv6  
        {       
        "id": "", // идентификатор         
        "enabled": true, // флаг включения         
        "host": "", // IP-адрес или доменное имя из URL веб-сайта CMSV6         
        "login": "", // имя учетной записи         
        "password": "", // пароль учетной записи     
        }     
            "inspectionTasks": // задания на ТО         
        {             
            "id": "", // ID задания             
            "enabled": false, // Признак включения             
            "name": "", // Имя задания             
            "description": "", // Описание задания             
            "mileageCondition": "", // Условие по пробегу (в метрах, null - условие не работает)             
            "lastMileage": "", // Пробег (в метрах) на момент последнего ТО (null - неважно)             
            "motohoursCondition": "", // Условие по моточасам (в секундах, null - условие не работает)             
            "lastMotohours": "", // Моточасы (в секундах) на момент последнего ТО (null - неважно)             
            "periodicCondition": "", // Условие периодичности по времени (null - условие не работает)             
            "kind": "", // Вид периодичности по времени             
            "maxQuantity": "", // Сколько раз выполнить задание         
            }  

}

Ответ:

{     

    "vehicleId": "", // ID ТС     
    "parentId": "", // ID клиента     
    "name": "", // имя ТС     
    "imei": "", // IMEI     
    "deviceTypeId": "", //  типа устройства     
    "modelId": "", // ID модели     
    "unitId": "", // ID подразделения     
    "sim1": "", // SIM 1     
    "sim2": "", // SIM2     
    "consumptionPer100Km": "", // Расход топлива на 100 км     
    "consumptionIdle": "", // Расход топлива на холостом ходу     
        "counters": 
        {         
        "mileageEnabled": true, // флаг активности счётчика «пробег»         
        "motohoursEnabled": true, // флаг активности счётчика «моточасы»         
        "mileage": "", // пробег         
        "motohours": "", // моточасы     
        }     
        "cmsv6Parameters": //  параметры CMSv6  
        {
        "id": //  идентификатор         
        "enabled": true, // флаг включения         
        "host": "", // IP-адрес или доменное имя из URL веб-сайта CMSV6         
        "login": "", // имя учетной записи         
        "password": "", // пароль учетной записи     
        }     
        "inspectionTasks": // задания на ТО           
        {
        "id": "", // ID задания             
        "enabled": false, // Признак включения             
        "name": "", // Имя задания             
        "description": "", // Описание задания             
        "mileageCondition": "", // Условие по пробегу             
        "lastMileage": "", // Пробег (в метрах) на момент последнего ТО             
        "motohoursCondition": "", // Условие по моточасам             
        "lastMotohours": "", // Моточасы             
        "periodicCondition": "", // Условие периодичности по времени             
        "kind": "", // Вид периодичности по времени             
        "maxQuantity": "", // Сколько раз выполнить задание         
        }

}

валидация:
- сезонный параметр может быть задан только если задана соответствующая обычная норма;
- сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма;
- при задании сезонной нормы обязательны соответствующие даты начала/окончания.

Удаление объекта

DELETE /api/v3/vehicles/{vehicleId}

Метод позволяет удалить объект. Метод позволяет удалить объект, указанный в строке запроса (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: DELETE

URL запроса: https://hosting.glonasssoft.ru/api/v3/vehicles/{vehicleId}

Параметр запроса: {id} - Guid объекта

В заголовках запроса: X-Auth: Токен авторизации

Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».

Раздел: Устройства

Получение списка типов устройств

 GET /api/v3/devices/types

Метод позволяет получить список типов устройств. Метод возвращает информацию о типах устройств с учетом настроек авторизованного пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: GET

URL запроса: https://hosting.glonasssoft.ru/api/v3/users/api/v3/devices/types

В заголовках запроса: X-Auth: Токен авторизации

Ответ:

{

    "deviceTypeId" : "", // ID типа устройства
    "deviceTypeName" : "" // Название типа устройства

}

Раздел: Датчики

Получение списка типов датчиков

 GET /api/v3/sensors/types

Метод позволяет получить список типов датчиков. Метод возвращает информацию о типах датчиков с учетом настроек авторизованного пользователя, указанного в запросе (обязательный параметр в заголовках запроса - токен авторизации «X-Auth»).

Метод запроса: GET

URL запроса: https://hosting.glonasssoft.ru/api/v3/sensors/types

В заголовках запроса:X-Auth: Токен авторизации

Ответ:

{

    "id": "", // ID типа датчика 
    "name": "", // Название
    "description": "", // Описание

}

По вопросам работы PUBLIC API 3.0 можно обращаться на support@glonasssoft.ru 

Tags: Public API API
   

Меню

ГЛОНАССSoft wiki - 2022г