Multi-channel customer sentiment tracker with real-time analytics and alerting
Ready for 3.0What this workflow does
This AI workflow has 26 nodes and runs on a schedule (every 15 minutes). Along the way it connects Azure OpenAI Chat Model, OpenAI, Postgres and Slack and 1 more.
How it runs
Trigger: On a schedule (every 15 minutes).
- Workflow Configuration (Edit Fields (Set)): sets 9 fields: socialMediaApiUrl, emailApiUrl, supportTicketsApiUrl…
- Fetch Social Media Feedback (HTTP Request): calls an HTTP API
- Fetch Email Feedback (HTTP Request): calls an HTTP API
- Fetch Support Tickets (HTTP Request): calls an HTTP API
- Fetch Chat Transcripts (HTTP Request): calls an HTTP API
- Fetch Product Reviews (HTTP Request): calls an HTTP API
- Merge: merges the data from its input branches
- Clean and Normalize Text Data (Code): runs custom JavaScript code
- Unify Data Schema (Edit Fields (Set)): sets 6 fields: feedbackId, feedbackText, source…
- Sentiment Analysis: scores sentiment with AI, with model: Azure OpenAI Chat Model
…plus 14 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (14)
- Schedule Trigger
n8n-nodes-base.scheduleTrigger - Edit Fields (Set)
n8n-nodes-base.set - HTTP Request
n8n-nodes-base.httpRequest - Merge
n8n-nodes-base.merge - Code
n8n-nodes-base.code - Azure OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatAzureOpenAi - Sentiment Analysis
@n8n/n8n-nodes-langchain.sentimentAnalysis - OpenAI
@n8n/n8n-nodes-langchain.openAi - Postgres
n8n-nodes-base.postgres - Aggregate
n8n-nodes-base.aggregate - If
n8n-nodes-base.if - Slack
n8n-nodes-base.slack - Send Email
n8n-nodes-base.emailSend - Google Sheets
n8n-nodes-base.googleSheets
From the author
How It Works Scheduled processes retrieve customer feedback from multiple channels. The system performs sentiment analysis to classify tone, then uses OpenAI models to extract themes, topics, and urgency indicators. All processed results are stored in a…