抖音小游戏「游戏站」礼包消息推送接入指引
技术接入流程 - 礼包模块
参考流程图:
游戏站礼包通过消息推送的形式给用户发货,开发者需要在平台上配置好推送的地址,当用户领取礼包时,平台将同步把请求推送到开发者服务器,整体流程可见下图
为了保障用户领取礼包的体验,开发者需要在礼包上线前做好发货的逻辑验证,并在上线期间保障推送地址所在服务的稳定性,避免出现用户领取礼包失败、领取礼包进入游戏后找不到等问题。建议开发者按照如下流程完成接入:
详细路径:
步骤一:消息推送能力接入
步骤二:道具发货协议
在具体的发货请求中,有效的 payload 会放在请求的 body 中,开发者可在验签成功后对 body 进行解析,并执行具体的发货业务逻辑。
请求
编码协议:JSON
字段 | 必须 | 说明 |
gift_id | 否 | 发货时对应的礼包ID,正式请求一般有,在道具测试阶段无 |
gift_code | 是 | 此次发货使用的库存 cdk 由于平台无法保障一次发货业务只触发一次消息推送,在执行发货时,开发者需通过 cdk 保障幂等,避免同一个 cdk 被多次使用,造成损失 |
open_id | 是 | 领奖用户的 open_id |
prop_list | 是 | 此次发货的道具列表,正常情况下,开发者需给用户账号增加这些道具资产 |
prop_list.prop_id | 是 | 道具列表中当前道具的道具ID |
prop_list.name | 是 | 道具列表中当前道具的道具名称 |
prop_list.count | 是 | 道具列表中当前道具的发货数量 |
env_type | 是 | 发货请求的环境标识
|
send_time | 是 | 礼包推送请求触发的秒级时间戳 |
示例:
{ "gift_id": 7461891275051078697, "gift_code": "cdk0000001", "open_id": "_0000-vQJEof2jifeowf1TbzSda6jg", "prop_list": [ { "prop_id": "coin003", "name": "游戏金币", "count": 5 }, { "prop_id": "skin002", "name": "皮肤", "count": 1 } ], "env_type": "production", "send_time": 1737619782 }
响应
正常响应
HTTP 状态码:200
HTTP 响应体:JSON
{ "success": true }
异常响应
HTTP 状态码:200(非200响应可能导致礼包下架, 无法发货请通过下方错误码返回)
HTTP 响应体:JSON
{ "success": false, "err_code": 100001, "reason": "失败原因" }
err_code 错误码枚举:
err_code | 说明 |
100001 | 未注册/未登录/未创建角色,用户未满足领取条件 |
100002 | 触发频控,允许稍后重试 |
步骤三:道具推送测试
推送测试 | 示例图 |
| |
| |
|
|
步骤四:礼包下发弹窗-告知用户
推送测试 | 示例图 |
|
步骤五:配置道具&礼包,完成上线
| 示例图 |
配置入口
| 开发者后台展示 游戏站礼包 |
配置道具
| 创建道具 道具管理列表 |
配置礼包,完成上线
| 创建礼包 礼包管理列表 |