跳至内容

KoboToolbox节点#

使用KoboToolbox节点自动化KoboToolbox中的工作,并将KoboToolbox与其他应用程序集成。n8n内置支持广泛的KoboToolbox功能,包括创建、更新、删除和获取文件、表单、钩子和提交记录。

本页面列出了KoboToolbox节点支持的操作列表,并提供更多资源的链接。

Credentials

请参考KoboToolbox凭证获取设置认证的指导。

操作#

  • File
    • 创建
    • 删除
    • 获取
    • 获取多个
  • Form
    • 获取
    • Get Many
      • 重新部署
  • Hook
    • 获取
    • 获取多个
    • 日志
    • 全部重试
    • 重试一次
  • Submission
    • 删除
    • 获取
    • 获取多个
    • 获取验证状态
    • 更新验证状态

模板和示例#

浏览KoboToolbox集成模板,或搜索所有模板

选项#

查询选项#

查询提交操作支持以下查询选项:

  • In the main section of the Parameters panel:
    • Start 控制查询的起始索引偏移量(用于API分页逻辑)。
    • Limit 设置返回记录的最大数量。请注意,无论您提供什么值,API始终限制返回30,000条记录。
  • In the Query Options section, you can activate the following parameters:
    • 查询(Query) 允许您以MongoDB的JSON查询格式指定过滤条件。例如:{"status": "success", "_submission_time": {"$lt": "2021-11-01T01:02:03"}} 查询所有status字段值为success且提交时间早于2021年11月1日01:02:03的记录。
    • Fields 允许您指定想要获取的字段列表,以使响应更轻量。
    • 排序允许您以MongoDB JSON格式提供排序条件列表。例如,{"status": 1, "_submission_time": -1}指定了按状态升序,然后按提交时间降序的排序方式。

有关这些选项的更多详情,请参阅Formhub API文档

提交选项#

所有返回表单提交数据的操作都提供调整响应的选项。这些选项包括:

  • 下载选项允许您下载与每个特定表单提交相关联的任何附件,例如图片和视频。您还可以选择命名模式以及要下载的文件大小(如果可用 - 通常针对图像)。
  • 格式化选项会执行一些重新格式化操作,具体描述请参阅关于重新格式化

关于重新格式化#

KoboToolbox提交数据的默认JSON格式有时难以处理,因为它不具备模式感知能力,所有字段都以字符串形式返回。

该节点提供了一个轻量级的预设格式化逻辑,通过Reformat?参数启用,适用于所有返回表单提交的操作:包括提交查询、获取以及附件下载操作。

启用后,重新格式化:

  • 将JSON按照表单的分组重新组织为多层级的层次结构。默认情况下,问题分组层次通过字段名中的/字符体现,例如Group1/Question1。启用重新格式化后,n8n会将其重组为Group1.Question1格式,即嵌套的JSON对象。
  • 将字段重命名以去除_(许多下游系统不支持此符号)。
  • 将所有地理空间字段(点、线和区域问题类型)解析为其标准的GeoJSON等效格式。
  • 将所有匹配多选掩码通配符掩码的字段拆分为数组。由于多选字段以空格分隔的字符串形式显示,无法通过算法推测,因此必须提供字段命名掩码。掩码格式应为逗号分隔的列表。列表支持*通配符。
  • 将所有匹配数字掩码通配符掩码的字段转换为JSON浮点数。

以下是一个详细的JSON示例:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
  "_id": 471987,
  "formhub/uuid": "189436bb09a54957bfcc798e338b54d6",
  "start": "2021-12-05T16:13:38.527+02:00",
  "end": "2021-12-05T16:15:33.407+02:00",
  "Field_Details/Field_Name": "Test Fields",
  "Field_Details/Field_Location": "-1.932914 30.078211 1421 165",
  "Field_Details/Field_Shape": "-1.932914 30.078211 1421 165;-1.933011 30.078085 0 0;-1.933257 30.078004 0 0;-1.933338 30.078197 0 0;-1.933107 30.078299 0 0;-1.932914 30.078211 1421 165",
  "Field_Details/Crops_Grown": "maize beans avocado",
  "Field_Details/Field_Size_sqm": "2300",
  "__version__": "veGcULpqP6JNFKRJbbMvMs",
  "meta/instanceID": "uuid:2356cbbe-c1fd-414d-85c8-84f33e92618a",
  "_xform_id_string": "ajXVJpBkTD5tB4Nu9QXpgm",
  "_uuid": "2356cbbe-c1fd-414d-85c8-84f33e92618a",
  "_attachments": [],
  "_status": "submitted_via_web",
  "_geolocation": [
    -1.932914,
    30.078211
  ],
  "_submission_time": "2021-12-05T14:15:44",
  "_tags": [],
  "_notes": [],
  "_validation_status": {},
  "_submitted_by": null
}

启用重新格式化功能,并为多选和数字格式设置适当的掩码(例如,分别为Crops_**_sqm),n8n会将其解析为:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
{
  "id": 471987,
  "formhub": {
    "uuid": "189436bb09a54957bfcc798e338b54d6"
  },
  "start": "2021-12-05T16:13:38.527+02:00",
  "end": "2021-12-05T16:15:33.407+02:00",
  "Field_Details": {
    "Field_Name": "Test Fields",
    "Field_Location": {
      "lat": -1.932914,
      "lon": 30.078211
    },
    "Field_Shape": {
      "type": "polygon",
      "coordinates": [
        {
          "lat": -1.932914,
          "lon": 30.078211
        },
        {
          "lat": -1.933011,
          "lon": 30.078085
        },
        {
          "lat": -1.933257,
          "lon": 30.078004
        },
        {
          "lat": -1.933338,
          "lon": 30.078197
        },
        {
          "lat": -1.933107,
          "lon": 30.078299
        },
        {
          "lat": -1.932914,
          "lon": 30.078211
        }
      ]
    },
    "Crops_Grown": [
      "maize",
      "beans",
      "avocado"
    ],
    "Field_Size_sqm": 2300
  },
  "version": "veGcULpqP6JNFKRJbbMvMs",
  "meta": {
    "instanceID": "uuid:2356cbbe-c1fd-414d-85c8-84f33e92618a"
  },
  "xform_id_string": "ajXVJpBkTD5tB4Nu9QXpgm",
  "uuid": "2356cbbe-c1fd-414d-85c8-84f33e92618a",
  "attachments": [],
  "status": "submitted_via_web",
  "geolocation": {
    "lat": -1.932914,
    "lon": 30.078211
  },
  "submission_time": "2021-12-05T14:15:44",
  "tags": [],
  "notes": [],
  "validation_status": {},
  "submitted_by": null
}

如果操作不受支持该怎么办#

如果该节点不支持您想要执行的操作,您可以使用HTTP请求节点调用服务的API。

您可以在HTTP请求节点中使用为此服务创建的凭据:

  1. 在HTTP请求节点中,选择身份验证 > 预定义凭证类型
  2. 选择您想要连接的服务。
  3. 选择您的凭证。

更多信息请参考自定义API操作

优云智算