workflow slack login

Set up the Slack user token workflow posts with

Synopsis

Ask for your Slack app’s client ID, its client secret and a refresh token (xoxe-1-…), refresh the token once to prove them, and keep what Slack gives back: in the macOS keychain, or in .workflow.json on Linux and Windows or when the file already holds them. The client ID is written to .workflow.json.

The app needs token rotation turned on and the chat:write user token scope. Tagging people and user groups in an announcement is optional and also needs users:read, channels:read, groups:read and usergroups:read; without them the announcement posts untagged and says which scope to add. workflow refreshes the token before its twelve hours run out, and keeps each new one where this put the first.

An app configuration token is not one this takes, nor is the refresh token that comes with it, though it too starts xoxe-1-: both only manage apps. A configuration token can create the app from a manifest, as you and with no more right than you have, and that app gives the three answers this asks for; the configuration page says how, under its Slack user token: https://jacob-delgado.github.io/workflow/docs/configuration/

workflow slack login [flags]

Examples

  workflow slack login             # set up the user token, at a terminal
  workflow --dry-run slack login   # where it would keep the token, asking nothing

Options

  -h, --help   help for login

Options inherited from parent commands

  -n, --dry-run             hold back every write to Jira, the forge, the messaging service, Taskwarrior, git and files, and say what it would have done
      --log-format FORMAT   say what goes to stderr as FORMAT: text, or json or logfmt, an entry a line stamped with its time (default text)
  -q, --quiet               say only warnings, errors and questions on stderr, leaving every note out
      --request-log FILE    append a one-line outline of each request (method, path, status, duration) to FILE, for a bug report
      --verbose             also say each request's outline on stderr, as a debug line (not while the terminal interface draws)

SEE ALSO