TinkerLab
ARTIFACT // N8N-WEBHOOK-TRIAGE-GUARD.JSON (JSON)

Webhook 工单分流工作流(含 Schema 校验与死信降级分支) (n8n-webhook-triage-guard.json)

校验入站请求负载、强制结构化 JSON 输出、限制单次 Token 成本,并将异常输出路由至安全降级队列。

[核心实测结论 / TL;DR]本配置包「Webhook 工单分流工作流(含 Schema 校验与死信降级分支)」(文件名:n8n-webhook-triage-guard.json,格式:JSON)是 Tinker AI 实测工坊配套指南《n8n-webhook-ticket-triage》的参数化生产模板。支持在本地浏览器实时定制 Webhook 路径标识 (WEBHOOK_PATH=tinker-ticket-triage)、OpenAI 兼容接口地址 (API_BASE_URL=http://host.docker.internal:11434/v1)、分流模型标识 (TRIAGE_MODEL=qwen2.5:7b) 等 3 项核心变量,默认遵循 127.0.0.1 回环绑定与最小权限规范。
02 // WORKFLOW无代码工作流· 验证日期:2026-10-23
查看全部 42 套配置附件 →
n8n-webhook-triage-guard.json

Webhook 工单分流工作流(含 Schema 校验与死信降级分支)

校验入站请求负载、强制结构化 JSON 输出、限制单次 Token 成本,并将异常输出路由至安全降级队列。

查看配套实测指南 →
参数化定制变量 (Variables — 自动保存在本地浏览器)
UTF-8 编码 · 零延迟实时编译
{
  "name": "Tinker AI — Webhook Ticket Triage with Schema Guard",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "tinker-ticket-triage",
        "responseMode": "lastNode"
      },
      "name": "Inbound Ticket Webhook",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [200, 280]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "http://host.docker.internal:11434/v1/chat/completions",
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={{ JSON.stringify({ model: 'qwen2.5:7b', temperature: 0, max_tokens: 256, response_format: { type: 'json_object' }, messages: [{ role: 'system', content: 'Return JSON with keys: urgency (low|medium|high), department (billing|tech|general), reason (string).' }, { role: 'user', content: String($json.body?.message || '').slice(0, 2000) }] }) }}",
        "options": { "timeout": 30000 }
      },
      "name": "Structured Triage LLM",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "retryOnFail": true,
      "maxTries": 2,
      "continueOnFail": true,
      "position": [460, 280]
    }
  ],
  "connections": {
    "Inbound Ticket Webhook": {
      "main": [[{ "node": "Structured Triage LLM", "type": "main", "index": 0 }]]
    }
  }
}
PARAMETER SPECIFICATION // 参数化变量规范说明表

「n8n-webhook-triage-guard.json」可定制环境变量与默认值说明

本配置模板(JSON 格式)支持 3 项运行时参数注入,所有替换均在本地浏览器内完成。

模板占位符参数用途说明安全默认值填写示例
{{WEBHOOK_PATH}}Webhook 路径标识tinker-ticket-triagetinker-ticket-triage
{{API_BASE_URL}}OpenAI 兼容接口地址http://host.docker.internal:11434/v1http://host.docker.internal:11434/v1
{{TRIAGE_MODEL}}分流模型标识qwen2.5:7bqwen2.5:7b
PAIRED HARDWARE MANIFEST // 配套实测环境与边界记录

配套指南《自动化工单分流工作流:字段校验、死信降级、API 成本预算与最小权限说明》验证基线

实测硬件与操作系统 (Hardware & OS)

Docker n8n 1.76+ · 兼容本地 Ollama `/v1` 或任意 OpenAI 兼容 API

锁定软件栈与模型版本 (Pinned Versions)
n8n 1.76.xOpenAI-Compatible Chat Completions v1qwen2.5:7b / gpt-4o-mini
离线与安全边界 (可配置:纯内网本地模型或云端 API)

处理含用户隐私的工单时,将接口地址指向本地 Ollama `/v1`,即可确保客户数据不出内网。

已知限制与失败边界 (Known Limits)
  • 若不对入站 Webhook 文本做长度截断(如 `.slice(0, 2000)`),恶意超大请求会瞬间撑爆上下文或造成高额账单。
  • 切勿给自动化工作流分配下游系统(飞书/Slack/工单库)的全局管理员密钥,必须遵循最小权限原则。
DEPLOYMENT CHECKLIST // 配置落地核验步骤

部署 n8n-webhook-triage-guard.json 后的 3 步验收清单

  1. 已在节点表达式中强制执行 2,000 字符输入截断与 `max_tokens: 256` 输出上限。
  2. 已核查下游通知/工单系统凭证仅包含目标队列的最小写入权限。
  3. 已通过模拟模型超时或非法 JSON,验证死信降级分支能正常告警而不丢单。