Перейти до вмісту

HTTP API

Цей HTTP API надає інтерфейс для взаємодії з пристроєм Overvis MC252. Усі запити виконуються до шляхів, що починаються з /api. API підтримує методи GET та POST, деякі з яких вимагають авторизації.

  • Усі дані передаються у форматі JSON.
  • Успішні відповіді використовують статус 200 OK.
  • Помилки обробляються відповідними HTTP-статусами (400 Bad Request, 404 Not Found, 503 Service Unavailable тощо).
  • Помилки запитів API додатково містять об’єкт JSON: { "error": "код помилки", "message": "текст помилки" }.
  • Підтримується HTTP keep-alive.
  • Доступ до API використовує 3 рівні доступу:
    • 🟩 0 - Гість
    • 🟨 1 - Досвідчений користувач
    • 🟥 2 - Адміністратор

Для виконання захищених запитів необхідно завершити процедуру авторизації:

  1. Отримайте salt на /api/login/salt/.
  2. Увійдіть через /api/login/, надіславши SHA1-хеш пароля: login + password + salt.
  3. Усі наступні запити повинні включати токен сеансу Bearer xxxxxxxxxx у заголовку Authorized.

Вихід виконується через /api/cmd/logout/. Після успішної авторизації користувач отримує рівень доступу 🟨 1 (Досвідчений користувач).

Авторизація через кнопку на передній панелі

Section titled “Авторизація через кнопку на передній панелі”

Натисніть кнопку на передній панелі пристрою MC252 один раз. Після цього користувач з правами Гостя тимчасово отримує рівень доступу 🟨 1 (Досвідчений користувач) на 10 хвилин.

Авторизація через VPN Cloud

Section titled “Авторизація через VPN Cloud”

Усі запити, що надходять з VPN cloud, автоматично отримують рівень доступу 🟥 2 — Адміністратор.

ШляхПризначенняРівень доступу
/api/version/Версія прошивки пристрою🟩 0
/api/login/salt/Отримати salt для хешування пароля🟩 0
/api/identify/Фізична ідентифікація пристрою🟨 1
/api/state/get/?key&...Отримати поточний стан пристрою за ключем (або всі)🟨 1
/api/settings/active/get/?key&...Отримати активні налаштування за ключем (або всі)🟨 1
/api/settings/saved/get/?key&...Отримати збережені налаштування за ключем (або всі)🟨 1
/api/modbus/resp/?tid=...Отримати відповідь Modbus за tid🟨 1
/api/modbus/find/result/?listОтримати результат пошуку пристроїв Modbus🟨 1
/api/modbus/class-find/result/Отримати результат пошуку за шаблоном Modbus🟨 1
ШляхПризначенняРівень доступу
/api/login/Аутентифікація користувача🟩 0
/api/cmd/logout/Завершити сеанс🟨 1
/api/cmd/memory/card_eject/Безпечне вилучення SD-карти🟨 1
/api/cmd/time/sync/Синхронізація часу🟨 1
/api/cmd/time/set/Встановити час🟨 1
/api/cmd/reboot/Перезавантажити пристрій🟨 1
/api/cmd/callback/reconnect/Перепідключитися до хмарного сервера через Modbus🟨 1
/api/cmd/updates/download/Завантажити доступні оновлення🟨 1
/api/cmd/updates/program/Застосувати оновлення🟨 1
/api/cmd/settings/reset/Скинути налаштування до заводських🟨 1
/api/cmd/settings/import/Імпортувати конфігурацію🟨 1
/api/cmd/settings/export/Експортувати поточні налаштування🟨 1
/api/cmd/gsm/sms-test/Надіслати тестове SMS🟨 1
/api/activation/Активація ліцензії або пристрою🟨 1
/api/card/file/info/Отримати інформацію про файл на SD-карті🟨 1
/api/card/file/read/Читати файл з SD-карти🟨 1
/api/card/file/write/Записати файл на SD-карту🟨 1
/api/card/remove/Видалити файл з SD-карти🟨 1
/api/card/dir/Отримати список файлів і каталогів🟨 1
/api/settings/saved/set/Змінити параметри конфігурації🟨 1
/api/modbus/req/Надіслати запит Modbus🟨 1
/api/modbus/find/start/Почати пошук пристроїв Modbus на RS-485🟨 1
/api/modbus/find/stop/Зупинити/скасувати пошук пристроїв Modbus на RS-485🟨 1
/api/modbus/class-find/search-meta-info/Отримати мета-інформацію з шаблону пошуку🟨 1
/api/modbus/class-find/start/Почати пошук пристроїв Modbus за шаблоном🟨 1
/api/modbus/class-find/stop/Зупинити/скасувати пошук пристроїв Modbus за шаблоном🟨 1