air-intl-search API 분석 계획

프로젝트 개요

  • 프로젝트명: air-intl-search (국제 항공 검색 서비스)
  • 소스 위치: /workspace/nol/nol-triple/air-intl-search
  • 기술 스택: Kotlin, Spring Boot (WebMVC)
  • 문서 생성 위치: /workspace/molidae/docs/nol/nol-triple/air-intl-search

API 분류

1. Public APIs

클라이언트(앱/웹)에서 직접 호출하는 API

ControllerBase Path설명
FlightSearchController/flights항공편 검색 (편도/왕복/다구간)
FlightDetailController/flights/detail항공편 상세 정보, 운임 규정, 카드 혜택
FareRuleController/fare-rules운임 규정 비동기 조회

2. Internal APIs

내부 서비스 간 호출용 API

ControllerBase Path설명
FlightSearchInternalController/internals/flights내부용 항공편 검색 (재발행 포함)
FlightDetailInternalController/internals/flights/detailPNR 기반 항공편 상세 조회

3. Admin APIs

관리자용 API (특수 헤더 필요)

ControllerBase Path설명
FlightSearchAdminController/internals/admin/flightsSplit/Combined 검색 지원
FlightMetaSearchAdminController/internals/admin/flights/meta메타 검색 전용

4. Proxy APIs

프록시 서비스용 API (특수 헤더 필요)

ControllerBase Path설명
FlightSearchProxyController/internals/proxy/flights프록시 검색
FareRuleProxyController/internals/proxy/flights/fare-rules프록시 운임 규정
FlightMetaSearchProxyController/internals/proxy/flights/meta프록시 메타 검색
FlightSearchV2ProxyController/internals/proxy/flights/search/v2V2 프록시 검색

문서 생성 계획

Phase 1: 핵심 Public API

  1. FlightSearchController - 항공편 검색의 핵심 API
  2. FlightDetailController - 상세 정보 조회
  3. FareRuleController - 운임 규정

Phase 2: Internal API

  1. FlightSearchInternalController - 내부 검색 + 재발행
  2. FlightDetailInternalController - PNR 기반 상세

Phase 3: Admin API

  1. FlightSearchAdminController - 관리자 검색
  2. FlightMetaSearchAdminController - 메타 검색

Phase 4: Proxy API

  1. FlightSearchProxyController - 프록시 검색
  2. FareRuleProxyController - 프록시 운임 규정
  3. FlightMetaSearchProxyController - 프록시 메타 검색
  4. FlightSearchV2ProxyController - V2 프록시 검색

공통 요소

검색 파라미터

  • originType/destinationType: LocationType (AIRPORT, CITY)
  • origin/destination: IATA 코드 (3자리)
  • outboundDate/inboundDate: LocalDate (ISO 형식)
  • cabins: Set (ECONOMY, BUSINESS, FIRST 등)
  • adult/child/infant: 승객 수
  • freeBaggageOnly: 무료 수하물 항공편만
  • useCache: 캐시 사용 여부

검색 유형

  • 편도 (One-Way): 1개 구간
  • 왕복 (Round-Trip): 2개 구간 (출발지-목적지, 목적지-출발지)
  • 다구간 (Multi-City): 2~4개 구간

응답 방식

  • 비동기 폴링: listKey 반환 → 폴링으로 결과 조회
  • 동기 응답: 즉시 결과 반환 (Admin/Proxy)

헤더 요구사항

  • Admin/Proxy API: X-Triple-Sales-Channel, X-Triple-Sales-Funnel 필수
  • 캐시 키: X-Cached-Search-Key (Split 검색 시)

생성된 DFS 문서 목록

순번문서설명
0101-FlightSearchController-DFS항공편 검색 (Public API)
0202-FlightDetailController-DFS항공편 상세 정보 (Public API)
0303-FareRuleController-DFS운임 규정 비동기 조회 (Public API)
0404-FlightSearchInternalController-DFS내부용 항공편 검색 + 재발행
0505-FlightDetailInternalController-DFSPNR 기반 상세 조회 (Internal)
0606-FlightSearchAdminController-DFS관리자용 검색 (SPLIT/COMBINED)
0707-FlightMetaSearchAdminController-DFS메타 검색 관리자용
0808-FlightSearchProxyController-DFS프록시 검색
0909-FareRuleProxyController-DFS프록시 운임 규정
1010-FlightMetaSearchProxyController-DFS메타 검색 프록시
1111-FlightSearchV2ProxyController-DFSV2 프록시 검색

문서 생성 정보

  • 생성일: 2025-12-15
  • 소스 버전: air-intl-search (최신)
  • 문서 형식: Obsidian 호환 마크다운