Zendesk-Automatisierung (Neue Tickets)
Dies ist ein AI RAG, Multimodal AI-Bereich Automatisierungsworkflow mit 15 Nodes. Hauptsächlich werden If, Set, Webhook, HttpRequest, Agent und andere Nodes verwendet. KI-basierte Zendesk-Support-Antworten (RAG, OpenAI und Supabase-Knowledge-Base)
- •HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
- •Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
- •OpenAI API Key
- •PostgreSQL-Datenbankverbindungsdaten
- •Supabase URL und API Key
Verwendete Nodes (15)
Kategorie
{
"name": "Zendesk Automation (New Tickets)",
"nodes": [
{
"id": "note-webhook",
"name": "Hinweis - Webhook Setup",
"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": "Neue Tickets abrufen",
"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": "Neues Ticket extrahieren",
"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": "Hinweis - Supabase Setup",
"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": "Hinweis - Postgres Memory",
"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 Ticket Memory",
"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": "Hinweis - OpenAI Setup",
"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": "Embeddings 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": "Wissensdatenbank abfragen",
"type": "@n8n/n8n-nodes-langchain.toolVectorStore",
"position": [
-1616,
1008
],
"parameters": {
"name": "content_en",
"topK": 5,
"description": "Contains all KB articles to answer user questions accurately."
},
"typeVersion": 1
},
{
"id": "44147a82-2675-4bef-8b54-53fe90646cb0",
"name": "RAG AI Agent",
"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": "Wenn keine relevanten KB-Einträge gefunden",
"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": "Hinweis - Zendesk Domain",
"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": "Tags hinzufügen (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": "Hinweis - Testing",
"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": {}
}Wie verwende ich diesen Workflow?
Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.
Für welche Szenarien ist dieser Workflow geeignet?
Fortgeschritten - KI RAG, Multimodales KI
Ist es kostenpflichtig?
Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.
Verwandte Workflows
Md Sagor Khan
@meetsagorkhanBuilding 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.
Diesen Workflow teilen