数据API用于对表单数据进行维护,目前仅支持「增加数据」、「获取数据」,不支持修改、删除数据。
金数据个人版和企业版目前支持增加的数据字段有:
字段名称 | API Code |
单选框 | single_choice |
复选框 | multiple_choice |
下拉框 | drop_down |
日期 | date |
数字 | number |
电话 | phone |
多行文本 | paragraph_text |
单行文本 | single_line_text |
所有套餐都是20000次/小时。
注:只有「表单创建者」才能使用数据API相关功能,「表单协作者」身份下使用相关功能会出现以下提示
{
"error_description": "form cannot be found"
}
首先确保您有访问API的能力。获得API Key&Secret后,即可通过API提交数据。
需要注意的是,无论是get还是post请求,Authorization的类型都是Basic Auth, Username 和 Password分别对应API Key和API Secret. Headers 也需要传两个参数,Accept和Content-Type,值都是 application/json。如下图:
POST https://jinshuju.net/api/v1/forms/1F34Qv
Accept: application/json
Content-Type: application/json
数据提交请求应该是一个满足表单定义的JSON格式。
需要注意的是,从2015年3月25日起,金数据的单、多选,图片单、多选,下拉框,两级下拉框以及矩阵单选,其选项有name
与value
两个部分组成,请您在构建JSON数据时,以value
提交,一个例子如下:
{
"field_9": "hPWR",
"field_10": "CIoI"
}
如果不满足校验条件(必填/重复等),金数据会返回400,并给出提示如下:
{
"error": "bad_request",
"error_description": "{\"field_9\":[\"您对我们的服务满意么? 必须填\"],\"field_10\":[\"您最喜欢的部分是 必须填\"]}"
}
除去新增数据外,数据API还可以通过以下请求获取表单已收集的数据:
https://jinshuju.net/api/v1/forms/xxx(表单token)/entries
如果已收集数据超出50条时,会在底部next
这里出现数值。反之则为null。
超出50条数据事例:
"total": 160,
"count": 50,
"data": [
{
··············
}
],
"next": 51
未超出50条数据事例:
"total": 10,
"count": 10,
"data": [
{
··············
}
],
"next": null
获取50条后的数据使用以下请求:
https://jinshuju.net/api/v1/forms/xxx(表单token)/entries?next=xx(next值)
如果信息正确,系统会返回201作为响应,并返回整个表单的数据(JSON格式)给调用者。