跳到主要内容

发放奖励

POST /v1/grant-reward

向指定合作方用户已绑定的游戏角色发放活动奖励。奖励将通过游戏内邮件发送到角色的邮箱中。

警告

此接口为 同步接口,调用后即返回发放结果。合作方无需额外轮询或等待回调。

Request

PropertyTypeRequiredDescription
game_idstringTrue游戏 ID。
event_idintTrue活动 ID。由世游运营提供。
partner_user_idstringTrue合作方平台的用户唯一标识。
server_idintTrue游戏服务器 ID。必须与绑定记录中的服务器一致。
role_idstringTrue角色 ID。必须与绑定记录中的角色一致。
reward_bundle_idstringTrue奖励包 ID。由世游运营提供,必须是该活动配置中已存在的礼包。
partner_grant_reward_idstringTrue合作方侧的奖励发放唯一标识。合作方需要保证其全局唯一,至少要保证在同一游戏下唯一。

示例:

{
"game_id": "example_game",
"event_id": 1001,
"partner_user_id": "user_12345",
"server_id": 10001,
"role_id": "1054832",
"reward_bundle_id": "bundle_spring_gift",
"partner_grant_reward_id": "grant_67890"
}

Response

发放成功时返回空 JSON 对象:

{}

合作方通过 HTTP Status Code 为 200 即可确认发放成功。

失败场景以 ErrorResponse 返回,发放结果也可随时通过 查询奖励 确认。

提示

建议合作方为每笔奖励生成全局唯一的 partner_grant_reward_id,例如使用 UUID 或业务订单号。

警告

重试发放时必须使用相同partner_grant_reward_id。如果使用新的 partner_grant_reward_id,会被视为一笔新的发放请求,可能导致重复发放。

Errors

ErrorDescription
invalid_request请求参数缺失或格式错误,或指定的活动 / 奖励包不存在。具体原因请查看 message 字段。
invalid_signature签名验证不通过。
partner_disabled合作方已被禁用。
binding_not_found该用户在该游戏中未绑定角色。
event_not_active活动不在有效期内或状态不是进行中。
event_in_testing活动处于测试中,非内部测试员不可参与。
claim_limit_exceeded该角色在该奖励包上的领取次数已达上限。
duplicate_grant重复的发放请求(相同 partner_grant_reward_id 且已成功发放),不会重复发放,可视为已发放成功。
conflict_grant当前有其他发奖请求正在处理中(同一角色与奖励包上的并发请求),可稍后重试。
failed_grant奖励发放失败且不可重试,使用相同 partner_grant_reward_id 再次调用仍会返回此错误。
internal_error服务端内部错误。