Files
api/api/docs/public/cli.md
Pujit Mehrotra a1ee915ca5 fix(cli): support --log-level for start and restart cmds (#1623)
Resolve #1614 
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Start and Restart commands accept a validated --log-level option (now
includes "fatal"); chosen level is applied to the running/restarted
service and defaults to the LOG_LEVEL environment value when set.

* **Documentation**
* CLI docs updated to list the --log-level option and allowed levels
(including fatal), show LOG_LEVEL as an environment-variable
alternative, and include usage examples.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-29 10:56:20 -04:00

4.0 KiB

title, description, sidebar_position
title description sidebar_position
CLI Reference Complete reference for all Unraid API CLI commands 4

CLI Commands

:::info[Command Structure] All commands follow the pattern: unraid-api <command> [options] :::

🚀 Service Management

Start

unraid-api start [--log-level <level>]

Starts the Unraid API service.

Options:

  • --log-level: Set logging level (trace|debug|info|warn|error|fatal)

Alternative: You can also set the log level using the LOG_LEVEL environment variable:

LOG_LEVEL=trace unraid-api start

Stop

unraid-api stop [--delete]

Stops the Unraid API service.

  • --delete: Optional. Delete the PM2 home directory

Restart

unraid-api restart [--log-level <level>]

Restarts the Unraid API service.

Options:

  • --log-level: Set logging level (trace|debug|info|warn|error|fatal)

Alternative: You can also set the log level using the LOG_LEVEL environment variable:

LOG_LEVEL=trace unraid-api restart

Logs

unraid-api logs [-l <lines>]

View the API logs.

  • -l, --lines: Optional. Number of lines to tail (default: 100)

⚙️ Configuration Commands

Config

unraid-api config

Displays current configuration values.

Switch Environment

unraid-api switch-env [-e <environment>]

Switch between production and staging environments.

  • -e, --environment: Optional. Target environment (production|staging)

Developer Mode

:::tip Web GUI Management You can also manage developer options through the web interface at SettingsManagement AccessDeveloper Options :::

unraid-api developer                       # Interactive prompt for tools
unraid-api developer --sandbox true        # Enable GraphQL sandbox
unraid-api developer --sandbox false       # Disable GraphQL sandbox
unraid-api developer --enable-modal        # Enable modal testing tool
unraid-api developer --disable-modal       # Disable modal testing tool

Configure developer features for the API:

  • GraphQL Sandbox: Enable/disable Apollo GraphQL sandbox at /graphql
  • Modal Testing Tool: Enable/disable UI modal testing in the Unraid menu

API Key Management

:::tip Web GUI Management You can also manage API keys through the web interface at SettingsManagement AccessAPI Keys :::

API Key Commands

unraid-api apikey [options]

Create and manage API keys via CLI.

Options:

  • --name <name>: Name of the key
  • --create: Create a new key
  • -r, --roles <roles>: Comma-separated list of roles
  • -p, --permissions <permissions>: Comma-separated list of permissions
  • -d, --description <description>: Description for the key

SSO (Single Sign-On) Management

:::info OIDC Configuration For OIDC/SSO provider configuration, see the web interface at SettingsManagement AccessAPIOIDC or refer to the OIDC Provider Setup guide. :::

SSO Base Command

unraid-api sso

Add SSO User

unraid-api sso add-user
# or
unraid-api sso add
# or
unraid-api sso a

Add a new user for SSO authentication.

Remove SSO User

unraid-api sso remove-user
# or
unraid-api sso remove
# or
unraid-api sso r

Remove a user (or all users) from SSO.

List SSO Users

unraid-api sso list-users
# or
unraid-api sso list
# or
unraid-api sso l

List all configured SSO users.

Validate SSO Token

unraid-api sso validate-token <token>
# or
unraid-api sso validate
# or
unraid-api sso v

Validates an SSO token and returns its status.

Report Generation

Generate Report

unraid-api report [-r] [-j]

Generate a system report.

  • -r, --raw: Display raw command output
  • -j, --json: Display output in JSON format

Notes

  1. Most commands require appropriate permissions to modify system state
  2. Some commands require the API to be running or stopped
  3. Store API keys securely as they provide system access
  4. SSO configuration changes may require a service restart