Skip to main content

The Dime.Scheduler CLI

dimescheduler is a single self-contained binary. There's nothing else to install - no .NET runtime, no Node, no Python. It works on macOS, Linux, and Windows.

The CLI is generated from the same OpenAPI specification as the SDKs, so its commands and flags stay in lockstep with the API.

Install​

Homebrew (macOS, Linux)​

brew tap dime-scheduler/distro https://github.com/dime-scheduler/distro
brew install dime-scheduler/distro/cli

Scoop (Windows)​

scoop bucket add dime-scheduler https://github.com/dime-scheduler/distro
scoop install dime-scheduler/cli

Direct download​

Grab the build for your platform from the releases page, unpack it, and drop the binary somewhere on your PATH.

Verify the install​

dimescheduler version

This prints the version, followed by the Go version, OS/arch, and (when available) the build revision and time. Pass --check-update to compare against the latest release on GitHub.

First call​

The fastest way to get going - interactively log in, then list your resourcesResourceAn entity that can carry out work - a person, vehicle, tool, or room - that you schedule on the planning board.:

dimescheduler auth login
dimescheduler resources list

auth login saves your API keyAPI keyA credential that authenticates calls to the Dime.Scheduler API. The preferred way to integrate over the deprecated JWT flow. to the config file (~/.config/dimescheduler/config.yaml on macOS/Linux, %APPDATA%\dimescheduler\config.yaml on Windows). For CI and other non-interactive contexts, set DIMESCHEDULER_API_KEY instead - see Authentication.

Command shape​

Every command follows the same shape:

dimescheduler <entity> <verb> [flags]
  • <entity> is the entity (plural, kebab-case): categories, appointments, resource-gps-trackings, …
  • <verb> is list, create, update, or delete. Read-only entities only have list; jobs and appointments add get for a single record.

A handful of operational commands sit at the top level:

CommandPurpose
authLog in, log out, check status. See Authentication.
configInspect or change the config file. See Configuration.
apiMake any authenticated request - like gh api. See API command.
completionPrint shell completions for bash, zsh, fish, or PowerShell.
versionPrint version, optionally check for updates.

See Commands for the full reference, and Scripting for output formats and piping recipes.

Global flags​

These apply to every command:

FlagWhat it does
--api-keyAPI key. Overrides DIMESCHEDULER_API_KEY and the config file.
--environmentproduction (default, alias prod) or sandbox.
--output, -otable (default in a TTY), json (default when piped), or yaml (alias yml).
--profile, -pNamed profile from the config file.
--configPath to a config file.
--timeoutPer-request HTTP timeout, e.g. 30s, 2m.
--debugPrint every HTTP request/response to stderr.
--verbosePrint extra progress info.
--quietSuppress non-error output.
--no-colorDisable ANSI colors (also honors NO_COLOR).

Discovering options​

Every command and subcommand has --help. That's the canonical reference - it ships with the binary you have installed and never drifts from the actual flags:

dimescheduler --help # all commands
dimescheduler categories --help # verbs for an entity
dimescheduler categories create --help # flags for a specific call

The pages in this section describe the shape and intent of each capability - install, auth, command reference, scripting. For the exact flags of any command, use --help.