跳转至

KoboToolbox 节点#

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

在此页面上,您将找到 KoboToolbox 节点支持的操作列表和更多资源链接。

凭证

有关设置身份验证的指导,请参阅 KoboToolbox 凭证

操作#

  • 文件
    • 创建
    • 删除
    • 获取
    • 获取多个
  • 表单
    • 获取
    • 获取多个
      • 重新部署
  • 钩子
    • 获取
    • 获取多个
    • 日志
    • 重试所有
    • 重试一个
  • 提交
    • 删除
    • 获取
    • 获取多个
    • 获取验证状态
    • 更新验证状态

模板和示例#

Browse KoboToolbox integration templates, or search all templates

选项#

查询选项#

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

  • 参数 面板的主要部分:
    • 开始 控制查询开始的索引偏移量(使用 API 分页逻辑)。
    • 限制 设置返回记录的最大数量。请注意,API 始终限制返回 30,000 条记录,无论您提供什么值。
  • 查询选项 部分,您可以激活以下参数:
    • 查询 让您以 MongoDB 的 JSON 查询格式指定过滤谓词。例如:{"status": "success", "_submission_time": {"$lt": "2021-11-01T01:02:03"}} 查询所有 status 字段值为 success 且在 2021 年 11 月 1 日 01:02:03 之前提交的所有提交。
    • 字段 让您指定要获取的字段列表,使响应更轻量。
    • 排序 让您以 MongoDB JSON 格式提供排序条件列表。例如,{"status": 1, "_submission_time": -1} 指定按状态升序排序,然后按提交时间降序排序。

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

提交选项#

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

  • 下载选项让您下载链接到每个特定表单提交的任何附件,如图片和视频。它还让您选择命名模式,以及要下载的文件大小(如果可用 - 通常用于图像)。
  • 格式化选项执行一些重新格式化,如 关于重新格式化 中所述。

关于重新格式化#

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

此节点提供了一个轻量级的固执己见的重新格式化逻辑,通过 重新格式化? 参数启用,该参数在所有返回表单提交的操作中都可用:提交查询、获取和附件下载操作。

启用后,重新格式化:

  • 将 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 操作

此页面是否
💬 微信

🚀 与作者交流

关注公众号
n8n实战笔记公众号
n8n实战笔记
📚 教程 💡 案例 🔧 技巧
添加微信
添加作者微信
1对1 专业指导
⚡ 快答 🎯 定制 🚀 支持