新增信息采集
更新时间:2026-07-16 23:19:19
接口描述
1、创建一个新的信息采集配置(表单),可用于报名、登记、福袋领奖等场景收集观众信息
2、字段与管理后台信息采集配置保持一致
3、请求体参数不参与签名,签名仅使用URL参数(appId、timestamp)
4、接口支持https协议
接口URL
http://api.polyv.net/live/v4/user/info-collection/form/create
请求方式
POST
接口约束
1、接口同时支持HTTP 、HTTPS ,建议使用HTTPS 确保接口安全,接口调用有频率限制,详细请查看
2、请设置请求头 contentType:application/json
请求参数描述
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| appId | true | String | 账号appId【详见获取密钥】 |
| timestamp | true | Long | 当前13位毫秒级时间戳,3分钟内有效 |
| sign | true | String | 签名,为32位大写的MD5值,生成签名的appSecret密钥作为通信数据安全的关键信息,严禁保存在客户端直接使用,所有API都必须通过客户自己服务器中转调用POLYV服务器获取响应数据【详见签名生成规则】 |
请求体参数描述
请求体为JSON对象,字段如下:
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| formName | true | String | 信息采集名称,最长100字 |
| privacyForceCheckEnabled | false | String | 是否强制勾选隐私协议 Y:是 N:否(默认) |
| fields | false | Array | 采集字段定义列表 【详见fields字段说明】 |
| privacyList | false | Array | 隐私声明列表,最多5个 【详见privacyList字段说明】 |
fields字段说明
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| fieldType | true | String | 字段类型 mobile:手机号 name:姓名 radio:单选 checkbox:多选 textarea:问答 email:邮箱 text:文本框 number:纯数字文本框 area:地域 upload:上传图片 tips:提示 privacy:隐私声明 |
| fieldName | false | String | 字段名称,最长100字 |
| rank | true | Integer | 排序号,从小到大排列 |
| required | false | String | 是否必填 Y:必填 N:非必填 |
| options | false | String | 选项值,单选/多选类型使用 |
| placeholder | false | String | 占位提示文案,最长255字 |
| smsCheckEnabled | false | String | 是否开启短信验证(手机号类型) Y:开启 N:关闭 |
| areaCodeEnabled | false | String | 是否开启区号(手机号类型) Y:开启 N:关闭 |
| chatNicknameEnabled | false | String | 是否同步为聊天室昵称 Y:开启 N:关闭 |
| uploadMaxCount | false | Integer | 最大上传图片数量,仅upload类型使用,取值1/2/3 |
fieldKey 新建时无需传入,由服务端自动生成;编辑时须原样回传。
privacyList字段说明
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| rank | true | Integer | 排序号 |
| title | true | String | 标题,最长200字 |
| content | false | String | 内容 |
| linkUrl | false | String | 链接地址,最长500字 |
示例
http://api.polyv.net/live/v4/user/info-collection/form/create?appId=xxx&sign=xxx×tamp=xxx
请求体参数:
{
"formName": "问卷调研",
"privacyForceCheckEnabled": "N",
"fields": [
{
"fieldType": "name",
"fieldName": "姓名",
"rank": 1,
"required": "Y",
"placeholder": "请输入姓名"
},
{
"fieldType": "mobile",
"fieldName": "手机号",
"rank": 2,
"required": "Y",
"smsCheckEnabled": "N",
"areaCodeEnabled": "N"
}
],
"privacyList": []
}
响应参数描述
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | Integer | 响应状态码,200为成功返回,非200为失败【详见全局错误说明】 |
| status | String | 响应状态文本信息 |
| message | String | 响应描述信息,当code为400或者500的时候,辅助描述错误原因 |
| data | Long | 成功返回新建的表单ID |
Java请求示例
快速接入基础代码请下载相关依赖源码, 点击下载源代码 ,下载后加入到自己的源码工程中即可。测试用例中的HttpUtil.java 和 LiveSignUtil.java 都包含在下载文件中。
强烈建议您使用直播Java SDK完成API的功能对接,直播Java SDK 对API调用逻辑、异常处理、数据签名、HTTP请求线程池进行了统一封装和优化。
private static final Logger log = LoggerFactory.getLogger(LiveInteractionTest.class);
/**
* 新增信息采集
* @throws IOException
*/
@Test
public void testCreateInfoCollection() throws IOException, NoSuchAlgorithmException {
//公共参数,填写自己的实际参数
String appId=super.appId;
String appSecret=super.appSecret;
String timestamp=String.valueOf(System.currentTimeMillis());
//业务参数
String url = "http://api.polyv.net/live/v4/user/info-collection/form/create";
//签名仅使用URL参数,请求体不参与签名
Map<String,String> requestMap = new HashMap<>();
requestMap.put("appId", appId);
requestMap.put("timestamp",timestamp);
requestMap.put("sign",LiveSignUtil.getSign(requestMap, appSecret));
String json = "{\"formName\":\"问卷调研\",\"privacyForceCheckEnabled\":\"N\",\"fields\":[{\"fieldType\":\"name\",\"fieldName\":\"姓名\",\"rank\":1,\"required\":\"Y\"},{\"fieldType\":\"mobile\",\"fieldName\":\"手机号\",\"rank\":2,\"required\":\"Y\"}],\"privacyList\":[]}";
url = HttpUtil.appendUrl(url, requestMap);
String response = HttpUtil.postJsonBody(url, json, null);
log.info("测试新增信息采集接口返回值:{}",response);
//do somethings
}
响应示例
系统全局错误说明详见全局错误说明
成功示例
{
"code": 200,
"status": "success",
"message": "",
"data": 52
}
异常示例
{
"code": 400,
"status": "error",
"message": "invalid signature.",
"data": ""
}
