대화 솔루션
API 또는 pre-built UI를 통해 여행자와 숙박 시설 간의 원활한 대화를 지원합니다.
대화형 API
Conversation API를 사용하면 여행객(또는 여행사)과 숙박 업체 간의 원활한 소통을 도모할 수 있습니다. 연동이 완료되면 API를 통해 호텔, 휴가용 숙소 및 Vrbo 공급처의 대화 내역을 조회할 수 있을 뿐만 아니라, 메시지를 작성하고 확인할 수도 있습니다.
이 기능은 end-to-end API를 통해 ‘ post-booking ’ 메시지를 사용할 수 있게 해줍니다. front-end 의 기능을 활용하여, 대화를 귀사의 traveler-facing 및 agent-facing 도구 내에 연동함으로써 여행객과의 신뢰를 쌓고, 취소 및 서비스 비용을 줄이며, 지원 업무 흐름을 간소화할 수 있습니다.
Conversation API는 알림을 통한 주제 태그 지정 기능도 지원합니다. 주제 태그는 메시지 내용을 한두 two-word 로 요약한 것으로, 이를 통해 지원 업무를 자동화하고 메시지가 올바른 채널로 전달되도록 할 수 있습니다.
‘추가 자료’에서 주제 태깅 및 ‘ AI-powered re-marketing ’ 억제 기능에 대해 자세히 알아보세요.
Conversation API는 Vrbo 숙소 목록을 지원하는 유일한 대화 솔루션입니다.
Conversation API의 작동 방식
Conversation API는 필요에 따라 숙박 시설와 여행자 간, 또는 숙박 시설와 귀사의 지원 담당자 간에 직접 메시지를 주고받을 수 있도록 설정할 수 있습니다. 두 경우 모두, 해당 예약에 대한 ‘예약 관리’의 응답을 통해 Conversation API 링크에 접속한 다음, 여행자나 상담원에게 대화 진입점을 제공하게 됩니다. 공급업체가 새 메시지를 보내면 알림을 통해 즉시 알려드립니다.
참고: The Conversation API에는 pre-built 메시징 UI 기능이 포함되어 있지 않습니다. 해당 기능을 직접 개발하거나, 기존 메시징 UI 환경에 Conversation API를 연동해야 합니다.
pre-built 용 UI가 필요한 경우, 숙박 시설 메시지 센터를 참조하십시오.

‘예약 관리’를 통해 예약을 조회하세요
‘예약 관리(Manage Booking)’ API의 ‘예약 조회(Retrieve Booking)’ 엔드포인트를 통해 예약 세부 정보를 요청하면, 응답의 ‘예약 객체( conversations)’에 ‘대화(Conversation)’ API로 연결되는 링크가 포함됩니다.
참고: 특정 대화에 대한 add-message링크는 time-bound 이며, 생성된 지 1시간 후에 만료됩니다. 대화 링크를 장기간 저장하는 대신, 각 응답에서 새로운 링크를 가져오려면 항상 새로운 Retrieve 호출을 수행하십시오.
응답에 포함된 대화 링크의 예시:
{
"itinerary_id": "8999989898988",
"rooms": [
{
"id": "926784314"
}
],
"links": [
"conversation": {
"method": "GET",
"href": "/v3/conversations/1234567890?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m"
}
]
}여행객/여행사 담당자를 위한 서피스 대화 진입점
취할 수 있는 조치:
- traveler-facing 인터페이스에 링크를 삽입하여 여행자들이 숙박 시설와 직접 메시지를 주고받을 수 있도록 하세요. 일반적인 진입 지점으로는 예약 확인 페이지, 여행 상세 정보 페이지 또는 확인 이메일이 있습니다.
모범 사례에 대해서는 ‘추가 자료’를 참조하십시오. - 지원 팀이 여행객 및 숙박 시설와 소통할 수 있도록 에이전트 도구에 해당 링크를 삽입하세요.
새 메시지 알림을 구독하세요
Rapid Notifications API에서 다음 ‘ conversation-related ’ 이벤트를 구독하면 ‘ supplier-initiated ’ 메시지를 푸시 알림으로 받을 수 있습니다:
itinerary.message.received— 숙박 시설가 수요 파트너/여행자에게 새 메시지를 보낼 때 트리거됩니다.itinerary.message.rejected— 숙박 시설 메시지가 사기 또는 피싱으로 판명되어 차단될 때 발생합니다. 메시지가 차단되어 전달되지 않았습니다.itinerary.conversation.attachment.success— 여행자나 수요 파트너가 (에이전트 메시지의 일부로) 보낸 첨부 파일이 성공적으로 업로드 및 처리되었을 때 트리거됩니다.itinerary.conversation.attachment.failure— 첨부 파일 업로드에 실패했을 때 트리거됨
>> 온보딩 알림에 대한 자세한 내용은 알림 페이지()를 참조하세요.
숙박 시설에 메시지 보내기
Conversation API는 여행자나 여행사가 보낸 메시지와 숙박 시설의 답장을 모두 포함하여, 해당 예약에 대한 전체 메시지 내역을 단일 응답으로 반환합니다. 숙박 시설 메시지에는 첨부 파일과 해당 첨부 파일에 접근할 수 있는 링크가 포함될 수 있습니다. 첨부할 수 있는 파일 형식으로는 PNG, PDF, JPEG, DOCX 등이 있습니다.
이 응답에는 메시지를 보내는 데 사용되는 링크도 포함되어 있습니다. 하나는 일반 텍스트용이고, 다른 하나는 첨부 파일 업로드를 시작하는 링크입니다.
일반 문자 메시지 보내기
새 메시지를 작성하거나 숙박 시설에 답글을 달려면, add_message링크를 사용하여 대화에 메시지를 추가하세요. 성공적인 응답이 반환되면 갱신된 대화 링크가 제공되므로, 토큰 상태를 최신 상태로 유지하기 위해 이 링크를 저장해 두었다가 다음 읽기 작업 시 사용해야 합니다.
여행자를 대신해 에이전트가 메시지를 보내면, API 상에서도, 숙박 시설 채널에서도 그 메시지는 여행자가 직접 보낸 것처럼 표시됩니다. 상담원이 해당 메시지가 상담원을 통해 전송된 것임을 알리고 싶다면, 다음과 같은 메모를 추가할 수 있습니다.* “여행객을 대신하여 [파트너] 상담원이 전송했습니다.”*
첨부 파일 보내기
첨부 파일은 Amazon S3에 직접 업로드됩니다. 이 흐름은 첨부 파일 API 요청으로 시작되며, 이 요청에는 파일 메타데이터와 선택적으로 함께 제공되는 메시지 본문이 포함됩니다. 이 응답에는 보안이 적용된 S3 URL, 만료 시간 및 AWS에서 요구하는 양식 필드가 포함됩니다. 지원되는 파일 형식으로는 PNG, PDF, JPEG 등이 있습니다.
참고: 이 호출에 지정된 텍스트는 업로드와 함께 전송되며, 파일이 전달될 때 메시지로 게시됩니다. 따라서 별도의 add_message 호출은 불필요합니다. 이를 호출하면 해당 스레드에서 중복 메시지가 생성됩니다.
보안 처리된 S3 URL의 유효 기간이 만료되기 전에, 이전 첨부 파일 API 응답에서 제공된 양식 필드를 사용하여 해당 URL로 파일을 POST 방식으로 전송하십시오.
S3 업로드가 성공적으로 완료되면 Rapid에서 악성코드 검사가 실행됩니다:
- 파일에 문제가 없는 경우: 파일이 저장되고, 첨부 파일과 관련 텍스트가 포함된 메시지가 숙박 시설 채널로 전송되며,
itinerary.conversation.attachment.success알림이 푸시됩니다. - 위협이 탐지되면 해당 파일이 삭제되고 ‘
itinerary.conversation.attachment.failure’ 알림이 전송됩니다.
Conversation API에서 반환되는 대화 객체의 예시:
{
"itinerary_id": "987654321098",
"expedia_confirmation_id": "1234567890",
"property_id": "12345",
"messages": [
{
"text": "Can I have an early check-in?",
"participant": {
"role": "traveler",
"given_name": "John",
"family_name": "Smith"
},
"creation_date_time": "2025-04-15T00:45:14.000Z",
"message_type": "free_text",
"delivery_status": "accepted"
},
{
"text": "Please note that check-in time is 5pm and that you will need to meet with our receptionist to receive information about your room assignment.",
"participant": {
"role": "supplier"
},
"creation_date_time": "2025-04-15T00:10:12.000Z",
"message_type": "free_text",
"delivery_status": "accepted"
}
],
"links": {
"add_message": {
"method": "POST",
"href": "/v3/conversations/1234567890/messages?token=MY5S3j36cOcL",
"expires": "2025-04-15T00:45:14.000Z"
},
"add_attachment": {
"method": "POST",
"href": "/v3/conversations/1234567890/messages/attachments?token=MY5S3j36cOcL",
"expires": "2025-04-15T00:45:14.000Z"
}
}
}링크 유효 기간 및 토큰 만료
add_message및 add_attachment링크는 임시 링크로, expires필드에 지정된 타임스탬프 시점 또는 check-out 날짜로부터 30일 후 중 더 빠른 시점에 만료됩니다. 대화 링크 자체는 최대 90일 동안 유효합니다. post-stay.
매 호출 전에 expires 필드의 값을 평가하십시오. 이미 시간이 지났거나 401/403 오류가 발생한 경우, re-run 에서 ‘예약 조회’ 또는 ‘대화 조회’ 호출을 통해 새로운 링크를 생성하십시오.
Expedia Group 담당자에게 문의하여 Conversation API 통합을 시작해 보세요.
AI-powered re-marketing 억제 및 메시지 주제 태깅
Property-initiated "re-marketing" 로 식별된 메시지(직접 예약을 권장하거나 기타 방식으로 off-platform) 을 홍보하는 메시지)는 Conversation API 및 숙박 시설 메시지 센터에 의해 자동으로 차단됩니다.
property-initiated 메시지를 보다 쉽고 확장성 있게 활용할 수 있도록, 당사의 대화 솔루션은 메시지의 주요 주제를 식별하고 해당 주제를 itinerary.message.received알림 이벤트에서 태그 형태로 전달하는 ‘주제 기반 태깅( AI-driven )’ 모델을 채택하고 있습니다. 이 태그들을 활용하면 자체 시스템에서 검색, 라우팅, 자동화 및 제외 논리를 구현할 수 있습니다.
숙박 시설 메시지의 잠재적 주제 태그
| 태그 | 설명 |
|---|---|
| 체크인 지침 | 숙박 시설가 check-in 또는 숙박에 필요한 필수 정보나 안내 사항(예: 출입 코드, 프런트 데스크 운영 시간, 보증금 정보, 신분증 제시 요건 등)을 공유할 때 참고: ‘ check-in ’ 지시어 태그는 항상 ‘ re-marketing ’ 생략 태그보다 우선합니다. I.e. 공급업체가 ‘ check-in ’ 정보와 ‘ re-marketing ’ 문구가 모두 포함된 메시지를 보내더라도, 여행자는 여전히 해당 메시지를 수신하게 됩니다. |
| 초기 check-in / 후기 check-out | 숙박 시설가 다이렉트 메시지를 통해 초기 check-in 또는 후기 check-out 에 관한 추가 정보를 공유할 때. 또한 조기 check-in 또는 지연에 대한 구체적인 비용이 발생하는 경우에도 사용됩니다. check-out. |
| 식음료 | 레스토랑 또는 바의 이용 가능 여부나 시간, 메뉴 항목 또는 기타 다이닝 세부 정보가 숙박 시설 메시지에 포함되는 경우에 사용합니다. |
| 유지보수/폐쇄 | 유지보수, 공사 중이거나 일시적으로 폐쇄된 숙박 시설의 특정 부분에 대한 업데이트를 공유할 때 사용합니다. 수영장, 해변, 헬스장 또는 기타 시설의 운영 중단이 포함될 수 있습니다. |
| 주차장 | 주차 옵션, 예약, 시간 또는 특정 야간 또는 시간당 요금에 대한 추가 지침을 공유할 때 사용합니다. |
| 반려동물 동반 정책 | 숙박 시설가 반려동물 관련 자체 규정이나 객실/숙소에 반려동물을 동반할 때 발생하는 비용을 공개하는 경우. |
| 정보/도착 시간 확인 요청 | 숙박 시설이 숙박을 가장 잘 관리하고 계획하기 위해 숙박 세부 정보나 도착 시간에 대한 추가 정보를 여행객에게 요청하는 경우에 사용합니다. |
| 이용 후기 요청 | 숙박 시설이 여행객에게 숙박 이용 후기를 남기도록 요청하는 경우에 사용합니다. 가장 자주 발송되는 post-stay. |
| 교통편 | 숙박 시설가 공항 pick-up 또는 drop-off 이용 방법, 셔틀 이용 가능 여부, 일정 안내 등에 관한 정보를 공유할 때, |
| 기타 | 메시지에 앞서 언급된 태그가 하나도 없는 경우, 기본적으로 “기타”로 분류됩니다(수하물, 객실 관리 정보, 추가 침대, 위생, 청결, 엘리베이터, 전기, 주방/주방용품, 코로나19 관련 정책, 이용 약관 등). |
토픽 태그가 포함된 itinerary.message.received알림 페이로드 예시:
{
"event_id": "493ae7d4-fb3c-49fb-b180-0d7f4030aaeb",
"event_type": "itinerary.message.received",
"event_time": "2024-09-16T15:22:42.783857461Z",
"itinerary_id": "9025294229844",
"email": "test@travelnow.com",
"message": "Please checkin before 12:00 PM!",
"topic_tags": "Check-in",
"affiliate_reference_id": "b086d299-2f1f-4134-a23c-f4a1c9286fac"
}휴가용 주택
휴가용 숙소 숙박 시설와 직접 메시지를 주고받을 수 있도록 하는 기능은 필수적입니다. Rapid API 에 등록된 휴가용 숙소의 84%는 프런트 데스크가 없기 때문입니다. 이러한 숙박 시설은 종종 직접 메시지를 보내는 방식으로 고객에게 다음을 제공합니다.
- 숙박 시설에 출입하기 위한 개인화된 액세스 코드
- 숙박 시설의 독특하거나 이용 가능한 편의 시설에 대한 안내
- 주차 안내 또는 배정
참고: 숙박 시설 메시지 센터는 Vrbo 숙소 목록과 호환되지 않습니다. 현재 Vrbo 숙소를 판매 중이거나 판매할 계획이라면, Conversation API를 연동하는 것을 권장합니다.
숙박 시설 메시지 센터
pre-built 메시징 UI를 통해 숙박 시설와 여행자 또는 여행사 담당자 간의 직접적인 소통을 돕는 two-way 메시징 도구로, post-booking 이용 경험을 더욱 원활하게 해줍니다.
숙박 시설 메시지 센터의 이용 방법
숙박 시설 메시지 센터는 예약 요청 시 여행자의 이메일 주소를 입력하여 숙박 시설와 여행자 간에 직접 메시지를 주고받을 수 있도록 설정하거나, 예약 요청 시 상담원의 이메일 주소를 입력하여 숙박 시설와 귀사의 지원 담당자 간에 메시지를 주고받을 수 있도록 설정할 수 있습니다.


숙박 시설 메시지 센터 대화 예시
Property-initiated에 보내는 메시지 숙박 시설는 여행객들에게 공항을 오가는 무료 셔틀 서비스를 제공한다는 사실을 알리고자 합니다. round-trip

Traveler-initiated에 메시지 보내기 여행객이 예약 시 유아용 침대 제공을 요청했으며, 도착 전에 숙박 시설에게 이 요청을 재확인하고자 합니다.

Expedia Partner Solutions에서 숙박 시설 메시지 센터의 ‘Traveler-’ 및 ‘ Agent-Model ’ 출시 요건을 확인하세요:
>> 자세한 내용은 AWS 문서를 참조하십시오.
>> ‘ traveler-model ’ 출시 요건에 대해 알아보기
>> ‘ agent-model ’ 출시 요건에 대해 알아보기
Expedia Group 담당자에게 문의하여 숙박 시설 메시지 센터 연동을 시작해 보세요.
추가 리소스
여행객에게 대화 진입점을 제공하는 모범 사례
여행자가 예약을 완료한 후 Conversation API 링크를 여행자에게 공개하는 방법에 대한 안내를 알려드립니다.
예약 확인 페이지에 “메시지 호텔” 또는 “메시지 호스트” 버튼을 추가하세요.
이를 통해 여행객들은 예약 완료 직후 숙박 시설에 요청을 보내거나 정보를 문의할 수 있습니다.
일정 페이지에 “Message Hotel” 또는 “Message Host” 버튼을 추가하세요.
이렇게 하면 여행객들이 예약 페이지에서 바로 숙박 시설에 연락할 수 있습니다.
예약 확인 이메일에 “Message Hotel” 또는 “Message Host” 버튼 추가하기
이를 통해 여행객이 향후 숙박에 대한 업데이트나 알림을 받을 때 숙박 시설에 연락하도록 유도할 수 있습니다.
Conversation API 오류 처리
다양한 상황에서 반환될 수 있는 몇 가지 오류가 있으며, 이들 모두는 ‘ 400 ’로 코딩되어 있습니다. 다음은 일반적인 원인 목록과 각 오류에 대해 반환되는 관련 메시지입니다:
| 원인 | 메시지 |
|---|---|
| 유효하지 않은 입력 | "유효하지 않은 JSON 페이로드" |
| 토큰을 디코딩하거나 구문 분석할 수 없습니다. | "링크가 유효하지 않습니다" |
| 필수 토큰 필드가 누락되었습니다. | "링크가 유효하지 않습니다" |
| 경로와 토큰 간의 확인 ID가 일치하지 않습니다. | "링크가 유효하지 않습니다" |
토큰 유효 기간이 만료되었습니다 (link.expired) | "귀하가 클릭한 링크의 유효 기간이 만료되었습니다. "링크를 새로 고치려면 GET 요청을 다시 보내 주세요" |
| 요청 본문이 null입니다. | "요청 본문을 입력해야 합니다" |
| 메시지 본문이 비어 있거나 20,192자를 초과합니다. | "텍스트는 비어 있어서는 안 되며, 20192자를 초과해서는 안 됩니다." |
| 파일 크기가 5MB를 초과합니다. | "파일 크기가 5MB의 최대 한도를 초과했습니다." |
| 지원되지 않는 파일 형식 | "파일 형식은 [application/pdf, image/jpeg, image/png] 중 하나여야 합니다." |
| 첨부 파일의 지원되지 않는 대화 유형 | "첨부 파일이 유효하지 않습니다" |
API 세부 정보
이 페이지에서 Conversation API 정의 사항을 살펴본 다음, API Explorer 또는 다른 테스트 도구를 사용하여 예시와 스키마 정의가 실제 출력과 어떻게 다른지 확인해 보십시오.