Player Reports Web APIs

플레이어 리포트 웹 API를 사용하여 RESTful 서비스를 통해 플레이어 리포트 인터페이스 기능을 사용합니다.

5 분 소요

API 엔드포인트

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

새 플레이어 리포트 전송

정책

사용하는 클라이언트 정책에는 다음 권한이 있어야 합니다.

  • playerreports:sendReportForAnyUser: 클라이언트가 플레이어 대신 리포트를 전송할 권한이 있는 경우입니다. 리포트는 일반적으로 게임 서버에서 옵니다.

인증

이 호출은 연결 인터페이스에서 얻은 EOS 클라이언트 인증 액세스 토큰을 통한 Bearer 토큰 인증이 필요합니다.

요청

HTTP 요청 POST /player-reports/v1/report
HTTP 헤더
이름
Content-Type application/json
요청 본문
이름 유형 설명 필수 여부
reportingPlayerId String 리포트하는 EOS productUserId입니다.
reportedPlayerId String 리포트된 EOS productUserId입니다. 'reportingPlayerId'와 달라야 합니다.
time String ISO 8601RFC3339에 정의된 대로 리포트가 발행된 시간입니다. 예시: 2021-01-01T00:00:00.000Z
reasonId Integer 리포트 사유 ID입니다. 유효한 ID여야 합니다. 자세한 내용은 /player-reports/v1/report/reason/definition API 엔드포인트를 참조하세요.
message String 리포트 메시지의 최대 길이는 1,024자 입니다. 아니요
context String 모든 유효한 Json입니다. 개발자에게 유용한 것으로 여겨지는 모든 관련 정보입니다. 최대 길이는 4,096자입니다. 아니요

요청 예시

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 Response 201 - CREATED: Success.

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

플레이어 리포트 찾기

정책

사용하는 클라이언트 정책에는 다음 권한이 있어야 합니다.

  • playerreports:findReportsForAnyUser: 클라이언트가 모든 플레이어의 리포트를 가져올 권한이 있는 경우입니다.

인증

이 호출은 연결 인터페이스에서 얻은 EOS 클라이언트 인증 액세스 토큰을 통한 Bearer 토큰 인증이 필요합니다.

요청

HTTP 요청 GET /player-reports/v1/report/<deploymentId>
요청 파라미터
이름 유형 설명 필수 여부
deploymentId String EOS deploymentId입니다. 액세스 토큰이 생성한 deploymentId와 같아야 합니다.
reportingPlayerId String 리포트하는 EOS productUserId입니다. “reportingPlayerId”와 “reported PlayerId”는 둘 다 비워 두면 안 됩니다. 아니요
reportedPlayerId String 리포트된 EOS productUserId입니다. “reportingPlayerId”와 “reported PlayerId”는 둘 다 비워 두면 안 됩니다. 아니요
reasonId Integer 리포트 사유 ID입니다. 유효한 ID여야 합니다. 자세한 내용은 /player-reports/v1/report/reason/definition API 엔드포인트를 참조하세요. 아니요
startTime String startTime 이후에 발행된 리포트를 반환합니다.ISO 8601RFC3339에 정의된 대로 리포트가 발행된 시간입니다. 예시: 2021-01-01T00:00:00.000Z 아니요
endTime String endTime 이전에 발행된 리포트를 반환합니다. ISO 8601RFC3339에 정의된 대로 리포트가 발행된 시간입니다. 예시: 2021-01-01T00:00:00.000Z 아니요
pagination Boolean 페이지네이션 응답을 활성화하거나 비활성화합니다. 기본값 : false 아니요
offset Integer 페이지네이션 오프셋입니다. 기본값: 0 아니요
limit Integer 호출당 반환된 리포트 수입니다. 기본값: 50 아니요
order String 리포트가 반환된 명령입니다. 가능한 값: * time:desc * time:asc * reasonId:asc * reasonId:desc 기본값: 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 Response 200 - OK: Success.
HTTP 헤더
이름
Content-Type application/json
JSON 페이로드
이름 유형 설명
elements Array<Report> 리포트 목록입니다.
paging Object<Paging> 페이지네이션 정보입니다.
페이징
offset Integer 페이지네이션 오프셋입니다.
limit Integer 호출당 반환된 리포트 수입니다.
total Integer 총 리포트 수입니다.
리포트
productId String 게임 EOS productId입니다.
sandboxId String 게임 EOS sandboxId입니다.
deploymentId String 게임 EOS deploymentId입니다.
time String ISO 8601RFC3339에 정의된 대로 리포트가 발행된 시간입니다. 예시: 2021-01-01T00:00:00.000Z
reportingPlayerId String 리포트하는 EOS productUserId입니다.
reportedPlayerId String 리포트된 EOS productUserId입니다.
reasonId Integer 리포트 reasonId입니다.
message String 리포트 콘텐츠입니다.

응답 예시

{
"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": "이 플레이어는 부정행위를 하고 있습니다"
}
]
}

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 Response 200 - OK: Success.
HTTP 헤더
이름
Content-Type application/json
JSON 페이로드
이름 유형 설명
elements Array<ReportReason> 리포트 사유 목록입니다.
ReportReason
reasonId Integer 리포트 사유 ID입니다
reasonString String reasonId를 설명하는 문자열입니다.

응답 예시

{
"elements": [
{
"reasonId": 1,
"reasonString": "부정행위"
},
{
"reasonId": 2,
"reasonString": "악용"
},
{
"reasonId": 3,
"reasonString": "부적절한 프로필"
},
{
"reasonId": 4,
"reasonString": "언어 폭력"
},
{
"reasonId": 5,
"reasonString": "사기"
},
{
"reasonId": 6,
"reasonString": "스팸"
},
{
"reasonId": 7,
"reasonString": "기타 부정적인 행위"
}
]
}