고객 피드백 루프 분석기
중급
이것은Miscellaneous, AI Summarization, Multimodal AI분야의자동화 워크플로우로, 11개의 노드를 포함합니다.주로 Code, Gmail, Slack, Switch, FormTrigger 등의 노드를 사용하며. AI, Google 스프레드시트 및 Slack 알림을 사용한 고객 피드백 자동 분류
사전 요구사항
- •Google 계정 및 Gmail API 인증 정보
- •Slack Bot Token 또는 Webhook URL
- •Google Sheets API 인증 정보
- •Google Gemini API Key
사용된 노드 (11)
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "bAczIXMBSsZulax7",
"meta": {
"instanceId": "14e4c77104722ab186539dfea5182e419aecc83d85963fe13f6de862c875ebfa",
"templateCredsSetupCompleted": true
},
"name": "Customer Feedback Loop Analyzer",
"tags": [],
"nodes": [
{
"id": "0aeba1ed-f179-4a69-ad06-23bdf6ed1c4d",
"name": "폼 제출 시",
"type": "n8n-nodes-base.formTrigger",
"position": [
220,
100
],
"webhookId": "",
"parameters": {
"options": {},
"formTitle": "Customer Review",
"formFields": {
"values": [
{
"fieldLabel": "Name",
"requiredField": true
},
{
"fieldLabel": "Review",
"requiredField": true
}
]
}
},
"typeVersion": 2.2
},
{
"id": "1e5cb96f-9467-47ab-b060-8600ee901582",
"name": "Google Gemini 채팅 모델",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
528,
220
],
"parameters": {
"options": {},
"modelName": "models/gemini-1.5-flash"
},
"credentials": {
"googlePalmApi": {}
},
"typeVersion": 1
},
{
"id": "0c13ebb7-14ba-4c3b-aa44-b2b22ea72c3f",
"name": "보고서 전송",
"type": "n8n-nodes-base.gmail",
"position": [
1256,
100
],
"webhookId": "8d5fae6b-280c-4286-bf3a-d7355617f013",
"parameters": {
"sendTo": "",
"message": "=Your monthly energy report is as follows {{ $json.url }}",
"options": {
"appendAttribution": true
},
"subject": "Energy Report",
"emailType": "text"
},
"credentials": {},
"typeVersion": 2.1
},
{
"id": "d0abc9c5-7591-4f63-b097-f1682ffaa006",
"name": "Slack",
"type": "n8n-nodes-base.slack",
"position": [
1256,
-100
],
"webhookId": "af63d3d7-1280-4774-b539-2edbf5d0588a",
"parameters": {
"text": "=User {{ $json.candidate_name }} has already applied for {{ $json.role_applied }}",
"user": {
"__rl": true,
"mode": "list",
"value": ""
},
"select": "user",
"otherOptions": {}
},
"typeVersion": 2.3
},
{
"id": "9151ff73-9062-4bb3-8776-1e299636b9ef",
"name": "리뷰/피드백 수신",
"type": "n8n-nodes-base.gmailTrigger",
"position": [
0,
-100
],
"parameters": {
"filters": {
"labelIds": [
"Label_536806471971916762"
]
},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
}
},
"credentials": {},
"typeVersion": 1.2
},
{
"id": "c4312796-7756-4a1a-bad8-5af5f2377b69",
"name": "세부 정보 추출",
"type": "n8n-nodes-base.code",
"position": [
220,
-100
],
"parameters": {
"jsCode": " const fromEmail = $input.first().json.From // Assuming 'from' field holds the full \"From\" string\n let name = '';\n\n // Check if the name is enclosed in angle brackets\n if (fromEmail.includes('<') && fromEmail.includes('>')) {\n name = fromEmail.substring(0, fromEmail.indexOf('<')).trim();\n } else {\n // If no angle brackets, assume the whole \"From\" field is the name\n name = fromEmail.trim();\n }\n\n return { json: { name: name ,Review : $input.first().json.snippet} };"
},
"typeVersion": 2
},
{
"id": "e1525399-3ac3-4dc0-8b9b-79261b2f9c63",
"name": "변환 및 요약",
"type": "@n8n/n8n-nodes-langchain.informationExtractor",
"position": [
440,
0
],
"parameters": {
"text": "={{ $json.Review }}",
"options": {
"systemPromptTemplate": "=You are a feedback analyst. Categorize the following user feedback into one of:\n- Bug\n- Feature Request\n- UX Issue\n- Other\n\nAlso extract the core complaint or suggestion in a concise sentence.\n\nFeedback: {{ $json.Review }}"
},
"schemaType": "fromJson",
"jsonSchemaExample": "{\n \"category\": \"Feature Request\",\n \"summary\": \"User wants dark mode support\",\n \"sentiment\": \"Positive\",\n \"Feedback text\": \"Original review\"\n\n}"
},
"typeVersion": 1.1
},
{
"id": "13155178-e7b0-4329-95b5-eddd560d0fe5",
"name": "데이터 검토",
"type": "n8n-nodes-base.googleSheets",
"position": [
816,
0
],
"parameters": {
"columns": {
"value": {
"summary": "={{ $json.output.summary }}",
"category": "={{ $json.output.category }}",
"Timestamp": "={{ $json.output.Timestamp }}",
"sentiment": "={{ $json.output.sentiment }}",
"Feedback text": "={{ $json.output[\"Feedback text\"] }}"
},
"schema": [
{
"id": "category",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "category",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "summary",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "sentiment",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "sentiment",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Feedback text",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Feedback text",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Timestamp",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Timestamp",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"output"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {},
"documentId": {}
},
"credentials": {},
"typeVersion": 4.6
},
{
"id": "66b9626b-dd32-4e12-8eda-1a85f8436a40",
"name": "카테고리",
"type": "n8n-nodes-base.switch",
"position": [
1036,
0
],
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "f245286d-696d-43c2-9717-838befcc4064",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.category }}",
"rightValue": "Bug"
}
]
}
},
{
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "394c07bc-9828-4d4d-a434-33cb4a96cddb",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.category }}",
"rightValue": "Feature Request"
}
]
}
}
]
},
"options": {}
},
"typeVersion": 3.2
},
{
"id": "a8490c26-d635-4a74-9c90-04d33e94f85e",
"name": "스티커 메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
-80,
380
],
"parameters": {
"width": 1520,
"height": 420,
"content": "**Purpose:**\nAutomatically capture customer reviews from forms or emails, analyze them with AI to detect category and sentiment, and notify the right channels while logging everything in Google Sheets.\n\n\n**Core Logic:**\n\n1. **Form submission trigger** captures customer name and review text.\n2. **Gmail trigger** listens for incoming feedback emails.\n3. **Extract details (Code node)** parses reviewer name and feedback text.\n4. **AI analysis** summarizes the review, detects sentiment, and assigns a category (Bug, Feature Request, UX Issue, Other).\n5. **Google Gemini (optional)** provides advanced summarization/classification.\n6. **Google Sheets** logs the categorized feedback for tracking.\n7. **Switch node** routes feedback into different branches based on category.\n8. **Slack notification** alerts the team about critical issues like Bugs.\n9. **Email report** sends categorized summaries (e.g., Feature Requests) to stakeholders.\n\n\n**Outcome:**\nCreates a streamlined feedback loop where customer input is captured, structured, categorized, and routed automatically — ensuring issues are quickly acted on, feature requests are tracked, and all feedback is stored for long-term analysis.\n"
},
"typeVersion": 1
},
{
"id": "a57683e3-5304-4a50-8aec-0ac86427b929",
"name": "스티커 메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-82,
-240
],
"parameters": {
"color": 5,
"width": 1520,
"height": 600,
"content": "## Customer Feedback Loop Analyzer"
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "1277749b-2809-4280-a59e-17998a61a482",
"connections": {
"66b9626b-dd32-4e12-8eda-1a85f8436a40": {
"main": [
[
{
"node": "d0abc9c5-7591-4f63-b097-f1682ffaa006",
"type": "main",
"index": 0
}
],
[
{
"node": "0c13ebb7-14ba-4c3b-aa44-b2b22ea72c3f",
"type": "main",
"index": 0
}
]
]
},
"13155178-e7b0-4329-95b5-eddd560d0fe5": {
"main": [
[
{
"node": "66b9626b-dd32-4e12-8eda-1a85f8436a40",
"type": "main",
"index": 0
}
]
]
},
"c4312796-7756-4a1a-bad8-5af5f2377b69": {
"main": [
[
{
"node": "e1525399-3ac3-4dc0-8b9b-79261b2f9c63",
"type": "main",
"index": 0
}
]
]
},
"0aeba1ed-f179-4a69-ad06-23bdf6ed1c4d": {
"main": [
[
{
"node": "e1525399-3ac3-4dc0-8b9b-79261b2f9c63",
"type": "main",
"index": 0
}
]
]
},
"9151ff73-9062-4bb3-8776-1e299636b9ef": {
"main": [
[
{
"node": "c4312796-7756-4a1a-bad8-5af5f2377b69",
"type": "main",
"index": 0
}
]
]
},
"e1525399-3ac3-4dc0-8b9b-79261b2f9c63": {
"main": [
[
{
"node": "13155178-e7b0-4329-95b5-eddd560d0fe5",
"type": "main",
"index": 0
}
]
]
},
"1e5cb96f-9467-47ab-b060-8600ee901582": {
"ai_languageModel": [
[
{
"node": "e1525399-3ac3-4dc0-8b9b-79261b2f9c63",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
중급 - 기타, AI 요약, 멀티모달 AI
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
Gemini AI와 Google Workspace를 사용하여 매일 이메일과 일정 요약을 Slack으로 전송
Gemini AI와 Google Workspace를 사용하여 매일 이메일과 일정 요약을 Slack으로 전송
Code
Cron
Gmail
+
Code
Cron
Gmail
20 노드Sayone Technologies
기타
AI 기반 잠재고객 자격 평가 및 개인화 접근 (Relevance AI 활용)
AI 기반 잠재고객 자격 평가 및 개인화 접근: Relevance AI 사용
Set
Code
Gmail
+
Set
Code
Gmail
34 노드Diptamoy Barman
콘텐츠 제작
경쟁사 콘텐츠 격차 분석기: 자동화된 웹사이트 주제 매핑
Gemini AI, Apify, Google Sheets를 사용한 경쟁사 콘텐츠 격차 분석
If
Set
Code
+
If
Set
Code
30 노드Mychel Garzon
기타
HTTP Last-Modified 확인을 사용하여 Google Sheets에서 채용 공고 만료 및 새로고침 알림 가져오기
Google Sheets, HTTP 확인 및 Gmail을 통한 채용 공고 만료 알림 자동화
If
Set
Code
+
If
Set
Code
19 노드WeblineIndia
인사
매일 지원자 요약
Gemini AI를 사용하여 직위별로 분류된 일일 지원자 요약을 인력 매니저에게 제공
Code
Gmail
Schedule Trigger
+
Code
Gmail
Schedule Trigger
10 노드WeblineIndia
AI 요약
내 워크플로우 3
AI, Gmail, Google Drive 및 Airtable을 사용한 자동 이력서 스크리닝 및 점수 부여
Set
Code
Merge
+
Set
Code
Merge
23 노드usamaahmed
인사
워크플로우 정보
난이도
중급
노드 수11
카테고리3
노드 유형10
저자
WeblineIndia
@weblineindiaA Leading Software Engineering, Consulting & Outsourcing Services Company in USA & India serving Clients Globally since 1999.
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유