HTTP API
Цей HTTP API надає інтерфейс для взаємодії з пристроєм Overvis MC252. Усі запити виконуються до шляхів, що починаються з /api. API підтримує методи GET та POST, деякі з яких вимагають авторизації.
Загальні принципи
Section titled “Загальні принципи”- Усі дані передаються у форматі 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 - Адміністратор
Авторизація
Section titled “Авторизація”Авторизація через API
Section titled “Авторизація через API”Для виконання захищених запитів необхідно завершити процедуру авторизації:
- Отримайте
saltна/api/login/salt/. - Увійдіть через
/api/login/, надіславши SHA1-хеш пароля:login + password + salt. - Усі наступні запити повинні включати токен сеансу
Bearer xxxxxxxxxxу заголовкуAuthorized.
Вихід виконується через /api/cmd/logout/.
Після успішної авторизації користувач отримує рівень доступу 🟨 1 (Досвідчений користувач).
Авторизація через кнопку на передній панелі
Section titled “Авторизація через кнопку на передній панелі”Натисніть кнопку на передній панелі пристрою MC252 один раз. Після цього користувач з правами Гостя тимчасово отримує рівень доступу 🟨 1 (Досвідчений користувач) на 10 хвилин.
Авторизація через VPN Cloud
Section titled “Авторизація через VPN Cloud”Усі запити, що надходять з VPN cloud, автоматично отримують рівень доступу 🟥 2 — Адміністратор.
Огляд кінцевих точок
Section titled “Огляд кінцевих точок”GET-запити
Section titled “GET-запити”| Шлях | Призначення | Рівень доступу |
|---|---|---|
/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 |
POST-запити
Section titled “POST-запити”| Шлях | Призначення | Рівень доступу |
|---|---|---|
/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 |