Table of Contents

REST API ЛЭРС УЧЁТ

Начиная с версии 3.35 сервер ЛЭРС УЧЁТ предоставляет REST API, с помощью которого можно проводить интеграцию сторонних систем.

История изменений

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

Документация

Для получения описания доступных интерфейсов перейдите по ссылке http://адрес_сервера_лэрс_учёт:10000/api/swagger

Если у вас ещё не установлен сервер ЛЭРС УЧЁТ, можете воспользоваться документацией нашего сервера.

Аутентификация и авторизация

Для авторизации REST API использует токены JWT, которые нужно передавать в каждом запросе в заголовке Authorization.

Для того, чтобы запросить токен, используется маршрут /api/v1/Login

Параметры для входа в систему:

{
  "login": "логин_на_сервере",
  "password": "пароль_на_сервере",
  "application": "приложение_которое_будет_протоколироваться_в_журнале_действий"
}

В ответе возвращается токен безопасности и дата окончания его срока действия.

{
  "token": "токен_безопасности",
  "tokenExpiration": "2020-06-26T05:23:56.917Z"
}

Полученный токен должен быть отправлен в каждом запросе в заголовке Authorization в виде Bearer токен_безопасности.

Генерация исходного кода

Наш API поддерживает спецификацию OpenApi, это означает, что на основе спецификации можно сгенерировать исходный код для работы с API для большинства языков программирования.

Для этих целей можно использовать специальные инструменты, например Swagger Codegen или NSwag Generator. Для генерации исходного кода следуйте инструкции Getting Started.

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

В версии 3.43 мы начали реализацию редактирования сущностей с помощью операции PATCH. Это позволяет отредактировать только часть полей без необходимость предварительно загружать все остальные свойства объекта. Для того, чтобы передать новые значения используется формат jsonpatch.

Например, чтобы поменять комментарий модели оборудования, используется запрос

PATCH /api/v1/core/equipment/ID/
[
    {
        "op": "add",
        "path": "/Comment",
        "value": "НОВЫЙ_КОММЕНТАРИЙ"
    }
]

Редактирование устройства

Поддерживается редактирование следующих полей:

Поле Описание
/Comment Комментарий
/SealNumber Номер пломбы госповерителя
/LastCalibrationDate Дата последней поверки
/ScheduledCalibrationDate Дата планируемой поверки.