Skip to main content

嵌入 Zapier 编辑器

通过在您的产品中嵌入 Zap 编辑器,您的用户可以在不离开您的应用的情况下创建和编辑他们的 Zap。

先决条件

  • 您的应用已通过审核流程并在 Zapier 应用目录中发布
  • 您想要查询的任何 Zap 模板 都已通过审核并设为公开

示例实现

选项 1:从 Zap 模板创建 Zap

使用 Workflow API 查询以您的集成为特色的公共 Zap 模板(使用 GET /v1/zap-templates 端点),并在您的产品中突出这些模板。当用户选择他们想要尝试的 Zap 模板时,使用该模板的 create_url 值作为嵌入框架的来源,例如:

<iframe 
src="https://api.zapier.com/v1/embed/trello/create/113"
>
</iframe>

其中 https://api.zapier.com/v1/embed/trello/create/113 是 Zap 模板的 create_url 值。如有必要,您可以向 create_url 添加额外参数,以预填充用户的 Zap,从而简化用户的 Zap 配置过程。

选项 2:不使用 Zap 模板创建 Zap

您也可以通过 URL 参数辅助用户创建 Zap,而不是依赖现有的 Zap 模板。这为您提供了灵活性,让您可以将用户重定向到一个预填充的 Zap 编辑器中,该编辑器带有来自您应用的已知上下文,而无需为每个特定用例发布一个 Zap 模板。使用 Zap 预填充生成器 来轻松构建预填充 Zap,用于您的嵌入式编辑器体验,或作为从您的应用进入 Zap 编辑器的轻量级入口。

编辑现有 Zap

使用 Workflow API 加载用户的 Zap(使用 GET /v1/zaps 端点)。当用户选择打开或编辑一个 Zap 时,使用该 Zap 的 url 值作为嵌入框架的来源,例如:

<iframe 
src="https://zapier.com/editor/123456"
>
</iframe>

其中 https://zapier.com/editor/123456 是要编辑的 Zap 的 url 值。如果您愿意,也可以从您的应用中在新窗口、新标签页或弹出窗口中打开这些 URL。

postMessage 事件

如果您决定在您的产品中嵌入 Zap 编辑器,您可以监听 postMessage 的消息事件,以提升与 iframe 的交互性(例如,自动关闭 iframe 模态)。可用的消息包括:

  • zap:unpause = Zap 已启用/发布
  • zap:unpause:done = Zap 已启用/发布(成功)
  • zap:unpause:fail = Zap 已启用/发布(失败)
  • zap:pause = Zap 已暂停
  • zap:pause:done = Zap 已暂停(成功)
  • zap:pause:fail = Zap 已暂停(失败)

关闭 Zap

API 当前没有端点来关闭或启用用户的 Zap。如果您的 Zapier 应用使用了 Webhook 订阅,您可以向订阅创建时提供的唯一目标 URL 发送 DELETE 请求,这将暂停或关闭该 Zap。