조회 입력¶
계정 조회 메서드에 넘기는 입력 타입입니다.
FreeSeatCarRequest
¶
FreeSeatCarRequest(
run_date: str,
train_no: str,
departure_construction_order: str,
arrival_construction_order: str,
departure_run_order: str,
arrival_run_order: str,
)
열차 한 편의 자유석 호차 조회 조건을 구성합니다.
GuideSeatConditionRequest
¶
도우미석 이용 안내 조회 조건을 구성합니다.
seat_attribute_code에는 안내를 받을 좌석 속성 코드를 넣습니다. 앱이 도우미석에 쓰는 좌석 속성 코드는 앱 내부 값이
공개돼 있지 않아 확인하지 못했습니다.
SeatAssignmentScheduleRequest
¶
SeatAssignmentScheduleRequest(
menu_id: str,
departure_date: str,
departure_time: str,
departure_station_name: str,
arrival_station_name: str,
train_group_code: str,
room_class_code: str,
seat_attribute_code: str,
passenger_count: int,
standing_detour_division_name: str,
transfer_type_code: str,
connection_arrival_station_name: str,
)
좌석배정 화면의 열차 조회 조건을 구성합니다.
MergeSeatsInquiryRequest
¶
MergeSeatsInquiryRequest(
boarding_datetime: str,
run_datetime: str,
train_no: str,
departure_station_name: str,
arrival_station_name: str,
selected_station_name: str | None,
room_class_code: str,
seat_attribute_code: str,
passenger_count: int,
)
병합 가능한 좌석과 중간역 조회 조건을 구성합니다.
PassScheduleRequest
¶
PassScheduleRequest(
selected_train_code: str,
departure_date: str,
departure_time: str,
transfer_type_code: str,
pass_kind_code: str,
pass_period_code: str,
pass_age_code: str,
page_no: str,
page_size: str,
departure_station_name: str,
arrival_station_name: str,
weekend_use_flag: str,
)
정기권으로 이용 가능한 열차 조회 조건을 구성합니다.
page_no
¶
요청할 페이지 번호(txtSelPage)입니다. 이 값을 바꿔도 서버가 첫 페이지를 돌려줄 수 있으므로, 받을 건수는 page_size로 정하세요.
MaasServiceDetailQuery
¶
부가서비스 이용 내역의 조회 기간을 구성합니다.
history
¶
history(
start_date: str, end_date: str
) -> MaasServiceDetailQuery
시작일~종료일 기간을 보내는 조회 조건을 만듭니다.
KorailMileageLedger
¶
마일리지 원장입니다. "1"은 KTX 마일리지, "2"는 레일포인트입니다.
KorailMileageMovement
¶
마일리지 증감 구분입니다. "0"은 전체, "1"은 적립, "2"는 사용입니다.
MileageHistoryRequest
¶
MileageHistoryRequest(
start_date: str,
end_date: str,
ledger: KorailMileageLedger = KORAIL_MILEAGE_LEDGER_KTX,
movement: KorailMileageMovement = KORAIL_MILEAGE_MOVEMENT_ALL,
page_no: int = 1,
)
마일리지 내역의 기간·종류·페이지 조건을 구성합니다.
기본값은 KTX 마일리지 원장("1"), 전체 증감("0"), 1페이지입니다. start_date와 end_date는 YYYYMMDD
형식이어야 하고 시작일이 종료일보다 늦으면 안 됩니다. 이 검사는 요청을 보내기 전에 합니다.
DiscountCardScheduleRequest
¶
DiscountCardScheduleRequest(
card_kind_management_no: str,
departure_station_name: str,
arrival_station_name: str,
departure_date: str,
card_kind_code: str = "MMM",
usable_trip_count: str = "",
usage_period_days: str | None = None,
page_no: str | None = None,
departure_time: str = "000000",
train_group_code: str = "109",
direct_transfer_division_code: str = "1",
)
N카드 한 구간의 이용 가능한 열차 조회 조건을 구성합니다.
usable_trip_count(usePsbTno)에는 카드의 실제 값을 넣으세요. 앱의 기본 코드는 앱 내부 값이 공개돼 있지 않아
확인하지 못했습니다. 보통 for_card로 만듭니다.
for_card
¶
for_card(
card_kind_management_no: str,
*,
departure_station_name: str,
arrival_station_name: str,
departure_date: str,
usable_trip_count: str = "",
usage_period_days: str | None = None,
page_no: str | None = None,
) -> DiscountCardScheduleRequest
카드 종류 관리번호로 할인카드 종류 코드(card_kind_code, dcntCrdKndCd)를 정해 조회 조건을 만듭니다.
일부 관리번호는 "B2N", 나머지는 "MMM"을 씁니다. 이 구분이 앱과 같은지는 확인하지 못했습니다.
CommuterInitialRequest
¶
CommuterInitialRequest(pass_data: PassMenuData)
정기권 예매의 초기 조건 조회 입력을 구성합니다.
CommuterPassengerRequest
¶
정기권 예매의 승객·인원 조건 조회 입력을 구성합니다.
from_response
¶
from_response(
pass_data: PassMenuData,
source: CommuterInfoResponse,
passenger_counts: tuple[int, ...],
) -> CommuterPassengerRequest
초기 조회 응답과 승객 종류별 인원으로 인원 조건 조회 입력을 만들고 검증합니다.
OriginalTicketReference
¶
OriginalTicketReference(
sale_window_no: str,
sale_date: str,
sale_sequence: str,
return_password: str,
)
원표 조회와 환불·대리수령 같은 후속 처리에 쓰는 반환 식별자를 구성합니다.
네 필드 모두 비어 있지 않은 문자열이어야 하며, 아니면 KorailProtocolError가 발생합니다. sale_date의 형식은
메서드마다 다릅니다. 수령자·대리수령 조회 두 메서드는 승차권의 sale_date(YYYYMMDD)를 받고, 그 밖의 메서드는
return_sale_date(MMDD)를 받습니다. 메서드 사이에 값을 섞어 쓰지 마세요.
TicketDuplicationCheckRequest
¶
PNR 기준 중복 예약 확인 입력을 구성합니다.
KorailSelfSeatChangeRoomClassCode
¶
자율 좌석 변경 조회의 객실 등급 값입니다. "1"은 일반실, "2"는 특실입니다.
SelfSeatChangeInfoRequest
¶
SelfSeatChangeInfoRequest(
run_date: str,
train_no: str,
departure_station_code: str,
arrival_station_code: str,
room_class_code: KorailSelfSeatChangeRoomClassCode
| None = None,
)
자율 좌석 변경 대상 역·사유 조회 입력을 구성합니다.
앱처럼 승차권의 운행일·열차 번호·출발역·도착역을 그대로 넣습니다. room_class_code가 None이면 객실 등급을 보내지
않습니다. run_date는 8자리 숫자, train_no는 5자리 이하 숫자여야 하고 역 코드는 비어 있으면 안 되며, 아니면
KorailProtocolError가 발생합니다.
CommuterTicketInquiryRequest
¶
CommuterTicketInquiryRequest(
original_ticket: OriginalTicketReference,
inquiry_type: Literal["0", "1"] = "0",
)
정기권 예매의 원표 조회 입력을 구성합니다.
CommuterInfoRequest
¶
CommuterInfoRequest = (
CommuterInitialRequest
| CommuterPassengerRequest
| CommuterTicketInquiryRequest
)
get_commuter_info에 넘기는 세 단계 입력 중 하나입니다. 초기 조건(CommuterInitialRequest), 승객·인원 조건(CommuterPassengerRequest), 원표 조회(CommuterTicketInquiryRequest) 중 하나를 넘깁니다.
PriceFareLeg
¶
PriceFareLeg(
departure_station_code: str,
arrival_station_code: str,
run_date: str,
train_no: str,
requested_seat_attribute_code: str,
train_group_code: str,
train_class_code: str,
goods_no: str | None = None,
)
예매 전 운임을 조회할 열차 한 구간을 구성합니다.
goods_no가 None이면 앱처럼 상품 번호(gdNo) 칸을 빈 문자열로 보냅니다. None이 아닌 값은 모두 비어 있지
않은 문자열이어야 하고 쉼표를 포함할 수 없으며, 아니면 KorailProtocolError가 발생합니다.
PriceFareQuoteRequest
¶
PriceFareQuoteRequest(
legs: tuple[PriceFareLeg, ...], menu_id: str = "11"
)
한두 구간의 운임 조회 조건과 메뉴를 구성합니다.
legs는 PriceFareLeg 한 개 또는 두 개여야 하며, 아니면 KorailProtocolError가 발생합니다. goods_no는 모든
구간에 넣거나 모두 비워 두세요. 앱이 보내는 메뉴 값은 앱 내부 값이 공개돼 있지 않아 확인하지 못했습니다.
TicketReservationDetailRequest
¶
PNR 기준 예약 상세 조회 입력을 구성합니다.
PNR은 hidPnrNo로 보냅니다. pnr_no가 비어 있으면 KorailProtocolError가 발생합니다.
RefundCompanion
¶
환불 수수료 조회에 사용할 동반자 이름과 생년월일을 구성합니다.
이름은 name, 생년월일은 certificate_no에 넣습니다. 동반자가 없으면 기본값(빈 문자열)을 그대로 두세요. 빈 값은
요청에 싣지 않습니다.