기기 귀인 확인 방법

기기 귀인 확인

연동 테스트 및 트래킹 링크 검증을 위해 Singular Device Assist 앱과 Attribution Details API 엔드포인트를 사용하여 기기 귀인을 검증하는 종합 가이드.

Singular는 기기 귀인을 확인하는 두 가지 방법을 제공합니다: 모바일 테스트용 Device Assist 앱과 프로그래밍 방식 검증을 위한 Attribution Details API 엔드포인트.

귀인 검증은 새로운 SDK/S2S 연동 테스트와 캠페인 배포 전 Singular Links 유효성 확인의 필수 단계입니다.

대상 독자 UA 매니저, 개발자, QA 엔지니어
사전 요구사항
  • 테스트용 모바일 기기 (Device Assist 앱 방법)
  • Singular API 키 (API 엔드포인트 방법)
  • 기기 광고 식별자 (IDFA, IDFV, GAID 등)

귀인 검증 사용 사례

귀인 확인이 필요한 시점

기기 귀인 검증은 연동 및 캠페인 배포 라이프사이클의 여러 단계에서 중요합니다.

사용 사례 목적
SDK/S2S 연동 테스트

연동 개발 중 SDK가 설치를 올바르게 트래킹하고 올바른 소스에 귀인하는지 검증합니다.

테스팅 콘솔 전체 가이드

트래킹 링크 유효성 검증

올바른 귀인 및 파라미터 전달을 보장하기 위해 캠페인 배포 전 새 Singular Links를 테스트합니다.

트래킹 링크 테스트 방법

캠페인 문제 해결 테스트 기기 귀인 상태를 확인하여 라이브 캠페인의 귀인 문제를 진단합니다.
파트너 연동 검증 광고 파트너에서 Singular 플랫폼으로 귀인 데이터가 올바르게 전달되는지 확인합니다.

방법 비교

검증 방법 선택

테스트 요구사항과 기술적 역량에 따라 적절한 검증 방법을 선택하세요.

방법 적합한 경우 요구사항 제한 사항
Device Assist 앱
  • 빠른 수동 테스트
  • 비기술 사용자
  • 시각적 검증
  • 모바일 기기
  • 앱 설치
수동 프로세스, 자동화 제한
Attribution Details API
  • 자동화 테스트
  • 프로그래밍 방식 검증
  • CI/CD 연동
  • API 키
  • 기기 식별자
  • HTTP 클라이언트
테스트 전용 (베타), 기술 지식 필요

방법 1: Device Assist 앱

테스트 기기에서 직접 기기 귀인 상태, 설치 세부 정보, 이벤트 트래킹 요약을 시각적으로 빠르게 확인할 수 있는 모바일 앱.

Device Assist 앱 개요

앱 기능

Device Assist 앱은 특정 기기에 대해 Singular에 기록된 종합적인 귀인 정보를 표시합니다.

표시되는 귀인 데이터:

  • 설치 귀인: 설치 타임스탬프, 귀인된 매체, 캠페인 이름
  • 리인게이지먼트 귀인: 리인게이지먼트 타임스탬프, 귀인된 매체, 캠페인 세부 정보
  • 이벤트 요약: Singular가 해당 기기에 대해 트래킹한 세션 및 인앱 이벤트
  • 기기 식별자: 트래킹에 사용된 IDFA, IDFV, GAID 또는 기타 식별자

Device Assist 앱 사용 방법

단계별 절차

1

Device Assist 앱 다운로드

테스트 기기에 Singular Device Assist 앱을 설치하세요:

2

귀인 확인 시작

Device Assist 앱을 열고 메인 메뉴에서 구현 확인 을 선택하세요.

Device Assist Main Menu

추가 기능: Device Assist 앱은 메인 메뉴에서 접근 가능한 기기 식별자 조회 및 SDK 구현 검증 도구도 제공합니다.

3

기기 식별자 선택

앱이 플랫폼에 맞는 기기 식별자를 자동으로 선택합니다. 선택을 확인하고 구현 확인 을 다시 탭하여 진행하세요.

Select Device Identifier

식별자 선택:

  • iOS: IDFA (ATT 승인 시) 또는 IDFV (ATT 미승인 또는 미구현 시)
  • Android: GAID (Google Advertising ID) 또는 GAID 사용 불가 시 대체 식별자
4

귀인 세부 정보 검토

앱이 Singular 플랫폼에 기록된 기기의 전체 귀인 정보를 표시합니다.

Attribution Details Display

표시되는 귀인 정보
설치 귀인 세부 정보

설치 타임스탬프: 첫 번째 앱 실행 (설치 이벤트)의 날짜 및 시간

귀인된 매체: 설치 귀인을 받은 광고 매체 또는 소스 (예: Facebook, Google Ads, 오가닉)

캠페인 이름: 설치에 귀인된 마케팅 캠페인

추가 파라미터: 트래킹 링크를 통해 전달된 캠페인 특정 파라미터


설치 귀인 해석
  • "Organic": 귀인 윈도우 내 일치하는 터치포인트 없음 — 설치가 유료 캠페인에 귀인되지 않음
  • "Unattributed": 기기가 트래킹되었지만 귀인 결정이 보류 중이거나 완료되지 않음
  • 매체 이름: 설치가 특정 광고 파트너에 성공적으로 귀인됨
리인게이지먼트 귀인 세부 정보

리인게이지먼트 타임스탬프: 최신 리인게이지먼트 세션의 날짜 및 시간

귀인된 매체: 사용자를 앱으로 다시 유입시킨 소스

캠페인 이름: 세션에 귀인된 리인게이지먼트 캠페인

자기 귀인 매체: 자기 귀인 매체 (Twitter, Facebook, Google Ads, Snapchat 등)의 리인게이지먼트 귀인은 개인 정보 보호 이유로 "Unattributed"로 표시될 수 있습니다.


리인게이지먼트 귀인 요구사항

리인게이지먼트 귀인이 발생하려면:

  • 사용자에게 기존 설치가 있어야 합니다 (새 기기 아님)
  • 리인게이지먼트 캠페인 클릭이 설정된 귀인 윈도우 내에서 발생해야 합니다
  • 리인게이지먼트 클릭 이후 세션이 발생해야 합니다

자세히 알아보기: 리인게이지먼트 귀인 FAQ

이벤트 트래킹 요약

Device Assist 앱은 Singular가 해당 기기에 대해 트래킹한 모든 인앱 이벤트의 요약을 표시합니다.

표시되는 이벤트 정보:

  • 이벤트 이름: 트래킹된 이벤트의 이름 (session, purchase, level_complete 등)
  • 첫 번째 이벤트 시간: 첫 발생 시점의 타임스탬프
  • 마지막 이벤트 시간: 가장 최근 발생 시점의 타임스탬프
  • 이벤트 횟수: 이벤트 발생 총 횟수
  • 매출: 매출 이벤트의 총 매출

이벤트 트래킹 검증

이벤트 요약을 사용하여 다음을 확인하세요:

  • 세션이 올바르게 트래킹되고 있는지
  • 커스텀 이벤트가 올바른 이름으로 표시되는지
  • 매출 이벤트가 금액을 올바르게 캡처하는지
  • 이벤트 타임스탬프가 실제 사용자 행동과 일치하는지

Device Assist 문제 해결

일반적인 문제

귀인 데이터가 표시되지 않음

가능한 원인

  • 앱 미설치: 기기에 테스트 앱이 설치되지 않았거나 아직 열지 않음
  • 잘못된 식별자: Device Assist가 앱 SDK에서 사용하지 않는 식별자를 확인 중
  • SDK 미초기화: 앱에서 Singular SDK가 올바르게 초기화되지 않음
  • 귀인 처리 중: 귀인 결정이 아직 완료되지 않음 (일반적으로 1~5분 소요)

해결 단계

  1. 테스트 앱이 기기에 설치되고 최소 한 번 열렸는지 확인
  2. 기기 식별자가 SDK에서 사용하는 식별자 유형과 일치하는지 확인 (iOS의 경우 IDFA vs IDFV)
  3. 앱 실행 후 5~10분 기다린 후 귀인 재확인
  4. 테스팅 콘솔 을 사용하여 SDK 연동 확인
잘못된 소스에 귀인됨

가능한 원인

  • 이전 기기 사용: 캐시된 귀인이 있는 기기로 이전에 테스트함
  • 여러 터치포인트: 귀인 윈도우 내 여러 캠페인 클릭 발생
  • 핑거프린트 매칭: 확률적 귀인이 잘못된 클릭에 매칭됨

해결 단계

  1. 기기를 초기화하고 귀인을 지우세요:
    • 테스트 앱 삭제
    • 광고 식별자 재설정
    • 등록된 경우 테스팅 콘솔 에서 기기 삭제
  2. 테스트 전 새 기기 사용 또는 식별자 재설정
  3. 테스트 시 핑거프린팅 대신 결정적 귀인 (트래킹 링크에 기기 ID 포함) 사용
  4. 파트너 설정에서 귀인 윈도우 설정 검토
캠페인 대신 오가닉으로 설치 귀인됨

가능한 원인

  • 귀인 윈도우 초과: 설정된 귀인 윈도우 이후 설치 발생
  • 일치하는 터치포인트 없음: 기기와 일치하는 클릭 없음
  • 핑거프린트 불일치: 클릭과 설치 사이에 기기 핑거프린트 변경됨
  • 링크 미클릭: 트래킹 링크 클릭 없이 스토어에서 직접 앱 설치

해결 단계

  1. 앱 설치 전 트래킹 링크를 클릭했는지 확인
  2. 귀인 윈도우 설정이 설치에 충분한 시간을 허용하는지 확인
  3. 안정적인 테스트를 위해 트래킹 링크에 기기 ID 사용 (결정적 귀인)
  4. 클릭 및 설치 중 안정적인 네트워크 연결 확인
  5. 다른 기기에서 테스트하거나 식별자를 재설정하고 재시도

방법 2: Attribution Details API

연동 테스트 및 CI/CD 파이프라인을 위한 자동화된 귀인 검증이 가능한 프로그래밍 방식 API 엔드포인트.

베타 기능 안내: Attribution Details API 엔드포인트는 베타 기능입니다. 테스트 목적으로만 사용하세요 — 프로덕션 앱이나 대용량 환경에서는 호출하지 마세요.


API 엔드포인트 사양

요청 형식

엔드포인트 URL:

https://api.singular.net/api/attribution/attribution_details

요청 방식: GET

전체 요청 예시:

https://api.singular.net/api/attribution/attribution_details?keyspace=idfa&device_id=12345678-1234-1234-1234-123456789012&api_key=your_api_key_here

쿼리 파라미터

필수 파라미터

파라미터 유형 설명
api_key 문자열

플랫폼의 Singular 리포팅 API 키.

위치: 대시보드 → 개발자 도구 → API 키 → 리포팅 API 키

중요: SDK 키가 아닌 리포팅 API 키를 사용하세요. 두 키는 서로 다른 용도로 사용됩니다.

device_id 문자열

기기의 광고 식별자 값.

keyspace 파라미터에 지정된 식별자 유형과 일치해야 합니다.

keyspace 문자열 (열거형)

device_id 에 제공된 광고 식별자 유형:

  • idfa — iOS 광고 식별자 (ATT 승인 필요)
  • idfv — iOS 벤더 식별자 (IDFA 사용 불가 시 대안)
  • aifa — Android 광고 식별자 (GAID라고도 함)
  • sdid — 웹 트래킹용 Singular 기기 ID (SDK 초기화 후 singularSdk.getSingularDeviceId()로 가져옴)

API 응답

응답 형식

API는 요청된 기기의 귀인 세부 정보를 포함하는 JSON 배열을 반환합니다.

응답 샘플

[
  {
    "app_long_name": "com.example.myapp",
    "app_name": "My App",

    "install_info": {
      "install_time": "2020-06-10 11:58:46",
      "network": "Network 1",
      "additional_parameters": {
        "kw": "my keyword",
        "pcid": "1234"
      },
      "campaign_name": "Campaign Name",
      "view_through_attribution": false
    },

    "re_engagement_info": {
      "notes": "Attributions from Self-Attributing networks including: Twitter, Facebook, Google Ads, Snapchat, etc are redacted and always show as 'Unattributed'",
      "install_time": "2020-06-15 15:27:12",
      "network": "Unattributed"
    },

    "uninstall_pre_requisites": {
      "gcm_token": "enE8iQR10RI:APA91bERgfA_xm8T7zgqH9OW_1s05SFFmKnle1zIm0cMrDfuaSxEmC_3j72dj4qN36vh5V8TAEnrXa3Pq3SmLW-XNOHP7daMwcBrBTibdkv_pKMJbN9SbefV6_9nuEfIeI5Zhtz0nlLY"
    },

    "events": [
      {
        "event_name": "Session",
        "first_event_time": "2020-04-02 00:09:55",
        "last_event_time": "2020-04-07 20:59:55",
        "event_count": 2
      },
      {
        "event_name": "Save New Transaction",
        "first_event_time": "2020-04-02 00:11:51",
        "last_event_time": "2020-04-02 00:11:51",
        "event_count": 1
      }
    ]
  }
]

응답 파라미터

JSON 응답 필드

필드 설명
app_long_name

앱 번들 식별자 (예: com.example.myapp)

app_name

Singular 플랫폼에 설정된 앱 표시 이름

install_info

설치 귀인 세부 정보 및 결정 정보를 포함하는 객체:

  • install_time — 첫 번째 앱 세션 (설치) 타임스탬프
  • network — 설치 귀인을 받은 광고 매체
  • campaign_name — 설치에 귀인된 캠페인 이름
  • view_through_attribution — 광고 노출 기반 귀인 (true) vs 광고 클릭 기반 귀인 (false)을 나타내는 불리언. 자세히 알아보기: Singular의 설치 귀인 프로세스
  • additional_parameters — 트래킹 링크를 통해 전달된 커스텀 파라미터. 세부 정보: 트래킹 링크 파라미터 및 리포트 기준
re_engagement_info

리인게이지먼트 귀인에 대해 install_info 와 동일한 구조의 객체.

자세히 알아보기: 리인게이지먼트 귀인 FAQ

개인 정보 보호 참고: 자기 귀인 매체 (Facebook, Google Ads, Twitter, Snapchat)의 리인게이지먼트 귀인은 개인 정보 보호 준수를 위해 "Unattributed"로 표시됩니다.

events

SDK가 트래킹한 인앱 이벤트 요약을 포함하는 객체 배열:

  • event_name — 트래킹된 이벤트 이름
  • first_event_time — 첫 발생 타임스탬프
  • last_event_time — 가장 최근 발생 타임스탬프
  • event_count — 이벤트 총 발생 횟수
  • revenue — 매출 이벤트의 총 매출 (해당하는 경우)
uninstall_pre_requisites

앱 삭제 트래킹 설정을 포함하는 객체:


API 사용 예시

구현 예시

CURL PYTHON JAVASCRIPT

iOS 기기 (IDFA)

curl -X GET "https://api.singular.net/api/attribution/attribution_details?keyspace=idfa&device_id=12345678-1234-1234-1234-123456789012&api_key=your_api_key_here"

Android 기기 (GAID)

curl -X GET "https://api.singular.net/api/attribution/attribution_details?keyspace=aifa&device_id=12345678-1234-1234-1234-123456789012&api_key=your_api_key_here"

웹 트래킹 (SDID)

curl -X GET "https://api.singular.net/api/attribution/attribution_details?keyspace=sdid&device_id=singular_device_id_value&api_key=your_api_key_here"

API 문제 해결

일반적인 API 문제

빈 배열 응답

문제

API가 귀인 데이터 대신 빈 배열 [] 을 반환합니다.


가능한 원인

  • 귀인 데이터 없음: 기기에 앱이 설치된 적 없거나 세션이 트래킹되지 않음
  • 잘못된 식별자: 기기 ID 또는 keyspace가 올바르지 않음
  • 처리 시간 문제: 귀인 데이터가 아직 처리되지 않음 (설치 후 일반적으로 1~5분 소요)

해결 단계

  1. 기기 ID가 공백 없이 올바르게 복사되었는지 확인
  2. keyspace가 식별자 유형과 일치하는지 확인 (iOS의 경우 idfa vs idfv)
  3. 앱 설치 후 5~10분 기다린 후 쿼리 재시도
  4. Device Assist 앱을 사용하여 앱이 설치되고 트래킹되는지 확인
인증 오류

문제

API가 인증 오류 또는 401 Unauthorized 응답을 반환합니다.


가능한 원인

  • 잘못된 API 키: API 키가 올바르지 않거나 제공되지 않음
  • 잘못된 키 유형: 리포팅 API 키 대신 SDK 키 사용
  • 키 만료: API 키가 취소되었거나 재생성됨

해결 단계

  1. 대시보드 → 개발자 도구 → API 키 → 리포팅 API 키로 이동
  2. 리포팅 API 키 복사 (SDK 키 아님)
  3. API 키가 요청에 올바르게 붙여넣기 되었는지 확인
  4. 키가 최근 재생성된 경우 새 키 값을 사용하는지 확인

보안 중요: API 키를 버전 관리에 커밋하거나 클라이언트 측 코드에 노출하지 마세요. 환경 변수 또는 안전한 설정 관리를 사용하세요.

속도 제한 오류

문제

API가 429 Too Many Requests 또는 속도 제한 오류를 반환합니다.


가능한 원인

  • 과도한 요청: 짧은 시간 내 너무 많은 API 호출
  • 프로덕션 사용: 프로덕션 환경에서 API 사용 (의도된 사용 사례 아님)

해결 단계

  1. 코드에 지수 백오프 및 재시도 로직 구현
  2. API 요청 간격 조정 (최소 1초 간격 권장)
  3. API 호출 감소를 위해 가능한 경우 귀인 데이터 캐싱
  4. 합법적인 테스트에 더 높은 속도 제한이 필요한 경우 Singular 지원팀에 문의

베타 제한: Attribution Details API는 테스트 전용으로 설계되었습니다. 대용량 요청이 발생하는 프로덕션 애플리케이션에서는 사용하지 마세요.


모범 사례

연동 테스트 및 캠페인 검증 중 효과적인 귀인 검증을 위한 권장 사항.

테스트 워크플로

권장 테스트 프로세스

  1. 새 기기 사용: 캐시된 귀인을 피하기 위해 초기화된 기기를 사용하거나 테스트 전 광고 식별자를 재설정하세요
  2. 즉시 확인: 테스트 중 빠른 피드백을 위해 설치 후 5~10분 내에 귀인을 확인하세요
  3. 다양한 시나리오 테스트: 다양한 소스 (오가닉, 유료 캠페인, 리인게이지먼트)에 대한 귀인을 검증하세요
  4. 결과 기록: 연동 검증 문서화를 위해 귀인 검증 결과를 기록하세요
  5. 가능한 경우 자동화: 지속적인 검증을 위해 자동화 테스트 스위트에서 Attribution Details API를 사용하세요

방법 선택 가이드

각 방법의 사용 시기

시나리오 권장 방법
빠른 수동 테스트 Device Assist 앱 — 개발 중 가장 빠른 시각적 검증
자동화 테스트 Attribution Details API — CI/CD 파이프라인의 프로그래밍 방식 검증
비기술적 테스트 Device Assist 앱 — 코딩 또는 API 지식 불필요
다수 기기 일괄 검증 Attribution Details API — 여러 기기 확인 스크립팅
이벤트 트래킹 검증 두 방법 모두 — Device Assist로 빠른 확인, API로 상세 이벤트 분석

연동 검증 체크리스트

귀인 검증 체크리스트

완전한 귀인 검증:

  • 설치가 올바른 매체/소스에 귀인됨
  • 캠페인 이름이 예상 캠페인과 일치함
  • 귀인 타임스탬프가 합리적임 (예상 기간 내)
  • 귀인 방식이 적절함 (클릭 vs 노출)
  • 트래킹 링크를 통해 커스텀 파라미터가 올바르게 전달됨
  • 세션 이벤트가 올바르게 트래킹됨
  • 커스텀 이벤트가 올바른 이름으로 표시됨
  • 매출 이벤트가 금액 및 통화를 캡처함
  • 리인게이지먼트 귀인이 작동함 (해당하는 경우)
  • 앱 삭제 트래킹이 설정됨 (구현된 경우)

추가 리소스

귀인 테스트, SDK 연동 및 트래킹 링크 설정에 대한 전체 문서.

관련 문서