GET /api/settings/get/?meta&general&dateTime&display&access&recorder&network&ntp&web&modbus&vpnWireguard&channels&protection
Retrieve one or more top-level persistent-settings groups.
Auth: Bearer.
The
accesspasswords are write-only and are not included in responses at any access level. ThevpnWireguard.privateKeyprivate key is returned only topowerUser; foruser, the field isnull.
Query params
Section titled “Query params”Each query key is a flag requesting the corresponding group. Valid keys:
meta, general, dateTime, display, access, recorder, network, ntp, web, modbus, vpnWireguard, channels, protection
- At least one key is required.
- Unknown key →
404 ERROR_NOT_FOUND. - No keys →
400 ERROR_API_PARSING. - Memory budget exceeded →
507 ERROR_NO_MEMORY.
Response 200
Section titled “Response 200”{ "meta": { "sequence": 1, "fwVersion": "1.0", "isDefault": false, "savedAt": "2026-04-16T15:00:00Z", "dataLength": 512, "dataCrc32": "075bcd15", "headerCrc32": "3ade68b1" }, "general": { "language": "en", "logDebugMask": 0 }, "dateTime": { "timezoneOffset": 180, "dst": { "mode": 0, "deltaMin": 60, "startLocal": "2026-03-29T03:00:00", "endLocal": "2026-10-25T03:00:00" } }, "display": { "contrast": 50, "activeBacklightPercent": 80, "idleBacklightEnable": false, "idleBacklightPercent": 20, "idleTimeoutSec": 300 }, "access": { "devPasswordEnable": true, "webUserPassEnable": true, "webPwrPassEnable": true, "modbusPasswordEnable": true }, "recorder": { "enabled": false, "periodSec": 600 }, "network": { "enabled": true, "dhcpEnable": true, "dns": ["8.8.8.8", "8.8.4.4"], "ipAddress": "192.168.1.50", "subnetMask": "255.255.255.0", "gateway": "192.168.1.1" }, "ntp": { "enabled": true, "syncPeriodSec": 3600, "server1": "pool.ntp.org", "server2": "time.google.com" }, "web": { "enabled": true, "port": 80, "vpnTrusted": false, "vpnAccessLevel": 1 }, "modbus": { "enabled": false, "unitId": 1, "port": 502, "timeoutSec": 90, "protectMode": 0, "vpnAccessLevel": 0 }, "vpnWireguard": { "enabled": false, "autoConfigEnable": false, "autoConfigUrl": "https://overvis.io:4359/api/handshake/", "privateKey": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=", "address": "10.0.0.2/24", "peerPublicKey": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=", "peerHostname": "vpn.example.com", "peerPort": 51820, "allowedIps": ["0.0.0.0/0", "0.0.0.0/0"], "keepaliveSec": 25 }, "channels": { "filterLevel": 1, "items": [ { "enabled": true, "sensorTypeId": 1, "userOffset": 0, "ptcMinikaNominal": 0, "linked": 0 } ] }, "protection": { "trip": { "delaySec": 1, "channels": [{ "threshold": 120, "hysteresis": 5 }] }, "alarm": { "delaySec": 1, "channels": [{ "threshold": 100, "hysteresis": 5 }] }, "fan": { "mode": 1, "delaySec": 1, "channels": [{ "threshold": 80, "hysteresis": 5 }] }, "fault": { "delaySec": 1 } }}Only explicitly requested groups are returned.
Group meta
Section titled “Group meta”| Field | Type | Description |
|---|---|---|
sequence | number | Settings save sequence number |
fwVersion | string | Version of the firmware that created the snapshot |
isDefault | boolean | Default settings |
savedAt | string | Time of the most recent save (ISO 8601 UTC) |
dataLength | number | Data length |
dataCrc32 | string | Data CRC32 (hex, 8 characters) |
headerCrc32 | string | Header CRC32 (hex, 8 characters) |
Group general
Section titled “Group general”| Field | Type | Description |
|---|---|---|
language | string | Interface language |
logDebugMask | number | Debug-log module bitmask (bit0 = WireGuard) |
Group dateTime
Section titled “Group dateTime”| Field | Type | Description |
|---|---|---|
timezoneOffset | number | Time-zone offset in minutes |
dst | object | Daylight-saving-time settings |
dst.mode | number | DST mode |
dst.deltaMin | number | Offset amount in minutes |
dst.startLocal | string | DST start (local time) |
dst.endLocal | string | DST end (local time) |
Group display
Section titled “Group display”| Field | Type | Description |
|---|---|---|
contrast | number | Contrast |
activeBacklightPercent | number | Active backlight brightness, % |
idleBacklightEnable | boolean | Whether the backlight dims when idle |
idleBacklightPercent | number | Idle backlight brightness, % |
idleTimeoutSec | number | Idle timeout before dimming, seconds |
Group access
Section titled “Group access”| Field | Type | Description |
|---|---|---|
devPasswordEnable | boolean | Require a password when entering the local menu |
webUserPassEnable | boolean | Require the user-level web-access password |
webPwrPassEnable | boolean | Require the powerUser-level web-access password |
modbusPasswordEnable | boolean | Require a password to unlock protected Modbus TCP operations |
The devPassword, webUserPass, webPwrPass, and modbusPassword fields are intentionally omitted from the response. The API exposes neither saved passwords nor whether a custom value has been set. Clients must use only the ...PasswordEnable flags as the protection state. At the user level, these flags are returned as null; their values are available to powerUser.
Group recorder
Section titled “Group recorder”| Field | Type | Description |
|---|---|---|
enabled | boolean | Temperature recording is enabled |
periodSec | number | Recording period in seconds |
Group network
Section titled “Group network”| Field | Type | Description |
|---|---|---|
enabled | boolean | Ethernet is enabled |
dhcpEnable | boolean | DHCP is enabled |
dns | string[] | DNS servers |
ipAddress | string | Static IP address |
subnetMask | string | Subnet mask |
gateway | string | Gateway |
Group ntp
Section titled “Group ntp”| Field | Type | Description |
|---|---|---|
enabled | boolean | NTP is enabled |
syncPeriodSec | number | Synchronization period (seconds) |
server1 | string | Primary NTP server |
server2 | string | Secondary NTP server |
Group web
Section titled “Group web”| Field | Type | Description |
|---|---|---|
enabled | boolean | Web server is enabled |
port | number | HTTP port |
vpnTrusted | boolean | Trust web access through the VPN |
vpnAccessLevel | number | Access through the VPN: 0 = standard password authorization, 1 = user, 2 = powerUser |
Group modbus
Section titled “Group modbus”| Field | Type | Description |
|---|---|---|
enabled | boolean | Modbus TCP is enabled |
unitId | number | Unit ID |
port | number | TCP port |
timeoutSec | number | Timeout (seconds) |
protectMode | number | Protection mode: 0 = none, 1 = write-protect, 2 = read-write-protect |
vpnAccessLevel | number | Access through the VPN: 0 = disabled, 1 = uses general protection, 2 = read-only, 3 = read-write |
Group vpnWireguard
Section titled “Group vpnWireguard”| Field | Type | Description |
|---|---|---|
enabled | boolean | WireGuard is enabled |
autoConfigEnable | boolean | Overvis auto-configuration mode (parameters are retrieved from the cloud using the device identity) |
autoConfigUrl | string | Auto-configuration server URL |
privateKey | string | Static WireGuard private key in base64 |
address | string | Local interface address in CIDR notation, for example 10.0.0.2/24 |
peerPublicKey | string | Static WireGuard peer public key in base64 |
peerHostname | string | Peer hostname |
peerPort | number | Peer port |
allowedIps | string[] | Exactly 2 peer CIDR routes |
keepaliveSec | number | Persistent keepalive interval in seconds |
- When
autoConfigEnable = false, all staticvpnWireguardfields are used, including keys and the endpoint. - When
autoConfigEnable = true, the staticvpnWireguardfields are ignored at runtime; WireGuard/Overvis obtains parameters through the service identity API for automatic configuration.
Group channels
Section titled “Group channels”| Field | Type | Description |
|---|---|---|
filterLevel | number | Filter level |
items | array | Array of 4 channels |
channels.items[]
Section titled “channels.items[]”| Field | Type | Description |
|---|---|---|
enabled | boolean | Channel is enabled |
sensorTypeId | number | Sensor type ID (see /api/reference/sensor-types/) |
userOffset | number | User offset |
ptcMinikaNominal | number | PTC Minika nominal value |
linked | number | Membership in the shared TRIP/ALARM/FAN threshold and hysteresis group: 0 = independent, 1 = linked |
Group protection
Section titled “Group protection”protection.trip / protection.alarm
Section titled “protection.trip / protection.alarm”| Field | Type | Description |
|---|---|---|
delaySec | number | Activation delay (seconds) |
channels | array | Per-channel setpoints (4 elements) |
protection.trip.channels[] / protection.alarm.channels[]
Section titled “protection.trip.channels[] / protection.alarm.channels[]”| Field | Type | Description |
|---|---|---|
threshold | number | Temperature setpoint |
hysteresis | number | Hysteresis |
protection.fan
Section titled “protection.fan”| Field | Type | Description |
|---|---|---|
mode | number | Operating mode |
delaySec | number | Activation delay (seconds) |
channels | array | Per-channel setpoints (4 elements) |
protection.fault
Section titled “protection.fault”| Field | Type | Description |
|---|---|---|
delaySec | number | Activation delay (seconds) |
Ranges and Constraints
Section titled “Ranges and Constraints”The ranges below match the firmware constraints in Application/User/settings.h.
general.language:en | pl | ua | ru.general.logDebugMask:0..65535(bitmask).dateTime.timezoneOffset:-720..840minutes.dateTime.dst.mode:0..3(OFF,EU,US,MANUAL).dateTime.dst.deltaMin:0..180minutes.display.contrast:0..64.display.activeBacklightPercent:0..100.display.idleBacklightEnable:true | false.display.idleBacklightPercent:0..100.display.idleTimeoutSec:30..3600seconds.access.devPasswordEnable,access.webUserPassEnable,access.webPwrPassEnable,access.modbusPasswordEnable:true | false.- The
accesspasswords are not returned by this endpoint; their write constraints are described inPOST /api/settings/set/. recorder.enabled:true | false.recorder.periodSec:5..3600seconds.ntp.syncPeriodSec:300..86400seconds.ntp.server1,ntp.server2: up to31characters each.web.port:1..65535.web.vpnTrusted:true | false.web.vpnAccessLevel:0..2(password,user,powerUser);0uses standard password authorization.modbus.unitId:0..247;0— accept requests with any Unit ID.modbus.port:1..65535.modbus.timeoutSec:1..3600seconds.modbus.protectMode:0..2(none,write-protect,read-write-protect).modbus.vpnAccessLevel:0..3(disabled,password,read-only,read-write).vpnWireguard.peerPort:1..65535.vpnWireguard.keepaliveSec:1..300seconds.channels.filterLevel:1..10.channels.items[].sensorTypeId:0..MSR_SENSOR_COUNT-1; valid values are published throughGET /api/reference/sensor-types/.channels.items[].userOffset:-10.0..10.0°C.channels.items[].ptcMinikaNominal:60.0..180.0°C.channels.items[].linked:0..1.protection.trip.delaySec,protection.alarm.delaySec,protection.fan.delaySec,protection.fault.delaySec:0..60seconds.protection.trip.channels[].threshold,protection.alarm.channels[].threshold,protection.fan.channels[].threshold:-40.0..240.0°C.protection.trip.channels[].hysteresis,protection.alarm.channels[].hysteresis,protection.fan.channels[].hysteresis:0.0..100.0°C.protection.fan.mode:0..3.