This workflow corresponds to n8n.io template #2851 — we link there as the canonical source.
This workflow follows the Emailsend → Form Trigger recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "LGpVLWPpNZSt9ISM",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Contact Form Text Classifier for eCommerce",
"tags": [],
"nodes": [
{
"id": "13175d48-c3a6-4ca6-afed-b70f40289f38",
"name": "On form submission",
"type": "n8n-nodes-base.formTrigger",
"position": [
-480,
-320
],
"parameters": {
"options": {},
"formTitle": "Contacts",
"formFields": {
"values": [
{
"fieldLabel": "Name",
"placeholder": "Name",
"requiredField": true
},
{
"fieldLabel": "Email",
"placeholder": "Email",
"requiredField": true
},
{
"fieldType": "textarea",
"fieldLabel": "Message",
"placeholder": "Message",
"requiredField": true
}
]
},
"responseMode": "lastNode",
"formDescription": "Basic Contact Form"
},
"typeVersion": 2.2
},
{
"id": "7b352c9f-5d2e-46ca-9499-594063167e9a",
"name": "Text Classifier",
"type": "@n8n/n8n-nodes-langchain.textClassifier",
"position": [
-160,
-320
],
"parameters": {
"options": {
"fallback": "other",
"systemPromptTemplate": "=Please classify the text provided by the user into one of the following categories: {categories}, and use the provided formatting instructions below. Don't explain, and only output the json with the selected {categories}."
},
"inputText": "={{ $json.Message }}",
"categories": {
"categories": [
{
"category": "Request Quote",
"description": "Request for quote"
},
{
"category": "Product info",
"description": "General information about a product"
},
{
"category": "General problem",
"description": "General problems about a product"
},
{
"category": "Order",
"description": "Information about an order placed"
}
]
}
},
"typeVersion": 1
},
{
"id": "efef4c71-5f56-44b0-a613-9fa888e495b8",
"name": "OpenAI",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-220,
-100
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "83f0d528-884c-4701-8fdd-dc07c05fafb5",
"name": "Prod. Dep.",
"type": "n8n-nodes-base.emailSend",
"position": [
320,
-540
],
"parameters": {
"html": "=Name: {{ $json.Name }}\nEmail: {{ $json.Email }}\n\nMessage:\n{{ $json.Message }}\n\nTipo prodotto: {{ $json[\"tipo prodotto\"] }}",
"options": {
"replyTo": "={{ $json.Email }}"
},
"subject": "=[n8n Contacts] Product info",
"toEmail": "user@example.com",
"fromEmail": "user@example.com"
},
"credentials": {
"smtp": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "88486500-dcea-4db9-9ffd-f55193eaa83d",
"name": "Quote Dep.",
"type": "n8n-nodes-base.emailSend",
"position": [
320,
-780
],
"parameters": {
"html": "=Name: {{ $json.Name }}\nEmail: {{ $json.Email }}\n\nMessage:\n{{ $json.Message }}\n\nTipo prodotto: {{ $json[\"tipo prodotto\"] }}",
"options": {
"replyTo": "={{ $json.Email }}"
},
"subject": "=[n8n Contacts] Quote",
"toEmail": "user@example.com",
"fromEmail": "user@example.com"
},
"credentials": {
"smtp": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "f6a63c4f-ee2e-42f1-a12c-b1fc6cf48f94",
"name": "Gen. Dep.",
"type": "n8n-nodes-base.emailSend",
"position": [
320,
-320
],
"parameters": {
"html": "=Name: {{ $json.Name }}\nEmail: {{ $json.Email }}\n\nMessage:\n{{ $json.Message }}\n\nTipo prodotto: {{ $json[\"tipo prodotto\"] }}",
"options": {
"replyTo": "={{ $json.Email }}"
},
"subject": "=[n8n Contacts] General",
"toEmail": "user@example.com",
"fromEmail": "user@example.com"
},
"credentials": {
"smtp": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "04a3e144-af75-4a95-819f-d5f1d4591b67",
"name": "Order Dep.",
"type": "n8n-nodes-base.emailSend",
"position": [
320,
-80
],
"parameters": {
"html": "=Name: {{ $json.Name }}\nEmail: {{ $json.Email }}\n\nMessage:\n{{ $json.Message }}\n\nTipo prodotto: {{ $json[\"tipo prodotto\"] }}",
"options": {
"replyTo": "={{ $json.Email }}"
},
"subject": "=[n8n Contacts] Order info",
"toEmail": "user@example.com",
"fromEmail": "user@example.com"
},
"credentials": {
"smtp": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "3767e3c7-b792-4b0d-a1f2-fc068310cb11",
"name": "Other Dep.",
"type": "n8n-nodes-base.emailSend",
"position": [
320,
140
],
"parameters": {
"html": "=Name: {{ $json.Name }}\nEmail: {{ $json.Email }}\n\nMessage:\n{{ $json.Message }}\n\nTipo prodotto: {{ $json[\"tipo prodotto\"] }}",
"options": {
"replyTo": "={{ $json.Email }}"
},
"subject": "=[n8n Contacts] Other",
"toEmail": "user@example.com",
"fromEmail": "user@example.com"
},
"credentials": {
"smtp": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "c411a82d-0b86-49da-a11f-47ec79f9f7ff",
"name": "Quote DB",
"type": "n8n-nodes-base.googleSheets",
"position": [
520,
-780
],
"parameters": {
"columns": {
"value": {
"TO": "={{ (JSON.stringify($json.envelope.to)) }}",
"DATA": "={{ $('Text Classifier').item.json.submittedAt }}",
"NOME": "={{ $('Text Classifier').item.json.Name }}",
"EMAIL": "={{ $('Text Classifier').item.json.Email }}",
"CATEGORIA": "info prodotti",
"RICHIESTA": "={{ $('Text Classifier').item.json.Message }}"
},
"schema": [
{
"id": "DATA",
"type": "string",
"display": true,
"required": false,
"displayName": "DATA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "NOME",
"type": "string",
"display": true,
"required": false,
"displayName": "NOME",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "EMAIL",
"type": "string",
"display": true,
"required": false,
"displayName": "EMAIL",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "RICHIESTA",
"type": "string",
"display": true,
"required": false,
"displayName": "RICHIESTA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CATEGORIA",
"type": "string",
"display": true,
"required": false,
"displayName": "CATEGORIA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "TO",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "TO",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit#gid=0",
"cachedResultName": "Foglio1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit?usp=drivesdk",
"cachedResultName": "Classified Contact Form"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.5
},
{
"id": "c14008fb-8932-44ad-88ef-42f6d4029fb1",
"name": "Prod DB",
"type": "n8n-nodes-base.googleSheets",
"position": [
520,
-540
],
"parameters": {
"columns": {
"value": {
"TO": "={{ (JSON.stringify($json.envelope.to)) }}",
"DATA": "={{ $('Text Classifier').item.json.submittedAt }}",
"NOME": "={{ $('Text Classifier').item.json.Name }}",
"EMAIL": "={{ $('Text Classifier').item.json.Email }}",
"CATEGORIA": "info prodotti",
"RICHIESTA": "={{ $('Text Classifier').item.json.Message }}"
},
"schema": [
{
"id": "DATA",
"type": "string",
"display": true,
"required": false,
"displayName": "DATA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "NOME",
"type": "string",
"display": true,
"required": false,
"displayName": "NOME",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "EMAIL",
"type": "string",
"display": true,
"required": false,
"displayName": "EMAIL",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "RICHIESTA",
"type": "string",
"display": true,
"required": false,
"displayName": "RICHIESTA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CATEGORIA",
"type": "string",
"display": true,
"required": false,
"displayName": "CATEGORIA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "TO",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "TO",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit#gid=0",
"cachedResultName": "Foglio1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit?usp=drivesdk",
"cachedResultName": "Classified Contact Form"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.5
},
{
"id": "f2e02c07-7218-4d08-a816-1ce2de289312",
"name": "General DB",
"type": "n8n-nodes-base.googleSheets",
"position": [
520,
-320
],
"parameters": {
"columns": {
"value": {
"TO": "={{ (JSON.stringify($json.envelope.to)) }}",
"DATA": "={{ $('Text Classifier').item.json.submittedAt }}",
"NOME": "={{ $('Text Classifier').item.json.Name }}",
"EMAIL": "={{ $('Text Classifier').item.json.Email }}",
"CATEGORIA": "info prodotti",
"RICHIESTA": "={{ $('Text Classifier').item.json.Message }}"
},
"schema": [
{
"id": "DATA",
"type": "string",
"display": true,
"required": false,
"displayName": "DATA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "NOME",
"type": "string",
"display": true,
"required": false,
"displayName": "NOME",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "EMAIL",
"type": "string",
"display": true,
"required": false,
"displayName": "EMAIL",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "RICHIESTA",
"type": "string",
"display": true,
"required": false,
"displayName": "RICHIESTA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CATEGORIA",
"type": "string",
"display": true,
"required": false,
"displayName": "CATEGORIA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "TO",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "TO",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit#gid=0",
"cachedResultName": "Foglio1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit?usp=drivesdk",
"cachedResultName": "Classified Contact Form"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.5
},
{
"id": "d6ee5c05-d966-47c1-a7ec-df721f77c5d0",
"name": "Order DB",
"type": "n8n-nodes-base.googleSheets",
"position": [
520,
-80
],
"parameters": {
"columns": {
"value": {
"TO": "={{ (JSON.stringify($json.envelope.to)) }}",
"DATA": "={{ $('Text Classifier').item.json.submittedAt }}",
"NOME": "={{ $('Text Classifier').item.json.Name }}",
"EMAIL": "={{ $('Text Classifier').item.json.Email }}",
"CATEGORIA": "info prodotti",
"RICHIESTA": "={{ $('Text Classifier').item.json.Message }}"
},
"schema": [
{
"id": "DATA",
"type": "string",
"display": true,
"required": false,
"displayName": "DATA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "NOME",
"type": "string",
"display": true,
"required": false,
"displayName": "NOME",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "EMAIL",
"type": "string",
"display": true,
"required": false,
"displayName": "EMAIL",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "RICHIESTA",
"type": "string",
"display": true,
"required": false,
"displayName": "RICHIESTA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CATEGORIA",
"type": "string",
"display": true,
"required": false,
"displayName": "CATEGORIA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "TO",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "TO",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit#gid=0",
"cachedResultName": "Foglio1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit?usp=drivesdk",
"cachedResultName": "Classified Contact Form"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.5
},
{
"id": "b4f344bd-a5c4-4977-af96-edbab85b49d0",
"name": "Other DB",
"type": "n8n-nodes-base.googleSheets",
"position": [
520,
140
],
"parameters": {
"columns": {
"value": {
"TO": "={{ (JSON.stringify($json.envelope.to)) }}",
"DATA": "={{ $('Text Classifier').item.json.submittedAt }}",
"NOME": "={{ $('Text Classifier').item.json.Name }}",
"EMAIL": "={{ $('Text Classifier').item.json.Email }}",
"CATEGORIA": "info prodotti",
"RICHIESTA": "={{ $('Text Classifier').item.json.Message }}"
},
"schema": [
{
"id": "DATA",
"type": "string",
"display": true,
"required": false,
"displayName": "DATA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "NOME",
"type": "string",
"display": true,
"required": false,
"displayName": "NOME",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "EMAIL",
"type": "string",
"display": true,
"required": false,
"displayName": "EMAIL",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "RICHIESTA",
"type": "string",
"display": true,
"required": false,
"displayName": "RICHIESTA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CATEGORIA",
"type": "string",
"display": true,
"required": false,
"displayName": "CATEGORIA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "TO",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "TO",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit#gid=0",
"cachedResultName": "Foglio1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D6tfsAK81ZE6VA0-sd_syuyI_rloNYjgWOhwgszPIZw/edit?usp=drivesdk",
"cachedResultName": "Classified Contact Form"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.5
},
{
"id": "99872f49-85c3-47a0-b0ea-10ebbdbb67f5",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-480,
-680
],
"parameters": {
"width": 580,
"height": 280,
"content": "## Important notes\n\nThis very simple workflow is ideal for eCommerce businesses or customer support teams looking to automate and streamline the handling of contact form submissions.\n\n- It is possible to hook any external form such as CF7 for Wordpress through a webhook\n- It is possible to send the email through other providers by replacing them with the relative nodes (Gmail, Outlook....)\n- It is possible to change the collection database with other tools"
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "649d6a6a-a2a1-49f6-b63a-6def1a8831f1",
"connections": {
"OpenAI": {
"ai_languageModel": [
[
{
"node": "Text Classifier",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Gen. Dep.": {
"main": [
[
{
"node": "General DB",
"type": "main",
"index": 0
}
]
]
},
"Order Dep.": {
"main": [
[
{
"node": "Order DB",
"type": "main",
"index": 0
}
]
]
},
"Other Dep.": {
"main": [
[
{
"node": "Other DB",
"type": "main",
"index": 0
}
]
]
},
"Prod. Dep.": {
"main": [
[
{
"node": "Prod DB",
"type": "main",
"index": 0
}
]
]
},
"Quote Dep.": {
"main": [
[
{
"node": "Quote DB",
"type": "main",
"index": 0
}
]
]
},
"Text Classifier": {
"main": [
[
{
"node": "Quote Dep.",
"type": "main",
"index": 0
},
{
"node": "Prod. Dep.",
"type": "main",
"index": 0
}
],
[],
[
{
"node": "Gen. Dep.",
"type": "main",
"index": 0
}
],
[
{
"node": "Order Dep.",
"type": "main",
"index": 0
}
],
[
{
"node": "Other Dep.",
"type": "main",
"index": 0
}
]
]
},
"On form submission": {
"main": [
[
{
"node": "Text Classifier",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
googleSheetsOAuth2ApiopenAiApismtp
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Form Submission: The workflow starts with the On form submission node, which triggers when a user submits a contact form. The form collects the user's name, email, and message. Text Classification: The Text Classifier node uses an AI model (GPT-4) to classify the submitted…
Source: https://n8n.io/workflows/2851/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This n8n template demonstrates how to automate email classification, labeling, draft generation, and logging using Gmail, OpenAI, and Google Sheets. Use cases include customer support management, sale
Author: CSChin Example Source: https://www.ncl.ac.uk/singapore/staff/profile/chengchin.html#publications
Turn any web page into a compelling LinkedIn post — complete with an AI-generated image. This automation is ideal for sharing content like blog posts, case studies, or product updates in a polished an
Detects new unread Gmail messages Extracts sender name for personalized replies Classifies the email into one of four categories Applies the correct Gmail label and either sends an auto-reply, creates
This workflow helps you generate an llms.txt file (if you're unfamiliar with it, check out this article) using a Screaming Frog export.