1. 获取用户属性
获取用户上报成功并且在计划中的用户属性,含系统预置但页面上隐藏的用户属性。
1.1 接口地址
【GET】 /uba/api/meta/userProperties
1.2 请求参数示例
无。
认证参数:接口必传token和appKey两个参数,详情见 项目接口认证。
1.3 返回结果示例
[
{
//用户属性ID,唯一
"id":"xwho",
//用户属性名称,用于页面展示
"name":"用户ID",
//是否可用 1为启用 0为禁用 (通过方舟系统可以控制用户属性的可用性)
"enable":1,
//是否可见 1为可见 0为不可见(用于方舟系统,系统预置但不用于分析的属性在页面上被隐藏了)
"visible":1,
//【4.5.0中新增】是否预置属性 1为预置属性 0为自定义属性
"preset": 1,
//【4.5.0中新增】数据类型,有string、boolean、number、datetime、array<string>五种
"dataType": "string",
//【4.5.0中新增】是否有字典 1为有字典 0为未上传字典
"dict": 0
},
{
"id": "company",
"name": "所在公司",
"enable": 1,
//页面不可见
"visible": 0,
//自定义属性
"preset": 0,
"dataType": "string",
//有字典
"dict": 1
}
]
1.4 接口调用示例
curl -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" http://127.0.0.1:4005/uba/api/meta/userProperties
2. 获取元事件列表
获取在埋点方案中并且已经回数的事件列表,含被禁用事件。
2.1 接口地址
【GET】 /uba/api/meta/event
2.2 请求参数示例
//【选填 5.1.0086版本新增】通过urlPath传参
type=event&enable=1
认证参数:接口必传token和appKey两个参数,详情见 项目接口认证。
2.2.1 入参说明
2.3 返回结果示例
[
{
//事件ID,唯一
"id":"$startup",
//事件名称,用于页面展示
"name":"启动",
//是否可用 1为启用 0为禁用 (通过方舟系统可以控制事件的可用性)
"enable":1,
//备注,描述事件的作用
"remark":"APP启动 / 打开网站",
//【4.5.0中新增】是否预置事件 1为预置事件 0为自定义事件
"preset": 1,
//【4.6中新增】回数平台,多个值之间逗号隔开
"platform": "Android,iOS,JS",
//【5.1.0086中新增】事件类型
"type":"event",
//【5.1.0086中新增】如果是虚拟事件,则会返回虚拟事件的创建规则
"content":null
},
{
"id":"$end",
"name":"关闭",
//禁用
"enable":0,
"remark":"APP关闭 / 关闭网页",
"preset": 1,
"platform": "Android,iOS",
"type":"event",
"content":null
},
{
"id": "login",
"name": null,
"enable": 1,
"remark": null,
//自定义
"preset": 0,
"platform": "Android",
//虚拟事件
"type":"virtual",
//虚拟事件的创建规则
"content":{}
}
]
如果是虚拟事件,则会返回虚拟事件的创建规则,格式如下:
{
"events": [
{
//包含的事件
"expression": "event.$startup",
//事件需要满足的条件
"filter": {
"conditions": [
{
"expression": "event.$startup.$platform",
"function": "EQ",
"params": [
"JS"
]
}
],
"relation": "AND"
}
},
{
"expression": "event.$pageview"
}
],
"relation": "OR"
}
2.4 接口调用示例
curl -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" http://127.0.0.1:4005/uba/api/meta/event
3. 获取事件属性
获取事件的属性列表,包含事件自定义属性和通用属性两种,自定义属性需要自己埋点上报,通用属性由方舟系统自动采集。
3.1 接口地址
【GET】 /uba/api/meta/eventProperties
3.2 请求参数示例
//【必填】通过urlPath传参
eventId=?
认证参数:接口必传token和appKey两个参数,详情见 项目接口认证。
3.3 返回结果示例
[
{
//事件属性ID
"id":"$is_first_time",
//事件属性名称,用于页面展示
"name":null,
//是否可用 1为启用 0为禁用 (通过方舟系统可以控制事件属性的可用性)
"enable":1,
//是否通用属性,1为通用属性 0为事件定义属性
"global":0,
//【4.5.0中新增】是否事件预置属性 1为预置属性 0为自定义属性
"preset": 1,
//【4.5.0中新增】数据类型,有string、boolean、number、datetime、array<string>五种
"dataType": "boolean",
//【4.5.0中新增】是否有字典 1为有字典 0为未上传字典
"dict": 0
},
{
"id":"$platform",
"name":"平台",
//属性可用
"enable":1,
//通用属性(通用属性表示每个事件都有这个属性)
"global":1,
"preset":1,
"dataType": "string",
"dict": 0
}
]
global: 0为事件自定义属性,1为通用属性。
3.4 接口调用示例
curl -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" http://127.0.0.1:4005/uba/api/meta/eventProperties?eventId=%24startup
4. 创建虚拟属性
上报的元事件无法直接满足分析需求,组要组合使用事件时,可以使用虚拟事件。虚拟事件可以组合多个元事件,每个元事件下也可以设置过滤条件,事件之间关系为或。在 5.1.0221 版本中新增。
4.1 接口地址
【POST】 /uba/api/meta/event/virtual
4.2 请求参数示例
{
//【必填】虚拟事件ID,唯一,并且不能和元事件ID重名,由字母、数字和下划线组成,不能以数字开头,总长度不超过100个字符
"id":"vactive",
//虚拟事件名称,长度不能超过 50
"name":"活跃用户",
//虚拟事件说明,长度不能超过 100
"remark":"使用过APP或者浏览过web网站的用户",
//【必填】虚拟事件包含的元事件
"events":[
{
//包含的元事件 不含条件
"expression":"event.$startup"
},
{
//包含的元事件 含条件
"expression":"event.$pageview",
//事件需要满足的条件(平台=JS的页面浏览事件)
"filter":{
"conditions":[
{
//条件表达式
"expression":"event.$pageview.$platform",
"function":"EQ",
"params":[
"JS"
]
}
],
"relation":"AND"
}
}
]
}
认证参数:接口必传token和appKey两个参数,详情见 项目接口认证。
4.3 返回结果示例
4.4 接口调用示例
curl -H "Content-Type:application/json" -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" -X POST --data '{
"id":"$vactive",
"name":"活跃用户",
"remark":"使用过APP或者浏览过web网站的用户",
"events":[
{
"expression":"event.$startup"
},
{
"expression":"event.$pageview"
}
]
}' http://127.0.0.1:4005/uba/api/meta/event/virtual
5. 修改虚拟属性
支持修改虚拟事件的名称、描述、规则内容。在 5.1.0221 版本中新增。
虚拟事件修改规则是只能修改自己创建的虚拟事件,如果API不带loginUser参数只能修改通过API创建并且未带loginUser的虚拟事件。如果带loginUser参数,就能修改对应用户创建的虚拟事件。
5.1 接口地址
【PUT】 /uba/api/meta/event/virtual
5.2 请求参数示例
{
//【必填】虚拟事件ID,因为事件ID不允许修改,所以ID会作为修改条件
"id":"vactive",
//虚拟事件名称,长度不能超过 50,如果不需要修改名称,可以不传此列
"name":"活跃用户",
//虚拟事件说明,长度不能超过 100,如果不需要修改描述,可以不传此列
"remark":"使用过APP或者浏览过web网站的用户",
//虚拟事件包含的元事件,如果规则不需要发生改变,可以不传
"events":[
{
//包含的元事件 不含条件
"expression":"event.$startup"
},
{
//包含的元事件 含条件
"expression":"event.$pageview"
}
]
}
认证参数:接口必传token和appKey两个参数,详情见 项目接口认证。
5.3 返回结果示例
5.4 接口调用示例
curl -H "Content-Type:application/json" -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" -X PUT --data '{
"id":"$vactive",
"name":"活跃用户"
}' http://127.0.0.1:4005/uba/api/meta/event/virtual