V2
对象模型
了解 V2 API 中的核心对象结构,包括 user、page、database 和 block。
对象模型
适用范围
本页定义 V2 API 中最基础、最常被复用的对象外形。这里关注“对象长什么样”,不解释具体接口的权限、分页、过滤或写入规则。
核心定义
| 对象 | 说明 |
|---|---|
user | 普通用户对象,表示可被引用的成员或访客。 |
bot_user | 当前 token 对应的集成身份。 |
page | 页面对象,承载页面元数据和页面属性。 |
database | 数据库对象,承载数据库标题、描述和属性 schema。 |
block | 内容块对象,承载页面正文、结构和嵌套内容。 |
list | 统一分页列表包装。 |
search_result | 语义搜索返回的结果对象。 |
字段说明或规则
user
user 用于表示具体的人或可被引用的身份。典型字段包括 id、type、name、avatar_url 和 person。
object固定为"user"id是用户的唯一标识person.email是否可见,取决于是否具备users.email.read
bot_user
bot_user 描述当前 token 所代表的集成身份,而不是创建集成的人本身。
object固定为"bot_user"workspace_id和workspace_name标识所属空间owner是创建者的user引用capabilities展示当前 token 可用的能力集合type固定为"integration"integration_id关联外部集成身份
page
page 表示页面实体,既可以是普通页面,也可以是文件夹或思维导图等 FlowUs 扩展页面类型。
object固定为"page"page_type是 FlowUs 扩展字段,取值为"page"、"folder"或"mind_map"parent可以指向 workspace、page、database 或 blockproperties是页面属性值集合,具体字段定义见 页面属性模型icon、cover可以为null
database
database 表示数据库实体,用来组织结构化数据。
object固定为"database"title和description都是rich_text数组properties是数据库属性 schema,具体字段定义见 页面属性模型is_inline表示是否为行内数据库parent可以指向 workspace 根级、页面或数据库- 当对象位于工作区根级时,
parent可能是{ type: "workspace", workspace: true }
block
block 表示可嵌套的内容块,是页面正文和结构的基础单元。
object固定为"block"type决定当前块的内容外形,完整类型集见 Block 类型has_children表示是否还有子块in_trash表示是否已进入回收站parent可以指向 workspace 根级、页面、数据库或其他块- 当对象位于工作区根级时,
parent可能是{ type: "workspace", workspace: true }
list
list 是统一分页包装。
object固定为"list"results是当前页结果数组has_more表示是否还有下一页next_cursor是下一页游标,无更多数据时为null
list 只定义外壳,不限定 results 中一定是同一种对象;具体元素类型由对应接口决定。
search_result
search_result 用于语义搜索结果,而不是普通的页面或数据库对象。
object固定为"search_result"page_id和page_title用于定位结果来源score表示匹配分数,可能为nullsnippet是可展示的命中摘要url指向结果页面
常见注意事项
page和database都是“对象”,但一个表达页面,一个表达结构化集合,不要把它们当成同一类资源。page_type只在page上出现,是 FlowUs 扩展字段,不要把它当成独立对象类型。search_result只出现在语义搜索场景,不等同于关键词搜索返回的页面或数据库对象。
