1. TripPlan
Airoad
  • TripPlan
    • 사용자의 여행 일정 목록 조회
      GET
    • 여행 일정 생성 세션 생성
      POST
    • 여행 일정 상세 조회
      GET
    • AI 여행 일정 생성 시작
      POST
    • 여행 일정 삭제
      DELETE
    • 여행 일정 제목 수정
      PATCH
    • 일정 장소 순서 교환
      PATCH
    • 여행 일차별 일정 목록 조회
      GET
  • Auth
    • 액세스 토큰 재발급
      POST
    • 로그아웃
      POST
  • Member
    • 현재 로그인한 사용자 정보 조회
      GET
    • 현재 로그인한 사용자 이름 조회
      GET
  • ChatRoom
    • 채팅방 메시지 이력 조회
      GET
  • Schemas
    • TripPlanCreateRequest
    • ChannelIdResponse
    • CommonResponse
    • ReissueTokenRequest
    • CreateAiPromptTemplateRequest
    • TokenResponse
    • TripPlanUpdateRequest
    • UpdateAiPromptTemplateRequest
    • ScheduledPlaceSwapRequest
    • AiPromptTemplateResponse
    • TripPlanResponse
    • TripPlanDetailResponse
    • DailyPlanResponse
    • PlaceResponse
    • ScheduledPlaceResponse
    • MemberResponse
    • MemberNameResponse
    • ChatMessageResponse
    • TripPlanProgressMessage
    • ChatStreamDto
    • ChatMessageRequest
    • ErrorResponse
    • PageResponse
  1. TripPlan

AI 여행 일정 생성 시작

POST
/api/v1/trips/{tripPlanId}
클라이언트가 WebSocket 채널 구독을 완료한 후 호출하는 API입니다.
TripPlanGenerationRequestedEvent를 발행하여 AI 기반 여행 일정 생성 프로세스를 시작합니다.

호출 시점#

1.
POST /api/v1/trips 호출 → 여행 조건(request body)과 함께 요청
2.
서버 응답으로 chatRoomId와 tripPlanId 수신
3.
WebSocket 채널 구독 완료
/user/sub/chat/{chatRoomId}
/user/sub/schedule/{tripPlanId}
/user/sub/errors/{chatRoomId}
4.
이 API 호출 → tripPlanId를 경로 변수로 전달
5.
서버: TripPlanGenerationRequestedEvent 발행
6.
AI 리스너: 이벤트 수신하여 일정 생성 시작
7.
WebSocket으로 실시간 스트리밍 응답 전송

WebSocket 메시지 수신#

채팅 채널 (/user/sub/chat/{chatRoomId})#

AI 스트리밍 응답 (여행 일정 생성 과정 설명)
완료/취소 알림 (COMPLETED, CANCELLED)

일정 전송 채널 (/user/sub/schedule/{tripPlanId})#

일차별 일정(DailyPlan) 저장 완료 데이터
각 일차의 방문지, 이동 정보 포함

에러 채널 (/user/sub/errors/{chatRoomId})#

일정 생성 중 발생한 오류 알림

주의사항#

구독 완료 전 이 API를 호출하면 메시지 손실 위험이 있습니다
tripPlanId는 POST /api/v1/trips 응답의 tripPlanId 값을 사용하세요
여행 조건은 이미 TripPlan에 저장되어 있으므로 별도로 전달하지 않습니다

Request

Authorization
JWT Bearer
Add the parameter
Authorization
to Headers
Example:
Authorization: ********************
or
Path Params

Responses

🟢200
application/json
AI 일정 생성 시작
Body

🟠401
🟠404
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/api/v1/trips/123' \
--header 'Authorization: Bearer <token>'
Response Response Example
200 - Success
{
    "success": true,
    "status": 200,
    "data": {
        "message": "여행 일정 생성을 시작합니다."
    }
}
Modified at 2025-12-19 08:15:40
Previous
여행 일정 상세 조회
Next
여행 일정 삭제
Built with