VoidhashDocs
DevelopersHelp centerGuidesAPI reference
Dashboard
Get started
Introduction
Quickstart
How Voidhash works
Glossary
Versions and releases
Concepts
Teams, projects and environments
API keys
Products and perks
Offers
Subscription lifecycle
People and identity
Events
Features
Paywalls in your app
Feature flags and A/B tests
Paywall components
Push notifications
Ad attribution in your app
Client SDKs
React Native
Swift
Kotlin
Web
Your backend
Node.js
PHP
Go
Rust
Other languages
Payment sources
Forward store notifications
Developer tools
CLI
MCP server
Query analytics with VoidQL
CLI
CLI reference
Commands
Sign-in and projects
People and access
Catalog and payments
Paywalls and components
Flags and experiments
Analytics and ads
Webhooks and push
Team and settings
Types, API and config

CLI reference

Common flags, output, confirmations, exit codes, credentials and shell completion.

What every Voidhash CLI command shares. For the commands themselves, see CLI.

Common flags

FlagApplies toWhat it does
--project <project>Project commandsThe project to act on. See Choose a project.
--org <team>member, notices, project list, project createThe team to act on, by slug, name or ID.
--jsonMost commandsPrint the API objects as JSON.
--quiet, -qMost commandsPrint only IDs, one per line.
--yes, -yCommands that ask firstConfirm without asking.
--profile <name>Every commandUse a profile.
--debug, -dEvery commandPrint debug logs and full error traces.
--completions <shell>The root commandPrint a completion script.
--version, -vThe root commandPrint the CLI version.

Output

In a terminal, commands print tables and summaries. For scripts:

  • --json prints the API objects, the stable shape to parse.
  • --quiet (-q) prints only IDs, one per line, for piping into another command.

The CLI asks questions only when both standard input and output are a terminal. Elsewhere a missing value fails the command and says which flag to pass. Color appears only in a terminal, and never when NO_COLOR is set.

Confirmations

A change that can't be undone, or that changes what people get, shows what it will do and asks first. Each command's --help says when. Pass --yes (-y) to confirm without asking; without a terminal, such a command fails unless you pass it. Deleting a team or project, and erasing a person, ask you to type its name, email or distinct ID instead. product perks set and push send take --dry-run to show the change without making it.

Exit codes

Errors go to standard error, with the command that fixes them when there is one.

CodeMeaning
0Done, or help printed.
1The command failed, or a check it ran didn't pass.
2Wrong usage: a missing, ambiguous or invalid value, or an unanswered confirmation.
3Not signed in, or the server no longer accepts the stored token or key.
4Not found: no such item, or the credential can't see it.
130Interrupted with Ctrl+C.

provider test, webhook test and webhook retry exit with 1 when the endpoint doesn't work, so a script can stop on it.

Credentials

The CLI stores its token in the macOS login keychain, or in the Secret Service keyring (through secret-tool) on Linux. Where neither works, it uses credentials.json in $XDG_CONFIG_HOME/voidhash/ (by default ~/.config/voidhash/), or %APPDATA%\voidhash\ on Windows, readable only by you. A token is only ever sent to the API server that issued it.

Shell completion

The CLI prints a completion script for bash, zsh, fish, sh, powershell or pwsh:

voidhash --completions zsh > "${fpath[1]}/_voidhash"
voidhash --completions fish > ~/.config/fish/completions/voidhash.fish

Next steps

  • CLI: install, sign in and run in CI.
  • Types, API and config: profiles and raw API calls.
  • API overview: the HTTP API behind every command.

Something wrong or missing on this page? Tell us by email or on Discord.

PreviousCLINextSign-in and projects

On this page

Common flagsOutputConfirmationsExit codesCredentialsShell completionNext steps