# paths./api/device/.get.description
Retrieve a list of all registered device IDs.

# paths./api/device/.get.responses.200.content.application/json.examples.ListAllDevices.description
Returns a list of all devices registered in the system.

# paths./api/device/.post.description
Batch send commands to multiple devices in a single API call.

If you don't include `command`, just the statics will be updated.

### Command Options:
- **`flash`**: The light flashes.
- **`display`**: The light stays on without flashing.
- **`kill`**: Stops a command identified by its `nonce`.
- **`reset`**: Clears all commands from the device.
- **`reboot`**: Power cycles the device.

### Display Options:
- **`line1` to `line5`**: Up to five lines of text to display.
  - You can include `barcode` or `qrcode` as a line, but it counts as one of the five.
  - Similarly, `quantity`, `arrow`, or `icon` also count as a line each.

### LED Colors:
- Available options: `red`, `green`, `blue`, `cyan`, `magenta`, `yellow`.

### Sound Options:
- `none`: No sound.
- `beep`: A short beep sound.
- A custom sequence of notes separated by commas:
  - Example: `140,a5s,2,g5s,2,f5s,2,d5s,2,c5s,2,d5s,2,f5s,2`
  - `140`: Tempo of the sequence.
  - `a5s`: A note in the 5th octave, sharp (`s`). Held for 2 beats.
  - `p`: Represents a pause.

**Note**: Avoid long sounds as they consume significant power!

### Duration:
- **`seconds`**: Maximum duration of the command in seconds.
  - If the picker doesn't reach the device in time, the command ends with a `nack` callback.

### Command Identification:
- **`nonce`**: A unique identifier for the command.
  - Used for callbacks and to terminate specific commands.

### Location-Based Targeting:
- Use **`location`** instead of `deviceid` to specify a location string.
  - A device with the given location name will be used.
  - See the Location Aliases API for more details.

# paths./api/device/.post.requestBody.content.application/json.examples.SendCommandsToMultipleDevices.summary
Control multiple devices in a single request

# paths./api/device/.post.requestBody.content.application/json.examples.SendCommandsToMultipleDevices.description
Use this endpoint to send multiple commands in one API call.

# paths./api/device/.post.responses.200.content.application/json.examples.CommandExecutionResponse.summary
Response for successful device command execution

# paths./api/device/{id}/.get.description
Fetch the detailed attributes of a specific Cloud Display Device by ID.

# paths./api/device/{id}/.get.responses.200.content.application/json.examples.RetrieveDeviceInfo.summary
Get detailed information about a specific device

# paths./api/device/{id}/.get.responses.200.content.application/json.examples.RetrieveDeviceInfo.description
Returns all attributes of a Cloud Display Device.

# paths./api/device/{id}/.post.description
Send a command or update to a single device using its ID.

If you don't include `command`, just the statics will be updated.

### Command Options:
- **`flash`**: The light flashes.
- **`display`**: The light stays on without flashing.
- **`kill`**: Stops a command identified by its `nonce`.
- **`reset`**: Clears all commands from the device.
- **`reboot`**: Power cycles the device.

### Display Options:
- **`line1` to `line5`**: Up to five lines of text to display.
  - You can include `barcode` or `qrcode` as a line, but it counts as one of the five.
  - Similarly, `quantity`, `arrow`, or `icon` also count as a line each.

### LED Colors:
- Available options: `red`, `green`, `blue`, `cyan`, `magenta`, `yellow`.

### Sound Options:
- `none`: No sound.
- `beep`: A short beep sound.
- A custom sequence of notes separated by commas:
  - Example: `140,a5s,2,g5s,2,f5s,2,d5s,2,c5s,2,d5s,2,f5s,2`
  - `140`: Tempo of the sequence.
  - `a5s`: A note in the 5th octave, sharp (`s`). Held for 2 beats.
  - `p`: Represents a pause.

**Note**: Avoid long sounds as they consume significant power!

### Duration:
- **`seconds`**: Maximum duration of the command in seconds.
  - If the picker doesn't reach the device in time, the command ends with a `nack` callback.

### Command Identification:
- **`nonce`**: A unique identifier for the command.
  - Used for callbacks and to terminate specific commands.

### Location-Based Targeting:
- Use **`location`** instead of `deviceid` to specify a location string.
  - A device with the given location name will be used.
  - See the Location Aliases API for more details.

# paths./api/device/{id}/.post.requestBody.content.application/json.examples.KillARunningCommand.summary
Terminate a previously sent command using its nonce

# paths./api/device/{id}/.post.requestBody.content.application/json.examples.ResetADevice.summary
Clear all pending commands from a device

# paths./api/devices/.get.description
Retrieve a list of all registered device IDs.

# paths./api/devices/.get.responses.200.content.application/json.examples.ListAllDevices.description
Returns a list of all devices registered in the system.

# paths./api/devices/.post.description
Batch send commands to multiple devices in a single API call.

If you don't include `command`, just the statics will be updated.

### Command Options:
- **`flash`**: The light flashes.
- **`display`**: The light stays on without flashing.
- **`kill`**: Stops a command identified by its `nonce`.
- **`reset`**: Clears all commands from the device.
- **`reboot`**: Power cycles the device.

### Display Options:
- **`line1` to `line5`**: Up to five lines of text to display.
  - You can include `barcode` or `qrcode` as a line, but it counts as one of the five.
  - Similarly, `quantity`, `arrow`, or `icon` also count as a line each.

### LED Colors:
- Available options: `red`, `green`, `blue`, `cyan`, `magenta`, `yellow`.

### Sound Options:
- `none`: No sound.
- `beep`: A short beep sound.
- A custom sequence of notes separated by commas:
  - Example: `140,a5s,2,g5s,2,f5s,2,d5s,2,c5s,2,d5s,2,f5s,2`
  - `140`: Tempo of the sequence.
  - `a5s`: A note in the 5th octave, sharp (`s`). Held for 2 beats.
  - `p`: Represents a pause.

**Note**: Avoid long sounds as they consume significant power!

### Duration:
- **`seconds`**: Maximum duration of the command in seconds.
  - If the picker doesn't reach the device in time, the command ends with a `nack` callback.

### Command Identification:
- **`nonce`**: A unique identifier for the command.
  - Used for callbacks and to terminate specific commands.

### Location-Based Targeting:
- Use **`location`** instead of `deviceid` to specify a location string.
  - A device with the given location name will be used.
  - See the Location Aliases API for more details.

# paths./api/devices/.post.requestBody.content.application/json.examples.SendCommandsToMultipleDevices.summary
Control multiple devices in a single request

# paths./api/devices/.post.requestBody.content.application/json.examples.SendCommandsToMultipleDevices.description
Use this endpoint to send multiple commands in one API call.

# paths./api/devices/.post.responses.200.content.application/json.examples.CommandExecutionResponse.summary
Response for successful device command execution

# components.schemas.Device.properties.displaytimeout.description
Caution! Setting this value to 0 will force the Device to stay on between button presses. Generally, you should set a value higher than 0.

# components.schemas.Device.properties.brightness.description
Set the brightness of the device button or display background. Lowering the brightness extends the life of the batteries considerably! For example, reducing brightness from 100% to 30% can double the life of batteries. Using flashing messages also saves substantial amounts of battery power.

# components.schemas.Device.properties.tempoffset.description
This value is set to calibrate the device. If this field is empty, the device does not measure temperature. If this value is zero, or some other value, the temperature will appear in the lower left corner of the device. Only then will you be able to change other temperature settings.

# components.schemas.Device.properties.temperature.description
The last temperature reported to the server (not necessarily the same as what's on the device).

# components.schemas.Device.properties.fahrenheit.description
This setting controls only the display of the temperature in graphs and tables and on the device itself: Actual temperature data, alarms and adjustments are stored in Celcius.

# components.schemas.Device.properties.lowtemp.description
After each temperature sample (frequency is controlled by the Sampling Interval below), the device will activate if the temperature is below this value.

# components.schemas.Device.properties.hightemp.description
After each temperature sample (frequency is controlled by the Sampling Interval below), the device will activate if the temperature is above this value.

# components.schemas.Device.properties.tempinterval.description
To save battery power, you can limit the frequency that the temperature is sampled. Ambient temperature changes slowly in general, so a five minute sampling interval is reasonable. Note very few samples are relayed to the server. This setting only governs the frequency of update of temperature information on the device itself.

# components.schemas.Device.properties.tempdelta.description
If a device updates its screen after every tiny change in temperature, the batteries will be consumed quickly. This setting limits the number of updates by only redrawing a screen if a newly sampled temperature is this far from the displayed temperature. The suggested value of 4 means that the device will only update it's display if the sampled temperature is more than 1°C different from what's shown on the display. Pushing the button on a device will always force a screen update with the latest sampled temperature.

# components.schemas.Device.properties.lastvoltage.description
Two alkaline cells in series have a nominal (new) voltage of around 3.0 Volts.

# components.schemas.Device.properties.lastrssiupdate.description
Check data on a particlar Turbo for dynamic data.  The RSSI on this page is just a sample.

# components.schemas.Device.properties.unsolicitedNonce.description
Nonce for long button presses on devices.  Only useful for device-initiated callbacks in closed-loop systems.

# components.schemas.DtypeEnum.description
* `Single Button` - Single Button
* `Multi Button` - Multi Button