Rust command-line client for Buda's /api/v1 OpenAPI surface.
export BUDA_API_KEY=buda_user_api_key
export BUDA_SYSTEM_ADMIN_KEY=sak_or_system_admin_secretThe default API base URL is https://buda.im/api/v1. Use --base-url or
BUDA_API_BASE_URL to point the CLI at local development, for example:
export BUDA_API_BASE_URL=http://localhost:3000/api/v1Every command also accepts --api-key, --system-admin-key, or --embed-token where relevant.
cargo run --manifest-path apps/buda-cli/Cargo.toml -- health
cargo run --manifest-path apps/buda-cli/Cargo.toml -- users me
cargo run --manifest-path apps/buda-cli/Cargo.toml -- spaces list
cargo run --manifest-path apps/buda-cli/Cargo.toml -- spaces create --name "Acme Device Fleet"
cargo run --manifest-path apps/buda-cli/Cargo.toml -- agents list --space-id org_abc123
cargo run --manifest-path apps/buda-cli/Cargo.toml -- drive upsert-file --space-id org_abc123 --agent-id agt_abc123 --path AGENT.md --content "Use Drive as source of truth."
cargo run --manifest-path apps/buda-cli/Cargo.toml -- chat create --space-id org_abc123 --agent-id agt_abc123 --message "Summarize AGENT.md"
cargo run --manifest-path apps/buda-cli/Cargo.toml -- system-admin statsResponses are printed as pretty JSON. Non-2xx responses exit with an error and include the response body.
cargo test --manifest-path apps/buda-cli/Cargo.tomlThe live public API test is ignored by default because it calls https://buda.im.
Run it explicitly when you want to verify the production default:
cargo test --manifest-path apps/buda-cli/Cargo.toml --test live_public_api -- --ignoredCurrent apps/buda /api/v1 OpenAPI routes covered by this CLI:
| Method | Path | CLI command |
|---|---|---|
GET |
/health |
buda health |
GET |
/meta |
buda meta |
GET |
/users/me |
buda users me |
GET |
/spaces |
buda spaces list |
POST |
/spaces |
buda spaces create |
GET |
/spaces/{spaceId}/agents |
buda agents list |
POST |
/spaces/{spaceId}/agents |
buda agents create |
GET |
/spaces/{spaceId}/agents/{agentId}/drive/files |
buda drive list-files |
PUT |
/spaces/{spaceId}/agents/{agentId}/drive/files |
buda drive upsert-file |
POST |
/spaces/{spaceId}/agents/{agentId}/chat-sessions |
buda chat create |
POST |
/spaces/{spaceId}/agents/{agentId}/embed-sessions |
buda embed create-session |
POST |
/spaces/{spaceId}/agents/{agentId}/embed-urls |
buda embed create-url |
POST |
/embed/chat-sessions/{sessionId}/messages |
buda embed post-message |
GET |
/embed/chat-sessions/{sessionId} |
buda embed get-session |
GET |
/agent-sessions |
buda agent-sessions list |
GET |
/agent-sessions/{id} |
buda agent-sessions get |
GET |
/system-admin/stats |
buda system-admin stats |
GET |
/system-admin/users |
buda system-admin users |
GET |
/system-admin/spaces |
buda system-admin spaces |
GET |
/system-admin/artifacts |
buda system-admin artifacts |
GET |
/system-admin/notifications |
buda system-admin notifications |
GET |
/system-admin/posts |
buda system-admin posts |
GET |
/system-admin/crm/contacts |
buda system-admin crm list-contacts |
POST |
/system-admin/crm/contacts/import |
buda system-admin crm import-contacts |