直连中控 API
独立部署:https://zk3.nian168.icu · Worker zn-direct · D1 zn-direct。所有 /api/zn/* 读接口需 X-ZN-Token 头或 ?token=;写接口需管理员会话。
鉴权
| 方式 | 说明 |
|---|
POST /api/zn/login | {"username":"admin","password":"..."} 换 30 天会话 token |
X-ZN-Token | 等于 secret ZN_TOKEN 直接按管理员放行(脚本用),或为上一步的会话 token |
账号 / 凭证
| 方法 | 路径 | 用途 |
| GET | /api/zn/accounts | 账号列表(凭证永不下发,仅脱敏 openid) |
| POST | /api/zn/accounts | 新增账号 {label,group,note,cred:{openid,access_token,refresh_token,acctype,appid}};或 {del:id} / {toggle:id} |
| GET | /api/zn/qr/start | 生成 QQ 扫码会话,返回 {sid,qrB64} |
| GET | /api/zn/qr/poll?sid= | 轮询扫码状态(waiting/scanned/done/expired/error) |
| POST | /api/zn/qr/bind | {sid,label,group,note} 把扫码结果落成账号 |
| GET | /api/zn/dump?accountId= | 查看该账号官方原始返回(字段漂移排障,管理员) |
数据 / 调度
| 方法 | 路径 | 用途 |
| GET | /api/zn/overview | 多账号总览:四工位 + 哈弗币 + 统计卡片 |
| GET | /api/zn/ready | 待收取清单 |
| GET | /api/zn/info | 信息页:全站资产 + 每日增长 + 官方利润表 |
| POST | /api/zn/sync | 立即同步({accountId} 单账号,留空全量) |
| GET/POST | /api/zn/site | 站点配置(公告 / 主题,POST 管理员) |
| GET | /api/zn/logs | 操作记录(管理员) |
官方接口对照
POST https://comm.ams.game.qq.com/ide/
Cookie: openid=...; access_token=...; acctype=qc|wx; appid=1112438254
Referer: https://df.qq.com/
特勤处制造 iChartId=365589 sIdeToken=bQaMCQ source=5 → jData.data.data
哈弗币余额 iChartId=319386 sIdeToken=zMemOt type=3 item=17020000010 → jData.data[0].totalMoney
金币 item=17888808888 票 item=17888808889
玩家资料 iChartId=317814 sIdeToken=QIRBwm
交易行物价 iChartId=352143 sIdeToken=YWRywA method=dfm/place.list (免鉴权)
续期 POST https://ams.game.qq.com/ams/userLoginSvr?a=qcCodeToOpenId...
示例
curl 'https://zk3.nian168.icu/api/zn/overview' -H 'X-ZN-Token: <TOKEN>'
curl -X POST 'https://zk3.nian168.icu/api/zn/sync' -H 'X-ZN-Token: <TOKEN>' \
-H 'Content-Type: application/json' -d '{"accountId":"大号-QQ"}'
← 返回中控