The SmartThings CLI is a tool to help with developing applications and drivers for the SmartThings ecosystem.
brew install smartthingscommunity/smartthings/smartthings
Download and run the smartthings.msi
installer from the latest Release.
- Download the appropriate zipped binary from the latest Release.
- Extract and install it on your system path. It does not need administrator privileges but will need to be executable.
Run smartthings --version
and verify the version matches the latest release.
- Run
smartthings --help
to get more information on each command. - Run a specific command with
smartthings <command>
.
Many commands in the CLI handle complex input and/or output, mostly for use with the SmartThings REST API.
Complex input can always be passed as JSON or YAML and in a couple cases a "question and answer" mode is provided.
The output format will match the input format unless otherwise specified. When there is no input specified the default will be a user-friendly (often table) formatted style if the output is going to the console or JSON otherwise.
Name | Shortcut | Description |
---|---|---|
json | j | Write output in JSON format. |
yaml | y | Write output in YAML format. |
indent | Specify the number of spaces for YAML or JSON output | |
input | i | Specify a filename for input. |
output | o | Specify a filename for output. The extension of this file will control its type unless overridden with --json or --yaml . |
The CLI supports an automatic login flow that pops up a browser window asking you to log in and give the CLI permission to access your account. The CLI will automatically request login as needed.
You can also use a personal access token (PAT) for authentication by passing a --token <uuid>
flag to commands or by creating a
configuration file
and including the token in a token
key for your profile. We generally don't recommend this approach
since it less secure, given that PATs don't expire unless revoked by the user, but it can be useful when working with
headless servers or for users who frequently switch between accounts.
- You can get more specific information about any command or sub-hierarchy
of commands by using
--help
with a specific command or branch. For example, you can run any of the following commands for varying level of detail:smartthings capabilities --help
,smartthings capabilities:presentation --help
smartthings capabilities:presentation:create --help
- The CLI accepts data in YAML or JSON format and can output data in either format as well as the default table format.
- Commands that take input accept stdin or a file specified
by the
--input
(shortcut-i
) flag. - Commands that output data will output the data to stdout unless a file
is specified the using
--output (shortcut
-o`) flag. - When no output format is specified, the CLI outputs a summary of the most useful information
in table format. For full details, use
--json
(-j
) or--yaml
(-y
). - When a command takes input and results in output, the format of the output
will match the input format unless an output filename is specified
using
--output
with a different extension. - Command line flags must go after the command. Use
smartthings command -f flag
instead ofsmartthings -f flag command
. - You can open an issue to report a bug or ask a question.
Commands that use the SmartThings REST API are organized in topics that map to the API spec.
smartthings apps [ID]
smartthings apps:authorize ARN
smartthings apps:create
smartthings apps:delete [ID]
smartthings apps:oauth [ID]
smartthings apps:oauth:generate [ID]
smartthings apps:oauth:update [ID]
smartthings apps:register [ID]
smartthings apps:settings [ID]
smartthings apps:settings:update [ID]
smartthings apps:update [ID]
smartthings autocomplete [SHELL]
smartthings capabilities [ID] [VERSION]
smartthings capabilities:create
smartthings capabilities:delete [ID] [VERSION]
smartthings capabilities:namespaces
smartthings capabilities:presentation [ID] [VERSION]
smartthings capabilities:presentation:create [ID] [VERSION]
smartthings capabilities:presentation:update [ID] [VERSION]
smartthings capabilities:translations [ID] [VERSION] [TAG]
smartthings capabilities:translations:create [ID] [VERSION]
smartthings capabilities:translations:update [ID] [VERSION]
smartthings capabilities:translations:upsert [ID] [VERSION]
smartthings capabilities:update [ID] [VERSION]
smartthings config [NAME]
smartthings config:reset
smartthings devicepreferences [IDORINDEX]
smartthings devicepreferences:create
smartthings devicepreferences:translations [PREFERENCEID] [TAG]
smartthings devicepreferences:translations:create [PREFERENCEID]
smartthings devicepreferences:translations:update [PREFERENCEID]
smartthings devicepreferences:update [ID]
smartthings deviceprofiles [ID]
smartthings deviceprofiles:create
smartthings deviceprofiles:delete [ID]
smartthings deviceprofiles:device-config [ID]
smartthings deviceprofiles:presentation [ID]
smartthings deviceprofiles:publish [ID]
smartthings deviceprofiles:translations [ID] [TAG]
smartthings deviceprofiles:translations:delete [ID] [TAG]
smartthings deviceprofiles:translations:upsert [ID]
smartthings deviceprofiles:update [ID]
smartthings deviceprofiles:view [ID]
smartthings deviceprofiles:view:create
smartthings deviceprofiles:view:update [ID]
smartthings devices [ID]
smartthings devices:capability-status [ID] [COMPONENT] [CAPABILITY]
smartthings devices:commands [ID] [COMMAND]
smartthings devices:component-status [ID] [COMPONENT]
smartthings devices:delete [ID]
smartthings devices:health [ID]
smartthings devices:history [ID]
smartthings devices:preferences [ID]
smartthings devices:presentation [ID]
smartthings devices:rename [ID] [LABEL]
smartthings devices:status [ID]
smartthings devices:update [ID]
smartthings edge
smartthings edge:channels [IDORINDEX]
smartthings edge:channels:assign [DRIVERID] [VERSION]
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:invites [IDORINDEX]
smartthings edge:channels:invites:accept ID
smartthings edge:channels:invites:create
smartthings edge:channels:invites:delete [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:switch [DEVICEID]
smartthings edge:drivers:uninstall [DRIVERID]
smartthings help [COMMAND]
smartthings installedapps [ID]
smartthings installedapps:delete [ID]
smartthings installedapps:rename [ID] [NAME]
smartthings installedschema [ID]
smartthings installedschema:delete [ID]
smartthings locations [IDORINDEX]
smartthings locations:create
smartthings locations:delete [ID]
smartthings locations:history [ID]
smartthings locations:rooms [IDORINDEX]
smartthings locations:rooms:create
smartthings locations:rooms:delete [ID]
smartthings locations:rooms:update [ID]
smartthings locations:update [ID]
smartthings logout
smartthings organizations [ID]
smartthings organizations:current
smartthings plugins
smartthings plugins:install PLUGIN...
smartthings plugins:inspect PLUGIN...
smartthings plugins:install PLUGIN...
smartthings plugins:link PLUGIN
smartthings plugins:uninstall PLUGIN...
smartthings plugins:uninstall PLUGIN...
smartthings plugins:uninstall PLUGIN...
smartthings plugins:update
smartthings presentation PRESENTATIONID [MANUFACTURERNAME]
smartthings presentation:device-config PRESENTATIONID [MANUFACTURERNAME]
smartthings presentation:device-config:create
smartthings presentation:device-config:generate ID
smartthings rules [IDORINDEX]
smartthings rules:create
smartthings rules:delete [ID]
smartthings rules:execute [ID]
smartthings rules:update [ID]
smartthings scenes [IDORINDEX]
smartthings scenes:execute [ID]
smartthings schema [ID]
smartthings schema:authorize ARN
smartthings schema:create
smartthings schema:delete [ID]
smartthings schema:regenerate [ID]
smartthings schema:update [ID]
smartthings virtualdevices [ID]
smartthings virtualdevices:create
smartthings virtualdevices:create-standard
smartthings virtualdevices:delete [ID]
smartthings virtualdevices:events [ID] [NAME] [VALUE] [UNIT]
smartthings virtualdevices:update [ID]
get a specific app or a list of apps
USAGE
$ smartthings apps [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
[--type <value>] [--classification <value>] [-v]
ARGUMENTS
ID the app id or number from list
FLAGS
-v, --verbose include URLs and ARNs in table output
--classification=<value>... filter results by one or more classifications, AUTOMATION, SERVICE, DEVICE,
CONNECTED_SERVICE
--type=<value> filter results by appType, WEBHOOK_SMART_APP, LAMBDA_SMART_APP, API_ONLY
COMMON FLAGS
-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
get a specific app or a list of apps
EXAMPLES
list all apps
$ smartthings apps
list the first app in the list retrieved by running "smartthings apps"
$ smartthings apps 1
list an app by id
$ smartthings apps 5dfd6626-ab1d-42da-bb76-90def3153998
include URLs and ARNs in the output
$ smartthings apps --verbose
list SERVICE classification apps
$ smartthings apps --classification SERVICE
list API-only apps
$ smartthings apps --type API_ONLY
See code: src/commands/apps.ts
authorize calls to your AWS Lambda function from SmartThings
USAGE
$ smartthings apps:authorize [ARN] [-h] [-p <value>] [--principal <value>] [--statement <value>]
ARGUMENTS
ARN the ARN of the AWS Lambda function
FLAGS
--principal=<value> use this principal instead of the default when authorizing lambda functions
--statement=<value> use this statement id instead of the default when authorizing lambda functions
COMMON FLAGS
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
DESCRIPTION
authorize calls to your AWS Lambda function from SmartThings
EXAMPLES
authorize an app
NOTE: This command is the same as running the following with the AWS CLI:
$ aws lambda add-permission --region us-east-1 --function-name \
> arn:aws:lambda:us-east-1:1234567890:function:your-test-app \
> --statement smartthings --principal 906037444270 --action lambda:InvokeFunction
This command requires your machine to be configured to run the AWS CLI.
$ smartthings apps:authorize arn:aws:lambda:us-east-1:1234567890:function:your-test-app
See code: src/commands/apps/authorize.ts
create an app
USAGE
$ smartthings apps:create [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d] [--authorize] [--principal <value>] [--statement <value>]
FLAGS
-d, --dry-run produce JSON but don't actually submit
--authorize authorize Lambda functions to be called by SmartThings
--principal=<value> use this principal instead of the default when authorizing lambda functions
--statement=<value> use this statement id instead of the default when authorizing lambda functions
COMMON FLAGS
-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 app
EXAMPLES
create an app defined in "my-app.yaml"
$ smartthings apps:create -i my-app.yaml
create an app defined in "my-app.json" and then authorize it
(See "smartthings apps:authorize" for more information on authorization.)
$ smartthings apps:create -i my-app.json --authorize
See code: src/commands/apps/create.ts
delete the app
USAGE
$ smartthings apps:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>]
ARGUMENTS
ID App profile UUID or number in the list
COMMON FLAGS
-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 the app
EXAMPLES
select app to delete from list
$ smartthings apps:delete
delete a specific app by id
$ smartthings apps:delete 5dfd6626-ab1d-42da-bb76-90def3153998
See code: src/commands/apps/delete.ts
get OAuth information for the app
USAGE
$ smartthings apps:oauth [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
ID the app id or number in the list
COMMON FLAGS
-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
get OAuth information for the app
See code: src/commands/apps/oauth.ts
regenerate the OAuth clientId and clientSecret of an app
USAGE
$ smartthings apps:oauth:generate [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d]
ARGUMENTS
ID the app id
FLAGS
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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
regenerate the OAuth clientId and clientSecret of an app
See code: src/commands/apps/oauth/generate.ts
update the OAuth settings of the app
USAGE
$ smartthings apps:oauth:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d]
ARGUMENTS
ID the app id
FLAGS
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 the OAuth settings of the app
See code: src/commands/apps/oauth/update.ts
send request to app target URL to confirm existence and authorize lifecycle events
USAGE
$ smartthings apps:register [ID] [-h] [-p <value>] [-t <value>] [--language <value>]
ARGUMENTS
ID the app id
COMMON FLAGS
-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
send request to app target URL to confirm existence and authorize lifecycle events
See code: src/commands/apps/register.ts
get the settings of the app
USAGE
$ smartthings apps:settings [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
ID the app id
COMMON FLAGS
-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
get the settings of the app
See code: src/commands/apps/settings.ts
update the settings of the app
USAGE
$ smartthings apps:settings:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d]
ARGUMENTS
ID the app id
FLAGS
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 the settings of the app
See code: src/commands/apps/settings/update.ts
update the settings of the app
USAGE
$ smartthings apps:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d] [--authorize] [--principal <value>] [--statement <value>]
ARGUMENTS
ID the app id
FLAGS
-d, --dry-run produce JSON but don't actually submit
--authorize authorize Lambda functions to be called by SmartThings
--principal=<value> use this principal instead of the default when authorizing lambda functions
--statement=<value> use this statement id instead of the default when authorizing lambda functions
COMMON FLAGS
-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 the settings of the app
See code: src/commands/apps/update.ts
display autocomplete installation instructions
USAGE
$ smartthings autocomplete [SHELL] [-r]
ARGUMENTS
SHELL shell type
FLAGS
-r, --refresh-cache Refresh cache (ignores displaying instructions)
DESCRIPTION
display autocomplete installation instructions
EXAMPLES
$ smartthings autocomplete
$ smartthings autocomplete bash
$ smartthings autocomplete zsh
$ smartthings autocomplete --refresh-cache
See code: @oclif/plugin-autocomplete
get a specific capability
USAGE
$ smartthings capabilities [ID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>] [-A] [-n <value>] [-s]
ARGUMENTS
ID the capability id or number in list
VERSION the capability version
FLAGS
-A, --all-organizations include entities from all organizations the user belongs to
-O, --organization=<value> the organization ID to use for this command
-n, --namespace=<value> a specific namespace to query; will use all by default
-s, --standard show standard SmartThings capabilities
COMMON FLAGS
-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
get a specific capability
See code: src/commands/capabilities.ts
create a capability for a user
USAGE
$ smartthings capabilities:create [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
<value>] [-o <value>] [-d] [-n <value>]
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
-n, --namespace=<value> the namespace to create the capability under
COMMON FLAGS
-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 capability for a user
See code: src/commands/capabilities/create.ts
delete a capability
USAGE
$ smartthings capabilities:delete [ID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
ARGUMENTS
ID the capability id
VERSION the capability version
FLAGS
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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 capability
See code: src/commands/capabilities/delete.ts
list all capability namespaces currently available in a user account
USAGE
$ smartthings capabilities:namespaces [-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
COMMON FLAGS
-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 capability namespaces currently available in a user account
See code: src/commands/capabilities/namespaces.ts
get presentation information for a specific capability
USAGE
$ smartthings capabilities:presentation [ID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>] [-n <value>]
ARGUMENTS
ID the capability id or number in list
VERSION the capability version
FLAGS
-O, --organization=<value> the organization ID to use for this command
-n, --namespace=<value> a specific namespace to query; will use all by default
COMMON FLAGS
-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
get presentation information for a specific capability
See code: src/commands/capabilities/presentation.ts
create presentation model for a capability
USAGE
$ smartthings capabilities:presentation:create [ID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-i <value>] [-o <value>] [-d]
ARGUMENTS
ID the capability id
VERSION the capability version
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 presentation model for a capability
See code: src/commands/capabilities/presentation/create.ts
update presentation information of a capability
USAGE
$ smartthings capabilities:presentation:update [ID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-i <value>] [-o <value>] [-d]
ARGUMENTS
ID the capability id
VERSION the capability version
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 presentation information of a capability
See code: src/commands/capabilities/presentation/update.ts
get list of locales supported by the capability
USAGE
$ smartthings capabilities:translations [ID] [VERSION] [TAG] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
[-j] [-y] [-o <value>] [-n <value>] [-v]
ARGUMENTS
ID the capability id or number in list
VERSION the capability version
TAG the locale tag
FLAGS
-O, --organization=<value> the organization ID to use for this command
-n, --namespace=<value> a specific namespace to query; will use all by default
-v, --verbose include list of supported locales in table output
COMMON FLAGS
-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
get list of locales supported by the capability
EXAMPLES
$ smartthings capabilities:translations
┌───┬─────────────────────────────┬─────────┬──────────┐
│ # │ Id │ Version │ Status │
├───┼─────────────────────────────┼─────────┼──────────┤
│ 1 │ custom1.outputModulation │ 1 │ proposed │
│ 2 │ custom1.outputVoltage │ 1 │ proposed │
└───┴─────────────────────────────┴─────────┴──────────┘
? Select a capability. 1
┌───┬─────┐
│ # │ Tag │
├───┼─────┤
│ 1 │ en │
│ 2 │ ko │
└───┴─────┘
$ st capabilities:translations -v
┌───┬─────────────────────────────┬─────────┬──────────┬────────────┐
│ # │ Id │ Version │ Status │ Locales │
├───┼─────────────────────────────┼─────────┼──────────┼────────────┤
│ 1 │ custom1.outputModulation │ 1 │ proposed │ ko, en, es │
│ 2 │ custom1.outputVoltage │ 1 │ proposed │ en │
└───┴─────────────────────────────┴─────────┴──────────┴────────────┘
? Select a capability. 1
┌───┬─────┐
│ # │ Tag │
├───┼─────┤
│ 1 │ en │
│ 1 │ es │
│ 2 │ ko │
└───┴─────┘
$ smartthings capabilities:translations 1
$ smartthings capabilities:translations custom1.outputModulation
┌───┬─────┐
│ # │ Tag │
├───┼─────┤
│ 1 │ en │
│ 2 │ ko │
└───┴─────┘
$ smartthings capabilities:translations 1 1
$ smartthings capabilities:translations 1 en
$ smartthings capabilities:translations custom1.outputModulation 1 1
$ smartthings capabilities:translations custom1.outputModulation 1 en
$ smartthings capabilities:translations custom1.outputModulation en
Tag: en
Attributes:
┌────────────────────────┬───────────────────┬────────────────────────────────┬────────────────────────────────────────────────────┐
│ Name │ Label │ Description │ Template │
├────────────────────────┼───────────────────┼────────────────────────────────┼────────────────────────────────────────────────────┤
│ outputModulation │ Output Modulation │ Power supply output modulation │ The {{attribute}} of {{device.label}} is {{value}} │
│ outputModulation.50hz │ 50 Hz │ │ │
│ outputModulation.60hz │ 60 Hz │ │ │
└────────────────────────┴───────────────────┴────────────────────────────────┴────────────────────────────────────────────────────┘
Commands
┌──────────────────────────────────────┬───────────────────────┬──────────────────────────────────────────────────┐
│ Name │ Label │ Description │
├──────────────────────────────────────┼───────────────────────┼──────────────────────────────────────────────────┤
│ setOutputModulation │ Set Output Modulation │ Set the output modulation to the specified value │
│ setOutputModulation.outputModulation │ Output Modulation │ The desired output modulation │
└──────────────────────────────────────┴───────────────────────┴──────────────────────────────────────────────────┘
See code: src/commands/capabilities/translations.ts
create a capability translation
USAGE
$ smartthings capabilities:translations:create [ID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-i <value>] [-o <value>] [-d]
ARGUMENTS
ID the capability id
VERSION the capability version
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 capability translation
EXAMPLES
$ smartthings capabilities:translations:create custom1.outputModulation 1 -i en.yaml
tag: en
label: Output Modulation
attributes:
outputModulation:
label: Output Modulation
displayTemplate: 'The {{attribute}} of {{device.label}} is {{value}}'
i18n:
value:
50hz:
label: 50 Hz
60hz:
label: 60 Hz
commands:
setOutputModulation:
label: Set Output Modulation
arguments:
outputModulation:
label: Output Modulation
$ smartthings capabilities:translations:create -i en.yaml
┌───┬─────────────────────────────┬─────────┬──────────┐
│ # │ Id │ Version │ Status │
├───┼─────────────────────────────┼─────────┼──────────┤
│ 1 │ custom1.outputModulation │ 1 │ proposed │
│ 2 │ custom1.outputVoltage │ 1 │ proposed │
└───┴─────────────────────────────┴─────────┴──────────┘
? Enter id or index 1
tag: en
label: Output Modulation
attributes:
outputModulation:
label: Output Modulation
displayTemplate: 'The {{attribute}} of {{device.label}} is {{value}}'
i18n:
value:
50hz:
label: 50 Hz
60hz:
label: 60 Hz
commands:
setOutputModulation:
label: Set Output Modulation
arguments:
outputModulation:
label: Output Modulation
See code: src/commands/capabilities/translations/create.ts
update a capability translation
USAGE
$ smartthings capabilities:translations:update [ID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-i <value>] [-o <value>] [-d]
ARGUMENTS
ID the capability id
VERSION the capability version
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 capability translation
EXAMPLES
$ smartthings capabilities:translations:update custom1.outputModulation 1 -i en.yaml
tag: en
label: Output Modulation
attributes:
outputModulation:
label: Output Modulation
displayTemplate: 'The {{attribute}} of {{device.label}} is {{value}}'
i18n:
value:
50hz:
label: 50 Hz
60hz:
label: 60 Hz
commands:
setOutputModulation:
label: Set Output Modulation
arguments:
outputModulation:
label: Output Modulation
$ smartthings capabilities:translations:update -i en.yaml
┌───┬─────────────────────────────┬─────────┬──────────┐
│ # │ Id │ Version │ Status │
├───┼─────────────────────────────┼─────────┼──────────┤
│ 1 │ custom1.outputModulation │ 1 │ proposed │
│ 2 │ custom1.outputVoltage │ 1 │ proposed │
└───┴─────────────────────────────┴─────────┴──────────┘
? Enter id or index 1
tag: en
label: Output Modulation
attributes:
outputModulation:
label: Output Modulation
displayTemplate: 'The {{attribute}} of {{device.label}} is {{value}}'
i18n:
value:
50hz:
label: 50 Hz
60hz:
label: 60 Hz
commands:
setOutputModulation:
label: Set Output Modulation
arguments:
outputModulation:
label: Output Modulation
See code: src/commands/capabilities/translations/update.ts
create or update a capability translation
USAGE
$ smartthings capabilities:translations:upsert [ID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-i <value>] [-o <value>] [-d]
ARGUMENTS
ID the capability id
VERSION the capability version
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 or update a capability translation
EXAMPLES
$ smartthings capabilities:translations:upsert custom1.outputModulation 1 -i en.yaml
tag: en
label: Output Modulation
attributes:
outputModulation:
label: Output Modulation
displayTemplate: 'The {{attribute}} of {{device.label}} is {{value}}'
i18n:
value:
50hz:
label: 50 Hz
60hz:
label: 60 Hz
commands:
setOutputModulation:
label: Set Output Modulation
arguments:
outputModulation:
label: Output Modulation
$ smartthings capabilities:translations:upsert -i en.yaml
┌───┬─────────────────────────────┬─────────┬──────────┐
│ # │ Id │ Version │ Status │
├───┼─────────────────────────────┼─────────┼──────────┤
│ 1 │ custom1.outputModulation │ 1 │ proposed │
│ 2 │ custom1.outputVoltage │ 1 │ proposed │
└───┴─────────────────────────────┴─────────┴──────────┘
? Enter id or index 1
tag: en
label: Output Modulation
attributes:
outputModulation:
label: Output Modulation
displayTemplate: 'The {{attribute}} of {{device.label}} is {{value}}'
i18n:
value:
50hz:
label: 50 Hz
60hz:
label: 60 Hz
commands:
setOutputModulation:
label: Set Output Modulation
arguments:
outputModulation:
label: Output Modulation
See code: src/commands/capabilities/translations/upsert.ts
update a capability
USAGE
$ smartthings capabilities:update [ID] [VERSION] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-i <value>] [-o <value>] [-d]
ARGUMENTS
ID the capability id
VERSION the capability version
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 capability
See code: src/commands/capabilities/update.ts
list config file entries
USAGE
$ smartthings config [NAME] [-h] [-p <value>] [-j] [-y] [-o <value>] [-v]
ARGUMENTS
NAME the config name
FLAGS
-v, --verbose Include additional data in table output
COMMON FLAGS
-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
-y, --yaml use YAML format of input and/or output
DESCRIPTION
list config file entries
See code: src/commands/config.ts
clear saved answers to questions
USAGE
$ smartthings config:reset [-h] [-p <value>]
COMMON FLAGS
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
DESCRIPTION
clear saved answers to questions
The CLI will occasionally ask you if you want it to remember the answer to a question, such as "Which hub do you want
to use?" You can use this command to clear those answers.
See code: src/commands/config/reset.ts
list device preferences or get information for a specific device preference
USAGE
$ smartthings devicepreferences [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-o <value>] [-A] [-n <value>] [-s]
ARGUMENTS
IDORINDEX device preference id or index
FLAGS
-A, --all-organizations include entities from all organizations the user belongs to
-O, --organization=<value> the organization ID to use for this command
-n, --namespace=<value> a specific namespace to query; will use all by default
-s, --standard show standard SmartThings device preferences
COMMON FLAGS
-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 device preferences or get information for a specific device preference
EXAMPLES
$ smartthings devicepreferences # list all device preferences, sorted by title
$ smartthings devicepreferences device-preference-id # display details for preference with specified id
$ smartthings devicepreferences 2 # display details for second preference when sorted by title
$ smartthings devicepreferences 3 -y # display details for third preference as YAML
$ smartthings devicepreferences 3 -o dp.json # write details as JSON for third preference to dp.json
See code: src/commands/devicepreferences.ts
create a device preference
USAGE
$ smartthings devicepreferences: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
COMMON FLAGS
-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 device preference
EXAMPLES
# create a new device preference by answering questions
$ smartthings devicepreferences:create
# generate a device preference by answering questions but do not actually create it
$ smartthings devicepreferences:create -d
# create a new device preference defined by the file dp.json
$ smartthings devicepreferences:create -i dp.json
# create a new device preference defined by the file dp.json and write the results to dp - saved.json
$ smartthings devicepreferences: create - i dp.json - o dp - saved.json
See code: src/commands/devicepreferences/create.ts
get translated device preference values in a desired locale
USAGE
$ smartthings devicepreferences:translations [PREFERENCEID] [TAG] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
[-j] [-y] [-o <value>]
ARGUMENTS
PREFERENCEID device preference id or index
TAG the locale tag
FLAGS
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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
get translated device preference values in a desired locale
EXAMPLES
# let command prompt to choose device preference and list locales
$ smartthings devicepreferences:translations
# specify device preference ID and list locales
$ smartthings devicepreferences:translations motionSensitivity
# specify device preference ID and locale to get translated device preference values
$ smartthings devicepreferences:translations motionSensitivity ko
See code: src/commands/devicepreferences/translations.ts
create a device preference translation
USAGE
$ smartthings devicepreferences:translations:create [PREFERENCEID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-i <value>] [-o <value>] [-d]
ARGUMENTS
PREFERENCEID device preference id or index
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 device preference translation
EXAMPLES
$ smartthings devicepreferences:translations:create -i preferenceTranslation.json
See code: src/commands/devicepreferences/translations/create.ts
update a device preference translation
USAGE
$ smartthings devicepreferences:translations:update [PREFERENCEID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
[-y] [-i <value>] [-o <value>] [-d]
ARGUMENTS
PREFERENCEID device preference id or index
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 device preference translation
EXAMPLES
$ smartthings devicepreferences:translations:update -i preferenceTranslation.json
See code: src/commands/devicepreferences/translations/update.ts
update a device preference
USAGE
$ smartthings devicepreferences:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
<value>] [-o <value>] [-d]
ARGUMENTS
ID the device preference id
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 device preference
EXAMPLES
$ smartthings devicepreferences:update -i dp.json # update a device preference with data from dp.json, select which preference from a list
$ smartthings devicepreferences:update -i dp.yaml my-preference-id # update device preference my-preference-id with data from dp.yaml
See code: src/commands/devicepreferences/update.ts
list all device profiles available in a user account or retrieve a single profile
USAGE
$ smartthings deviceprofiles [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-o
<value>] [-A] [-v]
ARGUMENTS
ID device profile to retrieve; UUID or the number of the profile from 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, --verbose include presentationId and manufacturerName in list output
COMMON FLAGS
-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 device profiles available in a user account or retrieve a single profile
EXAMPLES
$ smartthings deviceprofiles # list all device profiles
$ smartthings deviceprofiles bb0fdc5-...-a8bd2ea # show device profile with the specified UUID
$ smartthings deviceprofiles 2 # show the second device profile in the list
$ smartthings deviceprofiles 3 -j # show the profile in JSON format
$ smartthings deviceprofiles 5 -y # show the profile in YAML format
$ smartthings deviceprofiles 4 -j -o profile.json # write the profile to the file "profile.json"
See code: src/commands/deviceprofiles.ts
create a new device profile
USAGE
$ smartthings deviceprofiles: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
COMMON FLAGS
-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 new device profile
Creates a new device profile. If a vid field is not present in the meta
then a default device presentation will be created for this profile and the
vid set to reference it.
EXAMPLES
$ smartthings deviceprofiles:create -i myprofile.json # create a device profile from the JSON file definition
$ smartthings deviceprofiles:create -i myprofile.yaml # create a device profile from the YAML file definition
$ smartthings deviceprofiles:create # create a device profile with interactive dialog
See code: src/commands/deviceprofiles/create.ts
delete a device profile
USAGE
$ smartthings deviceprofiles:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]
ARGUMENTS
ID Device profile UUID or number in the list
FLAGS
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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 device profile
EXAMPLES
$ smartthings deviceprofiles:delete 63b8c91e-9686-4c43-9afb-fbd9f77e3bb0 # delete profile with this UUID
$ smartthings deviceprofiles:delete 5 # delete the 5th profile in the list
See code: src/commands/deviceprofiles/delete.ts
get the device configuration associated with a device profile
USAGE
$ smartthings deviceprofiles:device-config [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-o
<value>]
ARGUMENTS
ID device profile id or the number in list
FLAGS
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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
get the device configuration associated with a device profile
See code: src/commands/deviceprofiles/device-config.ts
get the presentation associated with a device profile
USAGE
$ smartthings deviceprofiles:presentation [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-o
<value>]
ARGUMENTS
ID device profile UUID or the number of the profile from list
FLAGS
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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
get the presentation associated with a device profile
EXAMPLES
$ smartthings deviceprofiles:presentation fd4adb7f-4a23-4134-9b39-05ed889a03cf
$ smartthings deviceprofiles:presentation fd4adb7f-4a23-4134-9b39-05ed889a03cf --language=ko
$ smartthings deviceprofiles:presentation fd4adb7f-4a23-4134-9b39-05ed889a03cf --language=NONE
Specifying only the presentationId defaults to the "SmartThingsCommunity" manufacturer
name and the language set for the computer's operating system. The language can be
overridden by specifying an ISO language code. If "NONE" is specified for the language
flag then no language header is specified in the API request
See code: src/commands/deviceprofiles/presentation.ts
publish a device profile (published profiles cannot be modified)
USAGE
$ smartthings deviceprofiles:publish [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-o
<value>]
ARGUMENTS
ID device profile id
FLAGS
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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
publish a device profile (published profiles cannot be modified)
See code: src/commands/deviceprofiles/publish.ts
get list of locales supported by the device profiles
USAGE
$ smartthings deviceprofiles:translations [ID] [TAG] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y]
[-o <value>] [-v]
ARGUMENTS
ID UUID or the number of the profile from list
TAG the locale tag or number of the tag from list
FLAGS
-O, --organization=<value> the organization ID to use for this command
-v, --verbose include list of locales in table output
COMMON FLAGS
-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
get list of locales supported by the device profiles
EXAMPLES
$ smartthings deviceprofiles:translations
┌────┬─────────────────────┬─────────────┬──────────────────────────────────────┐
│ # │ Name │ Status │ Id │
├────┼─────────────────────┼─────────────┼──────────────────────────────────────┤
│ 1 │ Test Switch │ DEVELOPMENT │ 58e73d0c-b5a5-4814-b344-c10f4ff357bb │
│ 2 │ Two Channel Outlet │ DEVELOPMENT │ 3acbf2fc-6be2-4be0-aeb5-44759cbd66c2 │
└────┴─────────────────────┴─────────────┴──────────────────────────────────────┘
? Select a Device Profile. 2
┌───┬─────┐
│ # │ Tag │
├───┼─────┤
│ 1 │ en │
│ 2 │ es │
└───┴─────┘
$ smartthings deviceprofiles:translations -v
┌────┬─────────────────────┬─────────────┬──────────────────────────────────────┬─────────┐
│ # │ Name │ Status │ Id │ Locales │
├────┼─────────────────────┼─────────────┼──────────────────────────────────────┼─────────┤
│ 1 │ Test Switch │ DEVELOPMENT │ 58e73d0c-b5a5-4814-b344-c10f4ff357bb │ │
│ 2 │ Two Channel Outlet │ DEVELOPMENT │ 3acbf2fc-6be2-4be0-aeb5-44759cbd66c2 │ en, es │
└────┴─────────────────────┴─────────────┴──────────────────────────────────────┴─────────┘
? Select a Device Profile. 2
┌───┬─────┐
│ # │ Tag │
├───┼─────┤
│ 1 │ en │
│ 2 │ es │
└───┴─────┘
$ smartthings deviceprofiles:translations 2
$ smartthings deviceprofiles:translations 3acbf2fc-6be2-4be0-aeb5-c10f4ff357bb
┌───┬─────┐
│ # │ Tag │
├───┼─────┤
│ 1 │ en │
│ 2 │ es │
└───┴─────┘
$ smartthings deviceprofiles:translations 2 2
$ smartthings deviceprofiles:translations 2 en
$ smartthings deviceprofiles:translations 3acbf2fc-6be2-4be0-aeb5-44759cbd66c2 en
Tag: en
┌───────────┬────────────┬───────────────────────────────┐
│ Component │ Label │ Description │
├───────────┼────────────┼───────────────────────────────┤
│ main │ Main Power │ Controls power to all outlets │
│ outlet1 │ Outlet One │ Switchable outlet 1 power │
│ outlet2 │ Outlet two │ Switchable outlet 1 power │
└───────────┴────────────┴───────────────────────────────┘
See code: src/commands/deviceprofiles/translations.ts
delete a device profile translation
USAGE
$ smartthings deviceprofiles:translations:delete [ID] [TAG] [-h] [-p <value>] [-t <value>] [--language <value>] [-O
<value>]
ARGUMENTS
ID device profile UUID or number in the list
TAG the locale tag
FLAGS
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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 device profile translation
EXAMPLES
$ smartthings deviceprofiles:translations:delete 3acbf2fc-6be2-4be0-aeb5-44759cbd66c2 en
Device profile "3acbf2fc-6be2-4be0-aeb5-44759cbd66c2" translation "en" deleted
$ smartthings deviceprofiles:translations:delete
┌────┬─────────────────────┬─────────────┬──────────────────────────────────────┐
│ # │ Name │ Status │ Id │
├────┼─────────────────────┼─────────────┼──────────────────────────────────────┤
│ 1 │ Test Switch │ DEVELOPMENT │ 58e73d0c-b5a5-4814-b344-c10f4ff357bb │
│ 2 │ Two Channel Outlet │ DEVELOPMENT │ 3acbf2fc-6be2-4be0-aeb5-44759cbd66c2 │
└────┴─────────────────────┴─────────────┴──────────────────────────────────────┘
? Enter id or index 2
┌───┬─────┐
│ # │ Tag │
├───┼─────┤
│ 1 │ en │
│ 2 │ es │
└───┴─────┘
? Enter id or index 1
Device profile "3acbf2fc-6be2-4be0-aeb5-44759cbd66c2" translation "en" deleted
See code: src/commands/deviceprofiles/translations/delete.ts
create or update a device profile translation
USAGE
$ smartthings deviceprofiles:translations:upsert [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
<value>] [-o <value>] [-d]
ARGUMENTS
ID UUID or the number of the profile from list
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 or update a device profile translation
EXAMPLES
$ smartthings deviceprofiles:translations:upsert 3acbf2fc-6be2-4be0-aeb5-44759cbd66c2 -i en.yaml
tag: en
components:
main:
label: Main Power
description: Controls power to all outlets
outlet1:
label: Outlet One
description: Switchable outlet 1 power
outlet2:
label: Outlet two
description: Switchable outlet 1 power
$ smartthings deviceprofiles:translations:upsert -i en.yaml
┌────┬─────────────────────┬─────────────┬──────────────────────────────────────┐
│ # │ Name │ Status │ Id │
├────┼─────────────────────┼─────────────┼──────────────────────────────────────┤
│ 1 │ Test Switch │ DEVELOPMENT │ 58e73d0c-b5a5-4814-b344-c10f4ff357bb │
│ 2 │ Two Channel Outlet │ DEVELOPMENT │ 3acbf2fc-6be2-4be0-aeb5-44759cbd66c2 │
└────┴─────────────────────┴─────────────┴──────────────────────────────────────┘
? Enter id or index 2
tag: en
components:
main:
label: Main Power
description: Controls power to all outlets
outlet1:
label: Outlet One
description: Switchable outlet 1 power
outlet2:
label: Outlet two
description: Switchable outlet 1 power
See code: src/commands/deviceprofiles/translations/upsert.ts
update a device profile
USAGE
$ smartthings deviceprofiles:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
<value>] [-o <value>] [-d]
ARGUMENTS
ID device profile UUID or number in the list
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 device profile
See code: src/commands/deviceprofiles/update.ts
show device profile and device configuration in a single, consolidated view
USAGE
$ smartthings deviceprofiles:view [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-o
<value>]
ARGUMENTS
ID device profile UUID or the number from list
FLAGS
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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
show device profile and device configuration in a single, consolidated view
See code: src/commands/deviceprofiles/view.ts
create a new device profile and device configuration
USAGE
$ smartthings deviceprofiles:view: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
COMMON FLAGS
-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 new device profile and device configuration
Creates a new device profile and device configuration. Unlike deviceprofiles:create,
this command accepts a consolidated object that can include a device configuration
in a property named "view".
EXAMPLES
$ smartthings deviceprofiles:view:create -i test.json
This test.json file defines a switch that cannot be controlled by the automations builder:
name: Test Switch
components:
- id: main
capabilities:
- id: switch
view:
dashboard:
states:
- capability: switch
actions:
- capability: switch
detailView:
- capability: switch
automation:
conditions:
- capability: switch
See code: src/commands/deviceprofiles/view/create.ts
update a device profile and configuration
USAGE
$ smartthings deviceprofiles:view:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
<value>] [-o <value>] [-d]
ARGUMENTS
ID device profile id
FLAGS
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 device profile and configuration
Updates a device profile and device configuration and sets the vid of the profile
to the vid of the updated configuration. Unlike deviceprofiles:update this
command accepts a consolidated object that can include a device configuration
in a property named "view".
EXAMPLES
$ smartthings deviceprofiles:view:update 84042863-0d34-4c5c-b497-808daf230787 -i test.json
This test.json file adds the powerMeter capability to the device and makes it available in
the device detail view but not the rule builder:
components:
- id: main
capabilities:
- id: switch
- id: powerMeter
view:
dashboard:
states:
- capability: switch
actions:
- capability: switch
detailView:
- capability: switch
- capability: powerMeter
automation:
conditions:
- capability: switch
See code: src/commands/deviceprofiles/view/update.ts
list all devices available in a user account or retrieve a single device
USAGE
$ smartthings devices [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>] [-l
<value>] [-C and|or -c <value>] [-d <value>] [-a <value>] [-s] [-H] [--type BLE|BLE_D2D|DTH|ENDPOINT_APP|GROUP|HUB|I
R|IR_OCF|LAN|MATTER|MOBILE|MQTT|OCF|PENGYOU|SHP|VIDEO|VIPER|VIRTUAL|WATCH|ZIGBEE|ZWAVE] [-v]
ARGUMENTS
ID device to retrieve; UUID or the number of the device from list
FLAGS
-C, --capabilities-mode=<option> Treat capability filter query params as a logical "or" or "and" with a default of
"and".
<options: and|or>
-H, --health include device health in response
-a, --installed-app=<UUID> filter results by installed app that created the device
-c, --capability=<value>... filter results by capability
-d, --device=<UUID>... filter results by device
-l, --location=<UUID>... filter results by location
-s, --status include attribute values in the response
-v, --verbose include location name in output
--type=<option>... filter results by device type
<options: BLE|BLE_D2D|DTH|ENDPOINT_APP|GROUP|HUB|IR|IR_OCF|LAN|MATTER|MOBILE|MQTT|OC
F|PENGYOU|SHP|VIDEO|VIPER|VIRTUAL|WATCH|ZIGBEE|ZWAVE>
COMMON FLAGS
-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 devices available in a user account or retrieve a single device
See code: src/commands/devices.ts
get the current status of all of a device capability's attributes
USAGE
$ smartthings devices:capability-status [ID] [COMPONENT] [CAPABILITY] [-h] [-p <value>] [-t <value>] [--language <value>]
[-j] [-y] [-o <value>]
ARGUMENTS
ID the device id
COMPONENT the component id
CAPABILITY the capability id
COMMON FLAGS
-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
get the current status of all of a device capability's attributes
See code: src/commands/devices/capability-status.ts
execute a device command
USAGE
$ smartthings devices:commands [ID] [COMMAND] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i
<value>]
ARGUMENTS
ID the device id
COMMAND the command [<component>]:<capability>:<command>([<arguments>])
COMMON FLAGS
-h, --help Show CLI help.
-i, --input=<value> specify input file
-j, --json use JSON format of input and/or output
-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
execute a device command
EXAMPLES
# simple capability and command
$ smartthings devices:commands 00000000-0000-0000-0000-000000000000 switch:off
# capability and command with an argument (note: single quote command arg to prevent specific shell parsing errors)
$ smartthings devices:commands 00000000-0000-0000-0000-000000000000 'switchLevel:setLevel(50)'
See code: src/commands/devices/commands.ts
get the current status of a device component's attributes
USAGE
$ smartthings devices:component-status [ID] [COMPONENT] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o
<value>]
ARGUMENTS
ID the device id
COMPONENT the component id
COMMON FLAGS
-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
get the current status of a device component's attributes
See code: src/commands/devices/component-status.ts
delete a device
USAGE
$ smartthings devices:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>]
ARGUMENTS
ID device UUID
COMMON FLAGS
-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 device
See code: src/commands/devices/delete.ts
get the current health status of a device
USAGE
$ smartthings devices:health [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
ID the device id
COMMON FLAGS
-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
get the current health status of a device
See code: src/commands/devices/health.ts
get device history by device
USAGE
$ smartthings devices:history [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>] [-A
<value>] [-B <value>] [-L <value>] [-U]
ARGUMENTS
ID the device id
FLAGS
-A, --after=<value> return events newer than or equal to this timestamp, expressed as an epoch time in milliseconds
or an ISO time string
-B, --before=<value> return events older than than this timestamp, expressed as an epoch time in milliseconds or an
ISO time string
-L, --limit=<value> [default: 20] maximum number of events to return
-U, --utc display times in UTC time zone. Defaults to local time
COMMON FLAGS
-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
get device history by device
See code: src/commands/devices/history.ts
get the current preferences of a device
USAGE
$ smartthings devices:preferences [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
ID the device id
COMMON FLAGS
-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
get the current preferences of a device
See code: src/commands/devices/preferences.ts
get a device presentation
USAGE
$ smartthings devices:presentation [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
ID the device id or number in the list
COMMON FLAGS
-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
get a device presentation
See code: src/commands/devices/presentation.ts
rename a device
USAGE
$ smartthings devices:rename [ID] [LABEL] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o
<value>]
ARGUMENTS
ID the device id
LABEL the new device label
COMMON FLAGS
-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
rename a device
See code: src/commands/devices/rename.ts
get the current status of all of a device's component's attributes
USAGE
$ smartthings devices:status [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
ID the device id
COMMON FLAGS
-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
get the current status of all of a device's component's attributes
See code: src/commands/devices/status.ts
update a device's label and room
USAGE
$ smartthings devices:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d]
ARGUMENTS
ID the device id
FLAGS
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 device's label and room
See code: src/commands/devices/update.ts
edge topic
USAGE
$ smartthings edge [-h]
COMMON FLAGS
-h, --help Show CLI help.
DESCRIPTION
edge topic
See code: @smartthings/plugin-cli-edge
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
--subscriber-id=<UUID> filter results based on subscriber id (e.g. hub id)
--subscriber-type=<option> filter results based on subscriber type
<options: HUB>
COMMON FLAGS
-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
# 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: @smartthings/plugin-cli-edge
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=<UUID> channel id
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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
See code: @smartthings/plugin-cli-edge
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
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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
COMMON FLAGS
-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
See code: @smartthings/plugin-cli-edge
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=<UUID> channel id
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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=<UUID> channel id
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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
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: @smartthings/plugin-cli-edge
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
COMMON FLAGS
-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
See code: @smartthings/plugin-cli-edge
create an invitation
USAGE
$ smartthings edge:channels:invites:create [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-C <value> | -i
<value>] [-j] [-y] [-o <value>] [-d]
FLAGS
-C, --channel=<UUID> channel id
-O, --organization=<value> the organization ID to use for this command
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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
See code: @smartthings/plugin-cli-edge
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=<UUID> channel id
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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
See code: @smartthings/plugin-cli-edge
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=<UUID> channel id
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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=<UUID> channel id
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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
See code: @smartthings/plugin-cli-edge
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=<UUID> channel id
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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=<UUID> channel id
-H, --hub=<UUID> hub id
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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>] [-v]
ARGUMENTS
IDORINDEX the driver id or number in list
FLAGS
-H, --hub=<UUID> hub id
-O, --organization=<value> the organization ID to use for this command
-v, --verbose include channel name in output
--device=<UUID> return drivers matching the specified device
COMMON FLAGS
-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 installed on a given hub
EXAMPLES
list all installed drivers
$ smartthings edge:drivers:installed
list all installed drivers and include the channel name in the output
$ smartthings edge:drivers:installed --verbose
list the first driver in the list retrieved by running "smartthings edge:drivers:installed"
$ smartthings edge:drivers:installed 1
list an installed driver by id
$ smartthings edge:drivers:installed <driver-id>
See code: @smartthings/plugin-cli-edge
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
--connect-timeout=<milliseconds> [default: 30000] max time allowed when connecting to hub
--hub-address=<value> IPv4 address of hub with optionally appended port number
--log-level=<string> [default: TRACE] minimum level of event to log
COMMON FLAGS
-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
stream logs from installed drivers
See code: @smartthings/plugin-cli-edge
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
-u, --upload=<value> upload zip file previously built with --build flag
--channel=<UUID> automatically assign driver to specified channel after upload
--hub=<UUID> automatically install driver to specified hub, implies --assign if --assign or --channel
not included
COMMON FLAGS
-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
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: @smartthings/plugin-cli-edge
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=<UUID> 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=<UUID> id of new driver to use
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
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=<UUID> hub id
-O, --organization=<value> the organization ID to use for this command
COMMON FLAGS
-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: @smartthings/plugin-cli-edge
Display help for smartthings.
USAGE
$ smartthings help [COMMAND] [-n]
ARGUMENTS
COMMAND Command to show help for.
FLAGS
-n, --nested-commands Include all nested commands in the output.
DESCRIPTION
Display help for smartthings.
See code: @oclif/plugin-help
get a specific app or a list of apps
USAGE
$ smartthings installedapps [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>] [-l
<value>] [-v]
ARGUMENTS
ID the app id
FLAGS
-l, --location=<UUID>... filter results by location
-v, --verbose include location name in output
COMMON FLAGS
-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
get a specific app or a list of apps
See code: src/commands/installedapps.ts
delete the installed app instance
USAGE
$ smartthings installedapps:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-l <value>] [-v]
ARGUMENTS
ID installed app UUID
FLAGS
-l, --location=<UUID>... filter results by location
-v, --verbose include location name in output
COMMON FLAGS
-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 the installed app instance
See code: src/commands/installedapps/delete.ts
renamed an installed app instance
USAGE
$ smartthings installedapps:rename [ID] [NAME] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o
<value>] [-l <value>] [-v]
ARGUMENTS
ID the installed app id
NAME the new installed app name
FLAGS
-l, --location=<UUID>... filter results by location
-v, --verbose include location name in output
COMMON FLAGS
-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
renamed an installed app instance
See code: src/commands/installedapps/rename.ts
get a specific schema connector instance or a list of instances
USAGE
$ smartthings installedschema [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>] [-l
<value>] [-v]
ARGUMENTS
ID the isa id
FLAGS
-l, --location=<UUID>... filter results by location
-v, --verbose include location name in output
COMMON FLAGS
-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
get a specific schema connector instance or a list of instances
See code: src/commands/installedschema.ts
delete the installed schema connector instance
USAGE
$ smartthings installedschema:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-l <value>] [-v]
ARGUMENTS
ID installed schema connector UUID
FLAGS
-l, --location=<UUID>... filter results by location
-v, --verbose include location name in output
COMMON FLAGS
-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 the installed schema connector instance
See code: src/commands/installedschema/delete.ts
list locations or get information for a specific Location
USAGE
$ smartthings locations [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
IDORINDEX the location id or number in list
COMMON FLAGS
-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 locations or get information for a specific Location
See code: src/commands/locations.ts
create a Location for a user
USAGE
$ smartthings locations:create [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d]
FLAGS
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 Location for a user
See code: src/commands/locations/create.ts
delete a location
USAGE
$ smartthings locations:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>]
ARGUMENTS
ID location id
COMMON FLAGS
-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 location
EXAMPLES
$ smartthings locations:delete # choose the location to delete from a list
$ smartthings locations:delete my-location-id # delete the location with the specified id
See code: src/commands/locations/delete.ts
get device history by location
USAGE
$ smartthings locations:history [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>] [-A
<value>] [-B <value>] [-L <value>] [-U]
ARGUMENTS
ID the location id
FLAGS
-A, --after=<value> return events newer than or equal to this timestamp, expressed as an epoch time in milliseconds
or an ISO time string
-B, --before=<value> return events older than than this timestamp, expressed as an epoch time in milliseconds or an
ISO time string
-L, --limit=<value> [default: 20] maximum number of events to return
-U, --utc display times in UTC time zone. Defaults to local time
COMMON FLAGS
-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
get device history by location
See code: src/commands/locations/history.ts
list rooms or get information for a specific room
USAGE
$ smartthings locations:rooms [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-l <value>] [-v]
[-j] [-y] [-o <value>]
ARGUMENTS
IDORINDEX room UUID or index
FLAGS
-l, --location=<UUID> a specific location to query
-v, --verbose include location name in output
COMMON FLAGS
-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 rooms or get information for a specific room
See code: src/commands/locations/rooms.ts
create a room
USAGE
$ smartthings locations:rooms:create [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d] [-l <value>]
FLAGS
-d, --dry-run produce JSON but don't actually submit
-l, --location=<UUID> a specific location to query
COMMON FLAGS
-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 room
See code: src/commands/locations/rooms/create.ts
delete a room
USAGE
$ smartthings locations:rooms:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-l <value>]
ARGUMENTS
ID room UUID
FLAGS
-l, --location=<UUID> a specific location to query
COMMON FLAGS
-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 room
See code: src/commands/locations/rooms/delete.ts
update a room
USAGE
$ smartthings locations:rooms:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d] [-l <value>]
ARGUMENTS
ID room UUID
FLAGS
-d, --dry-run produce JSON but don't actually submit
-l, --location=<UUID> a specific location to query
COMMON FLAGS
-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 room
See code: src/commands/locations/rooms/update.ts
update a location
USAGE
$ smartthings locations:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d]
ARGUMENTS
ID the location id
FLAGS
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 location
See code: src/commands/locations/update.ts
USAGE
$ smartthings logout [-h] [-p <value>] [-t <value>] [--language <value>]
COMMON FLAGS
-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
See code: src/commands/logout.ts
list all organizations the user belongs to
USAGE
$ smartthings organizations [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
ID the organization name, id or index
COMMON FLAGS
-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 organizations the user belongs to
See code: src/commands/organizations.ts
return the currently active organization
USAGE
$ smartthings organizations:current [-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
COMMON FLAGS
-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
return the currently active organization
See code: src/commands/organizations/current.ts
List installed plugins.
USAGE
$ smartthings plugins [--core]
FLAGS
--core Show core plugins.
DESCRIPTION
List installed plugins.
EXAMPLES
$ smartthings plugins
See code: @oclif/plugin-plugins
Installs a plugin into the CLI.
USAGE
$ smartthings plugins:install PLUGIN...
ARGUMENTS
PLUGIN Plugin to install.
FLAGS
-f, --force Run yarn install with force flag.
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Installs a plugin into the CLI.
Can be installed from npm or a git url.
Installation of a user-installed plugin will override a core plugin.
e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
the CLI without the need to patch and update the whole CLI.
ALIASES
$ smartthings plugins:add
EXAMPLES
$ smartthings plugins:install myplugin
$ smartthings plugins:install https://github.com/someuser/someplugin
$ smartthings plugins:install someuser/someplugin
Displays installation properties of a plugin.
USAGE
$ smartthings plugins:inspect PLUGIN...
ARGUMENTS
PLUGIN [default: .] Plugin to inspect.
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Displays installation properties of a plugin.
EXAMPLES
$ smartthings plugins:inspect myplugin
See code: @oclif/plugin-plugins
Installs a plugin into the CLI.
USAGE
$ smartthings plugins:install PLUGIN...
ARGUMENTS
PLUGIN Plugin to install.
FLAGS
-f, --force Run yarn install with force flag.
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Installs a plugin into the CLI.
Can be installed from npm or a git url.
Installation of a user-installed plugin will override a core plugin.
e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
the CLI without the need to patch and update the whole CLI.
ALIASES
$ smartthings plugins:add
EXAMPLES
$ smartthings plugins:install myplugin
$ smartthings plugins:install https://github.com/someuser/someplugin
$ smartthings plugins:install someuser/someplugin
See code: @oclif/plugin-plugins
Links a plugin into the CLI for development.
USAGE
$ smartthings plugins:link PLUGIN
ARGUMENTS
PATH [default: .] path to plugin
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Links a plugin into the CLI for development.
Installation of a linked plugin will override a user-installed or core plugin.
e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
command will override the user-installed or core plugin implementation. This is useful for development work.
EXAMPLES
$ smartthings plugins:link myplugin
See code: @oclif/plugin-plugins
Removes a plugin from the CLI.
USAGE
$ smartthings plugins:uninstall PLUGIN...
ARGUMENTS
PLUGIN plugin to uninstall
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Removes a plugin from the CLI.
ALIASES
$ smartthings plugins:unlink
$ smartthings plugins:remove
Removes a plugin from the CLI.
USAGE
$ smartthings plugins:uninstall PLUGIN...
ARGUMENTS
PLUGIN plugin to uninstall
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Removes a plugin from the CLI.
ALIASES
$ smartthings plugins:unlink
$ smartthings plugins:remove
See code: @oclif/plugin-plugins
Removes a plugin from the CLI.
USAGE
$ smartthings plugins:uninstall PLUGIN...
ARGUMENTS
PLUGIN plugin to uninstall
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Removes a plugin from the CLI.
ALIASES
$ smartthings plugins:unlink
$ smartthings plugins:remove
Update installed plugins.
USAGE
$ smartthings plugins:update [-h] [-v]
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Update installed plugins.
See code: @oclif/plugin-plugins
query device presentation by vid
USAGE
$ smartthings presentation [PRESENTATIONID] [MANUFACTURERNAME] [-h] [-p <value>] [-t <value>] [--language
<value>] [-j] [-y] [-o <value>]
ARGUMENTS
PRESENTATIONID system generated identifier that corresponds to a device presentation
MANUFACTURERNAME manufacturer name. Defaults to SmartThingsCommunity
COMMON FLAGS
-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
query device presentation by vid
EXAMPLES
$ smartthings presentation fd4adb7f-4a23-4134-9b39-05ed889a03cf
$ smartthings presentation 4ea31e30-2aba-41c7-a3ec-8f97423d565a SmartThings
$ smartthings presentation fd4adb7f-4a23-4134-9b39-05ed889a03cf --language=ko
$ smartthings presentation fd4adb7f-4a23-4134-9b39-05ed889a03cf --language=NONE
Specifying only the presentationId defaults to the "SmartThingsCommunity" manufacturer
name and the language set for the computer's operating system. The language can be
overridden by specifying an ISO language code. If "NONE" is specified for the language
flag then no language header is specified in the API request
See code: src/commands/presentation.ts
query device config by presentationId
USAGE
$ smartthings presentation:device-config [PRESENTATIONID] [MANUFACTURERNAME] [-h] [-p <value>] [-t <value>] [--language
<value>] [-j] [-y] [-o <value>]
ARGUMENTS
PRESENTATIONID system generated identifier that corresponds to a device presentation
MANUFACTURERNAME manufacturer name. Defaults to SmartThingsCommunity
COMMON FLAGS
-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
query device config by presentationId
See code: src/commands/presentation/device-config.ts
create a device config
USAGE
$ smartthings presentation:device-config:create [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d]
FLAGS
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 device config
See code: src/commands/presentation/device-config/create.ts
generate the default device configuration
USAGE
$ smartthings presentation:device-config:generate [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
[--dth] [--type-shard <value>]
ARGUMENTS
ID the profile id (or legacy DTH id))
FLAGS
--dth generate from legacy DTH id instead of a profile id
--type-shard=<value> data management shard Id where the device type resides, only useful for legacy DTH type
integrations
COMMON FLAGS
-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
generate the default device configuration
See code: src/commands/presentation/device-config/generate.ts
get a specific rule
USAGE
$ smartthings rules [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o
<value>] [-l <value>]
ARGUMENTS
IDORINDEX rule UUID or index
FLAGS
-l, --location=<UUID> a specific location to query
COMMON FLAGS
-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
get a specific rule
See code: src/commands/rules.ts
create a rule
USAGE
$ smartthings rules:create [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d] [-l <value>]
FLAGS
-d, --dry-run produce JSON but don't actually submit
-l, --location=<UUID> a specific location to query
COMMON FLAGS
-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 rule
See code: src/commands/rules/create.ts
delete a rule
USAGE
$ smartthings rules:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-l <value>]
ARGUMENTS
ID rule UUID
FLAGS
-l, --location=<UUID> a specific location to query
COMMON FLAGS
-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 rule
See code: src/commands/rules/delete.ts
execute a rule
USAGE
$ smartthings rules:execute [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>] [-l
<value>]
ARGUMENTS
ID rule UUID
FLAGS
-l, --location=<UUID> a specific location to query
COMMON FLAGS
-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
execute a rule
EXAMPLES
# prompt for a rule to execute and then execute it
$ smartthings rules:execute
# execute the rule with the specified id
$ smartthings rules:execute 699c7308-8c72-4363-9571-880d0f5cc725
See code: src/commands/rules/execute.ts
update a rule
USAGE
$ smartthings rules:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d] [-l <value>]
ARGUMENTS
ID rule UUID
FLAGS
-d, --dry-run produce JSON but don't actually submit
-l, --location=<UUID> a specific location to query
COMMON FLAGS
-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 rule
See code: src/commands/rules/update.ts
list scenes or get information for a specific scene
USAGE
$ smartthings scenes [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o
<value>] [-l <value>]
ARGUMENTS
IDORINDEX the scene id or number in list
FLAGS
-l, --location=<UUID>... a specific location to query
COMMON FLAGS
-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 scenes or get information for a specific scene
See code: src/commands/scenes.ts
execute a scene
USAGE
$ smartthings scenes:execute [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
ID scene UUID
COMMON FLAGS
-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
execute a scene
EXAMPLES
# prompt for a scene to execute and then execute it
$ smartthings scenes:execute
# execute the scene with the specified id
$ smartthings scenes:execute 699c7308-8c72-4363-9571-880d0f5cc725
See code: src/commands/scenes/execute.ts
list all ST Schema Apps currently available in a user account
USAGE
$ smartthings schema [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>] [-v]
ARGUMENTS
ID the schema connector id
FLAGS
-v, --verbose include ARN in output
COMMON FLAGS
-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 ST Schema Apps currently available in a user account
See code: src/commands/schema.ts
authorize calls to your ST Schema Lambda function from SmartThings
USAGE
$ smartthings schema:authorize [ARN] [-h] [-p <value>] [--principal <value>] [--statement <value>]
ARGUMENTS
ARN the ARN of the AWS Lambda function
FLAGS
--principal=<value> use this principal instead of the default when authorizing lambda functions
--statement=<value> use this statement id instead of the default when authorizing lambda functions
COMMON FLAGS
-h, --help Show CLI help.
-p, --profile=<value> [default: default] configuration profile
DESCRIPTION
authorize calls to your ST Schema Lambda function from SmartThings
EXAMPLES
$ smartthings schema:authorize arn:aws:lambda:us-east-1:1234567890:function:your-test-app
Note that this command is the same as running the following with the AWS CLI:
$ aws lambda add-permission --region us-east-1 \
--function-name arn:aws:lambda:us-east-1:1234567890:function:your-test-app \
--statement smartthings --principal 148790070172 --action lambda:InvokeFunction
It requires your machine to be configured to run the AWS CLI
See code: src/commands/schema/authorize.ts
create an ST Schema connector
USAGE
$ smartthings schema:create [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d] [--authorize] [--principal <value>] [--statement <value>]
FLAGS
-d, --dry-run produce JSON but don't actually submit
--authorize authorize connector's Lambda functions to be called by SmartThings
--principal=<value> use this principal instead of the default when authorizing lambda functions
--statement=<value> use this statement id instead of the default when authorizing lambda functions
COMMON FLAGS
-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 ST Schema connector
See code: src/commands/schema/create.ts
delete the ST Schema connector
USAGE
$ smartthings schema:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>]
ARGUMENTS
ID schema app id
COMMON FLAGS
-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 the ST Schema connector
See code: src/commands/schema/delete.ts
Regenerate the clientId and clientSecret of the ST Schema connector. The previous values will be invalidated, which may affect existing installations.
USAGE
$ smartthings schema:regenerate [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>]
ARGUMENTS
ID schema app id
COMMON FLAGS
-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
Regenerate the clientId and clientSecret of the ST Schema connector. The previous values will be invalidated, which
may affect existing installations.
See code: src/commands/schema/regenerate.ts
update an ST Schema connector
USAGE
$ smartthings schema:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>]
[--authorize] [--principal <value>] [--statement <value>]
ARGUMENTS
ID the app id
FLAGS
--authorize authorize Lambda functions to be called by SmartThings
--principal=<value> use this principal instead of the default when authorizing lambda functions
--statement=<value> use this statement id instead of the default when authorizing lambda functions
COMMON FLAGS
-h, --help Show CLI help.
-i, --input=<value> specify input file
-j, --json use JSON format of input and/or output
-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 an ST Schema connector
See code: src/commands/schema/update.ts
list all virtual devices available in a user account or retrieve a single device
USAGE
$ smartthings virtualdevices [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o <value>] [-l
<value>] [-a <value>] [-v]
ARGUMENTS
ID device to retrieve; UUID or the number of the device from list
FLAGS
-a, --installed-app=<UUID> filter results by installed app that created the device
-l, --location=<UUID>... filter results by location
-v, --verbose include location name in output
COMMON FLAGS
-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 virtual devices available in a user account or retrieve a single device
See code: src/commands/virtualdevices.ts
create a virtual device from a device profile ID or definition
USAGE
$ smartthings virtualdevices:create [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
<value>] [-o <value>] [-d] [-N <value>] [-l <value>] [-R <value>] [-P <value>] [-f <value>]
FLAGS
-N, --name=<value> name of the device to be created
-O, --organization=<value> the organization ID to use for this command
-P, --device-profile=<UUID> the device profile ID
-R, --room=<UUID> the room to put the device into
-d, --dry-run produce JSON but don't actually submit
-f, --device-profile-file=<value> a file containing the device profile definition
-l, --location=<UUID> location into which device should be created
COMMON FLAGS
-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 virtual device from a device profile ID or definition
The command can be run interactively in question & answer mode, with command line parameters, or with input from a
file or standard in. You can also run this command multiple times with the same input file but different command line
arguments to create multiple devices with different names in different locations and rooms.
EXAMPLES
$ smartthings virtualdevices:create # interactive mode
$ smartthings virtualdevices:create -i data.yml # using request body from a YAML file
$ smartthings virtualdevices:create -N "My Device" -i data.yml # using file request body with "My Device" for the name
$ smartthings virtualdevices:create \ # using command line parameters for everything
> --name="My Second Device" \
> --device-profile=7633ef68-6433-47ab-89c3-deb04b8b0d61 \
> --location=95bdd473-4498-42fc-b932-974d6e5c236e \
> --room=c7266cb7-7dcc-4958-8bc4-4288f5b50e1b
$ smartthings virtualdevices:create -f profile.yml # using a device profile and prompting for the remaining values
See code: src/commands/virtualdevices/create.ts
create a device from one of the standard prototypes.
USAGE
$ smartthings virtualdevices:create-standard [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d] [-N <value>] [-l <value>] [-R <value>] [-T <value>]
FLAGS
-N, --name=<value> name of the device to be created
-R, --room=<UUID> the room to put the device into
-T, --prototype=<value> standard device prototype, e.g. VIRTUAL_SWITCH or VIRTUAL_DIMMER_SWITCH
-d, --dry-run produce JSON but don't actually submit
-l, --location=<UUID> location into which device should be created
COMMON FLAGS
-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 device from one of the standard prototypes.
The command can be run interactively in question & answer mode, with command line parameters, or with input from a
file or standard in. You can also run this command multiple times with the same input file but different command line
arguments to create multiple devices with different names in different locations and rooms.
EXAMPLES
$ smartthings virtualdevices:create-standard # interactive mode
$ smartthings virtualdevices:create-standard -i data.yml # using request body from a YAML file
$ smartthings virtualdevices:create-standard -N "My Device" -i data.yml # using file request body with "My Device" for the name
$ smartthings virtualdevices:create-standard \ # using command line parameters for everything
> --name="My Second Device" \
> --prototype=VIRTUAL_SWITCH \
> --location=95bdd473-4498-42fc-b932-974d6e5c236e \
> --room=c7266cb7-7dcc-4958-8bc4-4288f5b50e1b
See code: src/commands/virtualdevices/create-standard.ts
delete a virtual device
USAGE
$ smartthings virtualdevices:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>]
ARGUMENTS
ID device UUID
COMMON FLAGS
-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 virtual device
See code: src/commands/virtualdevices/delete.ts
create events for a virtual device
USAGE
$ smartthings virtualdevices:events [ID] [NAME] [VALUE] [UNIT] [-h] [-p <value>] [-t <value>] [--language <value>] [-j]
[-y] [-i <value>] [-o <value>] [-d]
ARGUMENTS
ID the device id
NAME the fully qualified attribute name [<component>]:<capability>:<attribute>
VALUE the attribute value
UNIT optional unit of measure
FLAGS
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 events for a virtual device
The command can be run interactively, in question & answer mode, with command line parameters, or with input from a
file or standard in.
EXAMPLES
$ smartthings virtualdevices:events # interactive mode
$ smartthings virtualdevices:events <id> -i data.yml # from a YAML or JSON file
$ smartthings virtualdevices:events <id> switch:switch on # command line input
$ smartthings virtualdevices:events <id> temperatureMeasurement:temperature 22.5 C # command line input
See code: src/commands/virtualdevices/events.ts
update a virtual device's label and room
USAGE
$ smartthings virtualdevices:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
<value>] [-d]
ARGUMENTS
ID the device id
FLAGS
-d, --dry-run produce JSON but don't actually submit
COMMON FLAGS
-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 virtual device's label and room
See code: src/commands/virtualdevices/update.ts
Debug logging can be enabled via the SMARTTHINGS_DEBUG
environment variable. This will log at debug level to the console as well as the default log file.
$ SMARTTHINGS_DEBUG=true smartthings <command>
More details about advanced configuration and logging in the CLI can be found on the configuration documentation page.