Network¶
Per-project network configuration. Today's only payload is the service-mode toggle: when enabled, the listed devices enter a maintenance state for a fixed duration.
Quick reference¶
| Method | What it does |
|---|---|
client.network.get() |
Read the project's network settings. |
client.network.update(*, service_mode=None, **fields) |
Update settings (POST). |
Reading and writing¶
settings = client.network.get()
print(settings.service_mode.enabled, settings.service_mode.duration)
client.network.update(
service_mode={
"enabled": True,
"duration": 5, # minutes
"devices_in_service_mode": ["dev-1", "dev-2"],
}
)
The desktop site-plan client uses POST for both create and update; the
SDK mirrors that on update().
Service mode is destructive¶
Enabling service mode puts real hardware into a maintenance state. Be
deliberate — in particular, the live-test suite gates the toggle test
behind RTLS_LIVE_ALLOW_SERVICE_MODE_TOGGLE=1 to prevent accidents.
The duration is server-enforced (in minutes); the server expires it
automatically and flips expired to true.
Models¶
ServiceMode¶
| Field | Type | Notes |
|---|---|---|
enabled |
bool |
On / off. |
enabled_at |
str \| None |
ISO 8601 timestamp. |
duration |
int \| None |
Minutes. |
expired |
bool |
Server-set when the duration elapses. |
devices_in_service_mode |
list[str] |
Device uids; null is coerced to []. |
NetworkSettings¶
| Field | Type | Notes |
|---|---|---|
project_uid |
str \| None |
Server-assigned. |
created_at |
str \| None |
ISO 8601. |
updated_at |
str \| None |
ISO 8601. |
service_mode |
ServiceMode \| None |
Current state. |