shelly switch list

shelly switch list

List switch components

Synopsis

List all switch components on the specified device with their current status.

Switch components control relay outputs (on/off). Each switch has an ID, optional name, current state (ON/OFF), and power consumption if supported.

Output is formatted as a table by default. Use -o json or -o yaml for structured output suitable for scripting.

Columns: ID, Name, State (ON/OFF), Power (watts)

1
shelly switch list <device> [flags]

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  # List all switches on a device
  shelly switch list kitchen

  # List switches with JSON output
  shelly switch list kitchen -o json

  # Get switches that are currently ON
  shelly switch list kitchen -o json | jq '.[] | select(.output == true)'

  # Calculate total power consumption
  shelly switch list kitchen -o json | jq '[.[].power] | add'

  # Get switch IDs only
  shelly switch list kitchen -o json | jq -r '.[].id'

  # Check all switches across multiple devices
  for dev in kitchen bedroom living-room; do
    echo "=== $dev ==="
    shelly switch list "$dev" --no-color
  done

  # Short forms
  shelly switch ls kitchen
  shelly sw ls kitchen

Options

1
  -h, --help   help for list

Options inherited from parent commands

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
      --config string           Config file (default $HOME/.config/shelly/config.yaml)
      --log-categories string   Filter logs by category (comma-separated: network,api,device,config,auth,plugin)
      --log-json                Output logs in JSON format
      --no-color                Disable colored output
      --no-headers              Hide table headers in output
      --offline                 Only read from cache, error on cache miss
  -o, --output string           Output format (table, json, yaml, template) (default "table")
      --plain                   Disable borders and colors (machine-readable output)
  -q, --quiet                   Suppress non-essential output
      --refresh                 Bypass cache and fetch fresh data from device
      --template string         Go template string for output (use with -o template)
  -v, --verbose count           Increase verbosity (-v=info, -vv=debug, -vvv=trace)

SEE ALSO