事件資料架構參考
本頁列出 Appier 記錄或定義的所有事件,以及各事件專屬的屬性。
- 事件:目前使用中的事件,含標籤與事件專屬屬性。
- 已停用的事件:已停止使用的事件,但資料中仍可能出現舊版 SDK 記錄的這類事件。
- AIRIS 系統事件屬性:AIRIS 會自動加到每個追蹤事件的屬性,各事件卡片中不再重複列出。
如何閱讀本頁
事件標籤
本頁以標籤標示事件由誰傳送,以及是否影響計費。
| 標籤 | 說明 |
|---|---|
| 預設 | Appier 的 SDK 或後端會自動記錄此事件,不需要另外加入程式碼。 |
| 系統定義 | 事件名稱與屬性由 Appier 定義,事件由您傳送。請完全依照定義傳送事件名稱與屬性,Appier 的功能才能使用這些資料。傳送時須遵守資料記錄準則。 |
| 計費 | 此事件會計入每月的事件用量上限。 |
| 計入 MAU | 此事件會將使用者計入每月活躍使用者(Monthly Active User,MAU)的用量上限。 |
事件屬性標籤
每次記錄事件時,都必須包含標示為必填的屬性,部分 Appier 功能需要這些屬性才能運作。系統定義事件的其他屬性也建議一併傳送,以支援更多使用情境,並提升 Appier 功能的成效。
事件
accept_NTN
accept_NTN使用者同意接收定期通知訊息時,BotBonnie 會產生此事件。權限詳細資訊也會存入 ntn 使用者屬性。
tokentopicexpiredfrequencyaccept_OTN
accept_OTN使用者同意接收一次性通知訊息時,BotBonnie 會產生此事件。
tokentopicexpiredfrequencyaccount_link
account_link使用者將 BotBonnie 身分連結至外部會員帳號時,BotBonnie 會產生此事件。已連結的帳號 ID 也會存入 account_linked 使用者屬性。
account_linkedaccount_unlink
account_unlink使用者取消 BotBonnie 身分與外部會員帳號的連結時,BotBonnie 會產生此事件。
account_linkedactionclicked
actionclicked使用者點擊推播通知上的動作按鈕(包含複製代碼按鈕)時記錄此事件。
notificationidactionidadd_tag
add_tag使用者被加上標籤時,BotBonnie 會產生此事件。使用者完整的標籤清單也會存入 bb_tag_ids 與 bb_tag_names 使用者屬性。
bb_tag_idsbb_tag_namesaiq_cg_received
aiq_cg_receivedApp 內或網頁內行銷活動針對實驗控制組的使用者觸發時記錄此事件。系統不會顯示訊息,並以此事件取代 qg_inapp_displayed 或 qg_inweb_displayed。
notificationidtypeaiq_deep_link_redirected
aiq_deep_link_redirected使用者透過深層連結或通用連結開啟 App 時記錄此事件,並附上原始網址、網址中的 UTM 與歸因參數,以及上次啟動 App 的時間。
urlasitimestamplast_app_launched_timeutm_sourceutm_mediumutm_campaignutm_termutm_contentutm_idutm_source_platformutm_creative_formatutm_marketing_tacticaiq_geofence
aiq_geofenceAndroid SDK 一次傳送一批地理柵欄進出紀錄時記錄此事件。每次進出都會以一筆紀錄的形式放在 transitions 屬性中。帳號已啟用地理柵欄功能時才會記錄。
transitionslatitude、longitude、timestamp(Unix 時間戳記,單位為秒)、provider、geofence_id、geofence_name、geofence_latitude、geofence_longitude、geofence_radius、transition(1 = 進入,2 = 離開)與 isMock;裝置有回報時,還會加上 altitude、accuracy、speed、bearing、bearingAccuracyDegrees、verticalAccuracy、speedAccuracy 與 isComplete。
aiq_kakao_pending
aiq_kakao_pendingInfobip 回報 Kakao 行銷活動訊息尚未送達(待處理)時記錄此事件。
notificationidmsgidtsvendorerrorinfobip_status_nameinfobip_error_nameinfobip_mccmncaiq_kakao_rejected
aiq_kakao_rejectedInfobip 回報 Kakao 行銷活動訊息無法送達時記錄此事件。
notificationidmsgidtsvendorerrorinfobip_status_nameinfobip_error_nameinfobip_mccmncaiq_mms_operation_failed
aiq_mms_operation_failed多媒體簡訊的傳送請求整批失敗時記錄此事件。原因是 Mitake 針對請求回傳錯誤,或 AIQUA 無法完成請求,因此沒有任何訊息被受理。
notificationidtsvendererror_codeerror_descriptionaiq_mms_rejected
aiq_mms_rejectedMitake 回報多媒體簡訊行銷活動訊息無法送達時記錄此事件。
notificationidmsgidtsvenderstatus_codestatus_descaiq_mms_sending_failed
aiq_mms_sending_failedMitake 受理多媒體簡訊傳送請求,但拒絕其中個別訊息時記錄此事件。
notificationidtsvendervendortrackiderror_codeerror_descriptionaiq_notification_blocked
aiq_notification_blocked推播通知已收到但未顯示時記錄此事件,原因是通知在設定的使用者休息時間內送達,或送達時已過期。只適用於 Android。
notificationidaiq_onsite_experience_clicked
aiq_onsite_experience_clicked使用者點擊站內體驗行銷活動所加入內容中的連結時記錄此事件。
experience_idcreative_idaiq_onsite_experience_displayed
aiq_onsite_experience_displayed站內體驗行銷活動針對使用者變更網站內容時記錄此事件。
experience_idcreative_idaiq_sms_pending
aiq_sms_pending簡訊供應商回報簡訊行銷活動訊息已受理但尚未送達(待處理或緩衝中)時記錄此事件。
notificationidmsgidtsmsgcountvonage_statusvonage_err_codevonage_network_codeerrorinfobip_status_nameinfobip_error_nameinfobip_mccmncaiq_sms_rejected
aiq_sms_rejected簡訊供應商回報簡訊行銷活動訊息無法送達時記錄此事件。
notificationidmsgidtserrormsgcountvonage_statusvonage_err_codevonage_network_codeinfobip_status_nameinfobip_error_nameinfobip_mccmncvenderstatus_codestatus_flagstatus_flag_meaningstatus_stringaiq_switch_app_id
aiq_switch_app_idApp 將 SDK 切換至另一個 Appier App ID 時記錄此事件,並附上切換前後的 ID。
fromtoapp_launched
app_launched每次啟動 App 或將 App 切換到前景時記錄此事件。App 在背景啟動時不會記錄,例如被靜默推播喚醒的情況。
appier_property_update
appier_property_update每次使用者屬性的值變更時記錄此事件,並附上屬性的新值與舊值。此事件只會顯示在 AIRIS 中。
propertyvaluelastbeacon
beacon使用者進入 LINE Beacon 範圍時,BotBonnie 會產生此事件。
hwidbutton click
button click使用者點擊網站上的連結、按鈕或提交按鈕時,AIRIS 會產生此事件。點擊追蹤預設為開啟。AIRIS 也會加上 AIRIS 系統事件屬性。
textpage_titletag_nametagname。
classnametypetitlepointer_typedom_pathcancel_NTN
cancel_NTN使用者停止接收定期通知訊息時,BotBonnie 會產生此事件。
tokentopicexpiredfrequencycategory_viewed
category_viewed使用者瀏覽商品類別頁面時,請記錄此事件。
category_nameuser_id事件記錄範例
appier('event', 'category_viewed', {
category_name: 'Shoes,Running',
user_id: 'member_10023'
});var properties: [String: Any] = [:]
properties["category_name"] = "Shoes,Running"
properties["user_id"] = "member_10023"
QGSdk.getSharedInstance().logEvent("category_viewed",
withParameters: properties)try {
val properties = JSONObject()
properties.put("category_name", "Shoes,Running")
properties.put("user_id", "member_10023")
QG.getInstance(context).logEvent("category_viewed", properties)
} catch (e: JSONException) {
// 處理例外狀況
}checkout_completed
checkout_completed使用者完成結帳時,每筆訂單記錄一次此事件。請將此事件作為轉換事件,並針對訂單中的每項商品各記錄一個 product_purchased 事件。記錄時請帶入訂單總額作為 valueToSum。
order_id必填order_quantityorder_amountuser_idcurrency事件記錄範例
appier('event', 'checkout_completed', {
order_id: 'ORD-20240930-001',
order_quantity: 2,
order_amount: 1599.98,
user_id: 'member_10023',
currency: 'TWD'
}, 1599.98);var properties: [String: Any] = [:]
properties["order_id"] = "ORD-20240930-001"
properties["order_quantity"] = 2
properties["order_amount"] = 1599.98
properties["user_id"] = "member_10023"
properties["currency"] = "TWD"
QGSdk.getSharedInstance().logEvent("checkout_completed",
withParameters: properties,
withValueToSum: 1599.98)try {
val properties = JSONObject()
properties.put("order_id", "ORD-20240930-001")
properties.put("order_quantity", 2)
properties.put("order_amount", 1599.98)
properties.put("user_id", "member_10023")
properties.put("currency", "TWD")
QG.getInstance(context).logEvent("checkout_completed", properties, 1599.98)
} catch (e: JSONException) {
// 處理例外狀況
}checkout_initiated
checkout_initiated使用者開始結帳流程時,請記錄此事件。
user_idcurrency事件記錄範例
appier('event', 'checkout_initiated', {
user_id: 'member_10023',
currency: 'TWD'
});var properties: [String: Any] = [:]
properties["user_id"] = "member_10023"
properties["currency"] = "TWD"
QGSdk.getSharedInstance().logEvent("checkout_initiated",
withParameters: properties)try {
val properties = JSONObject()
properties.put("user_id", "member_10023")
properties.put("currency", "TWD")
QG.getInstance(context).logEvent("checkout_initiated", properties)
} catch (e: JSONException) {
// 處理例外狀況
}click
click使用者點擊聊天機器人訊息中的按鈕或回傳動作時,BotBonnie 會產生此事件。
valuecontent_detail_viewed
content_detail_viewed重要的詳細資訊頁面顯示時,請記錄此事件,例如服務、課程、方案、房產或諮詢的詳細資訊頁面。請在頁面成功顯示後才記錄。只適用於網站。
content_id必填content_namecontent_typecontent_category事件記錄範例
appier('event', 'content_detail_viewed', {
content_id: 'SERVICE-123',
content_name: 'Financial Planning Consultation',
content_type: 'service',
content_category: 'financial_planning',
content_link: 'https://example.com/services/financial-planning'
});delete_params
delete_params使用者的自訂欄位或基本資料被刪除時,BotBonnie 會產生此事件。只會傳送被刪除的欄位。
bb_params_<encoded field name>value)與欄位名稱(name)。屬性名稱的結尾是編碼後的欄位名稱。
download
download使用者點擊網站上的連結,下載 PDF、ZIP、Office 文件、影片等檔案時,AIRIS 會產生此事件。下載追蹤預設為開啟。UTM 與行銷活動屬性描述的是此次造訪,而非檔案本身。AIRIS 也會加上 AIRIS 系統事件屬性。
utm_sourceutm_mediumutm_campaignutm_termutm_contentutm_idutm_aa_crtv_idcampaign_sourcecampaign_mediumcampaign_namecampaign_termcampaign_contentcampaign_idcampaign_aa_crtv_idec_account_link
ec_account_link使用者連結電商或 CRM 會員帳號時,BotBonnie 會產生此事件。會員的姓名、Email 地址、電話號碼、會員等級等詳細資料也會存入使用者個人檔案。
ec_account_linkedec_coupon_received
ec_coupon_received使用者收到優惠券時,BotBonnie 會產生此事件。
coupon_titlecoupon_codepromotion_idpromotion_typeuser_idexpired_dateec_credit_received
ec_credit_received使用者獲得購物金時,BotBonnie 會產生此事件。
valuecredit_earnedremainingreasonexpired_dateuser_idec_credit_used
ec_credit_used使用者使用購物金時,BotBonnie 會產生此事件。
valuecredit_earnedremainingreasonexpired_dateuser_idec_membership_tier_updated
ec_membership_tier_updated使用者的會員等級變更時,BotBonnie 會產生此事件。新等級的 ID、名稱與到期日會存入 ec_membership_tier 使用者屬性。
ec_order_placed
ec_order_placed使用者下單時,BotBonnie 會產生此事件。
order_idorder_numberorder_paymentamountcurrencypayment_typedeliverypurchased_productsproduct_id)與數量(quantity)。
user_idec_order_refunded
ec_order_refunded訂單退款時,BotBonnie 會產生此事件。
order_idorder_numberrefund_amountamountcurrencypayment_typecancel_reasonec_order_status_changed
ec_order_status_changed訂單狀態變更時,BotBonnie 會產生此事件。
order_idcurrent_statusstatus_changed_atec_point_received
ec_point_received使用者獲得點數時,BotBonnie 會產生此事件。
valuepoint_earnedremainingreasonexpired_dateuser_idec_point_used
ec_point_used使用者使用點數時,BotBonnie 會產生此事件。
valuepoint_earnedremainingreasonexpired_dateuser_idec_shipment_updated
ec_shipment_updated訂單出貨或送達時,BotBonnie 會產生此事件。
statusorder_idorder_numberorder_paymentpayment_typedeliverytracking_numberdelivery_datestatus 為「delivered」時才會傳送。
first_app_launched
first_app_launched安裝 SDK 後第一次啟動 App 時記錄此事件,只會記錄一次。
follow
follow使用者追蹤官方帳號時,BotBonnie 會產生此事件。
geofence_enter
geofence_enter裝置進入 Appier 地理柵欄(設定好的位置區域)時記錄此事件。帳號已啟用地理柵欄功能時才會記錄。
geofence_idgeofence_namegeofence_latitudegeofence_longitudegeofence_radiusgeofence_configlatitudelongitudealtitudeaccuracyspeedprovidertimestampgeofence_exit
geofence_exit裝置離開 Appier 地理柵欄時記錄此事件。帳號已啟用地理柵欄功能時才會記錄。
geofence_idgeofence_namegeofence_latitudegeofence_longitudegeofence_radiusgeofence_configlatitudelongitudealtitudeaccuracyspeedprovidertimestampgeofence_register_failed
geofence_register_failedSDK 註冊要監測的地理柵欄失敗時記錄此事件。帳號已啟用地理柵欄功能時才會記錄。
geofence_idgeofence_nameerrorgeofence_latitudegeofence_longitudegeofence_radiusgeofence_configtimestampgeofence_updated
geofence_updatedSDK 在裝置上完成註冊或更新要監測的地理柵欄時記錄此事件。帳號已啟用地理柵欄功能時才會記錄。
incognito_browsing
incognito_browsingSDK 偵測到使用者以私密視窗或無痕視窗瀏覽時記錄此事件。
interest_tagging
interest_taggingAIRIS 幫使用者加上興趣關鍵字標籤時,會產生此事件。AIRIS 也會加上 AIRIS 系統事件屬性。
keywordjourney_map_entry
journey_map_entry使用者進入旅程圖時記錄此事件。
timestampjourney_map_idjourney_node_idjourney_map_versionjourney_map_exit
journey_map_exit使用者離開旅程圖時記錄此事件,並附上離開時所在的節點;如果適用,也會附上離開該節點的路徑。
timestampjourney_map_idjourney_node_idjourney_map_versionjourney_map_split_path_typejourney_map_split_path_idlead_initiated
lead_initiated使用者首次與潛在顧客表單或諮詢表單有實質互動時,請記錄此事件。請勿在頁面載入時記錄。只適用於網站。
form_idform_nameservice_idservice_name事件記錄範例
appier('event', 'lead_initiated', {
form_id: 'CONSULTATION-FORM',
form_name: 'Book a Consultation',
service_id: 'SERVICE-123',
service_name: 'Financial Planning Consultation'
});lead_submitted
lead_submitted網站確認潛在顧客資料或詢問已提交時,請記錄此事件。請將此事件作為主要的潛在顧客轉換。只適用於網站。
lead_idform_idform_nameservice_idservice_namelead_sourceuser_idphone_no事件記錄範例
appier('event', 'lead_submitted', {
lead_id: 'LEAD-123',
form_id: 'CONSULTATION-FORM',
form_name: 'Book a Consultation',
service_id: 'SERVICE-123',
service_name: 'Financial Planning Consultation',
lead_source: 'website_consultation_form',
user_id: 'member_10023',
email: '[email protected]',
phone_no: '+886912345678'
});login
login網站或 App 確認使用者登入成功後,請記錄此事件;請勿在登入頁面載入或使用者點擊登入按鈕時記錄。
事件記錄範例
// 在網站本身的登入流程成功後呼叫。
// 將 user_id 存入使用者個人檔案,再傳送 login 事件。
appier('login', 'user_id', 'member_10023');QGSdk.getSharedInstance().logEvent("login")QG.getInstance(context).logEvent("login")mobile_screen_viewed
mobile_screen_viewedApp 顯示畫面時,請呼叫 AiDeal 的 startLogging 方法並傳入畫面的頁面類型,以記錄此事件。SDK 會以您傳入的頁面類型記錄此事件。
screen_types事件記錄範例
// 在該畫面的 view controller 中
let attributes = AIDPageAttributes.Builder()
.pageType(.item)
.build()
AppierSDK.AiDeal.startLogging(self, attributes: attributes)// 在該畫面的 Activity 中
val attributes = Attributes.Builder()
.pageType(PageType.ITEM)
.build()
Appier.AiDeal.startLogging(this, attributes)notification_browsed
notification_browsed使用者點擊下一張/上一張或滑動,瀏覽輪播或滑塊推播中的卡片時記錄此事件。
notificationidnotification_clicked
notification_clicked使用者點擊行銷活動訊息、點擊 App 或網頁推播通知、開啟 Email 中的追蹤連結,或從 LINE 或 ATM 行銷活動連結進入網站或 App 時記錄此事件。App 內、網頁內與多媒體簡訊行銷活動不會記錄此事件。
notificationidactionidqgtagproduct_linetsnotification_delivered
notification_delivered發送供應商回報行銷活動訊息已送達使用者時記錄此事件。適用於簡訊、多媒體簡訊、Kakao、Email 與 LINE。LINE 訊息在送出後即會記錄。
notificationidtsmsgidvendervendormsgcountipnotification_displayed
notification_displayed推播通知顯示在裝置上時記錄此事件。在 iOS 上由 Notification Service Extension 記錄。
notificationidnotification_error
notification_error透過 ESS Sender 傳送的行銷活動訊息未能送達使用者時記錄此事件,目前適用於 Kakao Moment 行銷活動。此事件不含錯誤詳細資訊。
notificationidtsnotification_received
notification_received行銷活動訊息送達使用者時記錄此事件:App 或網頁推播抵達裝置,或 Email 服務供應商回報 Email 已寄出或已送達。
notificationiddevice_timein_blackout_windowexpiredmsgidtsnotification_sent
notification_sent發送供應商受理要傳送給使用者的行銷活動訊息時記錄此事件。適用於 App 推播(FCM、APNs)、網頁推播、簡訊、多媒體簡訊、Kakao、Email 與 LINE。App 內與網頁內行銷活動不會記錄此事件。
notificationidtsvendervendortrackidmsgcountnotification_targeted
notification_targeted使用者被選為 A/B 實驗行銷活動的接收者時記錄此事件,包括不會收到訊息的控制組使用者。
notificationidtsoutgoing
outgoing使用者點擊網站上連往其他網站的連結時,AIRIS 會產生此事件。外部連結追蹤預設為開啟。AIRIS 也會加上 AIRIS 系統事件屬性。
page_viewed
page_viewed網站每次載入頁面時記錄此事件,並附上頁面網址、參照網址,以及網址中的所有 UTM 參數。
qg_segqg_seg 查詢參數的值。參數存在時才會傳送。
utm_sourceutm_mediumutm_campaignutm_termutm_contentutm_idutm_aa_crtv_idutm_aa_crtv_id)。
事件記錄範例
// 僅限單頁應用程式(SPA):其他網站由 SDK 自動記錄 page_viewed。
// 每次頁面網址變更時,請手動記錄此事件。
appier('event', 'page_viewed', { url: window.location.href });payment_info_added
payment_info_added使用者在帳號中新增信用卡、PayPal 帳號等付款資訊時,請記錄此事件。
user_id事件記錄範例
appier('event', 'payment_info_added', {
user_id: 'member_10023'
});var properties: [String: Any] = [:]
properties["user_id"] = "member_10023"
QGSdk.getSharedInstance().logEvent("payment_info_added",
withParameters: properties)try {
val properties = JSONObject()
properties.put("user_id", "member_10023")
QG.getInstance(context).logEvent("payment_info_added", properties)
} catch (e: JSONException) {
// 處理例外狀況
}prediction_score_update
prediction_score_updateAiDeal 更新使用者的轉換、價格敏感度、提升等預測分數時記錄此事件。此事件可作為旅程圖的條件。
conversion_scoreprice_sensitivity_scoreuplift_scoreproduct_added_to_cart
product_added_to_cart使用者將商品加入購物車時,請記錄此事件。每項商品記錄一個事件。
product_idproduct_priceproduct_nameuser_idproduct_categorycurrency事件記錄範例
appier('event', 'product_added_to_cart', {
product_id: 'SKU-10023',
product_price: 799.99,
product_name: 'Running Shoes X1',
product_image_url: 'https://cdn.example.com/img/sku-10023.jpg',
product_url: 'https://www.example.com/products/sku-10023',
user_id: 'member_10023',
product_category: 'Shoes,Running',
currency: 'TWD'
});var properties: [String: Any] = [:]
properties["product_id"] = "SKU-10023"
properties["product_price"] = 799.99
properties["product_name"] = "Running Shoes X1"
properties["product_image_url"] = "https://cdn.example.com/img/sku-10023.jpg"
properties["product_url"] = "https://www.example.com/products/sku-10023"
properties["user_id"] = "member_10023"
properties["product_category"] = "Shoes,Running"
properties["currency"] = "TWD"
QGSdk.getSharedInstance().logEvent("product_added_to_cart",
withParameters: properties)try {
val properties = JSONObject()
properties.put("product_id", "SKU-10023")
properties.put("product_price", 799.99)
properties.put("product_name", "Running Shoes X1")
properties.put("product_image_url", "https://cdn.example.com/img/sku-10023.jpg")
properties.put("product_url", "https://www.example.com/products/sku-10023")
properties.put("user_id", "member_10023")
properties.put("product_category", "Shoes,Running")
properties.put("currency", "TWD")
QG.getInstance(context).logEvent("product_added_to_cart", properties)
} catch (e: JSONException) {
// 處理例外狀況
}product_added_to_wishlist
product_added_to_wishlist使用者將商品加入願望清單或我的最愛時,請記錄此事件。
product_idproduct_priceproduct_nameuser_idproduct_category事件記錄範例
appier('event', 'product_added_to_wishlist', {
product_id: 'SKU-10023',
product_price: 799.99,
product_name: 'Running Shoes X1',
product_image_url: 'https://cdn.example.com/img/sku-10023.jpg',
product_url: 'https://www.example.com/products/sku-10023',
user_id: 'member_10023',
product_category: 'Shoes,Running'
});var properties: [String: Any] = [:]
properties["product_id"] = "SKU-10023"
properties["product_price"] = 799.99
properties["product_name"] = "Running Shoes X1"
properties["product_image_url"] = "https://cdn.example.com/img/sku-10023.jpg"
properties["product_url"] = "https://www.example.com/products/sku-10023"
properties["user_id"] = "member_10023"
properties["product_category"] = "Shoes,Running"
QGSdk.getSharedInstance().logEvent("product_added_to_wishlist",
withParameters: properties)try {
val properties = JSONObject()
properties.put("product_id", "SKU-10023")
properties.put("product_price", 799.99)
properties.put("product_name", "Running Shoes X1")
properties.put("product_image_url", "https://cdn.example.com/img/sku-10023.jpg")
properties.put("product_url", "https://www.example.com/products/sku-10023")
properties.put("user_id", "member_10023")
properties.put("product_category", "Shoes,Running")
QG.getInstance(context).logEvent("product_added_to_wishlist", properties)
} catch (e: JSONException) {
// 處理例外狀況
}product_purchased
product_purchased已完成訂單中的每項商品各記錄一次此事件,並針對訂單記錄一個 checkout_completed 事件。記錄時請帶入商品的價值作為 valueToSum。一筆訂單可能產生多個這類事件,因此請勿將此事件作為主要的訂單轉換事件,請改用 checkout_completed。
order_id必填product_id必填product_priceproduct_nameproduct_categoryproduct_quantitytotal_priceuser_idcurrency事件記錄範例
appier('event', 'product_purchased', {
order_id: 'ORD-20240930-001',
product_id: 'SKU-10023',
product_price: 799.99,
product_name: 'Running Shoes X1',
product_image_url: 'https://cdn.example.com/img/sku-10023.jpg',
product_url: 'https://www.example.com/products/sku-10023',
product_category: 'Shoes,Running',
product_quantity: 2,
total_price: 1599.98,
user_id: 'member_10023',
currency: 'TWD'
}, 1599.98);var properties: [String: Any] = [:]
properties["order_id"] = "ORD-20240930-001"
properties["product_id"] = "SKU-10023"
properties["product_price"] = 799.99
properties["product_name"] = "Running Shoes X1"
properties["product_image_url"] = "https://cdn.example.com/img/sku-10023.jpg"
properties["product_url"] = "https://www.example.com/products/sku-10023"
properties["product_category"] = "Shoes,Running"
properties["product_quantity"] = 2.0
properties["total_price"] = 1599.98
properties["user_id"] = "member_10023"
properties["currency"] = "TWD"
QGSdk.getSharedInstance().logEvent("product_purchased",
withParameters: properties,
withValueToSum: 1599.98)try {
val properties = JSONObject()
properties.put("order_id", "ORD-20240930-001")
properties.put("product_id", "SKU-10023")
properties.put("product_price", 799.99)
properties.put("product_name", "Running Shoes X1")
properties.put("product_image_url", "https://cdn.example.com/img/sku-10023.jpg")
properties.put("product_url", "https://www.example.com/products/sku-10023")
properties.put("product_category", "Shoes,Running")
properties.put("product_quantity", 2.0)
properties.put("total_price", 1599.98)
properties.put("user_id", "member_10023")
properties.put("currency", "TWD")
QG.getInstance(context).logEvent("product_purchased", properties, 1599.98)
} catch (e: JSONException) {
// 處理例外狀況
}product_removed_from_cart
product_removed_from_cart使用者將商品移出購物車時,請記錄此事件。每項商品記錄一個事件。
product_idproduct_priceproduct_nameuser_id事件記錄範例
appier('event', 'product_removed_from_cart', {
product_id: 'SKU-10023',
product_price: 799.99,
product_name: 'Running Shoes X1',
product_image_url: 'https://cdn.example.com/img/sku-10023.jpg',
product_url: 'https://www.example.com/products/sku-10023',
user_id: 'member_10023'
});var properties: [String: Any] = [:]
properties["product_id"] = "SKU-10023"
properties["product_price"] = 799.99
properties["product_name"] = "Running Shoes X1"
properties["product_image_url"] = "https://cdn.example.com/img/sku-10023.jpg"
properties["product_url"] = "https://www.example.com/products/sku-10023"
properties["user_id"] = "member_10023"
QGSdk.getSharedInstance().logEvent("product_removed_from_cart",
withParameters: properties)try {
val properties = JSONObject()
properties.put("product_id", "SKU-10023")
properties.put("product_price", 799.99)
properties.put("product_name", "Running Shoes X1")
properties.put("product_image_url", "https://cdn.example.com/img/sku-10023.jpg")
properties.put("product_url", "https://www.example.com/products/sku-10023")
properties.put("user_id", "member_10023")
QG.getInstance(context).logEvent("product_removed_from_cart", properties)
} catch (e: JSONException) {
// 處理例外狀況
}product_removed_from_wishlist
product_removed_from_wishlist使用者將商品移出願望清單或我的最愛時,請記錄此事件。
product_idproduct_priceproduct_nameuser_id事件記錄範例
appier('event', 'product_removed_from_wishlist', {
product_id: 'SKU-10023',
product_price: 799.99,
product_name: 'Running Shoes X1',
product_image_url: 'https://cdn.example.com/img/sku-10023.jpg',
product_url: 'https://www.example.com/products/sku-10023',
user_id: 'member_10023'
});var properties: [String: Any] = [:]
properties["product_id"] = "SKU-10023"
properties["product_price"] = 799.99
properties["product_name"] = "Running Shoes X1"
properties["product_image_url"] = "https://cdn.example.com/img/sku-10023.jpg"
properties["product_url"] = "https://www.example.com/products/sku-10023"
properties["user_id"] = "member_10023"
QGSdk.getSharedInstance().logEvent("product_removed_from_wishlist",
withParameters: properties)try {
val properties = JSONObject()
properties.put("product_id", "SKU-10023")
properties.put("product_price", 799.99)
properties.put("product_name", "Running Shoes X1")
properties.put("product_image_url", "https://cdn.example.com/img/sku-10023.jpg")
properties.put("product_url", "https://www.example.com/products/sku-10023")
properties.put("user_id", "member_10023")
QG.getInstance(context).logEvent("product_removed_from_wishlist", properties)
} catch (e: JSONException) {
// 處理例外狀況
}product_viewed
product_viewed使用者瀏覽商品頁面或商品詳細資訊時,請記錄此事件。在商品頁面上,此事件可取代 page_viewed。
product_idproduct_priceproduct_nameuser_idproduct_categorycurrency事件記錄範例
appier('event', 'product_viewed', {
product_id: 'SKU-10023',
product_price: 799.99,
product_name: 'Running Shoes X1',
product_image_url: 'https://cdn.example.com/img/sku-10023.jpg',
product_url: 'https://www.example.com/products/sku-10023',
user_id: 'member_10023',
product_category: 'Shoes,Running',
currency: 'TWD'
});var properties: [String: Any] = [:]
properties["product_id"] = "SKU-10023"
properties["product_price"] = 799.99
properties["product_name"] = "Running Shoes X1"
properties["product_image_url"] = "https://cdn.example.com/img/sku-10023.jpg"
properties["product_url"] = "https://www.example.com/products/sku-10023"
properties["user_id"] = "member_10023"
properties["product_category"] = "Shoes,Running"
properties["currency"] = "TWD"
QGSdk.getSharedInstance().logEvent("product_viewed",
withParameters: properties)try {
val properties = JSONObject()
properties.put("product_id", "SKU-10023")
properties.put("product_price", 799.99)
properties.put("product_name", "Running Shoes X1")
properties.put("product_image_url", "https://cdn.example.com/img/sku-10023.jpg")
properties.put("product_url", "https://www.example.com/products/sku-10023")
properties.put("user_id", "member_10023")
properties.put("product_category", "Shoes,Running")
properties.put("currency", "TWD")
QG.getInstance(context).logEvent("product_viewed", properties)
} catch (e: JSONException) {
// 處理例外狀況
}pv
pv使用者載入網站上的頁面時,AIRIS 會產生此事件。AIRIS 也會加上 AIRIS 系統事件屬性。
urititlereturningscroll_depthqg_carousel_clicked
qg_carousel_clicked使用者點擊輪播或滑塊推播中的卡片時記錄此事件。被點擊卡片的內容會隨事件一起傳送。
notificationidtitlemessagebodydeeplinkqg_carousel_dismissed
qg_carousel_dismissed使用者透過關閉動作關閉輪播或滑塊推播時記錄此事件。只適用於 iOS。
notificationidqg_email_deferral
qg_email_deferralEmail 行銷活動訊息暫時無法送達、將會重試時記錄此事件。意義與 qg_email_deferred 相同,適用於透過 Mandrill 寄送的 Email。
notificationidmsgidtsqg_email_deferred
qg_email_deferredEmail 行銷活動訊息暫時無法送達時記錄此事件。Email 服務供應商會持續重試,最長 72 小時。
notificationidmsgidtsqg_email_group_resubed
qg_email_group_resubed使用者重新訂閱先前退出的 Email 訂閱群組時記錄此事件。
notificationidmsgidtsqg_email_group_unsubed
qg_email_group_unsubed使用者取消訂閱 Email 訂閱群組時記錄此事件。
notificationidmsgidtsqg_email_hard_bounced
qg_email_hard_bouncedEmail 行銷活動訊息發生硬退件時記錄此事件,代表因永久性原因無法寄達,例如 Email 地址不存在。使用者個人檔案中的 Email 也會標記為硬退件。
notificationidmsgidtsqg_email_opened
qg_email_opened使用者開啟 Email 行銷活動訊息時記錄此事件,依據為 Email 服務供應商或 AIQUA 開信追蹤像素的回報。
notificationidmsgidtsqg_email_processed
qg_email_processedEmail 服務供應商受理 Email 行銷活動訊息並準備寄送時記錄此事件。
notificationidmsgidtsqg_email_rejected
qg_email_rejectedEmail 服務供應商拒絕寄送 Email 行銷活動訊息時記錄此事件,原因可能是 Email 地址在供應商的封鎖清單中。
notificationidmsgidtsqg_email_soft_bounced
qg_email_soft_bouncedEmail 行銷活動訊息發生軟退件時記錄此事件,代表因暫時性原因無法寄達,例如信箱已滿。被 Sendgrid 捨棄的 Email 也會記錄為軟退件。
notificationidmsgidtsqg_email_spammed
qg_email_spammed使用者將 Email 行銷活動訊息標為垃圾訊息時記錄此事件。
notificationidmsgidtsqg_email_unsubed
qg_email_unsubed使用者透過 AIQUA 的取消訂閱連結或 Email 服務供應商的取消訂閱功能,取消訂閱 Email 行銷活動時記錄此事件。
notificationidmsgidtsqg_inapp_clicked
qg_inapp_clicked使用者點擊 App 內訊息中的按鈕或連結,或創意設計模組 App 內訊息中的網址動作時記錄此事件。
notificationidactionidqgtagcalltoactiontextqg_inapp_closed
qg_inapp_closed使用者關閉 App 內訊息,或訊息因本身的動作而關閉時記錄此事件,例如開啟深層連結後自動關閉。
notificationidqg_inapp_displayed
qg_inapp_displayedApp 內訊息顯示在 App 畫面上時記錄此事件。創意設計模組的 App 內訊息會在內容載入完成後記錄。
notificationidtypeqg_inapp_failed
qg_inapp_failedApp 內訊息無法顯示時記錄此事件,原因可能是 payload 無效、圖片或圖示下載失敗,或創意設計模組訊息載入失敗。
notificationidreasonmsgcausenetworktypeqg_inapp_lead_gen
qg_inapp_lead_gen使用者提交創意設計模組 App 內訊息中的表單時記錄此事件。提交時間與行銷活動 ID 也會存入使用者個人檔案。
notificationidleadtypeqg_inapp_toggled
qg_inapp_toggled使用者展開或收合浮動式或標記式 App 內訊息時記錄此事件。創意設計模組的 App 內訊息不支援此事件。
notificationidstateqg_inweb_clicked
qg_inweb_clicked使用者點擊網頁內訊息中的行動呼籲時記錄此事件。
notificationidcalltoactiontextqg_inweb_closed
qg_inweb_closed使用者關閉網頁內訊息時記錄此事件。
notificationidqg_inweb_displayed
qg_inweb_displayed網頁內訊息顯示給使用者時記錄此事件。網頁內訊息即網站上的彈出式視窗或橫幅。
notificationidqg_inweb_lead_gen
qg_inweb_lead_gen使用者提交網頁內潛在顧客開發訊息或創意設計模組訊息中的表單時記錄此事件。提交的欄位與提交詳細資訊也會存入使用者個人檔案。
notificationidleadtypeleadsubmitidleadkeysqg_line_click
qg_line_click使用者從 LINE 行銷活動訊息中的連結開啟網站或 App 時記錄此事件,系統以連結中的 _lnchid 和 _lnuid 參數辨識。同時也會為行銷活動記錄 notification_clicked 事件,並將使用者的 LINE Channel ID 與 LINE UID 存入個人檔案。
urlutm_sourceutm_mediumutm_campaignutm_termutm_contentutm_idutm_aa_crtv_idqg_notification_dismissed
qg_notification_dismissed使用者點擊輪播或滑塊推播上的關閉按鈕時記錄此事件。只適用於 Android。
notificationidactionidqg_rich_push_opened
qg_rich_push_opened使用者展開多媒體推播通知(輪播或滑塊)以檢視內容時記錄此事件。只適用於 iOS。
notificationidrecommendation_clicked
recommendation_clicked使用者在 App 中點擊 Appier 推薦情境推薦的商品時,請呼叫 SDK 的 logRecommendationClicked 方法記錄此事件。在網站上,以及創意設計模組 App 內訊息中的推薦結果,SDK 會自動記錄。不會歸因到行銷活動。
scenario_id必填model_id必填recommendation_id必填product_id必填事件記錄範例
QGSdk.getSharedInstance().logRecommendationClicked(withScenarioId: "SCENARIO-ID-123",
withModelId: "12345",
withProductId: "SKU-10023",
withRecommendationId: "73c01528-8a61-4181-a185-974d8e19286f")QG.getInstance(context).logRecommendationClicked(
"SCENARIO-ID-123",
"12345",
"SKU-10023",
"73c01528-8a61-4181-a185-974d8e19286f"
)recommendation_impression
recommendation_impressionAppier 推薦情境回傳要顯示給使用者的商品,或針對不顯示推薦的實驗組回傳空結果時記錄此事件。不會歸因到行銷活動。
scenario_idmodel_idrecommendation_idregistration_completed
registration_completed使用者完成帳號註冊時,請記錄此事件。
user_id事件記錄範例
appier('event', 'registration_completed', {
user_id: 'member_10023'
});var properties: [String: Any] = [:]
properties["user_id"] = "member_10023"
QGSdk.getSharedInstance().logEvent("registration_completed",
withParameters: properties)try {
val properties = JSONObject()
properties.put("user_id", "member_10023")
QG.getInstance(context).logEvent("registration_completed", properties)
} catch (e: JSONException) {
// 處理例外狀況
}registration_initiated
registration_initiated使用者開始註冊帳號時,請記錄此事件。
事件記錄範例
appier('event', 'registration_initiated');QGSdk.getSharedInstance().logEvent("registration_initiated")QG.getInstance(context).logEvent("registration_initiated")remove_tag
remove_tag使用者的標籤被移除時,BotBonnie 會產生此事件。使用者剩餘的標籤也會存入 bb_tag_ids 與 bb_tag_names 使用者屬性。
bb_tag_idsbb_tag_namessearched
searched使用者在網站或 App 上搜尋時,請記錄此事件。
searched_keywordsearched_keywordsuser_id事件記錄範例
appier('event', 'searched', {
searched_keyword: 'running shoes',
searched_keywords: 'running shoes,socks',
user_id: 'member_10023'
});var properties: [String: Any] = [:]
properties["searched_keyword"] = "running shoes"
properties["searched_keywords"] = "running shoes,socks"
properties["user_id"] = "member_10023"
QGSdk.getSharedInstance().logEvent("searched",
withParameters: properties)try {
val properties = JSONObject()
properties.put("searched_keyword", "running shoes")
properties.put("searched_keywords", "running shoes,socks")
properties.put("user_id", "member_10023")
QG.getInstance(context).logEvent("searched", properties)
} catch (e: JSONException) {
// 處理例外狀況
}send
send使用者傳送文字、圖片、貼圖等訊息給聊天機器人時,BotBonnie 會產生此事件。
typestory_mention
story_mention使用者在 Instagram 等社群媒體的限時動態中提及您的帳號時,BotBonnie 會產生此事件。
storysource)與 ID(id)。
subscribed_to_webpush
subscribed_to_webpush網站的網頁推播通知權限變更為「granted」時記錄此事件,例如使用者在瀏覽器提示視窗中點擊「允許」。Web SDK 會在使用者回應提示視窗時,以及每次載入頁面時檢查權限,因此在瀏覽器設定中所做的變更,會在使用者下次造訪時記錄。
unfollow
unfollow使用者取消追蹤官方帳號時,BotBonnie 會產生此事件。
unsubscribed_to_webpush
unsubscribed_to_webpush網站的網頁推播通知權限變更為「denied」時記錄此事件,例如使用者在瀏覽器提示視窗中點擊「封鎖」,或在瀏覽器設定中封鎖通知。權限重設為預設狀態(再次詢問)時不會記錄。
url_click
url_click使用者點擊聊天機器人訊息中的連結時,BotBonnie 會產生此事件。
valuevisited
visited使用者當天第一次載入網站頁面時記錄此事件,每天最多記錄一次。
utm_sourceutm_mediumutm_campaignutm_termutm_contentutm_idutm_aa_crtv_idutm_aa_crtv_id)。
已停用的事件
這些事件已停止使用。若使用者的 App 或網站仍是舊版 SDK,資料中仍可能出現這些事件,但 Appier 的功能不會用到。
aiq_cs_load_started
aiq_cs_load_started創意設計模組 App 內訊息開始載入內容時記錄此事件。只適用於 iOS。
notificationidgiosg_interaction_idtypeaiq_web_personalization_impression
aiq_web_personalization_impression網頁個人化行銷活動將網站內容替換為個人化內容時記錄此事件。
campaign_iddrip_notification_shown
drip_notification_shown使用者刪除接續推播行銷活動的上一則通知後,佇列中的接續推播顯示時記錄此事件。只適用於 Android。
inapp_param_missing
inapp_param_missingApp 內行銷活動的觸發條件設有參數條件,但觸發的事件沒有參數,行銷活動因此無法比對時,記錄此事件。只適用於 Android。
missing_endpoint
missing_endpointApp 呼叫推薦 API,但 App 未設定推薦端點時記錄此事件。只適用於 iOS。
endpointapiqg_exception
qg_exceptionAndroid SDK 發生內部錯誤時記錄此事件,例如通知工作無法啟動、通知音效下載失敗,或行銷活動資源載入失敗。
msgcausenetworktypefilenamedensityAIRIS 系統事件屬性
AIRIS 會自動將這些屬性加到每個追蹤的事件,因此各事件卡片中不再重複列出。資料型態依 AIRIS 中的顯示名稱列出。
~d~i~ois_first~c~n~a~p~q~r~s~z~u@time~tcampaign_nameutm_campaign。campaign_sourceutm_source。campaign_mediumutm_medium。campaign_contentutm_content。campaign_termutm_term。campaign_idutm_id。Updated about 10 hours ago
