Web SDK 설치하기
에어브릿지 Web SDK는 아래 방법으로 패키지를 설치할 수 있습니다.패키지 매니저를 통해 설치하기
패키지 매니저를 통해 설치하기
아래의 명령어를 실행하여
airbridge-web-sdk-loader를 설치합니다.airbridge-web-sdk-loader 패키지를 설치했다면 다음과 같이 사용할 수 있습니다.app과 webToken은 에어브릿지 대시보드의 설정 → 토큰 관리에서 확인할 수 있습니다.지원 브라우저
에어브릿지 Web SDK는 ES5를 지원하는 모든 브라우저에서 동작합니다.SDK 초기화하기
에어브릿지 Web SDK는airbridge.init() 함수를 사용하여 초기화할 수 있습니다. 초기화 시 필수로 입력해야 하는 app과 webToken은 에어브릿지 대시보드의 설정 → 토큰 관리에서 확인할 수 있습니다. 필요에 따라 다양한 초기화 옵션을 추가로 설정할 수 있습니다.
아래는 초기화에 필요한 설정의 타입입니다.
JavaScript
SDK 초기화 옵션
SDK 초기화 옵션
설치 확인하기
에어브릿지 Web SDK를 설치한 페이지로 이동하여 개발자 도구를 열고 다음 코드를 실행합니다.주의하세요
airbridge.isSDKEnabled 는 최초에 false 입니다. Web SDK가 모두 로드되고 초기화가 성공적으로 완료되면 true 로 변경됩니다.네트워크 환경에 따라 로드가 지연될 수 있으며, 로드가 완료되기 전에 확인하면 false 가 출력될 수 있습니다.옵트인(Opt-In) 설정하기
알립니다필수 설정 기능이 아닙니다. 필요한 기능인지 확인한 후에 설정하세요.
autoStartTrackingEnabled 옵션을 false로 설정한 후에, 이벤트를 수집할 수 있는 시점에 startTracking 함수를 호출하세요. startTracking 함수가 호출된 시점부터 이벤트 수집을 시작합니다.
기본 설정은 true입니다.
autoStartTrackingEnabled설정으로, 초기화를 마친 후에 자동으로 이벤트 추적이 시작되지 않도록 설정하세요.
- 개인정보 수집 및 활용에 대한 유저 응답을 수집하세요. 유저가 개인정보 수집 및 활용에 동의하면 이벤트 추적을 시작합니다.
옵트아웃(Opt-Out) 설정하기
알립니다필수 설정 기능이 아닙니다. 필요한 기능인지 확인한 후에 설정하세요.
autoStartTrackingEnabled 옵션을 true로 설정한 후에, 이벤트를 수집할 수 없는 시점에 stopTracking 함수를 호출하세요. stopTracking 함수가 호출된 시점부터 이벤트 수집을 시작합니다.
autoStartTrackingEnabled설정으로, 초기화를 마친 후에 자동으로 이벤트 추적이 시작되도록 설정하세요.autoStartTrackingEnabled옵션의 기본값이true이기 때문에 입력하지 않아도 자동으로 이벤트를 추적합니다.
- 개인정보 수집 및 활용에 대한 유저 응답을 수집하세요. 유저가 개인정보 수집 및 활용을 거부하면 이벤트 추적을 중단합니다.
웹 이벤트
에어브릿지 SDK가 서비스에서 발생한 유저의 특정 행동을 설정에 따라 수집한 후에 이벤트로 전송합니다.웹 이벤트 전송하기
웹 이벤트를 전송하기 위해airbridge.events.send 함수를 사용합니다.
아래 예시를 참고하세요.
각 구성요소의 정의와 사용할 수 있는 문자열을 아래에서 확인하세요.
카테고리
카테고리
에어브릿지에서는 스탠다드 이벤트를 제공합니다. 스탠다드 이벤트 목록을 확인하여 이벤트를 전송하세요.커스텀 이벤트는 이벤트 택소노미에서 정한 이벤트 이름을 사용하여 전송할 수 있습니다.
어트리뷰트
어트리뷰트
어트리뷰트로 이벤트의 추가 정보를 수집할 수 있습니다.
action,label: 에어브릿지 리포트에서 그룹바이로 활용할 수 있는 정보를 수집합니다.value: 매출 분석에서 활용하는 정보를 수집합니다. 수집한 데이터는 자유롭게 사칙연산에 활용할 수 있습니다.- 시맨틱 어트리뷰트: 에어브릿지가 미리 정의한 어트리뷰트입니다.
- 커스텀 어트리뷰트: 에어브릿지 사용자가 정의한 어트리뷰트입니다.
웹 이벤트 추가 설정하기
알립니다필수 설정 기능이 아닙니다. 필요한 기능인지 확인한 후에 설정하세요.
디바이스 식별자 설정하기
디바이스 식별자 설정하기
에어브릿지 SDK는 디바이스 식별자를 모든 이벤트에 포함해 전송하는 기능을 지원합니다.
이벤트 예시 코드
에어브릿지가 수집하는 주요 인앱 이벤트는 스탠다드 이벤트와 커스텀 이벤트입니다. 스탠다드 이벤트는 에어브릿지가 정의한 이벤트입니다. 아래 예시 코드를 참고하세요.회원가입, 로그인, 로그아웃, 홈화면 조회, 상품리스트 조회
회원가입, 로그인, 로그아웃, 홈화면 조회, 상품리스트 조회
회원가입로그인로그아웃홈화면 조회상품리스트 조회
검색결과 조회, 상품상세페이지 조회, 결제수단 등록, 위시리스트 추가, 장바구니 담기
검색결과 조회, 상품상세페이지 조회, 결제수단 등록, 위시리스트 추가, 장바구니 담기
검색결과 조회상품상세페이지 조회결제수단 등록위시리스트 추가장바구니 담기
결제 시작, 구매 완료, 구매 취소, 체험판 시작, 구독, 구독 취소
결제 시작, 구매 완료, 구매 취소, 체험판 시작, 구독, 구독 취소
결제 시작구매 완료구매 취소체험판 시작구독구독 취소
주의하세요구매 취소 이벤트의 경우, 반드시 구매 완료 이벤트의
transactionID를 구매 취소 이벤트의 transactionID에 입력해 주세요. transactionID가 서로 일치하지 않으면 구매취소 이벤트가 반영되지 않습니다.자세한 내용은 정확한 구매 성과 측정을 위한 구매 취소 이벤트 분석하기를 참고해 주세요.광고 노출, 광고 클릭, 튜토리얼 완료, 레벨 달성, 과제 달성
광고 노출, 광고 클릭, 튜토리얼 완료, 레벨 달성, 과제 달성
광고 노출광고 클릭튜토리얼 완료레벨 달성과제 달성
평가, 공유, 일정 예약, 크레딧 사용
평가, 공유, 일정 예약, 크레딧 사용
평가공유일정 예약크레딧 사용
유저 정보
유저 정보를 설정하세요.유저 ID 설정하기
유저 ID는 서비스에서 활용하는 유저 식별자입니다. 유저 ID는 유저를 웹과 앱에서 하나의 유저로 특정할 수 있는 고유한 ID이어야 합니다. 설정한 유저 정보는 브라우저의 Local Storage에 남아 유저 정보를 초기화하기 전까지 모든 이벤트에 함께 전송됩니다.
아래 예시를 참고하세요.
유저 속성 설정하기
주의하세요민감한 유저 정보가 포함될 수 있습니다. 법률 자문사와 충분히 검토한 후에 전송하세요.
true입니다. 유저 ID는 해시 옵션 적용을 받지 않으므로, 해시화가 필요한 경우에는 직접 유저 ID를 해시화하여 값을 넣어주세요.
유저 정보 초기화하기
clearUser 함수로 유저 정보를 초기화할 수 있습니다.
웹투앱 설정
openDeeplink 함수를 웹 페이지에 있는 버튼에 적용해 유저를 앱으로 보낼 수 있습니다. 아래처럼 주로 버튼에 사용할 수 있습니다. 예시 코드 안의 <BUTTON_ID>에는 실제로 유저가 클릭하는 버튼의 ID를 입력하세요.
openDeeplink 함수에 대한 예시 코드입니다.
딥링킹 경로 (필수)
deeplinks 옵션을 사용해 운영체제와 데스크톱별로 유저를 딥링킹할 경로를 입력하세요. 모두 필수사항입니다.
주의하세요deeplinks.android와 deeplinks.ios에 반드시 appScheme://host/path 형식의 URL 스킴 딥링크를 입력하세요. 인텐트 스킴 URL이나 http(s) URL을 사용하지 마세요.
폴백 경로 (필수)
fallbacks 옵션을 사용해 딥링킹이 실패했을 때 운영체제별로 유저를 보낼 폴백 경로를 입력하세요. 모두 필수사항입니다.
주의하세요경로를 앱마켓으로 하려면 fallbacks.android와 fallback.ios에 각각 ‘google-play’와 ‘itunes-appstore’를 그대로 입력하세요. 다르게 입력하면 정상 동작하지 않습니다.
타입 (필수)
type 옵션을 사용해 웹 페이지 안에 버튼같은 CTA 요소가 있는지에 따라 값을 입력하세요. 필수사항입니다.
CTA 버튼 정보 (권장)
ctaParams를 사용해 리포트에서 조회할 CTA 버튼 정보를 입력하세요. 모두 선택사항입니다. 입력할 정보는 마케터에게 요청하세요. openDeeplink 함수 1개당 최대 3개를 입력할 수 있습니다. 정확한 성과 분석을 위해 모두 입력하는 것을 권장합니다.
CTA Param에는 버튼과 관련된 정보를 자유롭게 정의할 수 있습니다. 아래 예시를 참고하세요. 항목에 포함되지 않은 다른 사항도 정의할 수 있습니다.
캠페인 정보 (선택)
알립니다유저가 아래와 같은 방법을 통해 웹 랜딩 페이지로 이동됐을 때는 터치포인트 정보가 수집되지 않습니다. 이러한 경우에는 리포트에서 터치포인트 그룹바이를 선택했을 때
defaultChannel과 defaultParams에 입력된 캠페인 정보가 조회됩니다.- 유저가 트래킹 링크나 UTM 파라미터가 적용되지 않은 광고 클릭
- 유저가 직접 웹 랜딩 페이지 URL 입력
defaultChannel과 defaultParams를 사용해 에어브릿지 리포트에서 조회할 캠페인 정보를 입력하세요. 입력할 정보는 마케터에게 요청하세요. 자세한 내용은 가이드를 참고하세요.
커스텀 스토어 페이지 정보 (선택)
options.androidStoreListing 또는 options.iosStoreProductPage를 사용해 스토어 폴백에 대한 커스텀 스토어 페이지를 설정할 수 있습니다.
커스텀 스토어 페이지에 대한 자세한 내용은 공식 문서 (Google Play Store, Apple App Store)를 참고하세요.
주의하세요
fallbacks.android의 값을 "google-play"로 지정하지 않으면 options.androidStoreListing 옵션은 동작하지 않습니다.fallbacks.ios의 값을 "itunes-appstore"로 지정하지 않으면 options.iosStoreProductPage 옵션은 동작하지 않습니다.기존 함수 참고사항
알립니다
openDeeplink 함수는 기존의 setDeeplinks, setDownloads, sendWeb 함수를 대체해 DOM 연결 없이 독립적으로 사용할 수 있는 함수입니다. 기존 함수는 추후 업데이트하지 않을 예정입니다. 따라서 openDeeplink 함수를 강력히 권장하며, 이미 기존 함수를 사용 중인 고객사만 아래 내용을 참고하세요.setDeeplinks 함수
setDeeplinks 함수
setDeeplinks 함수를 사용해 유저를 앱으로 딥링킹할 수 있습니다.아래 예시를 참고하세요.
주의하세요
setDeeplinks 함수를 사용하면, Web SDK에서 버튼을 관리하기 때문에 절대로 버튼의 onclick 함수를 설정하지 마세요. 또한 <a> 태그의 id 를 사용하지 마세요.setDownloads 함수
setDownloads 함수
setDeeplinks 함수를 사용해 유저를 앱마켓으로 보낼 수 있습니다. 이는 앱 설치 여부와 관계 없습니다.예시 코드입니다.
JavaScript
주의하세요
setDownloads 함수를 사용하면, Web SDK에서 버튼을 관리하기 때문에 절대로 버튼의 onclick 함수를 설정하지 마세요. 또한 <a> 태그의 id 를 사용하지 마세요.sendWeb 함수
sendWeb 함수
sendWeb 함수를 사용해 유저를 다른 웹 페이지로 보낼 수 있습니다. 이때 웹 페이지 간의 기여 정보가 전달됩니다.스마트 배너 만들기
openBanner 함수를 사용해 웹 페이지에 스마트 배너를 만들 수 있습니다. 에어브릿지에서 제공하는 스마트 배너를 활용해 웹 랜딩 페이지에 간단하게 스마트 배너를 만들 수 있습니다. 아래 이미지는 스마트 배너의 기본 형식이며 제목, 설명, 버튼 이름 등을 변경할 수 있습니다.
배너 정보
아래 필드를 입력해 배너를 구성할 수 있습니다.리다이렉션 정보
배너 정보 중destination 필드를 입력해 버튼을 클릭한 유저를 어디로 리다이렉션할지 설정할 수 있습니다.
앱으로 딥링킹하기
유저를 앱으로 딥링킹하려면 아래처럼 설정하세요.
예시 코드입니다.
예시 코드입니다.
예시 코드입니다.
스타일 정보
배너 정보 중styles 필드를 입력해 배너 스타일을 변경할 수 있습니다. 키는 CSS 선택자(Selector) 형식이며, 에어브릿지에서 제공하는 아래 id를 사용해 스타일을 변경할 부분을 지정하세요. 변경할 값은 CSSStyleDeclaration (TypeScript) 형식을 참고해 지정하세요.
아래는 예시 코드입니다.
추가 설정하기
구글 디지털 시장법(DMA) 준수
구글 디지털 시장법을 준수하기 위해서는 유저 동의 정보(User Consent)를 에어브릿지에 전달해야 합니다. 구글 디지털 시장법과 적용 대상 등에 대한 자세한 내용은 에어브릿지 가이드를 참고해 주세요.주의하세요2024년 3월 6일부터 EEA 지역에 있는 기존 유저와 신규 유저에 대한 유저 동의 정보를 최소 1회 수집해야 합니다.
airbridge.setDeviceAlias 함수를 사용하여 유저 동의 정보 수집
airbridge.setDeviceAlias 함수를 사용하여 유저 동의 정보 수집
알립니다에어브릿지는 유저 동의 정보 저장과 프롬프트 구현 방식 등에 관해 도움을 드릴 수 없습니다. 법률 자문사와 함께 검토해 주세요.
- 앱을 실행한 유저의 지역 정보를 확인하세요. 유저가 앱을 실행한 지역이 EEA(
eea=1)라면 기존에 수집한 유저 동의 정보가 있는지 확인하세요. 유저가 앱을 실행한 지역이 EEA가 아니라면 유저 동의 정보를 수집하지 않아도 됩니다.
- 기존에 수집한 유저 동의 정보가 없다면 프롬프트 등으로 유저 동의 정보를 수집해야 합니다. 수집해야 하는 유저 동의 정보는
adPersonalization,adUserData입니다.
airbridge.setDeviceAlias 함수를 통해 유저의 지역 정보와 수집한 유저 동의 정보를 에어브릿지 SDK에 전달하세요.- 에어브릿지 SDK에 유저 동의 정보를 전달한 이후에
startTracking함수를 호출하세요.
초기화 시 유저 정보 설정하기
초기화 시 유저 정보를 전달하여, 발생하는 모든 이벤트에 유저 정보를 담을 수 있습니다. 설정한 유저 정보는 브라우저의 Local Storage에 남아 유저 정보를 초기화하기 전까지 모든 이벤트에 함께 전송됩니다.캠페인 파라미터 설정하기
광고를 통해 웹 사이트에 랜딩한 경우, 웹 사이트 주소에 관련 정보를 파라미터로 붙이면, 그 정보를 토대로 웹 사이트 유입에 대한 트래킹이 가능합니다.UTM 파라미터 자동으로 설정하기
UTM 파라미터 자동으로 설정하기
utmParsing 옵션을 true로 설정하면, URL에 포함된 UTM 관련 파라미터를 자동으로 추출하고 이벤트에 포함하여 전송합니다. 기본값은 false입니다.주의하세요반드시
utm_source 파라미터가 URL에 포함되어 있어야 합니다. utmParsing 옵션을 true로 설정해도, URL에 utm_source가 없으면 다른 UTM 파라미터들도 무시됩니다.UTM 파라미터 값 변경하기
UTM 파라미터 값 변경하기
utmParameterValueReplaceMap 옵션을 설정하면, utmParsing 옵션으로 수집한 UTM 파라미터의 값을 교체할 수 있습니다. 지원하는 파라미터는 utm_source, utm_campaign, utm_medium, utm_term, utm_content 입니다.utmParameterValueReplaceMap 옵션을 활용하면, 여러 솔루션을 통해 수집하는 UTM 파라미터를 같은 값으로 통일하여 하나의 대시보드에서 분석할 수 있습니다.https://www.example.com/?utm_source=before_replace와 같이 utm_source가 before_replace인 경우, 이벤트에 after_replace로 변환하여 전송하는 예제입니다.다른 파라미터를 캠페인 파라미터로 설정하기
다른 파라미터를 캠페인 파라미터로 설정하기
urlQueryMapping 옵션을 설정하면, UTM 파라미터가 아닌 일반 파라미터도 캠페인 파라미터로 포함하여 이벤트에 전송할 수 있습니다.예를 들어, 다음은
utm_source , utm_campaign 파라미터와 함께 서비스 내부에서 사용하는 파라미터가 my_sub_id인 URL입니다.https://www.example.com/path?utm_source=my_channel&utm_campaign=my_campaign&my_sub_id=example
utm_source , utm_parameter와 함께 sub_id_1을 my_sub_id로 확인할 수 있습니다.주의하세요
urlQueryMapping 옵션에 반드시 channel 을 입력해 주세요. channel 을 입력 하지 않으면 다른 옵션 들도 무시됩니다.기본 캠페인 파라미터 설정하기
기본 캠페인 파라미터 설정하기
기본 캠페인 파라미터는 트래킹 링크, UTM 파라미터 등에서 터치포인트 정보가 수집되지 않았을 때 어트리뷰션에서 가장 낮은 우선순위로 사용되는 값입니다. 기본 캠페인 파라미터를 설정해서
init 함수 호출 시에 정보를 입력할 수 있으며 선택사항입니다.아래 예시를 참고해 주세요.
이벤트 전송 완료 대기하기
events.wait 함수를 통해 모든 이벤트 전송이 끝난 후의 동작을 보장할 수 있습니다. 이벤트 전송을 완료하기 전에 페이지를 이동하면 (예를 들어, 페이지를 빠르게 전환하는 중계 페이지에서 이벤트를 전송하는 경우 등) 이벤트가 유실될 수 있습니다. 이런 경우 events.wait 함수로 이벤트 전송을 완료할 때까지 대기한 후에 페이지를 이동하면 이벤트 유실을 최소화할 수 있습니다.
어트리뷰션 윈도우 수정하기
cookieWindow 옵션을 통해 일 단위로 어트리뷰션 윈도우를 설정할 수 있습니다. 기본 설정은 3일입니다.
cookieWindowInMinutes 옵션을 통해 분 단위로 어트리뷰션 윈도우를 설정할 수도 있습니다. cookieWindow 옵션과 중복 설정하면 cookieWindowInMinutes 옵션을 우선합니다.
웹 투 앱 어트리뷰션의 기여 기간 설정하기
useProtectedAttributionWindow 옵션을 통해 기여의 프로텍티드 어트리뷰션 윈도우(Protected Attribution Window, PAW)를 설정할 수 있습니다. 기본 설정은 true입니다.
useProtectedAttribution옵션을true로 설정하면, PAW를 적용합니다. 자세한 내용은 유저가이드를 참고하세요.useProtectedAttribution옵션을false로 설정하면, PAW를 적용하지 않습니다. 자세한 내용은 유저가이드를 참고하세요.
protectedAttributionWindowInMinutes 옵션을 통해 분 단위로 PAW를 설정할 수 있습니다. 기본 설정은 30분입니다. 최대 3일(4320분) 까지 설정할 수 있습니다. protectedAttributionWindowInMinutes 옵션은 useProtectedAttributionWindow 옵션을 true 로 설정했을 경우에만 작동합니다.
서브 도메인 간에 기여 정보 공유하기
에어브릿지 Web SDK는 기본적으로 기여 정보를 쿠키에 저장하고 있으며, 루트 도메인의 쿠키를 저장 공간으로 사용하고 있기 때문에, 서브 도메인 간에 기여 정보를 공유할 수 있습니다. 여러 서브 도메인을 사용한다면shareCookieSubdomain 옵션을 통해 쿠키를 공유할 지 설정할 수 있습니다. shareCookieSubdomain 옵션은 false로 설정하면, 서브 도메인 사이에 데이터를 공유하지 않습니다. 기본 설정은 true입니다.
알립니다다음과 같은 상황을 고려하여 설정하세요.
- 여러 서브 도메인에서 하나의 같은 서비스를 운영하는 경우에는
true로 설정하세요. - 여러 서브 도메인에서 각각 다른 서비스를 운영하는 경우에는
false로 설정하세요.
예제 시나리오
예제 시나리오
다음과 같은 상황을 가정하겠습니다.
- 캠페인 A에 대한 트래킹 링크를 클릭하여
https://www.airbridge.io접속 - 이후,
https://www.airbridge.io웹 사이트 내의 다른 링크를 클릭하여https://blog.airbridge.io접속
shareCookieSubdomain 설정에 따라 다르게 기여됩니다.truehttps://www.airbridge.io→ 캠페인 A에 기여https://blog.airbridge.io→ 캠페인 A에 기여
falsehttps://www.airbridge.io→ 캠페인 A에 기여https://blog.airbridge.io→ Unattributed
https://blog.airbridge.io 에 Web SDK를 설치하고, init 함수에 특정한 캠페인 파라미터 관련 옵션을 입력하지 않았다고 가정했을 경우입니다.init 함수의 옵션에 따라 Web SDK의 내부 로직에 의하여 기여가 결정됩니다.웹에서 트래킹 링크 생성하기
createTrackingLink 함수를 통해 트래킹 링크를 생성할 수 있습니다. 트래킹 링크란 유저가 발생시킨 터치포인트 데이터를 에어브릿지에 전달하기 위해 만드는 링크입니다.
트래킹 링크를 활용하여, 광고를 보거나 광고를 클릭한 유저를 원하는 목적지로 이동시킬 수 있습니다. 에어브릿지 대시보드에서는 트래킹 링크로 수집한 터치포인트 데이터를 활용하여, 전환에 기여한 채널을 분석할 수 있습니다.
트래킹 링크 생성 옵션
트래킹 링크 생성 옵션
다음과 같은 파라미터를 통해
options를 설정할 수 있습니다.createTrackingLink 함수로 생성된 트래킹 링크는 onSuccess 콜백을 통해 전달됩니다.
앱이 열리거나 스토어로 이동하는 트래킹 링크 생성하기
앱이 열리거나 스토어로 이동하는 트래킹 링크 생성하기
앱이 열리거나 웹페이지로 이동하는 트래킹 링크 생성하기
앱이 열리거나 웹페이지로 이동하는 트래킹 링크 생성하기
스토어로만 이동하는 트래킹 링크 생성하기
스토어로만 이동하는 트래킹 링크 생성하기
웹페이지로만 이동하는 트래킹 링크 생성하기
웹페이지로만 이동하는 트래킹 링크 생성하기
몰로코 쿠키 ID 수집하기
collectMolocoCookieID를 true로 설정하면, 몰로코 웹 캠페인을 통해 발생한 이벤트의 쿠키 ID를 자동으로 수집하여 캠페인을 최적화합니다.멀티 앱 사용하기
기본적으로 에어브릿지 Web SDK는 전역airbridge 객체를 통해 사용할 수 있습니다. 하지만 특정 상황에서는 독립적인 SDK 인스턴스가 필요할 수 있습니다.
에어브릿지 Web SDK는 하나의 서비스에서 여러 Airbridge 앱을 동시에 사용할 수 있도록 지원합니다. createAirbridge 함수를 통해 새로운 인스턴스를 생성할 수 있습니다.
인스턴스 생성 및 초기화
브라우저 스크립트를 통해 생성하기
브라우저 스크립트를 통해 생성하기
패키지 제공 함수를 통해 생성하기
패키지 제공 함수를 통해 생성하기
airbridge 객체 및 createAirbridge로 생성한 인스턴스들 모두 서로 독립적으로 동작하며, 초기화를 포함한 모든 SDK 기능을 독립적으로 사용할 수 있습니다.