Skip to content

Coming from v4

v5 is a redesign, not an increment. If you have an existing v4 client, these are the changes that will touch your code:

Topicv4v5
AuthenticationBearer token via Basic auth (GET /iam/token)DPoP-bound token pair via POST /auth/login; every request carries a proof (Authentication & Sessions)
Sign-upPOST /iam/signup with username + codePOST /user/register with invite code + password; login uses the email address
Resource identifiersPlain stringsCRNs: crn#tenant:….device:….service:… (overview)
Device listGET /services or GET /devices (service module)GET /devices (flake module) — the device tree is the only root
Property idsDecimal in the service API, hex in schemasCanonical hex (0x0800) everywhere in REST — no conversion needed
SchemasGET /schemas?depth=1GET /schema?depth=1; enum is now a list of {value, name} instead of a record
Names in URLsopenProperty/:property accepted schema namesProperty routes take hex ids only; schema method names address device method calls
Live updatesGET /events/ticket, wss://…/api/v1/events?ticket=…GET /socket/ticket, wss://…/api/v1/socket?ticket=… — ticket is single-use and expires after 30 s (WebSocket & Events)
Remote wireDedicated TCP connection for remote controlRemoved — reads/writes go over REST, live data over the websocket

The rest of the guide assumes no v4 knowledge — a port is best approached like a new integration, starting with the Quickstart.