HTTP API
To API HTTP zapewnia interfejs do interakcji z urządzeniem Overvis MC252. Wszystkie żądania są wysyłane do ścieżek rozpoczynających się od /api. API obsługuje metody GET i POST, z których niektóre wymagają autoryzacji.
Ogólne zasady
Dział zatytułowany „Ogólne zasady”- Wszystkie dane są przesyłane w formacie JSON.
- Pomyślne odpowiedzi używają statusu
200 OK. - Błędy są obsługiwane odpowiednimi statusami HTTP (
400 Bad Request,404 Not Found,503 Service Unavailableitp.). - Błędy żądań API dodatkowo zawierają obiekt JSON:
{ "error": "kod błędu", "message": "tekst błędu" }. - Obsługiwane jest HTTP keep-alive.
- Dostęp do API wykorzystuje 3 poziomy dostępu:
- 🟩 0 - Gość
- 🟨 1 - Użytkownik zaawansowany
- 🟥 2 - Administrator
Autoryzacja
Dział zatytułowany „Autoryzacja”Autoryzacja przez API
Dział zatytułowany „Autoryzacja przez API”Aby wykonywać chronione żądania, należy ukończyć procedurę autoryzacji:
- Pobierz
saltna/api/login/salt/. - Zaloguj się przez
/api/login/, wysyłając hash hasła SHA1:login + password + salt. - Wszystkie kolejne żądania muszą zawierać token sesji
Bearer xxxxxxxxxxw nagłówkuAuthorized.
Wylogowanie odbywa się przez /api/cmd/logout/.
Po pomyślnej autoryzacji użytkownik otrzymuje poziom dostępu 🟨 1 (Użytkownik zaawansowany).
Autoryzacja przez przycisk na panelu przednim
Dział zatytułowany „Autoryzacja przez przycisk na panelu przednim”Naciśnij raz przycisk na panelu przednim urządzenia MC252. Następnie użytkownik z prawami Gościa tymczasowo otrzymuje poziom dostępu 🟨 1 (Użytkownik zaawansowany) na 10 minut.
Autoryzacja przez VPN Cloud
Dział zatytułowany „Autoryzacja przez VPN Cloud”Wszystkie żądania pochodzące z VPN cloud automatycznie otrzymują poziom dostępu 🟥 2 — Administrator.
Podsumowanie endpointów
Dział zatytułowany „Podsumowanie endpointów”Żądania GET
Dział zatytułowany „Żądania GET”| Ścieżka | Cel | Poziom dostępu |
|---|---|---|
/api/version/ | Wersja firmware urządzenia | 🟩 0 |
/api/login/salt/ | Pobierz salt do hashowania hasła | 🟩 0 |
/api/identify/ | Fizyczna identyfikacja urządzenia | 🟨 1 |
/api/state/get/?key&... | Pobierz aktualny stan urządzenia według klucza (lub wszystkie) | 🟨 1 |
/api/settings/active/get/?key&... | Pobierz aktywne ustawienia według klucza (lub wszystkie) | 🟨 1 |
/api/settings/saved/get/?key&... | Pobierz zapisane ustawienia według klucza (lub wszystkie) | 🟨 1 |
/api/modbus/resp/?tid=... | Pobierz odpowiedź Modbus według tid | 🟨 1 |
/api/modbus/find/result/?list | Pobierz wynik wyszukiwania urządzeń Modbus | 🟨 1 |
/api/modbus/class-find/result/ | Pobierz wynik wyszukiwania szablonu Modbus | 🟨 1 |
Żądania POST
Dział zatytułowany „Żądania POST”| Ścieżka | Cel | Poziom dostępu |
|---|---|---|
/api/login/ | Uwierzytelnianie użytkownika | 🟩 0 |
/api/cmd/logout/ | Zakończ sesję | 🟨 1 |
/api/cmd/memory/card_eject/ | Bezpieczne wysunięcie karty SD | 🟨 1 |
/api/cmd/time/sync/ | Synchronizacja czasu | 🟨 1 |
/api/cmd/time/set/ | Ustaw czas | 🟨 1 |
/api/cmd/reboot/ | Uruchom ponownie urządzenie | 🟨 1 |
/api/cmd/callback/reconnect/ | Połącz ponownie z serwerem chmury przez Modbus | 🟨 1 |
/api/cmd/updates/download/ | Pobierz dostępne aktualizacje | 🟨 1 |
/api/cmd/updates/program/ | Zastosuj aktualizację | 🟨 1 |
/api/cmd/settings/reset/ | Zresetuj ustawienia do wartości fabrycznych | 🟨 1 |
/api/cmd/settings/import/ | Importuj konfigurację | 🟨 1 |
/api/cmd/settings/export/ | Eksportuj bieżące ustawienia | 🟨 1 |
/api/cmd/gsm/sms-test/ | Wyślij testową wiadomość SMS | 🟨 1 |
/api/activation/ | Aktywacja licencji lub urządzenia | 🟨 1 |
/api/card/file/info/ | Pobierz informacje o pliku na karcie SD | 🟨 1 |
/api/card/file/read/ | Odczytaj plik z karty SD | 🟨 1 |
/api/card/file/write/ | Zapisz plik na karcie SD | 🟨 1 |
/api/card/remove/ | Usuń plik z karty SD | 🟨 1 |
/api/card/dir/ | Pobierz listę plików i katalogów | 🟨 1 |
/api/settings/saved/set/ | Zmień parametry konfiguracji | 🟨 1 |
/api/modbus/req/ | Wyślij żądanie Modbus | 🟨 1 |
/api/modbus/find/start/ | Rozpocznij wyszukiwanie urządzeń Modbus na RS-485 | 🟨 1 |
/api/modbus/find/stop/ | Zatrzymaj/anuluj wyszukiwanie urządzeń Modbus na RS-485 | 🟨 1 |
/api/modbus/class-find/search-meta-info/ | Pobierz meta informacje z szablonu wyszukiwania | 🟨 1 |
/api/modbus/class-find/start/ | Rozpocznij wyszukiwanie urządzeń Modbus według szablonu | 🟨 1 |
/api/modbus/class-find/stop/ | Zatrzymaj/anuluj wyszukiwanie urządzeń Modbus według szablonu | 🟨 1 |