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

여행 일정 생성 세션 생성

POST
/api/v1/trips
AI 기반 여행 일정 생성을 위한 세션을 생성합니다.
사용자가 제공한 여행 조건으로 chatRoom과 TripPlan을 생성하고, WebSocket 구독에 필요한 채널 ID를 반환합니다.

처리 흐름#

1.
이 API 호출 → 여행 조건(request body)과 함께 요청
2.
서버: ChatRoom, TripPlan 생성 및 ID 반환
3.
클라이언트: 반환받은 ID로 WebSocket 채널 구독
/user/sub/chat/{chatRoomId}
/user/sub/schedule/{tripPlanId}
/user/sub/errors/{chatRoomId}
4.
클라이언트: POST /api/v1/trips/{tripPlanId} 호출
5.
서버: AI 일정 생성 시작 및 WebSocket으로 실시간 스트리밍

Request Body#

themes: 여행 테마 목록 (PlaceThemeType enum 배열)
FAMOUS_SPOT: 유명 관광지
HEALING: 힐링
SNS_HOTSPOT: SNS 핫플
EXPERIENCE_ACTIVITY: 체험 액티비티
CULTURE_ART: 문화/예술
SHOPPING: 쇼핑
RESTAURANT: 음식점
startDate: 여행 시작 날짜 (YYYY-MM-DD)
duration: 여행 기간 (일 단위, 최소 1일)
region: 여행 지역 (예: "제주", "서울", "부산")
peopleCount: 여행 인원 (최소 1명)

주의사항#

이 API는 세션만 생성하며, 실제 AI 일정 생성은 시작하지 않습니다
반환된 chatRoomId, tripPlanId로 WebSocket 구독 후 tripPlanId를 사용하여 start API를 호출해야 합니다

Request

Authorization
JWT Bearer
Add the parameter
Authorization
to Headers
Example:
Authorization: ********************
or
Body Params application/jsonRequired

Examples

Responses

🟢202
application/json
ChatRoom 및 TripPlan 생성 완료
Body

🟠401
🟠404
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/api/v1/trips' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "themes": [
        "FAMOUS_SPOT"
    ],
    "startDate": "2019-08-24",
    "duration": 1,
    "region": "string",
    "peopleCount": 1,
    "userMessage": "string"
}'
Response Response Example
202 - Success
{
    "success": true,
    "status": 202,
    "data": {
        "conversationId": 123,
        "tripPlanId": 456
    }
}
Modified at 2025-12-19 08:15:40
Previous
사용자의 여행 일정 목록 조회
Next
여행 일정 상세 조회
Built with