开放接口(管理端)

简介

为支持各类业务场景,将问卷相关的接口进行开放。第三方可通过接口的形式查询问卷内容(题目&选项)、回收统计、指定的答卷数据。

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 算法流程

  1. 提供必要参数(详情需要根据每个接口要求的参数),使用kv数据结构;

  2. 添加问卷ID参数 sid 到kv数据结构;

  3. 添加当前时间戳参数timestamp到kv数据结构;

  4. 添加appSecret作为签名密钥字段到kv数据结构;

  5. 对key进行按ascii升序排序;

  6. 遍历排序后的kv数据结构,把所有元素,按照“key1value1key2value2”的模式拼接成字符串;

  7. 对拼接的数据库进行md5摘要,即可得sign签名;

  8. 添加sign作为签名字段到kv数据结构;

  9. 将kv数据结构转换成http的query请求参数;

  10. 带上query请求参数调用登录态传递接口。

circle-info

【注】appSecret即查询密钥,在问卷的“设置”页配置。配置方法详见API调用配置

2.1.2 代码示例

2.2 签名算法V2 版本(推荐)

2.2.1 算法流程

  1. 提供指定参数:sid(问卷 ID)、timestamp(当前毫秒时间戳)、algorithm_version(签名算法版本,使用 "v2"),并且使用kv数据结构;

  2. 对key进行按ascii升序排序;

  3. 遍历排序后的kv数据结构,把所有元素,按照“key1value1key2value2”的模式拼接成字符串;

  4. 对拼接的数据库进行md5摘要,即可得sign签名;

  5. 添加sign作为签名字段到kv数据结构;

  6. 添加appSecret作为签名密钥字段到kv数据结构;

  7. 将kv数据结构转换成http的query/body 的请求参数;

  8. 带上请求参数调用登录态传递接口。

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

返回数据

点击查看样例

circle-info

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. 常见问题

最后更新于