Skip to content

Configuration

Configuration endpoints manage network settings, system hostname, date and time, logging, passwords, and the monitor output. Most write operations require the admin role. Changes to network and hostname settings take effect after a reboot — a reboot_needed flag is set in the /status response when a reboot is pending.


GET /conf/network

Returns the current network configuration.

Roles: user, admin

Response:

{
  "hostname": "multituner-01",
  "dhcp": false,
  "mac": "00:1A:2B:3C:4D:5E",
  "address": "192.168.112.1",
  "netmask": "255.255.255.0",
  "gateway": "192.168.112.254",
  "dns": ["8.8.8.8", "8.8.4.4"]
}

POST /conf/network

Updates the network configuration. Changes take effect after reboot.

Roles: admin

Request body:

{
  "dhcp": false,
  "address": "192.168.1.100",
  "netmask": "255.255.255.0",
  "gateway": "192.168.1.1",
  "dns": ["192.168.1.1"]
}
Field Type Required Description
dhcp boolean Yes true to use DHCP, false for static IP
address string Yes Static IP address (ignored when DHCP is enabled)
netmask string Yes Subnet mask
gateway string No Default gateway
dns array No DNS server addresses

Warning

After saving a new IP address, the device will be unreachable at the old address following the next reboot. Ensure you know the new address before applying changes.


POST /conf/hostname

Sets the system hostname. Takes effect after reboot.

Roles: admin

Request body:

{ "hostname": "multituner-studio-a" }

GET /conf/datetime

Returns the current date, time, and NTP configuration.

Roles: user, admin

Response:

{
  "enable_ntp": true,
  "datetime": "2025-03-14T12:00:00Z",
  "timezone": 2,
  "ntp_servers": ["pool.ntp.org"]
}

POST /conf/datetime

Sets the system time and NTP settings. Changes apply immediately.

Roles: admin

Request body:

{
  "enable_ntp": true,
  "datetime": "2025-03-14T12:00:00Z",
  "timezone": 2,
  "ntp_servers": ["pool.ntp.org", "time.cloudflare.com"]
}
Field Type Required Description
enable_ntp boolean Yes Enable automatic time synchronization via NTP
datetime string Yes Current datetime in ISO 8601 format — used when NTP is disabled
timezone integer Yes UTC offset in hours
ntp_servers array No List of NTP server hostnames or IPs

GET /conf/log

Returns the current logging configuration.

Roles: user, admin

Response:

{
  "level": "warning",
  "enable_rsyslog": false,
  "rsyslog_server": ""
}

POST /conf/log

Configures the system log level and optional remote syslog forwarding. Takes effect after reboot.

Roles: admin

Request body:

{
  "level": "info",
  "enable_rsyslog": true,
  "rsyslog_server": "192.168.1.200"
}
Field Type Description
level string Minimum log severity to record: trace, debug, info, warning, error, critical
enable_rsyslog boolean Forward log entries to a remote syslog server
rsyslog_server string IP address or hostname of the remote syslog server

POST /conf/password

Changes the password for a given role. Takes effect immediately. Previously issued tokens for that role remain valid until they expire.

Roles: admin

Request body:

{
  "role": "admin",
  "password": "new-secure-password"
}

Valid values for role: "admin", "user".


POST /monitor

Controls the front-panel headphone output — selects which tuner is routed to it, or mutes it entirely.

Roles: user, admin

Request body:

{
  "tuner_id": 2,
  "mute": 0
}
Field Type Description
tuner_id integer Index of the tuner to route to the monitor output
mute integer 0 (0x00) = unmuted, 16 (0x10) = muted