ETAPI 是 Trilium 的公共/外部 REST API。它从 Trilium v0.50 开始可用。
该文档采用 OpenAPI 格式,可在此处获取。
API 客户端
作为直接调用 API 的替代方法,有客户端库可以简化此作
trilium-py,可以使用 Python 与 Trilium 进行通信。
获取令牌
使用 REST API 的所有作都必须使用令牌进行身份验证。您可以从 Options -> ETAPI 获取此令牌,也可以使用 REST 调用以编程方式获取此令牌(请参阅规范)。/auth/login
认证
通过标题Authorization
GET https://myserver.com/etapi/app-info
Authorization: ETAPITOKEN
其中 是上一步获得的令牌。ETAPITOKEN
为了与各种工具兼容,还可以以格式指定标头的值(从 0.93.0 开始)。AuthorizationBearer ETAPITOKEN
基本身份验证
从 v0.56 开始,您还可以使用基本的身份验证格式:
GET https://myserver.com/etapi/app-info
Authorization: Basic BATOKEN
其中 - 这是标准的基本身份验证序列化
BATOKEN = BASE64(username + ':' + password)
“etapi”在哪里
username
并且是上述生成的 ETAPI 代币。
password
基本身份验证旨在与仅支持基本身份验证的工具一起使用。
使用 Bash 脚本进行交互
可以编写简单的 Bash 脚本来与 Trilium 交互。例如,以下是获取笔记的 HTML 内容的方法:
#!/usr/bin/env bash
# Configuration
TOKEN=z1vA4fkGxjOR_ZXLrZeqHEFOv65yV3882iFCRtNIK9k9iWrHliITNSLQ=
SERVER=http://localhost:8080
# Download a note by ID
NOTE_ID="i6ra4ZshJhgN"
curl "$SERVER/etapi/notes/$NOTE_ID/content" -H "Authorization: $TOKEN"
确保替换以下值:
TOKEN
使用您的 ETAPI 代币。SERVER
使用正确的协议、主机名和端口到您的 Trilium 实例。NOTE_ID
,并具有要下载的现有笔记 ID。