Gestión y programación automatizada de leads para un bufete de abogados basado en AI, JotForm, WhatsApp y calendario

Avanzado

Este es unContent Creation, Multimodal AIflujo de automatización del dominio deautomatización que contiene 16 nodos.Utiliza principalmente nodos como If, WhatsApp, GoogleSheets, JotFormTrigger, Agent. Gestión y programación automatizadas de prospectos para un bufete de abogados usando AI, JotForm, WhatsApp y calendario

Requisitos previos
  • Credenciales de API de Google Sheets
  • Clave de API de Google Gemini
  • Información de conexión de la base de datos PostgreSQL
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "meta": {
    "instanceId": "93f396852104089b8670e7494b0f3668b420464668ae4a8c1d6b4b5799f8e3ef",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "0fa7eed1-0e6d-4370-bb11-2500e93c2ef0",
      "name": "Activador JotForm",
      "type": "n8n-nodes-base.jotFormTrigger",
      "position": [
        -1024,
        256
      ],
      "webhookId": "c18ee2e4-2ebf-4058-a167-e71b8a6d1ff0",
      "parameters": {
        "form": "252801824783057"
      },
      "credentials": {
        "jotFormApi": {
          "id": "I2Xm5wbkEW1qEJC5",
          "name": "JotForm account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "0c107533-b8d0-4dc8-a073-7138a7288146",
      "name": "Añadir o actualizar fila en hoja",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -800,
        256
      ],
      "parameters": {
        "columns": {
          "value": {
            "Full Name": "={{ $json['Full Name'].first }} {{ $json['Full Name'].last }}",
            "client type": "={{ $json['I am a...'] }}",
            "Phone Number": "={{ $json['Phone Number'].full }}",
            "Brief Message": "={{ $json['Brief Message'] }}",
            "Email Address": "={{ $json['Email Address'] }}",
            "Legal Service of Interest": "={{ $json['Legal Service of Interest'] }}",
            "How Did You Hear About Us?": "={{ $json['How Did You Hear About Us?'] }}"
          },
          "schema": [
            {
              "id": "Full Name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Full Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Email Address",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Email Address",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Phone Number",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Phone Number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "client type",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "client type",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Legal Service of Interest",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Legal Service of Interest",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Brief Message",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Brief Message",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "How Did You Hear About Us?",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "How Did You Hear About Us?",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Email Address"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1invngp2z_3ZMe_Qcs5XioDkAs50DSXT-Pl4ibPLXyA0/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1invngp2z_3ZMe_Qcs5XioDkAs50DSXT-Pl4ibPLXyA0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1invngp2z_3ZMe_Qcs5XioDkAs50DSXT-Pl4ibPLXyA0/edit?usp=drivesdk",
          "cachedResultName": "Law Client Enquiries"
        },
        "authentication": "serviceAccount"
      },
      "credentials": {
        "googleApi": {
          "id": "mYRmmCMyWcLawmcE",
          "name": "Google Service Account account"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "69795336-f1ce-4ce8-b7fc-4379418cb83e",
      "name": "Agente de IA",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -528,
        256
      ],
      "parameters": {
        "text": "=<prompt>\n    <persona>\n        <name>Alex</name>\n        <role>Expert, friendly, and efficient legal intake assistant</role>\n        <company>VTR Law Firm</company>\n    </persona>\n\n    <client_info>\n        <name>{{ $json[\"Full Name\"] }}</name>\n        <service_interest>{{ $json[\"Legal Service of Interest\"] }}</service_interest>\n        <message>{{ $json[\"Brief Message\"] }}</message>\n    </client_info>\n\n    <task>\n        Draft a concise, professional, and welcoming WhatsApp message to the potential client using their submitted information.\n    </task>\n\n    <instructions>\n        <message_structure>\n            <item>Greet the client by their first name.</item>\n            <item>Thank them for contacting VTR Law Firm regarding their interest in the specified service.</item>\n            <item>Briefly acknowledge their message to show you've read it.</item>\n            <item>Inform them that the next step is a *complimentary consultation* to discuss their matter in more detail.</item>\n            <item>Provide a clear call to action to schedule the meeting using this link: https://calendly.com/vtr-law-firm/consultation</item>\n            <item>Sign off professionally with your name and the firm's name.</item>\n        </message_structure>\n    </instructions>\n\n    <output_constraints>\n        <rule>The output must be formatted as a single, average-sized WhatsApp message.</rule>\n        <rule>Use asterisks (*) for bolding key phrases.</rule>\n        <rule>Do not include the client's phone number or email address in your response.</rule>\n        <rule>Generate only the WhatsApp message text itself.</rule>\n    </output_constraints>\n\n    <example>\n        <description>Based on the instructions and sample data, the generated message should look like this.</description>\n        <output_message>\nHi Abhi,\n\nThank you for contacting VTR Law Firm about your query related to Business Law. I've reviewed the message you sent regarding the situation with your partner.\n\nThe best next step is to schedule a *complimentary, no-obligation consultation* with one of our legal experts to discuss this in more detail.\n\nYou can schedule a call with our legal executive by replying your available times\n\nWe look forward to speaking with you.\n\nBest regards,\nAlex | VTR Law Firm\n        </output_message>\n    </example>\n</prompt>",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 2.2
    },
    {
      "id": "95a55ce6-3967-4a6b-ba11-57ba9c9d0998",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        -528,
        528
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "googlePalmApi": {
          "id": "qsaK3VMNWQDWLweQ",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "b06b2984-c342-4db7-a46b-06679b0080db",
      "name": "Activador WhatsApp",
      "type": "n8n-nodes-base.whatsAppTrigger",
      "position": [
        240,
        320
      ],
      "webhookId": "685f1ed2-ffac-460b-b2eb-b29891e539d4",
      "parameters": {
        "options": {
          "messageStatusUpdates": [
            "delivered"
          ]
        },
        "updates": [
          "messages"
        ]
      },
      "credentials": {
        "whatsAppTriggerApi": {
          "id": "iXRwfmH8WHEurWCh",
          "name": "WhatsApp OAuth account"
        }
      },
      "executeOnce": true,
      "typeVersion": 1
    },
    {
      "id": "a715deb0-e11f-46df-b4ae-1cb4c214c183",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        496,
        320
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "c2380501-f59a-4075-b335-8ae3b7f64788",
              "operator": {
                "type": "string",
                "operation": "empty",
                "singleValue": true
              },
              "leftValue": "={{ $json.messages[0].text.body }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "e157f8f8-f9da-4f03-baa3-114b199d36e0",
      "name": "OBTENER MÚLTIPLES EVENTOS DEL DÍA SOLICITADO",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        976,
        544
      ],
      "parameters": {
        "options": {},
        "timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', ``, 'string') }}",
        "timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', ``, 'string') }}",
        "calendar": {
          "__rl": true,
          "mode": "list",
          "value": "venkibvb5192@gmail.com",
          "cachedResultName": "venkibvb5192@gmail.com"
        },
        "operation": "getAll",
        "returnAll": true
      },
      "credentials": {
        "googleCalendarOAuth2Api": {
          "id": "UMXPrV71iWBRBbyc",
          "name": "Google Calendar account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "a4b80f3b-caf8-40c7-b787-c090b5010755",
      "name": "Crear un evento",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        1136,
        544
      ],
      "parameters": {
        "end": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}",
        "start": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}",
        "calendar": {
          "__rl": true,
          "mode": "list",
          "value": "venkibvb5192@gmail.com",
          "cachedResultName": "venkibvb5192@gmail.com"
        },
        "additionalFields": {
          "summary": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', ``, 'string') }}",
          "attendees": [
            "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('attendees0_Attendees', ``, 'string') }}"
          ],
          "description": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Description', ``, 'string') }}",
          "sendUpdates": "all",
          "guestsCanInviteOthers": true
        }
      },
      "credentials": {
        "googleCalendarOAuth2Api": {
          "id": "UMXPrV71iWBRBbyc",
          "name": "Google Calendar account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "937a57e5-4e9e-4302-99a7-e38ff770e453",
      "name": "Google Gemini Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        656,
        544
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "googlePalmApi": {
          "id": "qsaK3VMNWQDWLweQ",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "ed687b20-55af-41a3-b815-0044bf238692",
      "name": "Agente de IA1",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        912,
        336
      ],
      "parameters": {
        "text": "=<prompt>\n    <persona>\n        <name>Alex</name>\n        <role>Professional and friendly legal scheduling assistant</role>\n        <company>VTR Law Associates</company>\n    </persona>\n\n    <context>\n        <timestamp>\n            The current date and time is {{ $now.toFormat(\"DDDD, HH:mm:ss ZZZZ\") }}. You must use this information only to correctly interpret relative time requests from the user (like \"tomorrow,\" \"next Tuesday,\" or \"in two hours\").\n        </timestamp>\n    </context>\n\n    <instructions>\n        <task>\n            When a user wants to schedule a legal consultation, follow these steps precisely. Use the provided tools and context to answer the user's question.\n        </task>\n        \n        <procedure>\n            <step n=\"1\">\n                <description>Find User Details: First, use the 'Know about the user enquiry' tool to find the user's requirement details, such as their email address and the reason for their legal enquiry.</description>\n                <tool>Know about the user enquiry</tool>\n            </step>\n            \n            <step n=\"2\">\n                <description>Gather Missing Details: Ask the user for their preferred date and time for the consultation. If you could not find the user's email address in the previous step, politely ask for it now for the calendar invitation.</description>\n            </step>\n            \n            <step n=\"3\">\n                <description>Check Availability: Use the 'GET MANY EVENTS OF DAY THE USER ASKED' tool to check for existing events on the user's requested date.</description>\n                <tool>GET MANY EVENTS OF DAY THE USER ASKED</tool>\n            </step>\n            \n            <step n=\"4\">\n                <description>Handle the Outcome based on availability:</description>\n                <condition case=\"time available\">\n                    <action>Use the 'Create an event' tool. Set the event title to \"Legal Consultation - VTR Law Associates\" and add the user's email as an attendee.</action>\n                    <action>Confirm with the user that the consultation is successfully booked.</action>\n                    <tool>Create an event</tool>\n                </condition>\n                <condition case=\"time unavailable\">\n                    <action>Do not create an event.</action>\n                    <action>Inform the user that the requested time is booked and suggest specific alternative times based on the availability you found.</action>\n                </condition>\n            </step>\n        </procedure>\n        \n        <general_instruction>Handle greetings naturally without needing the context.</general_instruction>\n    </instructions>\n\n    <user_input>\n        <message>{{ $json.messages[0].text.body }}</message>\n    </user_input>\n\n    <output_format>\n        <style>WhatsApp</style>\n        <rules>\n            <rule>Use italics for emphasis.</rule>\n            <rule>Use bold for key points.</rule>\n            <rule>Use bullet lists (•) for lists.</rule>\n            <rule>Keep responses short, clear, and conversational.</rule>\n            <rule>Avoid markdown headers or code blocks.</rule>\n        </rules>\n    </output_format>\n\n    <constraints>\n        <fallback>\n            If the answer cannot be found in the context, reply: \"I'm sorry, my primary role is to schedule consultations. I don't have the information to answer that question.\"\n        </fallback>\n    </constraints>\n</prompt>",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 2.2
    },
    {
      "id": "6cda0580-9e50-4406-a794-2d9315498f0e",
      "name": "Memoria de Chat Postgres",
      "type": "@n8n/n8n-nodes-langchain.memoryPostgresChat",
      "position": [
        816,
        544
      ],
      "parameters": {
        "sessionKey": "={{ $('If').item.json.contacts[0].wa_id }}",
        "sessionIdType": "customKey"
      },
      "credentials": {
        "postgres": {
          "id": "B6Q3ACzgMJ6GYv3R",
          "name": "Postgres account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "4891245b-9402-44b6-8632-d6f1053a8f54",
      "name": "Conocer la consulta del usuario",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        1296,
        544
      ],
      "parameters": {
        "options": {},
        "filtersUI": {
          "values": [
            {
              "lookupColumn": "Phone Number"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1invngp2z_3ZMe_Qcs5XioDkAs50DSXT-Pl4ibPLXyA0/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1invngp2z_3ZMe_Qcs5XioDkAs50DSXT-Pl4ibPLXyA0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1invngp2z_3ZMe_Qcs5XioDkAs50DSXT-Pl4ibPLXyA0/edit?usp=drivesdk",
          "cachedResultName": "Law Client Enquiries"
        },
        "authentication": "serviceAccount"
      },
      "credentials": {
        "googleApi": {
          "id": "mYRmmCMyWcLawmcE",
          "name": "Google Service Account account"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "3021dcef-b9ef-4a87-abe6-992081b72600",
      "name": "Enviar mensaje",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        -144,
        256
      ],
      "webhookId": "a823ba47-31b2-47e6-9668-9441566daa04",
      "parameters": {
        "textBody": "={{ $json.output }}",
        "operation": "send",
        "phoneNumberId": "838262432698376",
        "additionalFields": {},
        "recipientPhoneNumber": "={{ $('Append or update row in sheet').item.json['Phone Number'] }}"
      },
      "credentials": {
        "whatsAppApi": {
          "id": "fGqaO9SAj11hcCzx",
          "name": "WhatsApp account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "6aad2ba5-1451-4150-b28a-f760061e8341",
      "name": "Enviar mensaje1",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        1424,
        336
      ],
      "webhookId": "2b88030b-0e59-4b3a-8a97-0d1c81695f5b",
      "parameters": {
        "textBody": "={{ $json.output }}",
        "operation": "send",
        "phoneNumberId": "838262432698376",
        "additionalFields": {},
        "recipientPhoneNumber": "={{ $('WhatsApp Trigger').item.json.contacts[0].wa_id }}"
      },
      "credentials": {
        "whatsAppApi": {
          "id": "fGqaO9SAj11hcCzx",
          "name": "WhatsApp account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "b90257f8-e8c0-4c63-9713-6052a9785d8f",
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1072,
        -352
      ],
      "parameters": {
        "width": 1136,
        "height": 1056,
        "content": "## Part A: New Lead Intake & Welcome Message\n\nThis flow triggers when a potential client fills out your JotForm. It saves their data and sends an immediate welcome message.\n\n* **1. JotForm Trigger** 📥\n    * **Function**: This node is the starting point. It actively listens for new submissions on your specific JotForm. When someone hits 'submit', this node wakes up and grabs all the information they entered.\n\n* **2. Append or update row in sheet** 📝\n    * **Function**: This node acts as your record-keeper. It takes the data from the JotForm and adds it as a new row in your \"Law Client Enquiries\" Google Sheet. If an entry with the same email already exists, it simply updates that row with the new information.\n\n* **3. AI Agent** 🤖\n    * **Function**: This is the message writer. It takes the client's name and service of interest from the previous step and uses a pre-written prompt to craft a personalized, professional welcome message.\n\n* **4. Google Gemini Chat Model** 🧠\n    * **Function**: This is the \"brain\" that powers the AI Agent. The agent sends its prompt and the client's info to this model, and Gemini generates the actual text for the WhatsApp message.\n\n* **5. Send message (WhatsApp)** 📲\n    * **Function**: This node sends the final message. It takes the text generated by the AI and delivers it as a WhatsApp message to the phone number the client provided in the form.\n\n***\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b7acce1b-992f-42bc-b9f7-4ee7670b412e",
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        192,
        -336
      ],
      "parameters": {
        "width": 1456,
        "height": 1056,
        "content": "\n## Part B: AI-Powered Appointment Scheduling\n\nThis flow activates when the client replies to the welcome message. An AI agent then chats with them to book a consultation.\n\n* **1. WhatsApp Trigger** 💬\n    * **Function**: This node listens for incoming WhatsApp messages. When a client replies to your business number, it kicks off the scheduling conversation.\n\n* **2. If** 🤔\n    * **Function**: A simple checkpoint. It checks if the incoming message has text. If it's an empty message or just a delivery receipt, the workflow stops. If there is text, it proceeds.\n\n* **3. AI Agent1** 👩‍💼\n    * **Function**: This is your AI scheduling assistant, \"Alex\". It manages the back-and-forth conversation with the client to find a suitable meeting time. It uses a set of \"tools\" to perform actions like checking your calendar.\n\n* **4. Postgres Chat Memory** 💾\n    * **Function**: This node gives the AI a memory. It saves the conversation history for each client, so if the chat is long, the AI can remember what was discussed previously.\n\n* **5. The AI's Tools (What it can do)** 🛠️\n    * **Know about the user enquiry (Sheets Tool)**: Allows the AI to look up the client's original submission details from the Google Sheet using their phone number.\n    * **GET MANY EVENTS... (Calendar Tool)**: Allows the AI to check your Google Calendar for existing appointments on a date the client requests.\n    * **Create an event (Calendar Tool)**: Allows the AI to book the appointment directly on your Google Calendar once a time is confirmed.\n\n* **6. Send message1 (WhatsApp)** 🗣️\n    * **Function**: This node sends the AI's conversational replies back to the client. This could be a confirmation (\"You're all booked!\"), a question (\"Is 3 PM tomorrow okay?\"), or a suggestion for an alternative time."
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "a715deb0-e11f-46df-b4ae-1cb4c214c183": {
      "main": [
        [],
        [
          {
            "node": "ed687b20-55af-41a3-b815-0044bf238692",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "69795336-f1ce-4ce8-b7fc-4379418cb83e": {
      "main": [
        [
          {
            "node": "3021dcef-b9ef-4a87-abe6-992081b72600",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ed687b20-55af-41a3-b815-0044bf238692": {
      "main": [
        [
          {
            "node": "6aad2ba5-1451-4150-b28a-f760061e8341",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3021dcef-b9ef-4a87-abe6-992081b72600": {
      "main": [
        []
      ]
    },
    "a4b80f3b-caf8-40c7-b787-c090b5010755": {
      "ai_tool": [
        [
          {
            "node": "ed687b20-55af-41a3-b815-0044bf238692",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "0fa7eed1-0e6d-4370-bb11-2500e93c2ef0": {
      "main": [
        [
          {
            "node": "0c107533-b8d0-4dc8-a073-7138a7288146",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b06b2984-c342-4db7-a46b-06679b0080db": {
      "main": [
        [
          {
            "node": "a715deb0-e11f-46df-b4ae-1cb4c214c183",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6cda0580-9e50-4406-a794-2d9315498f0e": {
      "ai_memory": [
        [
          {
            "node": "ed687b20-55af-41a3-b815-0044bf238692",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "95a55ce6-3967-4a6b-ba11-57ba9c9d0998": {
      "ai_languageModel": [
        [
          {
            "node": "69795336-f1ce-4ce8-b7fc-4379418cb83e",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "937a57e5-4e9e-4302-99a7-e38ff770e453": {
      "ai_languageModel": [
        [
          {
            "node": "ed687b20-55af-41a3-b815-0044bf238692",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "4891245b-9402-44b6-8632-d6f1053a8f54": {
      "ai_tool": [
        [
          {
            "node": "ed687b20-55af-41a3-b815-0044bf238692",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "0c107533-b8d0-4dc8-a073-7138a7288146": {
      "main": [
        [
          {
            "node": "69795336-f1ce-4ce8-b7fc-4379418cb83e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e157f8f8-f9da-4f03-baa3-114b199d36e0": {
      "ai_tool": [
        [
          {
            "node": "ed687b20-55af-41a3-b815-0044bf238692",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿Cómo usar este flujo de trabajo?

Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.

¿En qué escenarios es adecuado este flujo de trabajo?

Avanzado - Creación de contenido, IA Multimodal

¿Es de pago?

Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.

Flujos de trabajo relacionados recomendados

Construir un asistente de WhatsApp basado en conocimientos con RAG, Gemini, Supabase y Google Docs
Construye un asistente de WhatsApp basado en conocimientos usando RAG, Gemini, Supabase y Google Docs
If
Code
Supabase
+
If
Code
Supabase
15 Nodosiamvaar
Creación de contenido
Sistema de gestión de citas médicas basado en Gemini AI, WhatsApp, Stripe y Google Sheets
Sistema de gestión de citas médicas basado en Gemini AI, WhatsApp, Stripe y Google Sheets
If
Whats App
Http Request
+
If
Whats App
Http Request
43 NodosGreatStack
Creación de contenido
Automatización del procesamiento de quejas internas con Jotform, Gemini AI y Google Sheets
Automatizar el manejo de quejas internas con Jotform, Gemini AI y Google Sheets
If
Gmail
Google Sheets
+
If
Gmail
Google Sheets
22 Nodosiamvaar
Gestión de tickets
Soporte al cliente automatizado de WhatsApp, con transcripción de voz, FAQ y programación de citas
Automatización del soporte al cliente de WhatsApp, con transcripción de voz, FAQ y programación de citas
If
Set
Switch
+
If
Set
Switch
23 NodosAureusR
Varios
Generación y publicación automáticas de encuestas de opción múltiple únicas en Telegram usando IA
Generar y publicar encuestas de opción múltiple únicas en Telegram con Gemini AI y Google Sheets
If
Aggregate
Http Request
+
If
Aggregate
Http Request
15 NodosPawan
Creación de contenido
Soporte al cliente de WhatsApp con IA (GPT-4, enrutamiento inteligente y base de conocimiento)
Soporte al cliente de WhatsApp basado en AI (GPT-4, enrutamiento inteligente y base de conocimiento)
Set
Gmail
Merge
+
Set
Gmail
Merge
45 NodosPaul
Chatbot de IA
Información del flujo de trabajo
Nivel de dificultad
Avanzado
Número de nodos16
Categoría2
Tipos de nodos11
Descripción de la dificultad

Adecuado para usuarios avanzados, flujos de trabajo complejos con 16+ nodos

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34