8
n8n 中文网amn8n.com

Zendesk自动化(新建工单)

中级

这是一个AI RAG, Multimodal AI领域的自动化工作流,包含 15 个节点。主要使用 If, Set, Webhook, HttpRequest, Agent 等节点。 基于AI的Zendesk支持响应(RAG、OpenAI和Supabase知识库)

前置要求
  • HTTP Webhook 端点(n8n 会自动生成)
  • 可能需要目标 API 的认证凭证
  • OpenAI API Key
  • PostgreSQL 数据库连接信息
  • Supabase URL 和 API Key
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "name": "Zendesk 自动化(新建工单)",
  "nodes": [
    {
      "id": "note-webhook",
      "name": "注意 - Webhook 设置",
      "type": "n8n-nodes-base.stickyNote",
      "color": "#FFD700",
      "position": [
        -2480,
        640
      ],
      "parameters": {
        "notes": "🔗 Set this webhook URL as a trigger in your Zendesk account under 'Admin → Triggers' so that new tickets are forwarded here."
      },
      "typeVersion": 1
    },
    {
      "id": "180aaaa5-75a9-4573-a300-d87159dfb153",
      "name": "获取新工单",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -2320,
        784
      ],
      "parameters": {
        "path": "zendesk_new_ticket",
        "options": {},
        "httpMethod": "POST"
      },
      "typeVersion": 2
    },
    {
      "id": "ac8ab31e-3c02-4d48-afd0-4a9736a7aa64",
      "name": "提取新工单",
      "type": "n8n-nodes-base.set",
      "position": [
        -2096,
        784
      ],
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "name": "timestamp",
              "type": "string",
              "value": "={{new Date().toLocaleString(\"en-BD\", { timeZone: \"Asia/Dhaka\", dateStyle: \"medium\", timeStyle: \"short\" })}}"
            },
            {
              "name": "ticket_id",
              "type": "string",
              "value": "={{ $json.body.ticket_id }}"
            },
            {
              "name": "ticket_status",
              "type": "string",
              "value": "={{ $json.body.ticket_status }}"
            },
            {
              "name": "requester_id",
              "type": "string",
              "value": "={{ $json.body.requester_id }}"
            },
            {
              "name": "requester_name",
              "type": "string",
              "value": "={{ $json.body.requester_name }}"
            },
            {
              "name": "requester_email",
              "type": "string",
              "value": "={{ $json.body.requester_email }}"
            },
            {
              "name": "subject",
              "type": "string",
              "value": "={{ $json.body.subject }}"
            },
            {
              "name": "description",
              "type": "string",
              "value": "={{ ($json.body.description || \"\").split('\\n\\n').slice(-1)[0].trim() }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "note-supabase",
      "name": "注意 - Supabase 设置",
      "type": "n8n-nodes-base.stickyNote",
      "color": "#9ACD32",
      "position": [
        -1728,
        1344
      ],
      "parameters": {
        "notes": "📚 Replace with your own Supabase project credentials. Ensure you have a 'documents' table with embedded KB content."
      },
      "typeVersion": 1
    },
    {
      "id": "0aa2089e-7346-43b6-a702-630c4849b8c9",
      "name": "Supabase Vector Store",
      "type": "@n8n/n8n-nodes-langchain.vectorStoreSupabase",
      "position": [
        -1728,
        1216
      ],
      "parameters": {
        "options": {
          "queryName": "match_documents"
        },
        "tableName": "documents"
      },
      "credentials": {
        "supabaseApi": {
          "id": "<YOUR_SUPABASE_CREDENTIAL_ID>",
          "name": "Supabase Account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "note-postgres",
      "name": "注意 - Postgres 内存",
      "type": "n8n-nodes-base.stickyNote",
      "color": "#FF7F50",
      "position": [
        -1904,
        928
      ],
      "parameters": {
        "notes": "🗄️ Create a Postgres table `zendesk_ticket_histories` with fields for session context. This allows AI to recall past ticket interactions."
      },
      "typeVersion": 1
    },
    {
      "id": "c227d629-3e39-4445-b3c3-7c52e6827fdf",
      "name": "Postgres 工单内存",
      "type": "@n8n/n8n-nodes-langchain.memoryPostgresChat",
      "position": [
        -1744,
        1008
      ],
      "parameters": {
        "tableName": "zendesk_ticket_histories",
        "sessionKey": "={{ $json.ticket_id }}",
        "sessionIdType": "customKey"
      },
      "credentials": {
        "postgres": {
          "id": "<YOUR_POSTGRES_CREDENTIAL_ID>",
          "name": "Postgres DB"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "note-openai",
      "name": "注意 - OpenAI 设置",
      "type": "n8n-nodes-base.stickyNote",
      "color": "#87CEFA",
      "position": [
        -1680,
        1520
      ],
      "parameters": {
        "notes": "🤖 Add your own OpenAI API key in the credential settings. Adjust model if desired (gpt-4o, gpt-4o-mini, etc.)."
      },
      "typeVersion": 1
    },
    {
      "id": "89663ccb-065d-4211-9c26-1770f60984f0",
      "name": "OpenAI 嵌入",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        -1648,
        1424
      ],
      "parameters": {
        "model": "text-embedding-3-small",
        "options": {
          "dimensions": 1536
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "<YOUR_OPENAI_CREDENTIAL_ID>",
          "name": "OpenAI API"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "5d009f5e-2a9c-4036-a382-9e5180e677a7",
      "name": "检索知识库",
      "type": "@n8n/n8n-nodes-langchain.toolVectorStore",
      "position": [
        -1616,
        1008
      ],
      "parameters": {
        "name": "content_en",
        "topK": 5,
        "description": "包含所有知识库文章,用于准确回答用户问题。"
      },
      "typeVersion": 1
    },
    {
      "id": "44147a82-2675-4bef-8b54-53fe90646cb0",
      "name": "RAG AI 智能体",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -1824,
        784
      ],
      "parameters": {
        "text": "={{ $json.description }}",
        "options": {
          "maxIterations": 2,
          "systemMessage": "=You are a professional support assistant. Use only the retrieved knowledge base documents to answer the customer’s ticket clearly, formally, and concisely."
        },
        "promptType": "define"
      },
      "typeVersion": 1.6
    },
    {
      "id": "510b8014-8a8b-4fde-846f-4dd82554ac74",
      "name": "如果未找到相关知识库",
      "type": "n8n-nodes-base.if",
      "position": [
        -1232,
        784
      ],
      "parameters": {
        "conditions": {
          "conditions": [
            {
              "operator": {
                "type": "string",
                "operation": "contains"
              },
              "leftValue": "={{ $('RAG AI Agent').item.json.output }}",
              "rightValue": "will get back to you shortly"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "note-zendesk",
      "name": "注意 - Zendesk 域名",
      "type": "n8n-nodes-base.stickyNote",
      "color": "#FFA07A",
      "position": [
        -896,
        704
      ],
      "parameters": {
        "notes": "🏷️ Update `<YOUR_ZENDESK_DOMAIN>` with your Zendesk subdomain. Example: `https://mycompany.zendesk.com/...`"
      },
      "typeVersion": 1
    },
    {
      "id": "e99c3f1f-cc58-4638-8ddd-65df1998197c",
      "name": "添加标签(ai_reply)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -784,
        880
      ],
      "parameters": {
        "url": "=https://<YOUR_ZENDESK_DOMAIN>/api/v2/tickets/{{ $('Extract New Ticket').first().json.ticket_id }}/tags.json",
        "method": "PUT",
        "jsonBody": "{ \"tags\": [\"ai_reply\"] }",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "nodeCredentialType": "zendeskApi"
      },
      "credentials": {
        "zendeskApi": {
          "id": "<YOUR_ZENDESK_CREDENTIAL_ID>",
          "name": "Zendesk Account"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "note-test",
      "name": "注意 - 测试",
      "type": "n8n-nodes-base.stickyNote",
      "color": "#BA55D3",
      "position": [
        -720,
        1200
      ],
      "parameters": {
        "notes": "✅ After setup, create a sample ticket in Zendesk to test:\n- Does AI reply appear?\n- Correct tags (`ai_reply` / `human_requested`)?\n- Memory stored in Postgres?\nIf yes → workflow is ready!"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "connections": {}
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

中级 - AI RAG 检索增强, 多模态 AI

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
中级
节点数量15
分类2
节点类型10
难度说明

适合有一定经验的用户,包含 6-15 个节点的中等复杂度工作流

作者
Md Sagor Khan

Md Sagor Khan

@meetsagorkhan

Building smart automations with n8n to save time and reduce repetitive work. I create ready-to-use workflows for businesses and creators who want to focus on what matters most.

外部链接
在 n8n.io 查看

分享此工作流