---
description: 方舟4.3.4版本中新增API
---
# 转化漏斗
## 1. 接口地址
> 【POST】 /uba/api/funnels/analyze
## 2. 请求参数示例
接口请求参数,更多参数说明参照 查询API 中的 [通用参数](./#2-tong-yong-can-shu) 说明。
```java
{
// 【必填】转换步骤,这里总共三步,表示 启动->浏览页面->关闭三个事件的转化情况
"steps":[
{
"expression":"event.$startup",
"filter":null
},
{
"expression":"event.$pageview",
"filter":null
},
{
"expression":"event.$end",
"filter":null
}
],
//【必填】用户分群
"crowds":[
"$ALL"
],
//【必填】 时间范围-开始时间
"fromDate":"2019-06-17",
//【必填】 时间范围-结束时间
"toDate":"2019-06-18",
//抽样 这里表示全量
"samplingFactor":1,
//按照第几个步骤的事件属性查看 -1表示任意步骤事件 不按维度查看可不传
"byStepIndex":-1,
//按XX维度查看,只支持单个维度,不传表示不按维度细分
"byField":{
"expression":"event.$Anything.$platform",
"buckets":null
},
//转化周日 和convertTimeUnit一起使用 这里表示 转化周期七天
"convertTime":7,
"convertTimeUnit":"DAY",
// 针对于所有步骤事件的过滤条件,非必填
"filter":{
"conditions":[
{
"expression":"event.$Anything.$platform",
"function":"EQ",
"params":[
"JS",
"Android"
]
}
],
"relation":"and"
},
//使用缓存 这里表示 使用 缓存
"useCache":true,
"limit":50,
}
```
>[info]**特殊说明:**
1、参数在示例中未标注必填的表示选填。
2、请求参数可以通过方舟产品生成,具体参照 [接口请求参数获取](./#3-jie-kou-qing-qiu-can-shu-kuai-jie-huo-qu)。
3、细分维度只支持单维度查看,不支持分群对比。
**认证参数**:接口必传token和appKey两个参数,详情见[项目接口认证](../README.md)。
### 2.1 特殊参数说明
> **convertTime:**转化周期,只能输入正整数,和 **convertTimeUnit **一起使用。
>
> **convertTimeUnit**:转化周期单位,目前支持 DAY,HOUR,MINUTE 三种时间单位。
## 3. 返回结果示例
```java
{
//返回的日期集合,集合中的第一个值 $ALL 表示 总体的转化情况
"dateList":[
"$ALL",
"2019/06/17 00:00:00",
"2019/06/18 00:00:00"
],
//按平台查看
"byField":"event.$Anything.$platform",
//返回的各个平台集合,集合中的第一个值-1表示 总体的转化情况
"byValues":[
"-1",
"JS"
],
//步骤
"stepEvents":[
"event.$startup",
"event.$pageview",
"event.$end"
],
//rows,各个维度具体的值,结果行数和byValues一致,根据下标取对应值
"rows":[
{
//总体转化
"byValue":"-1",
//每个步骤的用户转化数,结果行数和stepEvents一致,根据下标取对应值
"stepsDetail":[
{
"expression":"event.$startup",
//步骤下对应每日的用户数,结果行数和日期范围dateList一致,根据下标取对应值
"convertedUser":[
50, // 6.17-6.18总体启用事件的用户数为50个
33, // 6.17号触发启用事件的用户数为33个
24 // 6.18号触发启用事件的用户数为24个
]
},
{
"expression":"event.$pageview",
"convertedUser":[
50,
33,
24
]
},
{
"expression":"event.$end",
"convertedUser":[
0,
0,
0
]
}
],
//步骤之间的转化中位数,结果行数比步骤数(stepEvents)少1
"medianConvertedTime":[
//第一步到第二步
{
"stepsExpress":"$startup~$pageview",
//结果行数和日期范围dateList一致,根据下标取对应值
"median":[
13, // 总体第一步到第二步转化时间中位数为13s
13, // 6.17号第一步到第二步转化时间中位数为13s
18 // 6.18号第一步到第二步转化时间中位数为18s
]
},
//第二步到第三步
{
"stepsExpress":"$pageview~$end",
"median":null
}
]
},
{
"byValue":"JS",
"stepsDetail":[
{
"expression":"event.$startup",
"convertedUser":[
50,
33,
24
]
},
{
"expression":"event.$pageview",
"convertedUser":[
50,
33,
24
]
},
{
"expression":"event.$end",
"convertedUser":[
0,
0,
0
]
}
],
"medianConvertedTime":[
{
"stepsExpress":"$startup~$pageview",
"median":[
13,
13,
18
]
},
{
"stepsExpress":"$pageview~$end",
"median":null
}
]
}
],
"reportUpdateTime":"2019-07-30 09:59:06"
}
```
### 3.1 相关计算备注
漏斗结果只返回了基础的用户数,相关转化率和完成率可根据各步骤用户数来完成计算。
> **转换率**:和上一步行为的用户数对比
>
> **完成率**:和第一步行为的用户数对比
>
> **转化时间中位数**:第N步到第N+1步转化时间中位数,单位为秒
## 4. 接口调用示例
```java
curl -H "Content-Type:application/json" -H "token:4113c9cad1c301113783f433e254888c" -H "appKey:31abd9593e9983ec" -X POST --data '{
"steps":[
{
"expression":"event.$startup"
},
{
"expression":"event.$pageview"
},
{
"expression":"event.$end"
}
],
"crowds":[
"$ALL"
],
"fromDate":"2019-06-17",
"toDate":"2019-06-18",
"byStepIndex":-1,
"byField":{
"expression":"event.$Anything.$platform"
},
"convertTime":7,
"convertTimeUnit":"DAY",
"filter":{
"conditions":[
{
"expression":"event.$Anything.$platform",
"function":"EQ",
"params":[
"JS",
"Android"
]
}
],
"relation":"AND"
},
"samplingFactor":1,
"limit":50
}' http://127.0.0.1:4005/uba/api/funnels/analyze
```
- 产品简介
- 快速上手
- 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 许可
- 产品试用及采购
- 参与贡献