我正在使用 kobo REST API,我可以从表单中获取结构信息并通过 API 提交数据,但是当我尝试通过 POST 服务将数据发送到表单时,kobo 返回以下消息:“您的例如,数据尚未提交。”。
有没有办法使用其 API 将 POST 数据发送到 kobotoolbox 表单?
我尝试使用以下 POST 请求发送数据:
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \
"name": "Foo" \
}' 'https://kf.kobotoolbox.org/assets/{form_id}/submissions/'
Where {form_id}
是我在 kobotoolbox 中的表单的 id
得到的回应是:
{
"detail": "Your data for instance None has been already submitted."
}
要提交数据,您需要 POST 到https://[kobocat url]/api/v1/submissions
, e.g. https://kc.kobotoolbox.org/api/v1/submissions
。您尝试的端点用于检索提交的数据。
这将起作用(对于包含first_name
and last_name
问题:
curl -X POST \
https://kc.kobotoolbox.org/api/v1/submissions.json \
-H 'Authorization: Token <yourAPItoken>' \
-H 'Content-Type: application/json' \
-d ' {
"id": "<kpi asset ID>",
"submission":
{
"last_name": "Suresh",
"first_name":"Ameen",
"meta": {
"instanceID": "uuid:8992c3c2-3418-4ba9-a8e2-b00e03ea36b6"
}
}
} '
<kpi asset ID>
在本例中指的是在 kobocat 中创建的唯一表单 ID。这个IDshould与 kpi 资产 ID 相同,只要您在常规界面中上传/创建表单并部署即可。
您可以通过访问找到该 IDhttps://kf.kobotoolbox.org/assets/<kpi asset ID>/
。就我而言,我得到这个:
{
"url": "https://kf.kobotoolbox.org/assets/aCNoKPdCX8gqcu4bHrHkUL/",
...
"deployment__identifier": "https://kc.kobotoolbox.org/<username>/forms/aCNoKPdCX8gqcu4bHrHkUL",
...
"uid": "aCNoKPdCX8gqcu4bHrHkUL",
]
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)