18ab7eab92
按 docs/api 一接口一文件约定新增:
- 钱包(11): account / coin-transactions / cash-transactions / exchange-info / exchange / bind-wechat / unbind-wechat / withdraw-info / withdraw / withdraw/status / withdraw-orders
- 签到(2): status / 执行签到
- 任务(2): list / {task_key}/claim
- 省钱(3): summary / battle / records
- 看广告发奖(3): pangle-callback(S2S验签) / reward-status / test-grant(仅联调)
- README 索引补 12–32 行 + 新增「游标分页约定」+ 修正鉴权说明 + 注明金额以分为单位
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1.4 KiB
1.4 KiB
GET /api/v1/ad/pangle-callback — 穿山甲激励视频发奖回调(S2S)
所属:Ad 组(前缀
/api/v1/ad) | 鉴权:无 JWT,靠验签(穿山甲服务器调用) | 限流:同 IP ≤300 次/分 | ← 返回 API 索引
入参(query,由穿山甲拼装)
穿山甲在激励视频播完后回调,带一组 query 参数,关键:
| 字段 | 类型 | 说明 |
|---|---|---|
user_id |
string | 客户端起播时传入的用户标识(须为数字 = 本系统 user.id) |
trans_id |
string | 穿山甲交易号(幂等键) |
sign |
string | 穿山甲签名(用 PANGLE_REWARD_SECRET 验) |
reward_name |
string | 奖励名(可选,入库备注) |
| … | 其余参与签名的参数 |
出参
响应 200:PangleCallbackOut
| 字段 | 类型 | 说明 |
|---|---|---|
is_valid |
bool | true=已受理(发奖成功 或 当日达上限 或 user 非法,均不让穿山甲重试) |
错误码
403验签失败(bad sign,留给真请求重试)503回调未配置(pangle_callback_configured=false)
说明
发奖唯一可信入口:验签 → 取 user_id/trans_id → 幂等发金币(按 trans_id 去重 + 每日上限)。客户端不参与发奖,被破解也刷不到钱。验签过但参数缺/坏或 user 不存在 → 受理但不发(is_valid 仍据情况返回,避免无意义重试)。