开放接口(管理端)
简介
为支持各类业务场景,将问卷相关的接口进行开放。第三方可通过接口的形式查询问卷内容(题目&选项)、回收统计、指定的答卷数据。
1. 接口调用方式
2. 签名算法
3. 问卷内容接口
4. 回收概况接口
5. 数据统计接口
6. 答题数据详情接口
7. 常见问题
1. 接口调用方式
国内环境
【cl5/北极星方式】
旧cl5: mod_id: 65080257 cmd_id: 65536
北极星: `65080257:65536`
【通用方式】
{host}为survey.imur.tencent.com
海外环境
【通用方式】{host}为www.outweisurvey.com
2. 签名算法
2.1 签名算法V1版本(不推荐)
开放接口采用参数+密钥的方式生成接口签名sign,密钥由管理端进行配置,每份问卷可配置独立的密钥,保证数据安全性;密钥需在问卷编辑页选择【设置】-> 【API调用】中配置。
注意:签名会对timestamp进行校验,生成超过10分钟的sign视为无效,需要重新生成。
2.1.1 算法流程
提供必要参数(详情需要根据每个接口要求的参数),使用kv数据结构;
添加问卷ID参数 sid 到kv数据结构;
添加当前时间戳参数timestamp到kv数据结构;
添加appSecret作为签名密钥字段到kv数据结构;
对key进行按ascii升序排序;
遍历排序后的kv数据结构,把所有元素,按照“key1value1key2value2”的模式拼接成字符串;
对拼接的数据库进行md5摘要,即可得sign签名;
添加sign作为签名字段到kv数据结构;
将kv数据结构转换成http的query请求参数;
带上query请求参数调用登录态传递接口。
【注】appSecret即查询密钥,在问卷的“设置”页配置。配置方法详见API调用配置
2.1.2 代码示例
2.2 签名算法V2 版本(推荐)
2.2.1 算法流程
提供指定参数:sid(问卷 ID)、timestamp(当前毫秒时间戳)、algorithm_version(签名算法版本,使用 "v2"),并且使用kv数据结构;
对key进行按ascii升序排序;
遍历排序后的kv数据结构,把所有元素,按照“key1value1key2value2”的模式拼接成字符串;
对拼接的数据库进行md5摘要,即可得sign签名;
添加sign作为签名字段到kv数据结构;
添加appSecret作为签名密钥字段到kv数据结构;
将kv数据结构转换成http的query/body 的请求参数;
带上请求参数调用登录态传递接口。
2.2.2 代码示例
3. 问卷内容接口
API接口采用RESTful方式实现,在接口地址中出现的sid为问卷的ID,具体的接口不再说明。
3.1 获取问卷详情
获取问卷详情数据。
接口地址
参数说明
详见“返回数据”
返回数据
题型(type)有效值说明
type
题型
radio
单选题
checkbox
多选题
select
下拉题
subjective
主观题
range
量表题
matrixRadio
矩阵单选题
matrixCheckbox
矩阵多选题
matrixRange
矩阵量表题
cascade
联动题
attachment
附件上传题
sort
排序题
weight
权重分配题
heatmap'
热力图题
bipolar
文本拖拽题
dragAndDrop
两级题
maxDiff
MaxDiff
conjoint
联合分析
4 回收概况接口
4.1 回收数据概述
获取问卷的答题量、浏览量、答题平均时长。
接口地址
参数说明
无。
返回数据
4.2 答题时长中位数
获取问卷用户答题时长的中位数。
接口地址
参数说明
无。
返回数据
4.3 答题时长分布
获取问卷答题时长在时间上的分布情况。
接口地址
参数说明
无。
返回数据
4.3 答题回收趋势
获取问卷用户答题每日答题回收数据量趋势。
接口地址
参数说明
无。
返回数据
5 数据统计接口
5.1 各题型统计结果
获取问卷各个题型的数据统计。当前接口返回的数据相对比较精简,没有问卷的内容,在使用时要配合获取问卷详情来使用。下面的接口返回示例会说明每个ID对应的题目类型。
注意当前联动题仅支持统计数。主观题使用主观题或选项填空题列表接口获得。
接口地址
参数说明
无。
返回数据
5.2 主观题或选项填空答案列表
获取主观题/选项填空题列表,支持分页。
接口地址
参数说明
使用GET请求方式传参。
参数
是否必须
数据类型
限制长度
说明
blank_id
是
string
4
如果是主观题则为questionid;如果是选项中的填空题,由question_id与option_id组成,格式:{qid}{oid}
page
否
int
页码,起码为1,默认为1
page_size
否
int
页数,默认为10
返回数据{
6 答题数据详情接口
6.1 答题数据列表(批量查询)
获取用户答题数据列表,支持分页。
接口地址
参数
是否必须
数据类型
说明
query
否
object
es筛选条件
page
否
int
页码,起码为1,默认为1
page_size
否
int
页数,默认为10
返回数据
page、page_size未传参的情况下,默认最多仅返回1*10条答题数据。
6.2 获取答题数据详情(单条查询)
根据回调返回的aid,请求获取指定一条答题数据。
接口地址
返回数据
6.3 滚动获取答题数据列表
滚动获取用户答题数据列表,可以通过 `scroll_id` 获取检索大量的结果
接口地址
scroll_id
string
列表中的id字段(一般传入最后一个元素的 _id),可为空,为空时获取最早批的数据
limit
int
获取的条数,可为空,最大500
返回数据
6.4 获取id的哈希表
获取问卷下所有id对应的文本和序号
接口地址
返回数据
7. 常见问题
最后更新于