SmartThingsCommunity / smartthings-cli

Command-line Interface for the SmartThings APIs.
https://developer.smartthings.com/docs/sdks/cli/introduction
Apache License 2.0
240 stars 104 forks source link

Overview

oclif npm version npm License

SmartThings CLI

The SmartThings CLI is a tool to help with developing SmartApps and drivers for the SmartThings ecosystem.

Usage

Installation

Homebrew (macOS)

brew install smartthingscommunity/smartthings/smartthings

Windows

Download and run the smartthings.msi installer from the latest Release.

Standalone Installation (Linux and others)

  1. Download the appropriate zipped binary from the latest Release.
  2. Extract and install it on your system path. It does not need administrator privileges but will need to be executable.

Verify Installation

Run smartthings --version and verify the version matches the latest release.

Getting Started

  1. Run smartthings --help to get more information on each command.
  2. Run a specific command with smartthings <command>.

Input and Output Considerations

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.

Authentication

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.

Helpful Hints

  1. 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
  2. The CLI accepts data in YAML or JSON format and can output data in either format as well as the default table format.
  3. Commands that take input accept stdin or a file specified by the --input (shortcut -i) flag.
  4. Commands that output data will output the data to stdout unless a file is specified the using --output (shortcut-o`) flag.
  5. 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).
  6. 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.
  7. Command line flags must go after the command. Use smartthings command -f flag instead of smartthings -f flag command.
  8. You can open an issue to report a bug or ask a question.

Commands

Commands that use the SmartThings REST API are organized in topics that map to the API spec.

smartthings apps [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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listApps,
  https://developer.smartthings.com/docs/api/public/#operation/getApp

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

smartthings apps:authorize ARN

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

smartthings apps:create

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createApp

EXAMPLES
  create an OAuth-In app from prompted input

    $ smartthings apps:create

  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

smartthings apps:delete [ID]

delete an app

USAGE
  $ smartthings apps:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>]

ARGUMENTS
  ID  app 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 an app

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteApp

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

smartthings apps:oauth [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getAppOauth

EXAMPLES
  prompt for an app and list OAuth information for it

    $ smartthings apps:oauth

  list OAuth information for the second app in the list generated by "smartthings apps"

    $ smartthings apps:oauth 2

  list OAuth information for the app with the given id

    $ smartthings apps:oauth 392bcb11-e251-44f3-b58b-17f93015f3aa

See code: src/commands/apps/oauth.ts

smartthings apps:oauth:generate [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/generateAppOauth

EXAMPLES
  regenerate the OAuth clientId and clientSecret of the app with the given id

    $ smartthings apps:oauth:generate 392bcb11-e251-44f3-b58b-17f93015f3aa

See code: src/commands/apps/oauth/generate.ts

smartthings apps:oauth:update [ID]

update the OAuth settings of an 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 an app

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateAppOauth

EXAMPLES
  prompt for an app and update its OAuth settings interactively"

    $ smartthings apps:oauth:update

  prompt for an app and update its OAuth settings using the data in "oauth-settings.json"

    $ smartthings apps:oauth:update -i oauth-settings.json

  update the OAuth settings for the app with the given id using the data in "oauth-settings.json"

    $ smartthings apps:oauth:update 392bcb11-e251-44f3-b58b-17f93015f3aa -i oauth-settings.json

See code: src/commands/apps/oauth/update.ts

smartthings apps:register [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/register

EXAMPLES
  send registration request to the app with the given id

    $ smartthings apps:register 392bcb11-e251-44f3-b58b-17f93015f3aa

See code: src/commands/apps/register.ts

smartthings apps:settings [ID]

get the settings of an 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 an app

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getAppSettings

EXAMPLES
  choose an app from a list and get its settings

    $ smartthings apps:settings

  get the settings of the app with the given id

    $ smartthings apps:settings 392bcb11-e251-44f3-b58b-17f93015f3aa

  get the settings of the third app in the list generated by "smartthings apps"

    $ smartthings apps:settings 3

See code: src/commands/apps/settings.ts

smartthings apps:settings:update [ID]

update the settings of an 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 an app

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateAppSettings

EXAMPLES
  update the settings of the app with the given id using the data in "app-settings.json"

    $ smartthings apps:settings:update 392bcb11-e251-44f3-b58b-17f93015f3aa -i app-settings.json

  ask for the ID of an app to update and then update it using the data in "app-settings.json"

    $ smartthings apps:settings:update -i app-settings.json

See code: src/commands/apps/settings/update.ts

smartthings apps:update [ID]

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 apps:oauth:update and apps:oauth:generate for updating oauth-related data.

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateApp

EXAMPLES
  prompt for an app and edit it interactively

    $ smartthings apps:update

  prompt for an app and update it using the data in "my-app.json"

    $ smartthings apps:update -i my-app.json

  update the app with the given id using the data in "my-app.json"

    $ smartthings apps:update 392bcb11-e251-44f3-b58b-17f93015f3aa -i my-app.json

  update the given app using the data in "my-app.json" and then authorize it
  (See "smartthings apps:authorize" for more information on authorization.)

    $ smartthings apps:update 392bcb11-e251-44f3-b58b-17f93015f3aa -i my-app.json --authorize

See code: src/commands/apps/update.ts

smartthings autocomplete [SHELL]

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

smartthings capabilities [ID] [VERSION]

get a specific capability or a list of capabilities

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 or a list of capabilities

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listNamespacedCapabilities,
  https://developer.smartthings.com/docs/api/public/#operation/listCapabilities,
  https://developer.smartthings.com/docs/api/public/#operation/getCapability

See code: src/commands/capabilities.ts

smartthings capabilities:create

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createCapability

See code: src/commands/capabilities/create.ts

smartthings capabilities:delete [ID] [VERSION]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteCapability

See code: src/commands/capabilities/delete.ts

smartthings capabilities:namespaces

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

smartthings capabilities:presentation [ID] [VERSION]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getCapabilityPresentation

See code: src/commands/capabilities/presentation.ts

smartthings capabilities:presentation:create [ID] [VERSION]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createCustomCapabilityPresentation

See code: src/commands/capabilities/presentation/create.ts

smartthings capabilities:presentation:update [ID] [VERSION]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateCustomCapabilityPresentation

See code: src/commands/capabilities/presentation/update.ts

smartthings capabilities:translations [ID] [VERSION] [TAG]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listCapabilityLocalizations,
  https://developer.smartthings.com/docs/api/public/#operation/getCapabilityLocalization

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

smartthings capabilities:translations:create [ID] [VERSION]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createCapabilityLocalization

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

smartthings capabilities:translations:update [ID] [VERSION]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateCapabilityLocalization

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

smartthings capabilities:translations:upsert [ID] [VERSION]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateCapabilityLocalization,
  https://developer.smartthings.com/docs/api/public/#operation/createCapabilityLocalization

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

smartthings capabilities:update [ID] [VERSION]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateCapability

See code: src/commands/capabilities/update.ts

smartthings config [NAME]

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

smartthings config:reset

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

smartthings devicepreferences [IDORINDEX]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listPreferences,
  https://developer.smartthings.com/docs/api/public/#operation/getPreferenceById

EXAMPLES
  list all device preferences, sorted by title

    $ smartthings devicepreferences

  display details for preference with specified id

    $ smartthings devicepreferences motionSensitivity

  display details for second item in list of preferences when sorted by title

    $ smartthings devicepreferences 2

  display details for third preference as YAML

    $ smartthings devicepreferences 3 -y

  write details as JSON for third preference to dp.json

    $ smartthings devicepreferences 3 -o dp.json

See code: src/commands/devicepreferences.ts

smartthings devicepreferences:create

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createPreference

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

smartthings devicepreferences:translations [PREFERENCEID] [TAG]

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
  answer a series of questions to choose device preference and list locales

    $ smartthings devicepreferences:translation

  list locales for a specific device preference ID

    $ 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

smartthings devicepreferences:translations:create [PREFERENCEID]

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
  create a device preference translation as defined in the file preferenceTranslation.json

    $ smartthings devicepreferences:translations:create -i preferenceTranslation.json

See code: src/commands/devicepreferences/translations/create.ts

smartthings devicepreferences:translations:update [PREFERENCEID]

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
  select a translation from a list and update it with the data in the file preferenceTranslation.json

    $ smartthings devicepreferences:translations:update -i preferenceTranslation.json

See code: src/commands/devicepreferences/translations/update.ts

smartthings devicepreferences:update [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updatePreferenceById

EXAMPLES
  select a device preference from a list and update it with data from dp.json

    $ smartthings devicepreferences:update -i dp.json

  update specified device preference with data from dp.yaml

    $ smartthings devicepreferences:update -i dp.yaml motionSensitivity

See code: src/commands/devicepreferences/update.ts

smartthings deviceprofiles [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listDeviceProfiles,
  https://developer.smartthings.com/docs/api/public/#operation/getDeviceProfile

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

smartthings deviceprofiles:create

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.

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createDeviceProfile

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

smartthings deviceprofiles:delete [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteDeviceProfile

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

smartthings deviceprofiles:device-config [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDeviceProfile,
  https://developer.smartthings.com/docs/api/public/#operation/getDeviceConfiguration

See code: src/commands/deviceprofiles/device-config.ts

smartthings deviceprofiles:presentation [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDeviceProfile,
  https://developer.smartthings.com/docs/api/public/#operation/getDevicePresentation

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

smartthings deviceprofiles:publish [ID]

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

smartthings deviceprofiles:translations [ID] [TAG]

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

smartthings deviceprofiles:translations:delete [ID] [TAG]

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

smartthings deviceprofiles:translations:upsert [ID]

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

smartthings deviceprofiles:update [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateDeviceProfile

See code: src/commands/deviceprofiles/update.ts

smartthings deviceprofiles:view [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDeviceProfile, getDeviceConfiguration

See code: src/commands/deviceprofiles/view.ts

smartthings deviceprofiles:view:create

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".

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createDeviceProfile,
  https://developer.smartthings.com/docs/api/public/#operation/createDeviceConfiguration,
  https://developer.smartthings.com/docs/api/public/#operation/updateDeviceProfile,
  https://developer.smartthings.com/docs/api/public/#operation/generateDeviceConfig

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

smartthings deviceprofiles:view:update [ID]

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".

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createDeviceConfiguration,
  https://developer.smartthings.com/docs/api/public/#operation/updateDeviceProfile,
  https://developer.smartthings.com/docs/api/public/#operation/generateDeviceConfig

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

smartthings devices [ID]

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|EDGE_CHILD] [-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 and room 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|EDGE_CHILD>

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDevices,
  https://developer.smartthings.com/docs/api/public/#operation/getDevice

See code: src/commands/devices.ts

smartthings devices:capability-status [ID] [COMPONENT] [CAPABILITY]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDeviceStatusByCapability

See code: src/commands/devices/capability-status.ts

smartthings devices:commands [ID] [COMMAND]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/executeDeviceCommands

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

smartthings devices:component-status [ID] [COMPONENT]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDeviceComponentStatus

See code: src/commands/devices/component-status.ts

smartthings devices:delete [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteDevice

See code: src/commands/devices/delete.ts

smartthings devices:health [ID]

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

smartthings devices:history [ID]

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

smartthings devices:preferences [ID]

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

smartthings devices:presentation [ID]

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

smartthings devices:rename [ID] [LABEL]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateDevice

See code: src/commands/devices/rename.ts

smartthings devices:status [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDeviceStatus

See code: src/commands/devices/status.ts

smartthings devices:update [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateDevice

See code: src/commands/devices/update.ts

smartthings edge:channels [IDORINDEX]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listChannels,
  https://developer.smartthings.com/docs/api/public/#operation/channelById

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

smartthings edge:channels:assign [DRIVERID] [VERSION]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createDriverChannel

See code: @smartthings/plugin-cli-edge

smartthings edge:channels:create

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createChannel

See code: @smartthings/plugin-cli-edge

smartthings edge:channels:delete [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteChannel

See code: @smartthings/plugin-cli-edge

smartthings edge:channels:drivers [IDORINDEX]

list 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 drivers assigned to a given channel

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getChannelDrivers,
  https://developer.smartthings.com/docs/api/public/#operation/getDriverChannel

See code: @smartthings/plugin-cli-edge

smartthings edge:channels:enroll [HUBID]

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

smartthings edge:channels:enrollments [IDORINDEX]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listDriverChannels

See code: @smartthings/plugin-cli-edge

smartthings edge:channels:invites [IDORINDEX]

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

smartthings edge:channels:invites:accept ID

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

smartthings edge:channels:invites:create

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

smartthings edge:channels:invites:delete [ID]

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

smartthings edge:channels:metainfo [IDORINDEX]

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

smartthings edge:channels:unassign [DRIVERID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteDriverChannel

See code: @smartthings/plugin-cli-edge

smartthings edge:channels:unenroll [HUBID]

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

EXAMPLES
  prompt user for hub and channel and then unenroll hub from channel

    $ smartthings edge:channels:unenroll

  prompt user for a channel the given hub is enrolled in and then unenroll it

    $ smartthings edge:channels:unenroll 2fa0912f-cb73-424e-97f9-ffff76ea4f2a

  unenroll the specified hub from the specified channel

    $ smartthings edge:channels:unenroll 2fa0912f-cb73-424e-97f9-ffff76ea4f2a --channel \
      fcd6ca9c-2764-4dbb-9bbe-d40c900c960f

See code: @smartthings/plugin-cli-edge

smartthings edge:channels:update [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateChannel

See code: @smartthings/plugin-cli-edge

smartthings edge:drivers [IDORINDEX]

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 and edge:channels:drivers to list drivers that are part of a
  channel you own or have subscribed to

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listDrivers,
  https://developer.smartthings.com/docs/api/public/#operation/getDriver,
  https://developer.smartthings.com/docs/api/public/#operation/getDriverRevision

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

smartthings edge:drivers:default [IDORINDEX]

list default drivers available to all users

USAGE
  $ smartthings edge:drivers:default [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
    [-y] [-o <value>]

ARGUMENTS
  IDORINDEX  the driver 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 default drivers available to all users

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDefaultDrivers

EXAMPLES
  # list default drivers

    $ smartthings edge:drivers:default

  # show details about a specific default driver

    $ smartthings edge:drivers:default 12

See code: @smartthings/plugin-cli-edge

smartthings edge:drivers:delete [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteDriver

See code: @smartthings/plugin-cli-edge

smartthings edge:drivers:devices [IDORINDEX]

list devices using edge drivers

USAGE
  $ smartthings edge:drivers:devices [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j]
    [-y] [-o <value>] [-H <value>] [-D <value>]

ARGUMENTS
  IDORINDEX  the device id or number in list

FLAGS
  -D, --driver=<UUID>         driver id
  -H, --hub=<UUID>            hub 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 devices using edge drivers

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDevices,
  https://developer.smartthings.com/docs/api/public/#operation/listDrivers,
  https://developer.smartthings.com/docs/api/public/#operation/getDriver,
  https://developer.smartthings.com/docs/api/public/#operation/getDriverRevision

EXAMPLES
  # list all devices using edge drivers
  $ smartthings edge:drivers:devices
  # display details about the third device listed in the above command
  $ smartthings edge:drivers:devices 3

  # display details about a device by using its id
  $ smartthings edge:drivers:devices dfda0a8e-55d6-445b-ace5-db828679bcb3
  # list all devices using edge drivers on the specified hub
  $ smartthings edge:drivers:devices --hub a9108ab1-7087-4c10-9781-a0627b084fce
  # list devices that use a specific driver
  $ smartthings edge:drivers:devices --driver b67a134c-ace8-4b8d-9a0e-444ad78b4455

See code: @smartthings/plugin-cli-edge

smartthings edge:drivers:install [DRIVERID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/installDrivers

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

smartthings edge:drivers:installed [IDORINDEX]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listHubInstalledDrivers,
  https://developer.smartthings.com/docs/api/public/#operation/getHubDeviceDriver

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

smartthings edge:drivers:logcat [DRIVERID]

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

smartthings edge:drivers:package [PROJECTDIRECTORY]

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 (or use default if previously specified) 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 (or use default if previously specified) 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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/uploadDriverPackage

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

smartthings edge:drivers:prune [DRIVERID]

uninstall unused edge drivers from a hub

USAGE
  $ smartthings edge:drivers:prune [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 unused edge drivers from a hub

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/uninstallDriver

See code: @smartthings/plugin-cli-edge

smartthings edge:drivers:switch [DEVICEID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateHubDevice

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

smartthings edge:drivers:uninstall [DRIVERID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/uninstallDriver

See code: @smartthings/plugin-cli-edge

smartthings help [COMMAND]

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

smartthings installedapps [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listInstallations,
  https://developer.smartthings.com/docs/api/public/#operation/getInstallation

See code: src/commands/installedapps.ts

smartthings installedapps:delete [ID]

delete an 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 an installed app instance

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteInstallation

See code: src/commands/installedapps/delete.ts

smartthings installedapps:rename [ID] [NAME]

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

smartthings installedschema [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getIsaByLocationId,
  https://developer.smartthings.com/docs/api/public/#operation/getDevicesByIsaId

See code: src/commands/installedschema.ts

smartthings installedschema:delete [ID]

delete an 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 an installed schema connector instance

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteIsaByIsaId

See code: src/commands/installedschema/delete.ts

smartthings invites:schema [IDORINDEX]

list invitations for a schema app

USAGE
  $ smartthings invites:schema [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-o
    <value>] [--schema-app <value>]

ARGUMENTS
  IDORINDEX  the invitation id or number in list

FLAGS
  --schema-app=<value>  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
  list invitations for a schema app

EXAMPLES
  prompt for a schema app and then list its invitations

    $ smartthings invites:schema

  list invitations for the specified schema app

    $ smartthings invites:schema --schema-app=viper_7db10232-3f97-4618-924b-807bf852c616

  display details about the third invitation listed in the previous example

    $ smartthings invites:schema --schema-app=viper_7db10232-3f97-4618-924b-807bf852c616 3

  list details of specified invitation

    $ smartthings invites:schema 97e44afd-845f-4da1-a7b3-fd2625fc9367

See code: src/commands/invites/schema.ts

smartthings invites:schema:create

create an invitation to a schema app

USAGE
  $ smartthings invites:schema:create [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
    <value>] [-d] [--schema-app <value>]

FLAGS
  -d, --dry-run         produce JSON but don't actually submit
  --schema-app=<value>  schema app id

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 to a schema app

EXAMPLES
  create an invitation from prompted input

    $ smartthings invites:schema:create

  create an invitation for the specified ST Schema app from prompted input

    $ smartthings invites:schema:create --schema-app d2e44c34-3cb1-42be-b5ba-8fbaf2922c19

  create an invitation as defined in invitation.json, prompting the user for a schema-app

    $ smartthings invites:schema:create -i invitation.json

  create an invitation as defined in invitation.json with the specified schema-app

    $ smartthings invites:schema:create -i invitation.json --schema-app d2e44c34-3cb1-42be-b5ba-8fbaf2922c19

See code: src/commands/invites/schema/create.ts

smartthings invites:schema:delete [ID]

delete a schema app invitation

USAGE
  $ smartthings invites:schema:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [--schema-app <value>]

ARGUMENTS
  ID  schema app invitation UUID

FLAGS
  --schema-app=<value>  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 a schema app invitation

EXAMPLES
  select an invitation to delete from list

    $ smartthings invites:schema:delete

  select an invitation to delete from list, for the specified schema app

    $ smartthings invites:schema:delete --schema-app e077532e-3c0f-4f3b-a1d8-029115ee1602

  delete a specific invitation by id

    $ smartthings invites:schema:delete 5dfd6626-ab1d-42da-bb76-90def3153998

See code: src/commands/invites/schema/delete.ts

smartthings locations [IDORINDEX]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listLocations,
  https://developer.smartthings.com/docs/api/public/#operation/getLocation

See code: src/commands/locations.ts

smartthings locations:create

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createLocation

See code: src/commands/locations/create.ts

smartthings locations:delete [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteLocation

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

smartthings locations:history [ID]

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

smartthings locations:modes [IDORINDEX]

list modes or get information for a specific mode

USAGE
  $ smartthings locations:modes [IDORINDEX] [-h] [-p <value>] [-t <value>] [--language <value>] [-l <value>] [-v]
    [-j] [-y] [-o <value>]

ARGUMENTS
  IDORINDEX  mode 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 modes or get information for a specific mode

EXAMPLES
  list all modes in your location(s)

    $ smartthings locations:modes

  get details of the third mode in the list retrieved by running "smartthings locations:modes"

    $ smartthings locations:modes 3

  get details of a mode by its id

    $ smartthings locations:modes 636169e4-8b9f-4438-a941-953b0d617231

  include location name and ID in the output

    $ smartthings locations:modes --verbose

  list all modes in a particular location

    $ smartthings locations:modes --location=5dfd6626-ab1d-42da-bb76-90def3153998

See code: src/commands/locations/modes.ts

smartthings locations:modes:create

create a mode

USAGE
  $ smartthings locations:modes: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 create the mode in

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 mode

EXAMPLES
  create a new mode using the data in new-data.json

    $ smartthings locations:modes:create -i=new-data.json

  create a new mode in a specified location using the data in new-data.json

    $ smartthings locations:modes:create --location=5dfd6626-ab1d-42da-bb76-90def3153998 -i=new-data.json

See code: src/commands/locations/modes/create.ts

smartthings locations:modes:delete [ID]

delete a mode

USAGE
  $ smartthings locations:modes:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-l <value>]

ARGUMENTS
  ID  mode 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 mode

EXAMPLES
  select a mode from a list of all modes and delete it

    $ smartthings locations:modes:delete

  select a mode from a list of modes in a specified location and delete it

    $ smartthings locations:modes:delete --location=5dfd6626-ab1d-42da-bb76-90def3153998

  delete a specified mode

    $ smartthings locations:modes:delete 636169e4-8b9f-4438-a941-953b0d617231

See code: src/commands/locations/modes/delete.ts

smartthings locations:modes:getcurrent

get details of current mode

USAGE
  $ smartthings locations:modes:getcurrent [-h] [-p <value>] [-t <value>] [--language <value>] [-l <value>] [-v] [-j] [-y] [-o
    <value>]

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
  get details of current mode

EXAMPLES
  get details of current mode

    $ smartthings locations:modes:getcurrent

  include location name and ID in the output

    $ smartthings locations:modes:getcurrent --verbose

  get the current mode for a specified location

    $ smartthings locations:modes:getcurrent --location=5dfd6626-ab1d-42da-bb76-90def3153998

See code: src/commands/locations/modes/getcurrent.ts

smartthings locations:modes:setcurrent [ID]

set the current mode

USAGE
  $ smartthings locations:modes:setcurrent [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-l <value>]

ARGUMENTS
  ID  mode 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
  set the current mode

EXAMPLES
  select a mode from a list of all modes and set it to be current for its location

    $ smartthings locations:modes:setcurrent

  select a mode from a list of modes in a specified location and set it to be current

    $ smartthings locations:modes:setcurrent --location=5dfd6626-ab1d-42da-bb76-90def3153998

  set the specified mode to be current for its location

    $ smartthings locations:modes:setcurrent 636169e4-8b9f-4438-a941-953b0d617231

See code: src/commands/locations/modes/setcurrent.ts

smartthings locations:modes:update [ID]

update a mode

USAGE
  $ smartthings locations:modes:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-j] [-y] [-i <value>] [-o
    <value>] [-d] [-l <value>]

ARGUMENTS
  ID  mode 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 mode

EXAMPLES
  select a mode from a list of all modes and update it using the data in new-data.json

    $ smartthings locations:modes:update -i=new-data.json

  select a mode from a list of modes in a specified location and update it using the data in new-data.json

    $ smartthings locations:modes:update --location=5dfd6626-ab1d-42da-bb76-90def3153998 -i=new-data.json

  update a specified mode using the data in new-data.json

    $ smartthings locations:modes:update 636169e4-8b9f-4438-a941-953b0d617231 -i=new-data.json

See code: src/commands/locations/modes/update.ts

smartthings locations:rooms [IDORINDEX]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listRooms,
  https://developer.smartthings.com/docs/api/public/#operation/getRoom

See code: src/commands/locations/rooms.ts

smartthings locations:rooms:create

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createRoom

See code: src/commands/locations/rooms/create.ts

smartthings locations:rooms:delete [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteRoom

See code: src/commands/locations/rooms/delete.ts

smartthings locations:rooms:update [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateRoom

See code: src/commands/locations/rooms/update.ts

smartthings locations:update [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateLocation

See code: src/commands/locations/update.ts

smartthings logout

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

smartthings organizations [ID]

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

smartthings organizations:current

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

smartthings plugins

List installed plugins.

USAGE
  $ smartthings plugins [--core]

FLAGS
  --core  Show core plugins.

DESCRIPTION
  List installed plugins.

EXAMPLES
  $ smartthings plugins

See code: @oclif/plugin-plugins

smartthings plugins:install PLUGIN...

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

smartthings plugins:inspect PLUGIN...

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

smartthings plugins:install PLUGIN...

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

smartthings plugins:link PLUGIN

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

smartthings plugins:uninstall PLUGIN...

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

smartthings plugins:uninstall PLUGIN...

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

smartthings plugins:uninstall PLUGIN...

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

smartthings plugins:update

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

smartthings presentation PRESENTATIONID [MANUFACTURERNAME]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDevicePresentation

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

smartthings presentation:device-config PRESENTATIONID [MANUFACTURERNAME]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getDeviceConfiguration

See code: src/commands/presentation/device-config.ts

smartthings presentation:device-config:create

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createDeviceConfiguration

See code: src/commands/presentation/device-config/create.ts

smartthings presentation:device-config:generate ID

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/generateDeviceConfig

See code: src/commands/presentation/device-config/generate.ts

smartthings rules [IDORINDEX]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listRules,
  https://developer.smartthings.com/docs/api/public/#operation/getRule

See code: src/commands/rules.ts

smartthings rules:create

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>  the location for the rule

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/createRule

See code: src/commands/rules/create.ts

smartthings rules:delete [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteRule

See code: src/commands/rules/delete.ts

smartthings rules:execute [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/executeRule

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

smartthings rules:update [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/updateRule

See code: src/commands/rules/update.ts

smartthings scenes [IDORINDEX]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/listScenes

See code: src/commands/scenes.ts

smartthings scenes:execute [ID]

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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/executeScene

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

smartthings schema [ID]

list all ST Schema Apps currently available in a user account

USAGE
  $ smartthings schema [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-o
    <value>] [-A] [-v]

ARGUMENTS
  ID  the schema connector id

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 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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/getAppsByUserToken,
  https://developer.smartthings.com/docs/api/public/#operation/getAppsByEndpointAppId

See code: src/commands/schema.ts

smartthings schema:authorize ARN

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

smartthings schema:create

create an ST Schema connector

USAGE
  $ smartthings schema:create [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
    <value>] [-o <value>] [-d] [--authorize] [--principal <value>] [--statement <value>]

FLAGS
  -O, --organization=<value>  the organization ID to use for this command
  -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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/postApps

See code: src/commands/schema/create.ts

smartthings schema:delete [ID]

delete an ST Schema connector

USAGE
  $ smartthings schema:delete [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>]

ARGUMENTS
  ID  schema app 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 an ST Schema connector

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/deleteAppsByEndpointAppId

See code: src/commands/schema/delete.ts

smartthings schema:regenerate [ID]

regenerate the clientId and clientSecret of the ST Schema connector

USAGE
  $ smartthings schema:regenerate [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-o
    <value>]

ARGUMENTS
  ID  schema app 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
  regenerate the clientId and clientSecret of the ST Schema connector

  NOTE: The previous values will be invalidated, which may affect existing installations.

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/generateStOauthCredentials

See code: src/commands/schema/regenerate.ts

smartthings schema:update [ID]

update an ST Schema connector

USAGE
  $ smartthings schema:update [ID] [-h] [-p <value>] [-t <value>] [--language <value>] [-O <value>] [-j] [-y] [-i
    <value>] [-d] [--authorize] [--principal <value>] [--statement <value>]

ARGUMENTS
  ID  the app id

FLAGS
  -O, --organization=<value>  the organization ID to use for this command
  -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
  -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

  For API information, see:

  https://developer.smartthings.com/docs/api/public/#operation/putAppsByEndpointAppId

See code: src/commands/schema/update.ts

smartthings virtualdevices [ID]

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

smartthings virtualdevices:create

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>] [-L] [-H <value>] [-D
    <value>]

FLAGS
  -D, --driver=<UUID>                driver used for locally executing device
  -H, --hub=<UUID>                   hub on which to run locally executing device
  -L, --local                        run this device locally on a SmartThings hub. Requires a hub and driver
  -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

smartthings virtualdevices:create-standard

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>] [-L] [-H <value>]

FLAGS
  -H, --hub=<UUID>         hub on which to run locally executing device
  -L, --local              run this device locally on a SmartThings hub
  -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

smartthings virtualdevices:delete [ID]

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

smartthings virtualdevices:events [ID] [NAME] [VALUE] [UNIT]

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

smartthings virtualdevices:update [ID]

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

Configuration and Logging

Enable Debug Logging

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.