문서 둘러보기

API 문서

이벤트와 데이터

이벤트별로 콜백이 전달되는 시점과 함께 받는 데이터를 확인합니다.

mount()에 onEvent를 등록하면 해당 임베드에서 발생한 이벤트를 받습니다. 각 콜백에는 이벤트 종류인 type과 공통 정보인 metadata가 있습니다. 카나페에서 콜백 연동을 사용할 수 있도록 설정된 이벤트로 확인하세요.

콜백 등록

이벤트 수신 체험에서 실제 콜백과 예시 메시지의 JSON을 확인할 수 있습니다.

아래 예제는 이벤트 화면이 열린 시점과 리워드 결과가 도착한 시점에 텍스트를 바꿉니다. container, statusElement, eventId는 고객사 화면에서 사용 중인 요소와 이벤트 ID를 넘깁니다.

JavaScript
const instance = window.CanapeEmbed.mount(container, {
  eventId,
  onEvent(event) {
    if (event.type === 'viewed') {
      statusElement.textContent = '이벤트가 열렸습니다.'
    }

    if (event.type === 'won') {
      statusElement.textContent = `이벤트 결과 · ${event.rewardName}`
    }
  },
})

TypeScript에서는 event.type을 확인한 분기에서 해당 이벤트의 필드를 사용할 수 있습니다. 등록부터 정리까지 실행하는 예제는 이벤트 콜백 받기에 있습니다.

이벤트 종류

표의 필드는 metadata와 같은 단계에 들어 있습니다. 선택 필드는 이벤트 설정이나 참여 결과에 따라 생략될 수 있습니다.

event.type전달 시점추가 필드
viewed연동 초기화가 끝나 이벤트 화면이 열렸을 때. 같은 인스턴스에서는 한 번 전달됩니다.공통 메타데이터
start_button_clicked참여 시작을 시도했을 때. 실제 참여가 확정되기 전에 전달될 수 있습니다.공통 메타데이터
login_button_clicked로그인 버튼을 누른 뒤 카나페에서 가입 전환 세션을 발급했을 때url, session
won카나페가 참여 결과와 리워드 정보를 반환했을 때rewardId, rewardName, verification(선택)
reward_form_submitted리워드 수령 정보가 제출됐을 때name, phone, address, addressDetail, postalCode(모두 선택)
share_button_clicked공유 동작을 처리했을 때platform, page
cta_button_clicked리워드 화면에서 링크 버튼을 눌렀을 때url
share_and_restart공유 후 다시 참여하는 절차가 시작될 때공통 메타데이터

url, session, rewardId, rewardName, verification 및 리워드 수령 정보 필드는 문자열입니다. login_button_clicked의 url은 이벤트에 설정된 로그인 주소이고 session은 카나페가 발급한 세션입니다. 로그인 화면으로 이동하는 동작은 고객사에서 처리합니다.

share_button_clicked의 platform은 FACEBOOK, KAKAO, LINE, LINK, MESSENGER, WHATSAPP, X 중 하나입니다. page는 이벤트 진행 화면의 GAME 또는 리워드 화면의 REWARD입니다. 카카오톡 공유 후 다시 참여하는 설정이 적용된 리워드 화면에서는 공유 완료를 확인한 뒤 콜백을 전달합니다.

won.verification은 별도로 당첨 검증 연동을 요청해 활성화한 이벤트에서 검증값이 발급된 경우에만 포함됩니다. 일반 연동의 won은 결과 표시용 알림으로 사용하세요.

공통 메타데이터

모든 콜백에는 문자열인 metadata.eventId가 있습니다. 다른 필드는 카나페에서 해당 값을 보냈을 때 포함됩니다.

필드타입설명
eventIdstring, 필수콜백을 보낸 카나페 이벤트 ID
eventNamestring카나페 이벤트 이름
timestring이벤트 메시지를 보낸 시각 (ISO 8601 UTC)
referrerstring이벤트에서 확인한 유입 정보
customUserIdstring회원 연동으로 확인된 고객사 회원 ID
name, email, phonestring해당 메시지에 포함된 참여자 정보
additionalData1, additionalData2, additionalData3string이벤트에 설정한 추가 입력값
signupSessionstring가입 전환 연동에서 확인된 세션
isNewSignupUserboolean신규 가입 참여자로 처리됐는지 표시

참여자 정보와 가입 세션은 연동에 필요한 항목만 사용하세요. 리워드 수령 정보는 reward_form_submitted 콜백의 최상위 필드에서 확인할 수 있습니다.