uip 是连接器构建器
Integration Service 连接器创作和生命周期命令的语法和选项 — 下载、导入、发布和本地“连接器构建器”工具链。
可以在本地编写 Integration Service 连接器并将其推送给租户。两个命令层涵盖了此内容:
- 租户生命周期—
uip is connectors download、import、publish、publish-status。直接在connectors下注册(不在builder下注册),因为它们与租户通信并处理设计/创作连接器,而不是本地文件树。记录在此页面。 - 本地创作—
uip is connectors builder ...。完全适用于本地连接器目录(除builder auth的可选实时测试外,无租户调用),用于在导入连接器之前构建、编辑和验证连接器文件。按域拆分分为五个页面 — 请参阅下面的此资源跨越六个页面。
任一层均涉及uip is connectors ( list 、 get 、 metadata 、 swagger 、 event-operations 、 audit-logs 、 export )覆盖的只读目录 — 该页面已与发现连接器相关在目录中;本教程是关于创作您拥有的新文档或新版本。
该资源跨越 6 个页面
- 本页— 概念和租户生命周期动词:
download、import、publish、publish-status。 - 初始化和连接器—
builder init(搭建新连接器的框架),builder connector inspect/validate。 - Auth —
builder auth set/get/system create/list,连接器的身份验证方案。 - 活动—
builder activityCRUD 及其子组field、method和param— 最大的域,用于定义连接器活动的实际执行方式。 - 活动挂钩
builder activity hook— JavaScript 请求前/后转换,在自己的页面上拆分,以获取其所需的运行时上下文引用。 - 触发器和状态——
builder trigger create、builder state query/patch— 事件驱动的触发器和低级别元素文件编辑。
概念
- 连接器目录— 包含
app/element/element.json(以及用于活动、身份验证、触发器的同级文件)的本地文件夹。几乎每个命令都接受--connector-dir <path>显式指向一个命令。若省略此参数,则系统将从当前目录开始查找该文件;如果未找到任何内容,则它会扫描直属子目录以获取单个连接器;如果仍未找到,则它将回退到上次在此位置builder init().uip-connector.json运行记录的连接器。如果解析找到多个候选对象,则命令将失败并显示Code: "connectorAmbiguous",并列出候选对象 — 明确传递--connector-dir以消除歧义。 - 设计连接器与已发布的连接器— 本地开发中的连接器是设计连接器(前缀为
design-...密钥,其作者私有)。publish已将其提升为租户范围内对所有人可见的CUSTOM连接器。download/import/publish/publish-status均在此租户端设计/已发布状态下运行;下面的builder动词仅对本地文件进行操作。 - 发现— 每个
builder命令组都附带一项针对 AI 编码智能体自动显现的uipath-connector-builder技能(请参阅uip skills),以及大多数命令中包含明确“何时使用”/“从不使用FOR”的--help块指导 — 在仅根据名称假定其作用域之前,请阅读命令自己的--help输出。 - 典型流程(根据 CLI 自己的
builder --help文本):builder init→builder auth set→builder activity create→ 可选builder activity hook create→ 可选builder trigger create→builder connector validate→uip is connectors import→uip is connectors publish。
大纲
uip is connectors download <connector-key> [--connector-dir <path>] [--tenant <name>]
uip is connectors import [--connector-dir <path>] [--tenant <name>]
uip is connectors publish [--connector-dir <path>] [--version <semver>] [--connector-id <id>] [--wait [--timeout-seconds <n>]] [--tenant <name>]
uip is connectors publish-status <publish-id> [--tenant <name>]
uip is connectors download <connector-key> [--connector-dir <path>] [--tenant <name>]
uip is connectors import [--connector-dir <path>] [--tenant <name>]
uip is connectors publish [--connector-dir <path>] [--version <semver>] [--connector-id <id>] [--wait [--timeout-seconds <n>]] [--tenant <name>]
uip is connectors publish-status <publish-id> [--tenant <name>]
--tenant 是四个生命周期动词中常见的可见选项。
uip 为连接器下载
按键下载设计连接器的可编辑源代码树,并在本地解压缩以进行编辑。
使用此选项下拉设计连接器以进行本地编辑,或引导先前导入/发布的连接器的工作副本。要改为读取连接器的记录,请使用connectors get 。要按名称搜索,请使用connectors list --filter 。要导出已发布元素的包 zip,请使用connectors export — 与此不同的操作。
参数
| 名称 | 必填 | 用途 |
|---|---|---|
<connector-key> | 是 | 确切的设计连接器密钥,例如 design-myorg-acmewidgets。 |
选项
| 长 | 值 | 描述 |
|---|---|---|
--connector-dir <path> | 路径 | 解压缩源代码的目标目录。默认为当前目录。 |
--tenant <name> | name | 覆盖 API 调用的租户。 |
示例
uip is connectors download design-myorg-acmewidgets --connector-dir ./pulled
uip is connectors download design-myorg-acmewidgets --connector-dir ./pulled
数据形状(--输出 json)
{
"Code": "ConnectorDownloaded",
"Data": {
"Id": 123,
"Key": "design-myorg-acmewidgets",
"ConnectorRoot": "/work/pulled/periodic-design-myorg-acmewidgets"
}
}
{
"Code": "ConnectorDownloaded",
"Data": {
"Id": 123,
"Key": "design-myorg-acmewidgets",
"ConnectorRoot": "/work/pulled/periodic-design-myorg-acmewidgets"
}
}
UIP 为连接器导入
将本地连接器打包为 zip 压缩文件,并按密钥在租户上创建或更新它 — 首次创建,在此后每次运行时更新。
使用此选项来向租户发布本地连接器更改,或者首次从本地目录创建租户连接器。要改为下载或搜索租户连接器,请使用 connectors download / connectors list。
参数
无。
选项
| 长 | 值 | 描述 |
|---|---|---|
--connector-dir <path> | 路径 | app/element/element.json 的连接器目录或任何父级目录。默认为当前目录。 |
--tenant <name> | name | 覆盖 API 调用的租户。 |
示例
uip is connectors import --connector-dir ./my-acme-connector
uip is connectors import --connector-dir ./my-acme-connector
数据形状(--输出 json)
{
"Code": "ConnectorImported",
"Data": {
"Id": 123,
"Key": "design-myorg-acmewidgets",
"Name": "Acme Widgets",
"Operation": "Created"
}
}
{
"Code": "ConnectorImported",
"Data": {
"Id": 123,
"Key": "design-myorg-acmewidgets",
"Name": "Acme Widgets",
"Operation": "Created"
}
}
首次导入给定连接器密钥时,Operation 为 "Created",在后续每次导入时为 "Updated"。
UIP 使用连接器发布
将设计连接器提升为租户范围内的自定义连接器。默认情况下为“触发与忽略”— 返回 PublishId,以使用 publish-status 进行轮询;将参数传递 --wait 进行内部轮询。
在 connectors import 成功后使用此选项,以使连接器对租户中的每个用户可见,或重新发布已发布连接器的新版本(先发布 element-metadata.json:latestVersion)。这不会将本地文件更改推送给租户 — 即connectors import 。publish 仅对已导入的内容进行操作。
参数
无。
选项
| 长 | 值 | 描述 |
|---|---|---|
--connector-dir <path> | 路径 | 连接器目录的路径。与上述概念相同的解决方案顺序。 |
--version <semver> | 语义版本 | 覆盖 element-metadata.json:latestVersion 中的版本。很少需要。 |
--connector-id <id> | 整数 | 使用显式数字 ID 绕过按键获取的查找。很少需要。 |
--wait | 标记 | 在 SUCCESS/FAILURE/超时之前轮询状态,而不是立即返回。 |
--timeout-seconds <seconds> | 整数 | 设置 --wait 时轮询超时。默认 600(10 分钟)。 |
--tenant <name> | name | 使用此租户的身份验证,而不是登录时的默认身份验证。 |
在进行任何网络调用之前,客户端都会将 --connector-id 和 --timeout-seconds 验证为正整数。
示例
# Fire-and-forget — returns a PublishId to poll separately (~5-10 min until Studio Web shows it)
uip is connectors publish
# Fire-and-forget — returns a PublishId to poll separately (~5-10 min until Studio Web shows it)
uip is connectors publish
# Block until publish completes (or the 10-minute default timeout)
uip is connectors publish --wait
# Block until publish completes (or the 10-minute default timeout)
uip is connectors publish --wait
数据形状(--输出 json)
{
"Code": "ConnectorPublishStarted",
"Data": {
"ConnectorKey": "design-acmecorp-stripe",
"ConnectorId": 42,
"Version": "1.0.0",
"PublishId": 99,
"Status": "IN_PROGRESS",
"Completed": false
}
}
{
"Code": "ConnectorPublishStarted",
"Data": {
"ConnectorKey": "design-acmecorp-stripe",
"ConnectorId": 42,
"Version": "1.0.0",
"PublishId": 99,
"Status": "IN_PROGRESS",
"Completed": false
}
}
对于 --wait,将使用相同的 Code: "ConnectorPublishStarted",但 Data 反映最终的轮询状态(Status: "SUCCESS" 或 "FAILURE"、Completed: true),而不是初始 IN_PROGRESS 快照。
UIP 为连接器发布状态
按 publish-id 轮询发布作业的状态逐字返回服务器的状态。
参数
| 名称 | 必填 | 用途 |
|---|---|---|
<publish-id> | 是 | 发布作业 ID connectors publish 返回。 |
选项
| 长 | 值 | 描述 |
|---|---|---|
--tenant <name> | name | 使用此租户的身份验证,而不是登录时的默认身份验证。 |
示例
uip is connectors publish-status 99
uip is connectors publish-status 99
数据形状(--输出 json)
{
"Code": "ConnectorPublishStatus",
"Data": { "PublishId": "99", "Status": "SUCCESS" }
}
{
"Code": "ConnectorPublishStatus",
"Data": { "PublishId": "99", "Status": "SUCCESS" }
}
Status 是从服务器按原义传递的 IN_PROGRESS、SUCCESS 或 FAILURE 之一。失败的发布会添加一个 Message 字段,其中包含失败的详细信息。
相关内容
- 初始化并连接器— 框架式连接器,
download/import/publish作用于哪个连接器。 - 身份验证— 配置连接器的身份验证方案。
- 活动— 定义连接器的活动执行的操作。
- 活动挂钩— 请求前/请求后转换的 JavaScript。
- 触发器和状态— 事件触发器和低级别文件编辑。
uip is connectors— 发布后将这些命令提供到的只读目录。