功能概述
飞书智能伙伴创建平台(Aily)目前已为企业提供了几十个主流的 Saas 系统连接器,帮助用户在工作流技能中高效集成外部系统。但同时,平台提供的连接器并不能覆盖所有外部系统,企业内也可能有内部系统(自研或外采SaaS)需要被集成。因此,我们提供了连接器开发工具,借助该工具,企业可以基于 HTTP 协议将各种内外部系统封装为连接器,并在 Workflow 中被使用,让集成能力进一步提高。
典型场景示例:
- 用户想要在工作流中调用一个查询电话号码归属地的 API ,但是平台没有提供该 API ,可以通过连接器开发工具进行开发,并在 Workflow 中使用该连接器
- 用户想要在工作流中集成企业自建的 OA 系统,可以先通过 HTTP 协议暴露 OA 系统的相关接口,再通过连接器开发工具开发连接器,并在 Workflow 中使用
连接器开发工具基本概念
- 连接器:在智能伙伴创建平台中的 Workflow 中,我们使用连接器访问外部系统的 OpenAPI,连接器内部封装了「接口调用」和「接口认证」两部分逻辑。
- 认证类型:描述了某个连接器和特定的系统如何建立连接,并完成连接器内的接口认证等逻辑。每个系统的认证类型取决于系统自身,常见的有Basic Auth、API Key、Bearer Token和OAuth等
- 凭证实例:用户基于某个认证类型,使用自己的 Key、Secret 等参数创建出的资源实例。在 Workflow 的连接器节点中,用户看到和创建的每一个凭证都是凭证实例。
- 操作:一个连接器操作对应系统中的一个 API ,包含一个API所需的必要信息,如URL、Header、Query等。操作也拥有认证类型,其支持的认证类型与连接器相同或为连接器的子集
注:
- 多个连接器可以共用一种认证类型,认证类型相同的连接器,凭证实例可以复用。例如,飞书自建应用这个认证类型在所有飞书连接器上都是通用的,飞书自建应用的凭证实例在所有飞书连接器上都可以选到。
- 一个连接器可以有多种认证类型,连接器下比如飞书连接器同时支持 飞书应用授权 和 飞书用户授权 两种类型。在操作维度,部分操作只支持飞书应用授权,部分操作只支持飞书用户授权,还有部分操作二者都支持
如何开发连接器
创建连接器
- 从Workflow和Smartflow中找到自定义连接器入口,进入连接器开发工具页面
250px|700px|reset
250px|700px|reset
- 如果你从未创建过连接器,则可以点击画面中间的新建按钮创建你的第一个连接器;如果你已经创建过连接器,可以点击右上角的【新建连接器】。
250px|700px|reset
- 新建连接器时需要提供如下信息:
- 认证类型:该连接器访问外部系统时需要使用的认证类型,平台内置了一些主流系统的认证类型,你也可以使用基础的认证方法如Basic Auth、API Key。
- 连接器图标:如果你想使用自定义的图标,则需要上传符合格式、尺寸、大小要求的图片。你也可以先使用默认图标,在创建后再替换连接器图标。
- 连接器名称:指连接器在 Workflow 和 Smartflow 中的默认展示名称,可以填中文。例如:我的自建连接器。
- 连接器说明:一段简要介绍用于说明连接器是做什么的。
- Base URL:访问的外部系统的接口主域名,必须以HTTP或HTTPS开头
- 例如 Github API 的 Base URL 根据文档可知为 https://api.github.com,飞书开放平台 OpenAPI 的 Base URL 为 https://open.feishu.cn/open-apis,你需要将正确的值填写到 Base URL 中,用于所有连接器操作的接口请求。
250px|700px|reset
开发连接器操作
连接器的操作等同于发起一次 HTTP 接口请求,这里我们将介绍如何开发一个自建连接器的操作。
新建一个操作
- 点击左侧资源列表的 “+” 加号,选择新建操作,如果是第一次访问连接器开发工具,也可以点击屏幕中间的【新建操作】
- 你需要填写操作的展示名称和选择操作的所属分组,若无分组需要先创建分组。
250px|700px|reset
配置操作的基本信息
新建操作时,你需要为操作配置名称、描述和分组,当你在Flow中使用该连接器时,会看到这些基础信息
你也可以对已创建操作的基本信息进行编辑
250px|700px|reset
250px|700px|reset
配置操作的请求/响应参数
选中一个操作,可以在页面中对操作的请求/响应参数进行编辑
请求是指你在发起一个HTTP请求时,需要向目标服务传递的参数,通常包括Query、Header和Body中的全部或一部分。响应是指你成功向目标服务发起一次请求后,目标服务返回的参数信息
250px|700px|reset
250px|700px|reset
调整分组中的操作顺序(可选)
在连接器左侧资源树中,除了可以管理分组、操作外,还可以对分组和操作的顺序进行编辑,你可以直接通过拖拽的方式完成该操作。在Flow中使用该连接器时,分组和操作的顺序与这里配置的顺序一致
250px|700px|reset
配置状态码(可选)
完成操作的开发后,我们可以能还需要配置状态码。通常我们可以通过 HTTP 状态码来判断成功与不同的失败原因,并且平台会内置一套标准的 HTTP 状态码的判断配置。
但是对于一些平台,可能将请求的状态判断内置在了请求体内部的字段里进行判断;这时就需要我们再配置应用状态码。以飞书开放平台的接口为例:
- 通过接口响应体中的 code 字段判断请求是否成功,当 code = 0 时表示成功;非 0 时,通过 msg 字段反馈具体的错误信息描述。
- 此时我们需要声明应用状态码路径为 code 。
- 然后再配置状态码表中表示为成功的状态码,我们需要编辑内置的判断条件,新增应用状态码等于 0。此时,一次请求必须既要满足 HTTP 状态码在 200-299 之间,并且应用状态码为 0,才判断为执行成功。
250px|700px|reset
250px|700px|reset
250px|700px|reset
发布连接器
完成分组和操作的配置,即可发布连接器,连接器发布后默认可用范围只有开发者本人,可以根据实际需要在连接器列表中调整可用范围
250px|700px|reset
250px|700px|reset
在连接器可用范围内的开发者,可以在Flow的自定义连接器中发现并使用该连接器,不在该列表的开发者则无法见到该连接器