Skip to content

标准参数#

以下是节点基础文件的标准参数。这些参数对所有节点类型都适用。

displayName#

字符串 | 必填

这是用户在 n8n 图形界面中看到的名称。

name#

字符串 | 必填

对象的内部名称。用于从节点的其他位置引用它。

icon#

字符串对象 | 必填

指定节点的图标。n8n 建议上传您自己的图像文件。

您可以提供图标文件名作为字符串,或者作为对象来处理浅色和深色模式下的不同图标。 如果图标在浅色和深色模式下都能使用,可以使用以 file: 开头的字符串,表示图标文件的路径。例如:

1
icon: 'file:exampleNodeIcon.svg'
要为浅色和深色模式提供不同的图标,可以使用带有 lightdark 属性的对象。例如:
1
2
3
4
icon: { 
  light: 'file:exampleNodeIcon.svg', 
  dark: 'file:exampleNodeIcon.dark.svg' 
}

n8n 推荐使用 SVG 格式作为节点图标,但也可以使用 PNG 格式。如果使用 PNG,图标分辨率应为 60x60 像素。节点图标应保持正方形或接近正方形的宽高比。

不要引用 Font Awesome

如果要在节点中使用 Font Awesome 图标,请下载并嵌入该图像。

group#

字符串数组 | 必填

告诉 n8n 节点在工作流运行时如何表现。可选值有:

  • trigger: 节点等待触发器。
  • schedule: 节点等待计时器到期。
  • input, output, transform: 这些目前没有实际效果。
  • 空数组 []。如果不需要 triggerschedule,请使用此默认选项。

description#

字符串 | 必填

节点的简短描述。n8n 会在图形界面中使用这个描述。

defaults#

对象 | 必填

包含品牌和名称的基本设置。

该对象可以包含:

  • name: 字符串。当 displayName 过长时,用作画布上的节点名称。
  • color: 字符串。十六进制颜色代码。提供集成的品牌颜色供 n8n 使用。

forceInputNodeExecution#

布尔值 | 可选

构建多输入节点时,可以选择强制所有分支上的前置节点在该节点运行前执行。默认值为 false(只需一个输入分支运行即可)。

inputs#

字符串数组 | 必填

定义输入连接器名称。控制节点在输入侧拥有的连接器数量。如果只需要一个连接器,使用 input: ['main']

outputs#

字符串数组 | 必填

定义输出连接器名称。控制节点在输出侧拥有的连接器数量。如果只需要一个连接器,使用 output: ['main']

requiredInputs#

整数数组 | 可选

用于多输入节点。通过数字指定必须在节点执行前包含数据的输入(其分支必须运行)。

credentials#

对象数组 | 必填

此参数告知 n8n 凭据选项。每个对象定义一种认证类型。

对象必须包含:

  • name:凭据名称。必须与凭据文件中的 name 属性匹配。例如 Asana.node.ts 中的 name: 'asanaApi' 对应 AsanaApi.credential.ts 中的 name = 'asanaApi'
  • required:布尔值。指定使用此节点是否需要认证。

requestDefaults#

对象 | 必填

为节点发起的 API 调用设置基本信息。

此对象必须包含:

  • baseURL:API 基础 URL。

还可以添加:

  • headers:描述 API 调用头部的对象,例如内容类型。
  • url:字符串。追加到 baseURL 后。通常可以省略此项,更常见的是在 operations 中提供。

properties#

对象数组 | 必需

该属性包含定义节点行为的资源和操作对象,以及设置可接收用户输入的必填和可选字段的对象。

资源对象#

资源对象包含以下参数:

  • displayName: 字符串。该值应始终为 Resource
  • name: 字符串。该值应始终为 resource
  • type: 字符串。告知 n8n 使用哪个 UI 元素及预期的输入类型。例如,options 会使 n8n 添加一个允许用户选择选项的下拉菜单。更多信息请参考节点 UI 元素
  • noDataExpression: 布尔值。阻止对该参数使用表达式。对于 resource 必须始终为 true

操作对象#

操作对象定义了资源上可用的操作。

  • displayName: 字符串。该值应始终为 Options
  • name: 字符串。该值应始终为 option
  • type: 字符串。告知 n8n 使用哪个 UI 元素及预期的输入类型。例如,dateTime 会使 n8n 添加一个日期选择器。更多信息请参考节点 UI 元素
  • noDataExpression: 布尔值。阻止对该参数使用表达式。对于 operation 必须始终为 true
  • options: 对象数组。每个对象描述一个操作的行为,如其路由、使用的 REST 动词等。options 对象包含:
    • name: 字符串。
    • value: 字符串。
    • action: 字符串。该参数结合了资源和操作。您应始终包含它,因为 n8n 将在未来版本中使用它。例如,给定一个名为 "Card" 的资源和一个操作 "Get all",您的 action 应为 "Get all cards"
    • description: 字符串。
    • routing: 包含请求详细信息的对象。

附加字段对象#

这些对象定义了可选参数。n8n 在图形界面中会将这些参数显示在 Additional Fields(附加字段)下,用户可以选择需要设置的参数。

对象必须包含以下结构:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
displayName: 'Additional Fields',
name: 'additionalFields',
// 界面元素类型
type: ''
placeholder: 'Add Field',
default: {},
displayOptions: {
  // 设置该字段适用于哪些资源和操作
  show: {
    resource: [
      // 资源名称
    ],
    operation: [
      // 操作名称
    ]
  },
}

有关界面元素类型的更多信息,请参阅界面元素文档。