CLI Reference¶
usvc¶
UnitySVC customer CLI — remote operations against the UnitySVC customer backend via the unitysvc-py HTTP SDK.
Subcommands contributed by other UnitySVC packages appear here once those packages are installed.
Usage:
Options:
-V, --version: Show 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:
env: Show the environment variables the SDK and...resolve: Dry-run resolve a gateway path to its...secrets: Customer secret management (list, set,...aliases: Remote service-alias operations (list,...recurrent-requests: Remote recurrent-request operations (list,...groups: Service-group operations (list, show,...files: Account files (ls, get, put, url).services: Per-service operations (show, usage,...enrollments: Enrollment management (list, show, cancel).preferences: Per-user preference management (set/clear).
usvc env¶
Show the environment variables the SDK and CLI will use.
Usage:
Options:
--help: Show this message and exit.
usvc resolve¶
Dry-run resolve a gateway path to its candidates.
Usage:
Options:
--path <str>: Gateway request path, e.g. 'v1/chat/completions'. [required]--routing-key <str>: Optional routing key as inline JSON, e.g. '{"model": "gpt-4"}'.--gateway <str>: Gateway prefix the path belongs to: api | s3 | smtp. [default: api]--strategy <str>: Override the group's configured routing strategy (e.g. 'by_price').--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc secrets¶
Customer secret management (list, set, upload, delete).
Usage:
Options:
--help: Show this message and exit.
Commands:
list: List secrets owned by the authenticated...set: Set a secret or variable by name...upload: Bulk-set secrets from an.env-style...delete: Delete a secret by name.
usvc secrets list¶
List secrets owned by the authenticated customer.
Usage:
Options:
--skip <int>: Offset for pagination. [default: 0]--limit <int>: Max records to return. [default: 100]-f, --format <str>: Output format: table | json. [default: table]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc secrets set¶
Set a secret or variable by name (idempotent — creates or rotates).
Maps to PUT /v1/customer/secrets/{name}. The value is encrypted
server-side. A secret (default) is write-only and cannot be retrieved;
pass --variable to store a viewable variable instead (its value is
returned by list/get — useful for non-sensitive config like a
notification email). --variable is honored only when the row is created.
Resolution order for the value, in order of precedence:
--value VALUE— explicit literal (or--value "$ENV_NAME"via shell expansion).- piped stdin —
echo v | usvc secrets set X(trailing newline stripped). - interactive prompt — TTY only; hidden input.
Mirrors the convention used by gh secret set, vault kv put,
and similar tools.
Usage:
Arguments:
name: Secret name (unique per customer). [required]
Options:
--value <str>: Secret value. If omitted: reads from stdin when piped, prompts with hidden input when run interactively.--variable: Store as a viewable variable (value is returned by list/get) rather than a write-only secret. Honored only when creating.-d, --description <str>: Author guidance stored on the row (what this secret is / how to obtain one). Omit to leave any existing description untouched. For many secrets at once, use a .env.example manifest with 'secrets upload'.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc secrets upload¶
Bulk-set secrets from an .env-style manifest (idempotent).
Reads a shell-sourceable .env.example and sets each via
PUT /v1/customer/secrets/{name}, with two conventions:
- Environment-aware:
NAME=${NAME:-default}(or the quotedNAME="${NAME:-default}") resolvesNAMEfrom the process environment when set, else the default — so the file reuses values already exported in your shell, falling back to test defaults. A defaultlessNAME=${NAME}is required — an unset/emptyNAMEaborts the upload rather than uploading an empty value; write${NAME:-}to opt into empty. Opaque literals (NAME=sk-abc) are verbatim. - Description-aware: the contiguous
#comment lines directly above a definition become that secret'sdescription. A blank line ends a block, so a file header attaches to no secret. -
Variable-aware: a trailing
# variablecomment on an assignment marks that one entry as a viewable variable (its value is returned bylist/get); every other entry is a secret. This mirrors the--variableflag onsecrets setand is honored only on create::# Notification email shown back to you NOTIFY_EMAIL=me@example.com # variable OPENAI_API_KEY=${OPENAI_API_KEY} # (no marker) → secret
Every declared entry is set (source semantics; empties included, so the row
that carries a description is created). Last assignment wins. Input is a file
or a pipe: FILE argument, or - / piped stdin.
Usage:
Arguments:
file: Manifest file (.env.example) to read, or '-' for stdin. Omit when piping.
Options:
--dry-run: Parse and list; upload nothing.-f, --format <str>: Output format: table | json. [default: table]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc secrets delete¶
Delete a secret by name.
Usage:
Arguments:
name: Secret name. [required]
Options:
-y, --yes: Skip confirmation prompt.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc aliases¶
Remote service-alias operations (list, show, switch, delete).
Usage:
Options:
--help: Show this message and exit.
Commands:
list: List aliases owned by the authenticated...show: Show a single alias as JSON.switch: Switch which target routes for an alias —...delete: Delete an alias by id.
usvc aliases list¶
List aliases owned by the authenticated customer.
Usage:
Options:
--skip <int>: Offset for pagination. [default: 0]--limit <int>: Max records to return. [default: 100]-n, --name <str>: Filter by alias name.--include-deactivated: Include deactivated aliases.-f, --format <str>: Output format: table | json. [default: table]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc aliases show¶
Show a single alias as JSON.
Usage:
Arguments:
alias_id: Alias ID. [required]
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc aliases switch¶
Switch which target routes for an alias — the one-call provider switch.
Omit target and routing_key to cycle to the next target.
Usage:
Arguments:
identifier: Alias name, full UUID, or partial UUID. [required]target: Target-path substring selecting a specific target.routing_key: Routing-key-value substring selecting a target.
Options:
--off: Turn the current target off instead of switching it on.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc aliases delete¶
Delete an alias by id.
Usage:
Arguments:
alias_id: Alias ID. [required]
Options:
-y, --yes: Skip confirmation prompt.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc recurrent-requests¶
Remote recurrent-request operations (list, show, trigger, delete).
Usage:
Options:
--help: Show this message and exit.
Commands:
list: List recurrent requests owned by the...show: Show a single recurrent request as JSON.trigger: Force an immediate run of a recurrent...delete: Delete a recurrent request by id.
usvc recurrent-requests list¶
List recurrent requests owned by the authenticated customer.
Usage:
Options:
--service-id <str>: Filter by service id.--enrollment-id <str>: Filter by enrollment id.--status <str>: Filter by status.--skip <int>: Offset for pagination. [default: 0]--limit <int>: Max records to return. [default: 100]-f, --format <str>: Output format: table | json. [default: table]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc recurrent-requests show¶
Show a single recurrent request as JSON.
Usage:
Arguments:
request_id: Recurrent request ID. [required]
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc recurrent-requests trigger¶
Force an immediate run of a recurrent request.
Usage:
Arguments:
request_id: Recurrent request ID. [required]
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc recurrent-requests delete¶
Delete a recurrent request by id.
Usage:
Arguments:
request_id: Recurrent request ID. [required]
Options:
-y, --yes: Skip confirmation prompt.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc groups¶
Service-group operations (list, show, services, dispatch).
Usage:
Options:
--help: Show this message and exit.
Commands:
list: List service groups visible to the customer.show: Show full detail for one group as JSON.services: List services that belong to a group...dispatch: One-shot HTTP through the group's gateway...
usvc groups list¶
List service groups visible to the customer.
Usage:
Options:
-n, --name <str>: Filter by partial-substring match on the slug.-f, --format <str>: Output format: table | json. [default: table]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc groups show¶
Show full detail for one group as JSON.
Usage:
Arguments:
name: Group slug name. [required]
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc groups services¶
List services that belong to a group (cursor-paginated).
Usage:
Arguments:
name: Group slug name. [required]
Options:
--cursor <str>: Pagination cursor from a previous page.--limit <int>: Page size (max records per page). [default: 50]--search <str>: Filter by partial service name.-f, --format <str>: Output format: table | json. [default: table]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc groups dispatch¶
One-shot HTTP through the group's gateway interface.
Body is written raw to stdout; the HTTP status line goes to stderr,
so usvc groups dispatch llm --json '{"messages": [...]}' > out.json
captures only the response body.
Usage:
Arguments:
name: Group slug name. [required]
Options:
--path <str>: Sub-path appended to the group interface base URL.-X, --method <str>: HTTP method. [default: POST]--json <str>: Request body as inline JSON.-d, --data <str>: Raw request body. Prefix with '@' to read from a file.-H, --header <str>: Extra header 'Key: Value'. Repeatable.--timeout <float>: Per-request timeout in seconds.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc files¶
Account files (ls, get, put, url). Paths start with personal/ or shared/.
Usage:
Options:
--help: Show this message and exit.
Commands:
ls: List one folder level of account files.get: Download one file (bytes stream storage →...put: Upload one file into a folder (bytes go...url: Print a short-TTL presigned download URL...
usvc files ls¶
List one folder level of account files.
Usage:
Arguments:
path: Virtual folder path (personal/... or shared/...); empty shows the roots.
Options:
-f, --format <str>: table | json. [default: table]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc files get¶
Download one file (bytes stream storage → disk directly).
Usage:
Arguments:
path: Virtual file path (personal/... or shared/...). [required]dest: Destination file or directory (default: basename in cwd).
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc files put¶
Upload one file into a folder (bytes go disk → storage directly).
The size ceiling is enforced by the server-signed upload policy; uploading to an existing name overwrites it.
Usage:
Arguments:
src: Local file to upload. [required]path: Virtual folder to upload into, e.g. personal, personal/reports, shared. [default: personal]
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc files url¶
Print a short-TTL presigned download URL (for scripts / sharing).
Usage:
Arguments:
path: Virtual file path (personal/... or shared/...). [required]
Options:
--expires <int>: URL validity in seconds (60-3600). [default: 900]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc services¶
Per-service operations (show, usage, interfaces, dispatch, schedule, enroll).
Usage:
Options:
--help: Show this message and exit.
Commands:
show: Show full service detail as JSON.usage: Show the structured access plan (how to...interfaces: List access interfaces dispatchable by...dispatch: One-shot HTTP through the service's...schedule: Schedule a recurring dispatch.enroll: Enroll in a service.
usvc services show¶
Show full service detail as JSON.
Usage:
Arguments:
service_id: Service UUID. [required]
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc services usage¶
Show the structured access plan (how to use this service) as JSON.
The plan is generic and context-free (#1638) — the enrollment posture, how to call the service, and per-channel pricing and secrets. It needs no API key. Rendering it to prose is the client's job; this prints the raw structure.
Usage:
Arguments:
service_id: Service UUID. [required]
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc services interfaces¶
List access interfaces dispatchable by this customer.
Usage:
Arguments:
service_id: Service UUID. [required]
Options:
-f, --format <str>: Output format: table | json. [default: table]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc services dispatch¶
One-shot HTTP through the service's gateway interface.
Body is written raw to stdout; HTTP status line goes to stderr.
Usage:
Arguments:
service_id: Service UUID. [required]
Options:
--interface <str>: Pick an interface by name (required when ambiguous).--enrollment <str>: Pick the interface bound to this enrollment UUID.--path <str>: Sub-path appended to the interface base URL.-X, --method <str>: HTTP method. [default: POST]--json <str>: Request body as inline JSON.-d, --data <str>: Raw request body. Prefix with '@' to read from a file.-H, --header <str>: Extra header 'Key: Value'. Repeatable.--timeout <float>: Per-request timeout in seconds.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc services schedule¶
Schedule a recurring dispatch. Prints the new recurrent-request as JSON.
Pick exactly one of --recurrence, --interval, or --cron.
Usage:
Arguments:
service_id: Service UUID. [required]
Options:
--recurrence <str>: Schedule as inline JSON (advanced — see SDK docs).--interval <int>: Sugar: fixed-interval schedule, in seconds.--cron <str>: Sugar: cron expression, e.g. '/5 * * * '.--timezone <str>: Timezone for --cron (ignored for --interval / --recurrence). [default: UTC]--interface <str>: Pick interface by name.--enrollment <str>: Pick interface by enrollment UUID.--path <str>: Sub-path appended to interface base URL.-X, --method <str>: HTTP method. [default: POST]--json <str>: Request body template as inline JSON.-H, --header <str>: Extra header 'Key: Value'. Repeatable.--name <str>: Optional human-friendly label.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc services enroll¶
Enroll in a service. Prints the new enrollment ID + status.
Usage:
Arguments:
service_id: Service UUID. [required]
Options:
--parameters <str>: Enrollment parameters as inline JSON object.-p, --parameter <str>: Single 'key=value' parameter (string-valued). Repeatable; merged with --parameters.--shared: Create a shared team enrollment instead of a personal enrollment.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc enrollments¶
Enrollment management (list, show, cancel).
Usage:
Options:
--help: Show this message and exit.
Commands:
list: List enrollments owned by the...show: Show one enrollment as JSON.cancel: Cancel an enrollment (sets...
usvc enrollments list¶
List enrollments owned by the authenticated customer.
Usage:
Options:
--skip <int>: Offset for pagination. [default: 0]--limit <int>: Max records to return. [default: 100]--no-service-details: Skip embedding the service detail payload (faster).--shared / --personal: List shared team enrollments or personal enrollments. [default: shared]-f, --format <str>: Output format: table | json. [default: table]--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc enrollments show¶
Show one enrollment as JSON.
Usage:
Arguments:
enrollment_id: Enrollment UUID. [required]
Options:
--no-service-details: Skip embedding the service detail payload (faster).--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc enrollments cancel¶
Cancel an enrollment (sets status=cancelled; preserves parameters).
Usage:
Arguments:
enrollment_id: Enrollment UUID. [required]
Options:
-y, --yes: Skip confirmation prompt.--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc preferences¶
Per-user preference management (set/clear).
Usage:
Options:
--help: Show this message and exit.
Commands:
set: Set (or clear) one named preference.notification-destination: Set (or clear) where your personal...request-log: Set (or disable) the request-logging mode...
usvc preferences set¶
Set (or clear) one named preference. Maps to POST /v1/customer/preferences/set.
--value is taken as a literal string by default; pass --json to
parse it as JSON instead (so --value true --json sends the boolean
true, not the string "true"). Omitting --value entirely
clears the preference.
Usage:
Arguments:
name: Preference name, e.g. 'notification-destination' or 'request-log'. [required]
Options:
--value <str>: New value. Omit to clear the preference (sends value: null).--json: Parse --value as JSON instead of a literal string (for non-string values future preferences may need).--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc preferences notification-destination¶
Set (or clear) where your personal notifications are delivered.
Usage:
Arguments:
service: Where personal notifications are delivered — a service path (e.g. 'labs/discord-relay'), or a 'b/<name>' broadcast / 'e/<CODE>' enrollment you own. Omit to clear (falls back to in-app delivery only).
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.
usvc preferences request-log¶
Set (or disable) the request-logging mode for the authenticated user.
Usage:
Arguments:
mode: 'truncated' (8 KB inline preview, no S3) or 'complete' (full body uploaded to S3). Omit to disable logging.
Options:
--api-key <str>: Customer API key (svcpass_...). Defaults to $UNITYSVC_API_KEY. [env var: UNITYSVC_API_KEY]--base-url <str>: Backend base URL. [env var: UNITYSVC_API_URL; default: https://api.unitysvc.com/v1]--help: Show this message and exit.