Player Reports Web APIs

通过玩家报告Web API,使用玩家报告接口功能和RESTful服务。

阅读时间5分钟

API 端点

https://api.epicgames.dev/player-reports/v1/report

发送新玩家报告

策略

使用的客户端策略必须具有以下任一权限:

  • playerreports:sendReportForAnyUser :客户端有代表玩家发送报告的权限。通常为报告来自游戏服务器的情况。

授权

此调用要求使用从连接接口获取的 EOS 客户端身份验证访问令牌来进行 Bearer 令牌授权。

请求

HTTP请求 POST /player-reports/v1/report
HTTP标头
名称
内容类型 application/json
请求正文
名称类型说明是否必填
reportingPlayerId 字符串 用于制作报告的EOS productUserId
reportedPlayerId 字符串 已报告的EOS productUserId。它必须不同于“reportingPlayerId”。
时间 字符串

ISO 8601RFC3339格式显示的报告发布时间。 示例: 2021-01-01T00:00:00.000Z

reasonId 整型

报告原因ID。它必须是有效ID。参阅

/player-reports/v1/report/reason/definition

api端点了解更多信息

消息 字符串 最大长度为1024个字符的报告消息
上下文 字符串 所有有效的Json。适用于所有对开发人员有用的相关信息。最大长度为4096个字符

请求示例

curl --location --request POST 'https://api.epicgames.dev/player-reports/v1/report' \
--header 'Content-Type: text/plain' \
--data-raw '{
"time": "2020-04-02T00:00:00.000Z",
"reportingPlayerId": "player_1",
"reportedPlayerId": "player_2",
"reasonId": 1,
"message":"该玩家正在作弊",
"context" : "{\"key\": \"value\"}"
}'

响应

HTTP响应201 - 已创建:成功。

https://api.epicgames.dev/player-reports/v1/report/<deploymentId>

查找玩家报告

策略

使用的客户端策略必须具有以下任一权限:

  • playerreports:findReportsForAnyUser : 客户端具有获取玩家报告的权限。

授权

此调用要求使用从连接接口获取的 EOS 客户端身份验证访问令牌来进行 Bearer 令牌授权。

请求

HTTP请求 GET /player-reports/v1/report/<deploymentId>
请求参数
名称类型说明是否必填
deploymentId 字符串 EOS deploymentId。它必须与访问令牌生成的deploymentId匹配
reportingPlayerId 字符串 制作报告的EOS productUserId。“reportingPlayerId”和“reported PlayerId”不能同时为空
reportedPlayerId 字符串 已报告的EOS productUserId。“reportingPlayerId”和“reported PlayerId”不能同时为空
reasonId 整型

报告原因ID。它必须是有效ID。参阅

/player-reports/v1/report/reason/definition

api端点了解更多信息

startTime 字符串

在startTime之后发出的返回报告。以ISO 8601RFC3339格式显示的报告发布时间。 示例: 2021-01-01T00:00:00.000Z

endTime 字符串

返回在endTime之前发布的报告。以ISO 8601RFC3339格式显示的报告发布时间。 示例: 2021-01-01T00:00:00.000Z

分页 布尔值

启用/禁用分页响应。默认值:false

偏移 整型

分页偏移默认值:0

限制 整型

每次调用返回的报告计数默认值:50

顺序 字符串

返回报告遵循的顺序如下:可能的值: * time:desc * time:asc * reasonId:asc * reasonId:desc Default value: time:desc

请求示例

curl --location --request GET 'https://api.epicgames.dev/player-reports/v1/report/deployment_0?reportingPlayerId=player_1&reportingPlayerId=player_2&reportingPlayerId=player_3&reasonId=1&reasonId=2&pagination=true&offset=0&limit=10&startTime=2018-05-01T00:00:00.000&endTime=2020-06-01T00:00:00.000Z&order=time:asc'

响应

HTTP响应200 - OK:成功。
HTTP标头
名称
内容类型 application/json
JSON负载
名称类型说明
元素 Array<Report> 报告列表
分页Object<Paging>分页信息
分页
偏移 整型 分页偏移
限制 整型 每次调用返回的报告计数
总计 整型 报告总数
报告
productId 字符串 游戏EOS productId
sandboxId 字符串 游戏EOS sandboxId
deploymentId 字符串 游戏EOS deploymentId
时间 字符串

ISO 8601RFC3339格式显示的报告发布时间。 示例: 2021-01-01T00:00:00.000Z

reportingPlayerId 字符串 制作报告的EOS productUserId
reportedPlayerId 字符串 已报告的EOS productUserId
reasonId 整型 报告reasonId
消息 字符串 报告内容

示例响应

{
"paging": {
"offset": 0,
"limit": 1,
"total": 1
},
"elements": [
{
"productId": "product_0",
"sandboxId": "sandbox_0",
"deploymentId": "deployment_0",
"time": "2019-04-01T00:00:00.000Z",
"reportingPlayerId": "player_1",
"reportedPlayerId": "player_2",
"reasonId": 1,
"message": "This player is cheating"
}
]
}

https://api.epicgames.dev/player-reports/v1/report/reason/definition

获取报告原因定义

策略

调用该报告定义 api 无需特殊的客户端权限

授权

此调用要求使用从连接接口获取的 EOS 客户端身份验证访问令牌来进行 Bearer 令牌授权。

请求

HTTP请求 GET /player-reports/v1/report/reason/definition

请求示例

curl --location --request GET 'https://api.epicgames.dev/player-reports/v1/report/reason/definition'

响应

HTTP响应200 - OK:成功。
HTTP标头
名称
内容类型 application/json
JSON负载
名称类型说明
元素 Array<ReportReason> 报告理由列表
ReportReason
reasonId 整型 报告原因ID
reasonString 字符串 描述reasonId的字符串

响应示例

{
"elements": [
{
"reasonId": 1,
"reasonString": "作弊"
},
{
"reasonId": 2,
"reasonString": "攻击"
},
{
"reasonId": 3,
"reasonString": "简介粗俗"
},
{
"reasonId": 4,
"reasonString": "辱骂他人"
},
{
"reasonId": 5,
"reasonString": "诈欺"
},
{
"reasonId": 6,
"reasonString": "诈欺"
},
{
"reasonId": 7,
"reasonString": "其他负面行为"
}
]
}