SingleLogin卡密登录卡密+机器码验证,首次使用自动激活并绑定设备
action=SingleLogin&Card=XXXX-XXXX-XXXX-XXXX&Mac=MAC001&DeviceName=MyPC
| 参数 | 必填 | 说明 |
Card | 必填 | 卡密密钥,格式 XXXX-XXXX-XXXX-XXXX |
Mac | 必填 | 机器码,可传 Mac 或 DeviceID,用于绑定设备 |
DeviceName | 可选 | 设备名称,后台展示用 |
成功响应(时长卡)
{
"code": 200,
"message": "success",
"data": {
"token": "b86fbe17a3e5492f...",
"status": "active",
"is_times": false,
"card_type": "月卡",
"expire_at": "2026-06-03"
}
}
成功响应(按次卡密)
{
"code": 200,
"message": "success",
"data": {
"token": "b86fbe17a3e5492f...",
"status": "active",
"is_times": true,
"card_type": "10次卡",
"expire_at": "2036-06-22",
"total": 10,
"used": 3,
"remaining": 7
}
}
| 字段 | 说明 |
token | 登录凭证,后续心跳(Type=card)与取消息需携带 |
status | active=正常 |
is_times | 是否为按次卡密:true=按次 / false=按时长 |
card_type | 卡密类型名称,如"月卡""10次卡" |
expire_at | 到期日期(YYYY-MM-DD),永久卡为"永久" |
total | 按次卡总次数(仅 is_times=true 返回) |
used | 已使用次数(仅 is_times=true 返回) |
remaining | 剩余次数,为 0 时卡密失效(仅 is_times=true 返回) |
失败响应
{"code":1004,"message":"卡密无效","data":null}
{"code":1005,"message":"卡密已过期","data":null}
{"code":1006,"message":"卡密已禁用","data":{"remark":"违规使用"}}
{"code":1008,"message":"设备不匹配","data":null}
{"code":1013,"message":"参数不完整","data":null}
UserLogin用户登录用户名+密码登录,支持卡密续期与 QQ 扫码登录
// 仅登录(不传 Card)
action=UserLogin&UserName=testuser01&Password=123456
// 登录 + 续期(传入 Card)
action=UserLogin&UserName=testuser01&Password=123456&Card=XXXX-XXXX-XXXX-XXXX
// QQ 扫码登录(LoginType=qq,配合扫码返回的 State)
action=UserLogin&UserName=testuser01&Password=123456&LoginType=qq&State=8f3c21a5d7
| 参数 | 必填 | 说明 |
UserName | 必填 | 用户名 |
Password | 必填 | 密码(明文,已由 RC4 整体加密传输) |
Card | 可选 | 充值卡密,传入则登录成功后给该用户续期 |
LoginType | 可选 | 登录方式,传 qq 表示走 QQ 扫码登录校验 |
State | 可选 | QQ 扫码流程返回的 state 值,LoginType=qq 时必须配合传入 |
仅验证登录(不传 Card)成功
{
"code": 200,
"message": "success",
"data": {
"token": "9c4d2e01f7b8443a...",
"username": "testuser01",
"device_id": "MAC001",
"expire_at": "2026-06-03",
"status": "active",
"remark": ""
}
}
传入 Card 续期成功
{
"code": 200,
"message": "success",
"data": {
"token": "9c4d2e01f7b8443a...",
"username": "testuser01",
"expire_at": "2026-07-02",
"added_days": 30,
"status": "active"
}
}
失败响应
{"code":1003,"message":"密码错误","data":null}
{"code":1004,"message":"卡密无效","data":null}
{"code":1006,"message":"账户已被停封","data":{"remark":"违规"}}
{"code":1008,"message":"设备不匹配","data":null}
{"code":1016,"message":"用户未注册","data":null}
UserRegin用户注册注册新用户,可同时卡密激活并绑定 QQ
// 仅注册
action=UserRegin&UserName=newuser&Password=123456
// 注册 + 卡密激活 + 绑定设备
action=UserRegin&UserName=newuser&Password=123456&Card=XXXX-XXXX-XXXX-XXXX&Mac=MAC001&DeviceName=MyPC
// 注册同时绑定 QQ(BindQQ=1)
action=UserRegin&UserName=newuser&Password=123456&BindQQ=1
| 参数 | 必填 | 说明 |
UserName | 必填 | 用户名,3-50 字符,程序内唯一 |
Password | 必填 | 密码(明文,已由 RC4 整体加密传输) |
Card | 可选 | 激活卡密,传入则注册同时激活并计算到期时间 |
BindQQ | 可选 | 传 1 表示注册的同时绑定 QQ(用于后续 QQ 扫码登录) |
Mac | 可选 | 机器码,可传 Mac 或 DeviceID,用于设备绑定 |
DeviceName | 可选 | 设备名称,后台展示用 |
仅注册(不传 Card)
{"code":200,"message":"success","data":{"username":"newuser","user_id":6}}
注册 + 激活(传 Card)
{
"code": 200,
"message": "success",
"data": {
"username": "newuser",
"user_id": 6,
"expire_at": "2026-07-02",
"status": "active"
}
}
失败响应
{"code":1004,"message":"卡密无效","data":null}
{"code":1013,"message":"参数不完整","data":null}
{"code":1017,"message":"用户名已被注册","data":null}
UpdatePwd修改密码校验原密码后修改为新密码
action=UpdatePwd&UserName=testuser01&OldPassword=123456&NewPassword=newpass789
| 参数 | 必填 | 说明 |
UserName | 必填 | 用户名 |
OldPassword | 必填 | 原密码 |
NewPassword | 必填 | 新密码 |
成功响应
{"code":200,"message":"success","data":{"username":"testuser01"}}
失败响应
{"code":1003,"message":"原密码错误","data":null}
{"code":1013,"message":"参数不完整","data":null}
{"code":1016,"message":"用户未注册","data":null}
ChangeBind换绑设备凭卡密将已绑定的旧机器码更换为新机器码
action=ChangeBind&Card=XXXX-XXXX-XXXX-XXXX&Mac=OLD-MAC-001&NewMac=NEW-MAC-002
| 参数 | 必填 | 说明 |
Card | 必填 | 卡密密钥,格式 XXXX-XXXX-XXXX-XXXX |
Mac | 必填 | 当前已绑定的旧机器码,可传 Mac 或 DeviceID |
NewMac | 必填 | 要换绑的新机器码 |
成功响应
{
"code": 200,
"message": "success",
"data": {
"card": "XXXX-XXXX-XXXX-XXXX",
"old_device_id": "OLD-MAC-001",
"device_id": "NEW-MAC-002",
"expire_at": "2026-06-03",
"status": "active"
}
}
失败响应
{"code":1004,"message":"卡密无效","data":null}
{"code":1005,"message":"卡密已过期","data":null}
{"code":1007,"message":"未绑定,请先登录","data":null}
{"code":1008,"message":"设备不匹配(旧机器码与绑定记录不一致)","data":null}
{"code":1013,"message":"参数不完整","data":null}
UserHeartbeat心跳检测维持在线状态,建议每 5 分钟调用一次
// 卡密登录(SingleLogin 返回的 token)
action=UserHeartbeat&Token=b86fbe17a3e5492f&Type=card
// 用户登录(UserLogin 返回的 token)
action=UserHeartbeat&Token=9c4d2e01f7b8443a&Type=user
| 参数 | 必填 | 说明 |
Token | 必填 | 登录成功返回的 Token |
Type | 必填 | card=卡密登录 / user=用户登录 |
超过 5 分钟 未上报心跳,服务端会将该会话标记为离线,后台在线列表中不再显示。
成功响应(无消息)
{"code":200,"message":"success","data":{"expire_at":"2026-06-03","status":"active","msg":""}}
成功响应(携带后台消息)
{"code":200,"message":"success","data":{"expire_at":"2026-06-03","status":"active","msg":"您的账户即将到期,请及时续费"}}
失败响应
{"code":1005,"message":"已过期","data":null}
{"code":1006,"message":"已禁用/停封","data":{"remark":"违规使用"}}
{"code":1007,"message":"未绑定,请先登录","data":null}
{"code":1013,"message":"参数不完整","data":null}
GetLatestVersion获取版本获取程序最新版本号、更新日志与下载地址
// 无需业务参数
action=GetLatestVersion
| 参数 | 必填 | 说明 |
| 该接口无业务参数,仅需 action 本身 |
成功响应
{
"code": 200,
"message": "success",
"data": {
"version": "2.1.0",
"version_name": "新春特别版",
"version_data": "新增登录功能和积分系统",
"download_url": "https://xxx.com/update.zip",
"version_status": "release",
"force": false
}
}
| 字段 | 说明 |
version | 版本号 |
version_name | 版本名称 |
version_data | 更新内容/更新日志 |
download_url | 下载地址 |
version_status | 版本状态:beta=测试版 / release=正式版 / force=强制更新 |
force | 是否强制更新:true=是 |
失败响应
{"code":1015,"message":"未知操作","data":null}
GetBulletin程序公告获取开发者在后台发布的最新公告
// 无需业务参数
action=GetBulletin
| 参数 | 必填 | 说明 |
| 该接口无业务参数,仅需 action 本身 |
成功响应
{
"code": 200,
"message": "success",
"data": {
"title": "维护通知",
"content": "系统将于今晚 23:00 - 24:00 升级,期间验证服务短暂不可用。"
}
}
无公告时
{"code":200,"message":"success","data":{"title":"","content":""}}
GetVariable获取变量读取云端远程配置变量,可取单个或全部
// 指定变量名
action=GetVariable&Name=app_status
// 不传 Name 则返回全部变量
action=GetVariable
| 参数 | 必填 | 说明 |
Name | 可选 | 变量名;不传则返回该程序下的全部变量 |
成功响应(指定变量)
{"code":200,"message":"success","data":{"value":"approved"}}
成功响应(全部变量)
{
"code": 200,
"message": "success",
"data": {
"variables": {
"app_name": "测试",
"app_version": "1.0",
"app_status": "approved"
}
}
}
失败响应
{"code":1013,"message":"变量不存在或参数不完整","data":null}
GetUserInfo用户信息凭卡密查询绑定用户的详细资料
action=GetUserInfo&Card=XXXX-XXXX-XXXX-XXXX&Mac=MAC001
| 参数 | 必填 | 说明 |
Card | 必填 | 卡密密钥,格式 XXXX-XXXX-XXXX-XXXX |
Mac | 可选 | 机器码,可传 Mac 或 DeviceID;传入时会校验设备是否匹配 |
成功响应
{
"code": 200,
"message": "success",
"data": {
"user_id": 4,
"username": "testuser01",
"device_id": "MAC001",
"device_name": "MyPC",
"ip": "192.168.1.1",
"expire_at": "2026-06-03",
"status": "active"
}
}
失败响应
{"code":1004,"message":"卡密无效","data":null}
{"code":1007,"message":"未绑定,请先登录","data":null}
{"code":1008,"message":"设备不匹配","data":null}
{"code":1013,"message":"参数不完整","data":null}
GetCardInfo卡密信息查询卡密状态、到期时间与绑定详情
action=GetCardInfo&Card=XXXX-XXXX-XXXX-XXXX
| 参数 | 必填 | 说明 |
Card | 必填 | 要查询的卡密密钥,格式 XXXX-XXXX-XXXX-XXXX |
成功响应(时长卡)
{
"code": 200,
"message": "success",
"data": {
"card_status": "active",
"card_type": "月卡",
"is_times": false,
"expire_at": "2026-06-03",
"activated_at": "2026-05-03",
"device_id": "MAC001",
"device_name": "MyPC"
}
}
成功响应(按次卡密)
{
"code": 200,
"message": "success",
"data": {
"card_status": "active",
"card_type": "10次卡",
"is_times": true,
"expire_at": "2036-06-22",
"activated_at": "2026-05-03",
"total": 10,
"used": 3,
"remaining": 7
}
}
失败响应
{"code":1004,"message":"卡密无效","data":null}
{"code":1005,"message":"卡密已过期","data":null}
{"code":1006,"message":"卡密已禁用","data":{"remark":"违规使用"}}
{"code":1013,"message":"参数不完整","data":null}
UserRecharge用户续期使用充值卡密为当前用户续期(无需密码)
action=UserRecharge&UserName=testuser01&Card=SEJ8-7BM7-K2UP-6TVE
| 参数 | 必填 | 说明 |
UserName | 必填 | 用户名(登录账号) |
Card | 必填 | 充值卡密(未使用的新卡密),充值后作废 |
按次卡密不支持充值续期,尝试充值将返回错误码 1024。
成功响应
{
"code": 200,
"message": "success",
"data": {
"card": "XXXX-XXXX-XXXX-XXXX",
"expire_at": "2026-07-02",
"added_days": 30,
"status": "active"
}
}
失败响应
{"code":1004,"message":"充值卡密无效","data":null}
{"code":1006,"message":"卡密已禁用","data":{"remark":"违规使用"}}
{"code":1013,"message":"参数不完整","data":null}
{"code":1024,"message":"按次卡密不能充值","data":null}