> For the complete documentation index, see [llms.txt](https://docs.hackle.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hackle.io/event-management/hackle-event.md).

# 핵클 이벤트 (자동 수집)

이벤트 키가 `$`로 시작하는 이벤트는 핵클에서 별도로 관리하는 이벤트 입니다.

## 1. 자동수집 이벤트

{% hint style="info" %}
자동 수집 이벤트는 Web / App SDK 에서만 수집됩니다.
{% endhint %}

이벤트 관리의 \[자동수집 이벤트] 영역에서 별도로 이벤트 전송하지 않아도, 자동으로 수집되는 이벤트를 확인할 수 있습니다.

![이벤트 관리 > 자동 수집 이벤트](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-3e3920217c692b8afb2869cb6829f7f6ef49126c%2F3fc16832e7322008c1971a3ffc25f553509f71b6_1adf52b638f9fdfc.png?alt=media)

<table data-full-width="true"><thead><tr><th width="157.93359375">Event Key</th><th width="396.88671875">Description</th><th width="79.78125">Web</th><th width="76.4296875">App</th><th width="73.90625">과금</th><th width="90.53125">on/off</th></tr></thead><tbody><tr><td><code>$page_view</code></td><td><p>페이지가 로드될 때 수집되는 이벤트입니다.</p><ul><li>Web: page title</li><li>App: Activity, ViewController</li></ul></td><td>O</td><td>O</td><td>O</td><td>가능</td></tr><tr><td><code>$engagement</code></td><td><p>사용자가 머문 페이지와 머문 시간을 속성으로 수집합니다.<br>아래 데이터 분석에 활용할 수 있습니다.</p><ul><li>페이지당 평균 체류시간</li><li>사용자당 평균 체류시간</li></ul></td><td>O</td><td>O</td><td>O</td><td>가능</td></tr><tr><td><code>$session_start</code></td><td>세션이 시작되는 경우 자동으로 수집됩니다.</td><td>O</td><td>O</td><td>O</td><td>가능</td></tr><tr><td><code>$session_end</code></td><td>세션 종료 시 수집됩니다.</td><td>O</td><td>O</td><td>O</td><td>가능</td></tr><tr><td><code>$app_install</code></td><td>앱 설치후 첫 실행시 수집됩니다.</td><td>X</td><td>O</td><td>O</td><td>가능</td></tr><tr><td><code>$app_update</code></td><td>앱 업데이트후 첫 실행시 수집됩니다.</td><td>X</td><td>O</td><td>O</td><td>가능</td></tr><tr><td><code>$app_open</code></td><td>앱 실행 및 재활성화 시 수집됩니다.</td><td>X</td><td>O</td><td>O</td><td>가능</td></tr><tr><td><code>$app_background</code></td><td>앱이 활성화된 상태(포그라운드)에서<br>비활성화 상태(백그라운드)로 전환될 때 수집됩니다.</td><td>X</td><td>O</td><td>O</td><td>가능</td></tr></tbody></table>

## 2. 사용자 속성 수집 이벤트

사용자 속성을 업데이트 하기위해 SDK/API로 함수를 호출한 경우 수집되는 이벤트입니다.

<table data-full-width="true"><thead><tr><th width="194.95703125">Event Key</th><th width="350.60546875">Description</th><th width="78.82421875">Web</th><th width="77.53515625">App</th><th width="73.84765625">과금</th><th width="92.7265625">on/off</th></tr></thead><tbody><tr><td><code>$properties</code></td><td>일반 사용자 속성을 업데이트할 때 SDK에서 자동으로 만드는 이벤트입니다.</td><td>O</td><td>O</td><td>X</td><td>불가</td></tr><tr><td><code>$push_subscriptions</code></td><td>CRM 사용자 속성 중 푸시 채널의 수신 동의를 업데이트할 때 SDK에서 자동으로 만드는 이벤트입니다.</td><td>O</td><td>O</td><td>O</td><td>불가</td></tr><tr><td><code>$kakao_subscriptions</code></td><td>CRM 사용자 속성 중 카카오 메시지 채널의 수신 동의를 업데이트할 때 SDK에서 자동으로 만드는 이벤트입니다.</td><td>O</td><td>O</td><td>O</td><td>불가</td></tr><tr><td><code>$sms_subscriptions</code></td><td>CRM 사용자 속성 중 문자 메시지 채널의 수신 동의를 업데이트할 때 SDK에서 자동으로 만드는 이벤트입니다.</td><td>O</td><td>O</td><td>O</td><td>불가</td></tr></tbody></table>

## 3. CRM 캠페인 이벤트

CRM 캠페인의 인앱메시지, 푸시메시지, 카카오메시지, 문자메시지, 웹훅 그리고 사용자 여정에서 발생하는 이벤트는 자동 수집되며, 성과측정을 위해서 항상 수집됩니다. 수집을 해제할 수 없으며, 모두 과금 대상입니다.

<table data-full-width="true"><thead><tr><th width="200">Event Key</th><th width="140">채널</th><th>Description</th></tr></thead><tbody><tr><td><code>$in_app_impression</code></td><td>인앱 메시지</td><td>인앱 메시지가 노출되었을때 발생하는 이벤트 입니다.</td></tr><tr><td><code>$in_app_action</code></td><td>인앱 메시지</td><td>인앱 메시지를 클릭했을때 발생하는 이벤트 입니다.</td></tr><tr><td><code>$push_send</code></td><td>푸시 메시지</td><td>푸시 메시지가 발송되었을때 발생하는 이벤트 입니다</td></tr><tr><td><code>$push_click</code></td><td>푸시 메시지</td><td>푸시 메시지를 클릭했을때 발생하는 이벤트 입니다.</td></tr><tr><td><code>$kakao_send</code></td><td>카카오 메시지</td><td>카카오 메시지가 발송되었을때 발생하는 이벤트 입니다</td></tr><tr><td><code>$kakao_click</code></td><td>카카오 메시지</td><td>카카오 메시지의 링크를 클릭했을때 발생하는 이벤트 입니다.<br>트래킹 링크를 적용한 캠페인에서만 수집됩니다.</td></tr><tr><td><code>$sms_send</code></td><td>문자 메시지</td><td>문자 메시지가 발송되었을때 발생하는 이벤트 입니다</td></tr><tr><td><code>$webhook_send</code></td><td>웹훅</td><td>웹훅이 발송되었을때 발생하는 이벤트 입니다.</td></tr><tr><td><code>$journey_entry</code></td><td>사용자 여정</td><td>사용자가 여정에 진입했을때 발생하는 이벤트 입니다.</td></tr><tr><td><code>$journey_node</code></td><td>사용자 여정</td><td>사용자가 여정의 특정 노드 (단계)에 진입했을때 발생하는 이벤트 입니다.</td></tr><tr><td><code>$journey_complete</code></td><td>사용자 여정</td><td>사용자가 여정을 종료했을때 발생하는 이벤트 입니다.</td></tr></tbody></table>

### 이벤트 속성

각 이벤트와 함께 수집되는 속성입니다. 특정 조건에서만 수집되는 속성은 \[수집 조건]에 표기했습니다.

### 공통 속성

`$push_send`, `$kakao_send`, `$sms_send`, `$webhook_send`에 공통으로 수집됩니다.

| 속성                           | 설명                                                                             | 수집 조건       |
| ---------------------------- | ------------------------------------------------------------------------------ | ----------- |
| `campaign_id`                | 캠페인 ID                                                                         |             |
| `campaign_key`               | 캠페인 키                                                                          |             |
| `campaign_type`              | 캠페인 종류 (`PUSH_MESSAGE`, `KAKAO_MESSAGE`, `TEXT_MESSAGE`, `WEBHOOK`, `JOURNEY`) |             |
| `dispatch_id`                | 발송 요청 단위 식별자                                                                   |             |
| `delivery_version`           | 발송 버전                                                                          |             |
| `channel_mode`               | 채널 발송 모드                                                                       |             |
| `tag_ids`                    | 캠페인에 설정된 태그 ID 목록                                                              |             |
| `tag_keys`                   | 캠페인에 설정된 태그 키 목록                                                               |             |
| `campaign_strategy`          | 캠페인 발송 전략                                                                      |             |
| `campaign_strategy_channels` | 발송 전략에 포함된 채널 목록                                                               |             |
| `debug`                      | 테스트 발송 여부                                                                      |             |
| `task_id`                    | 예약 발송 작업 ID                                                                    | 예약 발송       |
| `task_execution_id`          | 예약 발송 작업 실행 ID                                                                 | 예약 발송       |
| `task_deliver_time`          | 예약 발송 지정 시각 (UTC)                                                              | 예약 발송       |
| `experiment_id`              | A/B 테스트 ID                                                                     | 메시지 A/B 테스트 |
| `experiment_key`             | A/B 테스트 키                                                                      | 메시지 A/B 테스트 |
| `experiment_version`         | A/B 테스트 버전                                                                     | 메시지 A/B 테스트 |
| `variation_id`               | 배정된 테스트 그룹 ID                                                                  | 메시지 A/B 테스트 |
| `variation_key`              | 배정된 테스트 그룹 키                                                                   | 메시지 A/B 테스트 |
| `experiment_decision_reason` | 테스트 그룹 배정 사유                                                                   | 메시지 A/B 테스트 |

***

### 인앱 메시지 속성

모든 인앱 메시지 이벤트에 아래 속성이 공통으로 수집됩니다.

| 속성                            | 설명            |
| ----------------------------- | ------------- |
| `in_app_message_id`           | 인앱 메시지 캠페인 ID |
| `in_app_message_key`          | 인앱 메시지 캠페인 키  |
| `in_app_message_display_type` | 메시지 표시 형태     |
| `decision_reason`             | 노출 판단 사유      |

**`$in_app_impression`** : 메시지 노출

| 속성            | 설명                 |
| ------------- | ------------------ |
| `title_text`  | 제목 텍스트             |
| `body_text`   | 본문 텍스트             |
| `button_text` | 메시지에 포함된 버튼 텍스트 목록 |
| `image_url`   | 메시지에 포함된 이미지 경로 목록 |

**`$in_app_action`** : 메시지 클릭

| 속성             | 설명                   | 수집 조건                         |
| -------------- | -------------------- | ----------------------------- |
| `action_type`  | 클릭 동작 종류             |                               |
| `action_value` | 클릭 동작 값 (예: 이동할 URL) |                               |
| `action_area`  | 클릭이 발생한 영역           |                               |
| `button_text`  | 클릭한 버튼의 텍스트          | 버튼 클릭                         |
| `image_url`    | 클릭한 이미지의 경로          | 이미지 클릭                        |
| `image_order`  | 클릭한 이미지가 몇 번째인지      | 이미지 클릭                        |
| `element_id`   | 클릭한 요소의 ID           | HTML 인앱 메시지에서 `trackClick` 호출 |

***

### 푸시 메시지 속성

**`$push_send`** : 발송

공통 캠페인 속성에 더해 아래 속성이 수집됩니다.

| 속성                                  | 설명                           | 수집 조건         |
| ----------------------------------- | ---------------------------- | ------------- |
| `push_message_title`                | 푸시 제목                        |               |
| `push_message_body`                 | 푸시 본문                        |               |
| `push_message_action_type`          | 클릭 시 동작 종류                   |               |
| `push_message_action_value`         | 클릭 시 동작 값                    |               |
| `push_message_image_url`            | 푸시 이미지 URL                   | 이미지를 설정한 경우   |
| `push_message_large_icon_image_url` | 큰 아이콘 이미지 URL                | 큰 아이콘을 설정한 경우 |
| `platform_type`                     | 수신 기기 플랫폼 (`IOS`, `ANDROID`) |               |
| `provider_type`                     | 푸시 발송 채널 (`FCM`, `APN`)      |               |
| `push_token`                        | 발송 대상 푸시 토큰                  |               |
| `result`                            | 발송 결과                        |               |
| `error`                             | 발송 실패 사유                     | 발송 실패         |
| `push_message_id`                   | 푸시 메시지 캠페인 ID                | 푸시 메시지 캠페인    |
| `push_message_key`                  | 푸시 메시지 캠페인 키                 | 푸시 메시지 캠페인    |
| `push_message_execution_id`         | 푸시 메시지 실행 ID                 | 푸시 메시지 캠페인    |

**`$push_click`** : 클릭

클릭은 SDK가 수집하므로 발송 이벤트와 속성 구성이 다릅니다.

| 속성                          | 설명                                 | 수집 조건                       |
| --------------------------- | ---------------------------------- | --------------------------- |
| `campaign_type`             | 캠페인 종류 (`PUSH_MESSAGE`, `JOURNEY`) |                             |
| `push_message_id`           | 푸시 메시지 캠페인 ID                      |                             |
| `push_message_key`          | 푸시 메시지 캠페인 키                       |                             |
| `push_message_execution_id` | 푸시 메시지 실행 ID                       |                             |
| `push_message_delivery_id`  | 푸시 발송 건 식별자                        |                             |
| `journey_id`                | 여정 ID                              | `campaign_type` = `JOURNEY` |
| `journey_key`               | 여정 키                               | `campaign_type` = `JOURNEY` |
| `journey_node_id`           | 메시지를 발송한 여정 노드 ID                  | `campaign_type` = `JOURNEY` |
| `debug`                     | 테스트 발송 여부                          |                             |

***

### 카카오 메시지 속성

**`$kakao_send`** : 발송

공통 캠페인 속성에 더해 아래 속성이 수집됩니다.

| 속성                    | 설명                                                                                                                            | 수집 조건             |
| --------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------- |
| `message_type`        | 메시지 종류 (`ALIM_TALK`, `BASIC_BRAND_MESSAGE`, `FREESTYLE_BRAND_MESSAGE`)                                                        |                   |
| `layout_type`         | 메시지 레이아웃 (`TEXT`, `IMAGE`, `WIDE_IMAGE`, `WIDE_ITEM_LIST`, `CAROUSEL_FEED`, `CAROUSEL_COMMERCE`, `COMMERCE`, `PREMIUM_VIDEO`) | 브랜드 메시지           |
| `channel_id`          | 발송에 사용된 카카오톡 채널 ID                                                                                                            |                   |
| `channel_friend_type` | 수신자의 채널 친구 여부                                                                                                                 |                   |
| `template_code`       | 사용한 템플릿 코드                                                                                                                    | 알림톡, 브랜드 메시지(기본형) |
| `template_parameters` | 템플릿에 채워진 변수 값                                                                                                                 | 알림톡, 브랜드 메시지(기본형) |
| `targeting_type`      | 수신자 타겟팅 방식                                                                                                                    | 브랜드 메시지(기본형)      |
| `is_ad`               | 광고성 메시지 여부                                                                                                                    | 브랜드 메시지           |
| `is_adult`            | 성인 대상 메시지 여부                                                                                                                  | 브랜드 메시지           |
| `result`              | 발송 결과                                                                                                                         |                   |
| `result_code`         | 발송 결과 코드                                                                                                                      |                   |
| `result_reason`       | 발송 결과 사유                                                                                                                      |                   |
| `usage_key`           | 캐시 사용 식별자                                                                                                                     |                   |
| `kakao_message_id`    | 카카오 메시지 캠페인 ID                                                                                                                | 카카오 메시지 캠페인       |
| `kakao_message_key`   | 카카오 메시지 캠페인 키                                                                                                                 | 카카오 메시지 캠페인       |

**`$kakao_click`** : 클릭

트래킹 링크를 적용한 캠페인에서만 수집되며, 메시지를 받은 사용자 식별자(`$userid`, `$hackleid`)에 연결되어 기록됩니다. 트래킹 링크 적용 방법은 카카오 알림톡 작성하기, 카카오 브랜드 메시지 작성하기를 확인해주세요.

클릭은 발송과 별개로 수집되므로 공통 캠페인 속성 전체가 아니라 아래 속성만 수집됩니다.

| 속성                  | 설명                                                                                                                            | 수집 조건                                 |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- |
| `url`               | 클릭한 링크의 도착 URL. UTM 파라미터가 적용된 경우 파라미터를 포함한 값이 수집됩니다.                                                                          |                                       |
| `message_type`      | 메시지 종류 (`ALIM_TALK`, `BASIC_BRAND_MESSAGE`, `FREESTYLE_BRAND_MESSAGE`)                                                        |                                       |
| `campaign_type`     | 클릭이 발생한 캠페인 종류 (`KAKAO_MESSAGE`, `JOURNEY`)                                                                                   |                                       |
| `campaign_id`       | 캠페인 ID                                                                                                                        |                                       |
| `campaign_key`      | 캠페인 키                                                                                                                         |                                       |
| `debug`             | 테스트 발송 여부                                                                                                                     |                                       |
| `kakao_message_id`  | 카카오 메시지 캠페인 ID                                                                                                                | `campaign_type` = `KAKAO_MESSAGE`     |
| `kakao_message_key` | 카카오 메시지 캠페인 키                                                                                                                 | `campaign_type` = `KAKAO_MESSAGE`     |
| `journey_id`        | 여정 ID                                                                                                                         | `campaign_type` = `JOURNEY`           |
| `journey_key`       | 여정 키                                                                                                                          | `campaign_type` = `JOURNEY`           |
| `journey_node_id`   | 메시지를 발송한 여정 노드 ID                                                                                                             | `campaign_type` = `JOURNEY`           |
| `journey_node_key`  | 메시지를 발송한 여정 노드 키                                                                                                              | `campaign_type` = `JOURNEY`           |
| `layout_type`       | 메시지 레이아웃 (`TEXT`, `IMAGE`, `WIDE_IMAGE`, `WIDE_ITEM_LIST`, `CAROUSEL_FEED`, `CAROUSEL_COMMERCE`, `COMMERCE`, `PREMIUM_VIDEO`) | 브랜드 메시지                               |
| `element_type`      | 클릭한 요소의 종류 (`BUTTON` 버튼, `LIST_ITEM` 아이템 리스트 항목, `IMAGE` 이미지, `COUPON` 쿠폰, `CAROUSEL_TAIL` 캐러셀 더보기 카드)                        | 브랜드 메시지                               |
| `element_order`     | 클릭한 요소가 몇 번째인지                                                                                                                | `element_type`이 `BUTTON`, `LIST_ITEM` |
| `card_order`        | 클릭이 발생한 캐러셀 카드가 몇 번째인지                                                                                                        | 캐러셀 레이아웃                              |

{% hint style="warning" %}
알림톡은 템플릿에 등록된 링크 전체가 하나의 변수여야 측정할 수 있는 구조라, 메시지 안에서 어디를 눌렀는지 구분하는 `layout_type`, `element_type`, `element_order`, `card_order`가 수집되지 않습니다. 요소별 클릭 성과를 비교하려면 브랜드 메시지(자유형·기본형)를 사용하세요.
{% endhint %}

{% hint style="info" %}
같은 사용자가 같은 링크를 여러 번 클릭하면 클릭할 때마다 이벤트가 수집됩니다. 중복을 제거하지 않으므로, 메시지를 실제로 클릭한 사람 수를 보려면 이벤트 수가 아니라 사용자 수(UV) 기준으로 분석하세요.
{% endhint %}

***

### 문자 메시지 속성

**`$sms_send`** : 발송

공통 캠페인 속성에 더해 아래 속성이 수집됩니다.

| 속성              | 설명                           | 수집 조건      |
| --------------- | ---------------------------- | ---------- |
| `message_type`  | 메시지 종류 (`SMS`, `LMS`, `MMS`) |            |
| `sender_id`     | 발신번호 식별자                     |            |
| `is_ad`         | 광고성 메시지 여부                   |            |
| `result`        | 발송 결과                        |            |
| `result_code`   | 발송 결과 코드                     |            |
| `result_reason` | 발송 결과 사유                     |            |
| `usage_key`     | 캐시 사용 식별자                    |            |
| `sms_id`        | 문자 메시지 캠페인 ID                | 문자 메시지 캠페인 |
| `sms_key`       | 문자 메시지 캠페인 키                 | 문자 메시지 캠페인 |

***

### 웹훅 속성

**`$webhook_send`** : 발송

공통 캠페인 속성에 더해 아래 속성이 수집됩니다.

| 속성                     | 설명            | 수집 조건     |
| ---------------------- | ------------- | --------- |
| `http_method`          | 요청 HTTP 메서드   |           |
| `webhook_endpoint`     | 요청 대상 URL     |           |
| `webhook_headers`      | 요청에 사용한 헤더    |           |
| `http_status_code`     | 응답 HTTP 상태 코드 | 응답을 받은 경우 |
| `result`               | 발송 결과         |           |
| `webhook_id`           | 웹훅 캠페인 ID     | 웹훅 캠페인    |
| `webhook_key`          | 웹훅 캠페인 키      | 웹훅 캠페인    |
| `webhook_execution_id` | 웹훅 실행 ID      | 웹훅 캠페인    |

***

### 사용자 여정 속성

모든 여정 이벤트에 아래 속성이 공통으로 수집됩니다.

| 속성                     | 설명                 |
| ---------------------- | ------------------ |
| `journey_id`           | 여정 ID              |
| `journey_key`          | 여정 키               |
| `journey_execution_id` | 여정 실행 ID           |
| `journey_instance_id`  | 사용자별 여정 진행 인스턴스 ID |

**`$journey_entry`** : 여정 진입

공통 속성만 수집됩니다.

**`$journey_node`** : 노드 진입

| 속성                            | 설명            |
| ----------------------------- | ------------- |
| `journey_node_id`             | 진입한 노드 ID     |
| `journey_node_key`            | 진입한 노드 키      |
| `journey_node_type`           | 노드 종류         |
| `journey_node_execute_status` | 노드 실행 결과      |
| `next_node`                   | 다음으로 이동할 노드 키 |

**`$journey_complete`** : 여정 종료

| 속성                   | 설명           |
| -------------------- | ------------ |
| `complete_node_id`   | 종료 시점의 노드 ID |
| `complete_node_key`  | 종료 시점의 노드 키  |
| `complete_node_type` | 종료 시점의 노드 종류 |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.hackle.io/event-management/hackle-event.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
