The Kadoa CLI lets you create, manage, and monitor web scraping workflows from the terminal. It wraps the SDK and works in interactive terminals, scripts, and CI/CD pipelines.
Prerequisites
Authentication
The CLI resolves your API key in this order:
--api-key <key> flag (highest priority)
KADOA_API_KEY environment variable
~/.kadoa/config.json (set via kadoa login)
# Interactive login (saves to ~/.kadoa/config.json)
kadoa login
# Or use environment variable
export KADOA_API_KEY=tk-your_api_key
# Or pass per-command
kadoa list --api-key tk-your_api_key
Check your current auth status:
kadoa whoami
# Name: John Doe
# Email: john@acme.com
# Team: Acme Corp (Admin)
# API Key: tk-abc****xyz1
Quick Start
# Create a workflow with a natural language prompt
kadoa create "Extract product names and prices" --url https://example.com/products
# List all workflows
kadoa list
# Run a workflow
kadoa run <workflowId>
# Fetch extracted data
kadoa data <workflowId>
Commands
Global Options
| Option | Description |
|---|
--api-key <key> | Override stored API key |
--json | Force JSON output |
-V, --version | Show version |
-h, --help | Show help |
Auth
| Command | Description |
|---|
kadoa login | Save API key to ~/.kadoa/config.json |
kadoa logout | Remove stored credentials |
kadoa whoami | Show current auth status |
Team Management
| Command | Description |
|---|
kadoa team list | List your teams and see which is active |
kadoa team switch [team] | Switch active team by name or ID |
Workflow Management
| Command | Description |
|---|
kadoa create <prompt> --url <url> | Create a new workflow. Use --entity <entity> to specify the entity type |
kadoa list | List all workflows. Flags: --state <state>, --format <fmt>, --limit <n> |
kadoa get <id> | Get workflow details |
kadoa run <id> | Run a workflow |
kadoa data <id> | Fetch extracted data. Flags: --limit <n>, --page <n>, --format <fmt> |
kadoa approve <id> | Approve and activate a workflow |
kadoa update <id> | Update workflow configuration. Flags: --prompt <prompt>, --schedule <schedule>, --limit <n> |
kadoa delete <id> | Delete a workflow. Use --force to skip confirmation |
Each command supports additional flags. Run kadoa <command> --help to see all options.
Shell Completion
Enable tab completions for workflow IDs, subcommands, and flags:
# Zsh — add to ~/.zshrc
eval "$(kadoa completion zsh)"
# Bash — add to ~/.bashrc
eval "$(kadoa completion bash)"
For usage examples of each command, see Create Workflows and Manage Workflows.
The CLI outputs formatted tables in interactive terminals and JSON when piped or redirected. Override with --json or --format.
kadoa list --json # Force JSON
kadoa data <id> --format csv # CSV output
kadoa list --json | jq '.[].id' # Pipe to jq
kadoa data <id> --format csv > data.csv # Save to file
For CI/CD usage, see GitHub Actions.