BlueDoc GraphQL API参考:文档、评论与目录接口完全说明

发布时间:2026/10/21 22:16:03

BlueDoc GraphQL API参考:文档、评论与目录接口完全说明 BlueDoc GraphQL API参考文档、评论与目录接口完全说明【免费下载链接】bluedocAn open-source document management tool for enterprise self host.项目地址: https://gitcode.com/gh_mirrors/bl/bluedocBlueDoc 是一款面向企业的开源自托管文档管理工具内置完整的 GraphQL API让你可以用一条接口同时操作文档、评论与目录TOC非常适合做二次开发或对接自研系统。本文是一份完整的 BlueDoc GraphQL API 参考覆盖查询Query与变更Mutation两大类接口、核心数据类型的字段说明以及可直接套用的请求示例看完即可上手调用。 快速开始发送第一个 GraphQL 请求BlueDoc 的 GraphQL 入口由 GraphQLControllerapp/controllers/graphql_controller.rb提供采用标准的 GraphQL 调用方式请求方式POST到服务的 GraphQL 端点请求体JSON包含query查询语句、variables变量支持 JSON 字符串或对象、operationName认证方式基于会话的登录态Devise登录后调用即可权限校验由 CanCanCan 自动完成默认分页分页接口默认每页 50 条见app/graphql/bluedoc_schema.rb最简请求示例——先用测试接口hello验证连通性query { hello }登录后调用会返回带用户名问候的内容是验证会话与接口是否打通的最佳方式。 文档与目录查询接口Query查询类型定义在app/graphql/queries/目录下各 Query 按职责拆分到不同文件核心能力如下获取单篇文档doc(id)按 ID 精确获取一篇文档返回Doc类型常用字段包括字段说明slug文档唯一标识path文档完整路径title文档标题bodyMarkdown 正文body_smlSML 格式正文主要内容载体body_html渲染后的 HTML 结果last_editor最后编辑人User 类型toc文档对应的目录节点query { doc(id: 101) { slug title path body last_editor { name } } }获取知识库目录树repository_tocs(repositoryId)一次性拿到整个知识库Repository的目录列表自动按目录树顺序toc order返回若知识库未启用目录则按文档创建顺序返回是渲染侧边栏导航的首选接口。分页获取知识库文档repositoryDocs支持分页与排序适合做文档列表页repositoryId必填知识库 IDpage页码默认 1per每页条数默认 20sort排序方式created按创建顺序或最近更新全局搜索search(type, query)search接口支持按类型搜索type可取user、group、repository、doc搜索文档时可传repositoryId限定在指定知识库内此时允许命中私有文档limit控制结果数量默认 10。搜索结果包含总数total与记录集records底层由lib/bluedoc/search.rb的搜索组件驱动。 评论与行内评论接口评论相关接口在app/graphql/queries/comments_query.rb与inline_comments_query.rb中实现支持两种评论形态普通评论comment(id)按 ID 获取单条评论返回Comment类型comments(...)分页获取某对象下的全部评论参数如下参数说明commentableType被评论对象类型如DoccommentableId被评论对象主键nid行内评论锚点 ID可选page/per分页参数默认第 1 页、每页 20 条Comment类型字段包含bodyMarkdown 内容、body_sml、body_html、user评论人、parent_id与reply_to父评论天然支持楼中楼并内置表情回应Reaction能力。 获取评论列表的同时接口会自动把当前用户对应的通知标记为已读无需额外调用。行内评论InlineCommentinline_comments(subjectType, subjectId)获取文档下所有带回复的行内评论当前支持Docinline_comment(id)按 ID 获取单条行内评论行内评论通过nid锚点绑定到文档中的具体选区是做划词评论功能的核心。✏️ 变更接口Mutation速查表所有 Mutation 集中注册在app/graphql/types/mutation.rb按功能分为四组 文档操作接口说明关键参数createDoc在知识库中创建新文档repositoryId必填、slug可选deleteDoc删除文档文档 ID 目录操作接口说明关键参数createToc创建目录节点repositoryId、title、external是否仅创建外链节点、targetIdposition插入位置left/right/childmoveToc移动目录节点实现排序/缩进id、targetId、positionupdateToc更新目录节点节点 ID 与更新字段deleteToc删除目录节点节点 IDcreateToc很灵活external为false时会同时创建一篇空文档并挂到目录树上为true时仅创建外链目录项二者都能通过targetIdposition精确控制插入位置适合自动批量生成文档结构。 评论与表情操作接口说明关键参数createComment发表评论commentableType、commentableId、body、body_sml、parentId回复时、nid行内评论时createInlineComment发表行内评论锚点与内容参数updateComment修改评论评论 ID 与新内容deleteComment删除评论评论 IDwatchComments关注/取消关注评论评论对象updateReaction设置或取消表情回应目标对象与表情发表评论的完整示例mutation { createComment( commentableType: Doc commentableId: 101 body: 这段内容建议补充示例 body_sml: 这段内容建议补充示例 ) { id body user { name } } } 核心返回类型一览类型定义位于app/graphql/types/目录Docdoc_type.rb文档主体含多格式正文与目录节点Comment / Commentscomment_type.rb单条评论与分页评论集合集合类型records返回当前页数据Toctoc_type.rb目录节点含parent_id、depth层级深度、title、url、doc_id用depth即可在前端还原树形结构PageInfopage_info_type.rb统一分页信息所有分页接口均附带方便前端做翻页Useruser_type.rb用户基础信息评论人、最后编辑人等字段均引用该类型 权限与错误处理每个接口内部都通过authorize!做细粒度权限校验CanCanCan无权限时会返回CanCan::AccessDenied的错误消息记录不存在时统一返回Record not found开发环境下出错会返回详细堆栈生产环境只暴露错误消息方便排查又不泄露内部信息 小结BlueDoc 的 GraphQL API 用一套统一入口覆盖了文档管理、目录编排、评论互动三大场景查询侧提供doc、repositoryDocs、comments、search等读取接口变更侧提供createDoc、createToc、moveToc、createComment等写入接口配合统一的分页与权限体系足以支撑完整的文档协作平台二次开发。建议先用hello接口验证连通性再按查文档 → 拉目录 → 读写评论的顺序逐步接入。【免费下载链接】bluedocAn open-source document management tool for enterprise self host.项目地址: https://gitcode.com/gh_mirrors/bl/bluedoc创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/21 19:50:31

多智能体协同路由:级联感知与时空Sidecar架构实践

1. 项目概述:当多智能体遇上“级联效应” 最近在折腾一个多智能体协同路由的项目,核心要解决的问题,听起来有点绕,但场景其实很常见:想象一下,在一个大型的物流中心,你有几十台AGV小车&#xff…

2026/10/20 0:11:28

Soundflower 卸载与残留清理步骤

Soundflower 卸载与残留清理步骤 【免费下载链接】Soundflower MacOS system extension that allows applications to pass audio to other applications. Soundflower works on macOS Catalina. 项目地址: https://gitcode.com/gh_mirrors/so/Soundflower Soundflower …

2026/10/18 7:33:34

从“重复率焦虑”到“一键过审”,我实测了这些降重工具

又到毕业季,相信不少同学正在经历被“查重报告”支配的恐惧。作为一个刚熬过终审的过来人,我几乎把市面上热门的AI写作和降重工具都试了个遍。今天不聊虚的,直接结合我手头的实测数据,聊聊PaperRed、笔杆、Passyyds以及国外大模型…

2026/10/21 22:11:27

知识工作插件体系实战:从信息捕获到知识沉淀的完整方案

我一直觉得,现在做知识工作的人,手头缺的不是信息、不是工具,而是一套能把工具串起来的思路。浏览器里塞了十几个扩展,笔记软件装了一堆插件,收藏夹越攒越长,但真正用起来的时候,还是觉得哪里都…

2026/10/21 22:11:27

lingbot-map:面向机器人场景的统一地图模块设计与实践

1. 项目定位与核心需求解析1.1 lingbot-map 到底是做什么的lingbot-map 这个名字乍一看有点不明所以,但你把它拆开就清楚了:lingbot 指的是一套机器人相关平台或移动端应用框架,map 则是地图模块。合在一起,它就是一个为机器人场景…

2026/10/21 22:11:27

大模型本地化部署实战:从显存规划到推理性能调优

把大模型从云端API搬回自己的服务器,是我这半年做得最多的一件事。本地化部署这个词听起来像是专职运维的事,但你真用起来会发现,搞数据分析、做内部知识库、做内容辅助生产的人,需求高度一致:数据不能出内网、按次调用…

2026/10/21 22:11:27

技能盘点与迭代:从模糊技能到可验证的四层技能管理体系

skills这个词,大概是技术招聘和简历里出现频率最高的词汇了。招聘网站上随便点开一个岗位,技能清单能列出一长串;各种学习路线图、技能地图、能力模型也满天飞。但说实话,我见过太多人(包括我自己早期)陷入…

2026/10/21 22:11:27

Windows异步IO详解:从OVERLAPPED到IOCP完成端口的高并发方案

1. 为什么需要异步IO,以及Windows给出的答案聊到Windows系统编程,异步IO算是一座绕不过去的大山。同步IO其实很简单——你调一个ReadFile,线程就卡在那儿,直到数据从磁盘或者网卡上读进来才返回。这个过程在单线程程序里没什么问题…

2026/10/21 22:06:26

云平台一键部署开源AI助理框架:从Docker到专属智能体完全指南

最近技术社区里突然流行起一句话:快来养小龙虾。别误会,这不是养殖业的新风口,而是大家在折腾一个开源的AI助理框架。因为项目图标看起来像小龙虾的钳子,社区里就给它起了这个外号。把它部署到某云平台之后,通过一键部…

2026/10/21 4:53:08

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/21 0:00:35

交通流仿真实战:IDM跟驰与MOBIL换道模型参数调优与避坑指南

简介:这份资源是面向交通工程学习者与Python开发者的微观交通流仿真项目,核心实现智能驾驶模型(IDM)下的车辆跟驰与换道行为,可用于理解速度、密度与流量之间的动态关系,适合具备Python基础、希望深入交通模…

2026/10/21 0:00:35

揭穿智能体表面顺从:用追踪代码重建任务执行确定性

1. 表面顺从不是智能体的“礼貌”,而是任务执行链路上的隐性断点最近在调试一个跨平台长周期任务调度系统时,我反复遇到一种令人困惑的现象:智能体在用户指令发出后,几乎秒级响应“已收到”“正在处理”“请稍候”,UI上…

2026/10/21 0:00:35

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑