0

我正在为具有动态字段的平台构建一个 Zapier 应用程序。我有一个 API,它返回我的一个资源的字段列表(例如):

[
  { name: "First Name", key: "first_name", type: "String" },
  { name: "Civility", key: "civility", type: "Multiple" }
]

inputFields我基于此 API构建我的操作:

create: {
  [...],
  operation: {
    inputFields: [
      fetchFields()
    ],
    [...]
  },
}

API 返回值列表类型(即:文明),但要获得这些值,我必须进行另一个 API 调用。

现在,我所做的是在我的fetchFields函数中,每次遇到 a 时type: "Multiple",我都会执行另一个 API 调用来获取可能的值并将其设置为choices我的输入字段中。然而,这很昂贵,而且 Zapier 上的页面需要花费太多时间来显示这些字段。

我尝试使用z.dehydrateZapier 提供的功能,但它不适用于 input choices

我不能在这里使用动态下拉菜单,因为我不能传递我正在寻找的字段可能值的键。例如,要取回 Civility 的可能值,我需要将civility密钥传递给我的 API。

在这种情况下有哪些选择?

4

1 回答 1

0

大卫在这里,来自 Zapier 平台团队。

感谢您的来信!我认为你正在做的事情是可能的,但我也不是 100% 明白你在问什么。

你可以在函数中有多个 API 调用(听起来像你)。最后,该函数应该返回一个对象数组Field(如此所述)。

您可能不知道的关键是后续步骤可以访问部分填充bundle.inputData,因此您可以拥有第一个函数来获取字段选项并允许用户选择某些内容,然后是第二个函数运行并拉入字段基于那个选择。

否则,我认为执行 2 个 api 调用的函数(一个用于获取字段类型,一个用于将它们转换为 Zapierfield对象)是最好的选择。

如果这不能回答您的问题,请随时发送电子邮件至partners@zapier.com 或加入 slack 组织(链接在自述文件的底部),我们将尝试在那里解决它。

于 2018-09-25T00:30:26.530 回答