Jotform
고급
이것은자동화 워크플로우로, 18개의 노드를 포함합니다.주로 Gmail, Switch, Telegram, GoogleSheets, JotFormTrigger 등의 노드를 사용하며. Gemini, Jotform, Google Sheets 및 Gmail 응답을 사용한 자동화된 고객 피드백 트라이어지
사전 요구사항
- •Google 계정 및 Gmail API 인증 정보
- •Telegram Bot Token
- •Google Sheets API 인증 정보
- •Google Gemini API Key
사용된 노드 (18)
카테고리
-
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "REDACTED",
"meta": {
"instanceId": "REDACTED",
"templateCredsSetupCompleted": true
},
"name": "Jotform",
"tags": [],
"nodes": [
{
"id": "db688133-4596-47b2-9d63-5e91bc73753f",
"name": "JotForm 트리거",
"type": "n8n-nodes-base.jotFormTrigger",
"position": [
-224,
-16
],
"webhookId": "REDACTED",
"parameters": {
"form": "REDACTED"
},
"credentials": {
"jotFormApi": {
"id": "REDACTED",
"name": "REDACTED"
}
},
"typeVersion": 1
},
{
"id": "9ebab0dd-5bac-443a-98ab-d30eff4b458a",
"name": "스위치",
"type": "n8n-nodes-base.switch",
"position": [
16,
-32
],
"parameters": {
"rules": {
"values": [
{
"outputKey": "comments",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "8868d5a6-f386-4f9d-bb65-b4373617bbf6",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json['Feedback Type'].toLowerCase() }}",
"rightValue": "comments"
}
]
},
"renameOutput": true
},
{
"outputKey": "questions",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "6a821715-e994-4e85-8da3-9ba3b8e98bb5",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json['Feedback Type'].toLowerCase() }}",
"rightValue": "questions"
}
]
},
"renameOutput": true
},
{
"outputKey": "suggestions",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "3eca34e9-2a95-424c-bfe7-2e2aa6092492",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json['Feedback Type'].toLowerCase() }}",
"rightValue": "suggestions"
}
]
},
"renameOutput": true
}
]
},
"options": {}
},
"typeVersion": 3.3
},
{
"id": "efa026b3-0b2e-4ee7-8074-493902a91265",
"name": "Google Gemini 채팅 모델",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
336,
-176
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "REDACTED",
"name": "REDACTED"
}
},
"typeVersion": 1
},
{
"id": "75bd3135-b303-4fed-95e4-50c2f8950f1a",
"name": "Google Gemini 채팅 모델1",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
480,
544
],
"parameters": {
"options": {
"temperature": 0.4
}
},
"credentials": {
"googlePalmApi": {
"id": "REDACTED",
"name": "REDACTED"
}
},
"typeVersion": 1
},
{
"id": "631e6076-06f9-44c7-b2d3-2b9ed406cc5f",
"name": "감정 분석",
"type": "@n8n/n8n-nodes-langchain.sentimentAnalysis",
"position": [
368,
-448
],
"parameters": {
"options": {},
"inputText": "={{ $json['Describe Your Feedback:'] }}"
},
"typeVersion": 1.1
},
{
"id": "6b25a8c3-85c3-422b-8128-416afe44b98a",
"name": "지원 그룹으로 전송",
"type": "n8n-nodes-base.telegram",
"position": [
912,
-272
],
"webhookId": "REDACTED",
"parameters": {
"text": "=🚨Customer Angry🚨\n\nName: {{ $json.Name.first }} {{ $json.Name.last }}\nEmail: {{ $json['E-mail'] }}\n\nMessage: {{ $json['Describe Your Feedback:'] }}\n\nPlease reach out immediately — your SLA is only 6 hours.\n\n",
"chatId": "REDACTED",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "REDACTED",
"name": "REDACTED"
}
},
"typeVersion": 1.2
},
{
"id": "a0399c2f-8d4a-4ac5-ac55-7c086fd74f7b",
"name": "고객 답변",
"type": "n8n-nodes-base.gmail",
"position": [
1056,
-32
],
"webhookId": "REDACTED",
"parameters": {
"sendTo": "={{ $('Switch').item.json['E-mail'] }}",
"message": "=<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>AquaPure Smart Bottle Response</title>\n <style>\n body {\n font-family: Arial, Helvetica, sans-serif;\n background-color: #f6f8fa;\n color: #333;\n margin: 0;\n padding: 0;\n }\n .email-container {\n max-width: 600px;\n margin: 30px auto;\n background: #ffffff;\n padding: 24px;\n border-radius: 8px;\n box-shadow: 0 2px 8px rgba(0,0,0,0.05);\n }\n p {\n line-height: 1.6;\n margin: 0 0 12px;\n }\n .question, .answer {\n background-color: #f1f5f9;\n padding: 12px;\n border-radius: 6px;\n margin-bottom: 16px;\n }\n .footer {\n margin-top: 24px;\n font-size: 14px;\n color: #666;\n }\n </style>\n</head>\n<body>\n <div class=\"email-container\">\n <p>\n Dear {{ $('Switch').item.json.Name.first }} {{ $('Switch').item.json.Name.last }},\n </p>\n\n <p>Thank you for your interest in <strong>AquaPure Smart Bottle</strong>.</p>\n\n <div class=\"question\">\n <strong>Question:</strong><br>\n {{ $('Switch').item.json['Describe Your Feedback:'] }}\n </div>\n\n <div class=\"answer\">\n <strong>Answer:</strong><br>\n {{ $json.output }}\n </div>\n\n <p class=\"footer\">\n Best regards,<br>\n <strong>Jotform</strong>\n </p>\n </div>\n</body>\n</html>",
"options": {},
"subject": "=AquaPure Smart Bottle - {{ $('Switch').item.json['Describe Your Feedback:'] }}"
},
"credentials": {
"gmailOAuth2": {
"id": "REDACTED",
"name": "REDACTED"
}
},
"typeVersion": 2.1
},
{
"id": "723d81fc-924b-46d2-b146-3544470daaa0",
"name": "데이터베이스 읽기",
"type": "n8n-nodes-base.googleSheetsTool",
"position": [
848,
112
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "REDACTED",
"cachedResultName": "qna"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": "REDACTED"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "REDACTED",
"name": "REDACTED"
}
},
"typeVersion": 4.7
},
{
"id": "5607dc4f-d50f-4425-824e-2462bf09ce20",
"name": "QnA 에이전트",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
624,
-32
],
"parameters": {
"text": "=user: {{ $json['Describe Your Feedback:'] }}",
"options": {
"systemMessage": "=# Role\n- you're a helpful assistant to answer user question\n- always respond in warm tone\n\n# Context\n- you must read the google sheets for getting the answer\n- paraphrase the result so user can easily understand\n\n# Important restrictions\n- keep polite and use a proper language"
},
"promptType": "define"
},
"typeVersion": 2.2
},
{
"id": "5162281b-fe6d-454d-88a4-7667b3b8d5c8",
"name": "제안 요약",
"type": "@n8n/n8n-nodes-langchain.chainSummarization",
"position": [
288,
272
],
"parameters": {
"options": {}
},
"typeVersion": 2.1
},
{
"id": "97913d99-2fe8-4afa-97b6-39627337f11a",
"name": "문자 메시지 전송",
"type": "n8n-nodes-base.telegram",
"position": [
656,
320
],
"webhookId": "REDACTED",
"parameters": {
"text": "=Suggestions from {{ $('Switch').item.json.Name.first }} {{ $('Switch').item.json.Name.last }}\nEmail: {{ $('Switch').item.json['E-mail'] }}\n\nSummary: {{ $json.output.text }}\n\nFull: {{ $('Switch').item.json['Describe Your Feedback:'] }}",
"chatId": "REDACTED",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "REDACTED",
"name": "REDACTED"
}
},
"typeVersion": 1.2
},
{
"id": "43158b87-1336-417d-bbd0-6245f6adaa8e",
"name": "제안 백로그에 추가",
"type": "n8n-nodes-base.googleSheets",
"position": [
880,
320
],
"parameters": {
"columns": {
"value": {
"Name": "={{ $('Switch').item.json.Name.first }} {{ $('Switch').item.json.Name.last }}",
"Email": "={{ $('Switch').item.json['E-mail'] }}",
"Summary": "={{ $('Summarize Suggestions').item.json.output.text }}",
"Suggestions": "={{ $('Switch').item.json['Describe Your Feedback:'] }}",
"Created Date": "={{ DateTime.now().format('yyyy-MM-dd') }}"
},
"schema": [
{
"id": "Created Date",
"type": "string",
"display": true,
"required": false,
"displayName": "Created Date",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Name",
"type": "string",
"display": true,
"required": false,
"displayName": "Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Email",
"type": "string",
"display": true,
"required": false,
"displayName": "Email",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Summary",
"type": "string",
"display": true,
"required": false,
"displayName": "Summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Suggestions",
"type": "string",
"display": true,
"required": false,
"displayName": "Suggestions",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 2139811359,
"cachedResultUrl": "REDACTED",
"cachedResultName": "suggestions"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": "REDACTED"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "REDACTED",
"name": "REDACTED"
}
},
"typeVersion": 4.7
},
{
"id": "4a67e4c3-13c7-497c-9ed4-bdf81123e0d2",
"name": "댓글 시트에 저장",
"type": "n8n-nodes-base.googleSheets",
"position": [
1072,
-448
],
"parameters": {
"columns": {
"value": {
"Name": "={{ $json.Name.first }} {{ $json.Name.last }}",
"Email": "={{ $json['E-mail'] }}",
"Comments": "={{ $json['Describe Your Feedback:'] }}",
"Sentiment": "={{ $json.sentimentAnalysis.category }}",
"Created Date": "={{ DateTime.now().format('yyyy-MM-dd') }}"
},
"schema": [
{
"id": "Created Date",
"type": "string",
"display": true,
"required": false,
"displayName": "Created Date",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Name",
"type": "string",
"display": true,
"required": false,
"displayName": "Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Email",
"type": "string",
"display": true,
"required": false,
"displayName": "Email",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Sentiment",
"type": "string",
"display": true,
"required": false,
"displayName": "Sentiment",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Comments",
"type": "string",
"display": true,
"required": false,
"displayName": "Comments",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {
"useAppend": false
},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 903321638,
"cachedResultUrl": "REDACTED",
"cachedResultName": "comments"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "REDACTED",
"cachedResultUrl": "REDACTED",
"cachedResultName": "database"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "REDACTED",
"name": "REDACTED"
}
},
"typeVersion": 4.7
},
{
"id": "ab563cfb-ecef-4221-8496-dc5a2b8698ef",
"name": "스티커 메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
-576,
-560
],
"parameters": {
"width": 624,
"height": 368,
"content": "## Jotform feedback triage & auto-reply system\n\nThis workflow turns Jotform submissions into an automated triage pipeline:\n\nClassifies feedback (comment / question / suggestion) and runs sentiment.\n\n🚨 Urgent/angry messages → instant Telegram alert to support.\n\n❓ Questions → an LLM Q&A agent pulls answers from a Google Sheets knowledge base, then Gmail sends a friendly HTML reply.\n\n💡 Suggestions → auto-summary, Telegram heads-up, and logging into a Suggestions sheet.\n\n🗒️ Comments → appended to a Comments sheet for reporting.\nSetup tips: Rename nodes, keep credentials in node creds (not hard-coded), and store user-config variables in one Set node. Remove any personal IDs before sharing."
},
"typeVersion": 1
},
{
"id": "5b8aa98c-defd-400b-925d-9e4fef08d4fc",
"name": "스티커 메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-560,
160
],
"parameters": {
"color": 7,
"width": 368,
"height": 208,
"content": "## New submission from Jotform\n\nStarts when a new Jotform entry arrives (Name, E-mail, “Describe Your Feedback”). Map these form fields in your trigger node so they’re available to all branches."
},
"typeVersion": 1
},
{
"id": "cfcb0f6c-8465-4669-8d87-d8aafd110312",
"name": "스티커 메모2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1312,
-96
],
"parameters": {
"color": 7,
"width": 544,
"height": 320,
"content": "## Answer with Q&A agent + email reply\n\nRead Database (Google Sheets Tool) loads your Q&A table (FAQ) for grounding. Point documentId + sheetName to your knowledge base. \n\nQnA Agent (LangChain) generates a paraphrased, user-friendly answer using the sheet as context. \n\nReply Customer (Gmail) sends a styled HTML email with the answer and the original question snippet. Replace the branding/text as needed. "
},
"typeVersion": 1
},
{
"id": "7a738f93-72bd-4293-a412-63d55c8f1fa3",
"name": "스티커 메모3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1024,
496
],
"parameters": {
"color": 7,
"width": 544,
"height": 320,
"content": "## Summarize + alert + log\n\nSummarize Suggestions condenses the idea into an executive summary. \n\nTelegram heads-up posts the summary + full text to your product/channel chat. \n\nAppend to Suggestions (Google Sheets) writes Summary, Suggestion, Email, Name, Created Date. Update the sheet URL/ID and column mapping if your schema differs. \n"
},
"typeVersion": 1
},
{
"id": "64d78b26-1e32-481f-ab8b-7639f296f2a6",
"name": "스티커 메모4",
"type": "n8n-nodes-base.stickyNote",
"position": [
544,
-704
],
"parameters": {
"color": 7,
"width": 512,
"height": 144,
"content": "## Log for reporting\n\nAppends general comments to your Comments sheet with Name, Email, Sentiment, and the raw message. Use this for dashboards or periodic reviews."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "8fce1e13-e7cb-4e2e-9d50-9e4c0fb8e927",
"connections": {
"9ebab0dd-5bac-443a-98ab-d30eff4b458a": {
"main": [
[
{
"node": "631e6076-06f9-44c7-b2d3-2b9ed406cc5f",
"type": "main",
"index": 0
}
],
[
{
"node": "5607dc4f-d50f-4425-824e-2462bf09ce20",
"type": "main",
"index": 0
}
],
[
{
"node": "5162281b-fe6d-454d-88a4-7667b3b8d5c8",
"type": "main",
"index": 0
}
]
]
},
"5607dc4f-d50f-4425-824e-2462bf09ce20": {
"main": [
[
{
"node": "a0399c2f-8d4a-4ac5-ac55-7c086fd74f7b",
"type": "main",
"index": 0
}
]
]
},
"723d81fc-924b-46d2-b146-3544470daaa0": {
"ai_tool": [
[
{
"node": "5607dc4f-d50f-4425-824e-2462bf09ce20",
"type": "ai_tool",
"index": 0
}
]
]
},
"db688133-4596-47b2-9d63-5e91bc73753f": {
"main": [
[
{
"node": "9ebab0dd-5bac-443a-98ab-d30eff4b458a",
"type": "main",
"index": 0
}
]
]
},
"631e6076-06f9-44c7-b2d3-2b9ed406cc5f": {
"main": [
[
{
"node": "4a67e4c3-13c7-497c-9ed4-bdf81123e0d2",
"type": "main",
"index": 0
}
],
[
{
"node": "4a67e4c3-13c7-497c-9ed4-bdf81123e0d2",
"type": "main",
"index": 0
}
],
[
{
"node": "6b25a8c3-85c3-422b-8128-416afe44b98a",
"type": "main",
"index": 0
}
]
]
},
"97913d99-2fe8-4afa-97b6-39627337f11a": {
"main": [
[
{
"node": "43158b87-1336-417d-bbd0-6245f6adaa8e",
"type": "main",
"index": 0
}
]
]
},
"6b25a8c3-85c3-422b-8128-416afe44b98a": {
"main": [
[
{
"node": "4a67e4c3-13c7-497c-9ed4-bdf81123e0d2",
"type": "main",
"index": 0
}
]
]
},
"5162281b-fe6d-454d-88a4-7667b3b8d5c8": {
"main": [
[
{
"node": "97913d99-2fe8-4afa-97b6-39627337f11a",
"type": "main",
"index": 0
}
]
]
},
"4a67e4c3-13c7-497c-9ed4-bdf81123e0d2": {
"main": [
[]
]
},
"efa026b3-0b2e-4ee7-8074-493902a91265": {
"ai_languageModel": [
[
{
"node": "631e6076-06f9-44c7-b2d3-2b9ed406cc5f",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"75bd3135-b303-4fed-95e4-50c2f8950f1a": {
"ai_languageModel": [
[
{
"node": "5607dc4f-d50f-4425-824e-2462bf09ce20",
"type": "ai_languageModel",
"index": 0
},
{
"node": "5162281b-fe6d-454d-88a4-7667b3b8d5c8",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
JOTFORM IT 서비스 요청
Jotform, Gemini AI 및 Google Workspace를 사용하여 IT 요청을 분류하고 처리
Set
Gmail
Telegram
+
Set
Gmail
Telegram
13 노드Rully Saputra
티켓 관리
Google Analytics 인사이트
Gemini AI를 사용한 Google Analytics 데이터 자동 분석 및 스마트 Gmail/Telegram 라우팅
Gmail
Telegram
Aggregate
+
Gmail
Telegram
Aggregate
15 노드Rully Saputra
시장 조사
비즈니스 일일 지표 모니터링
Gemini를 사용하여 스프레드시트에서 판매 인사이트 자동 생성 및 팀에 즉시 알림
Code
Gmail
Trello
+
Code
Gmail
Trello
15 노드Rully Saputra
고객관계관리
시각화 참조 라이브러리에서 n8n 노드를 탐색
可视化 참조 라이브러리에서 n8n 노드를 탐색
If
Ftp
Set
+
If
Ftp
Set
113 노드I versus AI
기타
버그 문제
Gemini 기반 AI 주도 버그 추적, GitHub Issues 및 Telegram 알림 통합
If
Set
Gmail
+
If
Set
Gmail
16 노드Rully Saputra
프로젝트 관리
基于 GPT、LangChain 및스마트路由의 AI 驱动고객服务자동화
AI驱动고객服务자동화,基于GPT、LangChain및스마트路由
Set
Gmail
Merge
+
Set
Gmail
Merge
46 노드Paul
지원
워크플로우 정보
난이도
고급
노드 수18
카테고리-
노드 유형11
저자
Rully Saputra
@rullysaputra15Specializing in software engineering with over 5 years of hands-on experience. In addition to my expertise in web development, I also have experience in creating Hybrid mobile apps.
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유