# 埋点管理 API
调用方法请参见Open API文档中的调用方法描述。
# 一、埋点方案
建议先阅读TA使用手册了解埋点相关功能:埋点方案与数据验收
# 查询埋点方案
接口URL
/open/track-query?token=xxx&projectId=30
请求方式
GET
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
| projectId |  30 |  Integer |  是 |  项目ID | 
成功响应示例
{
    "data": {
        "commonEventProps": [{
            "name": "#device_id",
            "displayName": "设备id",
            "type": "string",
            "desc": ""
        }],
        "createTime": "2021-10-12 11:47:31",
        "eventProps": [
            {
                "createTime": "2021-10-12 11:47:30",
                "creator": "TG-38045d57-403c-424c-a6a6-b12f6a8943bd",
                "desc": "",
                "displayName": "原因",
                "lastUpdateAuth": "TG-38045d57-403c-424c-a6a6-b12f6a8943bd",
                "lastUpdateTime": "2021-10-12 11:47:30",
                "name": "reason",
                "type": "string"
            }
        ],
        "events": [
            {
                "createTime": "2021-10-12 11:47:30",
                "creator": "TG-38045d57-403c-424c-a6a6-b12f6a8943bd",
                "displayName": "",
                "eventDesc": "参加活动3",
                "eventName": "activity_attend",
                "eventTag": "111,aaa",
                "lastUpdateAuth": "TG-38045d57-403c-424c-a6a6-b12f6a8943bd",
                "lastUpdateTime": "2021-10-12 13:01:10",
                "props": [
                    "#city"
                ]
            }
        ],
        "projectId": 377,
        "userProps": [
            {
                "createTime": "2021-10-12 11:47:30",
                "creator": "TG-38045d57-403c-424c-a6a6-b12f6a8943bd",
                "desc": "",
                "displayName": "余额",
                "lastUpdateAuth": "TG-38045d57-403c-424c-a6a6-b12f6a8943bd",
                "lastUpdateTime": "2021-10-12 11:47:30",
                "name": "accountbalance",
                "type": "number",
                "updateTypeName": ""
            }
        ]
    },
    "return_code": 0,
    "return_message": "success"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| data |  - |  Object |  返回数据 | 
| ∟ commonEventProps | - |  List |  公共事件属性信息 | 
| ∟ name | #device_id |  String |  属性名称 | 
| ∟ displayName | 设备id |  String |  属性显示名 | 
| ∟ type | string |  String |  类型 | 
| ∟ desc | String |  描述 | |
| ∟ eventProps | - |  List |  事件属性列表 | 
| ∟ createTime | 2021-10-12 11:47:30 |  Date |  创建时间 | 
| ∟ creator | TG-38045d57-403c-424c-a6a6-b12f6a8943bd |  String |  创建人 | 
| ∟ desc | - |  String |  描述 | 
| ∟ displayName | 注册名 |  String |  展示名称 | 
| ∟ lastUpdateAuth | TG-38045d57-403c-424c-a6a6-b12f6a8943bd |  String |  最后更新人 | 
| ∟ lastUpdateTime | 2021-10-12 11:47:30 |  Date |  最后更新时间 | 
| ∟ name | register_name |  String |  名称 | 
| ∟ type | string |  String |  类型 | 
| ∟ events | - |  List |  事件列表 | 
| ∟ createTime | 2021-10-12 11:47:30 |  Date |  创建时间 | 
| ∟ creator | TG-38045d57-403c-424c-a6a6-b12f6a8943bd |  String |  创建人 | 
| ∟ displayName | - |  String |  展示名称 | 
| ∟ eventDesc | 参加活动3 |  String |  描述 | 
| ∟ eventName | activity_attend |  String |  名称 | 
| ∟ eventTag | 111,aaa |  String |  标签 | 
| ∟ lastUpdateAuth | TG-38045d57-403c-424c-a6a6-b12f6a8943bd |  String |  最后更新人 | 
| ∟ lastUpdateTime | 2021-10-12 13:01:10 |  Date |  最后更新事件 | 
| ∟ props | ["#city"] |  List |  事件属性列表 | 
| ∟ projectId | 377 |  Integer |  项目ID | 
| ∟ userProps | - |  String |  用户属性列表 | 
| ∟ createTime | 2021-10-12 11:47:30 |  Date |  创建时间 | 
| ∟ creator | TG-38045d57-403c-424c-a6a6-b12f6a8943bd |  String |  创建人 | 
| ∟ desc | - |  String |  描述 | 
| ∟ displayName | 余额 |  String |  展示名称 | 
| ∟ lastUpdateAuth | TG-38045d57-403c-424c-a6a6-b12f6a8943bd |  String |  最后更新人 | 
| ∟ lastUpdateTime | 2021-10-12 11:47:30 |  Date |  最后更新时间 | 
| ∟ name | accountbalance |  String |  名称 | 
| ∟ type | number |  String |  类型 | 
| ∟ updateTypeName | - |  String |  |
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
错误响应示例
{
    "return_code": -3004,
    "return_message": "无效项目"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -3004 |  Integer |  返回码 | 
| return_message |  无效项目 |  String |  返回信息 | 
# 导出埋点方案
注意
下载excel版埋点方案,若该项目下没有埋点方案则报错
接口URL
/open/track-export?token=xxx&projectId=2
请求方式
GET
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
| projectId |  2 |  Integer |  是 |  项目ID | 
成功响应示例
导出文件格式为xlsx文件,包含“接入必知”,“#用户ID体系”,“#事件数据”,“#公共事件属性”,“#用户数据”,“数据类型设计原则”,“公共事件属性设置方式”,“多端接入注意点”,“多用户id体系的埋点建议”等sheet页数据,如下图:

错误响应示例
{
    "return_code": -1023,
    "return_message": "目标对象已不存在"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -1023 |  Integer |  返回码 | 
| return_message |  目标对象已不存在 |  String |  返回信息 | 
# 元数据导出埋点方案
接口URL
/open/meta-export-track?token=xxx&projectId=2
请求方式
GET
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
| projectId |  2 |  Integer |  是 |  项目ID | 
成功响应示例
导出文件格式为xlsx文件,包含“接入必知”,“#用户ID体系”,“#事件数据”,“#公共事件属性”,“#用户数据”,“数据类型设计原则”,“公共事件属性设置方式”,“多端接入注意点”,“多用户id体系的埋点建议”等sheet页数据,如下图:

错误响应示例
{
    "return_code": -3004,
    "return_message": "无效项目"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -3004 |  Integer |  返回码 | 
| return_message |  无效项目 |  String |  返回信息 | 
# 埋点校验
接口URL
/open/track-check?token=xxx
请求方式
POST
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
请求Body参数
{
    "projectId": 0, 
    "checkScope": {
       "startTime": "2021-01-01 10:00",
       "endTime": "2021-02-01 10:00",
       "checkDataTypes": ["event_data", "user_data"],
       "checkEvents": ["event1", "event2"],
       "eventFilter": {
       },
       "userFilter": {
         "tableType":"user",
         "columnName": "#os",
         "comparator": "equal",
         "ftv": [
           "ios"
         ]
       }
    },
    "resultScope": {
        "eventResults": ["unreported_event", "unplanned_event"],
        "userResults": ["unreported_user_prop", "unplanned_user_prop"]
    }
}
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| checkScope |  - |  Object |  是 |  校验范围 | 
| ∟ checkDataTypes | event_data |  List |  否 |  校验数据类型,event_data事件数据,user_data用户数据,缺省值为两者都校验 | 
| ∟ checkEvents | string |  List |  否 |  事件校验范围,null则代表校验全事件 | 
| ∟ endTime | string |  Date |  否 |  校验时间段结束时间,缺省值为当前服务器时间 | 
| ∟ eventFilter | - |  List |  否 |  事件筛选条件,只能筛选元数据事件属性(不能使用虚拟属性,用户标签) | 
| ∟ filterType | SIMPLE |  String |  否 |  筛选器, COMPOUND:复合类型 SIMPLE:简单类型  | 
| ∟ filts | - |  List |  否 |  筛选值列表 | 
| ∟ filterType | SIMPLE |  String |  否 |  筛选器, COMPOUND:复合类型 SIMPLE:简单类型  | 
| ∟ relation | and |  String |  否 |  筛选逻辑关系 | 
| ∟ hasEmptyCheck | false |  Boolean |  否 |  是否认定空字符串为空值率 | 
| ∟ propNullValueThreshold | 0 |  Integer |  否 |  属性空值率阈值 | 
| ∟ startTime | string |  Date |  否 |  校验时间段开始时间,缺省值为埋点方案上传时间 | 
| ∟ userFilter | - |  List |  否 |  用户筛选条件,只能筛选元数据用户属性(不能使用虚拟属性,用户标签) | 
| ∟ filterType | SIMPLE |  String |  否 |  筛选器, COMPOUND:复合类型 SIMPLE:简单类型  | 
| ∟ filts | - |  List |  否 |  筛选值列表 | 
| ∟ filterType | SIMPLE |  String |  否 |  筛选器, COMPOUND:复合类型 SIMPLE:简单类型  | 
| ∟ relation | and |  String |  否 |  筛选逻辑关系 | 
| projectId |  0 |  Integer |  是 |  项目ID | 
| resultScope |  - |  Object |  否 |  选择结果范围(null则默认为全部选择) | 
| ∟ eventResults | ["unreported_event"] |  List |  否 |  事件结果范围,可选值有 unreported_event:在埋点方案中,实际无上报的事件 unplanned_event:不在埋点方案中,实际有上报的事件 unplanned_event_prop:事件在埋点方案中,但事件属性不在埋点方案中的事件属性(预置属性不做校验) missing_event_prop:在埋点方案中,但实际上报数据中缺失该属性 type_error_event_prop:事件属性类型与实际上报的属性类型不一致  | 
| ∟ userResults | ["missing_user_prop"] |  List |  否 |  用户结果范围,可选值有 unreported_user_prop:在埋点方案中,实际无上报的用户属性 unplanned_user_prop:不在埋点方案中,实际有上报的用户属性 type_error_user_prop:用户属性类型与实际上报的属性类型不一致  | 
成功响应示例
{
    "data": "d611d456-e74d-47e3-b078-370b79a134af",
    "return_code": 0,
    "return_message": "success"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| data |  d611d456-e74d-47e3-b078-370b79a134af |  Object |  校验结果查询key | 
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
错误响应示例
{
    "return_code": -1008,
    "return_message": "projectId 不能为null"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -1008 |  Integer |  返回码 | 
| return_message |  projectId 不能为null |  String |  返回信息 | 
# 埋点校验结果查询
接口URL
/open/track-check-result-query?token=xxx&key=d611d456-e74d-47e3-b078-370b79a134af
请求方式
GET
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
| key |  d611d456-e74d-47e3-b078-370b79a134af |  String |  是 |  校验结果key | 
成功响应示例
{
    "return_code": 0,
    "return_message": "success",
    "data": {
        "projectId": 100,
        "checkTime": "2021-04-23 14:00:00",
        "checkScope": {},
        "checkResultType": "result_fail",
        "eventResults": [
            {
                "name": "event1",
                "resultType": "success",
                "details": [
                    {
                        "sample": [
                            ""
                        ]
                    }
                ],
                "propNullRates": [
                    {
                        "propName": "property1",
                        "displayName": "displayName1",
                        "hasRequired": true,
                        "propNullRate": 60
                    }
                ]
            },
            {
                "name": "event2",
                "displayName": "事件2",
                "resultType": "fail",
                "details": [
                    {
                        "propName": "property1",
                        "errorType": "type_error_prop",
                        "reportType": "string",
                        "planType": "number",
                        "sample": [
                            ""
                        ]
                    },
                    {
                        "propName": "property2",
                        "errorType": "unreported"
                    }
                ],
                "propNullRates": [
                    {
                        "propName": "property1",
                        "displayName": "displayName1",
                        "hasRequired": true,
                        "propNullRate": 60
                    }
                ]
            }
        ],
        "userResult": {
            "userSamples": [
                {}
            ],
            "userPropDetails": [
                {
                    "name": "property1",
                    "displayName": "用户属性1",
                    "resultType": "success",
                    "propNullRate": 10
                }
            ]
        }
    }
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
| data |  - |  Object |  校验结果查询key | 
| ∟ projectId | 100 |  Integer |  项目ID | 
| ∟ checkTime | 2021-04-23 14:00:00 |  Date |  校验时间 | 
| ∟ checkScope | {} |  Object |  校验条件范围,接口/track-check请求体内容 | 
| ∟ checkResultType | result_fail |  String |  checkResultType:校验结果类型,有4种取值 result_success:校验成功(上报数据与埋点方案完全一致),可通过eventResults和userResult字段查看数据详情 result_fail:校验失败(上报数据与埋点方案有偏差),可通过eventResults和userResult字段查看数据详情 checking:校验中,请耐心等待,稍后查询 check_fail:计算失败,可通过checkError字段查看失败原因  | 
| ∟ eventResults | - |  List |  事件数据校验结果 | 
| ∟ name | event1 |  String |  事件名称 | 
| ∟ resultType | success |  String |  事件校验结果类型,有4种类型, success:检验成功 fail:校验失败 unreported:未上报 unplanned:计划外埋点  | 
| ∟ details | - |  List |  明细数据集合 | 
| ∟ sample | {} |  Object |  抽样示例,事件校验结果类型为未上报时没有抽样示例 | 
| ∟ propNullRates | - |  List |  属性空值率 | 
| ∟ propName | property1 |  String |  事件属性名 | 
| ∟ displayName | displayName1 |  String |  事件属性显示名 | 
| ∟ hasRequired | true |  Boolean |  是否必需项 | 
| ∟ propNullRate | 60 |  Integer |  空值率 | 
| ∟ userResult | - |  Object |  用户数据校验结果 | 
| ∟ userSamples | {} |  List |  用户抽样示例10条 | 
| ∟ userPropDetails | - |  List |  用户属性详情 | 
| ∟ name | property1 |  String |  用户属性名称 | 
| ∟ displayName | 用户属性1 |  String |  用户属性显示名 | 
| ∟ resultType | success |  String |  用户属性校验结果类型,有4种类型 success:检验成功 fail:校验失败 unreported:未上报 unplanned_user_prop:计划外用户属性  | 
| ∟ propNullRate | 10 |  Integer |  属性空值率 | 
错误响应示例
{
    "return_code": -1008,
    "return_message": "key not exist"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -1008 |  Integer |  返回码 | 
| return_message |  key not exist |  String |  返回信息 | 
# 保存埋点项excel
注意
file参数上传excel模版
接口URL
/open/track-excel-save?token=xxx&projectId=0
请求方式
POST
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
| projectId |  0 |  Integer |  是 |  项目ID | 
成功响应示例
{
    "return_code": 0,
    "return_message": "success"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
错误响应示例
{
    "return_code": 0,
    "return_message": "success",
    "data": ""
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
| data |  Object |  返回数据 | 
# 新增埋点项
注意
如果埋点方案中有请求的事件名或属性名,则报错返回
举例:新增已有事件的事件属性(新增register_name事件属性,同时绑定在已有事件register中)
接口URL
/open/track-insert?token=xxx
请求方式
POST
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
请求Body参数
{
    "projectId": 100,
    "events": [
        {
            "eventName": "register",
            "displayName": "注册事件",
            "hasAutoCollect": false,
            "dataOrigin": "ios",
            "eventDesc": "注册事件是指用户注册游戏触发的事件",
            "eventTag": "",
            "props": [
                "register_name"
            ]
        }
    ],
    "eventProps": [
        {
            "name": "register_name",
            "displayName": "注册名",
            "type": "string",
            "hasRequired": true,
            "desc": ""
        }
    ],
    "userProps": [
        {
            "name": "user_name",
            "displayName": "用户名称",
            "type": "string",
            "updateType": "user_set",
            "desc": "",
            "propTag": ""
        }
    ],
    "commonEventProps": [
        {
            "name": "#device_id",
            "displayName": "设备id",
            "type": "string",
            "hasRequired": true,
            "desc": ""
        }
    ]
}
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| projectId |  100 |  Integer |  是 |  项目ID | 
| events |  - |  List |  否 |  事件信息 | 
| ∟ eventName | register |  String |  是 |  事件名 | 
| ∟ displayName | 注册事件 |  String |  是 |  事件显示名 | 
| ∟ hasAutoCollect | false |  Boolean |  否 |  是否自动采集,默认值为否 | 
| ∟ dataOrigin | ios |  String |  否 |  数据来源,数据来源为原始数据中的#lib字段值, 若无#lib,来源为其他 | 
| ∟ eventDesc | 注册事件是指用户注册游戏触发的事件 |  String |  否 |  事件说明 | 
| ∟ eventTag | String |  否 |  事件标签 | |
| ∟ props | register_name |  List |  否 |  事件属性列表,事件属性名集合 | 
| eventProps |  - |  List |  否 |  事件属性信息 | 
| ∟ name | register_name |  String |  是 |  事件属性名,必填项 | 
| ∟ displayName | 注册名 |  String |  是 |  事件属性显示名 | 
| ∟ type | string |  String |  是 |  事件属性类型,有string, number, datetime, bool, array 五种类型 | 
| ∟ hasRequired | true |  Boolean |  否 |  默认值为true | 
| ∟ desc | String |  否 |  事件属性说明 | |
| userProps |  - |  List |  否 |  用户属性信息 | 
| ∟ name | user_name |  String |  是 |  用户属性名 | 
| ∟ displayName | 用户名称 |  String |  是 |  用户属性显示名 | 
| ∟ type | string |  String |  是 |  用户属性类型,有string, number, datetime, bool, array 五种类型 | 
| ∟ updateType | user_set |  String |  否 |  用户属性更新方式,有user_setOnce, user_set, user_add三种类型 | 
| ∟ desc | String |  否 |  用户属性说明 | |
| ∟ propTag | String |  否 |  用户属性标签 | |
| commonEventProps |  - |  List |  否 |  公共事件属性信息 | 
| ∟ name | #device_id |  String |  是 |  事件属性名 | 
| ∟ displayName | 设备id |  String |  是 |  事件属性显示名 | 
| ∟ type | string |  String |  是 |  事件属性类型,有string, number, datetime, bool, array五种类型 | 
| ∟ hasRequired | true |  Boolean |  否 |  默认值为true | 
| ∟ desc | String |  否 |  事件属性说明 | 
成功响应示例
{
    "return_code": 0,
    "return_message": "success"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
错误响应示例
{
    "return_code": -3004,
    "return_message": "无效项目"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -3004 |  Integer |  返回码 | 
| return_message |  无效项目 |  String |  返回信息 | 
# 保存埋点项
注意
与新增埋点项接口的区别是此接口支持更新已存在的埋点属性
接口URL
/open/track-save?token=xxx
请求方式
POST
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
请求Body参数
{
    "projectId": 100,
    "events": [
        {
            "eventName": "register",
            "displayName": "注册事件",
            "hasAutoCollect": false,
            "dataOrigin": "ios",
            "eventDesc": "注册事件是指用户注册游戏触发的事件",
            "eventTag": "",
            "props": [
                "register_name"
            ]
        }
    ],
    "eventProps": [
        {
            "name": "register_name",
            "displayName": "注册名",
            "type": "string",
            "hasRequired": true,
            "desc": ""
        }
    ],
    "userProps": [
        {
            "name": "user_name",
            "displayName": "用户名称",
            "type": "string",
            "updateType": "user_set",
            "desc": "",
            "propTag": ""
        }
    ],
    "commonEventProps": [
        {
            "name": "#device_id",
            "displayName": "设备id",
            "type": "string",
            "hasRequired": true,
            "desc": ""
        }
    ]
}
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| projectId |  100 |  Integer |  是 |  项目ID | 
| events |  - |  List |  否 |  事件信息 | 
| ∟ eventName | register |  String |  是 |  事件名 | 
| ∟ displayName | 注册事件 |  String |  是 |  事件显示名 | 
| ∟ hasAutoCollect | false |  Boolean |  否 |  是否自动采集,默认值为否 | 
| ∟ dataOrigin | ios |  String |  否 |  数据来源,数据来源为原始数据中的#lib字段值, 若无#lib,来源为其他 | 
| ∟ eventDesc | 注册事件是指用户注册游戏触发的事件 |  String |  否 |  事件说明 | 
| ∟ eventTag | String |  否 |  事件标签 | |
| ∟ props | register_name |  List |  否 |  事件属性列表,事件属性名集合 | 
| eventProps |  - |  List |  否 |  事件属性信息 | 
| ∟ name | register_name |  String |  是 |  事件属性名,必填项 | 
| ∟ displayName | 注册名 |  String |  是 |  事件属性显示名 | 
| ∟ type | string |  String |  是 |  事件属性类型,有string, number, datetime, bool, array 五种类型 | 
| ∟ hasRequired | true |  Boolean |  否 |  默认值为true | 
| ∟ desc | String |  否 |  事件属性说明 | |
| userProps |  - |  List |  否 |  用户属性信息 | 
| ∟ name | user_name |  String |  是 |  用户属性名 | 
| ∟ displayName | 用户名称 |  String |  是 |  用户属性显示名 | 
| ∟ type | string |  String |  是 |  用户属性类型,有string, number, datetime, bool, array 五种类型 | 
| ∟ updateType | user_set |  String |  否 |  用户属性更新方式,有user_setOnce, user_set, user_add三种类型 | 
| ∟ desc | String |  否 |  用户属性说明 | |
| ∟ propTag | String |  否 |  用户属性标签 | |
| commonEventProps |  - |  List |  否 |  公共事件属性信息 | 
| ∟ name | #device_id |  String |  是 |  事件属性名 | 
| ∟ displayName | 设备id |  String |  是 |  事件属性显示名 | 
| ∟ type | string |  String |  是 |  事件属性类型,有string, number, datetime, bool, array五种类型 | 
| ∟ hasRequired | true |  Boolean |  否 |  默认值为true | 
| ∟ desc | String |  否 |  事件属性说明 | 
成功响应示例
{
    "return_code": 0,
    "return_message": "success"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
错误响应示例
{
    "return_code": -3004,
    "return_message": "无效项目"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -3004 |  Integer |  返回码 | 
| return_message |  无效项目 |  String |  返回信息 | 
# 编辑埋点项
注意
需要填写其他不更新字段的准确值,即会整体进行数据更新
接口URL
/open/track-update?token=xxx
请求方式
POST
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
请求Body参数
{
    "projectId": 2,
    "targetName": "buy_shopitem",
    "event": {
        "eventName": "buy_shopitem",
        "displayName": "testName",
        "eventTag": "testTag",
        "eventDesc": "12",
        "props": [
            "#app_version"
        ]
    },
    "deleteProps": [
        {    
            "displayName": "运营商",
            "hasReported": true,
            "name": "#carrier",
            "type": "string"
        }
    ],
    "eventProps": [
        {
            "displayName": "app版本",
            "hasReported": true,
            "name": "#app_version",
            "type": "string"
        }
    ],
    "userProps": [
        {
            "displayName": "金币数量卡",
            "desc": "",
            "name": "coin_num",
            "type": "string",
            "updateType": "user_set",
            "propTag": "testPropTag"
        }
    ]
}
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| projectId |  2 |  Integer |  是 |  项目ID | 
| targetName |  buy_shopitem |  String |  是 |  目标名 | 
| events |  - |  List |  - |  事件信息 | 
| ∟ eventName | buy_shopitem |  String |  是 |  事件名 | 
| ∟ displayName | testName |  String |  是 |  事件显示名 | 
| ∟ hasAutoCollect | false |  Boolean |  否 |  是否自动采集,默认值为否 | 
| ∟ dataOrigin | ios |  String |  否 |  数据来源,数据来源为原始数据中的#lib字段值, 若无#lib,来源为其他 | 
| ∟ eventDesc | 12 |  String |  否 |  事件说明 | 
| ∟ eventTag | testTag |  String |  否 |  事件标签 | 
| ∟ props | ["#app_version"] |  List |  否 |  事件属性列表,事件属性名集合 | 
| eventProps |  - |  List |  - |  事件属性信息 | 
| ∟ name | #app_version |  String |  是 |  事件属性名,必填项 | 
| ∟ displayName | app版本 |  String |  是 |  事件属性显示名 | 
| ∟ type | string |  String |  是 |  事件属性类型,有string, number, datetime, bool, array 五种类型 | 
| ∟ hasReported | true |  Boolean |  否 |  默认值为true | 
| ∟ desc | String |  否 |  事件属性说明 | |
| userProps |  - |  List |  - |  用户属性信息 | 
| ∟ name | coin_num |  String |  是 |  用户属性名 | 
| ∟ displayName | 金币数量卡 |  String |  是 |  用户属性显示名 | 
| ∟ type | string |  String |  是 |  用户属性类型,有string, number, datetime, bool, array 五种类型 | 
| ∟ updateType | user_set |  String |  否 |  用户属性更新方式,有user_setOnce, user_set, user_add三种类型 | 
| ∟ desc | String |  否 |  用户属性说明 | |
| ∟ propTag | testPropTag |  String |  否 |  用户属性标签 | 
| commonEventProps |  - |  List |  - |  公共事件属性信息 | 
| ∟ name | #device_id |  String |  是 |  事件属性名 | 
| ∟ displayName | 设备id |  String |  是 |  事件属性显示名 | 
| ∟ type | string |  String |  是 |  事件属性类型,有string, number, datetime, bool, array五种类型 | 
| ∟ hasReported | true |  Boolean |  否 |  默认值为true | 
| ∟ desc | String |  否 |  事件属性说明 | |
| deleteProps |  - |  List |  否 |  完全删除事件属性 | 
| ∟ name | #device_id |  String |  是 |  事件属性名 | 
| ∟ displayName | 运营商 |  String |  是 |  事件属性显示名 | 
| ∟ type | string |  String |  是 |  事件属性类型,有string, number, datetime, bool, array五种类型 | 
| ∟ hasReported | true |  Boolean |  否 |  默认值为true | 
| ∟ desc | String |  否 |  事件属性说明 | 
成功响应示例
{
    "return_code": 0,
    "return_message": "success"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
错误响应示例
{
    "return_code": -3004,
    "return_message": "无效项目"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -3004 |  Integer |  返回码 | 
| return_message |  无效项目 |  String |  返回信息 | 
# 上传埋点方案
注意
若该项目已存在方案则删除新建
接口URL
/open/track-upload?token=xxx
请求方式
POST
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
请求Body参数
{
    "projectId": 0, 
    "events": [
        {
            "eventName": "register", 
            "displayName": "注册事件", 
            "hasAutoCollect": false, 
            "dataOrigin": "ios", 
            "eventDesc": "注册事件是指用户注册游戏触发的事件", 
            "eventTag": "通用",
            "props": ["register_name"]
        }
    ], 
    "eventProps": [
         {
             "name": "register_name", 
             "displayName": "注册名", 
             "type": "string",
             "hasRequired": true,
             "desc": "",
         }
    ],
    "userProps": [
        {
            "name": "user_name", 
            "displayName": "用户名称", 
            "type": "string",
            "updateType": "user_set",
            "desc": "",
            "propTag": ""
        }
    ], 
    "commonEventProps": [
        {
            "name": "#device_id", 
            "displayName": "设备id", 
            "type": "string",
            "hasRequired": true,
            "desc": ""
        }
    ]
}
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| projectId |  100 |  Integer |  是 |  项目Id | 
| events |  - |  List |  否 |  事件信息 | 
| ∟ eventName | register |  String |  是 |  事件名 | 
| ∟ displayName | 注册事件 |  String |  是 |  事件显示名 | 
| ∟ hasAutoCollect | false |  Boolean |  否 |  是否自动采集,默认值为否 | 
| ∟ dataOrigin | ios |  String |  否 |  数据来源,数据来源为原始数据中的#lib字段值, 若无#lib,来源为其他 | 
| ∟ eventDesc | 注册事件是指用户注册游戏触发的事件 |  String |  否 |  事件说明 | 
| ∟ eventTag | 通用 |  String |  否 |  事件标签 | 
| ∟ props | register_name |  String |  否 |  事件属性列表,事件属性名集合 | 
| eventProps |  - |  List |  否 |  事件属性信息 | 
| ∟ name | register_name |  String |  是 |  事件属性名,必填项 | 
| ∟ displayName | 注册名 |  String |  是 |  事件属性显示名 | 
| ∟ type | string |  String |  是 |  事件属性类型,有string, number, datetime, bool, array 五种类型 | 
| ∟ hasRequired | true |  Boolean |  否 |  是否必传,默认值为true | 
| ∟ desc | String |  否 |  事件属性说明 | |
| userProps |  - |  List |  否 |  用户属性信息 | 
| ∟ name | user_name |  String |  是 |  用户属性名 | 
| ∟ displayName | 用户名称 |  String |  是 |  用户属性显示名 | 
| ∟ type | string |  String |  是 |  用户属性类型,有string, number, datetime, bool, array 五种类型 | 
| ∟ updateType | user_set |  String |  否 |  用户属性更新方式,有user_setOnce, user_set, user_add三种类型 | 
| ∟ desc | String |  否 |  用户属性说明 | |
| ∟ propTag | String |  否 |  用户属性标签 | |
| commonEventProps |  - |  List |  否 |  公共事件属性信息 | 
| ∟ name | #device_id |  String |  是 |  事件属性名 | 
| ∟ displayName | 设备id |  String |  是 |  事件属性显示名 | 
| ∟ type | string |  String |  是 |  事件属性类型,有string, number, datetime, bool, array五种类型 | 
| ∟ hasRequired | true |  Boolean |  否 |  是否必传,默认值为true | 
| ∟ desc | String |  否 |  事件属性说明 | 
成功响应示例
{
    "return_code": 0,
    "return_message": "success"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
错误响应示例
{
    "return_code": -3004,
    "return_message": "无效项目"
}
# 删除埋点方案
接口URL
/open/track-delete?token=xxx&projectId=100
请求方式
GET
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
| projectId |  100 |  Integer |  是 |  项目ID | 
成功响应示例
{
    "return_code": 0,
    "return_message": "success"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
错误响应示例
{
    "return_code": -3004,
    "return_message": "无效项目"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -3004 |  Integer |  返回码 | 
| return_message |  无效项目 |  String |  返回信息 | 
# 删除埋点项
注意
- 删除事件时,会删除整个事件和该事件与事件属性绑定关系
 - 删除事件属性时,会删除与所有事件绑定关系
 
接口URL
/open/track-delete-item?token=xxx
请求方式
POST
Content-Type
application/json
请求Query参数
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| token |  xxx |  String |  是 |  token | 
请求Body参数
{
    "projectId": 0,
    "events": [
        "login_in"
    ],
    "eventPropNames": [
        "register_name"
    ],
    "userPropNames": [
        "user_name"
    ],
    "commonEventPropNames": [
        "#device_id"
    ]
}
| 参数名 |  示例值 |  参数类型 |  是否必填 |  参数描述 | 
|---|---|---|---|---|
| projectId |  100 |  Integer |  是 |  项目ID | 
| events |  ["login_in"] |  List |  否 |  事件名列表 | 
| eventPropNames |  ["register_name"] |  List |  否 |  事件属性名列表 | 
| userPropNames |  ["user_name"] |  List |  否 |  用户属性名列表 | 
| commonEventPropNames |  ["#device_id"] |  List |  否 |  公共事件属性名列表 | 
成功响应示例
{
    "return_code": 0,
    "return_message": "success"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  0 |  Integer |  返回码 | 
| return_message |  success |  String |  返回信息 | 
错误响应示例
{
    "return_code": -3004,
    "return_message": "无效项目"
}
| 参数名 |  示例值 |  参数类型 |  参数描述 | 
|---|---|---|---|
| return_code |  -3004 |  Integer |  返回码 | 
| return_message |  无效项目 |  String |  返回信息 | 
#
← 生成SQL语句 API 元数据管理 API →
