개요
Third Party 도메인은 외부 시스템과의 통합 기능을 제공합니다. PMS, CMS, 도어락, 주차 시스템 등 다양한 외부 서비스와의 연동을 지원합니다.Enums
ThirdPartyProvider
지원하는 외부 서비스 제공자 목록입니다.SamsungSmartAccess: 삼성 스마트 도어락SanhaWings: 산하 Wings PMSTheMR: The MR 솔루션AmanoKorea: 아마노 주차 시스템NicePark: 나이스 주차 시스템TlLincoln: TL Lincoln 솔루션V_Booking: Vendit 부킹 엔진HotelStory: 호텔스토리 PMSV_CMS: Vendit CMS
ThirdPartyProviderType
외부 서비스의 카테고리를 정의합니다.CMS: 채널 관리 시스템PMS: 숙박 관리 시스템Facility: 시설 관리Parking: 주차 관리Guest: 게스트 관리BookingEngine: 예약 엔진DoorLock: 도어락 시스템
Types
ThirdPartyApp
외부 서비스 앱 정보를 나타냅니다.ID
앱 ID
String!
서비스 제공자 이름
String!
연동 범위 (숙박 시설 ID)
String
서비스 타입
Date!
생성 일시
[ThirdPartyProperty]
연동 속성 목록
ThirdPartyProperty
외부 서비스의 속성 정보를 나타냅니다.ID
속성 ID
String!
서비스 제공자 이름
String!
속성 타입 (예: “room_mapping”, “config”)
String
외부 시스템의 ID
VPMS 내부 ID (예: 객실 ID)
String
속성 이름
String
속성 설명
String
추가 데이터 (JSON 문자열)
Queries
getAccommodationThirdPartyApps
특정 숙박 시설에 연동된 외부 서비스 목록을 조회합니다.GraphQL Signature
파라미터
ID!
required
숙박 시설 ID
ThirdPartyProviderType
서비스 타입 필터 (선택사항)
CMS: CMS만 조회PMS: PMS만 조회DoorLock: 도어락만 조회Parking: 주차 시스템만 조회- 등등…
응답
[ThirdPartyApp!]!
연동된 외부 서비스 목록
예제
Mutations
thirdPartySignIn
외부 서비스에 로그인하고 연동을 설정합니다.GraphQL Signature
파라미터
ThirdPartyProvider!
required
외부 서비스 제공자예:
SamsungSmartAccess, HotelStory, AmanoKoreaString
OAuth 인증 코드 (OAuth 방식 사용 시)
String
인증 정보 (API 키 또는 토큰)
String!
required
연동 범위 (일반적으로 숙박 시설 ID)
ID!
required
숙박 시설 ID
Boolean
기존 연동을 갱신할지 여부 (기본값: false)
응답
Boolean
연동 성공 여부
예제
deleteAccommodationThirdParty
특정 외부 서비스 연동을 해제합니다.GraphQL Signature
파라미터
ID!
required
숙박 시설 ID
ThirdPartyProvider!
required
해제할 외부 서비스 제공자
응답
Boolean
해제 성공 여부
예제
registerThirdPartyProperty
외부 서비스 속성을 등록합니다.GraphQL Signature
파라미터
ID!
required
숙박 시설 ID
String!
required
외부 서비스 제공자 이름
String!
required
속성 타입일반적인 타입:
room_mapping: 객실 매핑config: 설정credential: 인증 정보webhook: 웹훅 설정
String
외부 시스템의 ID
VPMS 내부 관련 ID
String
속성 이름
String
속성 설명
String
추가 데이터 (JSON 문자열)
응답
ThirdPartyProperty
등록된 속성 정보
예제
modifyThirdPartyProperty
외부 서비스 속성을 수정합니다.GraphQL Signature
파라미터
ID!
required
수정할 속성 ID
ThirdPartyPropertyInput!
required
수정할 속성 정보 (변경할 필드만 포함)
응답
ThirdPartyProperty
수정된 속성 정보
예제
deleteThirdPartyProperty
외부 서비스 속성을 삭제합니다.GraphQL Signature
파라미터
ID!
required
삭제할 속성 ID
응답
Boolean
삭제 성공 여부
devThirdPartyTest
개발/테스트 목적으로 외부 서비스 연동을 테스트합니다.GraphQL Signature
파라미터
ID
테스트할 숙박 시설 ID
Boolean
테스트 플래그
사용 흐름
외부 서비스 연동 설정
- 서비스 연동:
thirdPartySignIn으로 외부 서비스 인증 - 속성 등록:
registerThirdPartyProperty로 객실 매핑, 설정 등록 - 연동 확인:
getAccommodationThirdPartyApps로 연동 상태 확인
객실-도어락 매핑 예시
1
도어락 시스템 연동
2
객실별 매핑 등록
3
매핑 확인
지원 서비스별 연동 방법
도어락 시스템
삼성 스마트 도어락 (SamsungSmartAccess)- 인증 방식: API 키
- 필수 속성:
room_mapping(객실-도어락 매핑)
- 인증 방식: OAuth 2.0
- 필수 속성:
room_mapping,config
주차 시스템
아마노 주차 (AmanoKorea)- 인증 방식: API 키
- 필수 속성:
config(엔드포인트, 타임아웃 설정)
- 인증 방식: API 키
- 필수 속성:
config,webhook
PMS
호텔스토리 (HotelStory)- 인증 방식: OAuth 2.0
- 필수 속성:
room_mapping,rate_mapping
- 인증 방식: API 키
- 필수 속성:
room_mapping
에러 처리
연동 실패
인증 정보가 유효하지 않습니다. 올바른 API 키 또는 OAuth 코드를 사용하세요.
외부 서비스가 현재 사용 불가능합니다. 나중에 다시 시도하세요.
이미 연동된 서비스입니다.
isRenew: true를 사용하여 갱신하세요.속성 등록 실패
먼저
thirdPartySignIn으로 서비스를 연동해야 합니다.지원하지 않는 속성 타입입니다. 서비스 문서를 확인하세요.
관련 API
- 사용자 API - 직원 권한 관리
- Core Service - 객실 및 예약 관리