Skip to content

端点

/api/history/rollbackDocHistory

回滚单个文档历史

源文件 (GitHub, 推测位置)

需要认证 需要管理员权限 只读模式下不可用

接口描述

单个文档恢复到其在指定历史快照中的状态。此操作会将指定的历史 .sy 文件复制到当前工作空间,覆盖具有相同文档 ID 的现有文件(如果存在)。

重要注意事项:

  • 此操作仅恢复文档本身的 .sy 文件,不会恢复该文档可能引用的图片或其他资源文件。
  • 它会直接覆盖当前工作区中的同 ID 文档,没有合并机制。当前文档的内容将丢失。
  • 此操作不会删除任何历史记录,与回滚整个工作空间的操作不同。
  • 建议在执行此操作前,先使用 /api/history/getDocHistoryContent 预览历史内容。

请谨慎使用,建议在操作前备份相关文档。

请求参数 (JSON Body)

参数名类型必选描述
notebookstring目标文档当前(或应该恢复到)所属的笔记本 ID。
historyPathstring要恢复的目标历史文档文件的绝对路径(相对于工作空间 data/ 目录),例如: /history/20231027110000/20231027105900-abcdefg/20231027105901-hijklmn.sy

返回值

参数名类型描述
codenumber返回码,0 表示成功,非 0 表示失败。
msgstring错误信息,成功时为空字符串。
dataobject包含操作结果信息。
data.boxstring操作的笔记本 ID。

请求示例

返回示例

请求示例

POST /api/history/rollbackDocHistory HTTP/1.1
Host: 127.0.0.1:6806
Content-Type: application/json
Authorization: Token your-api-token

{
  "notebook": "20231027105900-abcdefg",
  "historyPath": "/history/20231027110000/20231027105900-abcdefg/20231027105901-hijklmn.sy"
}

返回示例 (成功)

{
  "code": 0,
  "msg": "",
  "data": {
    "box": "20231027105900-abcdefg"
  }
}

返回示例 (失败 - 历史文件不存在)

{
  "code": 0,  
  "msg": "", 
  "data": {
    "box": "20231027105900-abcdefg"
  }
}

注意:即使历史文件不存在,此 API 目前也可能返回成功 (code 0),因为底层函数未返回错误。建议通过后续检查确认文档是否真的被恢复。