Skip to main content

Common Commands

This page is a quick reference for the most-used copera commands. Run copera <command> --help for the full list of flags and examples for any command.

tip

Many commands accept --json for machine-readable output. The CLI also auto-switches to JSON when stdout is piped to another command — see Configuration → Machine-readable output.

Auth

copera auth login                  # Guided browser flow
copera auth login --token=cp_pat_xxx
copera auth status # Show active profile + token source
copera auth whoami # Show who the token belongs to
copera auth logout # Remove stored credential

See Authentication for details on token types and login flows.

Boards and tables

copera boards list
copera boards get <board-id>

copera tables list --board <board-id>
copera tables get <table-id> --board <board-id>
copera tables export <table-id> --board <board-id> --view <view-id> \
--format CSV -o out.csv
note

copera bases is a built-in alias for copera boards — use whichever feels natural.

Rows

The CLI exposes the full row lifecycle — create, read, update, delete — plus row-level metadata like descriptions and comments.

copera rows list   --board <board-id> --table <table-id>
copera rows get <row-id> --board <board-id> --table <table-id>

copera rows create --board <board-id> --table <table-id> \
--data '{"columns":[{"columnId":"<column-id>","value":"Hello"}]}'

copera rows update <row-id> --board <board-id> --table <table-id> \
--data '{"columns":[{"columnId":"<column-id>","value":"Updated"}]}'

copera rows delete <row-id> --board <board-id> --table <table-id> --force

Descriptions and comments

copera rows description       <row-id> --board <board-id> --table <table-id>
copera rows update-description <row-id> --board <board-id> --table <table-id> \
--content "New description"

copera rows comment <row-id> --board <board-id> --table <table-id> \
--content "Looks good"
copera rows comments <row-id> --board <board-id> --table <table-id>

Stdin support

rows create, rows comment, and similar commands accept piped input:

echo '{"columns":[{"columnId":"<column-id>","value":"Hello"}]}' \
| copera rows create --board <board-id> --table <table-id>

echo "Looks good" \
| copera rows comment <row-id> --board <board-id> --table <table-id>

Docs

Docs commands require a Personal Access Token (cp_pat_...).

copera docs tree
copera docs tree --parent <doc-id>
copera docs search "keyword"
copera docs get <doc-id>
copera docs content <doc-id>

copera docs create --title "New Doc" --content "Initial content"
copera docs update <doc-id> --content "Replacement content"
copera docs update <doc-id> --operation append --content "More content"

copera docs metadata <doc-id> --title "New title"
copera docs delete <doc-id> --force

Drive

Drive commands require a Personal Access Token with drive access.

copera drive tree
copera drive tree --parent <folder-id>
copera drive search "quarterly report"

copera drive get <file-id>
copera drive download <file-id> -o report.pdf

copera drive upload ./report.pdf --parent <folder-id>
copera drive upload ./project/ --parent <folder-id> # recursive

copera drive mkdir "New Folder"

Uploads support multipart transfer, configurable chunk size, concurrent part uploads, progress output in interactive terminals, and recursive directory upload.

Channels

copera channels message send "Hello" --channel <channel-id>

# Or from stdin
echo "Deploy done" | copera channels message send --channel <channel-id>

Messages support Markdown — headings, bold/italic, lists, code blocks, links.

Workspace, search, and notifications

copera workspace info
copera workspace members
copera workspace teams

copera search "contract"
copera search "contract" --type document --type driveContent

copera notifications list
copera notifications read <notification-id>
copera notifications unread <notification-id>
copera notifications delete <notification-id> --force

Cache and utilities

copera cache status
copera cache clean

copera version
copera version --json

copera completion bash
copera completion zsh
copera completion fish

Pipe the completion output into your shell's startup file. For example:

copera completion zsh >> ~/.zshrc

Then restart your shell or run source ~/.zshrc to activate tab completion.