BindOffice / Bind Meet 命令行客户端。配置 BindOffice 的 base URL 与 API key 后,即可直接调用文档中 /api/... 的 REST 接口,或使用内置的快捷命令(mail/drive/calendar 等)。
- 通用 API 调用:提供
api命令直接调用任意/api/...端点 - 快捷命令:对常用业务域提供封装命令(mail、drive、calendar 等)
- 默认更安全的凭证存储:API key 默认存 OS Keyring,也支持降级方案
- 适合自动化:JSON 输出、
--output二进制安全写文件、shell 补全
| 业务域 | 命令 |
|---|---|
| 邮箱 | mail(list/detail/search/send/labels/flags/…) |
| 网盘 | drive |
| 文档 | doc |
| 日历 | calendar |
| 聊天 | chat |
| 通讯录 | contacts |
| 看板 | kanban |
| 表格 | sheets |
| 幻灯片 | slides |
| 笔记 | note |
| 会议 | meet |
| 搜索 | search |
- Go
v1.23+ - BindOffice 实例地址与 API key
go install github.com/bindoffice/bind-cli@latest或从源码构建:
git clone https://github.com/bindoffice/bind-cli.git
cd bind-cli
go build -o bind-cli .# 1) 设置 base URL
bind-cli config set base-url https://office.example.com
# 2) 设置 API key(默认存入 OS keyring)
bind-cli config set api-key YOUR_KEY
# 3) 自检
bind-cli doctorbind-cli 使用 Basic auth(用户名固定为 api)与 API key 进行认证:
Authorization: Basic base64("api:"+API_KEY)
# 查看生效配置(敏感信息会被 mask)
bind-cli config show
# 输出配置文件路径(默认:~/.bind-cli/config.json)
bind-cli config path
# 将 API key 写入配置文件(不推荐,风险更高)
bind-cli config set api-key --file YOUR_KEY
# 同时清除 keyring 与配置文件中的 key
bind-cli config unset api-keybind-cli auth login
bind-cli auth status
bind-cli auth logout这些会覆盖文件/keyring 中的配置:
BIND_CLI_BASE_URL: 覆盖 base URLBIND_API_BASE: base URL 别名BIND_CLI_API_KEY: 覆盖 API keyBIND_CLI_CONFIG_DIR: 覆盖配置目录(默认:~/.bind-cli)
直接调用任意 BindOffice 端点:
bind-cli api GET /api/mail/list --params '{"label":"inbox","page":1,"page_count":20}'
bind-cli api GET /api/mail/detail/1
bind-cli api POST /api/mail/send --data '{"to":"a@b.com","subject":"Hi","text":"Hello"}'常用 flags:
--format json|pretty
--params '{}' # JSON object -> query string
--data '{}' # raw JSON request body
--output file # 将响应体写入文件(二进制安全)
--dry-run # 只打印 URL,不发请求
--insecure # 跳过 TLS 校验(不推荐)bind-cli mail list --label inbox
bind-cli mail detail 123
bind-cli mail search --keyword "invoice"
bind-cli mail send --to "a@b.com" --subject "Hi" --body "Hello"# zsh
source <(bind-cli completion zsh)
# bash
source <(bind-cli completion bash)该工具会使用你的 API key 对 BindOffice 实例执行操作,请像对待密码一样对待 API key:
- 不要在聊天/Issue/日志中粘贴 API key
- 优先使用 OS keyring 存储(默认行为)
- 非必要不要使用
--insecure