← All N8N workflows
AI & researchAgentCryptoFormForm TriggerGoogle Sheets

Conducting user interviews have been traditionally difficult due to preparation, timing and execution costs. What if we let an AI/LLM do it instead?

Configured with Agent, Crypto, Form, Form Trigger, and additional nodes. Review the connections and setup before adapting this template.

Workflow preview
RoutingStop Interview?IfTransformGenerate RowEdit FieldsTransformGenerate Row1Edit FieldsData storeClear For NextInterviewMemory ManagerTransformSend Reply To AgentEdit FieldsTriggerStart InterviewForm TriggerIntegrationGet AnswerFormTransformSet Interview TopicEdit FieldsTransformUUIDCryptoTransformGenerate Row2Edit FieldsData storeCreate SessionRedisData storeUpdate SessionRedisData storeUpdate Session1RedisData storeUpdate Session2RedisRoutingValid Session?IfWeb / APIRespond to WebhookRespond To WebhookData storeWindow Buffer Memory2Memory Buffer WindowData storeWindow Buffer MemoryMemory Buffer WindowIntegrationRedirect to CompletionScreenFormTriggerWebhookWebhookTransform404 Not FoundHtmlAI & modelsAI ResearcherAgentTransformParse ResponseEdit FieldsAI & modelsGroq Chat ModelLM Chat GroqTransformShow TranscriptHtmlData storeSave to Google SheetGoogle SheetsTransformSession to ListSplit OutTransformMessages To JSONEdit FieldsData storeQuery By SessionRedisData storeGet SessionRedis

Node categories in this workflow

  • Routing
  • Transform
  • Data store
  • Trigger
  • Integration
  • Web / API
  • AI & models

Icons describe general node roles, inferred from node types. Inspect the parameters for the configured action.

Drag to pan; use + and − to zoom. Reconstructed from the exported node positions; nothing runs here. Dashed lines represent non-main connections. Full node names and notes appear below.

How it works

The exported workflow contains the following configured nodes. Their connections are shown above; inspect the JSON for the complete logic, expressions, and external actions.

Workflow node names, types, and operations
NodeCategoryTypeOperation
Stop Interview?RoutingIfSee node parameters
Generate RowTransformEdit FieldsSee node parameters
Generate Row1TransformEdit FieldsSee node parameters
Clear For Next InterviewData storeMemory ManagerSee node parameters
Send Reply To AgentTransformEdit FieldsSee node parameters
Start InterviewTriggerForm TriggerSee node parameters
Get AnswerIntegrationFormSee node parameters
Set Interview TopicTransformEdit FieldsSee node parameters
UUIDTransformCryptoSee node parameters
Generate Row2TransformEdit FieldsSee node parameters
Create SessionData storeRedisset
Update SessionData storeRedispush
Update Session1Data storeRedispush
Update Session2Data storeRedispush
Valid Session?RoutingIfSee node parameters
Respond to WebhookWeb / APIRespond To WebhookSee node parameters
Window Buffer Memory2Data storeMemory Buffer WindowSee node parameters
Window Buffer MemoryData storeMemory Buffer WindowSee node parameters
Redirect to Completion ScreenIntegrationFormcompletion
WebhookTriggerWebhookSee node parameters
404 Not FoundTransformHtmlSee node parameters
AI ResearcherAI & modelsAgentSee node parameters
Parse ResponseTransformEdit FieldsSee node parameters
Groq Chat ModelAI & modelsLM Chat GroqSee node parameters
Show TranscriptTransformHtmlSee node parameters
Save to Google SheetData storeGoogle Sheetsappend
Session to ListTransformSplit OutSee node parameters
Messages To JSONTransformEdit FieldsSee node parameters
Query By SessionData storeRedisget
Get SessionData storeRedisget

Setup

  1. Download the JSON and import it into an isolated n8n instance. Leave the workflow inactive.
  2. Connect your own credentials through n8n’s credential store. Replace REPLACE_WITH_* values with your resource identifiers.
  3. Inspect API destinations, Code nodes, database queries, file paths, and outbound actions.
  4. Run with synthetic data and harmless destinations. Enable triggers only after checking the actual outputs.

Requirements

An n8n instance with the listed node types and compatible versions. Service-connected workflows may require accounts, credentials, or paid APIs.

Credential types declared in the source

  • googleSheetsOAuth2Api
  • groqApi
  • redis

Workflow notes

1. Setup Interview

1. Setup Interview

Learn more about the form trigger node

The form trigger node will be our entry point into this workflow and to start, we'll just ask for the user's name to start the interview. Our session storage will be using Redis via Upstash.com (you can use regular redis btw!) - whichever way, this ensures a highly scalable system able to handle many users.

2. AI Researcher for Endless Interview Questions

2. AI Researcher for Endless Interview Questions

Learn more about the AI Agent node

An AI interviewer is an interesting take on a role traditionally understood as expensive and time-consuming - both in preparation and execution. What if this could be handed off to an AI/LLM, which could perform when it suits the interviewee and ask a never-ending list of open and follow-on questions for deeper insights?

This is what this AI researcher agent is designed to do! Upon activation, a loop is created where the agent generates the question and the user answers via the form node. This continues until the user asks to stop the interview.

3. Record Answers and Prep for Next Question

3. Record Answers and Prep for Next Question

Learn more about the n8n Form node

The interview is no good if we can't record the answers somewhere for later analysis! Using n8n form node to capture the answer, we can simple push our new question and answer pair to our Redis session to build our transcript before continuing the loop with the agent.

4. Graciously End the Interview

4. Graciously End the Interview

Read more about the Chat Manager node

Once the AI/LLM detects the user wishes to end the interview (which is done by the user explicitly saying in the form), then the loop breaks and we conclude the interview session and displaying the confirmation screen.

For this demo, I've created a special confirmation screen which also displays the transcript. This is done by redirecting to a webhook URL. If you don't need this, feel free to change this to "show completion screen" instead.

Try it out!

Try it out!

Conducting user interviews have been traditionally difficult due to preparation, timing and execution costs. What if we let an AI/LLM do it instead?

This template enables automated AI/LLM powered user interviews using n8n forms and an AI agent where the question and answers are recorded in a google sheet for later analysis. A powerful tool for any researcher.

Check out the full showcase post here: https://community.n8n.io/t/build-your-own-ai-interview-agents-with-n8n-forms/62312

How it works

  • A form trigger is used to start the interview and a new session is created in redis to capture the transcript.
  • An AI agent is then tasked to ask questions to the user regarding the topic of the interview. This is setup as a loop so the questions never stop unless the user wishes to end the interview.
  • Each answer is recorded in our session set up earlier between questions.
  • Finally, when the user requests to end the interview we break the loop and show the interview completion screen.

Why Redis?

Redis is a fast key-value datastore which makes it ideal for sessions. This ensures the interview flow stays snappy between questions. For my live demo, I used Upstash.com which has a generous free tier.

Need Help?

Join the Discord or ask in the Forum!

Happy Hacking!

🚨 Set Your Webhook URL here!

🚨 Set Your Webhook URL here!

For this demo, we want to show a customised completion screen with transcript so it's necessary to redirect to a webhook (see step 6).

🚨 This is the webhook we want to redirect to!

🚨 This is the webhook we want to redirect to!

If you're on n8n cloud, you may want to copy the webhook url generated here and use it as the form ending's redirect url.

6. Display the Transcript

6. Display the Transcript

Read more about the Webhook Trigger

This step is totally optional. For a nicer user experience, I use this webhook mini-flow to display the user's transcript for the completion screen. It works by capturing the session_id in the webhook's url and searching for it in our redis database. If a match is found the transcript is fetched and rendered into a webpage using the HTML node and returned to the user. If no match is found, a 404 message is displayed instead.

5. Save the Interview to Sheets

5. Save the Interview to Sheets

Read more about the Google Sheets node

For easier data-sharing, we can have the workflow upload the session messages into data analysis tools for our team members.

For this demo, Google Sheets is an easy option. We'll pull the entire session out of redis and upload the messages one by one to sheets.

Check out the example sheet here: https://docs.google.com/spreadsheets/d/REPLACE_WITH_DOCUMENT_ID/edit?usp=sharing

Conducting user interviews have been traditionally difficult due to preparation, timing and execution costs. What if we let an AI/LLM do it instead?

Conducting user interviews have been traditionally difficult due to preparation, timing and execution costs. What if we let an AI/LLM do it instead?

Purpose and structure

This folder contains the Conducting user interviews have been traditionally difficult due to preparation, timing and execution costs. What if we let an AI/LLM do it instead? workflow. Its executable nodes use agent, crypto, form, formTrigger, googleSheets, html, if, lmChatGroq, memoryBufferWindow, memoryManager, redis, respondToWebhook, set, splitOut, webhook. The table and connection map below are derived from the JSON, not an inferred guarantee of behavior.

Setup

Import inactive. Configure your own credentials and replace REPLACE_WITH_* values. Review external destinations and Code nodes before running.

Entry points

Start Interview, Webhook

Verification

Sanitized source candidate; not runtime-tested. This overview is generated from node metadata. Read the folder README for the connection map, credential types, and license.

Attribution

https://github.com/Zie619/n8n-workflows/blob/94007c1445d9258a7da116646b79473e7c7c3282/workflows/Splitout/0638_Splitout_Redis_Create_Webhook.json MIT; preserve source notices.

Canvas section labels

These name areas of the original canvas; they do not include explanatory instructions.

  • 🚨 Set Interview Topic Here!

More in AI & research