> For the complete documentation index, see [llms.txt](https://docs.ggwp.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ggwp.com/kr/api-6/telemetry.md).

# 원격 측정

\[ 기본 URL: `api.ggwp.com`]

`POST` /data/v1/ingest

## **설명**

개별 경기 또는 세션에 해당하는 게임플레이 텔레메트리 데이터를 보고하며, 경기 진행 중 특정 플레이어 행동을 추적합니다. 이 정보는 특정 사건(예: 자리 비움(AFK), 아군 피해, 의도적 먹이주기 등)을 검증하고 GGWP의 중재 도구에서 사건이나 플레이어를 검토할 때 추가 맥락을 제공하는 데 사용될 수 있습니다.

게임이 기록하는 몇 가지 일반적인 텔레메트리 이벤트는 다음과 같습니다:

* 세션 시작/종료 시간
* 플레이어 위치
* 플레이어 행동 - 이동, 공격, 플레이, 아이템 획득, 사망, 부활 등

## **매개변수**

`본문`: 다음 필드를 포함하는 사전(Dictionary):

* **type**: `텔레메트리`
* **session\_id**: 경기의 고유 식별자.
* **start\_time**: 에서의 경기 시작 시간 *YYYY-MM-DD HH:MM:SS* 형식, UTC 기준.
* **end\_time**: 에서의 경기 종료 시간 *YYYY-MM-DD HH:MM:SS* 형식, UTC 기준.
* **events**: 각각 사전으로 표현된 이벤트 로그의 목록.
* 샘플 호출

  ```bash
  curl --request POST 'https://api.ggwp.com/data/v1/ingest' \
  --header 'x-api-key: api_key' \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "type": "telemetry",
    "session_id": "<id1>",	
    "start_time": "2022-01-25 09:44:00",
    "end_time": "2022-01-25 10:12:23",
    "events": [
      {
        "event_type": "playerSessionStart", 
        "timestamp": "2022-01-25 09:43:35",
        "user_id": "<id1>",
        "team_id": "1",
        "event_details": {}
      },
      {
        "event_type": "playerPosition", 
        "timestamp": "2022-01-25 09:44:30",
        "user_id": "<id1>",
        "team_id": "1",
        "event_details": {
          "location": {
            "x": 103450,
            "y": 200560,
            "z": 102
          }
        }
      },
      {
        "event_type": "playerAction", 
        "timestamp": "2022-01-25 09:45:13",
        "user_id": "<id1>",
        "team_id": "1",
        "event_details": {
          "action_type": "attack",   
          "action_target": "<id3>",
          "location": {
            "x": 421450,
            "y": 113460,
            "z": 10
          },
          "damage": 50,
          "weapon": "gun"
        }
      },
      ...
    ] 
  }'
  ```

## **출력**

* 200 - 성공적인 작업

  ```json
  {
    "status": "success"
  }
  ```
* 400
  * 오류 응답. 이벤트가 시스템에 삽입되지 않았습니다. 다음 경우에 이 오류가 발생합니다:
    * `잘못된 본문. JSON 입력을 예상했습니다`
      * 데이터 페이로드가 JSON 형식이 아닙니다
    * `데이터 페이로드가 너무 큽니다`
      * 데이터 페이로드가 1MB를 초과합니다
* 403
  * 유효하지 않거나 누락된 API 키입니다.
* 500
  * 오류 응답. 이벤트가 시스템에 삽입되지 않았습니다. 요청을 처리하는 동안 서버에 오류가 발생했습니다.
