Using the Wistia CLI
Install, authenticate, and use the Wistia CLI to manage your Wistia account from the terminal.
The Wistia CLI is a command-line tool for the Wistia Data API. It lets you manage media, folders, channels, webinars, captions, analytics, and more directly from your terminal, without writing code.
The command is wistia, and every command can emit machine-readable output (JSON, YAML, or TOON). That makes it a natural fit for AI coding agents such as Claude Code, Cursor, and Codex: they can run wistia commands and act on the structured results as part of a coding session, the same way a developer would. The CLI is a complement to Wistia's MCP server for agents that work in a terminal rather than over a protocol. The same output formats also compose cleanly with jq, shell pipelines, and scripts.
Installation
Homebrew (macOS and Linux)
brew install wistia/tap/wistia-cliShell installer (macOS and Linux)
curl -fsSL https://raw.githubusercontent.com/wistia/wistia-cli/main/scripts/install.sh | bashWindows (PowerShell)
iwr -useb https://raw.githubusercontent.com/wistia/wistia-cli/main/scripts/install.ps1 | iexManual download
Download a pre-built binary for your platform from the releases page and place it on your PATH.
Verify the install:
wistia --versionAuthentication
The CLI authenticates with a Wistia API access token. Create one in the API tab of your Account Settings.
Keep your token secret. Treat API tokens like passwords. Don't commit them to source control or paste them into client-side code.
You can provide the token three ways:
1. OS keychain
Run the interactive setup once; the CLI stores your token securely in your operating system's keychain (macOS Keychain, Linux Secret Service, or Windows Credential Locker):
wistia configure2. Environment variable
export WISTIA_CLI_BEARER_AUTH="<your-token>"3. Per-command flag
wistia --bearer-auth "<your-token>" <command>Quick start
Once authenticated, try a few read-only commands:
# Show the current account
wistia account get
# List media (most recent first)
wistia media list
# List folders (projects)
wistia folders listGet help on any command or group:
wistia --help
wistia media --help
wistia media list --helpOutput formats
Every command supports --output-format to control how responses are rendered:
| Flag | Output |
|---|---|
--output-format pretty (default) | Human-readable, aligned, colorized |
--output-format json | JSON, ideal for scripts and jq |
--output-format yaml | YAML |
--output-format table | Tabular, for list responses |
--output-format toon | TOON, a compact, token-efficient format well-suited for piping into LLM prompts |
# JSON, piped to jq
wistia media list --output-format json | jq '.[].name'
# Filter inline with the built-in --jq flag (always outputs JSON)
wistia media list --jq '.[] | select(.type == "Video")'Shell completions
The CLI generates completions for Bash, Zsh, Fish, and PowerShell. For example, in Zsh:
# Add to ~/.zshrc
source <(wistia completion zsh)Run wistia completion --help for the other shells.
What you can do
The CLI mirrors the Wistia Data API. Command groups include:
- Media: upload/import, list, update, copy, archive, trim, swap
- Folders, subfolders & sharings: organize and share projects
- Captions, localizations & audio descriptions: accessibility and translations
- Channels & episodes: curated collections and podcasts
- Webinars & registrations
- Tags & taggings
- Account, allowed domains & customizations
- Search
- Analytics & stats: for media, the account, visitors, events, and webinars
- Remix: AI video editing
Run wistia --help to see the full list.
Configuration
Non-secret settings are stored in ~/.config/wistia/config.yaml. Secret credentials live in your OS keychain (see Authentication) and fall back to the config file only when no keychain is available (for example, in CI).