Respuesta automática de correos con GPT-4o, Outlook y aprobación GoToHuman

Intermedio

Este es unTicket Management, AI Chatbotflujo de automatización del dominio deautomatización que contiene 15 nodos.Utiliza principalmente nodos como If, Code, ManualTrigger, SplitInBatches, Agent. Respuesta automatizada de correos usando GPT-4o, Outlook y aprobación de GoToHuman

Requisitos previos
  • Clave de API de OpenAI
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": "efb474b59b0341d7791932605bd9ff04a6c7ed9941fdd53dc4a2e4b99a6f9439",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "db46a99c-a87d-4203-925f-f94fed274bbe",
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        120,
        0
      ],
      "parameters": {
        "color": 5,
        "width": 1200,
        "height": 760,
        "content": "### 4. **Generate AI Response**\n- Text prompt to OpenAI:  \n  ```\n  subject: {{ $json.subject }}  \n  body: {{ $json.body.content }}\n  ```\n\n- System prompt:  \n  > You are a personal assistant helping respond to emails. I am an AI automation expert specializing in helping small and medium-size businesses automate processes. Create a short response to the email. Sign the email as Robert Breen.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "2b29c366-caf6-41e5-bf09-a6f60ab9d315",
      "name": "Herramienta: Inyectar creatividad",
      "type": "@n8n/n8n-nodes-langchain.toolThink",
      "position": [
        600,
        520
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "df07d826-251e-4b9f-927f-637280847891",
      "name": "Analizador: Extraer JSON de Idea",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        800,
        480
      ],
      "parameters": {
        "jsonSchemaExample": "[\n  {\n    \"body\": \"\"\n  }\n]\n"
      },
      "typeVersion": 1.2
    },
    {
      "id": "3f7eeefc-a208-4020-8b6a-7dc536126daa",
      "name": "openai",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        480,
        500
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "gpt-4o"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "ghJTvay8CvwXDsXz",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "c1d3fd0d-b84e-4346-aa2e-3c3b8cf358e3",
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        0
      ],
      "parameters": {
        "width": 980,
        "height": 760,
        "content": "### 1. **Trigger**  \nUse the Manual Trigger to test or schedule execution with a cron node.\n\n### 2. **Filter Emails from Today**\nA Code node outputs today's date in the proper `yyyy-mm-dd` format.\n\n```javascript\nconst today = new Date();\ntoday.setHours(0, 0, 0, 0);\nreturn [{ json: { searchQuery: `received:${today.toISOString().split('T')[0]}` } }];\n```\n\n### 3. **Search and Filter Outlook Messages**\n- Uses the Outlook node with a search query like:  \n  `received:2025-08-06 -from:rbreen@ynteractive.com` (Update to your email address)"
      },
      "typeVersion": 1
    },
    {
      "id": "af0105d8-5b95-4d82-8735-acb6358f607b",
      "name": "Nota adhesiva3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1340,
        0
      ],
      "parameters": {
        "color": 3,
        "width": 760,
        "height": 760,
        "content": "### 5. **Review with gotoHuman**\n- Submit AI output for human approval using the `gotoHuman` node.\n- The output schema should match the Review Template fields (e.g., \"email\", \"OriginalEmail\").\n\n### 6. **IF Node Decision**\n- If status is `approved`, send reply\n- If not, return to loop for revision or skip\n\n---"
      },
      "typeVersion": 1
    },
    {
      "id": "be573205-24d6-49e7-924e-d9bfd1879505",
      "name": "Prueba",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -800,
        420
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "807aecbb-fdc0-4a6b-9fbb-186aefdad240",
      "name": "Mostrar fecha actual",
      "type": "n8n-nodes-base.code",
      "position": [
        -520,
        560
      ],
      "parameters": {
        "jsCode": "const today = new Date();\ntoday.setHours(0, 0, 0, 0); // Normalize to start of day\n\nconst formattedDate = today.toISOString().split('T')[0]; // \"2025-08-06\"\n\nreturn [\n  {\n    json: {\n      searchQuery: `received:${formattedDate}`\n    }\n  }\n];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "b4d9154b-c7e8-437b-b6d8-ed22327bfccf",
      "name": "Agente de IA: Crear título para linkedin",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        560,
        300
      ],
      "parameters": {
        "text": "=subject: {{ $json.subject }} Body: {{ $json.body.content }}",
        "options": {
          "systemMessage": "=You are a personal assistant helping respond to emails. I am an ai automation expert specializing in helping small and medium size businesses automate processes. Create a short response to the email that you are analyzing. \n\nThe email that you write should be written to the sender who sent the email to us. \n\nSign the email as Robert Breen\n\noutput the data like this. \n\n[\n  {\n    \"body\": \"\"\n  }\n]\n"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.9
    },
    {
      "id": "41d1ebef-9808-4d0b-ae30-2e8cd0ae597a",
      "name": "Nota adhesiva2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        -240
      ],
      "parameters": {
        "color": 6,
        "width": 2980,
        "height": 200,
        "content": "# 🤖AI-Powered Outlook Email Assistant with GoToHuman Approval Workflow\n## 📬 Need Help?\n\nMessage me on [LinkedIn](https://www.linkedin.com/in/robert-breen-29429625/) \nor email me at **robert@ynteractive.com**\n"
      },
      "typeVersion": 1
    },
    {
      "id": "a27db7b8-96b1-425e-98d9-e1dc5f939478",
      "name": "Microsoft Outlook",
      "type": "n8n-nodes-base.microsoftOutlook",
      "position": [
        -280,
        420
      ],
      "webhookId": "ae07c8b7-e0be-4a87-93a8-cfcb00303d0c",
      "parameters": {
        "limit": 2,
        "output": "raw",
        "options": {},
        "filtersUI": {
          "values": {
            "search": "={{ $json.searchQuery }} -from:rbreen@ynteractive.com\n",
            "filterBy": "search"
          }
        },
        "operation": "getAll"
      },
      "credentials": {
        "microsoftOutlookOAuth2Api": {
          "id": "VmTDwKgAl78H8pek",
          "name": "Microsoft Outlook account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "3830b457-613f-4709-b70a-ae5d089d8a83",
      "name": "gotoHuman",
      "type": "@gotohuman/n8n-nodes-gotohuman.gotoHuman",
      "position": [
        1460,
        300
      ],
      "webhookId": "29fff214-9915-47fe-833f-c78d42709c76",
      "parameters": {
        "fields": {
          "value": {
            "email": "={{ $json.output[0].body }}",
            "OriginalEmail": "={{ $('Microsoft Outlook').item.json.body.content }}"
          },
          "schema": [
            {
              "id": "email",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "email (text)",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "OriginalEmail",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "OriginalEmail (emailHtml)",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "email"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "additionalFields": {},
        "reviewTemplateID": {
          "__rl": true,
          "mode": "list",
          "value": "7nYfIV9vrefvuHcccGEB",
          "cachedResultName": "Email Responses (7nYfIV9vrefvuHcccGEB)"
        }
      },
      "credentials": {
        "gotoHumanApi": {
          "id": "DDAwJMAARwFCF0fA",
          "name": "gotoHuman account"
        }
      },
      "executeOnce": true,
      "typeVersion": 1
    },
    {
      "id": "6484d15f-94d2-4078-93de-beee1985e085",
      "name": "Iterar sobre elementos",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -40,
        560
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "07ef9661-0df9-41a9-b412-3f2af84bba43",
      "name": "Microsoft Outlook1",
      "type": "n8n-nodes-base.microsoftOutlook",
      "position": [
        1920,
        520
      ],
      "webhookId": "0208ffbc-c796-47a4-8e71-aa175d970c54",
      "parameters": {
        "message": "={{ $json.responseValues.email.value }}",
        "options": {},
        "messageId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $('Microsoft Outlook').item.json.id }}"
        },
        "operation": "reply"
      },
      "credentials": {
        "microsoftOutlookOAuth2Api": {
          "id": "VmTDwKgAl78H8pek",
          "name": "Microsoft Outlook account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "5b6f8868-ac73-44f0-9eaa-64250abab4d6",
      "name": "Si",
      "type": "n8n-nodes-base.if",
      "position": [
        1700,
        300
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "8516d970-6327-47de-83ab-1945acd928b2",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.response }}",
              "rightValue": "approved"
            }
          ]
        }
      },
      "typeVersion": 2.2
    }
  ],
  "pinData": {},
  "connections": {
    "5b6f8868-ac73-44f0-9eaa-64250abab4d6": {
      "main": [
        [
          {
            "node": "07ef9661-0df9-41a9-b412-3f2af84bba43",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "6484d15f-94d2-4078-93de-beee1985e085",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "be573205-24d6-49e7-924e-d9bfd1879505": {
      "main": [
        [
          {
            "node": "807aecbb-fdc0-4a6b-9fbb-186aefdad240",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3f7eeefc-a208-4020-8b6a-7dc536126daa": {
      "ai_languageModel": [
        [
          {
            "node": "b4d9154b-c7e8-437b-b6d8-ed22327bfccf",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "3830b457-613f-4709-b70a-ae5d089d8a83": {
      "main": [
        [
          {
            "node": "5b6f8868-ac73-44f0-9eaa-64250abab4d6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6484d15f-94d2-4078-93de-beee1985e085": {
      "main": [
        [],
        [
          {
            "node": "b4d9154b-c7e8-437b-b6d8-ed22327bfccf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a27db7b8-96b1-425e-98d9-e1dc5f939478": {
      "main": [
        [
          {
            "node": "6484d15f-94d2-4078-93de-beee1985e085",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "07ef9661-0df9-41a9-b412-3f2af84bba43": {
      "main": [
        [
          {
            "node": "6484d15f-94d2-4078-93de-beee1985e085",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "807aecbb-fdc0-4a6b-9fbb-186aefdad240": {
      "main": [
        [
          {
            "node": "a27db7b8-96b1-425e-98d9-e1dc5f939478",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2b29c366-caf6-41e5-bf09-a6f60ab9d315": {
      "ai_tool": [
        [
          {
            "node": "b4d9154b-c7e8-437b-b6d8-ed22327bfccf",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "df07d826-251e-4b9f-927f-637280847891": {
      "ai_outputParser": [
        [
          {
            "node": "b4d9154b-c7e8-437b-b6d8-ed22327bfccf",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "b4d9154b-c7e8-437b-b6d8-ed22327bfccf": {
      "main": [
        [
          {
            "node": "3830b457-613f-4709-b70a-ae5d089d8a83",
            "type": "main",
            "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?

Intermedio - Gestión de tickets, Chatbot de IA

¿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

Usar GPT-5, gotoHuman y revisión humana para responder automáticamente correos de Gmail y crear tickets en Linear
Responder automáticamente desde Gmail y crear tickets en Linear usando GPT-5, gotoHuman y revisión humana
Set
Code
Gmail
+
Set
Code
Gmail
37 NodosgotoHuman
Gestión de tickets
Calificación automatizada de prospectos y soporte al cliente con agentes de GPT-4o-mini
Automatificación de calificación de prospectos y soporte al cliente con agente GPT-4o-mini
If
Set
Code
+
If
Set
Code
16 NodosRobert Breen
Nutrición de leads
Generación de publicaciones para LinkedIn con IA y aprobación humana
Utiliza GPT-4, GoToHuman y Blotato para generar publicaciones de LinkedIn con aprobación humana
Code
Merge
Filter
+
Code
Merge
Filter
19 NodosRobert Breen
Redes sociales
Usar GPT-4o para clasificar correos de Outlook en categorías de color automáticamente
Usar GPT-4o para clasificar correos de Outlook en categorías de color automáticamente
Set
Manual Trigger
Split In Batches
+
Set
Manual Trigger
Split In Batches
13 NodosRobert Breen
Resumen de IA
Respuestas automáticas de correo con GPT-4O y memoria de conversación de Supabase
Respuestas automáticas de correo electrónico con memoria de conversación utilizando GPT-4O y Supabase
If
Code
Postgres
+
If
Code
Postgres
32 NodosLukman
Chatbot de soporte
Análisis de datos para principiantes: fusionar, filtrar y resumir en Google Sheets con GPT-4o
Análisis de datos para principiantes: fusionar, filtrar y resumir en Google Sheets con GPT-4o
If
Set
Code
+
If
Set
Code
21 NodosRobert Breen
Extracción de documentos
Información del flujo de trabajo
Nivel de dificultad
Intermedio
Número de nodos15
Categoría2
Tipos de nodos11
Descripción de la dificultad

Adecuado para usuarios con experiencia intermedia, flujos de trabajo de complejidad media con 6-15 nodos

Autor
Robert Breen

Robert Breen

@rbreen

Professional services consultant with over 10 years of experience solving complex business problems across industries. I specialize in n8n and process automation—designing custom workflows that integrate tools like Google Calendar, Airtable, GPT, and internal systems. Whether you need to automate scheduling, sync data, or streamline operations, I build solutions that save time and drive results.

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34