Command Line Interface

The Decodable command line interface (CLI) is the primary way to work with connections, streams, and pipelines in Decodable. It's fast, easy to use and suitable for both interactive or scripted use.

Downloads

The CLI is available for the following platforms:

PlatformArchitectureLatest Version
Linuxamd64decodable-cli-linux-amd64-1.6.1.tar.gz [sha]
MacOS (10.15 and later)amd64decodable-cli-darwin-amd64-1.6.1.tar.gz [sha]
MacOS (10.15 and later)arm64 (M1)decodable-cli-darwin-arm64-1.6.1.tar.gz [sha]

Installing the CLI

To install the CLI, download the appropriate distribution for your OS, unpack it, and place it somewhere convenient for you. The executable is self-contained and can be safely moved around the filesystem.

Commands

All CLI functionality is grouped into logical (sub)commands. Running the CLI with no arguments will show you the list of supported commands as well as some basic help information.

decodable

# Output:
# Usage:
#   decodable [command]
#
# Available Commands:
#   config      Manage client configuration
#   connection  Manage connections
#   help        Help about any command
#   login       
#   pipeline    Manage pipelines
#   stream      Manage streams
#
# Flags:
#   -h, --help      help for decodable
#   -v, --version   version for decodable
#
# Use "decodable [command] --help" for more information about a command.

When in doubt, just use the --help option to get more help about a command.

decodable pipeline --help

# Output:
# Manage pipelines
#
# Usage:
#   decodable pipeline [command]
#
# Aliases:
#   pipeline, pl
#
# Available Commands:
#   activate    Activate a pipeline
#   create      Create a new pipeline
#   deactivate  Deactivate a pipeline
#   delete      Delete a pipeline
#   get         Get the definition for a pipeline
#   list        List pipelines
#   preview     Run a preview
#   update      Update an existing pipeline
#
# Flags:
#   -h, --help   help for pipeline
#
# Use "decodable pipeline [command] --help" for more information about a command.

Initial Setup

Before using CLI, you must run the setup command with your account name. This will create the configuration directory and generate a simple configuration file.

decodable config setup <account>

Configuration

The CLI stores configuration about accounts and authentication credentials in the ~/.decodable/ directory. These files are just YAML and are safe to explore, if you're curious.

The auth file contains sensitive access tokens and must not be shared or committed to version control.

Authentication

In most cases, you'll only need to login once. The CLI stores credentials in a file in the configuration directory. While the access token has a limited lifespan, the CLI will automatically refresh it as needed.

To login, run decodable login and follow the directions in your terminal.