---
> 方舟4.6.0112版本中新增。
---
# 埋点方案管理
## 1. 获取用户属性方案列表
获取系统预置、用户自定义、代码埋点的用户属性列表,包含计划内和计划外,未回数和已回数的所有用户属性。
### 1.1 接口地址
> 【GET】 /uba/api/schema/userProperties
### 1.2 请求参数示例
```
?plan=1&dataStatus=1
```
> **认证参数**:接口必传token和appKey两个参数,详情见 [项目接口认证](../#21-xiang-mu-jie-kou-ren-zheng)。
#### **1.2.1 入参说明**
| 参数名称 | 类型 | 必填 | 说明 | 枚举 |
| ---------- | ------- | -- | ---------------- | --- |
| plan | Integer | N | 计划状态:1为计划内 0为计划外 | 0/1 |
| dataStatus | Integer | N | 是否回数:1为已回数 0为未回数 | 0/1 |
### 1.3 返回结果示例
```java
[
{
//用户属性ID,唯一
"id":"xwho",
//用户属性名称,用于页面展示
"name":"用户ID",
//是否可用 1为启用 0为禁用 (通过方舟系统可以控制用户属性的可用性)
"enable":1,
//是否可见 1为可见 0为不可见(用于方舟系统,系统预置但不用于分析的属性在页面上被隐藏了)
"visible":1,
//是否预置属性 1为预置属性 0为自定义属性
"preset": 1,
//数据类型,有string、boolean、number、datetime、array<string>五种
"dataType": "string",
//计划状态:1为计划内 0为计划外
"plan": 1,
//是否回数:1为已回数 0为未回数
"dataStatus": 1,
//是否有字典 1为有字典 0为未上传字典
"dict": 0,
//是否脱敏 1为全局脱敏 0为不脱敏、展示原始值
"masking": 0
}
]
```
### 1.4 接口调用示例
```javascript
curl -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" http://127.0.0.1:4005/ark/uba/api/schema/userProperties?plan=1&dataStatus=1
```
## 2. 获取事件方案列表
获取系统预置、用户自定义、代码埋点的事件列表,包含计划内和计划外,未回数和已回数的所有事件。
### 2.1 接口地址
> 【GET】 /uba/api/schema/event
### 2.2 请求参数示例
```
?plan=1&dataStatus=1
```
> **认证参数**:接口必传token和appKey两个参数,详情见 [项目接口认证](../#21-xiang-mu-jie-kou-ren-zheng)。
#### **2.2.1 入参说明**
| 参数名称 | 类型 | 必填 | 说明 | 枚举 |
| ---------- | ------- | -- | ---------------- | --- |
| plan | Integer | N | 计划状态:1为计划内 0为计划外 | 0/1 |
| dataStatus | Integer | N | 是否回数:1为已回数 0为未回数 | 0/1 |
### 2.3 返回结果示例
```java
[
{
// 事件ID,唯一
"id": "$startup",
// 事件名称,用于页面展示
"name": "启动",
// 计划状态:1为计划内 0为计划外
"plan": 1,
// 是否回数:1为已回数 0为未回数
"dataStatus": 1,
// 是否预置事件 1为预置事件 0为自定义事件
"preset": 1,
// 是否可用 1为启用 0为禁用 (通过方舟系统可以控制事件的可用性)
"enable": 1,
// 备注
"remark": "APP启动 / 打开网站",
//回数平台
"platform": "JS"
},
{
"id": "login",
"name": "登录",
"plan": 1,
"dataStatus": 1,
"preset": 0,
"enable": 1,
"remark": "用户登录",
"platform": "JS"
}
]
```
### 2.4 接口调用示例
```java
curl -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" http://127.0.0.1:4005/ark/uba/api/schema/event?plan=1&dataStatus=1
```
## 3. 获取事件属性埋点方案
获取事件的属性列表,包含**事件自定义属性**和**通用属性**两种,自定义属性需要自己埋点上报,通用属性由方舟系统自动采集。
包含计划内和计划外,未回数和已回数的所有事件属性。
### 3.1 接口地址
> 【GET】 /uba/api/schema/eventProperties
### 3.2 请求参数示例
```
//【必填】通过urlPath传参
eventId=?&plan=1&dataStatus=1
```
> **认证参数**:接口必传token和appKey两个参数,详情见 [项目接口认证](../#1-api-jie-shao)。
#### **3.2.1 入参说明**
| 参数名称 | 类型 | 必填 | 说明 | 枚举 |
| ---------- | ------- | -- | ---------------- | --- |
| eventId | String | Y | 事件ID | |
| plan | Integer | N | 计划状态:1为计划内 0为计划外 | 0/1 |
| dataStatus | Integer | N | 是否回数:1为已回数 0为未回数 | 0/1 |
### 3.3 返回结果示例
```java
[
{
//事件属性ID
"id":"$is_first_time",
//事件属性名称,用于页面展示
"name":null,
//备注
"remark":null,
//是否可用 1为启用 0为禁用 (通过方舟系统可以控制事件属性的可用性)
"enable":1,
//是否通用属性,1为通用属性 0为事件定义属性
"global":0,
//是否事件预置属性 1为预置属性 0为自定义属性
"preset": 1,
//数据类型,有string、boolean、number、datetime、array<string>五种
"dataType": "boolean",
//计划状态:1为计划内 0为计划外
"plan": 1,
//是否回数:1为已回数 0为未回数
"dataStatus": 1,
//是否有字典 1为有字典 0为未上传字典
"dict": 0,
//是否脱敏 1为全局脱敏 0为不脱敏、展示原始值
"masking": 0
}
]
```
> **global**: 0为事件自定义属性,1为通用属性,每个事件都默认有的属性称为通用属性。
### 3.4 接口调用示例
```javascript
curl -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" http://127.0.0.1:4005/uba/api/schema/eventProperties?eventId=%24startup&plan=1&dataStatus=1
```
## 4. 新增用户属性埋点方案
管理用户属性,在客户使用方舟时,对于已经明确的用户特性,可以提前在埋点方案中添加用户属性。
添加过程中,如果用户属性 在计划外,接口会自动将用户属性加入计划内并且修改属性名称和备注。
如果用户属性已经在埋点方案中且数据类型一致,则会自动跳过,不进行任何修改。
### 4.1 接口地址
> 【POST】 /uba/api/schema/userProperties
### 4.2 请求参数示例
```java
{
//【必填】用户属性ID,规则:不能重复,由字母、数字和下划线组成,不能以数字开头,总长度不超过100个字符
"id":"userProperty",
//用户属性名称,规则:不能包含特殊字符,长度不超过50
"name":"属性展示名称1",
//【必填】用户属性数据类型
"dataType":"string",
//用户属性备注,规则:不能包含特殊字符,长度不超过100
"remark":"备注"
}
```
> **认证参数**:接口必传token和appKey两个参数,详情见 [项目接口认证](../#21-xiang-mu-jie-kou-ren-zheng)。
>
> **dataType:**属性数据类型,方舟目前支持五种数据类型,枚举值如下:
>
> * **string**:字符串;
> * **number**:数值,包含整数和小数点数据;
> * **boolean**:布尔,只包含 true/false;
> * **datetime**:日期,如yyyy-MM-dd HH:mm:ss.SSS 或yyyy-MM-dd HH:mm:ss 或yyyy-mm-dd;
> * **array\<string>**:集合,字符串集合。
### 4.3 返回结果示例
```
{"success":0}
```
### 4.4 接口调用示例
```javascript
curl -H "Content-Type:application/json" -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" -X POST --data '{
"id":"userProperty",
"name":"属性展示名称1",
"dataType":"string",
"remark":"备注"
}' http://127.0.0.1:4005/uba/api/schema/event
```
## 5. 新增事件和事件属性埋点方案
管理事件及事件属性,在客户使用方舟时,对于已经明确的行为定义,可以提前在埋点方案中添加事件和事件对应的属性。
添加过程中,如果事件或事件属性在计划外,接口会自动将事件加入到埋点方案并且修改事件和属性的展示名称和备注。
如果事件或者事件属性已经在埋点方案中,则会自动跳过,不进行任何修改。
### 5.1 接口地址
> 【POST】 /uba/api/schema/event
### 5.2 请求参数示例
```java
{
//【必填】事件ID,规则:不能重复,由字母、数字和下划线组成,不能以数字开头,总长度不超过100个字符
"id":"eventId",
//事件名称,规则:不能包含特殊字符,长度不超过50
"name":"事件展示名称",
//事件备注,规则:不能包含特殊字符,长度不超过100
"remark":"备注"
//事件属性集合
"properties":[
{
//【必填】事件属性ID,规则:不能重复,由字母、数字和下划线组成,不能以数字开头,总长度不超过100个字符
"id":"eventProperty1",
//事件属性名称,规则:不能包含特殊字符,长度不超过50
"name":"事件属性展示名称1",
//【必填】事件属性数据类型
"dataType":"string",
//事件属性备注,规则:不能包含特殊字符,长度不超过100
"remark":"备注"
},
{
"id":"eventProperty2",
"name":"事件属性展示名称2",
"dataType":"number",
"remark":"备注"
}
]
}
```
> **认证参数**:接口必传token和appKey两个参数,详情见 [项目接口认证](../#21-xiang-mu-jie-kou-ren-zheng)。
>
> **dataType:**属性数据类型,方舟目前支持五种数据类型,枚举值如下:
>
> * **string**:字符串;
> * **number**:数值,包含整数和小数点数据;
> * **boolean**:布尔,只包含 true/false;
> * **datetime**:日期,如yyyy-MM-dd HH:mm:ss.SSS 或yyyy-MM-dd HH:mm:ss 或yyyy-mm-dd;
> * **array\<string>**:集合,字符串集合。
### 5.3 返回结果示例
```
{"success":0}
```
### 5.4 接口调用示例
```javascript
curl -H "Content-Type:application/json" -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" -X POST --data '{
"id":"eventId",
"name":"事件展示名称",
"remark":"备注"
"properties":[
{
"id":"eventProperty1",
"name":"事件属性展示名称1",
"dataType":"string",
"remark":"备注"
},
{
"id":"eventProperty2",
"name":"事件属性展示名称2",
"dataType":"number",
"remark":"备注"
}
]
}' http://127.0.0.1:4005/uba/api/schema/event
```
## 6. 修改用户属性埋点方案
根据属性ID修改用户属性的展示名称、备注,在属性未回数的情况下可以修改数据类型。
### 6.1 接口地址
> 【PUT】 /uba/api/schema/userProperties?id=wechatid
### 6.2 请求参数示例
```
{
//用户属性名称,规则:不能包含特殊字符,长度不超过50【不需要修改可不传】
"name":"微信ID",
//用户属性数据类型 【不需要修改可不传】
"dataType":"string",
//用户属性备注,规则:不能包含特殊字符,长度不超过100 【不需要修改可不传】
"remark":"备注"
}
```
> **认证参数**:接口必传token和appKey两个参数,详情见 [项目接口认证](../#1-api-jie-shao)。
>
> **参数说明**:参数分为两部分,url上传用户属性ID,RequestBody中传需要修改的内容:
>
> * id:【必填】用户属性ID,【必填】通过urlPath传参;
> * RequestBody可以支持传入name,dataType,remark,需要修改哪部分内容就传哪个属性
### 6.3 返回结果示例
```
{"success":0}
```
### 6.4 接口调用示例
```javascript
curl -H "Content-Type:application/json" -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" -X PUT --data '{
"name":"微信ID"
}' http://127.0.0.1:4005/uba/api/schema/userProperties?id=wechatid
```
## 7. 修改事件埋点方案
根据事件ID修改埋点方案中事件的显示名称、备注。
### 7.1 接口地址
> 【PUT】 /uba/api/schema/event?id=submitPay
### 7.2 请求参数示例
```java
{
//事件名称,规则:不能包含特殊字符,长度不超过50【不需要修改可不传】
"name":"提交支付请求",
//事件备注,规则:不能包含特殊字符,长度不超过100 【不需要修改可不传】
"remark":"备注"
}
```
> **认证参数**:接口必传token和appKey两个参数,详情见 [项目接口认证](../#1-api-jie-shao)。
>
> **参数说明**:参数分为两部分,url上传用户属性ID,RequestBody中传需要修改的内容:
>
> * id:【必填】用户属性ID,【必填】通过urlPath传参;
> * RequestBody可以支持传入name,remark,需要修改哪部分内容就传哪个属性。
### 7.3 返回结果示例
```
{"success":0}
```
### 7.4 接口调用示例
```javascript
curl -H "Content-Type:application/json" -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" -X PUT --data '{
"name":"提交支付请求"
}' http://127.0.0.1:4005/uba/api/schema/event?id=submitPay
```
## 8. 修改事件属性埋点方案
根据事件ID和事件属性ID修改事件对应属性的展示名称、备注,在属性还未回数的情况下可以修改数据类型。
### 8.1 接口地址
> 【PUT】 /uba/api/schema/eventProperties?eventId=submitPay\&propertyId=submitTime
### 8.2 请求参数示例
```java
{
//事件属性名称,规则:不能包含特殊字符,长度不超过50【不需要修改可不传】
"name":"提交时间",
//事件属性数据类型 【不需要修改可不传】
"dataType":"datetime",
//事件属性备注,规则:不能包含特殊字符,长度不超过100 【不需要修改可不传】
"remark":"备注"
}
```
> **认证参数**:接口必传token和appKey两个参数,详情见 [项目接口认证](../#1-api-jie-shao)。
>
> **参数说明**:参数分为两部分,url上传事件ID和用户属性ID,RequestBody中传需要修改的内容:
>
> * eventId:事件ID,【必填】通过urlPath传参;
> * propertyId:属性 ID,【必填】通过urlPath传参;
> * RequestBody可以支持传入name,dataType,remark,需要修改哪部分内容就传哪个属性
### 8.3 返回结果示例
```
{"success":0}
```
### 8.4 接口调用示例
```javascript
curl -H "Content-Type:application/json" -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" -X PUT --data '{
"name":"提交时间"
}' http://127.0.0.1:4005/uba/api/schema/eventProperties?eventId=submitPay&propertyId=submitTime
```
- 产品简介
- 快速上手
- Step 1 安装部署
- Step 2 激活系统创建项目
- Step 3 开启您的分析旅程
- 1. 集成 SDK
- 2. 可视化埋点
- 3. 创建分析模型
- 附:埋点方案设计
- 附:数据分析思路
- 产品更新日志
- V5.5 新增LTV分析功能等
- V5.3 UI 升级、分布分析重构、维度表动态更新、细节优化等
- V5.2 新增归因分析、消息中心、重构埋点方案、优化看数据体验……
- V5.1.0317 体验优化& Bug修复
- V5.1 升级可视化埋点、增强权限控制……
- Part I 产品功能说明
- 名词解释
- 指标说明
- 看板
- 5.3.3 看板 UI 重构
- 分析
- 事件分析
- 渠道分析
- 渠道相关名词解释
- 来源识别规则
- 搜索引擎
- 社交媒体
- 小程序场景值
- Session 分析
- Session 规则
- 实时分析
- 留存分析
- 转化漏斗
- 智能路径
- 归因分析
- 热图分析
- Web/H5 热图
- APP 热图
- 分布分析
- 间隔分析
- 属性分析
- LTV 分析
- 多主体分析
- 自定义查询
- 用户
- 用户分群
- 用户探查
- 用户标签
- 标签体系应用概览
- 标签体系
- 标签生命周期管理
- 标签加工
- 如何自定义SQL创建标签
- 单用户档案
- 运营
- 广告跟踪
- 微信小程序渠道追踪
- 预置广告媒介和渠道
- App 推广监测(Beta版本)
- 电子邮件(即将下线)
- 短信(即将下线)
- 消息通知(即将下线)
- 项目管理
- 项目概览
- 项目角色管理
- 项目成员管理
- 数据接入管理
- 埋点方案
- 可视化埋点
- 集成SDK接入数据
- 数据验证
- 用户数据导入
- 微信小程序全埋点事件定义
- 元数据管理
- 元事件
- 虚拟事件
- 事件属性
- 用户属性
- Session 管理
- 页面组管理
- 维度表
- 服务集成配置
- 监控告警
- 智能监控
- 自定义监控
- 平台管理
- 企业概览
- 项目管理
- 成员管理
- 安全设置
- 企业设置
- 日志管理
- 帐号设置
- Part II 技术文档
- 技术接入准备工作
- 部署环境检测工具
- 数据模型
- 数据格式
- 预置事件和属性
- App预置事件/属性
- JS 预置事件/属性
- 如何准确识别用户
- 如何设计埋点方案
- 分平台上报数据 vs 跨平台打通
- SDK 指南
- Android SDK
- 快速集成
- 全埋点模块
- 消息推送模块
- Android Hybrid模式
- SDK Gradle集成方式
- 多渠道打包
- 易观小工具
- 合规相关
- iOS SDK
- 快速集成
- 全埋点介绍
- iOS Hybrid模式
- 消息推送模块
- JS SDK
- 快速集成
- JS SDK基础版
- JS SDK插件
- uni-app SDK
- 快速集成
- 打包原生APP
- 开启移动端全埋点
- uni-app SDK标准版
- 微信小程序 SDK
- 快速集成
- 微信小程序标准版
- 微信小程序插件版
- 微信小程序通用框架版
- 支付宝小程序 SDK
- 支付宝小程序标准版
- 支付宝小程序通用框架版
- 字节跳动小程序 SDK
- 字节跳动小程序标准版
- 字节跳动小程序通用框架版
- 百度小程序 SDK
- 百度小程序标准版
- 百度小程序通用框架版
- 钉钉小程序 SDK
- 钉钉小程序标准版
- 钉钉小程序通用框架版
- QQ小程序 SDK
- QQ小程序标准版
- QQ小程序通用框架版
- 快应用 SDK
- 华为WeCode小程序
- WeCode SDK 标准版
- WeCode SDK插件
- PhoneGap SDK
- mPaaS SDK
- ReactNative SDK
- Flutter SDK
- Java SDK
- Python SDK
- PHP SDK
- C++ SDK
- C# SDK
- Node JS SDK
- Lua SDK
- Golang SDK
- SDK FAQ
- identify与alias的区别
- 爬虫数据如何识别?
- 页面停留如何获取时间?
- 如果获取SDK及更新日志
- 代码埋点和无埋点有什么区别
- Web页面中发现丢失某一个事件
- 自研 SDK 注意事项
- 页面时长统计功能
- 飞书小程序 SDK
- 飞书小程序标准版
- 飞书小程序通用框架版
- Unreal Engine SDK
- 数据验证
- 客户端埋点验证
- Debug 数据验证
- 数据入库验证
- 数据导入
- 接口导入
- JAVA工具包
- 标准json文件导入
- csv格式导入
- 数据导入FAQ
- 数据导出
- JAVA工具包
- 事件数据导出
- 用户数据导出
- 直接从Kafka中消费数据
- 使用程序访问数据库
- 脚本工具
- 隐私声明
- API
- 分析API
- 事件分析
- 留存分析
- 自定义查询
- 转化漏斗
- 属性分析
- Session分析
- 渠道分析
- 分布分析
- 用户API
- 分群查询
- 用户档案
- 分群管理
- 管理API
- 权限管理
- 元数据管理
- 埋点方案管理
- 维度表管理
- 运营API
- 广告跟踪
- APP推广监测
- 平台管理API
- 项目管理
- 成员管理
- 第三方登录
- OAuth2.0登录
- LDAP登录
- GDPR 合规
- Part III 常见问题
- License 许可
- 产品试用及采购
- 参与贡献