事件跟踪接口说明
概述
该接口用于跟踪用户交互事件并将数据存储到 ClickHouse 数据库中。支持记录各种类型的事件,并可包含与链接、用户、团队、项目等相关的详细信息。
接口信息
- URL:
/api/events/track
- 方法:
POST
- Content-Type:
application/json
请求参数
必填字段
| 参数 |
类型 |
描述 |
event_type |
string |
事件类型,如 'click', 'view', 'conversion' |
核心事件字段
| 参数 |
类型 |
必填 |
描述 |
event_id |
string |
否 |
事件唯一标识符,不提供时自动生成UUID |
event_time |
string/Date |
否 |
事件发生时间,格式为ISO日期字符串,默认为当前时间 |
event_attributes |
object/string |
否 |
事件相关的其他属性,可以是JSON对象或JSON字符串 |
链接信息
| 参数 |
类型 |
必填 |
描述 |
link_id |
string |
否 |
短链接的唯一ID |
link_slug |
string |
否 |
短链接的slug部分 |
link_label |
string |
否 |
短链接的显示名称 |
link_title |
string |
否 |
短链接的标题 |
link_original_url |
string |
否 |
原始目标URL |
link_attributes |
object/string |
否 |
链接相关的额外属性 |
link_created_at |
string/Date |
否 |
链接创建时间 |
link_expires_at |
string/Date |
否 |
链接过期时间 |
link_tags |
array/string |
否 |
链接标签,可以是数组或JSON字符串 |
用户信息
| 参数 |
类型 |
必填 |
描述 |
user_id |
string |
否 |
用户ID |
user_name |
string |
否 |
用户名称 |
user_email |
string |
否 |
用户邮箱 |
user_attributes |
object/string |
否 |
用户相关的其他属性 |
团队和项目信息
| 参数 |
类型 |
必填 |
描述 |
team_id |
string |
否 |
团队ID |
team_name |
string |
否 |
团队名称 |
team_attributes |
object/string |
否 |
团队相关的其他属性 |
project_id |
string |
否 |
项目ID |
project_name |
string |
否 |
项目名称 |
project_attributes |
object/string |
否 |
项目相关的其他属性 |
二维码信息
| 参数 |
类型 |
必填 |
描述 |
qr_code_id |
string |
否 |
二维码ID |
qr_code_name |
string |
否 |
二维码名称 |
qr_code_attributes |
object/string |
否 |
二维码相关的其他属性 |
访问者信息
| 参数 |
类型 |
必填 |
描述 |
visitor_id |
string |
否 |
访问者唯一标识符,不提供时自动生成 |
session_id |
string |
否 |
会话ID,不提供时自动生成 |
ip_address |
string |
否 |
访问者IP地址,默认从请求头获取 |
country |
string |
否 |
访问者所在国家 |
city |
string |
否 |
访问者所在城市 |
device_type |
string |
否 |
设备类型 (如 desktop, mobile, tablet) |
browser |
string |
否 |
浏览器名称 |
os |
string |
否 |
操作系统 |
user_agent |
string |
否 |
用户代理字符串,默认从请求头获取 |
引荐来源信息
| 参数 |
类型 |
必填 |
描述 |
referrer |
string |
否 |
引荐URL,默认从请求头获取 |
utm_source |
string |
否 |
UTM来源参数 |
utm_medium |
string |
否 |
UTM媒介参数 |
utm_campaign |
string |
否 |
UTM活动参数 |
utm_term |
string |
否 |
UTM术语参数 |
utm_content |
string |
否 |
UTM内容参数 |
交互信息
| 参数 |
类型 |
必填 |
描述 |
time_spent_sec |
number |
否 |
用户在页面上停留的时间(秒),默认0 |
is_bounce |
boolean |
否 |
是否是跳出(只访问一个页面),默认true |
is_qr_scan |
boolean |
否 |
是否来自二维码扫描,默认false |
conversion_type |
string |
否 |
转化类型 |
conversion_value |
number |
否 |
转化价值,默认0 |
响应格式
成功响应 (201 Created)
错误响应
缺少必填字段 (400 Bad Request)
服务器错误 (500 Internal Server Error)
使用示例
基本事件跟踪请求
详细事件跟踪请求
注意事项
- 所有对象类型的字段(如
event_attributes)可以作为对象或预先格式化的JSON字符串传递
- 如果不提供
event_id、visitor_id 或 session_id,系统将自动生成
- 时间戳字段接受ISO格式的日期字符串,并会被转换为ClickHouse兼容的格式