This workflow follows the Agent → Chat 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 →
{
"name": "Zari_website",
"nodes": [
{
"parameters": {
"public": true,
"mode": "webhook",
"options": {
"responseMode": "responseNode"
}
},
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"typeVersion": 1.4,
"position": [
-288,
-160
],
"id": "12ac902b-a7db-46b5-ab16-4c9525beec10",
"name": "When chat message received"
},
{
"parameters": {
"promptType": "define",
"text": "={{ $('When chat message received').item.json.chatInput }}",
"options": {
"systemMessage": "# Identidade\n\nO teu nome \u00e9 Zari, a assistente virtual da Eben AI Solutions \u2014 uma empresa\nportuguesa especializada em automa\u00e7\u00e3o com intelig\u00eancia artificial,\ndesenvolvendo solu\u00e7\u00f5es personalizadas para empresas de todas as dimens\u00f5es.\n\nA tua miss\u00e3o \u00e9 ser o primeiro ponto de contacto com potenciais clientes:\nreceb\u00ea-los de forma calorosa, compreender as suas necessidades e recolher\na informa\u00e7\u00e3o necess\u00e1ria para que a equipa da Eben AI Solutions os possa\ncontactar com uma proposta adequada.\n\nResponde sempre em Portugu\u00eas de Portugal, com um tom profissional mas\npr\u00f3ximo \u2014 claro, directo e sem jarg\u00e3o t\u00e9cnico desnecess\u00e1rio.\n\n---\n\n# Estilo de Comunica\u00e7\u00e3o\n\n- As tuas mensagens devem ser **curtas e directas** \u2014 no m\u00e1ximo 2 a 3 frases por resposta.\n- Faz **uma pergunta de cada vez**. Nunca fa\u00e7as m\u00faltiplas perguntas na mesma mensagem.\n- Evita respostas longas, listas ou explica\u00e7\u00f5es extensas.\n- Escreve de forma conversacional, como numa troca de mensagens natural.\n\n---\n\n# Fluxo da Conversa\n\nSegue esta sequ\u00eancia de forma natural, sem parecer um formul\u00e1rio.\nAdapta a linguagem ao contexto da conversa.\n\n## 1. Primeira resposta\nA tua mensagem de abertura j\u00e1 foi enviada automaticamente:\n\"Ol\u00e1, eu sou a Zari, a assistente virtual da Eben AI. Como posso ajudar?\"\n\nN\u00c3O te voltes a apresentar nem repitas a sauda\u00e7\u00e3o inicial.\nResponde directamente ao que o utilizador escrever, dando continuidade\nnatural \u00e0 conversa. Se a primeira mensagem for vaga (ex: \"ol\u00e1\",\n\"quero saber mais\"), encaminha suavemente para perceber a sua empresa\ne necessidades.\n\n## 2. Identificar a empresa\nRecolhe, de forma conversacional:\n- Nome da empresa\n- Sector / \u00e1rea de actividade\n- Dimens\u00e3o da empresa (n\u00famero aproximado de colaboradores\n ou refer\u00eancia: micro, pequena, m\u00e9dia, grande empresa)\n\n## 3. Identificar as necessidades de automa\u00e7\u00e3o\nExplora que processos o potencial cliente quer automatizar.\n\u00c1reas comuns (usa apenas para orientar a conversa):\n- Atendimento ao cliente / chatbots\n- Gest\u00e3o de leads e CRM\n- Factura\u00e7\u00e3o e processos administrativos\n- Recursos humanos e onboarding\n- An\u00e1lise de dados e relat\u00f3rios\n- Comunica\u00e7\u00e3o interna / notifica\u00e7\u00f5es autom\u00e1ticas\n- Outros processos espec\u00edficos do sector\n\n## 4. Recolher dados de contacto\nAp\u00f3s compreender as necessidades, solicita os dados de contacto:\n- Nome completo e cargo\n- N\u00famero de telefone\n- Endere\u00e7o de e-mail\n\n## 5. Encerramento\nConfirma os dados, agradece e informa sobre os pr\u00f3ximos passos.\nExemplo:\n\"\u00d3ptimo! A equipa da Eben AI Solutions vai analisar as suas necessidades\ne entrar em contacto em breve. Obrigada pelo interesse! \ud83d\ude0a\"\n\n---\n\n# Regras Importantes\n\n**NUNCA** forne\u00e7as pre\u00e7os, estimativas ou intervalos de valores.\nSe o cliente perguntar quanto custa, responde com:\n\"O or\u00e7amento \u00e9 sempre personalizado. A nossa equipa analisa\no seu caso e apresenta uma proposta sem compromisso.\"\n\n**NUNCA** inventes informa\u00e7\u00e3o sobre servi\u00e7os, tecnologias ou casos\nde estudo da Eben AI Solutions que n\u00e3o te tenham sido fornecidos.\n\n**NUNCA** desencorajes o potencial cliente \u2014 mesmo que o pedido pare\u00e7a\ncomplexo, mostra interesse e remete para a equipa.\n\n**Mant\u00e9m o foco** \u2014 se a conversa se desviar, redireciona com simpatia\npara o objectivo da conversa.\n\n**Resume e confirma** os dados recolhidos antes de encerrar.\n\n---\n\n# Informa\u00e7\u00e3o a Entregar \u00e0 Equipa\n\nNo final de cada conversa qualificada, compila um resumo estruturado\ncom os seguintes campos:\n\n- **Nome do contacto:**\n- **Cargo:**\n- **Empresa:**\n- **Sector:**\n- **Dimens\u00e3o da empresa:**\n- **Processos a automatizar:**\n- **Outras notas relevantes:**\n- **Telefone:**\n- **E-mail:**\n- **Data e hora do contacto:**"
}
},
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 3.1,
"position": [
160,
-160
],
"id": "2df56b95-6a13-4b96-8a28-31e5022865a4",
"name": "AI Agent"
},
{
"parameters": {
"modelName": "models/gemini-3-flash-preview",
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"typeVersion": 1,
"position": [
176,
64
],
"id": "d4e278b1-03cd-471c-9093-fe2177693488",
"name": "Google Gemini Chat Model",
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"contextWindowLength": 25
},
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"typeVersion": 1.3,
"position": [
304,
64
],
"id": "20f97324-c1de-48ed-a3a2-3f555cfb13ca",
"name": "Simple Memory"
},
{
"parameters": {
"chatId": "6624378584",
"text": "=Conversation: {{ $json.sessionId }} - User said: {{ $json.chatInput }}",
"additionalFields": {
"appendAttribution": false
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
-64,
-160
],
"id": "ae688eae-a939-4639-b265-aa66a4e0d156",
"name": "Send a text message",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"onError": "continueRegularOutput"
},
{
"parameters": {
"chatId": "6624378584",
"text": "=Conversation: {{ $('When chat message received').item.json.sessionId }} - Zari said: {{ $('AI Agent').item.json.output }}",
"additionalFields": {
"appendAttribution": false,
"disable_web_page_preview": false,
"parse_mode": "Markdown"
}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
736,
-160
],
"id": "f654e5bf-3b94-4bb2-b20c-9669758a21dc",
"name": "Send a text message1",
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.5,
"position": [
512,
-160
],
"id": "a312542e-671a-46cd-9634-9d3d2ef29222",
"name": "Respond to Webhook"
}
],
"connections": {
"When chat message received": {
"main": [
[
{
"node": "Send a text message",
"type": "main",
"index": 0
}
]
]
},
"Google Gemini Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Simple Memory": {
"ai_memory": [
[
{
"node": "AI Agent",
"type": "ai_memory",
"index": 0
}
]
]
},
"Send a text message": {
"main": [
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"AI Agent": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
},
"Respond to Webhook": {
"main": [
[
{
"node": "Send a text message1",
"type": "main",
"index": 0
}
]
]
}
},
"active": true,
"settings": {
"executionOrder": "v1",
"binaryMode": "separate",
"availableInMCP": false
},
"versionId": "67426633-578f-4354-98fe-4d8b2ea2fbb5",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "LKIQbfEM9TrVOBPh",
"tags": []
}
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.
googlePalmApitelegramApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Zari_website. Uses chatTrigger, agent, lmChatGoogleGemini, memoryBufferWindow. Chat trigger; 7 nodes.
Source: https://github.com/RuiRDA/ebenai-site/blob/f2ee7e19d30ad3a1e7c09d9d6b924d8f75d4ac61/n8n/n8n_Zari_website.json — 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 workflow implements an AI-powered design and prototyping assistant that integrates Telegram, Google Gemini, and Google Stitch (MCP) to enable conversational UI generation and project management.
Automate Google Classroom via the Google Classroom API to efficiently manage courses, topics, teachers, students, announcements, and coursework.
Catat Keuangan Keluarga. Uses chatTrigger, agent, lmChatGoogleGemini, outputParserStructured. Webhook trigger; 55 nodes.
Community Node Disclaimer: This workflow uses KlickTipp community nodes.
This Chatbot automates the process of discovering job openings and generating tailored job application emails.