Expand description
§OpenLark 文档服务模块
飞书开放平台云文档服务模块,提供文档、表格、知识库等 API 访问能力。
Docs helper 的设计与命名规范见 docs/docs-helper-guidelines.md。
§文档模块业务域结构 (严格按照 bizTag/project/version/resource 组织)
§CCM - 云文档协同 (174 APIs)
- docx: 新版文档块与群公告(19 APIs)
- drive: 云空间文件管理(59 APIs)
- sheets: 电子表格(27 APIs)
- wiki: 知识库(16 APIs)
- doc: 文档基础服务
- docs: 云文档管理
§BASE - 基础服务 (49 APIs)
- base: 基础应用服务
- bitable: 多维表格(46 APIs)
§BAIKE - 企业知识库 (27 APIs)
- baike: 知识库空间和节点
- lingo: 知识库分类和实体
§MINUTES - 会议纪要 (4 APIs)
- minutes: 会议转录和纪要管理
§快速开始
ⓘ
use openlark_core::config::Config;
use openlark_docs::DocsClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let config = Config::builder()
.app_id("app_id")
.app_secret("app_secret")
.build();
let client = DocsClient::new(config);
// 获取配置后构建 Request
let config = client.ccm.config().clone();
// 使用 openlark_docs::ccm::drive::v1::file::UploadAllRequest
// 高频读取场景也可以直接使用 helper
let _records = client.search_bitable_records_all("app_token", "table_id").await?;
let _sheet = client.find_sheet_by_title("spreadsheet_token", "2026").await?;
let _range = client
.resolve_sheet_range_by_title("spreadsheet_token", "2026", "A1:C5")
.await?;
let _ranges = client
.read_sheet_ranges("spreadsheet_token", vec![_range.clone()])
.await?;
let _bytes = client.download_drive_file("file_token").await?;
let _records = client
.query_bitable_records(
openlark_docs::BitableRecordQuery::new("app_token", "table_id")
.where_equals("状态", "进行中"),
)
.await?;
let _wiki_node = client
.find_wiki_node_by_path("space_id", "产品文档/发布计划")
.await?;
let mut pager = client.folder_children_pager("folder_token").page_size(50);
let _first_page = pager.fetch_next_page().await?;
Ok(())
}§特性
- ✅ 202 APIs 全覆盖 - 飞书云文档服务完整实现(不含旧版本)
- ✅ 类型安全 - 强类型请求/响应结构
- ✅ 异步支持 - 基于 tokio 的异步 API
- ✅ 版本化 API - 支持 v1/v2/v3/v4 多版本 API
- ✅ 构建器模式 - 流畅的 API 调用体验
- ✅ 标准架构 - 严格按照 bizTag/project/version/resource/name.rs 模式组织
Re-exports§
pub use common::chain::DocsClient;pub use common::chain::TypedPage;
Modules§
Macros§
- api_url
- 标准化API端点URL生成辅助宏
- build_
api_ path - 路径构建宏 用于统一构建API路径
- impl_
api_ builder - 实现API请求构建器的通用宏
- impl_
base_ api_ fields - 实现基础API请求字段的宏 包含常用的字段如 app_token, table_id 等
- impl_
executable_ builder - 核心宏:为Builder类型自动实现ExecutableBuilder trait
- impl_
executable_ builder_ owned - 为使用值类型参数的Builder实现ExecutableBuilder trait
- impl_
fluent_ builder - 简化的流式构建器宏
- impl_
required_ builder - 强制构建器宏
- impl_
response_ data - 响应数据结构体宏 统一响应结构的基本字段
- validate_
required - 参数验证宏 用于统一验证必填参数