GET

/api/unOfficialMatchPlayerRecord.do

특정 경기에 출전한 개별 선수의 모든 기술 통계(패스 거리/방향, 경합 성공률, 골키퍼 세부지표 등)를 종합 제공합니다.

요청 파라미터 (Request Parameters)

파라미터명 타입(Size) 필수여부 설명
authKey varchar Y API 인증키 (Header 전송 권장)
meet_year varchar(4) Y 대회년도 (예: 2026)
meet_seq varchar(2) Y 대회순번 (예: 1)
team_id varchar(3) Y 구단 코드 (예: K05)
game_id varchar(3) Y 경기번호 (예: 1)

응답 필드 상세 명세 (Response Fields)

필드명 데이터 타입 설명 및 비고
[Common] 공통 응답 필드 (JSON Header)
meet_yearvarchar(4)요청한 대회년도
meet_seqvarchar(2)요청한 대회순번
apiNamevarchar(30)호출된 API 명칭 (unOfficialMatchPlayerRecord)
resultCode varchar(3) 결과 코드 (00: 성공, 그 외 에러는 API 개요 참조)
resultMsgvarchar(100)결과 메시지 ("success")
[Section 1] 선수 마스터 및 기본 출전 정보
MEET_YEAR / MEET_SEQ / GAME_IDvarchar(4) / numeric(2,0) / numeric(3,0)대회년도 / 대회순번 / 경기번호
TEAM_ID / PLAYER_ID / NAMEvarchar(3) / varchar(8) / varchar(20)구단 코드 / 선수 코드 / 선수 성명
BACK_NO / CAPTAIN_YNint / char(1)등번호 (배번) / 주장 여부 (Y/N)
POSITION_CODE / POSITION_NAMEnumeric(4,0) / varchar(40)포지션 코드 / 포지션 명칭 (공통코드:42)
WORK_TIME / WORK_QTYint / varchar(1)출전 시간 (분) / 출전 여부 ('1': 출전)
[Section 2] 공식 득점 및 슈팅/공격 세부 지표 (Attack & Shooting)
GOAL_QTY / ASSIST_QTY / FS_QTYnumeric[공식] 총 득점 수 / 총 도움 수 / 총 피파울 수
ST_QTY / ST_VALID_QTYnumeric[공식] 총 슈팅 수 / 총 유효 슈팅 수
SHOT / SHOT_ON_TARGET / DEFENDER_BLOCKED_SHOTnumeric[부가] 슈팅 시도 / 유효 슈팅 / 수비 차단 슈팅 수
SHOOTING_OFF / SHOOTING_IN_PA / SHOOTING_OUT_PA / SHOT_ON_TARGET_IN_PAnumeric[부가] 벗어난 슈팅 / PA 내 슈팅 / PA 외 슈팅 / PA 내 유효 슈팅 수
OFFSIDE / FREEKICK / CORNER / THROW_INS / ATT_AREA_ENTERnumeric[부가] 오프사이드 / 프리킥 / 코너킥 / 스로인 / 공격지역 진입 횟수
EX_ATT_KEY_PASS_ACC / EX_ATT_KEY_PASSnumeric[부가] 키패스 성공 수 / 전체 키패스 시도 수
DRIBBLE / DRIBBLE_SUCCESS / PCNT_SUCCESS_DRIBBLEnumeric[부가] 드리블 시도 / 드리블 성공 / 드리블 성공률 (%)
[Section 3] 패스 세부 분석 지표 (Passes)
PASS / PASS_ACC / PCNT_ACC_PASSnumeric전체 패스 시도 / 패스 성공 / 패스 성공률 (%)
PASS_F_CA_DEG / PASS_F_ACC_CA_DEG / PCNT_PASS_F_CA_DEGnumeric전방 패스 시도 / 성공 / 전방 패스 성공률 (%)
PASS_B_CA_DEG / PASS_B_ACC_CA_DEG / PCNT_PASS_B_ACC_CA_DEGnumeric후방 패스 시도 / 성공 / 후방 패스 성공률 (%)
TRANSVERSE_PASS / TRANSVERSE_PASS_SUCCESS / PCNT_TRANSVERSE_PASS_SUCCESSnumeric횡패스 시도 / 성공 / 횡패스 성공률 (%)
ATT_AREA_PASS / ATT_AREA_PASS_SUCCESS / PCNT_ATT_AREA_PASS_SUCCESSnumeric공격진영 패스 시도 / 성공 / 성공률 (%)
DEFS_AREA_PASS / DEFS_AREA_PASS_SUCCESS / PCNT_DEFS_AREA_PASS_SUCCESSnumeric수비진영 패스 시도 / 성공 / 성공률 (%)
MIDDLE_AREA_PASS / MIDDLE_AREA_PASS_SUCCESS / PCNT_MIDDLE_AREA_PASS_SUCCESSnumeric중앙진영 패스 시도 / 성공 / 성공률 (%)
SHORT_PASS / SHORT_PASS_SUCCESS / PCNT_SHORT_PASS_SUCCESSnumeric단거리 패스 시도 / 성공 / 성공률 (%)
MEDIUM_PASS / MEDIUM_PASS_SUCCESS / PCNT_MEDIUM_PASS_SUCCESSnumeric중거리 패스 시도 / 성공 / 성공률 (%)
LONG_PASS / LONG_PASS_SUCCESS / PCNT_LONG_PASS_SUCCESSnumeric장거리 롱패스 시도 / 성공 / 성공률 (%)
CROS / CROS_ACC / PCNT_CROS_ACC / CONTROL_UNDER_PRESSUREnumeric크로스 시도 / 성공 / 크로스 성공률 (%) / 탈압박 수
[Section 4] 경합, 태클 및 수비 지표 (Challenges & Defense)
CHALG / CHALG_WON / PCNT_CHALG_WONnumeric지상 챌린지 시도 / 성공 / 경합 성공률 (%)
AIR_CHALG / AIR_CHALG_WON / AIR_CHALLENGE_PCNTnumeric공중볼 챌린지 시도 / 성공 / 성공률 (%)
TACKLE / TACKLE_SUCCESS / PCNT_TACKLE_WONnumeric태클 시도 / 태클 성공 / 태클 성공률 (%)
KICK_OUT / INTERCEPT / CUT_OFF / BALL_RECOVERIE / BLOCKING_SHOOT / BALL_MISSnumeric걷어내기 (클리어) / 인터셉트 / 차단 / 볼 획득 / 슈팅 블락 / 볼 미스
[Section 5] 골키퍼 방어 및 징계/파울 기록 (GK & Discipline)
GOAL_CONCEDED / SHOT_SAVEDnumericGK 총 실점 수 / GK 막은 슈팅 수 (선방)
CATCH / PUNCH / DROPSnumericGK 캐칭 / 펀칭 / 공중볼 드랍 횟수
GOAL_KICK / GOAL_KICK_SUCCESSnumeric골킥 시도 수 / 골킥 성공 수
WARN_QTY / EXIT_QTY / FO_QTY / FOUL / FOUL_SUFFEREDint / numeric경고 수 / 퇴장 수 / 파울 수 (공식 및 부가 집계)

JSON 응답 샘플 (Player Match Stats)

{
    "response": {
        "meet_year": "2026",
        "apiName": "unOfficialMatchPlayerRecord",
        "resultCode": "00",
        "meet_seq": "1",
        "list": [
            {
                "MEET_YEAR": "2026",
                "MEET_SEQ": 1,
                "GAME_ID": 1,
                "TEAM_ID": "K05",
                "PLAYER_ID": "20180025",
                "NAME": "송범근",
                "BACK_NO": 31,
                "CAPTAIN_YN": "N",
                "POSITION_CODE": 1,
                "POSITION_NAME": "GK",
                "WORK_TIME": 95,
                "WORK_QTY": 1,
                "GOAL_QTY": 0,
                "ST_QTY": 0,
                "ST_VALID_QTY": 0,
                "ASSIST_QTY": 0,
                "FS_QTY": 0,
                "SHOT": 0,
                "SHOT_ON_TARGET": 0,
                "DEFENDER_BLOCKED_SHOT": 0,
                "SHOOTING_OFF": 0,
                "SHOOTING_IN_PA": 0,
                "SHOOTING_OUT_PA": 0,
                "SHOT_ON_TARGET_IN_PA": 0,
                "OFFSIDE": 0,
                "FREEKICK": 4,
                "CORNER": 0,
                "THROW_INS": 0,
                "ATT_AREA_ENTER": 0,
                "EX_ATT_KEY_PASS_ACC": 0,
                "EX_ATT_KEY_PASS": 0,
                "DRIBBLE": 0,
                "DRIBBLE_SUCCESS": 0,
                "PCNT_SUCCESS_DRIBBLE": 0,
                "PASS": 28,
                "PASS_ACC": 24,
                "PCNT_ACC_PASS": 86,
                "PASS_F_CA_DEG": 24,
                "PASS_F_ACC_CA_DEG": 20,
                "PCNT_PASS_F_CA_DEG": 83,
                "PASS_B_CA_DEG": 0,
                "PASS_B_ACC_CA_DEG": 0,
                "PCNT_PASS_B_ACC_CA_DEG": 0.000000,
                "TRANSVERSE_PASS": 4,
                "TRANSVERSE_PASS_SUCCESS": 4,
                "PCNT_TRANSVERSE_PASS_SUCCESS": 100.000000,
                "ATT_AREA_PASS": 0,
                "ATT_AREA_PASS_SUCCESS": 0,
                "PCNT_ATT_AREA_PASS_SUCCESS": 0.000000,
                "DEFS_AREA_PASS": 28,
                "DEFS_AREA_PASS_SUCCESS": 24,
                "PCNT_DEFS_AREA_PASS_SUCCESS": 85.710000,
                "MIDDLE_AREA_PASS": 0,
                "MIDDLE_AREA_PASS_SUCCESS": 0,
                "PCNT_MIDDLE_AREA_PASS_SUCCESS": 0.000000,
                "LONG_PASS": 15,
                "LONG_PASS_SUCCESS": 11,
                "PCNT_LONG_PASS_SUCCESS": 73.330000,
                "MEDIUM_PASS": 3,
                "MEDIUM_PASS_SUCCESS": 3,
                "PCNT_MEDIUM_PASS_SUCCESS": 100.000000,
                "SHORT_PASS": 10,
                "SHORT_PASS_SUCCESS": 10,
                "PCNT_SHORT_PASS_SUCCESS": 100.000000,
                "CROS": 0,
                "CROS_ACC": 0,
                "PCNT_CROS_ACC": 0.000000,
                "CONTROL_UNDER_PRESSURE": 0,
                "WARN_QTY": 0,
                "EXIT_QTY": 0,
                "FO_QTY": 0,
                "CHALG": 0,
                "CHALG_WON": 0,
                "PCNT_CHALG_WON": 0.000000,
                "AIR_CHALG": 0,
                "AIR_CHALG_WON": 0,
                "AIR_CHALLENGE_PCNT": 0.000000,
                "TACKLE": 0,
                "TACKLE_SUCCESS": 0,
                "PCNT_TACKLE_WON": 0.000000,
                "KICK_OUT": 0,
                "INTERCEPT": 3,
                "CUT_OFF": 0,
                "BALL_RECOVERIE": 2,
                "BLOCKING_SHOOT": 0,
                "BALL_MISS": 0,
                "FOUL": 0,
                "FOUL_SUFFERED": 0,
                "GOAL_CONCEDED": 0,
                "SHOT_SAVED": 1,
                "CATCH": 0,
                "PUNCH": 1,
                "DROPS": 0,
                "GOAL_KICK": 5,
                "GOAL_KICK_SUCCESS": 3
            }
        ],
        "resultMsg": "success"
    }
}

호출 샘플 소스 (Sample Code)

Auth: Header or QueryString
인증 로드맵: 현재 authKey 기반 인증을 지원하며, 2027년부터 표준 Bearer Token 인증 체계로 통합 확장될 예정입니다.
OkHttpClient client = new OkHttpClient();

// [방법 1] Query String 방식
String url1 = "https://api.kleague.com/api/unOfficialMatchPlayerRecord.do?authKey=YOUR_API_KEY&meet_year=2026&meet_seq=1&team_id=K05&game_id=1";
Request request1 = new Request.Builder().url(url1).get().build();

// [방법 2] Header 방식 (현재 권장)
String url2 = "https://api.kleague.com/api/unOfficialMatchPlayerRecord.do?meet_year=2026&meet_seq=1&team_id=K05&game_id=1";
Request request2 = new Request.Builder()
  .url(url2)
  .addHeader("authKey", "YOUR_API_KEY") 
  .build();

// [방법 3] Bearer Token 방식 (2027년 지원 예정)
Request request3 = new Request.Builder()
  .url(url2)
  .addHeader("Authorization", "Bearer YOUR_ACCESS_TOKEN") 
  .build();
import requests

url = "https://api.kleague.com/api/unOfficialMatchPlayerRecord.do"
params = { 
    "meet_year": "2026", 
    "meet_seq": "1", 
    "team_id": "K05",
    "game_id": "1" 
}

# [방법 1] Query String 방식
response1 = requests.get(url, params={**params, "authKey": "YOUR_API_KEY"})

# [방법 2] Header 인증 방식 (현재 추천)
headers2 = { "authKey": "YOUR_API_KEY" }
response2 = requests.get(url, headers=headers2, params=params)

# [방법 3] Bearer Token 방식 (2027년 도입 예정)
# headers3 = { "Authorization": "Bearer YOUR_ACCESS_TOKEN" }
# response3 = requests.get(url, headers=headers3, params=params)
const url = 'https://api.kleague.com/api/unOfficialMatchPlayerRecord.do';
const params = { meet_year: '2026', meet_seq: '1', team_id: 'K05', game_id: '1' };

// [방법 1] Query String 방식
axios.get(url, { params: { ...params, authKey: 'YOUR_API_KEY' } });

// [방법 2] Header 방식 (현재 권장)
axios.get(url, {
    params: params,
    headers: { 'authKey': 'YOUR_API_KEY' }
});

// [방법 3] Bearer 방식 (2027년 로드맵 대비)
// axios.get(url, { params: params, headers: { 'Authorization': 'Bearer YOUR_TOKEN' } });