플랫폼을 ElefyMove에 연결하여 매물을 등록하고, 예약 가능 일정을 실시간으로 동기화하며, 동일 날짜가 이중으로 예약되는 일이 없도록 하세요.
매물 등록, 일정 동기화, 실시간 연동을 하나의 연동 지점에서.
다국어 매물 정보를 ElefyMove로 전송할 수 있습니다. 지원하는 9개 언어 중 원하는 언어로 콘텐츠를 제출할 수 있으며, 모든 매물은 게시 전 검수를 거칩니다.
ElefyMove의 마스터 캘린더는 예약 가능한 모든 항목에 대한 단 하나의 신뢰할 수 있는 데이터 소스입니다. 모든 날짜 범위에는 예약 가능, 임시 홀드, 예약 완료, 차단됨 중 하나의 상태가 표시되며, 청소·인수인계를 위한 버퍼 시간도 중앙에서 일괄 적용되어 어떤 채널을 통하더라도 이중 예약이 발생하지 않습니다.
게스트가 귀사 측에서 결제를 완료하는 동안 최대 10분간 임시 홀드를 설정할 수 있습니다. 충돌은 선착순으로 해결되며, 밀린 요청에는 프로그램이 처리할 수 있는 409 응답이 반환됩니다.
HMAC-SHA256으로 서명된 이벤트—매물 승인, 예약 가능 일정 변경, 홀드 생명주기, 예약 상태—를 거의 실시간으로 구독할 수 있습니다. 페이로드에는 날짜와 참조 정보만 포함되며 게스트 개인정보는 절대 포함되지 않습니다.
모든 매물은 서명된 iCal 피드를 내보낼 수 있으며, ElefyMove가 귀사의 피드 URL을 폴링할 수도 있습니다. 별도의 연동 코드를 작성하지 않아도 외부 차단 정보가 양쪽에 동일하게 반영됩니다.
제1원칙: 모든 작업은 오직 자신의 데이터로만 제한됩니다. 어느 방향으로도 파트너 간 접근은 존재하지 않습니다.
개발자 계정을 만들고 이메일을 인증하면 대시보드에서 직접 테스트 API 키를 발급할 수 있습니다. 라이브 키는 임대인이 ElefyMove 백오피스에서 생성합니다.
API 키 만들기계정을 만들면 API 이용약관에 동의하는 것으로 간주됩니다.
listings:readlistings:writeavailability:readavailability:writeholds:writewebhooks:managecommunity:readcommunity:writemarketplace:readmarketplace:write기본 요청 제한: 키당 분당 120건.
모든 요청은 발급받은 키가 담긴 X-Api-Key 헤더로 인증됩니다.
curl "https://elefymove.com/api/public/v1/listings/{listingId}/availability?from=2026-09-01&to=2026-09-30" \
-H "X-Api-Key: efy_live_xxxxxxxxxxxxxxxxxxxxxxxx"
# Response — 200 OK
[
{ "from": "2026-09-01", "to": "2026-09-14", "state": "AVAILABLE" },
{ "from": "2026-09-15", "to": "2026-09-20", "state": "BLOCKED", "source": "partner-site", "externalRef": "HMXYZ123" },
{ "from": "2026-09-21", "to": "2026-09-30", "state": "AVAILABLE" }
]curl -X POST "https://elefymove.com/api/public/v1/listings/{listingId}/holds" \
-H "X-Api-Key: efy_live_xxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"from": "2026-09-15", "to": "2026-09-20", "ttlSeconds": 300}'
# Response — 201 Created
{ "holdId": "hld_9f3a2c1b", "expiresAt": "2026-08-13T10:15:00Z" }# Same request, the dates were just taken by another channel
# Response — 409 Conflict
{
"code": "SLOT_TAKEN",
"conflictingState": "HELD",
"wonBy": "external"
}요청과 응답 스키마, 오류 형식, 예시가 모두 대화형 OpenAPI 문서에 정리되어 있습니다. 발급받은 키로 모든 엔드포인트를 바로 호출해 볼 수 있습니다.
API 문서 열기전체 문서 보기Open API v1의 전체 엔드포인트입니다. 모든 요청은 X-Api-Key 헤더에 키를 담아 보내며, 모든 경로는 본인 데이터에만 접근합니다.
기본 URL https://elefymove.com
| 메서드 | 엔드포인트 | 스코프 | 설명 |
|---|---|---|---|
/api/public/v1/listings | listings:write | 새 매물을 심사에 제출합니다. 지원하는 9개 언어 중 원하는 언어로 내용을 등록할 수 있습니다. | |
| GET | /api/public/v1/listings | listings:read | 해당 키가 보유한 매물과 현재 심사 상태를 모두 조회합니다. |
| GET | /api/public/v1/listings/{externalId} | listings:read | 직접 지정한 외부 ID로 본인 매물 하나를 조회합니다. |
| PATCH | /api/public/v1/listings/{externalId} | listings:write | 본인 매물을 수정합니다. 보내지 않은 항목은 그대로 유지됩니다. |
| DELETE | /api/public/v1/listings/{externalId} | listings:write | 본인 매물을 게시 중단합니다. |
/api/public/v1/listings/{externalId}/photos | listings:write | 전체 수정 없이 매물에 사진 한 장을 추가합니다. 이미지는 ElefyMove가 가져와 다시 호스팅하며, 제출한 URL이 그대로 저장되지 않습니다. | |
| DELETE | /api/public/v1/listings/{externalId}/photos/{photoId} | listings:write | 매물에서 사진 한 장을 제거합니다. 게시 중인 매물의 사진 수가 최소 개수 미만이 되는 경우 400으로 거부됩니다. |
| 메서드 | 엔드포인트 | 스코프 | 설명 |
|---|---|---|---|
| GET | /api/public/v1/locations | 유효한 키면 가능 | 도 → 군/구 → 지역 순의 표준 위치 트리를 조회합니다. |
| GET | /api/public/v1/locations/search | 유효한 키면 가능 | 표준 위치 계층에 대한 자동완성 검색입니다. |
| GET | /api/public/v1/reference/property-types | 유효한 키면 가능 | 매물이 허용하는 정확한 매물 유형 값 목록입니다. |
| GET | /api/public/v1/reference/amenities | 유효한 키면 가능 | 편의시설이 지켜야 하는 글자 수 및 개수 제한입니다 — 편의시설은 고정된 목록이 아닌 자유 텍스트입니다. |
| GET | /api/public/v1/reference/locales | 유효한 키면 가능 | 매물 번역이 허용하는 정확한 로케일 코드 목록입니다. |
| GET | /api/public/v1/reference/currencies | 유효한 키면 가능 | 매물 가격에 사용되는 통화입니다. ElefyMove는 태국에서만 서비스하므로 항상 THB(태국 바트)입니다. |
| 메서드 | 엔드포인트 | 스코프 | 설명 |
|---|---|---|---|
| GET | /api/public/v1/listings/{id}/availability | availability:read | 지정한 기간의 통합 캘린더를 조회합니다 — 예약 가능, 홀드, 예약 완료, 차단. |
| GET | /api/public/v1/availability | availability:read | 한 번의 호출로 최대 50개 매물의 예약 가능 여부를 조회합니다. 소유하지 않았거나 존재하지 않는 ID는 요청 전체를 실패시키지 않고 notFound에 포함됩니다. |
| GET | /api/public/v1/listings/{id}/blocks | availability:read | 지정한 매물에 대한 본인의 활성 외부 채널 차단을 조회합니다. 필요하면 날짜 범위로 좁힐 수 있습니다. |
/api/public/v1/listings/{id}/blocks | availability:write | 외부 채널 차단을 본인 참조 번호와 함께 생성하거나 수정합니다. | |
/api/public/v1/listings/{id}/blocks/batch | availability:write | 한 번의 호출로 매물 하나에 대해 최대 100개의 외부 채널 차단을 생성하거나 수정합니다. 각 항목마다 성공/실패 결과가 반환됩니다. | |
| DELETE | /api/public/v1/listings/{id}/blocks/batch | availability:write | 한 번의 호출로 매물 하나에 대해 최대 100개의 외부 채널 차단을 삭제합니다. 각 항목마다 성공/실패 결과가 반환됩니다. |
| DELETE | /api/public/v1/listings/{id}/blocks/{externalRef} | availability:write | 이전에 등록한 외부 채널 차단을 삭제합니다. |
| 메서드 | 엔드포인트 | 스코프 | 설명 |
|---|---|---|---|
| GET | /api/public/v1/holds | holds:write | 본인의 홀드를 최신순으로 나열합니다. 기본값은 활성 상태만 표시하며, ?status=all로 범위를 넓힐 수 있습니다. |
| GET | /api/public/v1/holds/{id} | holds:write | ID로 본인 홀드 하나를 조회합니다. |
/api/public/v1/listings/{id}/holds | holds:write | 고객이 파트너 사이트에서 결제하는 동안 기간을 임시로 잡아 둡니다. 경합에서 밀린 요청에는 SLOT_TAKEN이 담긴 409가 반환됩니다. | |
/api/public/v1/holds/{id}/extend | holds:write | 홀드의 만료 시각을 현재 시점부터 연장합니다. 홀드의 총 유효 기간은 생성 시점부터 최대 30분으로 제한되며, 이 한도를 넘는 연장 요청은 409로 거부됩니다. | |
| DELETE | /api/public/v1/holds/{id} | holds:write | 만료 전에 본인 홀드를 해제합니다. |
| 메서드 | 엔드포인트 | 스코프 | 설명 |
|---|---|---|---|
| GET | /api/public/v1/listings/{id}/calendar.ics | 서명된 URL, 키 불필요 | 매물 캘린더를 iCal 피드로 내려받습니다. URL의 서명 토큰이 인증 역할을 하므로 캘린더 앱에서 바로 구독할 수 있습니다. |
| PUT | /api/public/v1/listings/{id}/ical-sources | availability:write | ElefyMove가 본인 매물을 위해 가져올 인바운드 iCal 피드를 등록하거나 교체합니다. |
| GET | /api/public/v1/listings/{id}/ical-sources | availability:read | 매물에 등록된 피드를 가져오기 상태 및 최근 오류와 함께 확인합니다. |
| DELETE | /api/public/v1/listings/{id}/ical-sources | availability:write | 가져오기를 중단하고 매물에 등록된 피드를 삭제합니다. |
| 메서드 | 엔드포인트 | 스코프 | 설명 |
|---|---|---|---|
| PUT | /api/public/v1/webhooks | webhooks:manage | webhook 엔드포인트 URL을 설정하고, 선택적으로 이벤트 구독 목록을 교체합니다. |
| GET | /api/public/v1/webhooks | webhooks:manage | 현재 webhook 설정을 조회합니다. 서명 시크릿은 절대 반환되지 않습니다. |
| DELETE | /api/public/v1/webhooks | webhooks:manage | webhook URL을 지우고 전송을 중단합니다. |
/api/public/v1/webhooks/test | webhooks:manage | 현재 구독 여부와 관계없이 설정된 엔드포인트로 서명된 테스트 이벤트를 전송합니다. | |
| GET | /api/public/v1/webhook-deliveries | webhooks:manage | 본인의 webhook 전송 시도를 상태, 시각, 재시도 이력과 함께 나열합니다. |
/api/public/v1/webhook-deliveries/{id}/redeliver | webhooks:manage | 실패했거나 데드레터 처리된 전송을 수동으로 재시도합니다. |
| 메서드 | 엔드포인트 | 스코프 | 설명 |
|---|---|---|---|
/api/public/v1/community/posts | community:write | 커뮤니티 게시물을 제출합니다. 파트너가 작성한 게시물은 모두 심사에 들어가며 즉시 게시되지 않습니다. | |
| GET | /api/public/v1/community/posts | community:read | 본인의 커뮤니티 게시물과 심사 상태를 나열합니다. |
| GET | /api/public/v1/community/posts/{externalId} | community:read | 직접 지정한 외부 ID로 본인 커뮤니티 게시물 하나를 조회합니다. |
| PATCH | /api/public/v1/community/posts/{externalId} | community:write | 본인의 커뮤니티 게시물을 수정합니다. 보내지 않은 항목은 그대로 유지됩니다. |
| DELETE | /api/public/v1/community/posts/{externalId} | community:write | 본인의 커뮤니티 게시물을 게시 중단합니다. |
| 메서드 | 엔드포인트 | 스코프 | 설명 |
|---|---|---|---|
| GET | /api/public/v1/marketplace/bookings | marketplace:read | 본인의 마켓플레이스 예약을 페이지네이션 및 필터와 함께 나열합니다. 응답에는 날짜와 참조 정보만 포함됩니다. |
| GET | /api/public/v1/marketplace/bookings/{id} | marketplace:read | ID로 본인 마켓플레이스 예약 하나를 조회합니다. |
/api/public/v1/marketplace/bookings/{id}/decline | marketplace:write | 아직 결제 대기 중인 예약을 거절합니다. 확정 엔드포인트는 없습니다 — 예약은 공급자의 승인이 아니라 결제가 완료되는 시점에 확정됩니다. |
| 메서드 | 엔드포인트 | 스코프 | 설명 |
|---|---|---|---|
| GET | /api/public/v1/ping | 유효한 키면 가능 | 키가 정상인지 확인하고 연결된 클라이언트 이름과 스코프를 확인합니다. |
| GET | /api/public/v1/me | 유효한 키면 가능 | 본인 API 클라이언트 자체의 정보 — 이름, 환경, 키에 연결된 스코프를 조회합니다. |
Open API v1 — 현재 연동 파트너를 순차적으로 온보딩하고 있습니다.