开放接口
Dinox 开放接口说明,包含语音创建笔记、文本创建笔记、笔记属性和笔记列表。笔记列表可按卡片盒过滤。
API 接口说明
Dinox 提供开放接口,方便你在自己的脚本或第三方应用里创建和读取笔记。本页介绍常用接口:语音创建笔记、文本创建笔记、笔记属性、笔记列表。
要把外部软件里的内容按编号反复同步进 Dinox,请阅读 导入 API。
需要下载已保存的 Agent Skills?请阅读 Skills API,包含技能列表、短期下载链接与版本同步;其 Bearer 认证格式和限流以该页说明为准。
基础信息
- 基础域名:
https://aisdk.chatgo.pro - 路径前缀:
/api/openapi - 限流:每个 Token 每小时 200 次
认证方式
所有接口都需要在请求头中携带 Token:
Authorization: <你的Token>Token 获取方式:在 Dinox App → 设置 → 同步设置 → API Token 中获取。
请妥善保管 Token
Token 等同于你的账号凭证,请勿泄露或提交到公开仓库。
1. 语音创建笔记
上传一段音频,自动转录文字并创建为一条笔记;可以同时附带图片,插入到转录文字末尾。
接口地址
POST /api/openapi/voice/input请求参数(multipart/form-data)
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| audio | File | 是 | 音频文件(支持 MP3、WAV、M4A、AAC 等) |
| duration | number | 否 | 音频时长(秒) |
| images | File | string | 否 | 要插入的图片,可重复传多个。可以是图片文件(单张不超过 20MB),也可以是 http(s) 图片链接 |
| imageUrls | string | 否 | 图片链接,可重复传多个;也可以在一个字段里传 JSON 数组,如 ["https://a.com/1.png","https://a.com/2.png"] |
插入图片
- 图片会按传入顺序插入到转录文字的末尾,一次最多 20 张,图片文件和图片链接可以混用
- 上传的图片文件会保存到 Dinox;图片链接会原样插入笔记,请确保链接可以公开访问
- 图片不符合要求(格式不是图片、超过大小或数量、链接无效)时返回
code: "000006",不会创建笔记
请求示例
curl -X POST https://aisdk.chatgo.pro/api/openapi/voice/input \
-H "Authorization: <你的Token>" \
-F "audio=@recording.mp3"带图片:
curl -X POST https://aisdk.chatgo.pro/api/openapi/voice/input \
-H "Authorization: <你的Token>" \
-F "audio=@recording.mp3" \
-F "images=@photo1.jpg" \
-F "images=@photo2.png" \
-F "images=https://example.com/cover.png"响应示例
{
"code": "000000",
"msg": "success",
"data": {
"noteId": "01HQXXX..."
}
}2. 文本创建笔记
用 Markdown 文本快速创建一条笔记,可指定标题、标签、卡片盒,以及你已经建好的属性。
接口地址
POST /api/openapi/text/input请求参数(application/json)
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| content | string | 是 | 笔记内容(Markdown 格式) |
| title | string | 否 | 笔记标题 |
| type | string | 否 | 笔记类型:note(默认)或 crawl(素材) |
| tags | string[] | 否 | 标签数组 |
| zettelBoxNames | string[] | 否 | 卡片盒名称数组(自动匹配已有卡片盒) |
| createdAt | string | 否 | 自定义创建时间(ISO 8601),用于导入历史笔记 |
| properties | object | 否 | 笔记属性。键必须是已有属性的 key,见下方「列出已有属性」 |
请求示例
{
"content": "# 会议纪要\n\n今天讨论了项目进度",
"title": "项目会议",
"tags": ["工作", "会议"],
"zettelBoxNames": ["工作笔记"],
"properties": {
"阅读进度": "在读",
"阅读评分": 9
}
}响应示例
{
"code": "000000",
"msg": "success",
"data": {
"noteId": "01HQXXX...",
"updatedAt": "2026-03-04T12:00:00.000Z",
"properties": {
"阅读进度": "opt_reading",
"阅读评分": 9
}
}
}导入历史笔记
传入 createdAt 可以指定笔记的创建时间,适合从其他笔记应用迁移历史数据。
属性要先在 App 里建好
接口不会新建属性。请先在 App 的属性库里创建,再用下面的接口查出 key。单选、多选、状态可以填选项的显示名,保存后返回的是选项 id。进度类数字用 0 到 1,0.65 表示 65%;评分是 0 到 5 的整数。自动编号只要带上该属性的 key,号码由服务端生成。属性不存在或值不合法时,这次创建会失败。属性的用法见 属性、模板与视图。
3. 列出已有属性
查询当前账号里未删除的属性,创建笔记时用返回的 key。
接口地址
GET /api/openapi/knowledge/properties请求示例
curl https://aisdk.chatgo.pro/api/openapi/knowledge/properties \
-H "Authorization: <你的Token>"响应示例
{
"code": "000000",
"msg": "success",
"data": {
"properties": [
{
"key": "阅读进度",
"name": "阅读进度",
"type": "select",
"description": null,
"showOnCard": false,
"options": [
{ "id": "opt_reading", "label": "在读" },
{ "id": "opt_done", "label": "读完" }
]
},
{
"key": "阅读评分",
"name": "阅读评分",
"type": "number",
"description": null,
"showOnCard": false,
"numberPreset": "rating"
}
]
}
}numberPreset 为 progress 时,创建笔记请传 0 到 1;为 rating 时传 0 到 5 的整数。unique_id 类型会多返回 uniqueIdPrefix,创建时不用自己填号码。
4. 笔记列表
获取笔记列表,按日期分组返回。可以做增量同步,也可以只拉取指定卡片盒里的笔记。
接口地址
POST /api/openapi/listNotes请求参数(application/json)
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| lastSyncTime | string | 否 | 上次同步时间(ISO 8601),只返回该时间之后更新的笔记 |
| zettelBoxIds | string | string[] | 否 | 按卡片盒 ID 过滤。可以传一个 ID,也可以传一组 |
| zettelBoxNames | string | string[] | 否 | 按卡片盒名称过滤,名称必须完全一致。可以传一个名称,也可以传一组 |
按卡片盒过滤
zettelBoxIds和zettelBoxNames可以同时传,会合并在一起。多个卡片盒之间是「或」:笔记只要属于其中任意一个,就会返回。- 只匹配当前账号里未删除的卡片盒,不会连带查出子卡片盒。不存在的 ID 或名称会被忽略;如果一个都对不上,返回空列表
data: []。 - 可以和
lastSyncTime一起用:先限定卡片盒,再只取该时间之后更新过的笔记。两个字段都不传时,仍返回全部笔记。
请求示例
{
"lastSyncTime": "2026-03-01T00:00:00.000Z",
"zettelBoxNames": ["读书笔记", "工作"],
"zettelBoxIds": ["7c1d2f4e-0000-0000-0000-000000000000"]
}响应示例
{
"code": "000000",
"msg": "ok",
"data": [
{
"date": "2026-03-04",
"notes": [
{
"noteId": "01HQXXX...",
"title": "TypeScript 学习笔记",
"content": "# 今日学习\n\n学习了 TypeScript",
"tags": ["编程"],
"zettelBoxes": ["技术笔记"],
"createTime": "2026-03-04T12:00:00.000Z",
"updateTime": "2026-03-04T12:00:00.000Z",
"type": "note",
"isAudio": false,
"audioUrl": "",
"isDel": false
}
]
}
]
}增量同步
首次调用不传 lastSyncTime,获取全部笔记;之后传入上次的时间戳,只拉取有更新的笔记,提高效率。
错误码
| 错误码 | 说明 |
|---|---|
| 000000 | 成功 |
| 000001 | 参数错误 |
| 000005 | 服务器内部错误 |
| 000006 | 资源不存在 |
| 000008 | 认证失败 |