Investigación de Reuniones y Agenda Diaria Basada en IA (Google Calendar, Attio CRM y Slack)

Avanzado

Este es unAI Summarization, Multimodal AIflujo de automatización del dominio deautomatización que contiene 30 nodos.Utiliza principalmente nodos como If, Set, Code, Merge, Slack. Investigación de Reuniones y Agenda Diaria Basada en IA: Utilizando Google Calendar, Attio CRM y Slack

Requisitos previos
  • Bot Token de Slack o URL de Webhook
  • Cuenta de Google y credenciales de API de Gmail
  • Pueden requerirse credenciales de autenticación para la API de destino
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": "2b4a3d81eafa60e4b2dfa202fdf88e491b785e2a2a6ca005b137d831a6faa7c0",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "5a367261-b56f-49f7-a447-43f82af7c428",
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -832,
        144
      ],
      "parameters": {
        "color": 7,
        "width": 696,
        "height": 917,
        "content": "## Research meeting attendees and prepare daily agenda in Slack\n\nThis workflow automatically researches your meeting attendees every morning and sends you a comprehensive brief in Slack with context about who you're meeting, their company, and key talking points.\n\n### Who's it for\n- Sales professionals who need quick context before meetings\n- Executives with packed calendars who need meeting preparation\n- Customer success teams managing multiple client relationships\n- Anyone who wants to be better prepared for their daily meetings\n\n### How it works\n1. **Daily Trigger**: Runs every weekday morning at 6 AM to analyze your calendar\n2. **Calendar Analysis**: Fetches all meetings for the day from Google Calendar\n3. **Attendee Research**: For each external meeting:\n   - Searches your CRM (Attio) for existing contact information\n   - Uses AI to research attendees via web search, Gmail history, and past meetings\n   - Searches company information via Apollo.io\n   - Creates new CRM records if contacts don't exist\n4. **Brief Generation**: Compiles all research into a scannable meeting brief\n5. **Slack Delivery**: Sends formatted brief to your designated Slack channel\n\n### Setup Requirements\n- Google Calendar access (OAuth2)\n- Slack workspace with bot permissions\n- Attio CRM account (optional - for contact management)\n- Apollo.io API access (optional - for company research)\n- OpenRouter API key for AI processing\n- Gmail access for email history search\n\n### How to customize\n1. **Adjust Schedule**: Change the Schedule Trigger to your preferred time\n2. **Modify Research Tools**: Add or remove research sources based on your needs\n3. **Customize Output Format**: Edit the formatting prompt in \"Format Daily Meeting Brief\"\n4. **Change Delivery Method**: Replace Slack with email, Teams, or another channel"
      },
      "typeVersion": 1
    },
    {
      "id": "2409b8bd-2305-41fa-82f1-a97e68d9df43",
      "name": "Disparador programado",
      "type": "n8n-nodes-base.scheduleTrigger",
      "notes": "Runs Monday-Friday at 6 AM",
      "position": [
        192,
        576
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "cronExpression",
              "expression": "0 6 * * 1-5"
            }
          ]
        }
      },
      "notesInFlow": true,
      "typeVersion": 1.2
    },
    {
      "id": "19c5762b-ed9e-47db-80d7-0806c772a2a2",
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        304,
        352
      ],
      "parameters": {
        "width": 383.52941176470586,
        "height": 145.88235294117646,
        "content": "### Step 1: Calendar Integration\nFetches today's meetings from your Google Calendar. The workflow filters for external meetings (those with attendees other than yourself)."
      },
      "typeVersion": 1
    },
    {
      "id": "edb6a777-cc4d-4326-9418-6b311a69e3dd",
      "name": "Filtrar External Meetings",
      "type": "n8n-nodes-base.filter",
      "notes": "Keep only events with attendees",
      "position": [
        640,
        576
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "loose"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "filter-external",
              "operator": {
                "type": "array",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $json.attendees }}",
              "rightValue": ""
            }
          ]
        },
        "looseTypeValidation": true
      },
      "typeVersion": 2.2,
      "alwaysOutputData": true
    },
    {
      "id": "2f8d687c-ce54-4a8b-93d9-86ca545fcdd7",
      "name": "Has External Meetings?",
      "type": "n8n-nodes-base.if",
      "position": [
        864,
        576
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "has-meetings",
              "operator": {
                "type": "string",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $json.id }}",
              "rightValue": 0
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "a9b3151a-62f3-4b74-b590-62ce0381c755",
      "name": "No Meetings Message",
      "type": "n8n-nodes-base.slack",
      "position": [
        1072,
        768
      ],
      "webhookId": "f924f962-e870-44d5-ac44-60f9ed4f49d4",
      "parameters": {
        "text": "Good morning! No external meetings scheduled for today. Enjoy your focus time!",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "id",
          "value": "="
        },
        "otherOptions": {},
        "authentication": "oAuth2"
      },
      "credentials": {
        "slackOAuth2Api": {
          "id": "I1AdBji1W6jc0rm7",
          "name": "Slack account"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "9404e80f-e34f-4160-bbad-b96e8526d0b1",
      "name": "Nota adhesiva2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1184,
        192
      ],
      "parameters": {
        "width": 612.3529411764707,
        "height": 232.94117647058826,
        "content": "### Step 2: AI Research\nFor each meeting, the AI agent researches attendees using multiple sources:\n- Web search for recent news\n- Gmail history for past interactions\n- Calendar for previous meetings\n- CRM for existing contact info\n- Apollo.io for company data"
      },
      "typeVersion": 1
    },
    {
      "id": "001125d5-7aac-4aa3-a3d3-42b1f660b557",
      "name": "Split Events for Individual Processing",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1088,
        480
      ],
      "parameters": {
        "include": "allOtherFields",
        "options": {},
        "fieldToSplitOut": "id"
      },
      "typeVersion": 1
    },
    {
      "id": "f815d71c-0f8b-4221-a980-da233b22eb79",
      "name": "Agente IA - Meeting Research",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1568,
        496
      ],
      "parameters": {
        "text": "=You are a meeting preparation assistant. Analyze this meeting and prepare comprehensive research:\n\nMeeting Details:\n- Summary: {{ $json.summary }}\n- Start: {{ $json.start.dateTime }}\n- End: {{ $json.end.dateTime }}\n- Attendees: {{ $json.attendees.filter(a => a.email !== $('User Configuration').item.json.user_email).map(a => a.email).join(', ') }}\n\nYour tasks:\n1. Research each attendee using the available tools\n2. Identify the company they work for and research the company\n3. Find any previous interactions or context\n4. Prepare key talking points and questions\n5. Identify potential goals and outcomes for this meeting\n\nProvide a comprehensive meeting preparation report.",
        "options": {
          "systemMessage": "You are an expert meeting preparation assistant with access to CRM, email, calendar, and company research tools. Your goal is to help the user be fully prepared for their upcoming meetings by providing comprehensive research and context."
        },
        "promptType": "define"
      },
      "typeVersion": 2.2
    },
    {
      "id": "9fcd10f0-3300-4a7a-8f94-21b0a237db87",
      "name": "OpenRouter Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        1312,
        720
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "openRouterApi": {
          "id": "bA9Ec45f0B7Bpa10",
          "name": "OpenRouter"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "42f7e6c1-6b51-42b6-af8c-cf46c4d91d94",
      "name": "Search Gmail History",
      "type": "n8n-nodes-base.gmailTool",
      "position": [
        1568,
        720
      ],
      "webhookId": "744a15aa-5415-43c6-8bb6-1142aa6b8c1d",
      "parameters": {
        "simple": "={{ $fromAI('Simplify', '', 'boolean') }}",
        "filters": {
          "q": "={{ $fromAI('Search', '', 'string') }}"
        },
        "options": {},
        "operation": "getAll",
        "returnAll": "={{ $fromAI('Return_All', '', 'boolean') }}"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "yvJI2wRBiA9DGTL4",
          "name": "Gmail account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "be673ca9-f382-4b12-b7ec-ff562dcebde7",
      "name": "Web Search Herramienta",
      "type": "n8n-nodes-base.httpRequestTool",
      "onError": "continueRegularOutput",
      "position": [
        1696,
        720
      ],
      "parameters": {
        "url": "https://api.anthropic.com/v1/messages",
        "method": "POST",
        "options": {},
        "jsonBody": "={{ $fromAI('JSON', '{\"model\": \"claude-sonnet-4-20250514\", \"max_tokens\": 1024, \"messages\": [{\"role\": \"user\", \"content\": \"{web_search_question}\"}], \"tools\": [{\"type\": \"web_search_20250305\", \"name\": \"web_search\", \"max_uses\": 5}]}', 'json') }}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "toolDescription": "Searches the internet for current information. Use for finding recent news, press releases, blog posts, and other public information about the company or person.",
        "headerParameters": {
          "parameters": [
            {
              "name": "anthropic-version",
              "value": "2023-06-01"
            },
            {
              "name": "content-type",
              "value": "application/json"
            }
          ]
        },
        "nodeCredentialType": "anthropicApi"
      },
      "credentials": {
        "anthropicApi": {
          "id": "DSzu6hecOYxA6SIs",
          "name": "Anthropic account"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "832369d1-242f-4a81-bc94-0de71425ed2e",
      "name": "Search Attio CRM",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1824,
        720
      ],
      "parameters": {
        "url": "https://api.attio.com/v2/objects/people/records/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\"filter\": {\"email_addresses\": \"{{ $fromAI('single_email_address', 'Email address to find', 'string') }}\"}, \"limit\": 1, \"offset\": 0}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth",
        "toolDescription": "Search CRM for information on a person by email address",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "H8ybPb8fmXzKWz50",
          "name": "Attio"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "31aeddca-5379-4b25-8393-84258b49e3bc",
      "name": "Search Apollo Company Data",
      "type": "n8n-nodes-base.httpRequestTool",
      "onError": "continueRegularOutput",
      "position": [
        1952,
        720
      ],
      "parameters": {
        "url": "https://api.apollo.io/api/v1/mixed_companies/search",
        "method": "POST",
        "options": {},
        "jsonBody": "={{ $fromAI('JSON', '', 'json') }}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Retrieves company data including industry, employee count, revenue, and technologies used",
        "headerParameters": {
          "parameters": [
            {
              "name": "Cache-Control",
              "value": "no-cache"
            },
            {
              "name": "accept",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "l7ce7mE7MBNIe7w2",
          "name": "Notion Webhook Auth"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "182e4b7c-0b87-4ee3-9d17-85751bb71c0d",
      "name": "Nota adhesiva3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2400,
        144
      ],
      "parameters": {
        "width": 370.58823529411774,
        "height": 176.47058823529412,
        "content": "### Step 3: CRM Integration\nFor each attendee:\n- Check if they exist in your CRM\n- Create new contact records if needed\n- Add meeting preparation notes to their profile"
      },
      "typeVersion": 1
    },
    {
      "id": "a052e367-d9c3-412a-be03-2ec28f0bafe6",
      "name": "Clean Meeting Research Content",
      "type": "n8n-nodes-base.code",
      "position": [
        2160,
        496
      ],
      "parameters": {
        "jsCode": "const items = $input.all();\n\nreturn items.map((item, index) => {\n  let content = item.json.markdown_content || item.json.output || item.json.content || '';\n  \n  content = content.replace(/\"/g, '');\n  content = content.replace(/'/g, '');\n  content = content.replace(/\\r\\n/g, '\\n');\n  content = content.replace(/\\r/g, '\\n');\n  content = content.trim();\n  content = content.split(/\\n/).map(line => line.trim()).join('\\n');\n  content = content.replace(/\\n\\s*\\n\\s*\\n/g, '\\n\\n');\n  \n  return {\n    json: {\n      ...item.json,\n      cleaned_content: content\n    },\n    pairedItem: { item: index }\n  };\n});"
      },
      "typeVersion": 2
    },
    {
      "id": "62579c3f-9b3d-4345-b96b-8a13e31690f8",
      "name": "Extract External Attendees",
      "type": "n8n-nodes-base.set",
      "position": [
        2384,
        336
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "22f8e8d1-b14f-47f5-ab45-4cfad5d27bbc",
              "name": "attendees",
              "type": "array",
              "value": "={{ $('Split Events for Individual Processing').item.json.attendees.filter(a => a.email !== $('User Configuration').item.json.user_email) }}"
            }
          ]
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "b237a783-5952-42be-9773-5941d837d556",
      "name": "Split Attendees for CRM Check",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        2672,
        336
      ],
      "parameters": {
        "include": "allOtherFields",
        "options": {},
        "fieldToSplitOut": "attendees"
      },
      "typeVersion": 1
    },
    {
      "id": "2d9f8608-8a4a-473f-b55f-c7fa191d162b",
      "name": "Find Person in Attio",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2960,
        336
      ],
      "parameters": {
        "url": "https://api.attio.com/v2/objects/people/records/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\"filter\": {\"email_addresses\": \"{{ $json.attendees.email }}\"}, \"limit\": 1, \"offset\": 0}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "H8ybPb8fmXzKWz50",
          "name": "Attio"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "4222a379-96ff-4e54-ad0d-b65431964300",
      "name": "Person Exists in CRM?",
      "type": "n8n-nodes-base.if",
      "position": [
        3184,
        336
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "person-exists",
              "operator": {
                "type": "string",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $json.data[0].id.record_id }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "562e986a-6880-4c91-88c5-aa48947d72ef",
      "name": "Create Person Record",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3408,
        416
      ],
      "parameters": {
        "url": "https://api.attio.com/v2/objects/people/records",
        "method": "POST",
        "options": {},
        "jsonBody": "={\"data\": {\"values\": {\"email_addresses\": [{\"email_address\": \"{{ $json.attendees.email }}\"}]}}}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "H8ybPb8fmXzKWz50",
          "name": "Attio"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "2f21cf2b-dda2-4cba-a364-d0a85d0c2532",
      "name": "Fusionar CRM Results",
      "type": "n8n-nodes-base.merge",
      "position": [
        3632,
        336
      ],
      "parameters": {},
      "typeVersion": 3.2
    },
    {
      "id": "f368504d-7fd3-4cef-af4b-5bb5bd80e4b1",
      "name": "Create Nota on Person",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3856,
        336
      ],
      "parameters": {
        "url": "https://api.attio.com/v2/notes",
        "method": "POST",
        "options": {},
        "jsonBody": "={\"data\": {\"parent_object\": \"people\", \"parent_record_id\": \"{{ $json.data[0].id.record_id }}\", \"title\": \"Meeting Prep\", \"content\": \"{{ $('Clean Meeting Research Content').item.json.cleaned_content.replaceAll('\\n','\\\\n') }}\", \"format\": \"markdown\"}}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "H8ybPb8fmXzKWz50",
          "name": "Attio"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "222c778d-75e7-469e-8fd8-482f644726e5",
      "name": "Nota adhesiva4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2848,
        800
      ],
      "parameters": {
        "width": 370.58823529411774,
        "height": 137.6470588235294,
        "content": "### Step 4: Brief Generation & Delivery\nAll research is compiled into a formatted meeting brief and sent to your Slack channel"
      },
      "typeVersion": 1
    },
    {
      "id": "5cb71809-ea9b-49e4-a031-e151edf05981",
      "name": "Agregar Research Results",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        2384,
        640
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "fieldToAggregate": "output"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "87e79d10-28e4-46a4-8e77-c13d4f034af2",
      "name": "Format Daily Meeting Brief",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        2608,
        640
      ],
      "parameters": {
        "text": "=Create a scannable meeting brief for my meetings today. I have {{ $json.output.length }} meetings.\n\nFor EACH meeting, use this EXACT format:\n\n*[TIME] Meeting Title*\n*Who:* [Name, Company/Role]\n*Purpose:* [2-5 sentences - why this meeting matters]\n*Key Context:* [1-2 critical facts about them/company]\n*Action:* [Your main goal for this meeting]\n*Watch For:* [One thing to pay attention to]\n\nRules:\n- Focus only on actionable intelligence\n- Be extremely concise\n- No introductions or conclusions\n\nMeeting data:\n{{ $json.output.map((m, i) => `\\n========== MEETING ${i + 1} ==========\\n${JSON.stringify(m, null, 2)}\\n========== END MEETING ${i + 1} ==========\\n`).join('\\n\\n') }}",
        "batching": {},
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "2c5ecb97-be42-4747-8389-27c58c0426f6",
      "name": "OpenRouter Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        2688,
        864
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "openRouterApi": {
          "id": "bA9Ec45f0B7Bpa10",
          "name": "OpenRouter"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "049bb3cf-26ac-4c2e-88cf-60f0f5de1111",
      "name": "Send Daily Brief to Slack",
      "type": "n8n-nodes-base.slack",
      "position": [
        2960,
        640
      ],
      "webhookId": "105e0e19-d9e9-4944-a9ea-587d2987cf0c",
      "parameters": {
        "text": "={{ $json.text }}",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "id",
          "value": "="
        },
        "otherOptions": {},
        "authentication": "oAuth2"
      },
      "credentials": {
        "slackOAuth2Api": {
          "id": "I1AdBji1W6jc0rm7",
          "name": "Slack account"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "4c574d01-0175-442b-8dd2-292d03831a4f",
      "name": "Get many events",
      "type": "n8n-nodes-base.googleCalendar",
      "position": [
        400,
        576
      ],
      "parameters": {
        "options": {},
        "timeMax": "={{ $today.plus({ day: 1 }) }}",
        "timeMin": "={{ $today }}",
        "calendar": {
          "__rl": true,
          "mode": "list",
          "value": "harry@onetwogrowth.com",
          "cachedResultName": "OneTwo Growth Studio"
        },
        "operation": "getAll"
      },
      "credentials": {
        "googleCalendarOAuth2Api": {
          "id": "6xS7duivt7JLMnVF",
          "name": "Google Calendar account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "87459aa2-afa3-4597-939c-97b30a0aa2f8",
      "name": "Get many events in Calendario de Google",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        1440,
        800
      ],
      "parameters": {
        "limit": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Limit', ``, 'number') }}",
        "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": ""
        },
        "operation": "getAll"
      },
      "credentials": {
        "googleCalendarOAuth2Api": {
          "id": "6xS7duivt7JLMnVF",
          "name": "Google Calendar account"
        }
      },
      "typeVersion": 1.3
    }
  ],
  "pinData": {},
  "connections": {
    "4c574d01-0175-442b-8dd2-292d03831a4f": {
      "main": [
        [
          {
            "node": "Filter External Meetings",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Web Search Tool": {
      "ai_tool": [
        [
          {
            "node": "AI Agent - Meeting Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "4c574d01-0175-442b-8dd2-292d03831a4f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "832369d1-242f-4a81-bc94-0de71425ed2e": {
      "ai_tool": [
        [
          {
            "node": "AI Agent - Meeting Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Merge CRM Results": {
      "main": [
        [
          {
            "node": "Create Note on Person",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "562e986a-6880-4c91-88c5-aa48947d72ef": {
      "main": [
        [
          {
            "node": "Merge CRM Results",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "2d9f8608-8a4a-473f-b55f-c7fa191d162b": {
      "main": [
        [
          {
            "node": "4222a379-96ff-4e54-ad0d-b65431964300",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "42f7e6c1-6b51-42b6-af8c-cf46c4d91d94": {
      "ai_tool": [
        [
          {
            "node": "AI Agent - Meeting Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "9fcd10f0-3300-4a7a-8f94-21b0a237db87": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent - Meeting Research",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "4222a379-96ff-4e54-ad0d-b65431964300": {
      "main": [
        [
          {
            "node": "Merge CRM Results",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "562e986a-6880-4c91-88c5-aa48947d72ef",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2f8d687c-ce54-4a8b-93d9-86ca545fcdd7": {
      "main": [
        [
          {
            "node": "001125d5-7aac-4aa3-a3d3-42b1f660b557",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "a9b3151a-62f3-4b74-b590-62ce0381c755",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2c5ecb97-be42-4747-8389-27c58c0426f6": {
      "ai_languageModel": [
        [
          {
            "node": "87e79d10-28e4-46a4-8e77-c13d4f034af2",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Filter External Meetings": {
      "main": [
        [
          {
            "node": "2f8d687c-ce54-4a8b-93d9-86ca545fcdd7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate Research Results": {
      "main": [
        [
          {
            "node": "87e79d10-28e4-46a4-8e77-c13d4f034af2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "62579c3f-9b3d-4345-b96b-8a13e31690f8": {
      "main": [
        [
          {
            "node": "b237a783-5952-42be-9773-5941d837d556",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "87e79d10-28e4-46a4-8e77-c13d4f034af2": {
      "main": [
        [
          {
            "node": "049bb3cf-26ac-4c2e-88cf-60f0f5de1111",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "31aeddca-5379-4b25-8393-84258b49e3bc": {
      "ai_tool": [
        [
          {
            "node": "AI Agent - Meeting Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent - Meeting Research": {
      "main": [
        [
          {
            "node": "a052e367-d9c3-412a-be03-2ec28f0bafe6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b237a783-5952-42be-9773-5941d837d556": {
      "main": [
        [
          {
            "node": "2d9f8608-8a4a-473f-b55f-c7fa191d162b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a052e367-d9c3-412a-be03-2ec28f0bafe6": {
      "main": [
        [
          {
            "node": "62579c3f-9b3d-4345-b96b-8a13e31690f8",
            "type": "main",
            "index": 0
          },
          {
            "node": "Aggregate Research Results",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get many events in Google Calendar": {
      "ai_tool": [
        [
          {
            "node": "AI Agent - Meeting Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "001125d5-7aac-4aa3-a3d3-42b1f660b557": {
      "main": [
        [
          {
            "node": "AI Agent - Meeting Research",
            "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?

Avanzado - Resumen de IA, 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.

Información del flujo de trabajo
Nivel de dificultad
Avanzado
Número de nodos30
Categoría2
Tipos de nodos18
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