GET

/api/inOutRecord.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 구단 코드 (예: K09)
game_id varchar(3) Y 경기번호 (예: 1)

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

필드명 데이터 타입 설명 및 비고
[Common] 공통 응답 필드 (JSON Header)
meet_yearvarchar(4)요청한 대회년도
meet_seqvarchar(2)요청한 대회순번
apiNamevarchar(30)호출된 API 명칭 (inOutRecord)
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 / TEAM_NMvarchar(3) / varchar(15)구단 코드 / 구단명 (약칭)
[Section 2] 교체 In / Out 선수 상세
OUT_PLAYER / OUT_PLAYER_NMvarchar(8) / varchar(20)교체 Out 선수 코드 / 선수 성명 (벤치로 들어가는 선수)
IN_PLAYER / IN_PLAYER_NMvarchar(8) / varchar(20)교체 In 선수 코드 / 선수 성명 (그라운드로 투입되는 선수)
POSITION_CODE / POSITION_NMnumeric(4,0) / varchar(40)투입 포지션 코드 / 포지션명 (공통코드:42)
[Section 3] 발생 시간 및 공식 시간 표기
HALF_TYPEnumeric(4,0)전후반 구분 코드 (1:전반, 2:후반, 3:연장전반, 4:연장후반 / 공통코드:47)
TIME_MIN / TIME_SECnumeric(2,0) / numeric(2,0)교체 발생 시점 분 / 초 (원천 기록)
OFFICIAL_TIMEvarchar(30)공식 표기 시간 (2026년부터 초 단위 올림 및 45+N분 정산 가공 반영)

JSON 응답 샘플 (Substitution Data)

{
    "response": {
        "meet_year": "2026",
        "apiName": "inOutRecord",
        "resultCode": "00",
        "meet_seq": "1",
        "list": [
            {
                "MEET_YEAR": "2026",
                "MEET_SEQ": 1,
                "GAME_ID": 1,
                "TEAM_ID": "K09",
                "TEAM_NM": "서울",
                "OUT_PLAYER": "20180034",
                "OUT_PLAYER_NM": "송민규",
                "IN_PLAYER": "20160099",
                "IN_PLAYER_NM": "정승원",
                "HALF_TYPE": 2,
                "TIME_MIN": 27,
                "TIME_SEC": 10,
                "POSITION_CODE": 3,
                "POSITION_NM": "MF",
                "OFFICIAL_TIME": "후반 28분"
            },
            {
                "MEET_YEAR": "2026",
                "MEET_SEQ": 1,
                "GAME_ID": 1,
                "TEAM_ID": "K09",
                "TEAM_NM": "서울",
                "OUT_PLAYER": "20180073",
                "OUT_PLAYER_NM": "조영욱",
                "IN_PLAYER": "20230093",
                "IN_PLAYER_NM": "황도윤",
                "HALF_TYPE": 2,
                "TIME_MIN": 36,
                "TIME_SEC": 2,
                "POSITION_CODE": 3,
                "POSITION_NM": "MF",
                "OFFICIAL_TIME": "후반 37분"
            },
            {
                "MEET_YEAR": "2026",
                "MEET_SEQ": 1,
                "GAME_ID": 1,
                "TEAM_ID": "K09",
                "TEAM_NM": "서울",
                "OUT_PLAYER": "20240179",
                "OUT_PLAYER_NM": "안데르손",
                "IN_PLAYER": "20160107",
                "IN_PLAYER_NM": "이한도",
                "HALF_TYPE": 2,
                "TIME_MIN": 50,
                "TIME_SEC": 33,
                "POSITION_CODE": 4,
                "POSITION_NM": "FW",
                "OFFICIAL_TIME": "후반 45+6분"
            },
            {
                "MEET_YEAR": "2026",
                "MEET_SEQ": 1,
                "GAME_ID": 1,
                "TEAM_ID": "K09",
                "TEAM_NM": "서울",
                "OUT_PLAYER": "20250331",
                "OUT_PLAYER_NM": "클리말라",
                "IN_PLAYER": "20240254",
                "IN_PLAYER_NM": "후이즈",
                "HALF_TYPE": 2,
                "TIME_MIN": 0,
                "TIME_SEC": 0,
                "POSITION_CODE": 4,
                "POSITION_NM": "FW",
                "OFFICIAL_TIME": "후반 0분"
            }
        ],
        "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/inOutRecord.do?authKey=YOUR_API_KEY&meet_year=2026&meet_seq=1&team_id=K09&game_id=1";
Request request1 = new Request.Builder().url(url1).get().build();

// [방법 2] Header 방식 (현재 권장)
String url2 = "https://api.kleague.com/api/inOutRecord.do?meet_year=2026&meet_seq=1&team_id=K09&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/inOutRecord.do"
params = { 
    "meet_year": "2026", 
    "meet_seq": "1",
    "team_id": "K09",
    "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/inOutRecord.do';
const params = { meet_year: '2026', meet_seq: '1', team_id: 'K09', 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' } });