Network

Network

⚠️
NOTE: This part of the API is still under construction, yet the interface as described below is expected to be somewhat stable.

Livys can be connected to the internet via WiFi or LTE. Not all Livys have an LTE modem, so please check the device specifications for your model.

Heartbeat

Devices send a heartbeat every 60 seconds. As long as you get those, the device is online. Consider a device offline if you did not receive a heartbeat for more than 100 seconds.

Topic

Subscribe to: api_client/<client_name>/<location_id>/<device_id>/heartbeat

Response

Not retained
QoS: 1

{
  "timestamp": "2026-02-11T12:28:39.686400253Z"
  "running_for_s": 3600
}
  • timestamp: time of heartbeat
  • running_for_s: how long the device has been running in seconds

Get WiFi

Topic

Subscribe to: api_client/<client_name>/<location_id>/<device_id>/wifi Publish to: api_client/<client_name>/<location_id>/<device_id>/wifi/get

Payload

Publish with an empty payload.

Response

Not retained
QoS: 1

{
  "connected": {
    "ssid": "FRITZ!Box 1234",
    "signal": 0.42
  },
  "known": [
    {
      "wpa": {
        "uuid": "56fe2839-9cb2-4771-9a63-3075f0795621",
        "ssid": "FRITZ!Box 1234",
        "psk_sha256": "xxxxxxxxxxxxxxxxxxxx",
        "hidden": false
      }
    }
  ],
  "available": [
    {
      "ssid": "FRITZ!Box 1234",
      "signal": 0.42
    }
  ]
}
ℹ️
If connected is null, then the device uses LTE for internet connectivity.
  • connected: information about the currently connected WiFi network, or null if connected to LTE
    • ssid: SSID of the connected WiFi network
    • signal: signal strength (0.0 - 1.0)
  • known: list of known WiFi networks configured on the device
    • wpa: WPA/WPA2 network
      • uuid: unique identifier of the network (UUID)
      • ssid: SSID of the network
      • psk_sha256: SHA-256 hash of the pre-shared key (PSK)
      • hidden: whether the network is hidden
  • available: list of WiFi networks currently available around the device
    • ssid: SSID of the available WiFi network
    • signal: signal strength (0.0 - 1.0)

Set WiFi

Topic

Publish to: api_client/<client_name>/<location_id>/<device_id>/wifi/set

Payload

[
  {
    "wpa": {
      "ssid": "SSID here",
      "psk": "PSK here",
      "hidden": false
    }
  },
  {
    "eaptls": {
      "ssid": "SSID here",
      "hidden": false,
      "ca_cert": "CA cert here",
      "client_cert": "Client cert here",
      "client_key": "Client key here"
    }
  }
]

You can mix WPA and EAP-TLS networks in the payload’s array.

WPA

  • ssid SSID of the network
  • psk pre-shared key (PSK) of the network
  • hidden whether the network is hidden

EAP-TLS

  • ssid SSID of the network
  • hidden whether the network is hidden
  • ca_cert CA certificate in PEM format
  • client_cert client certificate in PEM format
  • client_key client key in PEM format

Speedtest

Topic

Publish to: api_client/<client_name>/<location_id>/<device_id>/speedtest/get Subscribe to: api_client/<client_name>/<location_id>/<device_id>/speedtest

Payload

Publish with an empty payload.

Response

Not retained
QoS: 1

{
  "status": "Success",
  "result": {
    "download": 49598692.36660386,
    "upload": 3328303.4802064444,
    "ping": 22.924,
    "bytes_received": 62570036,
    "bytes_sent": 4694016,
    "client": {
      "country": "DE",
      "ip": "94.134.111.125",
      "isp": "Versatel Deutschland",
      "ispdlavg": "0",
      "isprating": "3.7",
      "ispulavg": "0",
      "lat": "53.6143",
      "loggedin": "0",
      "lon": "10.111",
      "rating": "0"
    },
    "server": {
      "cc": "DE",
      "country": "Germany",
      "d": 248.43057798258084,
      "host": "ookla2.1und1-mobilfunk.de:8080",
      "id": "61290",
      "lat": "53.9607",
      "latency": 22.924,
      "lon": "8.6261",
      "name": "Munster",
      "sponsor": "1&1 Mobilfunk",
      "url": "http://ookla2.1und1-mobilfunk.de:8080/speedtest/upload.php"
    },
    "share": null,
    "timestamp": "2026-02-11T12:28:39.686400253Z"
  }
}
  • status “Running” right after starting the test, “Success” once completed successfully
  • result results of the test
    • download download speed in bytes per second
    • ping ping in milliseconds
    • upload upload speed in bytes per second
    • bytes_received total bytes received
    • bytes_sent total bytes sent
    • client client information
      • country country code
      • ip IP address
      • isp ISP name
      • ispdlavg average download speed
      • isprating ISP rating
      • ispulavg average upload speed
      • lat latitude
      • loggedin logged in
      • lon longitude
      • rating rating
    • server server information
      • cc country code
      • country country name
      • d distance to server in km
      • host server host
      • id server ID
      • lat server latitude
      • latency server latency
      • lon server longitude
      • name server name
      • sponsor server sponsor
      • url server URL
    • share share URL
    • timestamp timestamp of the test