{"workflow":{"id":12985,"name":"Manage patient appointments and care follow-ups with OpenAI, Gmail and Twilio","views":84,"recentViews":0,"totalViews":84,"createdAt":"2026-01-25T14:35:07.775Z","description":"## How It Works\nThis workflow automates patient care coordination in healthcare settings by intelligently processing patient information and scheduling follow-up communications through multiple channels. Designed for healthcare administrators, clinic coordinators, and medical practice managers, it solves the critical problem of manual patient follow-up management and inconsistent communication across care teams. The system receives patient intake data, uses AI-powered agents to analyze care requirements and determine appropriate notification timing, then automatically dispatches personalized messages via email and SMS. The workflow leverages OpenAI's advanced models for care coordination logic and notification content generation, ensuring contextually appropriate and timely patient communications while maintaining conversation history for continuity of care.\n\n## Setup Steps\n1. Configure OpenAI credentials with API key for AI model access\n2. Set up EHR System Tool node with your electronic health records integration endpoint\n3. Configure Scheduling System Tool with your appointment management system API\n4. Connect Gmail account for email notifications with OAuth authentication\n5. Add Twilio credentials for SMS delivery with account SID and auth token\n6. Customize Care Coordination Agent Tool parameters for your clinical protocols\n\n## Prerequisites\nActive OpenAI API account with credits, connected email service (Gmail recommended)\n## Use Cases\nPost-appointment follow-up reminders, medication adherence check-ins, preventive care scheduling\n## Customization\nModify AI prompts in agent tools to match your clinical workflows, adjust notification timing logic\n## Benefits\nReduces administrative workload by 70%, ensures consistent patient follow-up","workflow":{"id":"eGeULOZ2UKdK5Z8d","meta":{"instanceId":"b91e510ebae4127f953fd2f5f8d40d58ca1e71c746d4500c12ae86aad04c1502"},"name":"AI-Powered Patient Appointment Management and Care Coordination System","tags":[],"nodes":[{"id":"60146e73-2a1f-4859-af30-b5ba3d481249","name":"Patient Input","type":"@n8n/n8n-nodes-langchain.chatTrigger","position":[-2032,96],"webhookId":"b3ada5b7-5d29-4f21-b073-3e98a0778eea","parameters":{"public":true,"options":{"subtitle":"Patient Appointment Assistant","loadPreviousSession":"memory"},"initialMessages":"Hi! I'm your healthcare assistant. How can I help you with your appointment today?"},"typeVersion":1.4},{"id":"c166480a-4f95-4764-af40-9bff8bb056c8","name":"Workflow Configuration","type":"n8n-nodes-base.set","position":[-1680,96],"parameters":{"options":{},"assignments":{"assignments":[{"id":"id-1","name":"ehrApiUrl","type":"string","value":"<__PLACEHOLDER_VALUE__EHR System API URL__>"},{"id":"id-2","name":"schedulingApiUrl","type":"string","value":"<__PLACEHOLDER_VALUE__Scheduling System API URL__>"},{"id":"id-3","name":"hospitalName","type":"string","value":"<__PLACEHOLDER_VALUE__Hospital Name__>"}]},"includeOtherFields":true},"typeVersion":3.4},{"id":"ef093a84-c16e-41c1-8823-a3666e949bbd","name":"Intake Agent","type":"@n8n/n8n-nodes-langchain.agent","position":[-1128,96],"parameters":{"text":"={{ $json.chatInput }}","options":{"systemMessage":"You are the Intake Agent for a hospital appointment management system.\n\nYour role is to:\n1. Greet patients warmly and professionally\n2. Analyze their natural language input to identify their intent\n3. Extract relevant entities from their message\n4. Call the Care Coordination Agent Tool to process the request\n5. Call the Notification Agent Tool to compose the response message\n6. Return the final structured output\n\nIntent categories:\n- appointment_booking: Patient wants to schedule a new appointment\n- reschedule: Patient wants to change an existing appointment\n- cancellation: Patient wants to cancel an appointment\n- reminder_confirmation: Patient is responding to a reminder\n- general_enquiry: Patient has questions\n\nEntities to extract:\n- patient_name: Full name of the patient\n- patient_id: Patient ID if provided\n- department: Medical department (cardiology, orthopedics, etc.)\n- doctor: Doctor name if specified\n- preferred_date: Requested date\n- preferred_time: Requested time\n- urgency: Level of urgency (routine, urgent, emergency)\n- contact_method: Preferred contact (email, sms, phone)\n\nAlways maintain a professional, empathetic tone appropriate for healthcare."},"promptType":"define","hasOutputParser":true},"typeVersion":3.1},{"id":"93a63871-52bf-40c7-a948-02d3e5117e97","name":"Care Coordination Agent Tool","type":"@n8n/n8n-nodes-langchain.agentTool","position":[-1328,320],"parameters":{"text":"={{ $fromAI(\"patient_request\", \"The patient request details including intent and extracted entities\", \"json\") }}","options":{"systemMessage":"You are the Care Coordination Agent for a hospital appointment management system.\n\nYour role is to:\n1. Receive patient intent and entities from the Intake Agent\n2. Apply hospital business rules and policies\n3. Determine the appropriate action based on the request\n4. Identify if escalation is needed\n5. Return structured decision data\n\nYou have access to two HTTP Request Tools:\n\n1. ehr_system: Use this to query patient records from the EHR system. Provide the ehr_endpoint parameter with the patient ID or search criteria.\n\n2. scheduling_system: Use this to check appointment availability or update appointments. Provide:\n   - http_method: GET (check availability), POST (book), PUT (update), DELETE (cancel)\n   - scheduling_endpoint: The appropriate API endpoint\n\nUse these tools when you need to verify patient information or check/update appointment data before making decisions.\n\nHospital Rules:\n- Emergency cases must be escalated immediately\n- Appointments require 24-hour advance notice for booking\n- Cancellations within 24 hours may incur fees\n- Rescheduling requires checking doctor availability\n- New patients need registration before booking\n\nActions you can recommend:\n- book_appointment: Schedule new appointment\n- reschedule_appointment: Change existing appointment\n- cancel_appointment: Cancel appointment\n- escalate_to_staff: Human intervention needed\n- request_more_info: Need additional patient information\n- provide_information: Answer general questions\n\nYou DO NOT provide medical diagnosis or advice.\nYou focus on appointment logistics and coordination only.\n\nReturn your decision in the structured format defined by the output parser."},"hasOutputParser":true,"toolDescription":"Applies hospital rules, checks appointment data, and determines required actions or escalations"},"typeVersion":3},{"id":"3861b9fe-42fc-49a3-83ec-e518ed0aa4ab","name":"Notification Agent Tool","type":"@n8n/n8n-nodes-langchain.agentTool","position":[-944,320],"parameters":{"text":"={{ $fromAI(\"coordination_result\", \"The care coordination decision and action details\", \"json\") }}","options":{"systemMessage":"You are the Notification Agent for a hospital appointment management system.\n\nYour role is to:\n1. Receive the care coordination decision\n2. Compose clear, concise, and empathetic messages for patients\n3. Adapt tone based on the situation (confirmation, cancellation, escalation)\n4. Include all necessary details (date, time, location, doctor, department)\n5. Provide next steps or instructions\n6. Return the message in the structured format\n\nMessage Guidelines:\n- Use warm, professional, empathetic tone\n- Be clear and concise\n- Include specific details (dates, times, locations)\n- Provide actionable next steps\n- Express care and concern for patient wellbeing\n- Use simple, non-medical language\n- For escalations, reassure patient they will be contacted\n- For confirmations, include appointment details clearly\n- For cancellations, acknowledge and offer alternatives if appropriate\n\nMessage length: Keep under 200 words for clarity.\n\nReturn your message in the structured format defined by the output parser."},"hasOutputParser":true,"toolDescription":"Composes empathetic healthcare messages for patient communication"},"typeVersion":3},{"id":"5c87b722-4210-427b-bf79-7bc29faa38b4","name":"OpenAI Model - Intake","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[-1456,320],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{},"builtInTools":{}},"credentials":{"openAiApi":{"id":"mv2ECvRtbAK63G2g","name":"OpenAi account"}},"typeVersion":1.3},{"id":"9b707b9e-a26b-4adc-8802-185269625152","name":"OpenAI Model - Care Coordination","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[-1472,496],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{},"builtInTools":{}},"credentials":{"openAiApi":{"id":"mv2ECvRtbAK63G2g","name":"OpenAi account"}},"typeVersion":1.3},{"id":"4599a1d8-ed45-4fcb-8929-9ba8def74fa5","name":"OpenAI Model - Notification","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[-912,608],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{},"builtInTools":{}},"credentials":{"openAiApi":{"id":"mv2ECvRtbAK63G2g","name":"OpenAi account"}},"typeVersion":1.3},{"id":"14e15b9d-849e-4310-adec-d8822b6ea57a","name":"Intake Parser","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[-656,320],"parameters":{"schemaType":"manual","inputSchema":"{\n\t\"type\": \"object\",\n\t\"properties\": {\n\t\t\"intent\": {\n\t\t\t\"type\": \"string\",\n\t\t\t\"enum\": [\"appointment_booking\", \"reschedule\", \"cancellation\", \"reminder_confirmation\", \"general_enquiry\"]\n\t\t},\n\t\t\"entities\": {\n\t\t\t\"type\": \"object\",\n\t\t\t\"properties\": {\n\t\t\t\t\"patient_name\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"patient_id\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"department\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"doctor\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"preferred_date\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"preferred_time\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"urgency\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"contact_method\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"confidence_level\": {\n\t\t\t\"type\": \"number\",\n\t\t\t\"minimum\": 0,\n\t\t\t\"maximum\": 1\n\t\t}\n\t}\n}"},"typeVersion":1.3},{"id":"3a57c3a5-16d0-4bd8-9ad8-ba24a82a782e","name":"Care Coordination Parser","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[-1056,528],"parameters":{"schemaType":"manual","inputSchema":"{\n\t\"type\": \"object\",\n\t\"properties\": {\n\t\t\"action_required\": {\n\t\t\t\"type\": \"string\",\n\t\t\t\"enum\": [\"book_appointment\", \"reschedule_appointment\", \"cancel_appointment\", \"escalate_to_staff\", \"request_more_info\", \"provide_information\"]\n\t\t},\n\t\t\"escalation_reason\": {\n\t\t\t\"type\": \"string\"\n\t\t},\n\t\t\"appointment_details\": {\n\t\t\t\"type\": \"object\",\n\t\t\t\"properties\": {\n\t\t\t\t\"date\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"time\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"doctor\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"department\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t},\n\t\t\t\t\"location\": {\n\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"requires_human_review\": {\n\t\t\t\"type\": \"boolean\"\n\t\t},\n\t\t\"notes\": {\n\t\t\t\"type\": \"string\"\n\t\t}\n\t}\n}"},"typeVersion":1.3},{"id":"2f103855-602d-474a-8af9-b4bf8b4ccf39","name":"Notification Parser","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[-768,544],"parameters":{"schemaType":"manual","inputSchema":"{\n\t\"type\": \"object\",\n\t\"properties\": {\n\t\t\"message_to_patient\": {\n\t\t\t\"type\": \"string\"\n\t\t},\n\t\t\"notification_method\": {\n\t\t\t\"type\": \"string\",\n\t\t\t\"enum\": [\"email\", \"sms\", \"both\"]\n\t\t},\n\t\t\"subject\": {\n\t\t\t\"type\": \"string\"\n\t\t},\n\t\t\"urgency_flag\": {\n\t\t\t\"type\": \"boolean\"\n\t\t}\n\t}\n}"},"typeVersion":1.3},{"id":"3d33bed0-3c14-423e-9ba0-33a8064b1f32","name":"Conversation Memory","type":"@n8n/n8n-nodes-langchain.memoryBufferWindow","position":[-1960,320],"parameters":{},"typeVersion":1.3},{"id":"3b8c5693-8a7c-4c53-ad11-facbbb083d9a","name":"Prepare Final Output","type":"n8n-nodes-base.set","position":[-448,96],"parameters":{"options":{},"assignments":{"assignments":[{"id":"id-1","name":"intent","type":"string","value":"={{ $json.output.intent }}"},{"id":"id-2","name":"entities","type":"object","value":"={{ $json.output.entities }}"},{"id":"id-3","name":"action_required","type":"string","value":"={{ $json.output.action_required }}"},{"id":"id-4","name":"message_to_patient","type":"string","value":"={{ $json.output.message_to_patient }}"},{"id":"id-5","name":"confidence_level","type":"number","value":"={{ $json.output.confidence_level }}"},{"id":"id-6","name":"notification_method","type":"string","value":"={{ $json.output.notification_method }}"}]},"includeOtherFields":true},"typeVersion":3.4},{"id":"62305031-da10-48fe-8cce-d534cf7b0986","name":"Check Notification Method","type":"n8n-nodes-base.if","position":[-224,96],"parameters":{"options":{},"conditions":{"options":{"leftValue":"","caseSensitive":false,"typeValidation":"loose"},"combinator":"and","conditions":[{"id":"id-1","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.notification_method }}","rightValue":"email"}]}},"typeVersion":2.3},{"id":"93da0383-64eb-4b61-bab6-8196afaff9cd","name":"Send Email Notification","type":"n8n-nodes-base.emailSend","position":[0,80],"webhookId":"8424d2c2-0d73-4933-99cd-e3642cdc2485","parameters":{"html":"={{ $json.message_to_patient }}","options":{},"subject":"={{ $json.intent.replace(\"_\", \" \").toUpperCase() }} - {{ $('Workflow Configuration').first().json.hospitalName }}","toEmail":"={{ $json.entities.contact_method }}","fromEmail":"<__PLACEHOLDER_VALUE__Hospital Email Address__>"},"typeVersion":2.1},{"id":"4437958f-3537-4657-8c5c-c0afd3d1e2e4","name":"Send SMS Notification","type":"n8n-nodes-base.twilio","position":[16,336],"parameters":{"to":"={{ $json.entities.contact_method }}","from":"<__PLACEHOLDER_VALUE__Twilio Phone Number__>","message":"={{ $json.message_to_patient }}","options":{}},"typeVersion":1},{"id":"51cd9d7a-3a69-45aa-a067-7dee2e38a184","name":"EHR System Tool","type":"n8n-nodes-base.httpRequestTool","position":[-1312,528],"parameters":{"url":"={{ $fromAI(\"ehr_endpoint\", \"The specific EHR API endpoint to query (e.g., /patients/{id})\", \"string\") }}","options":{},"authentication":"predefinedCredentialType","toolDescription":"Queries the EHR system to retrieve patient records and medical history","nodeCredentialType":"httpHeaderAuth"},"typeVersion":4.3},{"id":"4887d524-9fbe-4adc-93ed-964c23b204b7","name":"Scheduling System Tool","type":"n8n-nodes-base.httpRequestTool","position":[-1184,640],"parameters":{"url":"={{ $fromAI(\"scheduling_endpoint\", \"The scheduling API endpoint\", \"string\") }}","method":"={{ $fromAI(\"http_method\", \"HTTP method (GET to check availability, POST to book, PUT to update, DELETE to cancel)\", \"string\", \"GET\") }}","options":{},"authentication":"predefinedCredentialType","toolDescription":"Updates or queries the scheduling system for appointment availability and booking","nodeCredentialType":"httpHeaderAuth"},"typeVersion":4.3},{"id":"22ba5a9f-d605-40fe-94fb-dd723e2e7703","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[-912,-416],"parameters":{"color":3,"width":400,"height":352,"content":"## Prerequisites\nActive OpenAI API account with credits, connected email service (Gmail recommended)\n## Use Cases\nPost-appointment follow-up reminders, medication adherence check-ins, preventive care scheduling\n## Customization\nModify AI prompts in agent tools to match your clinical workflows, adjust notification timing logic\n## Benefits\nReduces administrative workload by 70%, ensures consistent patient follow-up"},"typeVersion":1},{"id":"f26037a2-2c4b-4b25-aa10-6446e6341baa","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[-1344,-368],"parameters":{"width":400,"height":304,"content":"\n## Setup Steps\n1. Configure OpenAI credentials with API key for AI model access\n2. Set up EHR System Tool node with your electronic health records integration endpoint\n3. Configure Scheduling System Tool with your appointment management system API\n4. Connect Gmail account for email notifications with OAuth authentication\n5. Add Twilio credentials for SMS delivery with account SID and auth token\n6. Customize Care Coordination Agent Tool parameters for your clinical protocols"},"typeVersion":1},{"id":"54bc3d50-b939-4904-b107-941c2e90ee69","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[-2000,-336],"parameters":{"width":608,"height":272,"content":"## How It Works\nThis workflow automates patient care coordination in healthcare settings by intelligently processing patient information and scheduling follow-up communications through multiple channels. Designed for healthcare administrators, clinic coordinators, and medical practice managers, it solves the critical problem of manual patient follow-up management and inconsistent communication across care teams. The system receives patient intake data, uses AI-powered agents to analyze care requirements and determine appropriate notification timing, then automatically dispatches personalized messages via email and SMS. The workflow leverages OpenAI's advanced models for care coordination logic and notification content generation, ensuring contextually appropriate and timely patient communications while maintaining conversation history for continuity of care."},"typeVersion":1},{"id":"6b6ab613-cea1-4b26-b8ba-bd6ff920aaee","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[-2096,-32],"parameters":{"color":7,"width":560,"height":592,"content":"## Patient Information Capture\n**Why:** Initiates the workflow with structured patient data including medical history, appointment details, and contact preferences, establishing the foundation for personalized care coordination."},"typeVersion":1},{"id":"41719b05-703a-46bb-bc65-99900f9cdc54","name":"Sticky Note4","type":"n8n-nodes-base.stickyNote","position":[-1520,-32],"parameters":{"color":7,"width":992,"height":848,"content":"## AI Care Coordination Analysis\n**Why:** Processes patient information through intelligent agents that evaluate care requirements, determine optimal follow-up schedules, and generate contextually appropriate communication strategies based on medical protocols."},"typeVersion":1},{"id":"7fcaf5ad-dc19-48aa-ace8-fc4528daa101","name":"Sticky Note5","type":"n8n-nodes-base.stickyNote","position":[-512,-32],"parameters":{"color":7,"width":704,"height":800,"content":"## Multi-Channel Notification Delivery\n**Why:** Automatically sends personalized follow-up messages through patient-preferred channels (email/SMS), ensuring reliable communication delivery and improved patient engagement with minimal manual intervention."},"typeVersion":1}],"active":false,"pinData":{},"settings":{"availableInMCP":false,"executionOrder":"v1"},"versionId":"b01e6772-8009-450d-a846-5ccc066d4ddb","connections":{"Intake Agent":{"main":[[{"node":"Prepare Final Output","type":"main","index":0}]]},"Intake Parser":{"ai_outputParser":[[{"node":"Intake Agent","type":"ai_outputParser","index":0}]]},"Patient Input":{"main":[[{"node":"Workflow Configuration","type":"main","index":0}]]},"EHR System Tool":{"ai_tool":[[{"node":"Care Coordination Agent Tool","type":"ai_tool","index":0}]]},"Conversation Memory":{"ai_memory":[[{"node":"Intake Agent","type":"ai_memory","index":0},{"node":"Patient Input","type":"ai_memory","index":0}]]},"Notification Parser":{"ai_outputParser":[[{"node":"Notification Agent Tool","type":"ai_outputParser","index":0}]]},"Prepare Final Output":{"main":[[{"node":"Check Notification Method","type":"main","index":0}]]},"OpenAI Model - Intake":{"ai_languageModel":[[{"node":"Intake Agent","type":"ai_languageModel","index":0}]]},"Scheduling System Tool":{"ai_tool":[[{"node":"Care Coordination Agent Tool","type":"ai_tool","index":0}]]},"Workflow Configuration":{"main":[[{"node":"Intake Agent","type":"main","index":0}]]},"Notification Agent Tool":{"ai_tool":[[{"node":"Intake Agent","type":"ai_tool","index":0}]]},"Care Coordination Parser":{"ai_outputParser":[[{"node":"Care Coordination Agent Tool","type":"ai_outputParser","index":0}]]},"Check Notification Method":{"main":[[{"node":"Send Email Notification","type":"main","index":0}],[{"node":"Send SMS Notification","type":"main","index":0}]]},"OpenAI Model - Notification":{"ai_languageModel":[[{"node":"Notification Agent Tool","type":"ai_languageModel","index":0}]]},"Care Coordination Agent Tool":{"ai_tool":[[{"node":"Intake Agent","type":"ai_tool","index":0}]]},"OpenAI Model - Care Coordination":{"ai_languageModel":[[{"node":"Care Coordination Agent Tool","type":"ai_languageModel","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":24,"nodeTypes":{"n8n-nodes-base.if":{"count":1},"n8n-nodes-base.set":{"count":2},"n8n-nodes-base.twilio":{"count":1},"n8n-nodes-base.emailSend":{"count":1},"n8n-nodes-base.stickyNote":{"count":6},"@n8n/n8n-nodes-langchain.agent":{"count":1},"n8n-nodes-base.httpRequestTool":{"count":2},"@n8n/n8n-nodes-langchain.agentTool":{"count":2},"@n8n/n8n-nodes-langchain.chatTrigger":{"count":1},"@n8n/n8n-nodes-langchain.lmChatOpenAi":{"count":3},"@n8n/n8n-nodes-langchain.memoryBufferWindow":{"count":1},"@n8n/n8n-nodes-langchain.outputParserStructured":{"count":3}}},"status":"published","readyToDemo":null,"user":{"name":"Cheng Siong Chin","username":"cschin","bio":"Dr. Cheng Siong CHIN is an n8n workflow creator specializing in AI-powered automation, agent orchestration, and intelligent system integrations. He designs and builds end-to-end workflows that combine LLMs, APIs, and data pipelines to streamline complex processes and deliver production-ready automation solutions. Contact me to discuss custom AI workflows and agent architectures.\n","verified":true,"links":["https://gravatar.com/mysticluminary9fa255f7f5"],"avatar":"https://gravatar.com/avatar/54544f98e839bb9dd9a764ad1e6823eeddb6db5138d201e42f291a7b0a73303f?r=pg&d=retro&size=200"},"nodes":[{"id":11,"icon":"fa:envelope","name":"n8n-nodes-base.emailSend","codex":{"data":{"alias":["SMTP","email","human","form","wait","hitl","approval"],"resources":{"generic":[{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/","icon":"👦","label":"Build your own virtual assistant with n8n: A step by step guide"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.sendemail/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/sendemail/"}]},"categories":["Communication","HITL","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"HITL":["Human in the Loop"]}}},"group":"[\"output\"]","defaults":{"name":"Send Email","color":"#00bb88"},"iconData":{"icon":"envelope","type":"icon"},"displayName":"Send Email","typeVersion":2,"nodeCategories":[{"id":6,"name":"Communication"},{"id":9,"name":"Core Nodes"},{"id":28,"name":"HITL"}]},{"id":20,"icon":"fa:map-signs","name":"n8n-nodes-base.if","codex":{"data":{"alias":["Router","Filter","Condition","Logic","Boolean","Branch"],"details":"The IF node can be used to implement binary conditional logic in your workflow. You can set up one-to-many conditions to evaluate each item of data being inputted into the node. That data will either evaluate to TRUE or FALSE and route out of the node accordingly.\n\nThis node has multiple types of conditions: Bool, String, Number, and Date & Time.","resources":{"generic":[{"url":"https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/","icon":"🏭","label":"Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"},{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"},{"url":"https://n8n.io/blog/create-a-toxic-language-detector-for-telegram/","icon":"🤬","label":"Create a toxic language detector for Telegram in 4 step"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/","icon":"🔗","label":"How to build a low-code, self-hosted URL shortener in 3 steps"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/","icon":"🙌","label":"Sending Automated Congratulations with Google Sheets, Twilio, and n8n "},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.if/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"If","color":"#408000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"If","typeVersion":2,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":38,"icon":"fa:pen","name":"n8n-nodes-base.set","codex":{"data":{"alias":["Set","JS","JSON","Filter","Transform","Map"],"resources":{"generic":[{"url":"https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/","icon":"🏭","label":"Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"},{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/","icon":"📈","label":"Automatically pulling and visualizing data with n8n"},{"url":"https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/","icon":"📡","label":"Database Monitoring and Alerting with n8n"},{"url":"https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/","icon":"🧾","label":"Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/","icon":"🔗","label":"How to build a low-code, self-hosted URL shortener in 3 steps"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/","icon":"📱","label":"Building an expense tracking app in 10 minutes"},{"url":"https://n8n.io/blog/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/","icon":"📹","label":"The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/","icon":"🧰","label":"Learn to Build Powerful API Endpoints Using Webhooks"},{"url":"https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/","icon":"📈","label":"How a Membership Development Manager automates his work and investments"},{"url":"https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/","icon":"📈","label":"A low-code bitcoin ticker built with QuestDB and n8n.io"},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"},{"url":"https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/","icon":"🛵","label":"How Goomer automated their operations with over 200 n8n workflows"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.set/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"input\"]","defaults":{"name":"Edit Fields"},"iconData":{"icon":"pen","type":"icon"},"displayName":"Edit Fields (Set)","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":45,"icon":"file:twilio.svg","name":"n8n-nodes-base.twilio","codex":{"data":{"alias":["SMS","Phone","Voice"],"resources":{"generic":[{"url":"https://n8n.io/blog/love-at-first-sight-ricardos-n8n-journey/","icon":"❤️","label":"Love at first sight: Ricardo’s n8n journey"},{"url":"https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/","icon":"📡","label":"Database Monitoring and Alerting with n8n"},{"url":"https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/","icon":"🧾","label":"Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"},{"url":"https://n8n.io/blog/tracking-time-spent-in-meetings-with-google-calendar-twilio-and-n8n/","icon":"🗓","label":"Tracking Time Spent in Meetings With Google Calendar, Twilio, and n8n"},{"url":"https://n8n.io/blog/creating-error-workflows-in-n8n/","icon":"🌪","label":"Creating Error Workflows in n8n"},{"url":"https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/","icon":"🙌","label":"Sending Automated Congratulations with Google Sheets, Twilio, and n8n "},{"url":"https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/","icon":"🧰","label":"Learn to Build Powerful API Endpoints Using Webhooks"},{"url":"https://n8n.io/blog/sending-sms-the-low-code-way-with-airtable-twilio-programmable-sms-and-n8n/","icon":"📱","label":"Sending SMS the Low-Code Way with Airtable, Twilio Programmable SMS, and n8n"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.twilio/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/twilio/"}]},"categories":["Communication","Development"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"transform\"]","defaults":{"name":"Twilio"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgNjUgNjUiPjx1c2UgeGxpbms6aHJlZj0iI2EiIHg9Ii41IiB5PSIuNSIvPjxzeW1ib2wgaWQ9ImEiIG92ZXJmbG93PSJ2aXNpYmxlIj48ZyBmaWxsPSIjZTMxZTI2IiBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSI+PHBhdGggZD0iTTMxLjk1MyAwQzE0LjMzNyAwIDAgMTQuMzM3IDAgMzEuOTUzczE0LjMzNyAzMS45NTMgMzEuOTUzIDMxLjk1M0M0OS42NjMgNjQgNjQgNDkuNjYzIDY0IDMxLjk1M1M0OS42NjMgMCAzMS45NTMgMG0wIDU1LjU2N2MtMTIuOTMxIDAtMjMuNTItMTAuNTg5LTIzLjUyLTIzLjYxNCAwLTEyLjkzMSAxMC41ODktMjMuNTIgMjMuNTItMjMuNTIgMTMuMDI1IDAgMjMuNjE0IDEwLjU4OSAyMy42MTQgMjMuNTIgMCAxMy4wMjUtMTAuNTg5IDIzLjYxNC0yMy42MTQgMjMuNjE0Ii8+PHVzZSB4bGluazpocmVmPSIjYiIvPjx1c2UgeGxpbms6aHJlZj0iI2IiIHk9IjE1LjkzIi8+PHBhdGggZD0iTTE3LjMzNSAzOS45MThhNi42NCA2LjY0IDAgMCAxIDYuNjUzLTYuNjUzIDYuNjUzIDYuNjUzIDAgMSAxIDAgMTMuMzA2IDYuNjQgNi42NCAwIDAgMS02LjY1My02LjY1M20wLTE1LjkzYTYuNjQgNi42NCAwIDAgMSA2LjY1My02LjY1MyA2LjY0IDYuNjQgMCAwIDEgNi42NTMgNi42NTMgNi42NCA2LjY0IDAgMCAxLTYuNjUzIDYuNjUzIDYuNjQgNi42NCAwIDAgMS02LjY1My02LjY1MyIvPjwvZz48L3N5bWJvbD48ZGVmcz48cGF0aCBpZD0iYiIgZD0iTTMzLjI2NSAyMy45ODhhNi42NCA2LjY0IDAgMSAxIDEzLjMwNiAwIDYuNjQgNi42NCAwIDEgMS0xMy4zMDYgMCIvPjwvZGVmcz48L3N2Zz4="},"displayName":"Twilio","typeVersion":1,"nodeCategories":[{"id":5,"name":"Development"},{"id":6,"name":"Communication"}]},{"id":565,"icon":"fa:sticky-note","name":"n8n-nodes-base.stickyNote","codex":{"data":{"alias":["Comments","Notes","Sticky"],"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\"]","defaults":{"name":"Sticky Note","color":"#FFD233"},"iconData":{"icon":"sticky-note","type":"icon"},"displayName":"Sticky Note","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1119,"icon":"fa:robot","name":"@n8n/n8n-nodes-langchain.agent","codex":{"data":{"alias":["LangChain","Chat","Conversational","Plan and Execute","ReAct","Tools"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Agents","Root Nodes"]}}},"group":"[\"transform\"]","defaults":{"name":"AI Agent","color":"#404040"},"iconData":{"icon":"robot","type":"icon"},"displayName":"AI Agent","typeVersion":3,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1153,"icon":"file:openAiLight.svg","name":"@n8n/n8n-nodes-langchain.lmChatOpenAi","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatopenai/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Language Models","Root Nodes"],"Language Models":["Chat Models (Recommended)"]}}},"group":"[\"transform\"]","defaults":{"name":"OpenAI Chat Model"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg0IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NyAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MiA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSIjN0Q3RDg3Ii8+Cjwvc3ZnPgo="},"displayName":"OpenAI Chat Model","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1163,"icon":"fa:database","name":"@n8n/n8n-nodes-langchain.memoryBufferWindow","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.memorybufferwindow/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Memory"],"Memory":["For beginners"]}}},"group":"[\"transform\"]","defaults":{"name":"Simple Memory"},"iconData":{"icon":"database","type":"icon"},"displayName":"Simple Memory","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1179,"icon":"fa:code","name":"@n8n/n8n-nodes-langchain.outputParserStructured","codex":{"data":{"alias":["json","zod"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.outputparserstructured/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Output Parsers"]}}},"group":"[\"transform\"]","defaults":{"name":"Structured Output Parser"},"iconData":{"icon":"code","type":"icon"},"displayName":"Structured Output Parser","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1247,"icon":"fa:comments","name":"@n8n/n8n-nodes-langchain.chatTrigger","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.chattrigger/"}]},"categories":["Core Nodes","Langchain"]}},"group":"[\"trigger\"]","defaults":{"name":"When chat message received"},"iconData":{"icon":"comments","type":"icon"},"displayName":"Chat Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"},{"id":26,"name":"Langchain"}]},{"id":1310,"icon":"fa:robot","name":"@n8n/n8n-nodes-langchain.agentTool","codex":{"data":{"alias":["LangChain","Chat","Conversational","Plan and Execute","ReAct","Tools"],"categories":["AI","Langchain"],"subcategories":{"AI":["Tools"],"Tools":["Recommended Tools"]}}},"group":"[\"transform\"]","defaults":{"name":"AI Agent Tool","color":"#404040"},"iconData":{"icon":"robot","type":"icon"},"displayName":"AI Agent Tool","typeVersion":3,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]}],"categories":[{"id":40,"name":"Support Chatbot"},{"id":47,"name":"AI Chatbot"}],"image":[]}}