事件收集上报

约 696 字大约 2 分钟

引力引擎支持使用 API 方式直接上报用户事件,您可以配合引力引擎客户端 SDK 实现混合上报。

在开始对接此接口前,建议您先阅读数据规则章节,在熟悉 引力引擎 的数据格式与数据规则后,再阅读本指南进行对接。

接口信息

请求地址

https://backend.gravity-engine.com/event_center/api/v1/event/collect/open in new window

请求方法

POST

query 参数

参数名称必填参数类型
access_tokenY当前 app 的 access_token

body 参数

参数名
必填类型描述
client_idYstring用户唯一 ID
client_ipNstring如果有值,则引力引擎会取该ip作为$ip字段(强制替换)
client_uaNstring如果有值,则引力引擎会取该ua作为$ua字段(强制替换)
event_listYEventObject[]事件列表,具体参见 【EventObject】

EventObject

参数名
必填类型描述
typeYstring事件类型,可选值:trackprofile,分别对应用户埋点事件、用户属性事件
eventYstring具体事件英文名称请参考引力后台-设置-元事件
timeYnumber事件发生毫秒级时间戳,只接收相对服务器时间在前 10 天至后 1 小时之内的数据,超过范围的数据将不会入库
time_freeNbool默认为false、当为true的时候会取消对time参数的校验(一般用于历史数据导入)
propertiesYstruct事件属性,具体需要参考 引力引擎后台--设置--元数据 中的内容

请求示例

 curl 'https://backend.gravity-engine.com/event_center/api/v1/event/collect/?access_token=<ACCESS_TOKEN>' \
 -H 'Content-Type: application/json' \
 -d '{
    "client_id": "user_client_id",
    "client_ip": "114.138.179.81",
    "event_list": [
        {
            "type": "track",
            "event": "$MPLaunch",
            "time": 1669860000000,
            "time_free": true,
            "properties": {
                "$is_first_time":false,
                "$scene":"1069",
                "$screen_width":360,
                "$screen_height":800,
                "$os":"android",
                "$manufacturer":"realme",
                "$city":"南京市",
                "$trace_id":"c1a953d236db6591661543419e436677"
			}
        },
        {
            "type": "profile",
            "event": "profile_set_once",
            "time": 1669824000000,
            "time_free": true,
            "properties": {
                "$signup_time": "2022-12-01 00:00:00"
            }
        }
    ]
}'

响应结果

如果收到返回参数,code: 0,则代表数据传输成功。

Debug 模式

在请求头加上Turbo-Debug-Mode 等于 1,即开启 debug 模式,随后在 事件流open in new window中查看实时上报的数据数,辅助您判断数据接入是否正常。

警告

Debug 模式仅适用于上传少量测试数据时开启,请不要在生产环境中开启 Debug 模式,否则可能会造成遗漏事件数据!

请求示例:

 curl 'https://backend.gravity-engine.com/event_center/api/v1/event/collect/?access_token=<ACCESS_TOKEN>' \
 -H 'Content-Type: application/json' \
 -H 'Turbo-Debug-Mode: 1' \
 -d '{
    "client_id": "user_client_id",
    "event_list": [
        {
            "type": "track",
            "event": "$MPLaunch",
            "time": 1669860000000,
            "properties": {
                "$is_first_time":false,
                "$scene":"1069",
                "$screen_width":360,
                "$screen_height":800,
                "$os":"android",
                "$manufacturer":"realme",
                "$city":"南京市",
                "$trace_id":"c1a953d236db6591661543419e436677"
			}
        },
        {
            "type": "profile",
            "event": "profile_set_once",
            "time": 1669824000000,
            "properties": {
                "$signup_time": "2022-12-01 00:00:00"
            }
        }
    ]
}'