认证说明
公开接口(激活/心跳/验签)需要在请求头携带 X-Deploy-Key,值为部署密钥。
管理接口(创建/吊销/查询)需要携带 X-Admin-Key,值为管理密钥。
公钥接口无需认证。
GET
/api/publicKey
无需认证
获取 Ed25519 公钥(Base64 编码),用于客户端本地验签。
# 请求
curl https://verify.yunheiku.com/api/publicKey
# 响应
{"code":0,"data":{"public_key":"snPpHrlD16rw89RwCyoQWNiSvaqS9PZHbZNJquSf7dA="}}
POST
/api/license/activate
DeployKey
客户端首次激活,提交授权码和设备信息,获取签名证书。
| 参数 | 类型 | 必填 | 说明 |
| license_code | string | ✅ | 授权码,格式 YHK-XXXX-XXXX-XXXX-XXXX |
| domain | string | ✅ | 激活域名 |
| machine_code | string | | 机器码(可选,系统自动生成) |
| deploy_key | string | ✅ | 部署密钥(或放在 Header) |
# 请求
curl -X POST https://verify.yunheiku.com/api/license/activate \
-H "Content-Type: application/json" \
-H "X-Deploy-Key: yhk-deploy-change-me" \
-d '{"license_code":"YHK-XXXX-XXXX-XXXX-XXXX","domain":"your-domain.com"}'
# 响应
{"code":0,"data":{"cert":"...base64...","expires_at":"2027-01-01"}}
POST
/api/license/heartbeat
DeployKey
客户端定时上报在线状态,服务器验证证书签名后更新最后在线时间。
# 请求
curl -X POST https://verify.yunheiku.com/api/license/heartbeat \
-H "Content-Type: application/json" \
-H "X-Deploy-Key: yhk-deploy-change-me" \
-d '{"license_code":"YHK-...","machine_code":"...","signature":"..."}'
# 响应
{"code":0,"message":"心跳更新成功"}
POST
/api/license/verify
DeployKey
离线证书验签(当客户端无法连接时使用本地证书校验,也可调此接口远程验签)。
# 请求
curl -X POST https://verify.yunheiku.com/api/license/verify \
-H "Content-Type: application/json" \
-H "X-Deploy-Key: yhk-deploy-change-me" \
-d '{"license_code":"YHK-...","machine_code":"...","cert":"..."}'
# 响应
{"code":0,"data":{"status":"active"}}