Skip to content

Command reference

How Tallyfy CLI commands work

Every command follows the same shape: the tool name, then a resource, then a verb. Typing the resource first and the action second gets you almost everywhere: blueprint list shows your templates, task complete marks a task done, process launch starts a new process. Once that pattern clicks, you can guess most commands without reading a manual, and built-in help fills the gaps whenever you’re unsure.

Two vocabularies, both accepted

Tallyfy’s web app and Tallyfy’s API use different words for the same things. The app says “blueprint” and “process”; the API says “checklist” and “run”. The CLI leads with the app words and quietly accepts the API words as aliases, so people coming from either side feel at home.

CLI commandAccepted aliases
blueprintchecklist
processruns
usermember, members, users
guestguests
groupgroups
folderfolders
tagtags
configsettings

Getting help

Add --help to anything. tallyfy --help lists every command, tallyfy task --help lists the task verbs, and tallyfy task wait --help explains one verb in full. When something misbehaves, run tallyfy doctor first; it checks your setup end to end.

Output for people and output for scripts

Every command can print its results four ways with the -o flag: table for humans, json for programs, csv for spreadsheets, and ndjson (one JSON record per line) for streaming. The --json flag is a handy shorthand for -o json, and it pairs naturally with jq:

Terminal window
tallyfy blueprint list --json | jq '.'
tallyfy task list -o csv > my-tasks.csv

Saved commands for your team

Long commands you run often can be saved by name in your project’s .tallyfy/commands folder and shared through version control. Anyone on the team then runs them by name, passing values as parameters:

Terminal window
tallyfy run weekly-report --param week=29

That keeps the tricky flags written down once, instead of living in one person’s shell history.

For developers

(Skip this unless you’re setting up the technical side.)

Resources and verbs

ResourceVerbs
blueprintlist, get, create, update, delete, clone, publish, steps, export, import, automation
processlist, get, launch, update, archive, reactivate, export
tasklist, get, complete, reopen, reassign, comment, wait
userlist, invite, role, disable, enable
guestlist, get, create, update
grouplist, create, update, delete
folderlist, create, delete
taglist, create, update, delete
orglist, current, use

Standalone commands round out the surface: login, logout, whoami, auth (login, logout, status), config, doctor, api, run, mcp, trust, update, version, and completion.

Global flags

These work on every command:

FlagWhat it does
--orgTarget a specific organization ID, overriding the active org.
-o, --outputOutput format: table, json, csv, or ndjson.
--jsonShorthand for -o json.
--dry-runPrint the API calls a command would make without executing them.
-y, --yesAssume yes for prompts; required for destructive or ask-level actions in scripts.
--no-inputNever prompt; fail instead. Turned on automatically when there’s no terminal.
-q, --quietSuppress non-essential output.
--no-colorDisable color output.
--verboseVerbose request logging, with tokens redacted.
--api-keyPass an API token directly. Prefer the TALLYFY_API_TOKEN environment variable in scripts.
--base-urlChange the API base URL from the default https://api.tallyfy.com.
--settingsExtra settings: a path to a JSON file, or an inline JSON object.

Raw API access

When a workflow needs an endpoint the built-in verbs don’t wrap, tallyfy api calls any Tallyfy API path directly with the standard headers, authentication, and retry policy applied for you:

Terminal window
tallyfy api GET me
tallyfy api GET organizations/YOUR_ORG_ID/checklists
tallyfy api GET organizations/YOUR_ORG_ID/runs --query status=active --query per_page=100
tallyfy api POST organizations/YOUR_ORG_ID/tags --input tag.json

Details worth knowing:

  • The path is relative to the API base URL, and no leading slash is needed.
  • --query adds a query parameter as key=value and repeats as many times as you like.
  • --input takes a file path for the request body, or - to read from standard input.
  • The response body is written to standard output verbatim. Non-2xx responses still print the body and map to the usual exit codes, like 5 for not-found and 7 for validation.

Shell completion

Tab completion is available for bash, zsh, fish, and PowerShell:

Terminal window
source <(tallyfy completion bash)
tallyfy completion zsh > "${fpath[1]}/_tallyfy"

Exit codes

Every command finishes with a predictable exit code so scripts can branch on the outcome. The full table, from 0 for success through 9 for a partial bulk failure, lives in the troubleshooting guide.

Integrations > Open API

Tallyfy’s REST API gives developers full programmatic access to the same platform features that…