Reference
CLI
Overview

CLI Reference

The aio command-line interface for managing all AionixOne services.

Quick Start

# Deploy a function
aio fn deploy my-func --code ./src
 
# Invoke a function
aio fn invoke my-func --data '{"name": "World"}'
 
# Create and run a workflow
aio wf create order-flow --dsl workflow.yaml
aio wf run order-flow --input '{"orderId": "123"}'
 
# Create a cron trigger
aio tr create daily-report -t cron \
  --config '{"schedule": "0 0 9 * * *"}' \
  --action '{"target": "trn:stepflow:default:template/report"}'

Global Options

FlagShortTypeDefaultDescription
--output-ostringtableOutput format: table, json, yaml, wide
--quiet-qboolfalseQuiet mode (names/IDs only)
--verbose-vboolfalseVerbose output
--contextstringOverride current context
--tenantstringdefaultOverride tenant ID
--no-colorboolfalseDisable colored output
--rawboolfalseOutput raw API response
--api-basestringOverride API URL
--profilestringUse specific config profile
--http-timeoutstring30sHTTP client timeout

Reserved Short Options

These short options are reserved globally and cannot be used by subcommands:

-o  → --output   (global output format)
-q  → --quiet    (global quiet mode)
-v  → --verbose  (global verbose output)

Command Groups

CommandServiceDescription
aio fnAionixFnServerless function management
aio wfStepFlowWorkflow orchestration
aio trIgniterEvent triggers
aio actOpenActConnectors and actions
aio secCredVaultSecret management
aio paramParamStoreParameter management

TRN Resolution

Commands accept both full TRN and short names:

# Full TRN
aio wf run trn:stepflow:prod:template/order-flow
 
# Short name (uses current tenant)
aio wf run order-flow
 
# With explicit tenant
aio wf run order-flow --tenant prod

Output Formats

Table (default)

NAME              VERSION    STATUS     RUNTIME      UPDATED
────────────────────────────────────────────────────────────────
my-function       v3         active     python       2 hours ago
hello-world       v1         active     nodejs       5 days ago

Showing 2 of 2 functions

JSON (-o json)

{
  "success": true,
  "data": { ... },
  "metadata": { "requestId": "...", "timestamp": "..." }
}

Quiet (-q)

my-function
hello-world

Input Methods

Inline JSON

aio fn invoke my-func --data '{"key": "value"}'

From File (@ prefix)

aio fn invoke my-func --data @input.json
aio wf run my-workflow --input @workflow-input.yaml

Shell Completion

# Bash
aio completion bash > /etc/bash_completion.d/aio
 
# Zsh
aio completion zsh > ~/.zsh/completions/_aio
 
# Fish
aio completion fish > ~/.config/fish/completions/aio.fish

Configuration

The CLI uses a configuration file at ~/.aio/config.yaml:

current-context: default
 
contexts:
  default:
    api-base: http://localhost:53000
    tenant: default
 
  production:
    api-base: https://api.aionixone.com
    tenant: prod
 
profiles:
  default:
    output: table
    no-color: false

Switch contexts:

aio context use production
aio context current

Environment Variables

VariableDescription
AIONIX_API_BASEOverride API base URL
AIONIX_TENANTOverride tenant ID
AIONIX_API_KEYAPI key for authentication
AIONIX_CONFIGPath to config file
NO_COLORDisable colored output