Open API 调用文档
所有接口供客户端程序直接调用,使用 app_id 进行鉴权,无需用户登录 Token。
Base URL
https://api.xxauth.com认证方式
所有 Open API 接口均通过请求头 app_id 进行鉴权。
在「软件管理」中创建应用后,可获取对应的 app_id。将其添加到 HTTP 请求头即可。
GET /open/v1/announcements HTTP/1.1 Host: api.xxauth.com app_id: your_app_id_here
协议适配(兼容其他平台)
默认响应统一为 { "code": 0, "message": "success", "data": {...} }, 成功时 code=0。
如需从其他网络验证平台迁移,可在「软件详情 → 协议适配」中开启并自定义:外层字段名(code/message/data 改名)、 成功码 / 失败码值、请求字段名映射(客户端字段名 → 平台真实字段名)、响应字段名映射(平台字段名 → 输出字段名)。 开启后下文所有接口的请求/响应字段会按你的配置自动改写,无需改动接口路径,客户端几乎零改造即可对接。 也可直接套用平台内置或共享的兼容预设。
// 示例:把成功码改为 200、外层字段改名、机器码字段改名
// 配置:success_code=200, field_code=status, field_data=result,
// resp_field_map={"bound_machine_code":"machine"}
{ "status": 200, "message": "success", "result": { "machine": "ABC123" } }基础接口
2 个接口/open/v1/init初始化(聚合接口)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| platform | query | string | 否 | 平台(windows/mac/android/ios),默认 windows |
| card_no | header | string | 否 | 卡密号(开启 variables_auth_required 时拉变量需要) |
| user_id | header | string | 否 | 用户ID(同上,与 card_no 二选一) |
| X-Anon-ID | header | string | 否 | 匿名设备ID(free模式首次 init 获取后缓存,后续请求携带) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"software": {
"id": "sw_xxxx",
"name": "我的软件",
"icon": "https://cdn/icon.png",
"pricing_mode": "paid"
},
"auth": {
"login_mode": "user",
"register_enabled": "true"
},
"limit": {
"max_devices": 3,
"max_online": 1
},
"update": {
"default_strategy": "optional",
"update_notice": ""
},
"status_codes": {
"card_expired": "1001"
},
"variables": {
"max_devices": "3"
},
"security": {
"anti_debug": false,
"heartbeat_interval": 60,
"heartbeat_verify_machine": false,
"heartbeat_verify_ip": false,
"encrypt_algorithm": "aes-cbc"
},
"announcements": [
{
"id": "ann_xxxx",
"title": "公告标题",
"content": "公告内容"
}
],
"latest_version": {
"version": "1.2.0",
"download_url": "https://example.com/app-1.2.0.exe"
},
"pricing_mode": "paid",
"anon_id": ""
}
}/open/v1/config/:category按分类获取配置请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| category | query | string | 是 | 配置分类(auth/limit/update/status_code/variable);security 与 agent 受保护,不可访问 |
| card_no | header | string | 否 | 拉 variable 分类时受 variables_auth_required 控制是否必填 |
| user_id | header | string | 否 | 同上,可与 card_no 二选一 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"max_devices": "3",
"max_online": "1"
}
}卡密验证 API
6 个接口/open/v1/card/login单码卡密登录请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | body | string | 是 | 卡密号 |
| machine_code | body | string | 否 | 机器码 |
| timestamp | body | string | 否 | 时间戳 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"card_id": "crd_xxxx",
"card_no": "XXXX-XXXX-XXXX",
"expires_at": "2026-04-17T00:00:00Z",
"bound_ip": "1.2.3.4",
"bound_machine_code": "ABC123",
"software_id": "sw_xxxx"
}
}/open/v1/card/heartbeat单码卡密心跳验证请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | body | string | 是 | 卡密号 |
| machine_code | body | string | 否 | 机器码。当软件「安全配置」开启『心跳校验机器码』时必填,且需与激活时绑定的机器码一致,否则心跳被拒绝 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"valid": true,
"expires_at": "2026-04-17T00:00:00Z",
"remaining_seconds": 86400
}
}/open/v1/card/info获取单码卡密信息请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | query | string | 是 | 卡密号 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"card_no": "XXXX-XXXX-XXXX",
"status": 1,
"expires_at": "2026-04-17T00:00:00Z",
"bound_ip": "1.2.3.4",
"bound_machine_code": "ABC123",
"duration": 720,
"created_at": "2026-01-01T00:00:00Z"
}
}/open/v1/card/check卡密状态检查(轻量级)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | query | string | 是 | 卡密号 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"valid": true,
"status": 1,
"status_text": "已使用"
}
}/open/v1/card/unbind-device解绑机器码请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | body | string | 是 | 卡密号 |
响应示例
{
"code": 0,
"message": "success",
"data": null
}/open/v1/card/unbind-ip解绑IP请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | body | string | 是 | 卡密号 |
响应示例
{
"code": 0,
"message": "success",
"data": null
}用户验证 API
10 个接口/open/v1/user/send-email-code发送邮箱验证码(注册/登录)当软件「安全配置」开启『注册邮箱验证』或『登录邮箱验证』时,调用注册/登录前先用本接口获取验证码。 register 场景:传 email,验证码发送到该邮箱; login 场景:传 username,后端据此查出账号绑定的邮箱再发送。 是否需要验证码由对应软件的安全配置开关决定,与平台全局邮箱验证开关无关。
请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| scene | body | string | 是 | 场景:register(注册)或 login(登录) |
| body | string | 否 | register 场景必填,接收验证码的邮箱 | |
| username | body | string | 否 | login 场景必填,后端据此查出账号绑定邮箱 |
响应示例
{
"code": 0,
"message": "success",
"data": null
}/open/v1/user/register用户注册请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| username | body | string | 是 | 用户名 |
| password | body | string | 是 | 密码 |
| nickname | body | string | 否 | 昵称 |
| body | string | 否 | 邮箱。当软件「安全配置」开启『注册邮箱验证』时必填 | |
| email_code | body | string | 否 | 邮箱验证码。开启『注册邮箱验证』时必填,先调用 /open/v1/user/send-email-code 获取 |
| captcha_token | body | string | 否 | 图形验证码 token。开启『验证码』时必填 |
| captcha_value | body | string | 否 | 图形验证码值。开启『验证码』时必填 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"user_id": "usr_xxxx",
"username": "test",
"nickname": "test",
"vip_level": 1,
"vip_expire_at": "2026-05-01T00:00:00Z"
}
}/open/v1/user/login用户登录请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| username | body | string | 是 | 用户名 |
| password | body | string | 是 | 密码 |
| machine_code | body | string | 否 | 机器码。当软件「安全配置」开启『绑定机器码』时必填。支持多设备绑定:由 limit.max_devices 控制上限,同一用户可在 N 台设备登录,超限时返回错误提示 |
| email_code | body | string | 否 | 邮箱验证码。当软件「安全配置」开启『登录邮箱验证』时必填,先调用 /open/v1/user/send-email-code 获取(发送到账号绑定邮箱) |
| captcha_token | body | string | 否 | 图形验证码 token。开启『验证码』时必填 |
| captcha_value | body | string | 否 | 图形验证码值。开启『验证码』时必填 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"user_id": "usr_xxxx",
"username": "test",
"nickname": "test",
"vip_level": 1,
"vip_expire_at": "2026-05-01T00:00:00Z",
"balance": 0
}
}/open/v1/user/recharge用户充值(卡密充值)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| user_id | body | string | 是 | 用户ID |
| card_no | body | string | 是 | 卡密号 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"message": "充值成功",
"added_hours": 720,
"new_vip_expire_at": "2026-05-01T00:00:00Z"
}
}/open/v1/user/heartbeat用户心跳验证请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| user_id | body | string | 是 | 用户ID |
| machine_code | body | string | 否 | 机器码。当软件「安全配置」开启『心跳校验机器码』时必填,需为登录时绑定的任一设备码(查 user_devices 表),未绑定或已解绑则心跳被拒绝 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"valid": true
}
}/open/v1/user/logout用户注销请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| user_id | body | string | 是 | 用户ID |
响应示例
{
"code": 0,
"message": "success",
"data": null
}/open/v1/user/unbind-device用户解绑机器码(需校验密码,按 unbind 配置可能扣费/扣时长)解绑当前用户的所有已绑定设备(清空 user_devices 表 + 重置 BoundMachineCode)。 如需逐台解绑,请使用门户端 /portal/:slug/devices/:deviceId 接口。
请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| user_id | body | string | 是 | 用户ID |
| password | body | string | 是 | 账户密码(必须) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"deducted_fee_cent": 0,
"deducted_hours": 0,
"balance": 1500,
"vip_expire_at": "2026-05-01T00:00:00Z"
}
}/open/v1/user/unbind-ip用户解绑IP请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| user_id | body | string | 是 | 用户ID |
| password | body | string | 是 | 账户密码(必须) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"deducted_fee_cent": 0,
"deducted_hours": 0,
"balance": 1500,
"vip_expire_at": "2026-05-01T00:00:00Z"
}
}/open/v1/user/info获取用户信息请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| user_id | query | string | 是 | 用户ID |
响应示例
{
"code": 0,
"message": "success",
"data": {
"id": "usr_xxxx",
"username": "test",
"nickname": "test",
"vip_level": 1,
"vip_expire_at": "2026-05-01T00:00:00Z",
"balance": 0,
"last_login_ip": "1.2.3.4",
"created_at": "2026-01-01T00:00:00Z"
}
}/open/v1/user/change-password用户修改密码请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| user_id | body | string | 是 | 用户ID |
| old_password | body | string | 是 | 旧密码 |
| new_password | body | string | 是 | 新密码 |
响应示例
{
"code": 0,
"message": "success",
"data": null
}软件信息 API
8 个接口/open/v1/announcements获取程序公告请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
响应示例
{
"code": 0,
"message": "success",
"data": [
{
"id": "ann_xxxx",
"title": "公告标题",
"content": "公告内容",
"priority": 1,
"created_at": "2026-01-01T00:00:00Z"
}
]
}/open/v1/articles获取文章请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
响应示例
{
"code": 0,
"message": "success",
"data": [
{
"id": "art_xxxx",
"title": "文章标题",
"summary": "摘要",
"content": "内容",
"category": "教程",
"created_at": "2026-01-01T00:00:00Z"
}
]
}/open/v1/version/latest获取最新版本号请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| platform | query | string | 否 | 平台,默认 windows |
响应示例
{
"code": 0,
"message": "success",
"data": {
"version": "1.2.0",
"download_url": "https://example.com/app-1.2.0.exe",
"change_log": "修复了若干问题",
"file_size": 10485760,
"platform": "windows"
}
}/open/v1/version/check检测当前是否为最新版本(支持灰度/强制更新/通道)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| version | body | string | 是 | 当前版本号 |
| platform | body | string | 否 | 平台,默认 windows |
| channel | body | string | 否 | 更新通道:stable/beta/alpha,默认 stable |
| device_id | body | string | 否 | 设备稳定标识,用于灰度命中计算 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"is_latest": false,
"latest_version": "1.2.0",
"download_url": "https://example.com/app-1.2.0.exe",
"change_log": "修复了若干问题",
"update_strategy": "optional",
"force_update": false,
"channel": "stable",
"published_at": "2026-01-01T00:00:00Z",
"rollout_percent": 100,
"file_size": 10485760,
"file_hash": "sha256:xxxxxx",
"update_notice": "升级提示文案"
}
}/open/v1/version/list版本列表(按 published_at 倒序)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| platform | query | string | 否 | 平台过滤,留空返回所有平台 |
响应示例
{
"code": 0,
"message": "success",
"data": [
{
"id": "ver_xxxx",
"version": "1.2.0",
"platform": "windows",
"channel": "stable",
"status": 1,
"push_enabled": true,
"download_url": "https://...",
"change_log": "...",
"file_size": 10485760,
"published_at": "2026-01-01T00:00:00Z"
}
]
}/open/v1/variables获取程序变量返回软件「配置管理 → 程序变量」中定义的所有键值对。 受软件「安全配置 → 获取变量需要验证」开关(variables_auth_required)控制: 关闭时所有请求方均可直接拉取;开启时必须携带合法的 card_no 或 user_id。
请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(variables_auth_required 开启时必填,与 user_id 二选一) |
| user_id | header | string | 否 | 用户ID(variables_auth_required 开启时必填,与 card_no 二选一) |
响应示例
{
"code": 0,
"message": "success",
"data": [
{
"key": "max_devices",
"value": "3",
"remark": "最大设备数"
}
]
}/open/v1/variable/:key按名称获取单个程序变量仅返回 key 匹配的单个变量。 权限控制与 /variables 一致:variables_auth_required 决定是否需要身份校验。 变量不存在时返回 404。
请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(variables_auth_required 开启时必填) |
| user_id | header | string | 否 | 用户ID(variables_auth_required 开启时必填) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"key": "max_devices",
"value": "3"
}
}应用验证 API
1 个接口/open/v1/app/verify-sign应用签名对比请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| sign | body | string | 是 | 签名值 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"valid": true
}
}在线统计 API
2 个接口/open/v1/stats/online-cards获取在线卡密数量请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
响应示例
{
"code": 0,
"message": "success",
"data": {
"count": 42
}
}/open/v1/stats/online-users获取在线用户数量请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
响应示例
{
"code": 0,
"message": "success",
"data": {
"count": 128
}
}加密工具 API
4 个接口/open/v1/crypto/algorithms列出当前后端支持的加密 / 哈希算法请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
响应示例
{
"code": 0,
"message": "success",
"data": {
"cipher": [
"aes-cbc",
"aes-gcm",
"sm4-cbc"
],
"hash": [
"md5",
"sha1",
"sha256",
"sha512",
"sm3"
]
}
}/open/v1/crypto/encrypt对数据加密(Base64 输出)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| data | body | string | 是 | 待加密原文(UTF-8) |
| algorithm | body | string | 否 | 算法名;留空走软件 security.encrypt_algorithm 配置 |
| key | body | string | 否 | 密钥;留空走软件 security.encrypt_key 配置 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"algorithm": "aes-cbc",
"result": "U2FsdGVkX1+..."
}
}/open/v1/crypto/decrypt对密文解密请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| data | body | string | 是 | 待解密密文(Base64) |
| algorithm | body | string | 否 | 算法名;留空走软件 security 配置 |
| key | body | string | 否 | 密钥;留空走软件 security 配置 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"algorithm": "aes-cbc",
"result": "原文字符串"
}
}/open/v1/crypto/hash计算数据哈希(十六进制输出)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| data | body | string | 是 | 待哈希数据 |
| algorithm | body | string | 是 | 哈希算法(md5/sha1/sha256/sha512/sm3) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"algorithm": "sha256",
"result": "e3b0c44298..."
}
}云逻辑 API
1 个接口/open/v1/execute按函数名执行云逻辑脚本请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| function | body | string | 是 | 云逻辑函数名(在开发者后台 → 软件 → 云逻辑中预定义) |
| params | body | object | 否 | 传给函数的参数键值对 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"function": "calcLicense",
"output": "abc123",
"error": "",
"time_ms": 12
}
}加密传输 API
1 个接口/open/v1/secure代理转发已加密的内部请求请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| encrypted | body | string | 是 | Base64(密文(JSON{path, method, body, params})) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"encrypted": "Base64(密文(原 OpenAPI 响应))"
}
}云配置 API
9 个接口/open/v1/cloud-configs/pools列出本软件下所有启用的配置池受软件「安全配置 → 云配置读取需要验证」开关(cloud_config_auth_required)控制: 关闭时所有请求方均可匿名拉取;开启时必须携带合法的 card_no 或 user_id。
请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(cloud_config_auth_required 开启时必填,与 user_id 二选一) |
| user_id | header | string | 否 | 用户ID(cloud_config_auth_required 开启时必填,与 card_no 二选一) |
响应示例
{
"code": 0,
"message": "success",
"data": [
{
"id": "pool_xxxx",
"name": "默认规则池",
"description": "保存核心规则",
"max_configs_per_user": 10,
"max_content_size": 102400,
"allow_share_password": true,
"allow_share_limit": true
}
]
}/open/v1/cloud-configs/pools/:pid/recommended获取池中的官方推荐配置列表受软件「安全配置 → 云配置读取需要验证」开关(cloud_config_auth_required)控制: 关闭时所有请求方均可匿名拉取;开启时必须携带合法的 card_no 或 user_id。
请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(cloud_config_auth_required 开启时必填,与 user_id 二选一) |
| user_id | header | string | 否 | 用户ID(cloud_config_auth_required 开启时必填,与 card_no 二选一) |
| pid | query | uuid | 是 | 池 ID(路径参数) |
响应示例
{
"code": 0,
"message": "success",
"data": [
{
"id": "cfg_xxxx",
"title": "推荐配置1",
"content": "{}",
"owner_type": "official",
"created_at": "2026-01-01T00:00:00Z"
}
]
}/open/v1/cloud-configs/pools/:pid/mine列出当前 card/user 名下的私人配置(分页)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(与 user_id 二选一) |
| user_id | header | string | 否 | 用户ID |
| pid | query | uuid | 是 | 池 ID(路径参数) |
| page | query | int | 否 | 页码,默认 1 |
| page_size | query | int | 否 | 每页数量,默认 20 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"list": [
{
"id": "cfg_xxxx",
"title": "我的私人配置",
"content": "{...}",
"status": 1,
"created_at": "2026-01-01T00:00:00Z"
}
],
"total": 1,
"page": 1,
"page_size": 20
}
}/open/v1/cloud-configs/configs/:cid获取单条配置(含内容)获取某条配置的完整内容。官方推荐配置不需要鉴权; 私人配置需要提供对应卡密/用户的 card_no 或 user_id。 受软件「安全配置 → 云配置读取需要验证」开关(cloud_config_auth_required)控制: 开启时即使读官方推荐也需校验身份。
请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(访问私人配置时必填;cloud_config_auth_required 开启时读任意配置均必填) |
| user_id | header | string | 否 | 用户ID(同上,与 card_no 二选一) |
| cid | query | uuid | 是 | 配置 ID(路径参数) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"id": "cfg_xxxx",
"title": "配置标题",
"content": "{...}",
"owner_type": "user",
"owner_id": "usr_xxxx",
"status": 1,
"created_at": "2026-01-01T00:00:00Z"
}
}/open/v1/cloud-configs/pools/:pid/configs创建私人配置(写操作,需鉴权)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(与 user_id 二选一) |
| user_id | header | string | 否 | 用户ID |
| pid | query | uuid | 是 | 池 ID(路径参数) |
| title | body | string | 是 | 配置标题 |
| content | body | string | 否 | 配置内容(任意文本,建议 JSON 字符串) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"id": "cfg_xxxx",
"title": "我的配置",
"content": "{}",
"status": 1
}
}/open/v1/cloud-configs/configs/:cid更新私人配置请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(与 user_id 二选一) |
| user_id | header | string | 否 | 用户ID |
| cid | query | uuid | 是 | 配置 ID(路径参数) |
| title | body | string | 否 | 新标题 |
| content | body | string | 否 | 新内容 |
响应示例
{
"code": 0,
"message": "success",
"data": {
"id": "cfg_xxxx",
"title": "新标题",
"content": "{...}"
}
}/open/v1/cloud-configs/configs/:cid删除私人配置请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(与 user_id 二选一) |
| user_id | header | string | 否 | 用户ID |
| cid | query | uuid | 是 | 配置 ID(路径参数) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"ok": true
}
}/open/v1/cloud-configs/import用分享码导入配置(自动归属当前用户)请求参数
| 参数名 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| app_id | header | string | 是 | 应用ID |
| card_no | header | string | 否 | 卡密号(与 user_id 二选一) |
| user_id | header | string | 否 | 用户ID |
| share_code | body | string | 是 | 分享码 |
| password | body | string | 否 | 分享密码(若设置了) |
响应示例
{
"code": 0,
"message": "success",
"data": {
"id": "cfg_xxxx",
"title": "已导入配置",
"content": "{...}"
}
}