多人数据上报
数据上报接口
在每一轮游戏开始后,上报本轮游戏相关数据。
频率限制:单个 appID 调用上限为 30 次/秒。
请求地址
POST https://webcast.bytedance.com/api/business/round/info
请求参数
- 请求Headers
属性 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Byte-Authorization | string | 是 | 详情可参考: 「签名及验签指南」 |
Content-Type | string | 是 | 必须包含 application/json |
- 请求Body
Body 需要以 JSON 格式填充
属性 | 数据类型 | 必填 | 说明 |
---|---|---|---|
app_id | string | 是 | 应用appID |
round_id | string | 是 | 一轮游戏的唯一标识 |
anchor_open_id | string | 是 | 主播openID |
room_id | string | 是 | 房间ID |
start_time | int64 | 是 | 游戏开始时间戳 |
end_time | int64 | 是 | 游戏结束时间戳 |
end_status | int64 | 是 | 结束状态。1-正常 2-非正常 |
start_user_list | list | 是 | 开局 参加游戏玩家信息 |
end_user_list | list | 是 | 游戏结束玩家信息 |
mvp_list | list | 是 | 获胜玩家信息 |
start_user_list、end_user_list、mvp_list 的长度均不能大于 100
start_user_list 与 end_user_list 的 item 结构为:
属性 | 数据类型 | 必填 | 说明 |
---|---|---|---|
user_open_id | string | 是 | 用户ID |
diamonds | int64 | 是 | 抖币数量(没有支付填写0) |
order_id | string | 否 | 玩家参与本轮游戏支付的订单号 |
主播如果是获胜方也需要放入 mvp_list
mvp_list 的 item 结构为:
属性 | 数据类型 | 必填 | 说明 |
---|---|---|---|
user_open_id | string | 是 | 用户ID |
rank | int64 | 是 | 获胜方排名 |
返回值
建议开发者对返回内容进行验签,验签详情可参考:「签名及验签指南」
- 正确返回的 JSON 数据包
属性 | 数据类型 | 说明 |
---|---|---|
status | string | 状态码 1-成功 非1-失败 |
- 异常返回的JSON数据包
属性 | 数据类型 | 说明 |
---|---|---|
errcode | number | 错误码 |
errmsg | string | 错误信息 |
errcode 的合法值
错误码 | 错误信息 | 描述 |
---|---|---|
-1 | system error | 服务内部异常 |
40001 | request params are invalid | 参数有误 |
40002 | you don't have permission | 通常为小程序没有该项能力 |
40007 | over frequency control | 调用频率过高 |
40014 | required param not found | 缺少必要的参数 |
50002 | invalid params of signature | 签名参数有误 |
50003 | out-dated signed timestamp | 签名参数上的时间戳距离当前时间过久 |
50004 | verify signature fail | 验签失败 |
50012 | data does not exist | 数据不存在 |
返回数据示例
- 请求
curl -v -d '{"app_id":"tt3f0849b5a030ed4c0d","round_id":"15599869966","anchor_open_id":"2da06ea8-7a8c-476e-bb7c-de86494d5506","room_id":"9099999761","start_time":1649837330,"end_time":1649837930,"end_status":1,"start_user_list":[{"user_open_id":"eb8a2530-772a-46df-86eb-a4a8bdf5d703","order_id":"55555","diamonds":1},{"user_open_id":"6957a2bf-7697-44bc-b409-86fd2f6d3a8a","order_id":"11155","diamonds":1},{"user_open_id":"f130ab1e-d752-4161-ac36-6c8bb963cb27","order_id":"","diamonds":2}],"end_user_list":[{"user_open_id":"f130ab1e-d752-4161-ac36-6c8bb963cb27","order_id":"","diamonds":1},{"user_open_id":"6957a2bf-7697-44bc-b409-86fd2f6d3a8a","order_id":"66666","diamonds":2}],"mvp_list":[{"user_open_id":"6957a2bf-7697-44bc-b409-86fd2f6d3a8a","rank":1}]}' -H 'Byte-Authorization: SHA256-RSA2048 appid="ttxxx",nonce_str="DC10180A100073E70A48F195DA2AF2E6",timestamp="1623934869",key_version="1",signature="nwd1L3wCX+01/TVTkILeovF1DtYeghC1VHjrcjTHVkh7+gRaONEQkC2Y72Mw8JdSnIyeAtyp/pDHzyKGywjVqv5+JOBEhQG1/pvwNHN49wD26qg3AJL4hXw0fMJSRiTQEV1MszwDLuaabvo/qM9OXL9KyYiEPwVJqYtzmho4cHXT6mYgzNOW1xt5d7RDf4QO74JI3i4dtk9Uj8svJTrrBabML6AUcqcx2OP/7xukdaUgPdPf+IqmMG6GC4n52LUDogcL5n/osLdfHg9l6kW5gDcDjBfNDaggz07QMPHGdVao7pnQ2ub7VqcFIuY6Q3cBL7ndQdDGKrv+WBy5Q90QjQ=="' -H 'Content-Type: application/json' -H 'Accept: application/json' -X POST https://webcast.bytedance.com/api/business/round/info
- 正常返回
{ "status": 1 }
- 错误返回
{ "errcode": 400, "errmsg": "invalid params", "message": "" }