This is the home of the SmartThings CLI plugin for Edge Drivers. While it is a plugin with a separate code base, it is installed by default with the SmartThings CLI. No additional setup is necessary to begin using the Edge CLI plugin with the SmartThings CLI.
See the README for the CLI for information on running the CLI.
smartthings edge:channels [IDORINDEX]
smartthings edge:channels:assign [DRIVERID] [VERSION]
smartthings edge:channels:assignments [IDORINDEX]
smartthings edge:channels:create
smartthings edge:channels:delete [ID]
smartthings edge:channels:drivers [IDORINDEX]
smartthings edge:channels:enroll [HUBID]
smartthings edge:channels:enrollments [IDORINDEX]
smartthings edge:channels:invitations [IDORINDEX]
smartthings edge:channels:invitations:accept ID
smartthings edge:channels:invitations:create
smartthings edge:channels:invitations:delete [ID]
smartthings edge:channels:invitations:revoke [ID]
smartthings edge:channels:invites [IDORINDEX]
smartthings edge:channels:invites:accept ID
smartthings edge:channels:invites:create
smartthings edge:channels:invites:delete [ID]
smartthings edge:channels:invites:revoke [ID]
smartthings edge:channels:metainfo [IDORINDEX]
smartthings edge:channels:unassign [DRIVERID]
smartthings edge:channels:unenroll [HUBID]
smartthings edge:channels:update [ID]
smartthings edge:drivers [IDORINDEX]
smartthings edge:drivers:default
smartthings edge:drivers:delete [ID]
smartthings edge:drivers:install [DRIVERID]
smartthings edge:drivers:installed [IDORINDEX]
smartthings edge:drivers:logcat [DRIVERID]
smartthings edge:drivers:package [PROJECTDIRECTORY]
smartthings edge:drivers:publish [DRIVERID] [VERSION]
smartthings edge:drivers:switch [DEVICEID]
smartthings edge:drivers:uninstall [DRIVERID]
smartthings edge:drivers:unpublish [DRIVERID]
list all channels owned by you or retrieve a single channel
USAGE
$ smartthings edge:channels [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>] [-I | -A] [--subscriber-id <value> --subscriber-type HUB]
ARGUMENTS
IDORINDEX the channel id or number in list
FLAGS
-A, --all-organizations include entities from all organizations the user belongs to
-I, --include-read-only include subscribed-to channels as well as owned channels
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
--subscriber-id=<value> filter results based on subscriber id (e.g. hub id)
--subscriber-type=<option> filter results based on subscriber type
<options: HUB>
DESCRIPTION
list all channels owned by you or retrieve a single channel
EXAMPLES
# list all user-owned channels
$ smartthings edge:channels
# list user-owned and subscribed channels
$ smartthings edge:channels --include-read-only
# display details about the second channel listed when running "smartthings edge:channels"
$ smartthings edge:channels 2
# display channels subscribed to by the specified hub
$ smartthings edge:channels --subscriber-type HUB --subscriber-id <hub-id>
See code: src/commands/edge/channels.ts
assign a driver to a channel
USAGE
$ smartthings edge:channels:assign [DRIVERID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
[-C <value>]
ARGUMENTS
DRIVERID driver id
VERSION driver version
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
assign a driver to a channel
ALIASES
$ smartthings edge:drivers:publish
See code: src/commands/edge/channels/assign.ts
list all drivers assigned to a given channel
USAGE
$ smartthings edge:channels:assignments [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>]
ARGUMENTS
IDORINDEX the channel id or number in list
FLAGS
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
list all drivers assigned to a given channel
ALIASES
$ smartthings edge:channels:assignments
create a channel
USAGE
$ smartthings edge:channels:create [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
<value>] [-o <value>] [-d]
FLAGS
-O, --organization=<value> The organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
-h, --help Show CLI help.
-i, --input=<value> specify input file
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
create a channel
See code: src/commands/edge/channels/create.ts
delete a channel
USAGE
$ smartthings edge:channels:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
ARGUMENTS
ID channel id
FLAGS
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
delete a channel
See code: src/commands/edge/channels/delete.ts
list all drivers assigned to a given channel
USAGE
$ smartthings edge:channels:drivers [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>]
ARGUMENTS
IDORINDEX the channel id or number in list
FLAGS
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
list all drivers assigned to a given channel
ALIASES
$ smartthings edge:channels:assignments
See code: src/commands/edge/channels/drivers.ts
enroll a hub in a channel
USAGE
$ smartthings edge:channels:enroll [HUBID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-C
<value>]
ARGUMENTS
HUBID hub id
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
enroll a hub in a channel
See code: src/commands/edge/channels/enroll.ts
list all channels a given hub is enrolled in
USAGE
$ smartthings edge:channels:enrollments [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>]
ARGUMENTS
IDORINDEX the hub id or number in list
FLAGS
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
list all channels a given hub is enrolled in
See code: src/commands/edge/channels/enrollments.ts
list invitations or retrieve a single invitation by id or index
USAGE
$ smartthings edge:channels:invitations [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>] [-C <value>]
ARGUMENTS
IDORINDEX the invitation id or number in list
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
list invitations or retrieve a single invitation by id or index
ALIASES
$ smartthings edge:channels:invitations
EXAMPLES
$ smartthings edge:channels:invites # list all invites on all channels you own
$ smartthings edge:channels:invites 2 # list details about the second invite show when listed as in the example above
$ smartthings edge:channels:invites -C <channel id> # list all invites on channel with id <channel id>
$ smartthings edge:channels:invites <invite id> # list details about the invite with id <invite id>
accept a channel invitation
USAGE
$ smartthings edge:channels:invitations:accept [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
ARGUMENTS
ID invite UUID
FLAGS
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
accept a channel invitation
ALIASES
$ smartthings edge:channels:invitations:accept
create an invitation
USAGE
$ smartthings edge:channels:invitations:create [-C <value> | -i <value>] [-h] [-p <value>] [-t <value>] [--language <value>] [-O
<value>] [-j] [-y] [-o <value>] [-d]
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
-h, --help Show CLI help.
-i, --input=<value> specify input file
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
create an invitation
ALIASES
$ smartthings edge:channels:invitations:create
delete a channel invitation
USAGE
$ smartthings edge:channels:invitations:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
[-C <value>]
ARGUMENTS
ID invitation UUID
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
delete a channel invitation
ALIASES
$ smartthings edge:channels:invitations:revoke
$ smartthings edge:channels:invitations:delete
$ smartthings edge:channels:invites:revoke
delete a channel invitation
USAGE
$ smartthings edge:channels:invitations:revoke [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
[-C <value>]
ARGUMENTS
ID invitation UUID
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
delete a channel invitation
ALIASES
$ smartthings edge:channels:invitations:revoke
$ smartthings edge:channels:invitations:delete
$ smartthings edge:channels:invites:revoke
list invitations or retrieve a single invitation by id or index
USAGE
$ smartthings edge:channels:invites [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>] [-C <value>]
ARGUMENTS
IDORINDEX the invitation id or number in list
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
list invitations or retrieve a single invitation by id or index
ALIASES
$ smartthings edge:channels:invitations
EXAMPLES
$ smartthings edge:channels:invites # list all invites on all channels you own
$ smartthings edge:channels:invites 2 # list details about the second invite show when listed as in the example above
$ smartthings edge:channels:invites -C <channel id> # list all invites on channel with id <channel id>
$ smartthings edge:channels:invites <invite id> # list details about the invite with id <invite id>
See code: src/commands/edge/channels/invites.ts
accept a channel invitation
USAGE
$ smartthings edge:channels:invites:accept [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
ARGUMENTS
ID invite UUID
FLAGS
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
accept a channel invitation
ALIASES
$ smartthings edge:channels:invitations:accept
See code: src/commands/edge/channels/invites/accept.ts
create an invitation
USAGE
$ smartthings edge:channels:invites:create [-C <value> | -i <value>] [-h] [-p <value>] [-t <value>] [--language <value>] [-O
<value>] [-j] [-y] [-o <value>] [-d]
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
-h, --help Show CLI help.
-i, --input=<value> specify input file
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
create an invitation
ALIASES
$ smartthings edge:channels:invitations:create
See code: src/commands/edge/channels/invites/create.ts
delete a channel invitation
USAGE
$ smartthings edge:channels:invites:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-C
<value>]
ARGUMENTS
ID invitation UUID
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
delete a channel invitation
ALIASES
$ smartthings edge:channels:invitations:revoke
$ smartthings edge:channels:invitations:delete
$ smartthings edge:channels:invites:revoke
See code: src/commands/edge/channels/invites/delete.ts
delete a channel invitation
USAGE
$ smartthings edge:channels:invites:revoke [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-C
<value>]
ARGUMENTS
ID invitation UUID
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
delete a channel invitation
ALIASES
$ smartthings edge:channels:invitations:revoke
$ smartthings edge:channels:invitations:delete
$ smartthings edge:channels:invites:revoke
list all channels owned by you or retrieve a single channel
USAGE
$ smartthings edge:channels:metainfo [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>] [-C <value> | ]
ARGUMENTS
IDORINDEX the channel id or number in list
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
list all channels owned by you or retrieve a single channel
EXAMPLES
# summarize metainfo for all drivers in a channel
$ smartthings edge:channels:metainfo
# summarize metainfo for all drivers in the specified channel
$ smartthings edge:channels:metainfo -C b50c0aa1-d9ea-4005-8db8-0cf9c2d9d7b2
# display metainfo about the third driver listed in the above command
$ smartthings edge:channels:metainfo -C b50c0aa1-d9ea-4005-8db8-0cf9c2d9d7b2 3
# display metainfo about a driver by using its id
$ smartthings edge:channels:metainfo -C b50c0aa1-d9ea-4005-8db8-0cf9c2d9d7b2 \
699c7308-8c72-4363-9571-880d0f5cc725
See code: src/commands/edge/channels/metainfo.ts
remove a driver from a channel
USAGE
$ smartthings edge:channels:unassign [DRIVERID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-C
<value>]
ARGUMENTS
DRIVERID driver id
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
remove a driver from a channel
ALIASES
$ smartthings edge:drivers:unpublish
See code: src/commands/edge/channels/unassign.ts
unenroll a hub from a channel
USAGE
$ smartthings edge:channels:unenroll [HUBID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-C
<value>]
ARGUMENTS
HUBID hub id
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
unenroll a hub from a channel
See code: src/commands/edge/channels/unenroll.ts
update a channel
USAGE
$ smartthings edge:channels:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
<value>] [-o <value>] [-d]
ARGUMENTS
ID the channel id
FLAGS
-O, --organization=<value> The organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
-h, --help Show CLI help.
-i, --input=<value> specify input file
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
update a channel
See code: src/commands/edge/channels/update.ts
list all drivers owned by you or retrieve a single driver
USAGE
$ smartthings edge:drivers [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>] [-A] [-V <value>]
ARGUMENTS
IDORINDEX the driver id or number in list
FLAGS
-A, --all-organizations include entities from all organizations the user belongs to
-O, --organization=<value> The organization ID to use for this command
-V, --version=<value> driver version
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
list all drivers owned by you or retrieve a single driver
Use this command to list all drivers you own, even if they are not yet assigned to a channel.
See also:
edge:drivers:installed to list installed drivers
edge:channels:drivers to list drivers that are part of a channel you own or have subscribed to
EXAMPLES
# list all user-owned drivers
$ smartthings edge:drivers
# display details about the third driver listed in the above command
$ smartthings edge:drivers 3
# display details about a driver by using its id
$ smartthings edge:drivers 699c7308-8c72-4363-9571-880d0f5cc725
# get information on a specific version of a driver
$ smartthings edge:drivers 699c7308-8c72-4363-9571-880d0f5cc725 --version 2021-10-25T00:48:23.295969
See code: src/commands/edge/drivers.ts
list default drivers available to all users
USAGE
$ smartthings edge:drivers:default [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-o
<value>]
FLAGS
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
list default drivers available to all users
EXAMPLES
# list default drivers
$ smartthings edge:drivers:default
See code: src/commands/edge/drivers/default.ts
delete an edge driver
USAGE
$ smartthings edge:drivers:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
ARGUMENTS
ID driver UUID
FLAGS
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
delete an edge driver
See code: src/commands/edge/drivers/delete.ts
install an edge driver onto a hub
USAGE
$ smartthings edge:drivers:install [DRIVERID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-H
<value>] [-C <value>]
ARGUMENTS
DRIVERID id of driver to install
FLAGS
-C, --channel=<value> channel id
-H, --hub=<value> hub id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
install an edge driver onto a hub
EXAMPLES
$ smartthings edge:drivers:install # use Q&A format to enter required values
$ smartthings edge:drivers:install -H <hub-id> # specify the hub on the command line, other fields will be asked for
$ smartthings edge:drivers:install -H <hub-id> -C <channel-id> <driver-id> # install a driver from a channel on an enrolled hub
See code: src/commands/edge/drivers/install.ts
list all drivers installed on a given hub
USAGE
$ smartthings edge:drivers:installed [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>] [-H <value>] [--device <value>]
ARGUMENTS
IDORINDEX the driver id or number in list
FLAGS
-H, --hub=<value> hub id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-y, --yaml use YAML format of input and/or output
--device=<value> return drivers matching the specified device
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
list all drivers installed on a given hub
See code: src/commands/edge/drivers/installed.ts
stream logs from installed drivers
USAGE
$ smartthings edge:drivers:logcat [DRIVERID] [-h] [-p <value>] [-t <value>] [--language <value>] [-a] [--hub-address
<value>] [--connect-timeout <value>] [--log-level <value>]
ARGUMENTS
DRIVERID a specific driver to stream logs from
FLAGS
-a, --all stream from all installed drivers
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--connect-timeout=<milliseconds> [default: 30000] max time allowed when connecting to hub
--hub-address=<value> IPv4 address of hub with optionally appended port number
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
--log-level=<string> [default: TRACE] minimum level of event to log
DESCRIPTION
stream logs from installed drivers
See code: src/commands/edge/drivers/logcat.ts
build and upload an edge package
USAGE
$ smartthings edge:drivers:package [PROJECTDIRECTORY] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
[-j] [-y] [-o <value>] [-a | --channel <value> | [-b <value> | -u <value>]] [-I | --hub <value> | ]
ARGUMENTS
PROJECTDIRECTORY [default: .] directory containing project to upload
FLAGS
-I, --install prompt for hub to install to after assigning it to the channel, implies --assign if
--assign or --channel not included
-O, --organization=<value> The organization ID to use for this command
-a, --assign prompt for a channel to assign the driver to after upload
-b, --build-only=<value> save package to specified zip file but skip upload
-h, --help Show CLI help.
-j, --json use JSON format of input and/or output
-o, --output=<value> specify output file
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
-u, --upload=<value> upload zip file previously built with --build flag
-y, --yaml use YAML format of input and/or output
--channel=<value> automatically assign driver to specified channel after upload
--hub=<value> automatically install driver to specified hub, implies --assign if --assign or --channel
not included
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
build and upload an edge package
EXAMPLES
# build and upload driver found in current directory:
$ smartthings edge:drivers:package
# build and upload driver found in current directory, assign it to a channel, and install it;
# user will be prompted for channel and hub
$ smartthings edge:drivers:package -I
# build and upload driver found in current directory then assign it to the specified channel
# and install it to the specified hub
$ smartthings edge:drivers:package --channel <channel-id> --hub <hubId>
# build and upload driver found in the my-driver directory
$ smartthings edge:drivers:package my-driver
# build the driver in the my-package directory and save it as driver.zip
$ smartthings edge:drivers:package -b driver.zip my-package
# upload the previously built driver found in driver.zip
$ smartthings edge:drivers:package -u driver.zip
See code: src/commands/edge/drivers/package.ts
assign a driver to a channel
USAGE
$ smartthings edge:drivers:publish [DRIVERID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
[-C <value>]
ARGUMENTS
DRIVERID driver id
VERSION driver version
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
assign a driver to a channel
ALIASES
$ smartthings edge:drivers:publish
change the driver used by an installed device
USAGE
$ smartthings edge:drivers:switch [DEVICEID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-H
<value>] [-d <value>] [-I]
ARGUMENTS
DEVICEID id of device to update
FLAGS
-H, --hub=<value> hub id
-I, --include-non-matching when presenting a list of drivers to switch to, include drivers that do not match the
device
-O, --organization=<value> The organization ID to use for this command
-d, --driver=<value> id of new driver to use
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
change the driver used by an installed device
EXAMPLES
# switch driver, prompting user for all necessary input
$ smartthings edge:drivers:switch
# switch driver, including all necessary input on the command line
$ smartthings edge:drivers:switch --hub <hub-id> --driver <driver-id> <device-id>
# include all available drivers in prompt, even if they don't match the chosen device
$ smartthings edge:drivers:switch --include-non-matching
See code: src/commands/edge/drivers/switch.ts
uninstall an edge driver from a hub
USAGE
$ smartthings edge:drivers:uninstall [DRIVERID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-H
<value>]
ARGUMENTS
DRIVERID id of driver to uninstall
FLAGS
-H, --hub=<value> hub id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
uninstall an edge driver from a hub
See code: src/commands/edge/drivers/uninstall.ts
remove a driver from a channel
USAGE
$ smartthings edge:drivers:unpublish [DRIVERID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-C
<value>]
ARGUMENTS
DRIVERID driver id
FLAGS
-C, --channel=<value> channel id
-O, --organization=<value> The organization ID to use for this command
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
-t, --token=<value> the auth token to use
--language=<value> ISO language code or "NONE" to not specify a language. Defaults to the OS locale
DESCRIPTION
remove a driver from a channel
ALIASES
$ smartthings edge:drivers:unpublish
If you're a developer planning to work on the plugin, you can build and install it this way.
- Node version 12 or later
- The latest release of the SmartThings CLI
- npm install
- npm run build
Install the plugin by linking it:
smartthings plugins:link ~path/to/this/repo