Overview
Completes the device pairing flow by claiming an entry key (the 7-character code displayed on the thermostat) and associating the device with a user. After a successful registration:- The entry key is marked as claimed
- An ownership record is created linking the device to the user
- The
userbucket andstructurebucket are pushed to the device, completing the pairing dialog on-screen
Endpoint
Request
| Field | Type | Required | Description |
|---|---|---|---|
code | string | Yes | 7-character alphanumeric entry code from the thermostat screen |
userId | string | Yes | User ID to register the device to (default: "homeassistant") |
code field is case-insensitive and automatically uppercased.
Response
Success (200 OK)
Failure — Invalid/Expired/Already Claimed (200 OK)
Registration failures return
200 OK (not 4xx) to match the protocol convention. Check the success field.Error (400 Bad Request)
Pairing Completion
After registration, the server pushes two buckets to the device through any held subscribe connection:user.{userId}bucket with{"name": "{userId}"}— this is what triggers the pairing screen to dismiss on the devicestructure.{structureId}bucket with{"name": "Home", "devices": [serial]}— establishes the home association
Examples
Related
GET /nest/passphrase
Entry key generation on the device
GET /api/devices
List registered devices