Skip to main content
The Sift CLI is a command-line tool for moving telemetry in and out of Sift without writing code. Use the CLI when you want to:
  • Import CSV, Parquet, TDMS, HDF5, and ULog files from a terminal or a script.
  • Export Run and Asset data to CSV, Parquet, or Sun (WinPlot) format.
  • Verify API credentials and connectivity.
The binary is named sift-cli (formerly sift_cli). It is a standalone command-line tool, distinct from the sift_client Python client library.
For every command, flag, and supported value, see the Sift CLI reference.

Install the CLI

Configure a profile

The CLI reads connection settings from a sift.toml config file stored in your user data directory. Each profile holds a gRPC endpoint, a REST endpoint, and an API key.
1

Create the config file

This command fails if a config file already exists.
2

Set the default profile

Obtain the gRPC and REST base URLs and an API key from the Sift UI. See Set up API access.
3

Confirm the configuration

To print the path to the config file instead, run sift-cli config where.
To enter values through prompts instead of flags, use the interactive flag:
Commands run against the default profile unless you pass --profile <name>. The --profile flag is global and applies to any command.
To connect to a non-cloud Sift environment that does not use TLS, pass the global --disable-tls flag.

Verify connectivity

Confirm that your profile’s credentials and endpoint work:
The command pings the Sift API and prints the response.

Import and export data

The CLI’s primary workflows are file import and data export:

Import files

Import CSV, Parquet, TDMS, HDF5, ULog, and backup files into an Asset.

Export data

Export Run or Asset data, including Calculated Channels, to a file.
For every command, flag, and supported value, see the Sift CLI reference.

Install shell completions

Install command autocompletions for your current shell, then restart the shell:
To print completions for a specific shell instead of installing them, name the shell:
If you omit --shell, the CLI infers the shell from the $SHELL environment variable.

Serve the docs locally

Serve the CLI’s bundled documentation over HTTP:
The server binds to 0.0.0.0:3000 by default. To bind a different address, pass --addr: