Skip to content

Protocube CLI

Command-line flags and subcommands for the Protocube binary. Replace SLS with your container name when using Docker; on the host, run protocube directly.

Global flags

FlagTypeDescription
--configstringChange the path to the configuration file.
--debugboolEnable debug mode. When set, overrides Debug in the loaded config.
bash
# Example: Pass commands in your docker compose file
services:
  protocube:
    command: ["--config", "/etc/sls/protocube/config.yml"]

# Example: Pass commands when running your compose file
docker compose run protocube --config /etc/sls/protocube/config.yml
bash
protocube --config /path/to/config.yml
protocube --debug --config /path/to/config.yml

version

Prints the version and exits.

bash
docker exec SLS protocube version
bash
protocube version

create-api-key

Creates an API key. Interactive by default; use --no-interactive with flags for scripts.

bash
docker exec -it SLS protocube create-api-key
bash
protocube create-api-key

Aliases: ck, create-key, new-key

FlagRequired (non-interactive)Description
--nameYesKey name.
--owner-idYesOwner UUID.
--scopesNoComma-separated scopes (e.g. app:admin, node).
--descriptionNoDescription.
--environmentNolive or test. Default: live.
--expires-inNoExpiration duration (e.g. 24h, 168h, 720h).
--metadataNoMetadata as key=value (repeat flag per pair).
--no-interactiveNon-interactive mode (requires --name and --owner-id).

list-api-keys

Lists API keys.

bash
docker exec SLS protocube list-api-keys
bash
protocube list-api-keys

Aliases: list-keys, keys, lk

show-api-key

Shows one API key by ID.

bash
docker exec SLS protocube show-api-key --id <uuid>
bash
protocube show-api-key --id <uuid>

Aliases: key-info, show-key, sk

FlagRequiredDescription
--idYesAPI key ID (UUID).

delete-api-key

Deletes an API key by ID.

bash
docker exec SLS protocube delete-api-key --id <uuid>
bash
protocube delete-api-key --id <uuid>

Aliases: del-key, remove-key, delete-key, dk

FlagRequiredDescription
--idYesAPI key ID (UUID).

Changes can take up to 5 minutes to take effect. Restarting Protocube applies changes immediately.

revoke-api-key

Revokes an API key (does not delete it).

bash
docker exec SLS protocube revoke-api-key --id <uuid>
docker exec SLS protocube revoke-api-key --id <uuid> --reason "rotated"
bash
protocube revoke-api-key --id <uuid>
protocube revoke-api-key --id <uuid> --reason "rotated"

Aliases: revoke-key, rk

FlagRequiredDescription
--idYesAPI key ID (UUID).
--reasonNoOptional revocation reason.

Changes can take up to 5 minutes to take effect. Restarting Protocube applies changes immediately.