GithubHelp home page GithubHelp logo

jau35 / smartthings-cli Goto Github PK

View Code? Open in Web Editor NEW

This project forked from smartthingscommunity/smartthings-cli

0.0 0.0 0.0 3.16 MB

Command Line Interface (CLI) for the SmartThings APIs. Provides CRUD operations for platform artifacts as well as ability to control devices.

License: Apache License 2.0

JavaScript 1.09% Batchfile 0.01% TypeScript 98.03% Shell 0.87%

smartthings-cli's Introduction

Overview

oclif npm version npm License

SmartThings Unified CLI

โ— NOTE: This CLI is currently considered an alpha release. It has currently has only a few specific features implemented and is a work in progress.

Usage

  1. Download the appropriate binary from the releases tab of the github page.
  2. Install it on your path and rename it to "smartthings". It does not need administrator privileges but of course will need to be executable.
  3. Run smartthings --help to make sure it's working.
  4. Run a specific command with smartthings <command>

NOTE: Some users are experiencing issues with the default login flow. If you are experiencing this issue, you can work around it by creating a personal access token and including it in your configuration file like this:

default:
  token: my-personal-access-token

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.

Although not recommended, you can use a personal access token for authentication by creating a configuration file and including the token in a token key for your profile.

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 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.
  6. Command line flags must go after the command. Use smartthings command -f flag instead of smartthings -f flag command.

Commands

Commands that use the SmartThings REST API are organized in a hierarchy that maps to that hierarchy.

smartthings apps [ID]

get a specific app or a list of apps

USAGE
  $ smartthings apps [ID]

ARGUMENTS
  ID  the app id or number from list

OPTIONS
  -h, --help                       show CLI help
  -j, --json                       use JSON format of input and/or output
  -o, --output=output              specify output file
  -p, --profile=profile            [default: default] configuration profile
  -t, --token=token                the auth token to use
  -v, --verbose                    include URLs and ARNs in table output
  -y, --yaml                       use YAML format of input and/or output

  --classification=classification  filter results by one or more classifications, AUTOMATION, SERVICE, DEVICE,
                                   CONNECTED_SERVICE

  --compact                        use compact table format with no lines between body rows

  --expanded                       use expanded table format with a line between each body row

  --indent=indent                  specify indentation for formatting JSON or YAML output

  --language=language              ISO language code or "NONE" to not specify a language. Defaults to the OS locale

  --type=type                      filter results by appType, WEBHOOK_SMART_APP, LAMBDA_SMART_APP, API_ONLY

See code: dist/commands/apps.ts

smartthings apps:authorize ARN

authorize calls to your AWS Lambda function from SmartThings

USAGE
  $ smartthings apps:authorize ARN

ARGUMENTS
  ARN  the ARN of the AWS Lambda function

OPTIONS
  -h, --help                   show CLI help
  -p, --profile=profile        [default: default] configuration profile
  --principal=principal        use this principal instead of the default when authorizing lambda functions
  --statement-id=statement-id  use this statement id instead of the default when authorizing lambda functions

EXAMPLES
  $ smartthings apps: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-id smartthings --principal 906037444270 --action lambda:InvokeFunction

  It requires your machine to be configured to run the AWS CLI

See code: dist/commands/apps/authorize.ts

smartthings apps:create

update the OAuth settings of the app

USAGE
  $ smartthings apps:create

OPTIONS
  -d, --dry-run                produce JSON but don't actually submit
  -h, --help                   show CLI help
  -i, --input=input            specify input file
  -j, --json                   use JSON format of input and/or output
  -o, --output=output          specify output file
  -p, --profile=profile        [default: default] configuration profile
  -t, --token=token            the auth token to use
  -y, --yaml                   use YAML format of input and/or output
  --authorize                  authorize Lambda functions to be called by SmartThings
  --compact                    use compact table format with no lines between body rows
  --expanded                   use expanded table format with a line between each body row
  --indent=indent              specify indentation for formatting JSON or YAML output
  --language=language          ISO language code or "NONE" to not specify a language. Defaults to the OS locale
  --principal=principal        use this principal instead of the default when authorizing lambda functions
  --statement-id=statement-id  use this statement id instead of the default when authorizing lambda functions

See code: dist/commands/apps/create.ts

smartthings apps:delete [ID]

delete the app

USAGE
  $ smartthings apps:delete [ID]

ARGUMENTS
  ID  App profile UUID or number in the list

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/apps/delete.ts

smartthings apps:oauth [ID]

get OAuth settings of the app

USAGE
  $ smartthings apps:oauth [ID]

ARGUMENTS
  ID  the app id or number in the list

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings apps:oauth:generate [ID]

update the OAuth settings of the app and regenerate the clientId and clientSecret

USAGE
  $ smartthings apps:oauth:generate [ID]

ARGUMENTS
  ID  the app id

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings apps:oauth:update [ID]

update the OAuth settings of the app

USAGE
  $ smartthings apps:oauth:update [ID]

ARGUMENTS
  ID  the app id

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/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]

ARGUMENTS
  ID  the app id

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings apps:settings [ID]

get OAuth settings of the app

USAGE
  $ smartthings apps:settings [ID]

ARGUMENTS
  ID  the app id

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings apps:settings:update [ID]

update the OAuth settings of the app

USAGE
  $ smartthings apps:settings:update [ID]

ARGUMENTS
  ID  the app id

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings apps:update [ID]

update the OAuth settings of the app

USAGE
  $ smartthings apps:update [ID]

ARGUMENTS
  ID  the app id

OPTIONS
  -d, --dry-run                produce JSON but don't actually submit
  -h, --help                   show CLI help
  -i, --input=input            specify input file
  -j, --json                   use JSON format of input and/or output
  -o, --output=output          specify output file
  -p, --profile=profile        [default: default] configuration profile
  -t, --token=token            the auth token to use
  -y, --yaml                   use YAML format of input and/or output
  --authorize                  authorize Lambda functions to be called by SmartThings
  --compact                    use compact table format with no lines between body rows
  --expanded                   use expanded table format with a line between each body row
  --indent=indent              specify indentation for formatting JSON or YAML output
  --language=language          ISO language code or "NONE" to not specify a language. Defaults to the OS locale
  --principal=principal        use this principal instead of the default when authorizing lambda functions
  --statement-id=statement-id  use this statement id instead of the default when authorizing lambda functions

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

smartthings autocomplete [SHELL]

display autocomplete installation instructions

USAGE
  $ smartthings autocomplete [SHELL]

ARGUMENTS
  SHELL  shell type

OPTIONS
  -r, --refresh-cache  Refresh cache (ignores displaying 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

USAGE
  $ smartthings capabilities [ID] [VERSION]

ARGUMENTS
  ID       the capability id or number in list
  VERSION  the capability version

OPTIONS
  -h, --help                 show CLI help
  -j, --json                 use JSON format of input and/or output
  -n, --namespace=namespace  a specific namespace to query; will use all by default
  -o, --output=output        specify output file
  -p, --profile=profile      [default: default] configuration profile
  -s, --standard             show standard SmartThings capabilities
  -t, --token=token          the auth token to use
  -y, --yaml                 use YAML format of input and/or output
  --compact                  use compact table format with no lines between body rows
  --expanded                 use expanded table format with a line between each body row
  --indent=indent            specify indentation for formatting JSON or YAML output
  --language=language        ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/capabilities.ts

smartthings capabilities:create

create a capability for a user

USAGE
  $ smartthings capabilities:create

OPTIONS
  -d, --dry-run              produce JSON but don't actually submit
  -h, --help                 show CLI help
  -i, --input=input          specify input file
  -j, --json                 use JSON format of input and/or output
  -n, --namespace=namespace  the namespace to create the capability under
  -o, --output=output        specify output file
  -p, --profile=profile      [default: default] configuration profile
  -t, --token=token          the auth token to use
  -y, --yaml                 use YAML format of input and/or output
  --compact                  use compact table format with no lines between body rows
  --expanded                 use expanded table format with a line between each body row
  --indent=indent            specify indentation for formatting JSON or YAML output
  --language=language        ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings capabilities:delete [ID] [VERSION]

delete a capability

USAGE
  $ smartthings capabilities:delete [ID] [VERSION]

ARGUMENTS
  ID       the capability id
  VERSION  the capability version

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings capabilities:namespaces

list all capability namespaces currently available in a user account

USAGE
  $ smartthings capabilities:namespaces

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/capabilities/namespaces.ts

smartthings capabilities:presentation [ID] [VERSION]

get presentation information for a specific capability

USAGE
  $ smartthings capabilities:presentation [ID] [VERSION]

ARGUMENTS
  ID       the capability id or number in list
  VERSION  the capability version

OPTIONS
  -h, --help                 show CLI help
  -j, --json                 use JSON format of input and/or output
  -n, --namespace=namespace  a specific namespace to query; will use all by default
  -o, --output=output        specify output file
  -p, --profile=profile      [default: default] configuration profile
  -t, --token=token          the auth token to use
  -y, --yaml                 use YAML format of input and/or output
  --compact                  use compact table format with no lines between body rows
  --expanded                 use expanded table format with a line between each body row
  --indent=indent            specify indentation for formatting JSON or YAML output
  --language=language        ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

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

create presentation model for a capability

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

ARGUMENTS
  ID       the capability id
  VERSION  the capability version

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

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

update presentation information of a capability

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

ARGUMENTS
  ID       the capability id
  VERSION  the capability version

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/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]

ARGUMENTS
  ID       the capability id or number in list
  VERSION  the capability version
  TAG      the locale tag

OPTIONS
  -h, --help                 show CLI help
  -j, --json                 use JSON format of input and/or output
  -n, --namespace=namespace  a specific namespace to query; will use all by default
  -o, --output=output        specify output file
  -p, --profile=profile      [default: default] configuration profile
  -t, --token=token          the auth token to use
  -v, --verbose              include list of supported locales in table output
  -y, --yaml                 use YAML format of input and/or output
  --compact                  use compact table format with no lines between body rows
  --expanded                 use expanded table format with a line between each body row
  --indent=indent            specify indentation for formatting JSON or YAML output
  --language=language        ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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  โ”‚
  โ””โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”˜

  outputModulation (master)$ 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: dist/commands/capabilities/translations.ts

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

create a capability translation

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

ARGUMENTS
  ID       the capability id
  VERSION  the capability version

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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: dist/commands/capabilities/translations/create.ts

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

update a capability translation

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

ARGUMENTS
  ID       the capability id
  VERSION  the capability version

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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: dist/commands/capabilities/translations/update.ts

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

create or update a capability translation

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

ARGUMENTS
  ID       the capability id
  VERSION  the capability version

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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: dist/commands/capabilities/translations/upsert.ts

smartthings capabilities:update [ID] [VERSION]

update a capability

USAGE
  $ smartthings capabilities:update [ID] [VERSION]

ARGUMENTS
  ID       the capability id
  VERSION  the capability version

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings config [NAME]

list config file entries

USAGE
  $ smartthings config [NAME]

ARGUMENTS
  NAME  the config name

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -v, --verbose          Include additional data in table output
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output

See code: dist/commands/config.ts

smartthings deviceprofiles [ID]

list all device profiles available in a user account or retrieve a single profile

USAGE
  $ smartthings deviceprofiles [ID]

ARGUMENTS
  ID  device profile to retrieve; UUID or the number of the profile from list

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -v, --verbose          include presentationId and manufacturerName in list output
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles

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: dist/commands/deviceprofiles.ts

smartthings deviceprofiles:create

Create a new device profile

USAGE
  $ smartthings deviceprofiles:create

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

ALIASES
  $ smartthings device-profiles:create

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: dist/commands/deviceprofiles/create.ts

smartthings deviceprofiles:delete [ID]

delete a device profile

USAGE
  $ smartthings deviceprofiles:delete [ID]

ARGUMENTS
  ID  Device profile UUID or number in the list

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles:delete

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: dist/commands/deviceprofiles/delete.ts

smartthings deviceprofiles:device-config [ID]

get the presentation associated with a device profile

USAGE
  $ smartthings deviceprofiles:device-config [ID]

ARGUMENTS
  ID  device profile id or the number in list

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles:device-config

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

smartthings deviceprofiles:presentation [ID]

get the presentation associated with a device profile

USAGE
  $ smartthings deviceprofiles:presentation [ID]

ARGUMENTS
  ID  device profile UUID or the number of the profile from list

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles:presentation

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: dist/commands/deviceprofiles/presentation.ts

smartthings deviceprofiles:publish [ID]

publish a device profile (published profiles cannot be modified)

USAGE
  $ smartthings deviceprofiles:publish [ID]

ARGUMENTS
  ID  device profile id

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles:publish

See code: dist/commands/deviceprofiles/publish.ts

smartthings deviceprofiles:translations [ID] [TAG]

Get list of locales supported by the device profiles

USAGE
  $ smartthings deviceprofiles:translations [ID] [TAG]

ARGUMENTS
  ID   UUID or the number of the profile from list
  TAG  the locale tag or number of the tag from list

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -v, --verbose          include list of locales in table output
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles:translations

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: dist/commands/deviceprofiles/translations.ts

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

delete a device profile translation

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

ARGUMENTS
  ID   device profile UUID or number in the list
  TAG  the locale tag

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles:translations:delete

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: dist/commands/deviceprofiles/translations/delete.ts

smartthings deviceprofiles:translations:upsert [ID]

create or update a device profile translation

USAGE
  $ smartthings deviceprofiles:translations:upsert [ID]

ARGUMENTS
  ID  UUID or the number of the profile from list

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles:translations:upsert

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: dist/commands/deviceprofiles/translations/upsert.ts

smartthings deviceprofiles:update [ID]

update a device profile

USAGE
  $ smartthings deviceprofiles:update [ID]

ARGUMENTS
  ID  device profile UUID or number in the list

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles:update

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

smartthings deviceprofiles:view [ID]

show device profile and device configuration in a single, consolidated view

USAGE
  $ smartthings deviceprofiles:view [ID]

ARGUMENTS
  ID  device profile UUID or the number from list

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings device-profiles:view

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

smartthings deviceprofiles:view:create

create a new device profile and device configuration

USAGE
  $ smartthings deviceprofiles:view:create

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

ALIASES
  $ smartthings device-profiles:view:create

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: dist/commands/deviceprofiles/view/create.ts

smartthings deviceprofiles:view:update [ID]

update a device profile and configuration

USAGE
  $ smartthings deviceprofiles:view:update [ID]

ARGUMENTS
  ID  device profile id

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

ALIASES
  $ smartthings device-profiles:view:update

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: dist/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]

ARGUMENTS
  ID  device to retrieve; UUID or the number of the device from list

OPTIONS
  -C, --capabilities-mode=and|or           Treat capability filter query params as a logical "or" or "and" with a
                                           default of "and".

  -a, --installed-app-id=installed-app-id  filter results by installed app that created the device

  -c, --capability=capability              filter results by capability

  -d, --device-id=device-id                filter results by device

  -h, --help                               show CLI help

  -j, --json                               use JSON format of input and/or output

  -l, --location-id=location-id            filter results by location

  -o, --output=output                      specify output file

  -p, --profile=profile                    [default: default] configuration profile

  -t, --token=token                        the auth token to use

  -v, --verbose                            include location name in output

  -y, --yaml                               use YAML format of input and/or output

  --compact                                use compact table format with no lines between body rows

  --expanded                               use expanded table format with a line between each body row

  --indent=indent                          specify indentation for formatting JSON or YAML output

  --language=language                      ISO language code or "NONE" to not specify a language. Defaults to the OS
                                           locale

See code: dist/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]

ARGUMENTS
  ID          the device id
  COMPONENT   the component id
  CAPABILITY  the capability id

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings devices:commands [ID] [COMMAND]

execute a device command

USAGE
  $ smartthings devices:commands [ID] [COMMAND]

ARGUMENTS
  ID       the device id
  COMMAND  the command [<component>]:<capability>:<command>([<arguments>])

OPTIONS
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/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]

ARGUMENTS
  ID         the device id
  COMPONENT  the component id

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings devices:delete [ID]

delete a device

USAGE
  $ smartthings devices:delete [ID]

ARGUMENTS
  ID  device UUID

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings devices:health [ID]

get the current health status of a device

USAGE
  $ smartthings devices:health [ID]

ARGUMENTS
  ID  the device id

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/devices/health.ts

smartthings devices:preferences [ID]

get the current preferences of a device

USAGE
  $ smartthings devices:preferences [ID]

ARGUMENTS
  ID  the device id

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/devices/preferences.ts

smartthings devices:presentation [ID]

get a device presentation

USAGE
  $ smartthings devices:presentation [ID]

ARGUMENTS
  ID  the device id or number in the list

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/devices/presentation.ts

smartthings devices:rename [ID] [LABEL]

rename a device

USAGE
  $ smartthings devices:rename [ID] [LABEL]

ARGUMENTS
  ID     the device id
  LABEL  the new device label

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/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]

ARGUMENTS
  ID  the device id

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings devices:update [ID]

get the current status of all of a device's component's attributes

USAGE
  $ smartthings devices:update [ID]

ARGUMENTS
  ID  the device id

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings generate:java

generate a Java starter app

USAGE
  $ smartthings generate:java

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile

See code: dist/commands/generate/java.ts

smartthings generate:node

generate a NodeJS starter app

USAGE
  $ smartthings generate:node

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile

See code: dist/commands/generate/node.ts

smartthings help [COMMAND]

display help for smartthings

USAGE
  $ smartthings help [COMMAND]

ARGUMENTS
  COMMAND  command to show help for

OPTIONS
  --all  see all commands in CLI

See code: @oclif/plugin-help

smartthings installedapps [ID]

get a specific app or a list of apps

USAGE
  $ smartthings installedapps [ID]

ARGUMENTS
  ID  the app id

OPTIONS
  -h, --help                     show CLI help
  -j, --json                     use JSON format of input and/or output
  -l, --location-id=location-id  filter results by location
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -v, --verbose                  include location name in output
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/installedapps.ts

smartthings installedapps:delete [ID]

delete the installed app instance

USAGE
  $ smartthings installedapps:delete [ID]

ARGUMENTS
  ID  installed app UUID

OPTIONS
  -h, --help                     show CLI help
  -l, --location-id=location-id  filter results by location
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -v, --verbose                  include location name in output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings installedapps:rename [ID] [NAME]

renamed an installed app instance

USAGE
  $ smartthings installedapps:rename [ID] [NAME]

ARGUMENTS
  ID    the installed app id
  NAME  the new installed app name

OPTIONS
  -h, --help                     show CLI help
  -j, --json                     use JSON format of input and/or output
  -l, --location-id=location-id  filter results by location
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -v, --verbose                  include location name in output
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/installedapps/rename.ts

smartthings installedschema [ID]

get a specific schema connector instance or a list of instances

USAGE
  $ smartthings installedschema [ID]

ARGUMENTS
  ID  the isa id

OPTIONS
  -h, --help                     show CLI help
  -j, --json                     use JSON format of input and/or output
  -l, --location-id=location-id  filter results by location
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -v, --verbose                  include location name in output
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/installedschema.ts

smartthings installedschema:delete [ID]

delete the installed schema connector instance

USAGE
  $ smartthings installedschema:delete [ID]

ARGUMENTS
  ID  installed schema connector UUID

OPTIONS
  -h, --help                     show CLI help
  -l, --location-id=location-id  filter results by location
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -v, --verbose                  include location name in output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings locations [IDORINDEX]

get a specific Location

USAGE
  $ smartthings locations [IDORINDEX]

ARGUMENTS
  IDORINDEX  the location id or number in list

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/locations.ts

smartthings locations:create

create a Location for a user

USAGE
  $ smartthings locations:create

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings locations:delete [ID]

delete a location

USAGE
  $ smartthings locations:delete [ID]

ARGUMENTS
  ID  location id

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/locations/delete.ts

smartthings locations:rooms [IDORINDEX]

get a specific room

USAGE
  $ smartthings locations:rooms [IDORINDEX]

ARGUMENTS
  IDORINDEX  room UUID or index

OPTIONS
  -h, --help                     show CLI help
  -j, --json                     use JSON format of input and/or output
  -l, --location-id=location-id  a specific location to query
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings rooms

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

smartthings locations:rooms:create

create a room

USAGE
  $ smartthings locations:rooms:create

OPTIONS
  -d, --dry-run                  produce JSON but don't actually submit
  -h, --help                     show CLI help
  -i, --input=input              specify input file
  -j, --json                     use JSON format of input and/or output
  -l, --location-id=location-id  a specific location to query
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings rooms:create

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

smartthings locations:rooms:delete [ID]

delete a room

USAGE
  $ smartthings locations:rooms:delete [ID]

ARGUMENTS
  ID  room UUID

OPTIONS
  -h, --help                     show CLI help
  -l, --location-id=location-id  a specific location to query
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings rooms:delete

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

smartthings locations:rooms:update [ID]

update a room

USAGE
  $ smartthings locations:rooms:update [ID]

ARGUMENTS
  ID  room UUID

OPTIONS
  -d, --dry-run                  produce JSON but don't actually submit
  -h, --help                     show CLI help
  -i, --input=input              specify input file
  -j, --json                     use JSON format of input and/or output
  -l, --location-id=location-id  a specific location to query
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

ALIASES
  $ smartthings rooms:update

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

smartthings locations:update [ID]

update a location

USAGE
  $ smartthings locations:update [ID]

ARGUMENTS
  ID  the location id

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings logout

USAGE
  $ smartthings logout

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/logout.ts

smartthings plugins

list installed plugins

USAGE
  $ smartthings plugins

OPTIONS
  --core  show core plugins

EXAMPLE
  $ smartthings plugins

See code: @oclif/plugin-plugins

smartthings plugins:inspect PLUGIN...

displays installation properties of a plugin

USAGE
  $ smartthings plugins:inspect PLUGIN...

ARGUMENTS
  PLUGIN  [default: .] plugin to inspect

OPTIONS
  -h, --help     show CLI help
  -v, --verbose

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

OPTIONS
  -f, --force    yarn install with force flag
  -h, --help     show CLI help
  -v, --verbose

DESCRIPTION
  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

OPTIONS
  -h, --help     show CLI help
  -v, --verbose

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

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

OPTIONS
  -h, --help     show CLI help
  -v, --verbose

ALIASES
  $ smartthings plugins:unlink
  $ smartthings plugins:remove

See code: @oclif/plugin-plugins

smartthings plugins:update

update installed plugins

USAGE
  $ smartthings plugins:update

OPTIONS
  -h, --help     show CLI help
  -v, --verbose

See code: @oclif/plugin-plugins

smartthings presentation PRESENTATIONID [MANUFACTURERNAME]

query device presentation by vid

USAGE
  $ smartthings presentation PRESENTATIONID [MANUFACTURERNAME]

ARGUMENTS
  PRESENTATIONID    system generated identifier that corresponds to a device presentation
  MANUFACTURERNAME  manufacturer name. Defaults to SmartThingsCommunity

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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: dist/commands/presentation.ts

smartthings presentation:device-config PRESENTATIONID [MANUFACTURERNAME]

query device config by presentationId

USAGE
  $ smartthings presentation:device-config PRESENTATIONID [MANUFACTURERNAME]

ARGUMENTS
  PRESENTATIONID    system generated identifier that corresponds to a device presentation
  MANUFACTURERNAME  manufacturer name. Defaults to SmartThingsCommunity

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings presentation:device-config:create

create a device config

USAGE
  $ smartthings presentation:device-config:create

OPTIONS
  -d, --dry-run          produce JSON but don't actually submit
  -h, --help             show CLI help
  -i, --input=input      specify input file
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings presentation:device-config:generate ID

generate the default device configuration

USAGE
  $ smartthings presentation:device-config:generate ID

ARGUMENTS
  ID  the profile id (or legacy DTH id))

OPTIONS
  -h, --help                     show CLI help
  -j, --json                     use JSON format of input and/or output
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --dth                          generate from legacy DTH id instead of a profile id
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

  --type-shard-id=type-shard-id  data management shard Id where the device type resides, only useful for legacy DTH type
                                 integrations

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

smartthings rules [IDORINDEX]

get a specific rule

USAGE
  $ smartthings rules [IDORINDEX]

ARGUMENTS
  IDORINDEX  rule UUID or index

OPTIONS
  -h, --help                     show CLI help
  -j, --json                     use JSON format of input and/or output
  -l, --location-id=location-id  a specific location to query
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/rules.ts

smartthings rules:create

create a rule

USAGE
  $ smartthings rules:create

OPTIONS
  -d, --dry-run                  produce JSON but don't actually submit
  -h, --help                     show CLI help
  -i, --input=input              specify input file
  -j, --json                     use JSON format of input and/or output
  -l, --location-id=location-id  a specific location to query
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings rules:delete [ID]

delete a rule

USAGE
  $ smartthings rules:delete [ID]

ARGUMENTS
  ID  rule UUID

OPTIONS
  -h, --help                     show CLI help
  -l, --location-id=location-id  a specific location to query
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings rules:update [ID]

update a rule

USAGE
  $ smartthings rules:update [ID]

ARGUMENTS
  ID  rule UUID

OPTIONS
  -d, --dry-run                  produce JSON but don't actually submit
  -h, --help                     show CLI help
  -i, --input=input              specify input file
  -j, --json                     use JSON format of input and/or output
  -l, --location-id=location-id  a specific location to query
  -o, --output=output            specify output file
  -p, --profile=profile          [default: default] configuration profile
  -t, --token=token              the auth token to use
  -y, --yaml                     use YAML format of input and/or output
  --compact                      use compact table format with no lines between body rows
  --expanded                     use expanded table format with a line between each body row
  --indent=indent                specify indentation for formatting JSON or YAML output
  --language=language            ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings schema [ID]

list all ST Schema Apps currently available in a user account

USAGE
  $ smartthings schema [ID]

ARGUMENTS
  ID  the schema connector id

OPTIONS
  -h, --help             show CLI help
  -j, --json             use JSON format of input and/or output
  -o, --output=output    specify output file
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  -v, --verbose          include ARN in output
  -y, --yaml             use YAML format of input and/or output
  --compact              use compact table format with no lines between body rows
  --expanded             use expanded table format with a line between each body row
  --indent=indent        specify indentation for formatting JSON or YAML output
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

See code: dist/commands/schema.ts

smartthings schema:authorize ARN

authorize calls to your ST Schema Lambda function from SmartThings

USAGE
  $ smartthings schema:authorize ARN

ARGUMENTS
  ARN  the ARN of the AWS Lambda function

OPTIONS
  -h, --help                   show CLI help
  -p, --profile=profile        [default: default] configuration profile
  --principal=principal        use this principal instead of the default when authorizing lambda functions
  --statement-id=statement-id  use this statement id instead of the default when authorizing lambda functions

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-id smartthings --principal 148790070172 --action lambda:InvokeFunction

  It requires your machine to be configured to run the AWS CLI

See code: dist/commands/schema/authorize.ts

smartthings schema:create

create an ST Schema connector

USAGE
  $ smartthings schema:create

OPTIONS
  -d, --dry-run                produce JSON but don't actually submit
  -h, --help                   show CLI help
  -i, --input=input            specify input file
  -j, --json                   use JSON format of input and/or output
  -o, --output=output          specify output file
  -p, --profile=profile        [default: default] configuration profile
  -t, --token=token            the auth token to use
  -y, --yaml                   use YAML format of input and/or output
  --authorize                  authorize connector's Lambda functions to be called by SmartThings
  --compact                    use compact table format with no lines between body rows
  --expanded                   use expanded table format with a line between each body row
  --indent=indent              specify indentation for formatting JSON or YAML output
  --language=language          ISO language code or "NONE" to not specify a language. Defaults to the OS locale
  --principal=principal        use this principal instead of the default when authorizing lambda functions
  --statement-id=statement-id  use this statement id instead of the default when authorizing lambda functions

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

smartthings schema:delete [ID]

delete the ST Schema connector

USAGE
  $ smartthings schema:delete [ID]

ARGUMENTS
  ID  schema app id

OPTIONS
  -h, --help             show CLI help
  -p, --profile=profile  [default: default] configuration profile
  -t, --token=token      the auth token to use
  --language=language    ISO language code or "NONE" to not specify a language. Defaults to the OS locale

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

smartthings schema:update [ID]

update an ST Schema connector

USAGE
  $ smartthings schema:update [ID]

ARGUMENTS
  ID  the app id

OPTIONS
  -h, --help                   show CLI help
  -i, --input=input            specify input file
  -j, --json                   use JSON format of input and/or output
  -p, --profile=profile        [default: default] configuration profile
  -t, --token=token            the auth token to use
  -y, --yaml                   use YAML format of input and/or output
  --authorize                  authorize Lambda functions to be called by SmartThings
  --indent=indent              specify indentation for formatting JSON or YAML output
  --language=language          ISO language code or "NONE" to not specify a language. Defaults to the OS locale
  --principal=principal        use this principal instead of the default when authorizing lambda functions
  --statement-id=statement-id  use this statement id instead of the default when authorizing lambda functions

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

Configuration and Logging

More details about configuration and logging in the CLI can be found on the configuration documentation page.

Lerna Packages

This is the monorepo for the SmartThings CLI. Currently, the following packages are included:

  • cli - the CLI itself; @smartthings/cli node package
  • lib - a library for use in the CLI and its extensions; @smartthings/cli-lib node package
  • testlib - a library for use in the CLI and its extensions with utility methods to make testing with Jest easier; @smartthings/cli-testlib node package

Development

The CLI uses lerna to manage multiple packages in a monorepo. Dependencies are hoisted during bootstrap by default. To disable this, modify the following in lerna.json.

"command": {
    "bootstrap": {
        "hoist": false
    }

The CLI depends on the SmartThings Core SDK. To use a pre-release version for testing purposes, you'll need to make any required changes in both checked out repositories and then:

  1. Be sure you're using at least NodeJS version 12.
  2. In the root directory of the SDK
    1. run npm install.
    2. run npm link. If you're using a globally-installed version of node, you might need to run this with admin privileges.
  3. Install lerna globally with npm -g i lerna. (Alternatively, you can use npx lerna below instead of simply lerna.)
  4. In the in the root directory of the CLI repository run ./bootstrap.sh --reset --link-sdk.
  5. The bootstrap script will compile the CLI but you can:
    1. run lerna run compile to compile again, or
    2. run lerna run watch to watch for changes and compile on the fly, or
    3. run lerna run build to clean and compile
  6. To run the CLI, run the run command in packages/cli/bin. You can create a link to this file to make it easier to run. Since the final installed name will be "smartthings", that's a good name for the link. For example: ln -s ~/mydevdir/smartthings-cli/packages/cli/bin/run ~/bin/smartthings

There is also a full_clean.sh script you can run to start over again. This is sometimes helpful when pulling new code.

Before opening a pull request be sure to:

  1. Run eslint via lerna run lint
  2. Run tests with lerna run test
  3. If you've added or or removed commands or updated any of their arguments or flags, be sure to update the readme. Doing a full build via lerna run build will do this but you can also run lerna run readme.

smartthings-cli's People

Contributors

rossiam avatar john-u avatar bflorian avatar smartthingspi avatar patshiab avatar jodyalbritton avatar jeztucker avatar rankin-tr avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.