Showpad CLI Commands Overview
The commands within the apps
namespace are specifically engineered to elevate your control and oversight of
custom-developed applications within the Showpad platform.
At any time, you can retrieve a list of all available commands for the apps
namespace by running::
$ @showpad/cli apps
The following is detailed descriptions of the available commands that you'll when developing your Showpad Apps.
Note
With the exception of the login command, all commands must be prefixed with the @showpad/cli apps
namespace.
assign
USAGE
$ showpad apps assign -p <value> [-c <value>] [--no-input] [--verbose] [--app-version-id <value>]
FLAGS
-c, --config-dir=<value> [default: ~/.config/showpad] path to the directory containing configuration files
-p, --partner-code=<value>... (required) partner code to assign the app version to
--app-version-id=<value> id of an uploaded app version
--no-input prevent the CLI from prompting for anything in interactive mode
--verbose make command more verbose during execution
DESCRIPTION
Assigns a specific version of your app to one or more Showpad organizations.
EXAMPLES
$ showpad apps assign --partner-code 91dd4290-369e-488e-80df-634d6cb090a6
$ showpad apps assign --partner-code 91dd4290-369e-488e-80df-634d6cb090a6 --app-version-id 01ARZ3NDEKTSV4RRFFQ69G5FAV
bundle
USAGE
$ showpad apps bundle [-c <value>] [--no-input] [--verbose] [-s <value>] [-o <value>] [--skip-validation]
FLAGS
-c, --config-dir=<value> [default: ~/.config/showpad] path to the directory containing configuration files
-o, --output-dir=<value> [default: .] specifies the directory where the app bundle is written to. Default: the
current directory
-s, --source-dir=<value> [default: .] specifies the directory containing the app files to bundle. Default: the
current directory
--no-input prevent the CLI from prompting for anything in interactive mode
--skip-validation define if the validation of the data to bundle should be skipped.
--verbose make command more verbose during execution
DESCRIPTION
Creates a .showpad bundle for your app.
list
USAGE
$ showpad apps list [-c <value>] [--no-input] [--verbose] [--columns <value> | -x] [--filter <value>]
[--no-header | [--csv | --no-truncate]] [--output csv|json|yaml | | ] [--sort <value>]
FLAGS
-c, --config-dir=<value> [default: ~/.config/showpad] path to the directory containing configuration files
-x, --extended show extra columns
--columns=<value> only show provided columns (comma-separated)
--csv output is csv format [alias: --output=csv]
--filter=<value> filter property by partial string matching, ex: name=foo
--no-header hide table header from output
--no-input prevent the CLI from prompting for anything in interactive mode
--no-truncate do not truncate output to fit screen
--output=<option> output in a more machine friendly format
<options: csv|json|yaml>
--sort=<value> property to sort by (prepend '-' for descending)
--verbose make command more verbose during execution
DESCRIPTION
Retrieves a list of all uploaded apps.
EXAMPLES
$ showpad apps list
status
USAGE
$ showpad apps status [-c <value>] [--no-input] [--verbose] [--columns <value> | -x] [--filter <value>]
[--no-header | [--csv | --no-truncate]] [--output csv|json|yaml | | ] [--sort <value>] [--app-id <value>]
[--upload-id <value>]
FLAGS
-c, --config-dir=<value> [default: ~/.config/showpad] path to the directory containing configuration files
-x, --extended show extra columns
--app-id=<value> The ID of the app.
--columns=<value> only show provided columns (comma-separated)
--csv output is csv format [alias: --output=csv]
--filter=<value> filter property by partial string matching, ex: name=foo
--no-header hide table header from output
--no-input prevent the CLI from prompting for anything in interactive mode
--no-truncate do not truncate output to fit screen
--output=<option> output in a more machine friendly format
<options: csv|json|yaml>
--sort=<value> property to sort by (prepend '-' for descending)
--upload-id=<value> The ID of the upload.
--verbose make command more verbose during execution
DESCRIPTION
Provides real-time insights into your uploaded apps.
EXAMPLES
$ showpad apps status --upload-id 01HH46DZCEGRRKDBVTF1E2SBCX
$ showpad apps status --app-id 01ARZ3NDEKTSV4RRFFQ69G5FAV
unassign
USAGE
$ showpad apps unassign -p <value> [-c <value>] [--no-input] [--verbose] [--app-version-id <value>]
FLAGS
-c, --config-dir=<value> [default: ~/.config/showpad] path to the directory containing configuration files
-p, --partner-code=<value> (required) partner code to unassign the app version from
--app-version-id=<value> id of an uploaded app version
--no-input prevent the CLI from prompting for anything in interactive mode
--verbose make command more verbose during execution
DESCRIPTION
Unassigns an app version from one or more Showpad organizations.
EXAMPLES
$ showpad apps unassign --partner-code 91dd4290-369e-488e-80df-634d6cb090a6
$ showpad apps unassign --partner-code 91dd4290-369e-488e-80df-634d6cb090a6 --app-version-id 01ARZ3NDEKTSV4RRFFQ69G5FAV
upload
USAGE
$ showpad apps upload FILEPATH [-c <value>] [--no-input] [--verbose] [--skip-validation]
ARGUMENTS
FILEPATH the path to the app bundle file
FLAGS
-c, --config-dir=<value> [default: ~/.config/showpad] path to the directory containing configuration files
--no-input prevent the CLI from prompting for anything in interactive mode
--skip-validation define if the validation of the bundle to upload should be skipped
--verbose make command more verbose during execution
DESCRIPTION
Uploads an app to Showpad.
EXAMPLES
$ showpad apps upload ~/apps/my-app.showpad
versions
USAGE
$ showpad apps versions [-c <value>] [--no-input] [--verbose] [--columns <value> | -x] [--filter <value>]
[--no-header | [--csv | --no-truncate]] [--output csv|json|yaml | | ] [--sort <value>] [--app-id <value>]
FLAGS
-c, --config-dir=<value> [default: ~/.config/showpad] path to the directory containing configuration files
-x, --extended show extra columns
--app-id=<value> id of an app
--columns=<value> only show provided columns (comma-separated)
--csv output is csv format [alias: --output=csv]
--filter=<value> filter property by partial string matching, ex: name=foo
--no-header hide table header from output
--no-input prevent the CLI from prompting for anything in interactive mode
--no-truncate do not truncate output to fit screen
--output=<option> output in a more machine friendly format
<options: csv|json|yaml>
--sort=<value> property to sort by (prepend '-' for descending)
--verbose make command more verbose during execution
DESCRIPTION
Retrieves a comprehensive list of all available versions of uploaded apps.
EXAMPLES
$ showpad apps versions
$ showpad apps versions --app-id 01ARZ3NDEKTSV4RRFFQ69G5FAV
help
USAGE
$ showpad help [COMMANDS] [-n]
ARGUMENTS
COMMANDS Command to show help for.
FLAGS
-n, --nested-commands Include all nested commands in the output.
DESCRIPTION
Display help for showpad.
login
USAGE
$ showpad login [-c <value>] [--no-input] [--verbose] [-p <value>]
FLAGS
-c, --config-dir=<value> [default: ~/.config/showpad] path to the directory containing configuration files
-p, --password=<value> the password to use for token generation
--no-input prevent the CLI from prompting for anything in interactive mode
--verbose make command more verbose during execution
DESCRIPTION
Updates configuration and authenticates a user.
Configuration
This command updates the following configuration files, which are located in the folder provided with --config-dir.
- credentials
The CLI never stores user passwords.
The Credentials file stores the following information:
- Showpad admin username: When provided during interactive mode
- Showpad admin password: When provided during interactive mode
- OAuth client id: When provided during interactive mode
- OAuth client secret: When provided during interactive mode
- Showpad subdomain: When provided during interactive mode
- Showpad refresh token: Retrieved during the authorization flow
- Showpad access token: Retrieved during the authorization flow
The login command facilitates user authentication in the Showpad instance through the use of the following variables:
- Showpad admin username: The username of the Showpad administrator for whom tokens will be generated.
- Showpad admin password: The password required to initiate the Oauth user credentials flow.
- OAuth client id: Necessary for initiating both the Oauth user credentials flow and subsequent refresh token flow.
- OAuth client secret: Required for initiating the Oauth user credentials flow and subsequent refresh token flow.
- Showpad subdomain: The subdomain associated with the Showpad instance.
These variables can be supplied either interactively during command execution (interactive mode) or retrieved from
environment variables:
SHOWPAD_ADMIN_USERNAME
SHOWPAD_ADMIN_PASSWORD
SHOWPAD_CLIENT_ID
SHOWPAD_CLIENT_SECRET
SHOWPAD_SUBDOMAIN
Flow
1. The command checks for the presence of a config file. If the file does not exist, the command creates it.
2. The command checks if any environment variables are set. If set, it retrieves the values from the environment
variables, skipping the corresponding prompts during interactive mode.
3. The login command initiates the Oauth user credentials flow, storing the access token and refresh token in the
configuration file upon successful completion. As long as the tokens remain valid, the user is not required to execute
the login command again.
EXAMPLES
$ showpad login