⌨️ Commands

Overview of available commands on the CLI

This page gives an overview of some of the commands available on the Lumos CLI. You can use the --help command in the CLI to learn about all the commands, more detail about each command, and see the most up-to-date documentation.

Top-level Commands

Usage: lumos [OPTIONS] COMMAND [ARGS]...

Options:
  -v, --version         Show the applications version and exit
  --install-completion  Install completion for the current shell.
  --show-completion     Show completion for the current shell, to copy it or
                        customize the installation.
  --help                Show this message and exit.

Commands:
  list
  login    Login to your Lumos account via OAuth.
  logout   Logout of your Lumos account.
  request  Request access to an app.
  setup    Setup your Lumos CLI.
  whoami   Show information about the currently logged in user.

Login

  Login to your Lumos account via OAuth. You must be logged in to Lumos on
  your browser.

Options:
  --admin / --no-admin  Log in as an admin, if you have the permission to do
                        so  [default: no-admin]
  --help                Show this message and exit.

example:

Logout

Log out of your Lumos account on the CLI. Clears your stored token.

Whoami

  Show information about the currently logged in user.

Options:
  --username / --no-username  Show the current user's username only  [default:
                              no-username]
  --id / --no-id              Show the current user's ID only  [default: no-
                              id]
  --help                      Show this message and exit.

Request

Use request to interact with AppStore requests.

  Request access to an app.

Options:
  --reason TEXT             Business justification for request
  --for-user UUID           UUID of user for whom to request access. Takes
                            precedence over --user-like
  --for-me / --mine / --no-for-me / --no-mine
                            Makes the request for the current user.
  --app UUID                App UUID. Takes precedence over --app-like
  --permission UUID         List of permission UUIDs. Takes precedence over
                            --permission-like
  --length INTEGER          Length of access request in seconds. Don't
                            populate unless you know your app permission's
                            specific settings
  --user-like TEXT          User name/email like--filters users shown as
                            options when selecting, if the request is not for
                            the current user
  --app-like TEXT           App name like--filters apps shown as options when
                            selecting
  --permission-like TEXT    Permission name like--filters permissions shown as
                            options when selecting
  --wait / --no-wait        Wait for the request to complete  [default: no-
                            wait]
  --dry-run / --no-dry-run  Print the request command without actually making
                            the request  [default: no-dry-run]
  --help                    Show this message and exit.

Commands:
  poll    Poll a request by ID for up to 5 minutes
  status  Check the status of a request by ID or `--last` for the most...

lumos request status [--last] Gets the last request you made, or if --request-id is passed/--last flag not present, prompts you for a request ID

Status

  Check the status of a request by ID or `--last` for the most recent request

Options:
  --request-id TEXT               Request ID
  --last / --no-last              [default: no-last]
  --status-only / --no-status-only
                                  Output status only
  --permission-only / --no-permission-only
                                  Output permission only
  --id-only / --no-id-only        Output request ID only
  --help                          Show this message and exit.

Poll

The lumos request poll command can be helpful in creating scripts where a Lumos CLI-powered access request is included as a step.

  Poll a request by ID for up to 5 minutes

Arguments:
  REQUEST_ID  [required]

Options:
  --wait INTEGER  How many minutes to wait. Max 5.  [default: 2]
  --help          Show this message and exit.

Setup

Can be used to set up CLI whether logged in or out. If logged in, clears saved credentials and lets you reselect which authentication method you'd like to use.

  Setup your Lumos CLI. Can be used to login or change your authentication
  method.

Options:
  --help  Show this message and exit.

List

Use the list command to navigate Lumos AppStore data. All commands have the following optional flags:

--page-size: page size, default 100

--page: page, default 1

--no-paginate: retrieves all results

--id-only: output IDs only

--csv: formats output as CSV, can be piped into an output file

--json: formats output as JSON, can be piped into an output file

--help: displays help text

Options:
  --help  Show this message and exit.

Commands:
  apps         List apps in the appstore
  permissions  List permissions for a given app
  requests     List access requests
  users        List users in Lumos

Apps

  List apps in the appstore

Options:
  --like TEXT                     Filters apps by search term
  --mine / --no-mine              Show only my apps. [default:
                                  no-mine]

Permissions

Usage: lumos list permissions [OPTIONS] APP

Arguments:
  APP  [required]

Options:
  --like TEXT                     Filters permissions

Users

List users in Lumos

Options:
  --like TEXT                     Search by name or email

Requests

Usage: lumos list requests [OPTIONS]

  List access requests

Options:
  --for-user UUID                 Show only requests for ('targetting') a
                                  particular user
  --mine / --no-mine              Show only requests for ('targetting') me.
                                  Takes precedence over --for-user.  [default:
                                  no-mine]
  --status TEXT                   One of `PENDING`, `COMPLETED`,
                                  `DENIED_PROVISIONING`, etc
  --all-statuses / --no-all-statuses
                                  Show requests of all statuses (not just
                                  pending). Takes precedence over a specific
                                  set of statuses specified by --status flags
                                  [default: no-all-statuses]