Install and use the official Copera CLI to manage boards, tables, rows, docs, and messaging from your terminal — or integrate it into LLM agent pipelines.
copera-cli
Official CLI for the Copera Public API
copera is the official command-line interface for Copera. Manage boards, tables, rows, docs, and messaging from your terminal — or integrate it into LLM agent pipelines.
# First time: set up authcopera auth login# Or use an environment variable (recommended for CI/CD and agents)export COPERA_CLI_AUTH_TOKEN="your_api_token"# List your boardscopera boards list# Browse your docscopera docs tree
copera auth login # Interactive auth setupcopera auth status # Show current token and sourcecopera auth logout # Remove stored credential
Boards
Copy
copera boards list # List all accessible boardscopera boards list --json # JSON output (for scripting)copera boards get <id> # Get board detailscopera bases list # Alias for boards list
Tables
Copy
copera tables list # List tables (uses default board)copera tables list --board <board-id> # List tables in specific boardcopera tables get <table-id> # Get table schema and columnscopera tables get <id> --board <board-id>
Rows
Copy
copera rows list # List rows (uses defaults)copera rows list --board <id> --table <id> # Explicit IDscopera rows get <row-id> # Get row with resolved labelscopera rows create --data '{"columns":[...]}' # Create a rowecho '{"columns":[...]}' | copera rows create # Create from stdin
Docs
Docs commands require a Personal Access Token (cp_pat_...).
Copy
copera docs tree # Tree view of workspace docscopera docs tree --parent <id> # Subtree under a specific doccopera docs search "keyword" # Full-text searchcopera docs get <id> # Get doc metadatacopera docs content <id> # Get markdown content (cached)copera docs content <id> --no-cache # Bypass cachecopera docs create --title "New Doc" # Create a doccopera docs update <id> --content "..." # Update contentcopera docs update <id> --operation append # Append contentcat content.md | copera docs update <id> # Update from stdincopera docs delete <id> --force # Delete a doc
Cache & Utilities
Copy
copera cache status # Show cache location and sizecopera cache clean # Remove all cached datacopera version # Show versioncopera version --json # Version as JSON
Profiles group a token and default resource IDs together. Create ~/.copera.toml:
Copy
# Set the default profiledefault_profile = "work"[profiles.default]token = "cp_pat_abc123..."board_id = "66abc123def456789012abcd"[profiles.work]token = "cp_key_xyz789..."board_id = "66ghi789jkl012345678mnop"table_id = "66pqr012stu345678901vwxy"[output]format = "auto" # auto | json | table | plain[cache]ttl = "1h"
Switch profiles with --profile or COPERA_PROFILE:
Copy
copera boards list # uses default_profilecopera boards list --profile work # uses [profiles.work]COPERA_PROFILE=work copera boards list # same, via env var
For project-level shared defaults (no tokens — safe to commit), create a .copera.toml in your project root. For project-local token overrides, use .copera.local.toml and add it to .gitignore.