System Information
Цей контент ще не доступний вашою мовою.
Physical Device Identification
Section titled “Physical Device Identification”Returns unique information about the current device, including model, firmware version, MAC address, and public key.
GET /api/identify/
Access Level: 🟨 1
Response:
| Field | Type | Description |
|---|---|---|
manufacturerName | string | Device manufacturer. |
labelName | string | Device model name. |
deviceId | integer | Manufacturer’s device identifier. |
firmwareType | integer | Firmware type (e.g., basic, extended, etc.). |
firmwareVer | integer | Firmware version. |
releaseDate | string | Release date and time in ISO 8601 format. |
macAddress | string / null | Ethernet interface MAC address, or null, if uniqueness is not confirmed. |
devicePublicKey | string / null | Device public key for authentication and secure cloud server connection, or null, if the key is not generated yet, and MC251 requires calibration. |
cloudRegistered | boolean | Flag indicating if the device has its cloud registration data stored. If false, the device has to be registered on the cloud server. |
pinCode | string / null | Cloud registration PIN code (also available on the device label), or null if unknown. |
Example Response:
{ "manufacturerName": "Overvis Ltd.", "labelName": "MC251", "deviceId": 46, "firmwareType": 1, "firmwareVer": 50, "releaseDate": "2026-10-13T10:04:50Z", "macAddress": "AA:BB:CC:DD:EE:FF", "devicePublicKey": "vutsrqponmlkjihgfedcbaUTSRQPONMLKJIHGFEDCBA=", "cloudRegistered": true, "pinCode": "ABCDEFGH"}Firmware Version
Section titled “Firmware Version”GET /api/version/
Access Level: 🟩 0
Response:
| Field | Type | Description |
|---|---|---|
manufacturerName | string | Device manufacturer. |
labelName | string | Device model name. |
deviceId | integer | Manufacturer’s device identifier. |
firmwareType | integer | Firmware type (e.g., basic, extended, etc.). |
firmwareVer | integer | Firmware version. |
releaseDate | string | Release date and time in ISO 8601 format. |
Example Response:
{ "manufacturerName": "Overvis Ltd.", "labelName": "MC251", "deviceId": 46, "firmwareType": 1, "firmwareVer": 50, "releaseDate": "2026-10-13T10:04:50Z"}Get Device State
Section titled “Get Device State”Retrieves the current state of the device by key.
GET /api/state/get/?key&...
Access Level: 🟨 1
Available Keys:
ethernet: Ethernet interface stategsm: GSM interface statevpn: VPN interface statembTcpCallback: Modbus TCP cloud connection stateactivation: Device activation statefwUpdate: Update statembTcpServer: TCP server statembTcpClients: TCP client statestatistics: General statisticsmemTaskfiles: Task files statememCard: SD card statesettings: Settings statetime: Device timemisc: Miscellaneous states
ethernet
Section titled “ethernet”Returns information about the current Ethernet connection state.
Response Fields:
| Field | Type | Description |
|---|---|---|
ip | string / null | Current IP address assigned to the device, or null if not assigned. |
mac | string | Ethernet interface MAC address. |
linkUp | boolean | Indicates if there is an active link. |
Example Response:
{ "ethernet": { "ip": "192.168.1.153", "mac": "d8:80:39:69:0e:6d", "linkUp": true }}Returns information about the current GSM module state.
Response Fields:
| Field | Type | Description |
|---|---|---|
signalLevel | integer / null | GSM signal level in %, or null if GSM is not connected. |
ip | string / null | IP address assigned to the GSM interface, or null if not assigned. |
imei | string / null | Modem IMEI, or null if undefined. |
simState | integer | SIM card state: 0 — not inserted, 1 — inserted and active. |
pinState | integer | PIN code state: |
0 - Unknown state; | ||
1 - PIN not required; | ||
2 - PIN required, attempts unknown; | ||
3 - PIN required, 0 attempts left; | ||
4 - PIN required, 1 attempt left; | ||
5 - PIN required, 2 attempts left; | ||
6 - PIN required, 3 attempts left; | ||
7 - PIN required, >3 attempts left; | ||
8 - Other auth required (PUK, etc.). | ||
ccid | string / null | SIM card CCID, or null if undefined. |
provider | string / null | SIM card operator name, or null if undefined. |
radioBand | string / null | GSM standard: 2g, 3g, 4g, or null if undefined. |
isTcpIpBusy | boolean | Indicates if the GSM interface TCP/IP stack is busy. |
isGsmRegistered | boolean | Indicates registration in the operator’s network. |
isGsmRoaming | boolean | Indicates roaming status. |
isGprsStarted | boolean | Indicates active GPRS connection. |
traficTotal | integer | Total data transferred via GSM interface (in bytes). |
Example Response:
{ "gsm": { "signalLevel": 71, "ip": "18.83.98.100", "imei": "86401106 290973 6", "ccid": "89 38001 16081005614 7", "provider": "Vodafone", "simState": 1, "pinState": 1, "radioBand": "4g", "isTcpIpBusy": false, "isGsmRegistered": true, "isGsmRoaming": false, "isGprsStarted": true, "traficTotal": 20000 }}Returns information about the current VPN (WireGuard) connection state.
Response Fields:
| Field | Type | Description |
|---|---|---|
linkState | string | Connection state: |
disabled - VPN disabled in settings; | ||
netifCreated - Network interface created; | ||
peerConfigured - Peer connection configured; | ||
peerConnected - Connection to peer established; | ||
peerUp - VPN tunnel is up and running. | ||
configServerReached | boolean / null | Configuration server availability. |
lastPeerUp | string / null | Time of last peer connection (ISO 8601), or null. |
netifIp | string / null | VPN interface IP address, or null. |
netifMask | string / null | VPN interface subnet mask, or null. |
peerIp | string / null | Remote peer IP address, or null. |
peerPort | integer | Remote peer port. |
interface | string / null | Connection interface: eth, gsm, or null. |
configState | string | Configuration state: |
errorKey - Error: invalid key; | ||
errorMem - Error: insufficient memory; | ||
disabled - VPN disabled in settings; | ||
pause - Delay between configuration attempts; | ||
serverHostnameResolving - Resolving config server hostname; | ||
serverConnecting - Connecting to config server; | ||
serverConnected - Connected, receiving peer config; | ||
peerHostnameResolving - Resolving peer hostname; | ||
ready - Configuration received and ready. | ||
ownPubKey | string | Device’s own public key. |
Example Response:
{ "vpn": { "linkState": "netifCreated", "configServerReached": true, "lastPeerUp": null, "netifIp": "0.0.0.0", "netifMask": "0.0.0.0", "peerIp": "0.0.0.0", "peerPort": 0, "interface": null, "configState": "serverConnected", "ownPubKey": "vutsrqponmlkjihgfedcbaUTSRQPONMLKJIHGFEDCBA=" }}mbTcpCallback
Section titled “mbTcpCallback”Modbus TCP cloud connection state.
Response Fields:
| Field | Type | Description |
|---|---|---|
state | string | Current connection state (disabled, waiting, connecting, connected). |
waitingTimeSec | integer / null | Time waiting for connection, in seconds. |
interface | string / null | Connection interface: eth, gsm, wg, or null. |
remoteIp | string / null | Server IP address, or null. |
remotePort | integer | Server remote port. |
connectionTimeSec | integer | Time since connection established, in seconds. |
idleTimeSec | integer | Connection idle time, in seconds. |
activationWithCode | string / null | Activation state: |
unused - Device has not received activation code; | ||
activated - Device is activated and bound to network; | ||
set - Device received code and awaits binding; | ||
null - No connection or error. | ||
activationCode | string | 8-digit device activation code. |
Example Response:
{ "mbTcpCallback": [ { "state": "disabled", "waitingTimeSec": null, "interface": null, "remoteIp": null, "remotePort": 0, "connectionTimeSec": 0, "idleTimeSec": 0, "activationWithCode": null, "activationCode": "" } ]}activation
Section titled “activation”Returns information about the current device activation state.
Response Fields:
| Field | Type | Description |
|---|---|---|
infrastructureName | string | Infrastructure name. |
infrastructureShortUrl | string | Short URL to infrastructure site. |
domain | string | Server address used for activation. |
endpointId | string | Unique device identifier. |
endpointName | string | Device name. |
propertyId | string | Organization identifier. |
propertyName | string | Organization name. |
pin | string | 8-digit device PIN code. |
hasBonusesEur | string | Bonus amount on organization account. |
activeTill | string / null | Activation expiration date (ISO 8601), or null if expired. |
supportEmail | string | Support service email. |
Example Response:
{ "activation": { "infrastructureName": "Overvis", "infrastructureShortUrl": "https://c.overvis.com/", "domain": "ocp.overvis.com", "endpointId": "123456", "endpointName": "MC251", "propertyId": "7890", "propertyName": "My Organization", "pin": "ABCDEFGH", "hasBonusesEur": "0.00", "activeTill": "2027-01-01T00:00:00Z", "supportEmail": "support@overvis.com" }}fwUpdate
Section titled “fwUpdate”Firmware update process state.
Response Fields:
| Field | Type | Description |
|---|---|---|
updateState | string | Update state: |
SAVED_FILE_UNKNOWN - Update file not found; | ||
CARD_ABSENT - SD card not installed; | ||
CARD_NOT_READY - SD card not ready; | ||
CARD_FILES_CHECKING - Checking update files on SD card; | ||
CARD_FILE_UPDATED_READY - Update file on SD card ready; | ||
FILE_VERSION_MATCHES_ACTIVE - File version matches current. | ||
downloadState | string | Download state: |
SERVER_FILE_UNKNOWN - File on server not determined; | ||
DOWNLOADER_BUSY - Downloader busy; | ||
CARD_ABSENT - SD card not installed; | ||
CARD_NOT_READY - SD card not ready; | ||
CARD_FILES_CHECKING - Checking files on SD card; | ||
SERVER_FILE_UPDATED_READY - File on server ready for download; | ||
SERVER_FILE_DOWNLOADING - Downloading file; | ||
DOWNLOADED_FILE_CHECKING_INTEGRITY - Checking integrity; | ||
DOWNLOADED_FILE_CHECKING_APPLICABILITY - Checking compatibility; | ||
DOWNLOADED_FILE_SAVING - Saving file to SD card; | ||
SERVER_FILE_VERSION_MATCHES_SAVED - Server version matches saved. | ||
url | string / null | Firmware file URL or null. |
isAutomaticDowngradeEnabled | boolean | Indicates if the firmware may be automatically downgraded. |
progress | string / null | Download progress percentage (0.00 – 100.00) or null. |
errorCode | string / null | Error code if any, or null. Common codes: |
ERROR_FR_DISK_ERR - Low-level disk error; | ||
ERROR_FR_INT_ERR - Internal file system error; | ||
ERROR_FR_NOT_READY - Media not ready; | ||
ERROR_FR_NO_FILE - File not found; | ||
ERROR_FR_DENIED - Access denied; | ||
ERROR_FR_EXIST - File already exists; | ||
ERROR_FR_WRITE_PROTECTED - Write protected; | ||
ERROR_FR_NOT_ENOUGH_CORE - Not enough memory; | ||
ERROR_HTTP_RESPONSE - General HTTP error; | ||
ERROR_CONNECT - TCP connection error; | ||
ERROR_RESPONSE_TIMEOUT - Server timeout. | ||
availableVersion | integer / null | Firmware version available for download, or null. |
savedVersion | integer / null | Firmware version saved on SD card, or null. |
currentVersion | integer | Currently installed firmware version. |
Example Response:
{ "fwUpdate": { "updateState": "SAVED_FILE_UNKNOWN", "downloadState": "SERVER_FILE_DOWNLOADING", "errorCode": null, "url": "static.overvis.com/assets/firmware/MC251-6-1/MC251-6-1-current.fus", "isAutomaticDowngradeEnabled": true, "progress": "0.0", "availableVersion": 50, "savedVersion": 48, "currentVersion": 48 }}mbTcpServer
Section titled “mbTcpServer”List of active Modbus TCP server connections.
Response Fields:
| Field | Type | Description |
|---|---|---|
isActive | boolean | Indicates if the server is running. |
listenPortEth | integer | Port for Ethernet clients. |
listenPortGsm | integer | Port for GSM clients. |
clients | array | Array of client objects. |
Client Object Fields:
| Field | Type | Description |
|---|---|---|
interface | string | Connection interface: eth, gsm, wg. |
remoteIp | string | Remote client IP address. |
remotePort | integer | Remote client TCP port. |
connectionTimeSec | integer | Time from the connection establishment (in seconds). |
idleTimeSec | integer | Time of the connection silence pause (in seconds). |
Example Response:
{ "mbTcpServer": { "isActive": true, "listenPortEth": 502, "listenPortGsm": 0, "clients": [ { "interface": "eth", "remoteIp": "192.168.1.28", "remotePort": 54274, "connectionTimeSec": 46, "idleTimeSec": 0 } ] }}mbTcpClients
Section titled “mbTcpClients”State of Modbus TCP clients.
Response Fields:
| Field | Type | Description |
|---|---|---|
state | string | Current state (waiting, connected, connecting). |
waitingTimeSec | integer / null | Time waiting for connection, in seconds. |
interface | string / null | Connection interface: eth, gsm, wg or null. |
remoteIp | string | Client IP address. |
remotePort | integer | Client remote port. |
connectionTimeSec | integer | Time since connection established, in seconds. |
idleTimeSec | integer | Connection idle time, in seconds. |
Example Response:
{ "mbTcpClients": [ null, { "state": "connected", "waitingTimeSec": 0, "interface": "eth", "remoteIp": "192.168.0.111", "remotePort": 55234, "connectionTimeSec": 600, "idleTimeSec": 543 }, null ]}statistics
Section titled “statistics”Device operation statistics.
Response Fields:
| Field | Type | Description |
|---|---|---|
serialAvgPerSecReq | integer | Average RS-485 request rate (req/sec). |
serialAvgPerSecResp | integer | Average RS-485 response rate (resp/sec). |
serialAvgPerSecLoad | integer | Average RS-485 load (%/sec). |
mbAvgPerSecReq | integer | Average Modbus request rate (req/sec). |
ethAvgPerSecKb | string | Average Ethernet data rate (KB/sec). |
gsmAvgPerSecKb | string | Average GSM data rate (KB/sec). |
mbTcpServerMaxClients | integer | Maximum number of clients on Modbus TCP server. |
runTimeMin | integer | Uptime since last reboot (minutes). |
totalRunTimeMin | integer | Total device uptime (minutes). |
Example Response:
{ "statistics": { "serialAvgPerSecReq": 6, "serialAvgPerSecResp": 0, "serialAvgPerSecLoad": 93, "mbAvgPerSecReq": 6, "ethAvgPerSecKb": "0.0", "gsmAvgPerSecKb": "0.0", "mbTcpServerMaxClients": 0, "runTimeMin": 1, "totalRunTimeMin": 6971 }}memTaskfiles
Section titled “memTaskfiles”Task files and programmable logic state information.
Example Request:
GET /api/state/get/?memTaskfiles
Response Fields:
| Field | Type | Description |
|---|---|---|
filesFound | integer / null | Number of task files found on the SD card, or null if undetermined. |
loadedOn | string / null | Date and time when task files were loaded (ISO 8601), or null. |
heapUsedB | integer / null | Memory used for task execution in bytes, or null. |
errorFile | string / null | File where the first error was found, or null if there are none. |
errorLine | integer / null | Line number of the first error, or null if there are none. |
errorCode | string / null | Task file compilation error code, or null if there are none. |
tasks | array | Array of loaded task objects. |
Compilation Error Codes:
| Code | Description |
|---|---|
ERROR_IO | I/O error while processing a task file. |
ERROR_OUT_OF_MEMORY | Not enough memory to process a task file. |
ERROR_NO_PATH | Cannot open the task files directory. |
ERROR_NO_FILE | Cannot open a task file. |
ERROR_LINE_UNRECOGNIZED | Expected an explicit line type such as DEF, PUT, IF, or DO. |
ERROR_ITEM_NAME | Name is too long or invalid. |
ERROR_UNKNOWN_TYPE | Too many elements or the line type cannot be determined. |
ERROR_EXPECTED_ASTERISK | Unterminated string escape sequence. |
ERROR_ITEM_REF | Invalid item reference. |
ERROR_ILLEGAL_ARGUMENT | Immediate value is outside the allowed range. |
ERROR_EXPECTED_SEPARATOR | More elements expected, or unexpected item name found. |
ERROR_VALUE_BITSIZE_UNSUPPORTED | This value bit size is not supported. |
ERROR_EXPECTED_DOUBLE_QOUTES | Unterminated string literal. |
ERROR_EXPECTED_EOL | Task file line is too long. |
ERROR_VERSION_UNSUPPORTED | Task file version is not supported. |
ERROR_CRC | Task data corruption detected (CRC mismatch). |
ERROR_UID_BROADCAST | Broadcast UID 0 cannot be used for reading. |
ERROR_FILE_FORMAT_UNSUPPORTED | Unsupported file format. Try UTF-8 or ASCII. |
ERROR_NAME_RESERVED | Reserved word used as an item name. |
ERROR_NAME_ALREADY_DEFINED | Duplicate item names. |
ERROR_UNSATISFIED_FORWARD_DECLARATION | Reference to a missing item. |
ERROR_STRING_FUNCTION_ARGUMENT_TOO_SHORT | String function argument is too short. |
ERROR_VALUE_FORMAT | Invalid immediate value format. |
ERROR_ILLEGAL_ARRAY_INDEX | Invalid array index. |
ERROR_ARRAY_INDIRECT_INDEX_NOT_ALLOWED_HERE | Indirect array index is not allowed here. |
ERROR_ITEM_UNDECLARED | Item is not declared. |
ERROR_OUT_OF_PARAMETER_STORAGE_MEMORY | Not enough memory for parameter storage. |
ERROR_ILLEGAL_ARRAY_SIZE | Invalid array size. |
ERROR_UNEXPECTED_VARIABLE_REF | Unexpected variable reference. |
ERROR_UNEXPECTED_CONDITION_REF | Unexpected condition reference. |
ERROR_INDEX_BITSIZE_UNSUPPORTED | This index bit size is not supported. |
ERROR_EXPECTED_CLOSING_BRACKET | Closing bracket expected. |
ERROR_UNKNOWN_STRING_FUNCTION | Unknown string function. |
ERROR_LOGGING_UNMAPPED_PARAMETER | Logging an unmapped parameter. |
ERROR_MAPPED_PARAMETER_INTERSECT_PARTIALLY | Mapped parameters partially overlap. |
ERROR_MULTIPLE_WRITERS_FOR_MAPPED_PARAMETER | Multiple writers for the same mapped parameter. |
ERROR_OBSOLETE_FILE_LAYOUT | Obsolete task file layout. |
Task Object Fields:
| Field | Type | Description |
|---|---|---|
sourceFile | string | File from which the task was loaded. |
periodMs | integer | Task cycle period in milliseconds. |
state | string | Current task state: idle or running. |
lastRunOn | string / null | Time of the last task cycle run (ISO 8601), or null. |
lastErrorCode | string / null | Task execution error code, or null if there is none. |
Task Execution Error Codes:
| Code | Description |
|---|---|
EXC_MB_ILLEGAL_FUNCTION | Modbus: illegal function. |
EXC_MB_ILLEGAL_DATA_ADDRESS | Modbus: illegal data address. |
EXC_MB_ILLEGAL_DATA_VALUE | Modbus: illegal data value. |
EXC_MB_SLAVE_DEVICE_FAILURE | Modbus: slave device failure. |
EXC_MB_ACKNOWLEDGE | Modbus: request acknowledged. |
EXC_MB_SLAVE_BUSY | Modbus: slave device busy. |
EXC_MB_MEMORY_PARITY_ERROR | Modbus: memory parity error. |
EXC_PARAM_PATH_UNAVAILABLE | Device unavailable; request not sent. |
EXC_PARAM_TARGET_FAILED | Device did not respond. |
EXC_TYPE_UNKNOWN | Unknown parameter type. |
EXC_ACTION_UNKNOWN | Unknown action type. |
EXC_IO | External resource error. |
EXC_OUT_OF_MEMORY | Not enough memory. |
EXC_STACK_OVERFLOW | Stack overflow (too many CALL). |
EXC_STACK_UNDERFLOW | Stack underflow (RETURN without CALL). |
EXC_RESULT_INFINITY | Result is infinity (division by zero). |
EXC_RESULT_COMPLEX | Result is complex (SQRT of negative). |
EXC_OUT_OF_BOUNDS | Index out of bounds. |
EXC_UNKNOWN | Unknown error. |
Example Response:
{ "memTaskfiles": { "filesFound": 2, "loadedOn": "2026-01-12T15:17:31Z", "heapUsedB": 814, "errorFile": "/TASKS/CLOCKS.TXT", "errorLine": 3, "errorCode": "ERROR_UNSATISFIED_FORWARD_DECLARATION", "tasks": [ { "sourceFile": "/TASKS/INIT.TXT", "periodMs": 60000, "state": "idle", "lastRunOn": "2026-01-12T15:18:31Z", "lastErrorCode": null } ] }}memCard
Section titled “memCard”SD card state information.
Response Fields:
| Field | Type | Description |
|---|---|---|
capacityKb | integer / null | Total SD card capacity in KB, or null. |
freeKb | integer / null | Free space on SD card in KB, or null. |
isMounted | boolean | Mount status (true — mounted). |
isInserted | boolean | Insertion status (true — inserted). |
Example Response:
{ "memCard": { "capacityKb": 7667712, "freeKb": 7651296, "isMounted": true, "isInserted": true }}settings
Section titled “settings”Settings state information.
Response Fields:
| Field | Type | Description |
|---|---|---|
modifyOn | string / null | Last settings modification time (ISO 8601), or null. |
isUserModified | boolean | Indicates if settings are modified but not applied. |
isDefault | boolean | Indicates if current settings are defaults. |
Example Response:
{ "settings": { "modifyOn": "2025-05-14T14:58:22+03:00", "isUserModified": true, "isDefault": false }}Current device time information.
Response Fields:
| Field | Type | Description |
|---|---|---|
timeLocal | string | Current local time (ISO 8601). |
timeUtc | string | Current UTC time (ISO 8601). |
isDst | boolean | DST flag. |
sunriseLocalSec | integer / null | Sunrise time in seconds from start of day, or null. |
sunsetLocalSec | integer / null | Sunset time in seconds from start of day, or null. |
polarDay | boolean | Indicates polar day. |
polarNight | boolean | Indicates polar night. |
Example Response:
{ "time": { "timeLocal": "2025-05-14T14:29:30+03:00", "isDst": true, "timeUtc": "2025-05-14T11:29:30+00:00", "sunriseLocalSec": 13950, "sunsetLocalSec": 79606, "polarDay": false, "polarNight": false }}Additional diagnostic data.
Response Fields:
| Field | Type | Description |
|---|---|---|
voltage | string / null | Current supply voltage, or null. |
temperature | string / null | Current temperature in Celsius, or null. |
Example Response:
{ "misc": { "voltage": "11.9", "temperature": "28" }}