boltx-smtp

n8n community node — SMTP gửi mail với host/user/pass động per-item (multi-tenant). Khớp type với goworker custom executor.

Package Information

Released: 3 mo ago
Downloads: 18 weekly / 173 monthly
Latest Version: 0.1.0
Author: BoltX

Documentation

n8n-nodes-boltx-smtp

Community node n8n cho phép gửi mail SMTP với host / user / password động per-item qua expression — phục vụ multi-tenant (mỗi partner / project có 1 SMTP riêng đọc thẳng từ DB).

Node này có type khớp 1-1 với executor native bên goworker (worker/internal/engine/node_smtp.go, type n8n-nodes-boltx-smtp.smtp). Workflow viết 1 lần chạy đúng trên cả 2 runtime:

  • n8n native (UI test, dev) → execute bằng nodemailer (file này).
  • goworker production → execute bằng net/smtp Go native, không spawn Node.js.

Khác n8n-nodes-base.emailSend

emailSend chuẩn boltx-smtp.smtp
Host/user/pass Credential cố định (1 cred / 1 SMTP) Per-item qua expression ={{ $json.email_host }}
Multi-tenant N partner Tạo N credentials + Switch 1 node đọc thẳng PG

Cài lên n8n self-host

Option A — Community Nodes UI (npm)

  1. cd worker/node-raw/n8n-nodes-boltx-smtp && npm install && npm run build && npm publish (hoặc publish scoped @bolter/n8n-nodes-boltx-smtp).
  2. Trên n8n UI → Settings → Community Nodes → Install → paste n8n-nodes-boltx-smtp → Install.
  3. Restart n8n nếu cần. Node hiện trong palette là "SMTP (BoltX)" category Communication.

Option B — Mount thủ công

npm install --prefix ~/.n8n/nodes n8n-nodes-boltx-smtp
# hoặc copy `dist/` + package.json vào ~/.n8n/nodes/node_modules/n8n-nodes-boltx-smtp/

Restart n8n.

Parameter khớp SMTPNode worker

Param n8n Field worker smtpSendArgs
host host
port port (default 587)
secure secure (TLS ngầm)
username user
password pass
fromEmail from (bắt buộc)
toEmail to (string CSV hoặc array)
ccEmail cc
bccEmail bcc
subject subject
html body + isHTML=true
text body + isHTML=false (fallback khi html rỗng)
options.allowUnauthorizedCerts insecure (mặc định true)
options.requireTLS requireTLS (mặc định true)

Output JSON

{ "success": true, "messageId": "<...>", "accepted": ["a@x", "b@y"], "mode": "html" }

Lỗi: throw NodeOperationError; bật continueOnFail để emit { success:false, error }.

Build local

npm install
npm run build      # tsc + gulp copy icons → dist/
npm run dev        # tsc --watch

Discussion