跳到主要内容

完整文档索引见 llms.txt。在页面 URL 后附加 .md 即可获取 Markdown 版本;本页的 Markdown 版本可在此获取。

n8n 包

Beta 阶段,即使不提升主版本号,也可能出现破坏性变更。

Beta:将 n8n 包导入项目 ​

**Beta**——即使不提升主版本号,也可能出现破坏性变更。

将 gzip 压缩的 tar 包(`.n8np`)导入目标项目。使用 multipart 字段 `package` 发送归档。可选的目标路由使用表单字段 `projectId` 和 `folderId`,省略或发送空值时使用默认值。所有可选模式/策略字段(凭据、工作流、项目、文件夹、数据表、变量和标签)在省略时均采用默认值;唯一不固定的默认值是 `folderConflictPolicy`,项目包中它遵循 `projectConflictPolicy`。必填的 `workflowConflictPolicy` 控制包内工作流按源 id 匹配到目标项目中的现有工作流时如何处理。最大上传大小为 `N8N_ENDPOINTS_PAYLOAD_SIZE_MAX` MB,默认 16。

包必须在 `manifest.json` 中声明清单,并包含清单引用的每个文件。

任何工作流写入之前,都会先解析凭据引用。

POST/n8n-packages/import

请求参数

参数位置类型必填说明
Idempotency-Keyheaderstring否

此 POST 请求的安全重试键。使用 1 到 128 个可见 ASCII 字符。相同的键配合相同的请求,会返回首次成功的响应。使用此键发送不同请求时返回 422。首次请求仍在处理时重试,会返回 409。

请求体

multipart/form-data

字段类型必填说明
packagestring是

gzip 压缩的 tar 包(.n8np)。

projectIdstring否

目标项目 id。省略或发送空值时,导入调用方的个人项目。

folderIdstring否

目标项目中的可选文件夹。省略或发送空值时,使用项目根目录。

credentialMatchingModestring否

如何在目标实例上匹配 requirements.credentials 中的凭据引用。id-only(默认)按 id 匹配;name-and-type 匹配名称和类型完全相同的凭据;type-only 匹配相同类型的任意凭据。对于 name-and-type 和 type-only,候选项按作用范围排序:目标项目拥有的凭据优先于仅共享到该项目的凭据,后者又优先于全局凭据。如果最高优先范围内仍有多个候选项,则选择最近更新的一个。

可选值:id-only, name-and-type, type-only

默认值:"id-only"

credentialMissingModestring否

无法解析凭据引用时如何处理。create-stub(默认)会在目标项目中为缺失引用创建空白凭据占位项。create-with-values 也会创建,但使用包内表达式数据初始化,参见导出选项 credentialExportPolicy;包中没有数据的引用会退回为空白占位项。如果包确认保留了全部源数据,使用包内数据创建的凭据会列在 credentials.seeded 中;否则,包括包没有完整性标记的情况,会列在 credentials.incomplete 中,并以 incomplete-credential 阻止工作流发布。create-with-values 实际创建凭据时,需要 credential:create 作用域。must-preexist 要求所有引用凭据都已存在。

可选值:must-preexist, create-stub, create-with-values

默认值:"create-stub"

credentialConflictPolicystring否

凭据引用匹配到现有凭据、但包内值与现有值不同时如何处理。keep-existing(默认)绝不更改匹配凭据。overwrite 会将包内名称和表达式值写入归导入所涉及项目所有的匹配凭据,保留其他全部已存储值,包括秘密信息、其他字段、OAuth 连接和数组字段。它绝不更改归其他项目所有的全局凭据,也不更改托管凭据、最终用户凭据(可解析凭据)或实例级凭据。导入会在 credentials.updated 中列出已更改凭据的源 id。实际更改凭据时,API 密钥需要 credential:update 作用域。fail 会以 409(credential-conflict)拒绝导入,触发条件是 overwrite 原本会更改匹配凭据。包内值与已存储值相同时,所有策略都保留匹配凭据不变。overwrite 和 fail 会比较已存储值,因此对于归导入所涉及项目所有的每个匹配凭据,即使不会更改,也需要 credential:update 权限。缺少时,导入会以 credential-update-forbidden 拒绝。

可选值:keep-existing, overwrite, fail

默认值:"keep-existing"

bindingsstring否

可选的显式源→目标 id 绑定 JSON 对象,以实体类型为键。目前仅支持 credentials:发送 {"credentials":{"<packageCredentialId>":"<targetCredentialId>"}},将包内凭据 id 映射到目标实例的凭据 id。这些显式绑定会校验类型,并在 credentialMatchingMode 解析之前应用。

默认值:"{}"

workflowConflictPolicystring是

new-version 更新匹配工作流并创建新版本;归档状态遵循包,因此匹配工作流会相应归档或取消归档。fail 在存在任何匹配工作流时拒绝导入,skip 保留匹配工作流不变。目标项目中的已归档工作流也照常参与匹配。更改归档状态还需要 workflow:delete 作用域。

可选值:new-version, fail, skip

workflowPublishingPolicystring否

控制内容写入后是否发布导入工作流。preserve-published-state(默认)使新工作流保持未激活;仅当已更新工作流原本已发布,且包包含源端发布的版本时才重新发布,因此不会发布草稿。match-source 在源端发布包内版本时发布该版本,源端未发布任何版本时取消发布;源端发布的版本不在包内时,目标保留其已发布版本。publish-all 发布所有导入工作流。unpublish-all 使新工作流保持未激活,并取消发布原本已发布的更新工作流。

可选值:preserve-published-state, match-source, publish-all, unpublish-all

默认值:"preserve-published-state"

workflowIdPolicystring否

控制新建工作流获得的 id。source(默认)在目标实例上复用包内工作流 id,最适合相同工作流在不同环境间移动的晋升场景。new 生成新 id,并将包内 id 记录为 sourceWorkflowId,使相同包能够反复导入而不发生 id 冲突,最适合市场内容导入。已匹配到目标项目现有工作流的工作流,即状态为 updated 或 skipped 的工作流,无论策略如何,都保留现有工作流当前的 id。

可选值:new, source

默认值:"source"

missingNodeTypeModestring否

包内工作流使用了实例未安装的节点类型或节点类型版本时如何处理。fail(默认)会在任何写入前拒绝导入,列出每个缺失的 (nodeType, typeVersion) 组合及使用它们的工作流。import-anyway 仍导入包;包含缺失节点类型的工作流绝不会由此次导入发布,无论 workflowPublishingPolicy 如何。

可选值:fail, import-anyway

默认值:"fail"

projectConflictPolicystring否

包定义的项目已在实例中存在(按 id 匹配)时如何处理,以及在未被 folderConflictPolicy 覆盖时如何处理其内容。merge(默认)保留现有项目的名称、说明、图标和自定义 span 属性,并添加包内内容。overwrite 使用包内详情替换上述详情,但包省略的详情保持原样,不会清空。fail 在任何写入前拒绝导入,每个现有项目报告一个 project-conflict 问题。如果包内项目 id 属于个人项目,或属于调用方无权更新的团队项目,则始终拒绝导入。工作流包会忽略此选项。

可选值:merge, fail, overwrite

默认值:"merge"

folderConflictPolicystring否

包内文件夹已存在于目标项目相同位置时如何处理。默认遵循 projectConflictPolicy,无需重复指定意图;工作流包不定义项目,因此默认采用 merge。merge 复用现有文件夹,并合并包内子项。fail 拒绝导入。overwrite 与 merge 一样复用文件夹,还会移除包未包含的工作流,范围为项目根目录和包定义的文件夹,保留仅存在于目标的文件夹及其内容。包未定义的文件夹也会在内部内容全部清空后移除。移除结果列在 removedWorkflows 和 removedFolders 中,参见 overwriteDeletionPolicy。文件夹 id 位于不同父文件夹下,或属于其他项目时,始终阻止导入。overwrite 仅用于项目包,需要 workflow:delete 和 folder:delete 作用域;如果 projectConflictPolicy 不是 overwrite,会被拒绝;调用方无权删除任何原本要移除的内容时,会提前阻止导入。创建文件夹需要 folder:create 作用域和支持文件夹的许可。

可选值:merge, fail, overwrite

overwriteDeletionPolicystring否

folderConflictPolicy=overwrite 如何移除包未包含的工作流。archive(默认)将其归档,使工作流及执行历史仍可恢复。hard-delete 先归档以取消发布(仅删除本身不会完成取消发布),然后永久删除工作流及其执行记录。removedWorkflows 中每个条目的 deletion 字段报告实际结果:如果请求 hard-delete,但取消发布延迟了触发器清理,导致记录尚不能删除,则保留为 archived,而不使内容已经写入的导入失败。仅当 folderConflictPolicy 为 overwrite 时适用。

可选值:archive, hard-delete

默认值:"archive"

dataTableMatchingModestring否

如何将包内工作流引用的数据表与目标项目匹配。by-id 匹配目标项目中 id 相同的表,导入的表保留源 id,绝不退回按名称匹配,因此目标表重命名后仍能匹配。目前仅支持此模式。

可选值:by-id

默认值:"by-id"

dataTableMissingModestring否

引用的数据表在目标项目中没有匹配项时如何处理。create(默认)根据包内架构创建表,保留源 id,但不包含行,需要 dataTable:create 作用域。must-preexist 拒绝导入。do-nothing 跳过缺失表的创建。在 keep-existing、fail 和 overwrite-non-destructive 架构冲突策略下,仍会校验匹配表的架构兼容性,并可能阻止导入。导入绝不导入表中的行。只有采用 dataTableSchemaConflictPolicy=overwrite 或 overwrite-non-destructive 时才更改匹配表,且保留其行。

可选值:create, must-preexist, do-nothing

默认值:"create"

dataTableSchemaConflictPolicystring否

比较匹配数据表架构时的严格程度。keep-existing(默认)接受包含包内全部同名、同类型列的目标表,目标表可以包含额外列。fail 拒绝任何差异,包括仅存在于目标的列。在 keep-existing 和 fail 下,缺少包内列或列类型不匹配都会拒绝导入,目标表不变。

overwrite 将匹配目标表更改为与包一致,可以移除列或更改列类型;这些列中的值会被移除,保留行和其他列。如果包包含列 id,仅重命名的列会保留其值。变更影响所有使用此表的工作流。被阻止的 keep-existing、fail 或 overwrite-non-destructive 导入会在 overwriteChanges 中列出这些变更。仅在实际更改匹配表时需要 dataTable:update 作用域。

overwrite-non-destructive 执行与 overwrite 相同的变更,但任何变更会移除列或更改列类型时,都拒绝导入,且不写入任何内容。仅存在于目标的列也算作将被移除的列。

可选值:keep-existing, fail, overwrite, overwrite-non-destructive

默认值:"keep-existing"

variableMissingModestring否

包内工作流引用的变量在目标项目和全局作用域均不存在时如何处理,查找顺序为先项目、后全局。create-with-value(默认)使用包内值创建变量,并将其名称列在 variables.created 中。如果包未携带该变量值,例如导出时排除了值,或导出的值本身为空,则创建空白占位变量,并列在 variables.stubbed 中。do-nothing 不创建变量,仍继续导入,并将名称列在 variables.missing 中。must-preexist 要求每个引用变量都可解析,否则拒绝导入。create-stub 在指定作用域创建每个缺失变量,值为空,参见 variableParentPolicy,并将创建的名称列在 variables.stubbed 中。实际创建变量的导入需要支持变量的许可;API 密钥调用方还需要 variable:create 作用域。如果包内所有变量都已可解析,则不创建变量,也无需上述两项要求。

可选值:do-nothing, must-preexist, create-stub, create-with-value

默认值:"create-with-value"

variableConflictPolicystring否

引用变量已在目标项目或全局作用域解析到,但包内携带了不同值时如何处理。keep-existing(默认)保留目标值不变,并将名称列在 variables.matched 中。overwrite 直接使用包内值替换已找到作用域中的现有变量值,无论位于目标项目还是全局作用域,因此此次导入可能重写其他项目也读取的全局变量;名称列在 variables.updated 中。此操作需要支持变量的许可、相应作用域中的 variable:update / projectVariable:update 权限;API 密钥调用方还需要 variable:update 作用域。fail 则以 409 拒绝导入。没有变更时,所有策略都保留已解析变量:例如包未携带其值(导出时排除了值,或导出的值本身为空),或包内值已与目标值一致。反过来并不成立:已解析变量的空值仍算一个值,例如先前导入创建的占位变量,因此 overwrite 会填充它,fail 会拒绝导入。在 overwrite 下,如果项目包中各项目为最终解析到同一行的同名变量携带不同值,通常是均未被项目变量覆盖的全局变量,则以 409 拒绝:同一行不能同时保存两个值,导入不会代为选择。请在目标中为各项目设置各自变量,或分别导入。

可选值:keep-existing, overwrite, fail

默认值:"keep-existing"

variableParentPolicystring否

工作流包或文件夹包中,create-with-value 和 create-stub 创建缺失变量的位置。project(也是省略此字段时的行为)在导入目标项目中创建,即 projectId,未指定则使用调用方的个人项目。global 在全局作用域创建。许可与 variable:create 要求(见 variableMissingMode)适用于两种位置。项目包必须省略此字段,否则以 400 拒绝:其位置遵循包布局,项目下的变量创建在相应项目中,顶层变量则全局创建。

可选值:project, global

tagMissingModestring否

包内工作流引用的标签在目标实例上没有相同 id 标签时如何处理。标签按源 id 匹配,绝不按名称匹配。create(默认)使用包(源)id 和名称在全局创建标签;实际创建标签时,需要带有 tag:create 作用域的 API 密钥。do-nothing 导入工作流但不附加缺失标签,不创建任何标签,并将丢弃的名称列在 tags.skipped 中。

可选值:create, do-nothing

默认值:"create"

tagConflictPolicystring否

引用标签在目标实例上发生冲突时如何处理,包括相同 id 的目标标签名称不同(重命名漂移),或标签名称已被其他标签占用(名称冲突)。skip(默认)从导入中丢弃冲突标签,不创建、不重命名,也不附加到任何位置;导入继续,名称列在 tags.skipped 中。fail 以 409 拒绝导入。rename 将发生名称漂移的目标标签重命名为包内名称;发生名称冲突时,将现有标签 id 改为包(源)id,其名称、工作流和文件夹标签关联随之保留。实际重命名或对齐标签时,两种操作都需要带有 tag:update 作用域的 API 密钥。如果发生名称漂移的标签所需包内名称仍被其他标签占用,仍会拒绝导入,即 rename 退化为 fail。

可选值:skip, fail, rename

默认值:"skip"

响应

状态码说明
200

操作成功。

400

请求无效,或提供的数据格式错误。

401

未授权

403

禁止访问

404

未找到指定资源。

409

至少存在一项冲突而阻止导入,例如工作流源 id 冲突、文件夹冲突、标签冲突(重命名漂移或名称冲突)、数据表冲突(id 属于其他项目,或名称被项目内其他表占用)、变量包内值与解析到的目标值不同,或选定目标同时被指定删除。

413

内容过大。

415

不支持的媒体类型。

422

仅因非冲突问题而阻止导入,例如未解析的凭据或变量、实例未安装的节点类型、调用方无权进行的删除,或创建变量占位项会超过实例变量配额。

500

服务器内部错误。

响应结构:200 · application/json
字段类型必填说明
packageobject是
展开字段
字段类型必填说明
package.sourceN8nVersionstring是
package.sourceIdstring是
package.exportedAtstring是
workflowsarray是
展开字段
字段类型必填说明
workflows.[]sourceWorkflowIdstring是

工作流在包中的 id。

workflows.[]localIdstring是

目标实例上的工作流 id:created 时新建(workflowIdPolicy=new 时生成新 id,source 时使用包中的 id);updated/skipped 时使用现有工作流的 id。

workflows.[]namestring是
workflows.[]projectIdstring是
workflows.[]parentFolderIdstring是
workflows.[]activeVersionIdstring是

目标实例上的已发布版本(如有)。导入后工作流未发布时为 null。

workflows.[]isArchivedboolean是

导入后工作流在目标上是否归档。采用 new-version 时,遵循包中的 isArchived 标记;被跳过的工作流保留自身状态。

workflows.[]publishingobject是

将所选发布策略应用到此工作流的结果。

展开字段
字段类型必填说明
workflows.[]publishing.statestring是

blocked 表示导入版本无法发布,且没有激活版本,例如工作流使用了空白或不完整凭据,或使用实例未安装的节点类型。如果先前发布的版本仍处于激活状态,state 会为 unchanged,并附带 skippedPublishReason。failed 表示尝试了发布或取消发布,但操作未成功。

可选值:published, unpublished, unchanged, blocked, failed

workflows.[]publishing.errorstring否

state 为 failed 时返回,说明无法应用发布或取消发布操作的原因。

workflows.[]publishing.blockedReasonstring否

state 为 blocked 时返回:导入版本无法发布,且没有激活版本。

可选值:stub-credential, incomplete-credential, missing-node-type

workflows.[]publishing.skippedPublishReasonstring否

state 为 unchanged,但策略原本要求发布导入版本时返回:先前发布的版本仍处于激活状态,例如更新后凭据为空或不完整。

可选值:stub-credential, incomplete-credential, missing-node-type

workflows.[]statusstring是

此包中工作流的导入结果。

可选值:created, updated, skipped

removedWorkflowsarray是

此次导入期间从目标移除的工作流。

展开字段
字段类型必填说明
removedWorkflows.[]workflowIdstring是

此实例上被移除工作流的 id。

removedWorkflows.[]namestring是
removedWorkflows.[]projectIdstring是

对工作流进行对齐处理的项目。

removedWorkflows.[]parentFolderIdstring是

工作流原所在文件夹;位于项目根目录时为 null。

removedWorkflows.[]deletionstring是

实际发生的结果,而非 overwriteDeletionPolicy 请求的操作:如果请求 hard-delete,但相应记录尚不能删除,则报告为 archived。

可选值:archived, deleted

removedFoldersarray是

包未定义、且在对齐处理后变为空的文件夹,由 folderConflictPolicy=overwrite 移除。仍包含任何内容的文件夹会保留,因此不会一并清理仅存在于目标的内容。其他策略下始终为空。

展开字段
字段类型必填说明
removedFolders.[]folderIdstring是
removedFolders.[]namestring是
removedFolders.[]projectIdstring是
removedFolders.[]parentFolderIdstring是

原所在文件夹;位于项目根目录时为 null。

foldersarray是

在目标项目中创建或跳过的文件夹结构。

展开字段
字段类型必填说明
folders.[]sourceFolderIdstring是

文件夹在包中的 id。

folders.[]localIdstring是

目标实例上的文件夹 id,等于 sourceFolderId,即复用文件夹 id。

folders.[]namestring是
folders.[]parentFolderIdstring是

目标上解析得到的父文件夹;位于项目根目录时为 null。

folders.[]statusstring是

此包中文件夹的导入结果。

可选值:created, skipped

projectsarray是

创建的项目结构,或匹配后更新或保留原样的项目结构,参见 projectConflictPolicy。项目包中会返回;导入独立工作流或文件夹时为空。

展开字段
字段类型必填说明
projects.[]sourceProjectIdstring是

项目在包中的 id。

projects.[]localIdstring是

目标实例上的项目 id,等于 sourceProjectId,即复用项目 id。

projects.[]namestring是

目标上的项目名称:采用 overwrite 时使用包中的名称,采用 merge 时使用原有名称。

projects.[]statusstring是

此包中项目的导入结果。skipped 表示项目已存在,且 projectConflictPolicy=merge 保留了原项目详情;项目内容仍会导入。

可选值:created, updated, skipped

bindingsobject是

导入产生的源 id → 目标 id 映射,每种实体类型一个映射。每个值都将实体在包中的 id 映射到目标实例上的 id。

展开字段
字段类型必填说明
bindings.workflowsobject是
bindings.credentialsobject是

包清单 requirements.credentials 中的凭据 id → 目标实例上解析得到的凭据 id。同时涵盖匹配的现有凭据,以及通过 credentialMissingMode=create-stub 或 create-with-values 创建的凭据。

credentialsobject是

按解析结果分组的源凭据 id:匹配现有凭据、创建空白占位凭据、创建带初始数据的凭据、创建不完整凭据,或匹配到此次导入已更新的凭据。完整的源→目标 id 映射见 bindings.credentials。

展开字段
字段类型必填说明
credentials.matchedarray是

包中匹配到目标实例现有凭据的源凭据 id。

credentials.stubbedarray是

已在目标项目中为其创建空白占位凭据的源凭据 id。

credentials.seededarray是

已在目标项目中为其创建凭据的源凭据 id;这些凭据包含包内表达式值携带的全部源数据。

credentials.incompletearray是

已在目标项目中使用包内表达式值创建凭据的源凭据 id,但包未确认其包含全部源数据。这些凭据还需补充信息。导入不会发布使用它们的工作流导入版本,原因为 incomplete-credential。

credentials.updatedarray是

此次导入通过 credentialConflictPolicy=overwrite 更改了其匹配凭据的源凭据 id。这些 id 不会列在 matched 中。其他策略下为空。

dataTablesobject是
展开字段
字段类型必填说明
dataTables.matchedinteger是
dataTables.createdinteger是
dataTables.updatedinteger是
variablesobject是

包的变量需求解析结果。仅返回名称,响应绝不包含值。对于项目包,这些数组是在包级别汇总各目标结果得到的并集,可能重叠,例如某名称在一个项目中创建时带有值,在另一个项目中创建为空白占位变量;存在外部并发写入时,只能尽力准确分类。

展开字段
字段类型必填说明
variables.matchedarray是

解析到现有变量且保持不变的变量名,优先查找导入项目作用域,再查找全局作用域。此次导入重写的已解析变量会列在 updated 中。

variables.missingarray是

导入后仍未解析到的变量名。variableMissingMode=do-nothing 下,这些仅为警告:导入仍成功,不创建任何变量。成功的 create-stub 或 create-with-value 导入通常使此列表为空。

variables.createdarray是

通过 variableMissingMode=create-with-value 使用包内值创建的变量名。空白占位变量会列在 stubbed 中。

variables.stubbedarray是

此次导入创建为空值的变量名:使用了 variableMissingMode=create-stub,或 create-with-value 没有可导出的值。其他结果下为空。

variables.updatedarray是

此次导入通过 variableConflictPolicy=overwrite,将其现有值替换为包内值的变量名。其他策略下为空。

tagsobject是

导入工作流引用的标签的解析结果,按源 id 匹配,仅包含标签名称。

展开字段
字段类型必填说明
tags.matchedarray是

解析到 id 和名称均相同的现有标签,按原样附加。

tags.createdarray是

此次导入通过 tagMissingMode=create 创建的标签,按名称列出。

tags.renamedarray是

通过 tagConflictPolicy=rename 重命名为包内名称的目标标签,按新名称列出。

tags.reconciledarray是

发生名称冲突时,通过 tagConflictPolicy=rename 将 id 改为包(源)id 的现有目标标签;其名称、工作流标签关联和文件夹标签关联均保留。

tags.skippedarray是

通过 tagMissingMode=do-nothing 或 tagConflictPolicy=skip 从导入中丢弃的标签:不创建、不重命名,也不附加到任何导入工作流。

响应结构:409 · application/json
字段类型必填说明
messagestring是
issuesarray是
展开字段

结构 1

字段类型必填说明
issues.[]typestring是

可选值:agent-conflict

issues.[]kindstring是

可选值:existing, id, task-id

issues.[]sourceAgentIdstring是
issues.[]projectIdstring是
issues.[]sourceTaskIdstring否
issues.[]targetIdsarray是

结构 2

字段类型必填说明
issues.[]typestring是

可选值:agent-invalid

issues.[]sourceAgentIdstring是
issues.[]pathstring是
issues.[]messagestring是

结构 3

字段类型必填说明
issues.[]typestring是

可选值:agent-dependency-unresolved

issues.[]sourceAgentIdstring是
issues.[]projectIdstring是
issues.[]dependencyTypestring是

可选值:agent, workflow, credential

issues.[]referenceIdstring是
issues.[]pathstring是
issues.[]reasonstring是

可选值:missing, inaccessible, ambiguous, unsupported

结构 4

字段类型必填说明
issues.[]typestring是

可选值:agent-policy-violation

issues.[]sourceAgentIdstring是
issues.[]namestring是
issues.[]violationsarray是

结构 5

字段类型必填说明
issues.[]typestring是

可选值:workflow-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]namestring是

结构 6

字段类型必填说明
issues.[]typestring是

可选值:workflow-lineage-conflict

issues.[]sourceWorkflowIdstring是
issues.[]projectIdstring是
issues.[]existingWorkflowsarray是

结构 7

字段类型必填说明
issues.[]typestring是

可选值:workflow-id-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]existingProjectIdstring是

现有工作流所属的项目;无法确定所属项目时为 null。

issues.[]isArchivedboolean是

现有工作流是否归档。

issues.[]namestring是

结构 8

字段类型必填说明
issues.[]typestring是

可选值:workflow-folder-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]existingParentFolderIdstring是

匹配工作流当前所在的文件夹;位于项目根目录时为 null。

issues.[]targetFolderIdstring是

请求导入到的文件夹;项目包将工作流放在项目根目录时为 null。

issues.[]namestring是

结构 9

字段类型必填说明
issues.[]typestring是

可选值:workflow-archive-forbidden

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]namestring是
issues.[]projectIdstring是

匹配工作流所属的项目。

issues.[]transitionstring是

导入为使工作流与包中状态一致而需要执行的步骤。

可选值:archive, unarchive

结构 10

字段类型必填说明
issues.[]typestring是

可选值:credential-unresolved

issues.[]kindstring是

可选值:not_found, unknown_type, source_not_found, type_mismatch

issues.[]sourceIdstring是
issues.[]targetIdstring否

目标凭据 id:对于 not_found,是无法解析的显式绑定;对于 type_mismatch,是通过显式绑定或自动匹配已解析到、但类型错误的凭据 id。

issues.[]expectedTypestring否

对于 type_mismatch:包中工作流节点需要的凭据类型。

issues.[]actualTypestring否

对于 type_mismatch:已解析目标凭据的实际类型。

issues.[]usedByarray是

结构 11

字段类型必填说明
issues.[]typestring是

可选值:credential-conflict

issues.[]kindstring是

differs:在 credentialConflictPolicy=fail 下,包会更改目标凭据的名称或值。divergent:在 overwrite 下,包内两个或多个名称或值不同的凭据解析到了同一个目标凭据。导入不会代为选择其中之一。

可选值:differs, divergent

issues.[]targetIdstring是

目标凭据的 id。

issues.[]sourceIdsarray是

解析到该目标凭据的包内凭据 id。对于 differs,是会更改该目标凭据的包内凭据。

issues.[]namestring是

目标凭据的名称。

issues.[]usedByarray是

包中使用所列包内凭据的使用方。

结构 12

字段类型必填说明
issues.[]typestring是

可选值:credential-update-forbidden

issues.[]targetIdstring是

目标凭据的 id。

issues.[]sourceIdsarray是

解析到此凭据的包内凭据 id。

issues.[]namestring是

目标凭据的名称。

issues.[]usedByarray是

包中使用所列包内凭据的使用方。

结构 13

字段类型必填说明
issues.[]typestring是

可选值:project-conflict

issues.[]kindstring是

可选值:fail-policy

issues.[]sourceProjectIdstring是
issues.[]namestring是

项目在包中的名称。

结构 14

字段类型必填说明
issues.[]typestring是

可选值:folder-conflict

issues.[]kindstring是

可选值:parent-mismatch, id-in-other-project, fail-policy

issues.[]sourceFolderIdstring是
issues.[]namestring是
issues.[]existingParentFolderIdstring否

对于 parent-mismatch:目标上匹配文件夹的当前父文件夹。

issues.[]expectedParentFolderIdstring否

对于 parent-mismatch:包要求放置该文件夹的父文件夹。

issues.[]existingProjectIdstring否

对于 id-in-other-project:已拥有此 id 的项目。

结构 15

字段类型必填说明
issues.[]typestring是

可选值:workflow-removal-forbidden

issues.[]workflowIdstring是
issues.[]namestring是
issues.[]projectIdstring是

当时对工作流进行对齐处理的项目。

结构 16

字段类型必填说明
issues.[]typestring是

可选值:workflow-removal-conflict

issues.[]sourceWorkflowIdstring是
issues.[]workflowIdstring是

所选工作流的目标 id。

issues.[]projectIdstring是

结构 17

字段类型必填说明
issues.[]typestring是

可选值:folder-removal-forbidden

issues.[]folderIdstring是
issues.[]namestring是
issues.[]projectIdstring是

当时对文件夹进行对齐处理的项目。

结构 18

字段类型必填说明
issues.[]typestring是

可选值:data-table-unresolved

issues.[]kindstring是

可选值:missing, id-conflict, name-conflict, schema-incompatible, module-disabled, permission-denied

issues.[]sourceIdstring否

整个导入层面的失败(module-disabled、permission-denied)不返回此字段。

issues.[]namestring否
issues.[]existingProjectIdstring否

对于 id-conflict:拥有冲突目标表的项目。

issues.[]missingColumnsarray否

对于 schema-incompatible:目标表缺少的包内列。

issues.[]typeMismatchesarray否

对于 schema-incompatible:目标类型不同的包内列。

issues.[]extraColumnsarray否

对于 schema-incompatible,在 fail 策略下:目标上存在、但包内架构中没有的列。

issues.[]overwriteChangesarray否

对于 schema-incompatible:overwrite 将对目标表进行的变更。

issues.[]missingScopestring否

对于 permission-denied:用户缺少的项目作用域。

可选值:dataTable:create, dataTable:update

issues.[]conflictingTableIdstring否

对于 name-conflict:已占用或声明使用该名称的其他表。

issues.[]currentNamestring否

对于重命名的 name-conflict:匹配表的当前名称。

issues.[]usedByarray是

结构 19

字段类型必填说明
issues.[]typestring是

可选值:tag-unresolved

issues.[]kindstring是

可选值:rename-drift, name-collision, invalid-name, invalid-id, permission-denied

issues.[]sourceIdstring否

标签在包中的 id。permission-denied 时不返回。

issues.[]namestring否

包内标签名称,已去除两端空白。permission-denied 时不返回。

issues.[]missingScopestring否

对于 permission-denied:导入用户缺少的全局作用域。

可选值:tag:create, tag:update

issues.[]existingTagIdstring否

存在争用的目标标签 id:当前占用所需名称的其他标签,或原本要在对齐处理中更改 id、但该操作被阻止的目标标签。如果只是两个包内标签彼此冲突,而非争用目标标签,则不返回。

issues.[]existingNamestring否

对于 rename-drift:相同 id 的目标标签当前名称。

issues.[]usedByarray是

包中引用源标签的使用方。不包括被跳过的使用方,也不包括关联到争用目标标签的工作流。

结构 20

字段类型必填说明
issues.[]typestring是

可选值:variable-unresolved

issues.[]namestring是

在目标项目和全局作用域中均无匹配项的需求名称。

issues.[]usedByarray是

结构 21

字段类型必填说明
issues.[]typestring是

可选值:variable-conflict

issues.[]namestring是

值不同的变量名称。

issues.[]projectIdstring否

已解析变量所属的项目;在全局作用域解析到时不返回。

issues.[]usedByarray是

结构 22

字段类型必填说明
issues.[]typestring是

可选值:variable-limit-exceeded

issues.[]limitinteger是

实例变量配额。

issues.[]remaininginteger是

配额内仍可创建的变量行数。导入被阻止是因为 requested 超过此剩余数,而非超过 limit。

issues.[]requestedinteger是

导入原本会创建的新变量行数,已按目标去重。

issues.[]namesarray是

导入原本会创建的唯一变量名称。

issues.[]usedByarray是

包中引用任一所列变量的使用方。

结构 23

字段类型必填说明
issues.[]typestring是

可选值:missing-node-type

issues.[]nodeTypestring是

包中工作流使用的完整节点类型名称。

issues.[]typeVersionnumber是

包中工作流使用的节点类型版本。

issues.[]usedByarray是

包中使用此节点类型和版本的使用方。

结构 24

字段类型必填说明
issues.[]typestring是

可选值:policy-violation

issues.[]sourceWorkflowIdstring是

工作流在包中的 id。

issues.[]namestring是
issues.[]violationsarray是

结构 25

字段类型必填说明
issues.[]typestring是

可选值:credential-policy-violation

issues.[]sourceIdstring是

凭据在包中的 id。

issues.[]targetIdstring否

目标实例上匹配凭据的 id。策略在 credentialConflictPolicy=overwrite 下拒绝更新此凭据时返回;策略拒绝的是导入原本会创建的凭据时不返回。

issues.[]namestring否
issues.[]credentialTypestring是
issues.[]usedByarray是

包中使用此凭据的使用方。

issues.[]violationsarray是
响应结构:422 · application/json
字段类型必填说明
messagestring是
issuesarray是
展开字段

结构 1

字段类型必填说明
issues.[]typestring是

可选值:agent-conflict

issues.[]kindstring是

可选值:existing, id, task-id

issues.[]sourceAgentIdstring是
issues.[]projectIdstring是
issues.[]sourceTaskIdstring否
issues.[]targetIdsarray是

结构 2

字段类型必填说明
issues.[]typestring是

可选值:agent-invalid

issues.[]sourceAgentIdstring是
issues.[]pathstring是
issues.[]messagestring是

结构 3

字段类型必填说明
issues.[]typestring是

可选值:agent-dependency-unresolved

issues.[]sourceAgentIdstring是
issues.[]projectIdstring是
issues.[]dependencyTypestring是

可选值:agent, workflow, credential

issues.[]referenceIdstring是
issues.[]pathstring是
issues.[]reasonstring是

可选值:missing, inaccessible, ambiguous, unsupported

结构 4

字段类型必填说明
issues.[]typestring是

可选值:agent-policy-violation

issues.[]sourceAgentIdstring是
issues.[]namestring是
issues.[]violationsarray是

结构 5

字段类型必填说明
issues.[]typestring是

可选值:workflow-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]namestring是

结构 6

字段类型必填说明
issues.[]typestring是

可选值:workflow-lineage-conflict

issues.[]sourceWorkflowIdstring是
issues.[]projectIdstring是
issues.[]existingWorkflowsarray是

结构 7

字段类型必填说明
issues.[]typestring是

可选值:workflow-id-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]existingProjectIdstring是

现有工作流所属的项目;无法确定所属项目时为 null。

issues.[]isArchivedboolean是

现有工作流是否归档。

issues.[]namestring是

结构 8

字段类型必填说明
issues.[]typestring是

可选值:workflow-folder-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]existingParentFolderIdstring是

匹配工作流当前所在的文件夹;位于项目根目录时为 null。

issues.[]targetFolderIdstring是

请求导入到的文件夹;项目包将工作流放在项目根目录时为 null。

issues.[]namestring是

结构 9

字段类型必填说明
issues.[]typestring是

可选值:workflow-archive-forbidden

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]namestring是
issues.[]projectIdstring是

匹配工作流所属的项目。

issues.[]transitionstring是

导入为使工作流与包中状态一致而需要执行的步骤。

可选值:archive, unarchive

结构 10

字段类型必填说明
issues.[]typestring是

可选值:credential-unresolved

issues.[]kindstring是

可选值:not_found, unknown_type, source_not_found, type_mismatch

issues.[]sourceIdstring是
issues.[]targetIdstring否

目标凭据 id:对于 not_found,是无法解析的显式绑定;对于 type_mismatch,是通过显式绑定或自动匹配已解析到、但类型错误的凭据 id。

issues.[]expectedTypestring否

对于 type_mismatch:包中工作流节点需要的凭据类型。

issues.[]actualTypestring否

对于 type_mismatch:已解析目标凭据的实际类型。

issues.[]usedByarray是

结构 11

字段类型必填说明
issues.[]typestring是

可选值:credential-conflict

issues.[]kindstring是

differs:在 credentialConflictPolicy=fail 下,包会更改目标凭据的名称或值。divergent:在 overwrite 下,包内两个或多个名称或值不同的凭据解析到了同一个目标凭据。导入不会代为选择其中之一。

可选值:differs, divergent

issues.[]targetIdstring是

目标凭据的 id。

issues.[]sourceIdsarray是

解析到该目标凭据的包内凭据 id。对于 differs,是会更改该目标凭据的包内凭据。

issues.[]namestring是

目标凭据的名称。

issues.[]usedByarray是

包中使用所列包内凭据的使用方。

结构 12

字段类型必填说明
issues.[]typestring是

可选值:credential-update-forbidden

issues.[]targetIdstring是

目标凭据的 id。

issues.[]sourceIdsarray是

解析到此凭据的包内凭据 id。

issues.[]namestring是

目标凭据的名称。

issues.[]usedByarray是

包中使用所列包内凭据的使用方。

结构 13

字段类型必填说明
issues.[]typestring是

可选值:project-conflict

issues.[]kindstring是

可选值:fail-policy

issues.[]sourceProjectIdstring是
issues.[]namestring是

项目在包中的名称。

结构 14

字段类型必填说明
issues.[]typestring是

可选值:folder-conflict

issues.[]kindstring是

可选值:parent-mismatch, id-in-other-project, fail-policy

issues.[]sourceFolderIdstring是
issues.[]namestring是
issues.[]existingParentFolderIdstring否

对于 parent-mismatch:目标上匹配文件夹的当前父文件夹。

issues.[]expectedParentFolderIdstring否

对于 parent-mismatch:包要求放置该文件夹的父文件夹。

issues.[]existingProjectIdstring否

对于 id-in-other-project:已拥有此 id 的项目。

结构 15

字段类型必填说明
issues.[]typestring是

可选值:workflow-removal-forbidden

issues.[]workflowIdstring是
issues.[]namestring是
issues.[]projectIdstring是

当时对工作流进行对齐处理的项目。

结构 16

字段类型必填说明
issues.[]typestring是

可选值:workflow-removal-conflict

issues.[]sourceWorkflowIdstring是
issues.[]workflowIdstring是

所选工作流的目标 id。

issues.[]projectIdstring是

结构 17

字段类型必填说明
issues.[]typestring是

可选值:folder-removal-forbidden

issues.[]folderIdstring是
issues.[]namestring是
issues.[]projectIdstring是

当时对文件夹进行对齐处理的项目。

结构 18

字段类型必填说明
issues.[]typestring是

可选值:data-table-unresolved

issues.[]kindstring是

可选值:missing, id-conflict, name-conflict, schema-incompatible, module-disabled, permission-denied

issues.[]sourceIdstring否

整个导入层面的失败(module-disabled、permission-denied)不返回此字段。

issues.[]namestring否
issues.[]existingProjectIdstring否

对于 id-conflict:拥有冲突目标表的项目。

issues.[]missingColumnsarray否

对于 schema-incompatible:目标表缺少的包内列。

issues.[]typeMismatchesarray否

对于 schema-incompatible:目标类型不同的包内列。

issues.[]extraColumnsarray否

对于 schema-incompatible,在 fail 策略下:目标上存在、但包内架构中没有的列。

issues.[]overwriteChangesarray否

对于 schema-incompatible:overwrite 将对目标表进行的变更。

issues.[]missingScopestring否

对于 permission-denied:用户缺少的项目作用域。

可选值:dataTable:create, dataTable:update

issues.[]conflictingTableIdstring否

对于 name-conflict:已占用或声明使用该名称的其他表。

issues.[]currentNamestring否

对于重命名的 name-conflict:匹配表的当前名称。

issues.[]usedByarray是

结构 19

字段类型必填说明
issues.[]typestring是

可选值:tag-unresolved

issues.[]kindstring是

可选值:rename-drift, name-collision, invalid-name, invalid-id, permission-denied

issues.[]sourceIdstring否

标签在包中的 id。permission-denied 时不返回。

issues.[]namestring否

包内标签名称,已去除两端空白。permission-denied 时不返回。

issues.[]missingScopestring否

对于 permission-denied:导入用户缺少的全局作用域。

可选值:tag:create, tag:update

issues.[]existingTagIdstring否

存在争用的目标标签 id:当前占用所需名称的其他标签,或原本要在对齐处理中更改 id、但该操作被阻止的目标标签。如果只是两个包内标签彼此冲突,而非争用目标标签,则不返回。

issues.[]existingNamestring否

对于 rename-drift:相同 id 的目标标签当前名称。

issues.[]usedByarray是

包中引用源标签的使用方。不包括被跳过的使用方,也不包括关联到争用目标标签的工作流。

结构 20

字段类型必填说明
issues.[]typestring是

可选值:variable-unresolved

issues.[]namestring是

在目标项目和全局作用域中均无匹配项的需求名称。

issues.[]usedByarray是

结构 21

字段类型必填说明
issues.[]typestring是

可选值:variable-conflict

issues.[]namestring是

值不同的变量名称。

issues.[]projectIdstring否

已解析变量所属的项目;在全局作用域解析到时不返回。

issues.[]usedByarray是

结构 22

字段类型必填说明
issues.[]typestring是

可选值:variable-limit-exceeded

issues.[]limitinteger是

实例变量配额。

issues.[]remaininginteger是

配额内仍可创建的变量行数。导入被阻止是因为 requested 超过此剩余数,而非超过 limit。

issues.[]requestedinteger是

导入原本会创建的新变量行数,已按目标去重。

issues.[]namesarray是

导入原本会创建的唯一变量名称。

issues.[]usedByarray是

包中引用任一所列变量的使用方。

结构 23

字段类型必填说明
issues.[]typestring是

可选值:missing-node-type

issues.[]nodeTypestring是

包中工作流使用的完整节点类型名称。

issues.[]typeVersionnumber是

包中工作流使用的节点类型版本。

issues.[]usedByarray是

包中使用此节点类型和版本的使用方。

结构 24

字段类型必填说明
issues.[]typestring是

可选值:policy-violation

issues.[]sourceWorkflowIdstring是

工作流在包中的 id。

issues.[]namestring是
issues.[]violationsarray是

结构 25

字段类型必填说明
issues.[]typestring是

可选值:credential-policy-violation

issues.[]sourceIdstring是

凭据在包中的 id。

issues.[]targetIdstring否

目标实例上匹配凭据的 id。策略在 credentialConflictPolicy=overwrite 下拒绝更新此凭据时返回;策略拒绝的是导入原本会创建的凭据时不返回。

issues.[]namestring否
issues.[]credentialTypestring是
issues.[]usedByarray是

包中使用此凭据的使用方。

issues.[]violationsarray是

下载完整 OpenAPI 定义(JSON)

Beta:从 n8n 包导入所选工作流子集 ​

**Beta**——即使不提升主版本号,也可能出现破坏性变更。

从 gzip 压缩的 tar 包(`.n8np`)的一个源项目中导入所选工作流子集,而非整个包。使用 multipart 字段 `package` 发送归档。导入采用**增量选择**方式(cherry-pick),绝不移除选择中省略的工作流:仅创建或更新 `selectedWorkflowIds` 指定的工作流,仅删除 `deletedWorkflowIds` 指定的目标工作流。

`selectedProjectId` 指定此次选择所属的单个源项目,使用它在包中的 id。所选工作流写入实例上 id 与源项目相同的项目;项目不存在时创建,没有单独的目标项目字段。`selectedWorkflowIds` 是该项目内的源 id,属于其他项目的 id 会被丢弃。`deletedWorkflowIds` 是同一项目中的目标 id;不存在的 id 视为可接受的空操作,删除需要 `workflow:delete` 作用域。删除 id 不得与任何所选工作流的目标 id 相同,即使 `workflowConflictPolicy=skip` 也不允许;重叠会在任何写入前返回 409。

必须使用项目包,工作流包会以 400 拒绝。选择导入的文件夹、标签和项目冲突策略固定,不接受配置;仅 `workflowConflictPolicy`、`workflowIdPolicy` 和 `overwriteDeletionPolicy` 可配置。最大上传大小为 `N8N_ENDPOINTS_PAYLOAD_SIZE_MAX` MB,默认 16。调用方通过 `workflow:import` 作用域获得授权。

POST/n8n-packages/import-selection

请求参数

参数位置类型必填说明
Idempotency-Keyheaderstring否

此 POST 请求的安全重试键。使用 1 到 128 个可见 ASCII 字符。相同的键配合相同的请求,会返回首次成功的响应。使用此键发送不同请求时返回 422。首次请求仍在处理时重试,会返回 409。

请求体

multipart/form-data

字段类型必填说明
packagestring是

gzip 压缩的 tar 包(.n8np)。

selectedProjectIdstring是

此次选择所属的单个源项目 id,使用它在包中的值。

selectedWorkflowIdsstring是

以 JSON 编码的源工作流 id 数组,指定从 selectedProjectId 导入的工作流,例如 ["wf-1","wf-2"]。允许空数组([]),适合仅删除的请求。不属于指定项目的 id 会被丢弃。

deletedWorkflowIdsstring否

可选的 JSON 编码目标工作流 id 数组,指定从相应项目移除的工作流,例如 ["wf-3"]。即使采用增量方式,仍执行移除,具体方式遵循 overwriteDeletionPolicy,默认归档。不存在的 id 视为空操作,除非它也是选定目标。不得包含所选工作流的目标 id。需要 workflow:delete 作用域。

workflowConflictPolicystring否

所选工作流按源 id 匹配到目标项目现有工作流时如何处理。new-version(默认)更新并创建新版本;fail 在存在任何匹配工作流时拒绝导入;skip 保留匹配工作流不变。更改归档状态还需要 workflow:delete 作用域。

可选值:new-version, fail, skip

默认值:"new-version"

workflowIdPolicystring否

控制新建工作流获得的 id。source(默认)在目标实例上复用包内工作流 id;new 生成新 id,并将包内 id 记录为 sourceWorkflowId。已匹配到现有工作流的工作流,无论策略如何,都保留现有工作流当前的 id。

可选值:new, source

默认值:"source"

overwriteDeletionPolicystring否

如何移除 deletedWorkflowIds 中的 id。archive(默认)将其归档,使工作流及执行历史仍可恢复。hard-delete 先归档以取消发布(仅删除本身不会完成取消发布),然后永久删除工作流及其执行记录。removedWorkflows 中每个条目的 deletion 字段报告实际结果:如果请求 hard-delete,但取消发布延迟了触发器清理,导致记录尚不能删除,则保留为 archived,而不使内容已经写入的导入失败。

可选值:archive, hard-delete

默认值:"archive"

响应

状态码说明
200

操作成功。

400

请求无效,或提供的数据格式错误。

401

未授权

403

禁止访问

404

未找到指定资源。

409

至少存在一项冲突而阻止导入,例如 workflowConflictPolicy=fail 下的工作流源 id 冲突,或选定目标同时被指定删除(workflow-removal-conflict)。

413

内容过大。

415

不支持的媒体类型。

422

仅因非冲突问题而阻止导入,例如调用方无权进行的删除(workflow-removal-forbidden)、未解析的凭据,或实例未安装的节点类型。

500

服务器内部错误。

响应结构:200 · application/json
字段类型必填说明
packageobject是
展开字段
字段类型必填说明
package.sourceN8nVersionstring是
package.sourceIdstring是
package.exportedAtstring是
workflowsarray是
展开字段
字段类型必填说明
workflows.[]sourceWorkflowIdstring是

工作流在包中的 id。

workflows.[]localIdstring是

目标实例上的工作流 id:created 时新建(workflowIdPolicy=new 时生成新 id,source 时使用包中的 id);updated/skipped 时使用现有工作流的 id。

workflows.[]namestring是
workflows.[]projectIdstring是
workflows.[]parentFolderIdstring是
workflows.[]activeVersionIdstring是

目标实例上的已发布版本(如有)。导入后工作流未发布时为 null。

workflows.[]isArchivedboolean是

导入后工作流在目标上是否归档。采用 new-version 时,遵循包中的 isArchived 标记;被跳过的工作流保留自身状态。

workflows.[]publishingobject是

将所选发布策略应用到此工作流的结果。

展开字段
字段类型必填说明
workflows.[]publishing.statestring是

blocked 表示导入版本无法发布,且没有激活版本,例如工作流使用了空白或不完整凭据,或使用实例未安装的节点类型。如果先前发布的版本仍处于激活状态,state 会为 unchanged,并附带 skippedPublishReason。failed 表示尝试了发布或取消发布,但操作未成功。

可选值:published, unpublished, unchanged, blocked, failed

workflows.[]publishing.errorstring否

state 为 failed 时返回,说明无法应用发布或取消发布操作的原因。

workflows.[]publishing.blockedReasonstring否

state 为 blocked 时返回:导入版本无法发布,且没有激活版本。

可选值:stub-credential, incomplete-credential, missing-node-type

workflows.[]publishing.skippedPublishReasonstring否

state 为 unchanged,但策略原本要求发布导入版本时返回:先前发布的版本仍处于激活状态,例如更新后凭据为空或不完整。

可选值:stub-credential, incomplete-credential, missing-node-type

workflows.[]statusstring是

此包中工作流的导入结果。

可选值:created, updated, skipped

removedWorkflowsarray是

此次导入期间从目标移除的工作流。

展开字段
字段类型必填说明
removedWorkflows.[]workflowIdstring是

此实例上被移除工作流的 id。

removedWorkflows.[]namestring是
removedWorkflows.[]projectIdstring是

对工作流进行对齐处理的项目。

removedWorkflows.[]parentFolderIdstring是

工作流原所在文件夹;位于项目根目录时为 null。

removedWorkflows.[]deletionstring是

实际发生的结果,而非 overwriteDeletionPolicy 请求的操作:如果请求 hard-delete,但相应记录尚不能删除,则报告为 archived。

可选值:archived, deleted

removedFoldersarray是

包未定义、且在对齐处理后变为空的文件夹,由 folderConflictPolicy=overwrite 移除。仍包含任何内容的文件夹会保留,因此不会一并清理仅存在于目标的内容。其他策略下始终为空。

展开字段
字段类型必填说明
removedFolders.[]folderIdstring是
removedFolders.[]namestring是
removedFolders.[]projectIdstring是
removedFolders.[]parentFolderIdstring是

原所在文件夹;位于项目根目录时为 null。

foldersarray是

在目标项目中创建或跳过的文件夹结构。

展开字段
字段类型必填说明
folders.[]sourceFolderIdstring是

文件夹在包中的 id。

folders.[]localIdstring是

目标实例上的文件夹 id,等于 sourceFolderId,即复用文件夹 id。

folders.[]namestring是
folders.[]parentFolderIdstring是

目标上解析得到的父文件夹;位于项目根目录时为 null。

folders.[]statusstring是

此包中文件夹的导入结果。

可选值:created, skipped

projectsarray是

创建的项目结构,或匹配后更新或保留原样的项目结构,参见 projectConflictPolicy。项目包中会返回;导入独立工作流或文件夹时为空。

展开字段
字段类型必填说明
projects.[]sourceProjectIdstring是

项目在包中的 id。

projects.[]localIdstring是

目标实例上的项目 id,等于 sourceProjectId,即复用项目 id。

projects.[]namestring是

目标上的项目名称:采用 overwrite 时使用包中的名称,采用 merge 时使用原有名称。

projects.[]statusstring是

此包中项目的导入结果。skipped 表示项目已存在,且 projectConflictPolicy=merge 保留了原项目详情;项目内容仍会导入。

可选值:created, updated, skipped

bindingsobject是

导入产生的源 id → 目标 id 映射,每种实体类型一个映射。每个值都将实体在包中的 id 映射到目标实例上的 id。

展开字段
字段类型必填说明
bindings.workflowsobject是
bindings.credentialsobject是

包清单 requirements.credentials 中的凭据 id → 目标实例上解析得到的凭据 id。同时涵盖匹配的现有凭据,以及通过 credentialMissingMode=create-stub 或 create-with-values 创建的凭据。

credentialsobject是

按解析结果分组的源凭据 id:匹配现有凭据、创建空白占位凭据、创建带初始数据的凭据、创建不完整凭据,或匹配到此次导入已更新的凭据。完整的源→目标 id 映射见 bindings.credentials。

展开字段
字段类型必填说明
credentials.matchedarray是

包中匹配到目标实例现有凭据的源凭据 id。

credentials.stubbedarray是

已在目标项目中为其创建空白占位凭据的源凭据 id。

credentials.seededarray是

已在目标项目中为其创建凭据的源凭据 id;这些凭据包含包内表达式值携带的全部源数据。

credentials.incompletearray是

已在目标项目中使用包内表达式值创建凭据的源凭据 id,但包未确认其包含全部源数据。这些凭据还需补充信息。导入不会发布使用它们的工作流导入版本,原因为 incomplete-credential。

credentials.updatedarray是

此次导入通过 credentialConflictPolicy=overwrite 更改了其匹配凭据的源凭据 id。这些 id 不会列在 matched 中。其他策略下为空。

dataTablesobject是
展开字段
字段类型必填说明
dataTables.matchedinteger是
dataTables.createdinteger是
dataTables.updatedinteger是
variablesobject是

包的变量需求解析结果。仅返回名称,响应绝不包含值。对于项目包,这些数组是在包级别汇总各目标结果得到的并集,可能重叠,例如某名称在一个项目中创建时带有值,在另一个项目中创建为空白占位变量;存在外部并发写入时,只能尽力准确分类。

展开字段
字段类型必填说明
variables.matchedarray是

解析到现有变量且保持不变的变量名,优先查找导入项目作用域,再查找全局作用域。此次导入重写的已解析变量会列在 updated 中。

variables.missingarray是

导入后仍未解析到的变量名。variableMissingMode=do-nothing 下,这些仅为警告:导入仍成功,不创建任何变量。成功的 create-stub 或 create-with-value 导入通常使此列表为空。

variables.createdarray是

通过 variableMissingMode=create-with-value 使用包内值创建的变量名。空白占位变量会列在 stubbed 中。

variables.stubbedarray是

此次导入创建为空值的变量名:使用了 variableMissingMode=create-stub,或 create-with-value 没有可导出的值。其他结果下为空。

variables.updatedarray是

此次导入通过 variableConflictPolicy=overwrite,将其现有值替换为包内值的变量名。其他策略下为空。

tagsobject是

导入工作流引用的标签的解析结果,按源 id 匹配,仅包含标签名称。

展开字段
字段类型必填说明
tags.matchedarray是

解析到 id 和名称均相同的现有标签,按原样附加。

tags.createdarray是

此次导入通过 tagMissingMode=create 创建的标签,按名称列出。

tags.renamedarray是

通过 tagConflictPolicy=rename 重命名为包内名称的目标标签,按新名称列出。

tags.reconciledarray是

发生名称冲突时,通过 tagConflictPolicy=rename 将 id 改为包(源)id 的现有目标标签;其名称、工作流标签关联和文件夹标签关联均保留。

tags.skippedarray是

通过 tagMissingMode=do-nothing 或 tagConflictPolicy=skip 从导入中丢弃的标签:不创建、不重命名,也不附加到任何导入工作流。

响应结构:409 · application/json
字段类型必填说明
messagestring是
issuesarray是
展开字段

结构 1

字段类型必填说明
issues.[]typestring是

可选值:agent-conflict

issues.[]kindstring是

可选值:existing, id, task-id

issues.[]sourceAgentIdstring是
issues.[]projectIdstring是
issues.[]sourceTaskIdstring否
issues.[]targetIdsarray是

结构 2

字段类型必填说明
issues.[]typestring是

可选值:agent-invalid

issues.[]sourceAgentIdstring是
issues.[]pathstring是
issues.[]messagestring是

结构 3

字段类型必填说明
issues.[]typestring是

可选值:agent-dependency-unresolved

issues.[]sourceAgentIdstring是
issues.[]projectIdstring是
issues.[]dependencyTypestring是

可选值:agent, workflow, credential

issues.[]referenceIdstring是
issues.[]pathstring是
issues.[]reasonstring是

可选值:missing, inaccessible, ambiguous, unsupported

结构 4

字段类型必填说明
issues.[]typestring是

可选值:agent-policy-violation

issues.[]sourceAgentIdstring是
issues.[]namestring是
issues.[]violationsarray是

结构 5

字段类型必填说明
issues.[]typestring是

可选值:workflow-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]namestring是

结构 6

字段类型必填说明
issues.[]typestring是

可选值:workflow-lineage-conflict

issues.[]sourceWorkflowIdstring是
issues.[]projectIdstring是
issues.[]existingWorkflowsarray是

结构 7

字段类型必填说明
issues.[]typestring是

可选值:workflow-id-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]existingProjectIdstring是

现有工作流所属的项目;无法确定所属项目时为 null。

issues.[]isArchivedboolean是

现有工作流是否归档。

issues.[]namestring是

结构 8

字段类型必填说明
issues.[]typestring是

可选值:workflow-folder-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]existingParentFolderIdstring是

匹配工作流当前所在的文件夹;位于项目根目录时为 null。

issues.[]targetFolderIdstring是

请求导入到的文件夹;项目包将工作流放在项目根目录时为 null。

issues.[]namestring是

结构 9

字段类型必填说明
issues.[]typestring是

可选值:workflow-archive-forbidden

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]namestring是
issues.[]projectIdstring是

匹配工作流所属的项目。

issues.[]transitionstring是

导入为使工作流与包中状态一致而需要执行的步骤。

可选值:archive, unarchive

结构 10

字段类型必填说明
issues.[]typestring是

可选值:credential-unresolved

issues.[]kindstring是

可选值:not_found, unknown_type, source_not_found, type_mismatch

issues.[]sourceIdstring是
issues.[]targetIdstring否

目标凭据 id:对于 not_found,是无法解析的显式绑定;对于 type_mismatch,是通过显式绑定或自动匹配已解析到、但类型错误的凭据 id。

issues.[]expectedTypestring否

对于 type_mismatch:包中工作流节点需要的凭据类型。

issues.[]actualTypestring否

对于 type_mismatch:已解析目标凭据的实际类型。

issues.[]usedByarray是

结构 11

字段类型必填说明
issues.[]typestring是

可选值:credential-conflict

issues.[]kindstring是

differs:在 credentialConflictPolicy=fail 下,包会更改目标凭据的名称或值。divergent:在 overwrite 下,包内两个或多个名称或值不同的凭据解析到了同一个目标凭据。导入不会代为选择其中之一。

可选值:differs, divergent

issues.[]targetIdstring是

目标凭据的 id。

issues.[]sourceIdsarray是

解析到该目标凭据的包内凭据 id。对于 differs,是会更改该目标凭据的包内凭据。

issues.[]namestring是

目标凭据的名称。

issues.[]usedByarray是

包中使用所列包内凭据的使用方。

结构 12

字段类型必填说明
issues.[]typestring是

可选值:credential-update-forbidden

issues.[]targetIdstring是

目标凭据的 id。

issues.[]sourceIdsarray是

解析到此凭据的包内凭据 id。

issues.[]namestring是

目标凭据的名称。

issues.[]usedByarray是

包中使用所列包内凭据的使用方。

结构 13

字段类型必填说明
issues.[]typestring是

可选值:project-conflict

issues.[]kindstring是

可选值:fail-policy

issues.[]sourceProjectIdstring是
issues.[]namestring是

项目在包中的名称。

结构 14

字段类型必填说明
issues.[]typestring是

可选值:folder-conflict

issues.[]kindstring是

可选值:parent-mismatch, id-in-other-project, fail-policy

issues.[]sourceFolderIdstring是
issues.[]namestring是
issues.[]existingParentFolderIdstring否

对于 parent-mismatch:目标上匹配文件夹的当前父文件夹。

issues.[]expectedParentFolderIdstring否

对于 parent-mismatch:包要求放置该文件夹的父文件夹。

issues.[]existingProjectIdstring否

对于 id-in-other-project:已拥有此 id 的项目。

结构 15

字段类型必填说明
issues.[]typestring是

可选值:workflow-removal-forbidden

issues.[]workflowIdstring是
issues.[]namestring是
issues.[]projectIdstring是

当时对工作流进行对齐处理的项目。

结构 16

字段类型必填说明
issues.[]typestring是

可选值:workflow-removal-conflict

issues.[]sourceWorkflowIdstring是
issues.[]workflowIdstring是

所选工作流的目标 id。

issues.[]projectIdstring是

结构 17

字段类型必填说明
issues.[]typestring是

可选值:folder-removal-forbidden

issues.[]folderIdstring是
issues.[]namestring是
issues.[]projectIdstring是

当时对文件夹进行对齐处理的项目。

结构 18

字段类型必填说明
issues.[]typestring是

可选值:data-table-unresolved

issues.[]kindstring是

可选值:missing, id-conflict, name-conflict, schema-incompatible, module-disabled, permission-denied

issues.[]sourceIdstring否

整个导入层面的失败(module-disabled、permission-denied)不返回此字段。

issues.[]namestring否
issues.[]existingProjectIdstring否

对于 id-conflict:拥有冲突目标表的项目。

issues.[]missingColumnsarray否

对于 schema-incompatible:目标表缺少的包内列。

issues.[]typeMismatchesarray否

对于 schema-incompatible:目标类型不同的包内列。

issues.[]extraColumnsarray否

对于 schema-incompatible,在 fail 策略下:目标上存在、但包内架构中没有的列。

issues.[]overwriteChangesarray否

对于 schema-incompatible:overwrite 将对目标表进行的变更。

issues.[]missingScopestring否

对于 permission-denied:用户缺少的项目作用域。

可选值:dataTable:create, dataTable:update

issues.[]conflictingTableIdstring否

对于 name-conflict:已占用或声明使用该名称的其他表。

issues.[]currentNamestring否

对于重命名的 name-conflict:匹配表的当前名称。

issues.[]usedByarray是

结构 19

字段类型必填说明
issues.[]typestring是

可选值:tag-unresolved

issues.[]kindstring是

可选值:rename-drift, name-collision, invalid-name, invalid-id, permission-denied

issues.[]sourceIdstring否

标签在包中的 id。permission-denied 时不返回。

issues.[]namestring否

包内标签名称,已去除两端空白。permission-denied 时不返回。

issues.[]missingScopestring否

对于 permission-denied:导入用户缺少的全局作用域。

可选值:tag:create, tag:update

issues.[]existingTagIdstring否

存在争用的目标标签 id:当前占用所需名称的其他标签,或原本要在对齐处理中更改 id、但该操作被阻止的目标标签。如果只是两个包内标签彼此冲突,而非争用目标标签,则不返回。

issues.[]existingNamestring否

对于 rename-drift:相同 id 的目标标签当前名称。

issues.[]usedByarray是

包中引用源标签的使用方。不包括被跳过的使用方,也不包括关联到争用目标标签的工作流。

结构 20

字段类型必填说明
issues.[]typestring是

可选值:variable-unresolved

issues.[]namestring是

在目标项目和全局作用域中均无匹配项的需求名称。

issues.[]usedByarray是

结构 21

字段类型必填说明
issues.[]typestring是

可选值:variable-conflict

issues.[]namestring是

值不同的变量名称。

issues.[]projectIdstring否

已解析变量所属的项目;在全局作用域解析到时不返回。

issues.[]usedByarray是

结构 22

字段类型必填说明
issues.[]typestring是

可选值:variable-limit-exceeded

issues.[]limitinteger是

实例变量配额。

issues.[]remaininginteger是

配额内仍可创建的变量行数。导入被阻止是因为 requested 超过此剩余数,而非超过 limit。

issues.[]requestedinteger是

导入原本会创建的新变量行数,已按目标去重。

issues.[]namesarray是

导入原本会创建的唯一变量名称。

issues.[]usedByarray是

包中引用任一所列变量的使用方。

结构 23

字段类型必填说明
issues.[]typestring是

可选值:missing-node-type

issues.[]nodeTypestring是

包中工作流使用的完整节点类型名称。

issues.[]typeVersionnumber是

包中工作流使用的节点类型版本。

issues.[]usedByarray是

包中使用此节点类型和版本的使用方。

结构 24

字段类型必填说明
issues.[]typestring是

可选值:policy-violation

issues.[]sourceWorkflowIdstring是

工作流在包中的 id。

issues.[]namestring是
issues.[]violationsarray是

结构 25

字段类型必填说明
issues.[]typestring是

可选值:credential-policy-violation

issues.[]sourceIdstring是

凭据在包中的 id。

issues.[]targetIdstring否

目标实例上匹配凭据的 id。策略在 credentialConflictPolicy=overwrite 下拒绝更新此凭据时返回;策略拒绝的是导入原本会创建的凭据时不返回。

issues.[]namestring否
issues.[]credentialTypestring是
issues.[]usedByarray是

包中使用此凭据的使用方。

issues.[]violationsarray是
响应结构:422 · application/json
字段类型必填说明
messagestring是
issuesarray是
展开字段

结构 1

字段类型必填说明
issues.[]typestring是

可选值:agent-conflict

issues.[]kindstring是

可选值:existing, id, task-id

issues.[]sourceAgentIdstring是
issues.[]projectIdstring是
issues.[]sourceTaskIdstring否
issues.[]targetIdsarray是

结构 2

字段类型必填说明
issues.[]typestring是

可选值:agent-invalid

issues.[]sourceAgentIdstring是
issues.[]pathstring是
issues.[]messagestring是

结构 3

字段类型必填说明
issues.[]typestring是

可选值:agent-dependency-unresolved

issues.[]sourceAgentIdstring是
issues.[]projectIdstring是
issues.[]dependencyTypestring是

可选值:agent, workflow, credential

issues.[]referenceIdstring是
issues.[]pathstring是
issues.[]reasonstring是

可选值:missing, inaccessible, ambiguous, unsupported

结构 4

字段类型必填说明
issues.[]typestring是

可选值:agent-policy-violation

issues.[]sourceAgentIdstring是
issues.[]namestring是
issues.[]violationsarray是

结构 5

字段类型必填说明
issues.[]typestring是

可选值:workflow-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]namestring是

结构 6

字段类型必填说明
issues.[]typestring是

可选值:workflow-lineage-conflict

issues.[]sourceWorkflowIdstring是
issues.[]projectIdstring是
issues.[]existingWorkflowsarray是

结构 7

字段类型必填说明
issues.[]typestring是

可选值:workflow-id-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]existingProjectIdstring是

现有工作流所属的项目;无法确定所属项目时为 null。

issues.[]isArchivedboolean是

现有工作流是否归档。

issues.[]namestring是

结构 8

字段类型必填说明
issues.[]typestring是

可选值:workflow-folder-conflict

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]existingParentFolderIdstring是

匹配工作流当前所在的文件夹;位于项目根目录时为 null。

issues.[]targetFolderIdstring是

请求导入到的文件夹;项目包将工作流放在项目根目录时为 null。

issues.[]namestring是

结构 9

字段类型必填说明
issues.[]typestring是

可选值:workflow-archive-forbidden

issues.[]sourceWorkflowIdstring是
issues.[]existingWorkflowIdstring是
issues.[]namestring是
issues.[]projectIdstring是

匹配工作流所属的项目。

issues.[]transitionstring是

导入为使工作流与包中状态一致而需要执行的步骤。

可选值:archive, unarchive

结构 10

字段类型必填说明
issues.[]typestring是

可选值:credential-unresolved

issues.[]kindstring是

可选值:not_found, unknown_type, source_not_found, type_mismatch

issues.[]sourceIdstring是
issues.[]targetIdstring否

目标凭据 id:对于 not_found,是无法解析的显式绑定;对于 type_mismatch,是通过显式绑定或自动匹配已解析到、但类型错误的凭据 id。

issues.[]expectedTypestring否

对于 type_mismatch:包中工作流节点需要的凭据类型。

issues.[]actualTypestring否

对于 type_mismatch:已解析目标凭据的实际类型。

issues.[]usedByarray是

结构 11

字段类型必填说明
issues.[]typestring是

可选值:credential-conflict

issues.[]kindstring是

differs:在 credentialConflictPolicy=fail 下,包会更改目标凭据的名称或值。divergent:在 overwrite 下,包内两个或多个名称或值不同的凭据解析到了同一个目标凭据。导入不会代为选择其中之一。

可选值:differs, divergent

issues.[]targetIdstring是

目标凭据的 id。

issues.[]sourceIdsarray是

解析到该目标凭据的包内凭据 id。对于 differs,是会更改该目标凭据的包内凭据。

issues.[]namestring是

目标凭据的名称。

issues.[]usedByarray是

包中使用所列包内凭据的使用方。

结构 12

字段类型必填说明
issues.[]typestring是

可选值:credential-update-forbidden

issues.[]targetIdstring是

目标凭据的 id。

issues.[]sourceIdsarray是

解析到此凭据的包内凭据 id。

issues.[]namestring是

目标凭据的名称。

issues.[]usedByarray是

包中使用所列包内凭据的使用方。

结构 13

字段类型必填说明
issues.[]typestring是

可选值:project-conflict

issues.[]kindstring是

可选值:fail-policy

issues.[]sourceProjectIdstring是
issues.[]namestring是

项目在包中的名称。

结构 14

字段类型必填说明
issues.[]typestring是

可选值:folder-conflict

issues.[]kindstring是

可选值:parent-mismatch, id-in-other-project, fail-policy

issues.[]sourceFolderIdstring是
issues.[]namestring是
issues.[]existingParentFolderIdstring否

对于 parent-mismatch:目标上匹配文件夹的当前父文件夹。

issues.[]expectedParentFolderIdstring否

对于 parent-mismatch:包要求放置该文件夹的父文件夹。

issues.[]existingProjectIdstring否

对于 id-in-other-project:已拥有此 id 的项目。

结构 15

字段类型必填说明
issues.[]typestring是

可选值:workflow-removal-forbidden

issues.[]workflowIdstring是
issues.[]namestring是
issues.[]projectIdstring是

当时对工作流进行对齐处理的项目。

结构 16

字段类型必填说明
issues.[]typestring是

可选值:workflow-removal-conflict

issues.[]sourceWorkflowIdstring是
issues.[]workflowIdstring是

所选工作流的目标 id。

issues.[]projectIdstring是

结构 17

字段类型必填说明
issues.[]typestring是

可选值:folder-removal-forbidden

issues.[]folderIdstring是
issues.[]namestring是
issues.[]projectIdstring是

当时对文件夹进行对齐处理的项目。

结构 18

字段类型必填说明
issues.[]typestring是

可选值:data-table-unresolved

issues.[]kindstring是

可选值:missing, id-conflict, name-conflict, schema-incompatible, module-disabled, permission-denied

issues.[]sourceIdstring否

整个导入层面的失败(module-disabled、permission-denied)不返回此字段。

issues.[]namestring否
issues.[]existingProjectIdstring否

对于 id-conflict:拥有冲突目标表的项目。

issues.[]missingColumnsarray否

对于 schema-incompatible:目标表缺少的包内列。

issues.[]typeMismatchesarray否

对于 schema-incompatible:目标类型不同的包内列。

issues.[]extraColumnsarray否

对于 schema-incompatible,在 fail 策略下:目标上存在、但包内架构中没有的列。

issues.[]overwriteChangesarray否

对于 schema-incompatible:overwrite 将对目标表进行的变更。

issues.[]missingScopestring否

对于 permission-denied:用户缺少的项目作用域。

可选值:dataTable:create, dataTable:update

issues.[]conflictingTableIdstring否

对于 name-conflict:已占用或声明使用该名称的其他表。

issues.[]currentNamestring否

对于重命名的 name-conflict:匹配表的当前名称。

issues.[]usedByarray是

结构 19

字段类型必填说明
issues.[]typestring是

可选值:tag-unresolved

issues.[]kindstring是

可选值:rename-drift, name-collision, invalid-name, invalid-id, permission-denied

issues.[]sourceIdstring否

标签在包中的 id。permission-denied 时不返回。

issues.[]namestring否

包内标签名称,已去除两端空白。permission-denied 时不返回。

issues.[]missingScopestring否

对于 permission-denied:导入用户缺少的全局作用域。

可选值:tag:create, tag:update

issues.[]existingTagIdstring否

存在争用的目标标签 id:当前占用所需名称的其他标签,或原本要在对齐处理中更改 id、但该操作被阻止的目标标签。如果只是两个包内标签彼此冲突,而非争用目标标签,则不返回。

issues.[]existingNamestring否

对于 rename-drift:相同 id 的目标标签当前名称。

issues.[]usedByarray是

包中引用源标签的使用方。不包括被跳过的使用方,也不包括关联到争用目标标签的工作流。

结构 20

字段类型必填说明
issues.[]typestring是

可选值:variable-unresolved

issues.[]namestring是

在目标项目和全局作用域中均无匹配项的需求名称。

issues.[]usedByarray是

结构 21

字段类型必填说明
issues.[]typestring是

可选值:variable-conflict

issues.[]namestring是

值不同的变量名称。

issues.[]projectIdstring否

已解析变量所属的项目;在全局作用域解析到时不返回。

issues.[]usedByarray是

结构 22

字段类型必填说明
issues.[]typestring是

可选值:variable-limit-exceeded

issues.[]limitinteger是

实例变量配额。

issues.[]remaininginteger是

配额内仍可创建的变量行数。导入被阻止是因为 requested 超过此剩余数,而非超过 limit。

issues.[]requestedinteger是

导入原本会创建的新变量行数,已按目标去重。

issues.[]namesarray是

导入原本会创建的唯一变量名称。

issues.[]usedByarray是

包中引用任一所列变量的使用方。

结构 23

字段类型必填说明
issues.[]typestring是

可选值:missing-node-type

issues.[]nodeTypestring是

包中工作流使用的完整节点类型名称。

issues.[]typeVersionnumber是

包中工作流使用的节点类型版本。

issues.[]usedByarray是

包中使用此节点类型和版本的使用方。

结构 24

字段类型必填说明
issues.[]typestring是

可选值:policy-violation

issues.[]sourceWorkflowIdstring是

工作流在包中的 id。

issues.[]namestring是
issues.[]violationsarray是

结构 25

字段类型必填说明
issues.[]typestring是

可选值:credential-policy-violation

issues.[]sourceIdstring是

凭据在包中的 id。

issues.[]targetIdstring否

目标实例上匹配凭据的 id。策略在 credentialConflictPolicy=overwrite 下拒绝更新此凭据时返回;策略拒绝的是导入原本会创建的凭据时不返回。

issues.[]namestring否
issues.[]credentialTypestring是
issues.[]usedByarray是

包中使用此凭据的使用方。

issues.[]violationsarray是

下载完整 OpenAPI 定义(JSON)

Beta:将智能体、工作流、文件夹或项目导出为 n8n 包 ​

**Beta**——即使不提升主版本号,也可能出现破坏性变更。

将智能体、工作流、文件夹或整个项目导出为经 gzip 压缩的 tar
归档(.n8np)。提供 `agentIds`/`workflowIds`/`folderIds`,或 `projectIds`。
两组不可混用。每个导出的文件夹都包括其嵌套
文件夹。启用智能体模块时,整个项目的导出会包含其智能体。
显式选择智能体需要启用智能体模块。空项目仅导出
项目元数据。`versionPolicy` 选择智能体和
工作流的版本,默认为 `latest`。`dependencyPolicy` 应用于这两类实体,
所需定义未包含在包中时,默认为 `fail`。
响应以 `application/gzip` 流式传输,并包含 `Content-Disposition`
附件响应头。需要获得 n8n Packages 功能许可。

API 密钥作用域:显式选择智能体需要 `agent:export`。
显式选择工作流或文件夹需要 `workflow:export`。
导出整个项目只需 `project:export`,其中包括项目的
智能体和工作流。包含的依赖项无需额外 API 密钥作用域。
调用方的项目权限适用于所有包含的实体。当
`includeVariableValues` 为 true(默认),且导出实体引用变量时,
还需要 `variable:list`;未引用变量的导出
无需此作用域。

智能体定义包含引用的技能、自定义工具和计划。
不包含知识库文件和运行时数据。智能体包导入
仍不可用。

POST/n8n-packages/export

请求参数

参数位置类型必填说明
Idempotency-Keyheaderstring否

此 POST 请求的安全重试键。使用 1 到 128 个可见 ASCII 字符。相同的键配合相同的请求,会返回首次成功的响应。使用此键发送不同请求时返回 422。首次请求仍在处理时重试,会返回 409。

请求体

application/json

字段类型必填说明
agentIdsarray否

要包含的智能体 ID,需要启用智能体模块。

workflowIdsarray否

导出包中要包含的工作流 ID。

folderIdsarray否

导出包中要包含的文件夹 ID,每个文件夹连同其嵌套文件夹一起导出。

projectIdsarray否

导出包中要包含的项目 ID,启用智能体模块时包括其智能体。

includeVariableValuesboolean否

是否将导出实体引用的变量值包含在包中。为 false 时,变量仍以名称/类型文件形式包含在包中,并列在包需求中,但包不携带任何变量值。

默认值:true

includeTagsboolean否

是否将导出工作流关联的标签包含在包中。为 false 时,包不携带任何标签文件、标签引用或标签需求。

默认值:true

dependencyPolicystring否

处理所选包内容之外的工作流和智能体依赖项的策略,包括静态工作流引用和已禁用的智能体引用。fail 在所需工作流或智能体未包含在包中时中止导出。include-in-package 递归加入可访问的依赖项。reference-only 记录外部需求,不包含对应定义。相同策略同时适用于工作流和智能体。

可选值:fail, reference-only, include-in-package

默认值:"fail"

versionPolicystring否

包携带的各工作流和智能体版本。latest 导出当前草稿;published-strict 要求存在已发布版本;prefer-published 优先使用已发布版本,没有时使用草稿;ignore-unpublished 跳过未发布的选择项。只有 dependencyPolicy 为 fail 或 include-in-package 时,无法包含的依赖项才导致导出失败;为 reference-only 时,将它们记录为外部需求。所选版本提供定义及其引用。工作流名称、设置和标签始终使用当前值;智能体 ID、名称和 MCP 可用性也始终使用当前值。

可选值:published-strict, prefer-published, ignore-unpublished, latest

默认值:"latest"

credentialExportPolicystring否

是否将凭据数据中的表达式值包含在包中。expression-values-only 包含值为 n8n 表达式的凭据字段,例如 ={{ $secrets.apiKey }};两种方式都绝不携带字面值。no-values 完全排除凭据数据,因此每个凭据文件只携带 id、名称和类型。

可选值:expression-values-only, no-values

默认值:"expression-values-only"

includeArchivedWorkflowsboolean否

文件夹和项目导出是否包含已归档工作流。为 false(默认)时排除;为 true 时,以 isArchived: true 携带,并在导入时归档。workflowIds 中明确列出的工作流始终导出,即使已归档。

默认值:false

响应

状态码说明
200

包含导出包内容的 gzip 压缩 tar 归档。

400

请求无效,或提供的数据格式错误。

401

未授权

403

禁止访问

404

未找到指定资源。

409

冲突

415

不支持的媒体类型。

422

无法处理的实体

下载完整 OpenAPI 定义(JSON)

本文为社区中文翻译。查看对应英文原文