Hexclave REST API v1

完整的 REST API 参考文档 — 适用于任意语言/框架的前后端调用

📑 目录

概述

Hexclave 提供 REST API,支持前端(浏览器/移动端)和后端的任意编程语言调用。所有请求头以 X-Hexclave-* 为规范前缀,同时向后兼容 X-Stack-*(Hexclave 原名 Stack Auth)。

响应头 X-Hexclave-actual-statusX-Hexclave-known-errorX-Hexclave-request-id 会随对应的 X-Stack-* 等效头一同返回。

Base URL

Base https://authapi.cloudyun.top

认证方式

⚠️ 安全警告:绝不要将 ssk_...(Secret Server Key)暴露在客户端代码、浏览器请求或任何公开位置。服务端密钥仅用于安全的后端环境。

Client 端认证(浏览器 / 移动端)

curl https://authapi.cloudyun.top/ \
     -H "X-Hexclave-Access-Type: client" \
     -H "X-Hexclave-Project-Id: <项目 UUID>" \
     -H "X-Hexclave-Publishable-Client-Key: pck_<密钥>" \
     -H "X-Hexclave-Access-Token: <用户 access token>"

Publishable Client Key (pck_...) 可以安全地放在前端代码中。

Server 端认证(后端)

curl https://authapi.cloudyun.top/ \
     -H "X-Hexclave-Access-Type: server" \
     -H "X-Hexclave-Project-Id: <项目 UUID>" \
     -H "X-Hexclave-Secret-Server-Key: ssk_<密钥>"

Secret Server Key (ssk_...) 拥有全部用户数据的完全访问权限。

Admin 端认证

如需自行构建管理面板或通过代码修改项目配置,可使用 admin 访问类型配合 X-Hexclave-Super-Secret-Admin-Key。这些端点权限极高,请谨慎使用。

认证请求头一览

Header类型适用说明
X-Hexclave-Access-Type client | server | admin 全部必填 访问类型
X-Hexclave-Project-Id UUID 全部必填 项目唯一标识
X-Hexclave-Publishable-Client-Key string Client必填 客户端密钥,以 pck_ 开头,可公开
X-Hexclave-Secret-Server-Key string Server必填 服务端密钥,以 ssk_ 开头,严禁公开
X-Hexclave-Super-Secret-Admin-Key string Admin可选 管理员超级密钥
X-Hexclave-Access-Token string Client可选 当前用户的访问令牌,用于以该用户身份操作
X-Hexclave-Refresh-Token string Client可选 刷新令牌,用于获取新的 access token
X-Hexclave-Branch-Id UUID 全部可选 分支标识
💡 兼容说明:所有 X-Hexclave-* 头均可使用 X-Stack-* 别名,例如 X-Stack-Project-IdX-Stack-Secret-Server-Key 等。

API 端点

GET /api/v1

返回 API 基本信息,无需认证即可访问。

响应 — 200

Content-Type: text/plain

Welcome to the Hexclave API endpoint! Please refer to the
documentation at https://docs.hexclave.com/

Authentication: None
POST /api/v1/auth/anonymous/sign-up

创建匿名账户(无需邮箱)。

响应 — 200

{
  "access_token":  "eyJ...",
  "refresh_token": "eyJ...",
  "user_id":       "<user-id>"
}
POST /api/v1/emails/send-email

向用户列表发送邮件。content 字段支持:{html}(HTML 邮件)、{template_id, variables}(模板邮件)、{draft_id}(草稿邮件)。
需要 Server 端认证。

响应 — 200

{
  "results": [
    { "user_id": "<user-id>" }
  ]
}

更多端点

以下为 Hexclave REST API 的其他可用端点分类。完整文档请参见 docs.hexclave.com

分类示例端点访问类型
认证POST /auth/anonymous/sign-up · POST /password/sign-in-with-email-and-password · POST /password/sign-up-with-email-and-passwordClient
OTP / MFAPOST /otp/send-sign-in-code · POST /otp/sign-in-with-a-code · POST /otp/mfa-sign-inClient
OAuthGET /oauth/authorize · POST /oauth/token · GET /oauth/providersClient
会话GET /sessions · POST /sessions/refresh · DELETE /sessions/{id}Client
团队 (Teams)POST /teams · GET /teams/{id} · DELETE /teams/{id} · GET /teams/{id}/membersClient / Server
API 密钥POST /api-keys · GET /api-keys · PATCH /api-keys/{id}Client / Server
邮件POST /emails/send-email · GET /emails/outbox · GET /emails/delivery-infoServer
权限 (RBAC)GET /permissions · GET /teams/{id}/permissionsClient / Server
联系人渠道POST /contact-channels · GET /contact-channels · POST /contact-channels/verifyClient / Server
关联账户GET /connected-accountsClient / Server
CLI 认证POST /cli-auth/initiate · GET /cli-auth/poll · POST /cli-auth/completeClient
密码管理POST /password/send-reset-code · POST /password/reset · PATCH /password/updateClient
数据保险库POST /data-vault/store · GET /data-vault/retrieveServer
支付POST /payments/purchase-session · GET /payments/itemClient / Server

错误处理

Hexclave API 返回标准 HTTP 状态码,错误响应附带 JSON body 含详细信息。

状态码含义说明
400Bad Request请求参数无效
401Unauthorized认证无效或缺失
403Forbidden权限不足
404Not Found资源不存在
429Too Many Requests超出速率限制,响应头中会注明重试时间
500Internal Server Error服务器错误

FAQ

支持哪些编程语言?

任何可以发送 HTTP 请求的语言都可以使用 Hexclave REST API,包括 JavaScript、Python、Ruby、Java、Go、C#、Dart 等。

Client 和 Server 访问类型有什么区别?

ClientX-Hexclave-Access-Type: client)用于浏览器/移动端,只能读写当前登录用户的数据,使用 pck_... 密钥。
ServerX-Hexclave-Access-Type: server)用于安全后端,拥有全部用户数据的完全访问权限,使用 ssk_... 密钥。绝不要将 Server 密钥暴露在客户端。

Admin 访问类型是什么?

如果需要自行构建 Hexclave 管理面板或通过代码修改项目配置,可以使用 admin 类型。这些端点权限极高,请谨慎使用。

有速率限制吗?

是的。速率限制因端点和访问类型而异。超出限制时会返回 429 Too Many Requests,响应头中包含重试时间。

📖 更多文档:完整文档请访问 docs.hexclave.com · AI Agent 请使用 skill.hexclave.com · Discord 社区 discord.hexclave.com