POST /api/settings/set/
Частково оновлює збережені налаштування (семантика злиття).
Авторизація: Bearer (powerUser).
{ "access": { "devPasswordEnable": true, "devPassword": "Ab12", "webUserPassEnable": true, "webPwrPassEnable": true, "modbusPasswordEnable": true }, "network": { "dhcpEnable": false, "ipAddress": "192.168.1.77", "subnetMask": "255.255.255.0", "gateway": "192.168.1.1" }, "vpnWireguard": { "enabled": true, "autoConfigEnable": false, "privateKey": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=", "address": "10.8.0.2/24", "peerPublicKey": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=", "peerHostname": "vpn.example.com", "peerPort": 51820, "allowedIps": ["0.0.0.0/0", "10.20.0.0/16"], "keepaliveSec": 25 }, "recorder": { "enabled": true, "periodSec": 120 }}Поля запиту
Section titled “Поля запиту”- Усі групи верхнього рівня необов’язкові:
general,dateTime,display,access,recorder,network,ntp,web,modbus,vpnWireguard,channels,protection. - Група
metaдоступна лише для читання. - Вкладені об’єкти оновлюються частково (зливаються).
- Якщо поле пароля пропущено, пароль не змінюється.
- Масиви замінюються повністю:
network.dns,vpnWireguard.allowedIps,channels.items,protection.trip.channels,protection.alarm.channels,protection.fan.channels.
Перевірка
Section titled “Перевірка”- Невідомі ключі не допускаються →
400 ERROR_INVALID_VALUE. - Тип значення має відповідати схемі.
- Масиви каналів повинні мати довжину
4. sensorTypeIdмає відповідатиGET /api/reference/sensor-types/.- Тіло запиту ≤
4096байтів.
Обмеження полів, доступних для запису
Section titled “Обмеження полів, доступних для запису”Наведені нижче обмеження відповідають перевірці у прошивці в Application/User/settings.h.
general.logDebugMask:0..65535(бітова маска,bit0= WireGuard).dateTime.timezoneOffset:-720..840хвилин.dateTime.dst.mode:0..3.dateTime.dst.deltaMin:0..180хвилин.display.contrast:0..64.display.activeBacklightPercent:0..100.display.idleBacklightEnable:true | false.display.idleBacklightPercent:0..100.display.idleTimeoutSec:30..3600секунд.access.devPasswordEnable,access.webUserPassEnable,access.webPwrPassEnable,access.modbusPasswordEnable:true | false;falseвимикає перевірку відповідного пароля, не видаляючи збережене значення.access.devPassword: рядок завдовжки4..23символів.access.webUserPass,access.webPwrPass,access.modbusPassword: рядок завдовжки8..23символів.- Допустимі символи пароля: цифри
0–9, латинські літериA–Z,a–zі символи.,-,_,:,/,@. - Пароль
null, порожній рядок, закоротке чи задовге значення або недопустимий символ →400 ERROR_INVALID_VALUE. - Щоб залишити пароль без змін, пропустіть поле. Стан захисту змінюється незалежно за допомогою відповідного прапорця
...PasswordEnable. recorder.enabled:true | false.recorder.periodSec:5..3600секунд.ntp.syncPeriodSec:300..86400секунд.ntp.server1,ntp.server2: до31символів кожен.web.port:1..65535.web.vpnTrusted:true | false.web.vpnAccessLevel:0..2(password,user,powerUser);0використовує стандартну авторизацію за паролем.modbus.unitId:0..247;0— приймати запити з будь-яким Unit ID.modbus.port:1..65535.modbus.timeoutSec:1..3600секунд.modbus.protectMode:0..2(none,write-protect,read-write-protect).modbus.vpnAccessLevel:0..3(disabled,password,read-only,read-write).vpnWireguard.autoConfigEnable:true | false.vpnWireguard.autoConfigUrl: URL сервера автоматичної конфігурації.vpnWireguard.privateKey: Рядок WireGuard у форматі base64 для статичного закритого ключа. Порожній рядок""очищає ключ.vpnWireguard.address: Рядок IPv4 CIDR, наприклад10.8.0.2/24. Порожній рядок""очищає адресу.vpnWireguard.peerPublicKey: Рядок WireGuard у форматі base64 для статичного відкритого ключа вузла. Порожній рядок""очищає ключ.vpnWireguard.peerHostname: ім’я вузла.vpnWireguard.peerPort:1..65535.vpnWireguard.allowedIps: масив із2рядків IPv4 CIDR. Порожній рядок""очищає елемент.vpnWireguard.keepaliveSec:1..300секунд.channels.filterLevel:1..10.channels.items[].userOffset:-10.0..10.0°C.channels.items[].ptcMinikaNominal:60.0..180.0°C.channels.items[].linked:0..1; під час запису порога або гістерезису TRIP/ALARM/FAN для пов’язаного каналу значення автоматично копіюється до всіх пов’язаних каналів.protection.trip.delaySec,protection.alarm.delaySec,protection.fan.delaySec,protection.fault.delaySec:0..60секунд.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.
Відповідь 200
Section titled “Відповідь 200”{}- Коли
vpnWireguard.autoConfigEnable = false, статичні параметри WireGuard ізvpnWireguardзберігаються та використовуються. - Коли
vpnWireguard.autoConfigEnable = true, статичні параметри WireGuard можуть залишатися збереженими в налаштуваннях, але під час роботи ігноруються; у режимі Overvis конфігурація надходить з API службової ідентифікації.