OpeniLinkOpeniLink
API 参考

API 参考

OpeniLink Hub 完整的 REST API 端点参考。

OpeniLink Hub 提供 103 个 REST API 端点,覆盖认证、Bot 管理、Channel 操作、Webhook 插件、App 开发和管理功能。本页列出所有可用端点。

除特别标注外,所有 API 端点都需要通过 Session Cookie 或 API Key 进行认证。管理员 API 需要管理员权限。Bot API 使用 App Token 认证。

认证 API

用户注册、登录和认证相关端点。

密码认证

方法路径说明认证
POST/api/auth/register用户名密码注册
POST/api/auth/login用户名密码登录
POST/api/auth/logout退出登录Session

Passkey (WebAuthn)

方法路径说明认证
POST/api/auth/passkey/register/begin开始 Passkey 注册
POST/api/auth/passkey/register/finish完成 Passkey 注册
POST/api/auth/passkey/login/begin开始 Passkey 登录
POST/api/auth/passkey/login/finish完成 Passkey 登录
GET/api/auth/passkey/list获取已注册的 Passkey 列表Session
DELETE/api/auth/passkey/{id}删除指定 PasskeySession

OAuth

方法路径说明认证
GET/api/auth/oauth/github发起 GitHub OAuth 登录
GET/api/auth/callback/githubGitHub OAuth 回调
GET/api/auth/oauth/linuxdo发起 LinuxDo OAuth 登录
GET/api/auth/callback/linuxdoLinuxDo OAuth 回调

扫码登录

方法路径说明认证
POST/api/auth/qr/generate生成扫码登录二维码
GET/api/auth/qr/status查询扫码登录状态(WebSocket 升级)
POST/api/auth/qr/confirm确认扫码登录

会话

方法路径说明认证
GET/api/auth/me获取当前用户信息Session
GET/api/auth/sessions获取活跃 Session 列表Session
DELETE/api/auth/sessions/{id}删除指定 SessionSession

Bot 管理 API

Bot 的绑定、管理和消息发送。

Bot 生命周期

方法路径说明认证
GET/api/bots获取当前用户的 Bot 列表Session
GET/api/bots/{id}获取指定 Bot 详情Session
DELETE/api/bots/{id}删除指定 BotSession
POST/api/bots/bind/start开始绑定 Bot(生成二维码)Session
POST/api/bots/bind/confirm确认绑定 BotSession
GET/api/bots/{id}/status获取 Bot 在线状态Session
POST/api/bots/{id}/reconnect重新连接 BotSession

Bot 消息

方法路径说明认证
POST/api/bots/{id}/send通过 Bot 发送消息Session
GET/api/bots/{id}/messages获取 Bot 的消息列表Session
GET/api/bots/{id}/contacts获取 Bot 的联系人Session

Bot 追踪

方法路径说明认证
GET/api/bots/{id}/traces获取消息追踪列表Session
GET/api/bots/{id}/traces/{traceId}获取追踪详情Session

Channel API

通过 API Key 认证的 Channel 操作端点,供 SDK 和外部服务使用。

WebSocket 连接

方法路径说明认证
GET/api/v1/channels/connect建立 WebSocket 连接API Key

消息操作

方法路径说明认证
GET/api/v1/channels/messages获取 Channel 消息列表(长轮询)API Key
POST/api/v1/channels/send通过 Channel 发送消息API Key
POST/api/v1/channels/typing发送打字状态API Key

Channel 配置

方法路径说明认证
GET/api/v1/channels/config获取 Channel 配置API Key
GET/api/v1/channels/upload-url获取文件上传预签名 URLAPI Key
POST/api/v1/channels/login/qrChannel 内扫码登录API Key
GET/api/v1/channels/login/status查询 Channel 内登录状态API Key

Channel 管理 API

Channel 的 CRUD 操作,通过 Session 认证。

方法路径说明认证
GET/api/bots/{id}/channels获取 Bot 下的 Channel 列表Session
POST/api/bots/{id}/channels创建新 ChannelSession
GET/api/bots/{id}/channels/{channelId}获取 Channel 详情Session
PUT/api/bots/{id}/channels/{channelId}更新 Channel 配置Session
DELETE/api/bots/{id}/channels/{channelId}删除 ChannelSession
POST/api/bots/{id}/channels/{channelId}/regenerate-key重新生成 API KeySession

Channel Sink 配置

方法路径说明认证
PUT/api/bots/{id}/channels/{channelId}/websocket配置 WebSocket SinkSession
PUT/api/bots/{id}/channels/{channelId}/webhook配置 Webhook SinkSession
PUT/api/bots/{id}/channels/{channelId}/ai配置 AI SinkSession
PUT/api/bots/{id}/channels/{channelId}/filter配置消息过滤规则Session

Webhook 插件 API

Webhook 插件的管理和调试。

插件市场

方法路径说明认证
GET/api/plugins获取插件市场列表Session
GET/api/plugins/{id}获取插件详情Session
POST/api/plugins提交新插件Session
PUT/api/plugins/{id}更新插件Session
DELETE/api/plugins/{id}删除插件Session

插件安装

方法路径说明认证
POST/api/bots/{id}/channels/{channelId}/plugins/install安装插件到 ChannelSession
DELETE/api/bots/{id}/channels/{channelId}/plugins/{pluginId}从 Channel 卸载插件Session
GET/api/bots/{id}/channels/{channelId}/plugins获取 Channel 已安装插件Session

插件调试

方法路径说明认证
POST/api/webhooks/{id}/debug/request调试 onRequest 钩子Session
POST/api/webhooks/{id}/debug/response调试 onResponse 钩子Session

App API

第三方 App 的创建和管理。

App 管理

方法路径说明认证
GET/api/apps获取 App 列表Session
POST/api/apps创建新 AppSession
GET/api/apps/{id}获取 App 详情Session
PUT/api/apps/{id}更新 App 信息Session
DELETE/api/apps/{id}删除 AppSession

App 安装

方法路径说明认证
POST/api/bots/{id}/apps/install安装 App 到 BotSession
DELETE/api/bots/{id}/apps/{appId}从 Bot 卸载 AppSession
GET/api/bots/{id}/apps获取 Bot 已安装的 AppSession
POST/api/bots/{id}/apps/{appId}/regenerate-token重新生成 App TokenSession

App OAuth

方法路径说明认证
GET/api/auth/oauth/authorizeApp OAuth 授权页面Session
POST/api/auth/oauth/tokenApp OAuth 换取 Token

App 事件和日志

方法路径说明认证
GET/api/bots/{id}/apps/{appId}/events获取 App 事件日志Session
GET/api/bots/{id}/apps/{appId}/api-logs获取 App API 调用日志Session

用户管理 API

用户个人信息和设置。

方法路径说明认证
GET/api/user/profile获取用户资料Session
PUT/api/user/profile更新用户资料Session
PUT/api/user/password修改密码Session
GET/api/user/oauth-accounts获取关联的 OAuth 账号Session
DELETE/api/user/oauth-accounts/{provider}解绑 OAuth 账号Session

管理员 API

需要管理员权限的系统管理端点。

方法路径说明认证
GET/api/admin/users获取所有用户列表管理员
GET/api/admin/users/{id}获取指定用户详情管理员
PUT/api/admin/users/{id}更新用户信息管理员
DELETE/api/admin/users/{id}删除用户管理员
GET/api/admin/bots获取所有 Bot 列表管理员
GET/api/admin/stats获取系统统计信息管理员
GET/api/admin/ai-config获取全局 AI 配置管理员
PUT/api/admin/ai-config更新全局 AI 配置管理员
GET/api/admin/plugins/pending获取待审核插件列表管理员
POST/api/admin/plugins/{id}/approve审核通过插件管理员
POST/api/admin/plugins/{id}/reject拒绝插件管理员

Bot API(App Token 认证)

供已安装的 App 使用的 Bot API。使用 App Token 进行认证。

Authorization: Bearer <app_token>
方法路径说明认证
POST/bot/v1/messages/send发送消息App Token
GET/bot/v1/contacts获取联系人列表App Token
GET/bot/v1/bot获取 Bot 信息App Token

POST /bot/v1/messages/send

请求体:

{
  "to_user_id": "wxid_xxx",
  "content": "消息内容",
  "context_token": "ctx_xxx"
}

响应:

{
  "success": true,
  "message_id": "msg_xxx"
}

GET /bot/v1/contacts

响应:

{
  "contacts": [
    {
      "user_id": "wxid_xxx",
      "user_name": "张三",
      "remark": "备注",
      "avatar_url": "https://..."
    }
  ]
}

GET /bot/v1/bot

响应:

{
  "bot_id": "bot_xxx",
  "name": "我的 Bot",
  "status": "online",
  "wx_id": "wxid_xxx",
  "created_at": "2024-01-01T00:00:00Z"
}

通用响应格式

成功响应

{
  "success": true,
  "data": {}
}

错误响应

{
  "success": false,
  "error": {
    "code": "INVALID_TOKEN",
    "message": "认证令牌无效"
  }
}

常见错误码

错误码HTTP 状态码说明
UNAUTHORIZED401未认证或认证已过期
FORBIDDEN403权限不足
NOT_FOUND404资源不存在
INVALID_PARAMS400请求参数无效
RATE_LIMITED429请求频率超限
INTERNAL_ERROR500服务器内部错误

On this page