Skip to content

Standard parameters#

นี่คือ parameters มาตรฐานสำหรับ node base file ซึ่งใช้เหมือนกันกับ node ทุกประเภท

displayName#

String | Required

ชื่อนี้จะแสดงให้ผู้ใช้เห็นใน GUI ของ n8n

name#

String | Required

ชื่อภายในของ object ใช้สำหรับอ้างอิงจากที่อื่นใน node

icon#

String หรือ Object | Required

กำหนด icon สำหรับ node นั้น ๆ แนะนำให้อัปโหลดไฟล์ภาพของตัวเอง

สามารถใส่ชื่อไฟล์ icon เป็น string หรือเป็น object เพื่อรองรับทั้ง light และ dark mode ถ้า icon ใช้ได้ทั้งสองโหมด ให้ใช้ string ที่ขึ้นต้นด้วย file: เพื่อบอก path ของไฟล์ icon เช่น

1
icon: 'file:exampleNodeIcon.svg'
ถ้าต้องการแยก icon สำหรับ light/dark mode ให้ใช้ object แบบนี้:
1
2
3
4
icon: { 
  light: 'file:exampleNodeIcon.svg', 
  dark: 'file:exampleNodeIcon.dark.svg' 
}

n8n แนะนำให้ใช้ SVG สำหรับไอคอน node ของคุณ แต่คุณสามารถใช้ PNG ได้เช่นกัน หากใช้ PNG ความละเอียดของไอคอนควรเป็น 60x60px ไอคอน Node ควรมีอัตราส่วนภาพสี่เหลี่ยมจัตุรัสหรือเกือบสี่เหลี่ยมจัตุรัส

อย่าอ้างอิง Font Awesome

หากคุณต้องการใช้ไอคอน Font Awesome ใน node ของคุณ ให้ดาวน์โหลดและฝังรูปภาพนั้น

group#

Array of strings | Required

บอก n8n ว่า node นี้ทำงานแบบไหนตอน workflow รัน ตัวเลือกมีดังนี้:

  • trigger: node จะรอ event trigger
  • schedule: node จะรอ timer หมดเวลา
  • input, output, transform: ตอนนี้ยังไม่มีผล
  • ถ้าไม่ต้องการ trigger หรือ schedule ให้ใช้ array ว่าง [] เป็นค่า default

description#

String | Required

คำอธิบายสั้น ๆ ของ node ซึ่งจะแสดงใน GUI ของ n8n

defaults#

Object | Required

เก็บค่าต่าง ๆ ที่จำเป็นเกี่ยวกับ brand และชื่อ

object นี้จะมี:

  • name: String. ใช้เป็นชื่อ node บน canvas ถ้า displayName ยาวเกินไป
  • color: String. รหัสสี Hex ใส่สีประจำแบรนด์ของ integration เพื่อใช้ใน n8n

forceInputNodeExecution#

Boolean | Optional

ถ้าสร้าง node ที่มีหลาย input สามารถเลือกได้ว่าจะให้ node ก่อนหน้าทุก branch ต้อง execute ก่อน node นี้จะรันหรือไม่ ค่า default คือ false (แค่ branch เดียวรันก็พอ)

inputs#

Array of strings | Required

ตั้งชื่อ input connectors ควบคุมจำนวน connectors ที่ node มีฝั่ง input ถ้ามีแค่ 1 connector ให้ใช้ input: ['main']

outputs#

Array of strings | Required

ตั้งชื่อ output connectors ควบคุมจำนวน connectors ที่ node มีฝั่ง output ถ้ามีแค่ 1 connector ให้ใช้ output: ['main']

requiredInputs#

Integer หรือ Array | Optional

ใช้กับ node ที่มีหลาย input ระบุหมายเลข input ที่ต้องมีข้อมูล (branch นั้นต้องรัน) ก่อน node จะ execute

credentials#

Array of objects | Required

parameter นี้บอก n8n ว่ามี credential อะไรบ้าง แต่ละ object จะกำหนดประเภท authentication

object ต้องมี:

  • name: ชื่อ credential ต้องตรงกับ property name ใน credential file เช่น name: 'asanaApi' ใน Asana.node.ts จะลิงก์กับ name = 'asanaApi' ใน AsanaApi.credential.ts
  • required: Boolean. ระบุว่า authentication จำเป็นต้องใช้กับ node นี้หรือไม่

requestDefaults#

Object | Required

ตั้งค่าข้อมูลพื้นฐานสำหรับ API call ที่ node จะใช้

object นี้ต้องมี:

  • baseURL: URL หลักของ API

นอกจากนี้ยังเพิ่มได้:

  • headers: object สำหรับ headers ของ API call เช่น content type
  • url: string. ต่อท้าย baseURL ปกติจะไม่ต้องใส่ ตรงนี้มักจะกำหนดใน operations มากกว่า

properties#

Array of objects | Required

เก็บ resource และ operations objects ที่กำหนดพฤติกรรมของ node รวมถึง object สำหรับตั้งค่าฟิลด์บังคับและฟิลด์เสริมที่รับ input จากผู้ใช้

Resource objects#

object resource จะมี parameter ดังนี้:

  • displayName: String. ควรเป็น Resource เสมอ
  • name: String. ควรเป็น resource เสมอ
  • type: String. บอก n8n ว่าใช้ UI element อะไร และรับ input แบบไหน เช่น options จะทำให้ n8n สร้าง dropdown ให้เลือก option ดูรายละเอียดที่ Node UI elements
  • noDataExpression: Boolean. ป้องกันการใช้ expression กับ parameter นี้ ต้องเป็น true เสมอสำหรับ resource

Operations objects#

object operations จะกำหนด operation ที่ใช้ได้กับ resource

  • displayName: String. ควรเป็น Options เสมอ
  • name: String. ควรเป็น operation เสมอ
  • type: String. บอก n8n ว่าใช้ UI element อะไร เช่น dateTime จะทำให้มี date picker ดูรายละเอียดที่ Node UI elements
  • noDataExpression: Boolean. ป้องกันการใช้ expression กับ parameter นี้ ต้องเป็น true เสมอสำหรับ operation
  • options: Array of objects. แต่ละ object จะอธิบายพฤติกรรมของ operation เช่น routing, REST verb ที่ใช้ ฯลฯ โดยใน options object จะมี:
    • name. String.
    • value. String.
    • action: String. parameter นี้จะรวม resource กับ operation ควรใส่ไว้เสมอ เพราะ n8n จะใช้ในอนาคต เช่น resource ชื่อ "Card" กับ operation "Get all" action จะเป็น "Get all cards"
    • description: String.
    • routing: Object ที่มีรายละเอียดของ request

Additional fields objects#

object เหล่านี้จะกำหนด parameter เสริม n8n จะแสดงใน GUI ใต้หัวข้อ Additional Fields ผู้ใช้เลือกได้ว่าจะตั้งค่าหรือไม่

object ต้องมี:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
displayName: 'Additional Fields',
name: 'additionalFields',
// The UI element type
type: ''
placeholder: 'Add Field',
default: {},
displayOptions: {
  // Set which resources and operations this field is available for
  show: {
    resource: [
      // Resource names
    ],
    operation: [
      // Operation names
    ]
  },
}

ดูรายละเอียด UI element types เพิ่มเติมได้ที่ UI elements