Sistema automatizado de programación de demostraciones

Avanzado

Este es unMiscellaneous, Multimodal AIflujo de automatización del dominio deautomatización que contiene 21 nodos.Utiliza principalmente nodos como If, Set, Code, Form, Zoom. Sistema automatizado de agendamiento de demostraciones integrando el calendario de Outlook y Zoom

Requisitos previos
  • 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": "04c7c3f1743831184e4a6edaf1f906dbab0c745cc98b8af3ef7660bbefe74cb4"
  },
  "nodes": [
    {
      "id": "3f6e9ca9-e576-4c65-aa5f-73ccdc775b84",
      "name": "Nota Adhesiva16",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        16,
        -208
      ],
      "parameters": {
        "color": 7,
        "width": 3032,
        "height": 84,
        "content": "# 🚀 Live Demo Request"
      },
      "typeVersion": 1
    },
    {
      "id": "7c4f06a8-2e33-4b3c-b4a9-bf7a2d8a1b07",
      "name": "Seleccionar Fecha y Hora",
      "type": "n8n-nodes-base.form",
      "onError": "continueRegularOutput",
      "position": [
        1680,
        192
      ],
      "webhookId": "f9d145b7-2cb6-43ff-830f-cc2948f8a8e7",
      "parameters": {
        "options": {
          "customCss": "/* N8N Landing Page CSS – Header-matching Blues */\n\n/* Style the main form card */\n.card {\n  position: relative;\n  max-width: 500px;\n  margin: 20px auto;\n  padding: 20px;\n  background: white !important;\n  border-radius: 12px;\n  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n}\n\n/* Header bar with your header gradient */\n.card:before {\n  content: '';\n  display: block;\n  height: 50px;\n  background: linear-gradient(135deg, #0A3E7B 0%, #1565C0 100%) !important;\n  position: relative;\n  margin: -20px -20px 30px -20px;\n  border-radius: 12px 12px 0 0;\n}\n\n/* Titles in deep blue */\n.form-header,\n.card h1,\n.card h2 {\n  text-align: center !important;\n  color: #0A3E7B !important;\n  font-weight: 500 !important;\n  font-size: 1.6em !important;\n  margin: 20px 0 15px 0 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Description copy in a cool neutral */\n.card p {\n  text-align: center !important;\n  color: #475569 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Inputs wrapper keeps above the gradient */\n.inputs-wrapper {\n  position: relative;\n  z-index: 5;\n}\n\n/* Form fields with blue focus */\n.card input[type=\"text\"],\n.card input[type=\"email\"],\n.card input[type=\"tel\"],\n.card input[type=\"number\"],\n.card textarea,\n.card select {\n  width: 100% !important;\n  padding: 12px 16px !important;\n  border: 2px solid #E5E7EB !important;\n  border-radius: 8px !important;\n  font-size: 16px !important;\n  transition: border-color 0.3s ease !important;\n  box-sizing: border-box !important;\n}\n\n.card input:focus,\n.card textarea:focus,\n.card select:focus {\n  outline: none !important;\n  border-color: #0A3E7B !important;\n  box-shadow: 0 0 0 3px rgba(10, 62, 123, 0.1) !important;\n}\n\n/* Submit button in a mid-to-light blue gradient */\n.card button[type=\"submit\"],\n.card input[type=\"submit\"] {\n  background: linear-gradient(135deg, #1565C0 0%, #64B5F6 100%) !important;\n  color: white !important;\n  border: none !important;\n  padding: 15px 40px !important;\n  border-radius: 10px !important;\n  font-size: 18px !important;\n  font-weight: 600 !important;\n  cursor: pointer !important;\n  width: 100% !important;\n  margin-top: 10px !important;\n  transition: all 0.3s ease !important;\n  box-shadow: 0 4px 15px rgba(21, 101, 192, 0.3) !important;\n  position: relative;\n  z-index: 5;\n}\n\n.card button:hover,\n.card input[type=\"submit\"]:hover {\n  transform: translateY(-2px) !important;\n  box-shadow: 0 6px 20px rgba(21, 101, 192, 0.4) !important;\n}\n\n/* Page background to complement the pale side of your header */\nbody.vsc-initialized {\n  background: #EEF6FF !important;\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\n  margin: 0 !important;\n  padding: 20px !important;\n}\n\n/* Center container */\n.container {\n  max-width: 600px !important;\n  margin: 0 auto !important;\n}\n\n.card .form-group {\n  margin-top: 4px !important;\n  margin-bottom: 4px !important;\n}\n\n/* Mobile tweaks */\n@media (max-width: 768px) {\n  .card {\n    margin: 10px !important;\n    padding: 15px !important;\n  }\n  .card:before {\n    height: 50px !important;\n    margin: -15px -15px 20px -15px !important;\n  }\n  .form-header,\n  .card h1,\n  .card h2 {\n    font-size: 1.7em !important;\n    margin: 20px 0 15px 0 !important;\n  }\n}\n",
          "formTitle": "Select your preferred time",
          "buttonLabel": "Submit"
        },
        "defineForm": "json",
        "jsonOutput": "=[{{ $json.form }}]"
      },
      "typeVersion": 1
    },
    {
      "id": "4152a07b-0210-4b26-92cb-d9cd6c31a7a8",
      "name": "Al enviar el formulario",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        48,
        -96
      ],
      "webhookId": "bcca93f9-97ab-4f71-ba97-9601f086d20a",
      "parameters": {
        "options": {
          "path": "yourcompany-demo-request",
          "customCss": "/* N8N Landing Page CSS – Header-matching Blues */\n\n/* Style the main form card */\n.card {\n  position: relative;\n  max-width: 500px;\n  margin: 20px auto;\n  padding: 20px;\n  background: white !important;\n  border-radius: 12px;\n  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n}\n\n/* Header bar with your header gradient */\n.card:before {\n  content: '';\n  display: block;\n  height: 50px;\n  background: linear-gradient(135deg, #0A3E7B 0%, #1565C0 100%) !important;\n  position: relative;\n  margin: -20px -20px 30px -20px;\n  border-radius: 12px 12px 0 0;\n}\n\n/* Titles in deep blue */\n.form-header,\n.card h1,\n.card h2 {\n  text-align: center !important;\n  color: #0A3E7B !important;\n  font-weight: 500 !important;\n  font-size: 1.6em !important;\n  margin: 20px 0 15px 0 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Description copy in a cool neutral */\n.card p {\n  text-align: center !important;\n  color: #475569 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Inputs wrapper keeps above the gradient */\n.inputs-wrapper {\n  position: relative;\n  z-index: 5;\n}\n\n/* Form fields with blue focus */\n.card input[type=\"text\"],\n.card input[type=\"email\"],\n.card input[type=\"tel\"],\n.card input[type=\"number\"],\n.card textarea,\n.card select {\n  width: 100% !important;\n  padding: 12px 16px !important;\n  border: 2px solid #E5E7EB !important;\n  border-radius: 8px !important;\n  font-size: 16px !important;\n  transition: border-color 0.3s ease !important;\n  box-sizing: border-box !important;\n}\n\n.card input:focus,\n.card textarea:focus,\n.card select:focus {\n  outline: none !important;\n  border-color: #0A3E7B !important;\n  box-shadow: 0 0 0 3px rgba(10, 62, 123, 0.1) !important;\n}\n\n/* Submit button in a mid-to-light blue gradient */\n.card button[type=\"submit\"],\n.card input[type=\"submit\"] {\n  background: linear-gradient(135deg, #1565C0 0%, #64B5F6 100%) !important;\n  color: white !important;\n  border: none !important;\n  padding: 15px 40px !important;\n  border-radius: 10px !important;\n  font-size: 18px !important;\n  font-weight: 600 !important;\n  cursor: pointer !important;\n  width: 100% !important;\n  margin-top: 10px !important;\n  transition: all 0.3s ease !important;\n  box-shadow: 0 4px 15px rgba(21, 101, 192, 0.3) !important;\n  position: relative;\n  z-index: 5;\n}\n\n.card button:hover,\n.card input[type=\"submit\"]:hover {\n  transform: translateY(-2px) !important;\n  box-shadow: 0 6px 20px rgba(21, 101, 192, 0.4) !important;\n}\n\n/* Page background to complement the pale side of your header */\nbody.vsc-initialized {\n  background: #EEF6FF !important;\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\n  margin: 0 !important;\n  padding: 20px !important;\n}\n\n/* Mobile tweaks */\n@media (max-width: 768px) {\n  .card {\n    margin: 5px !important;\n    padding: 15px !important;\n    max-width: 100% !important;\n    box-shadow: none !important; /* optional: flatter design for mobile */\n  }\n\n  .card:before {\n    height: 40px !important;\n    margin: -15px -15px 20px -15px !important;\n    border-radius: 10px 10px 0 0 !important;\n  }\n\n  .form-header,\n  .card h1,\n  .card h2 {\n    font-size: 1.4em !important;\n    margin: 5px 0 5px 0 !important;\n  }\n\n  .card input[type=\"text\"],\n  .card input[type=\"email\"],\n  .card input[type=\"tel\"],\n  .card input[type=\"number\"],\n  .card textarea,\n  .card select {\n    font-size: 15px !important;\n    padding: 10px 12px !important;\n  }\n\n  .card button[type=\"submit\"],\n  .card input[type=\"submit\"] {\n    font-size: 16px !important;\n    padding: 12px 20px !important;\n  }\n\n  .container {\n    padding: 0 5px !important;\n    max-width: 100% !important;\n  }\n\n  .card .form-group {\n    margin-top: 6px !important;\n    margin-bottom: 6px !important;\n  }\n}",
          "buttonLabel": "Let's Schedule",
          "appendAttribution": false
        },
        "formTitle": "Live Demo Request",
        "formDescription": "Request a live demo of our software"
      },
      "typeVersion": 2.2
    },
    {
      "id": "e2c3bdf4-e85d-4f22-aac4-3a4791dc583a",
      "name": "Outlook Calendar CheckAvailability",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueErrorOutput",
      "position": [
        816,
        48
      ],
      "parameters": {
        "url": "https://graph.microsoft.com/v1.0/me/calendarView",
        "options": {},
        "sendQuery": true,
        "sendHeaders": true,
        "authentication": "predefinedCredentialType",
        "queryParameters": {
          "parameters": [
            {
              "name": "startDateTime",
              "value": "={{ $json[\"Select the date you would you require a demo\"] }}T00:00:00"
            },
            {
              "name": "endDateTime",
              "value": "={{\n  (() => {\n    const d = new Date($json[\"Select the date you would you require a demo\"]);\n    d.setDate(d.getDate() + 30);\n    return d.toLocaleDateString('en-CA') + 'T23:59:59';\n  })()\n}}"
            },
            {
              "name": "$top",
              "value": "3"
            },
            {
              "name": "$orderby\t",
              "value": "start/dateTime asc"
            },
            {
              "name": "$filter",
              "value": "startsWith(subject,'Online Meeting Slot')"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "Prefer",
              "value": "outlook.timezone=\"Asia/Dubai\""
            }
          ]
        },
        "nodeCredentialType": "microsoftOutlookOAuth2Api"
      },
      "credentials": {
        "microsoftOutlookOAuth2Api": {
          "id": "",
          "name": ""
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "e112995a-c635-4a2a-b1e6-790cf828129c",
      "name": "Set Events",
      "type": "n8n-nodes-base.code",
      "onError": "continueRegularOutput",
      "position": [
        1328,
        64
      ],
      "parameters": {
        "jsCode": "// items passed in are the HTTP Request output\n// which returns { value: [ /* events */ ] }\nconst events = $input.first().json.value || [];\n\n// 2) map into slot objects\nconst newSlots = events.map(e => {\n  // Parse ISO string into Date object\n  const d = new Date(e.start.dateTime);\n\n  // Format: Wednesday 20 August 2025 11:00\n  const formatted = d.toLocaleString(\"en-GB\", {\n    weekday: \"long\",\n    day: \"2-digit\",\n    month: \"long\",\n    year: \"numeric\",\n    hour: \"2-digit\",\n    minute: \"2-digit\",\n    hour12: false\n  });\n\n  return {\n    time: formatted,\n    subject: e.subject,\n    start: e.start.dateTime,\n    end: e.end.dateTime,\n    id: e.id\n  };\n});\n\n// 3) return each slot as its own item\nreturn newSlots.map(slot => ({ json: slot }));\n\n\n\n"
      },
      "typeVersion": 2
    },
    {
      "id": "9317b0c9-f67b-4b5b-8f2c-347f218b4686",
      "name": "Set Form Dates",
      "type": "n8n-nodes-base.code",
      "onError": "continueRegularOutput",
      "position": [
        1520,
        192
      ],
      "parameters": {
        "jsCode": "// 1. Pull in all event objects\nconst events = items.map(item => item.json);\n\n// 2. Build your dropdown object\nconst dropdown = {\n  fieldLabel: \"Select one of our available time\",\n  fieldType: \"dropdown\",\n  fieldOptions: {\n    values: events.map(e => {\n      // Parse the time string into a Date object\n      return { option: e.time };\n    })\n  },\n  requiredField: true\n};\n\n// 3. Combine into a single JS array: dropdown first, then each event\nconst combined = [{ form: dropdown }, ...events];\n\nreturn combined.map(json => ({ json }));\n\n"
      },
      "typeVersion": 2
    },
    {
      "id": "5ca66c67-4ad4-4204-96ec-e55614d5f317",
      "name": "Seleccionar Nueva Fecha",
      "type": "n8n-nodes-base.form",
      "position": [
        1040,
        304
      ],
      "webhookId": "f883fef9-ae26-4276-9886-248a747bff6c",
      "parameters": {
        "options": {
          "customCss": "/* N8N Landing Page CSS – Header-matching Blues */\n\n/* Style the main form card */\n.card {\n  position: relative;\n  max-width: 500px;\n  margin: 20px auto;\n  padding: 20px;\n  background: white !important;\n  border-radius: 12px;\n  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n}\n\n/* Header bar with your header gradient */\n.card:before {\n  content: '';\n  display: block;\n  height: 50px;\n  background: linear-gradient(135deg, #0A3E7B 0%, #1565C0 100%) !important;\n  position: relative;\n  margin: -20px -20px 30px -20px;\n  border-radius: 12px 12px 0 0;\n}\n\n/* Titles in deep blue */\n.form-header,\n.card h1,\n.card h2 {\n  text-align: center !important;\n  color: #0A3E7B !important;\n  font-weight: 500 !important;\n  font-size: 1.6em !important;\n  margin: 20px 0 15px 0 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Description copy in a cool neutral */\n.card p {\n  text-align: center !important;\n  color: #475569 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Inputs wrapper keeps above the gradient */\n.inputs-wrapper {\n  position: relative;\n  z-index: 5;\n}\n\n/* Form fields with blue focus */\n.card input[type=\"text\"],\n.card input[type=\"email\"],\n.card input[type=\"tel\"],\n.card input[type=\"number\"],\n.card textarea,\n.card select {\n  width: 100% !important;\n  padding: 12px 16px !important;\n  border: 2px solid #E5E7EB !important;\n  border-radius: 8px !important;\n  font-size: 16px !important;\n  transition: border-color 0.3s ease !important;\n  box-sizing: border-box !important;\n}\n\n.card input:focus,\n.card textarea:focus,\n.card select:focus {\n  outline: none !important;\n  border-color: #0A3E7B !important;\n  box-shadow: 0 0 0 3px rgba(10, 62, 123, 0.1) !important;\n}\n\n/* Submit button in a mid-to-light blue gradient */\n.card button[type=\"submit\"],\n.card input[type=\"submit\"] {\n  background: linear-gradient(135deg, #1565C0 0%, #64B5F6 100%) !important;\n  color: white !important;\n  border: none !important;\n  padding: 15px 40px !important;\n  border-radius: 10px !important;\n  font-size: 18px !important;\n  font-weight: 600 !important;\n  cursor: pointer !important;\n  width: 100% !important;\n  margin-top: 10px !important;\n  transition: all 0.3s ease !important;\n  box-shadow: 0 4px 15px rgba(21, 101, 192, 0.3) !important;\n  position: relative;\n  z-index: 5;\n}\n\n.card button:hover,\n.card input[type=\"submit\"]:hover {\n  transform: translateY(-2px) !important;\n  box-shadow: 0 6px 20px rgba(21, 101, 192, 0.4) !important;\n}\n\n/* Page background to complement the pale side of your header */\nbody.vsc-initialized {\n  background: #EEF6FF !important;\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\n  margin: 0 !important;\n  padding: 20px !important;\n}\n\n/* Center container */\n.container {\n  max-width: 600px !important;\n  margin: 0 auto !important;\n}\n\n.card .form-group {\n  margin-top: 4px !important;\n  margin-bottom: 4px !important;\n}\n\n/* Mobile tweaks */\n@media (max-width: 768px) {\n  .card {\n    margin: 5px !important;\n    padding: 15px !important;\n    max-width: 100% !important;\n    box-shadow: none !important; /* optional: flatter design for mobile */\n  }\n\n  .card:before {\n    height: 40px !important;\n    margin: -15px -15px 20px -15px !important;\n    border-radius: 10px 10px 0 0 !important;\n  }\n\n  .form-header,\n  .card h1,\n  .card h2 {\n    font-size: 1.4em !important;\n    margin: 5px 0 5px 0 !important;\n  }\n\n  .card input[type=\"text\"],\n  .card input[type=\"email\"],\n  .card input[type=\"tel\"],\n  .card input[type=\"number\"],\n  .card textarea,\n  .card select {\n    font-size: 15px !important;\n    padding: 10px 12px !important;\n  }\n\n  .card button[type=\"submit\"],\n  .card input[type=\"submit\"] {\n    font-size: 16px !important;\n    padding: 12px 20px !important;\n  }\n\n  .container {\n    padding: 0 5px !important;\n    max-width: 100% !important;\n  }\n\n  .card .form-group {\n    margin-top: 6px !important;\n    margin-bottom: 6px !important;\n  }\n}\n",
          "formTitle": "Previous selected date is unavailable",
          "buttonLabel": "Submit",
          "formDescription": "Please, select a new date"
        },
        "formFields": {
          "values": [
            {
              "fieldType": "date",
              "fieldLabel": "Select the date you would you require a demo",
              "requiredField": true
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "4dcf3659-6ee2-45e8-8340-b3261c9ad1df",
      "name": "Outlook Update Event",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueErrorOutput",
      "position": [
        2656,
        48
      ],
      "parameters": {
        "url": "=https://graph.microsoft.com/v1.0/me/events/{{ $('Persist Selected Date&Time').item.json.id }}",
        "method": "PATCH",
        "options": {},
        "jsonBody": "={\n    \"categories\":[\"Booked\",\"Online meeting\"],\n    \"subject\": \"Live Demo Booked\",\n    \"showAs\": \"busy\",\n    \"body\": {\n      \"contentType\": \"HTML\",\n      \"content\": \"{{$json.content}}\"\n    },\n    \"attendees\": [\n      {\n        \"emailAddress\": {\n          \"address\": \"{{$json.your_email}}\",\n          \"name\": \"{{$json.your_name}}\"\n        },\n        \"type\": \"required\"\n      },\n      {\n        \"emailAddress\": {\n          \"address\": \"{{ $('Persist Selected Date&Time').item.json['Contact Email'] }}\",\n          \"name\": \"{{ $('Persist Selected Date&Time').item.json['Full Contact Name'] }}\"\n        },\n        \"type\": \"required\"\n      }\n    ]\n\n}",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "nodeCredentialType": "microsoftOutlookOAuth2Api"
      },
      "credentials": {
        "microsoftOutlookOAuth2Api": {
          "id": "",
          "name": ""
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "211a666f-c3cc-48fe-9769-0769e866dc61",
      "name": "Formulario Final",
      "type": "n8n-nodes-base.form",
      "onError": "continueRegularOutput",
      "position": [
        2848,
        64
      ],
      "webhookId": "1747f9ae-0f60-480b-a912-21e116dd63f5",
      "parameters": {
        "options": {
          "customCss": "/* N8N Landing Page CSS – Header-matching Blues */\n\n/* Style the main form card */\n.card {\n  position: relative;\n  max-width: 500px;\n  margin: 20px auto;\n  padding: 20px;\n  background: white !important;\n  border-radius: 12px;\n  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n}\n\n/* Header bar with your header gradient */\n.card:before {\n  content: '';\n  display: block;\n  height: 50px;\n  background: linear-gradient(135deg, #0A3E7B 0%, #1565C0 100%) !important;\n  position: relative;\n  margin: -20px -20px 30px -20px;\n  border-radius: 12px 12px 0 0;\n}\n\n/* Titles in deep blue */\n.form-header,\n.card h1,\n.card h2 {\n  text-align: center !important;\n  color: #0A3E7B !important;\n  font-weight: 500 !important;\n  font-size: 1.6em !important;\n  margin: 20px 0 15px 0 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Description copy in a cool neutral */\n.card p {\n  text-align: center !important;\n  color: #475569 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Inputs wrapper keeps above the gradient */\n.inputs-wrapper {\n  position: relative;\n  z-index: 5;\n}\n\n/* Form fields with blue focus */\n.card input[type=\"text\"],\n.card input[type=\"email\"],\n.card input[type=\"tel\"],\n.card input[type=\"number\"],\n.card textarea,\n.card select {\n  width: 100% !important;\n  padding: 12px 16px !important;\n  border: 2px solid #E5E7EB !important;\n  border-radius: 8px !important;\n  font-size: 16px !important;\n  transition: border-color 0.3s ease !important;\n  box-sizing: border-box !important;\n}\n\n.card input:focus,\n.card textarea:focus,\n.card select:focus {\n  outline: none !important;\n  border-color: #0A3E7B !important;\n  box-shadow: 0 0 0 3px rgba(10, 62, 123, 0.1) !important;\n}\n\n/* Submit button in a mid-to-light blue gradient */\n.card button[type=\"submit\"],\n.card input[type=\"submit\"] {\n  background: linear-gradient(135deg, #1565C0 0%, #64B5F6 100%) !important;\n  color: white !important;\n  border: none !important;\n  padding: 15px 40px !important;\n  border-radius: 10px !important;\n  font-size: 18px !important;\n  font-weight: 600 !important;\n  cursor: pointer !important;\n  width: 100% !important;\n  margin-top: 10px !important;\n  transition: all 0.3s ease !important;\n  box-shadow: 0 4px 15px rgba(21, 101, 192, 0.3) !important;\n  position: relative;\n  z-index: 5;\n}\n\n.card button:hover,\n.card input[type=\"submit\"]:hover {\n  transform: translateY(-2px) !important;\n  box-shadow: 0 6px 20px rgba(21, 101, 192, 0.4) !important;\n}\n\n/* Page background to complement the pale side of your header */\nbody.vsc-initialized {\n  background: #EEF6FF !important;\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\n  margin: 0 !important;\n  padding: 20px !important;\n}\n\n/* Center container */\n.container {\n  max-width: 600px !important;\n  margin: 0 auto !important;\n}\n\n.card .form-group {\n  margin-top: 4px !important;\n  margin-bottom: 4px !important;\n}\n\n/* Mobile tweaks */\n@media (max-width: 768px) {\n  .card {\n    margin: 5px !important;\n    padding: 15px !important;\n    max-width: 100% !important;\n    box-shadow: none !important; /* optional: flatter design for mobile */\n  }\n\n  .card:before {\n    height: 40px !important;\n    margin: -15px -15px 20px -15px !important;\n    border-radius: 10px 10px 0 0 !important;\n  }\n\n  .form-header,\n  .card h1,\n  .card h2 {\n    font-size: 1.4em !important;\n    margin: 5px 0 5px 0 !important;\n  }\n\n  .card input[type=\"text\"],\n  .card input[type=\"email\"],\n  .card input[type=\"tel\"],\n  .card input[type=\"number\"],\n  .card textarea,\n  .card select {\n    font-size: 15px !important;\n    padding: 10px 12px !important;\n  }\n\n  .card button[type=\"submit\"],\n  .card input[type=\"submit\"] {\n    font-size: 16px !important;\n    padding: 12px 20px !important;\n  }\n\n  .container {\n    padding: 0 5px !important;\n    max-width: 100% !important;\n  }\n\n  .card .form-group {\n    margin-top: 6px !important;\n    margin-bottom: 6px !important;\n  }\n}\n"
        },
        "operation": "completion",
        "completionTitle": "Live Demo Scheduled",
        "completionMessage": "=✅ All set! Your Live Demo is booked on  \n{{ \n  new Date($('Persist Selected Date&Time').item.json.start)\n    .toLocaleDateString('en-GB', { weekday:'long', day:'numeric', month:'long' })\n    .replace(',', '') \n}}  \n\nFrom {{ \n  new Date($('Persist Selected Date&Time').item.json.start)\n    .toLocaleTimeString('en-GB', { hour:'2-digit', minute:'2-digit', hour12:false })\n}}  \nTo   {{ \n  new Date($('Persist Selected Date&Time').item.json.end)\n    .toLocaleTimeString('en-GB', { hour:'2-digit', minute:'2-digit', hour12:false })\n}}  \n\nA calendar invite is on its way.\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "4f82e490-51b7-40a0-9be0-f52fac0ab533",
      "name": "Get Date",
      "type": "n8n-nodes-base.merge",
      "onError": "continueRegularOutput",
      "position": [
        1872,
        80
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "advanced": true,
        "mergeByFields": {
          "values": [
            {
              "field1": "time",
              "field2": "Select one of our available time"
            }
          ]
        }
      },
      "typeVersion": 3.2
    },
    {
      "id": "682a04fe-6001-4ebf-b8a7-a6dbb7caa07f",
      "name": "Formulario Fallido",
      "type": "n8n-nodes-base.form",
      "onError": "continueRegularOutput",
      "position": [
        64,
        672
      ],
      "webhookId": "089c6df2-4400-4266-8ce5-bf6f05af9fc3",
      "parameters": {
        "options": {
          "customCss": "/* N8N Landing Page CSS – Header-matching Blues */\n\n/* Style the main form card */\n.card {\n  position: relative;\n  max-width: 500px;\n  margin: 20px auto;\n  padding: 20px;\n  background: white !important;\n  border-radius: 12px;\n  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n}\n\n/* Header bar with your header gradient */\n.card:before {\n  content: '';\n  display: block;\n  height: 50px;\n  background: linear-gradient(135deg, #0A3E7B 0%, #1565C0 100%) !important;\n  position: relative;\n  margin: -20px -20px 30px -20px;\n  border-radius: 12px 12px 0 0;\n}\n\n/* Titles in deep blue */\n.form-header,\n.card h1,\n.card h2 {\n  text-align: center !important;\n  color: #0A3E7B !important;\n  font-weight: 500 !important;\n  font-size: 1.6em !important;\n  margin: 20px 0 15px 0 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Description copy in a cool neutral */\n.card p {\n  text-align: center !important;\n  color: #475569 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Inputs wrapper keeps above the gradient */\n.inputs-wrapper {\n  position: relative;\n  z-index: 5;\n}\n\n/* Form fields with blue focus */\n.card input[type=\"text\"],\n.card input[type=\"email\"],\n.card input[type=\"tel\"],\n.card input[type=\"number\"],\n.card textarea,\n.card select {\n  width: 100% !important;\n  padding: 12px 16px !important;\n  border: 2px solid #E5E7EB !important;\n  border-radius: 8px !important;\n  font-size: 16px !important;\n  transition: border-color 0.3s ease !important;\n  box-sizing: border-box !important;\n}\n\n.card input:focus,\n.card textarea:focus,\n.card select:focus {\n  outline: none !important;\n  border-color: #0A3E7B !important;\n  box-shadow: 0 0 0 3px rgba(10, 62, 123, 0.1) !important;\n}\n\n/* Submit button in a mid-to-light blue gradient */\n.card button[type=\"submit\"],\n.card input[type=\"submit\"] {\n  background: linear-gradient(135deg, #1565C0 0%, #64B5F6 100%) !important;\n  color: white !important;\n  border: none !important;\n  padding: 15px 40px !important;\n  border-radius: 10px !important;\n  font-size: 18px !important;\n  font-weight: 600 !important;\n  cursor: pointer !important;\n  width: 100% !important;\n  margin-top: 10px !important;\n  transition: all 0.3s ease !important;\n  box-shadow: 0 4px 15px rgba(21, 101, 192, 0.3) !important;\n  position: relative;\n  z-index: 5;\n}\n\n.card button:hover,\n.card input[type=\"submit\"]:hover {\n  transform: translateY(-2px) !important;\n  box-shadow: 0 6px 20px rgba(21, 101, 192, 0.4) !important;\n}\n\n/* Page background to complement the pale side of your header */\nbody.vsc-initialized {\n  background: #EEF6FF !important;\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\n  margin: 0 !important;\n  padding: 20px !important;\n}\n\n/* Center container */\n.container {\n  max-width: 600px !important;\n  margin: 0 auto !important;\n}\n\n.card .form-group {\n  margin-top: 4px !important;\n  margin-bottom: 4px !important;\n}\n\n/* Mobile tweaks */\n@media (max-width: 768px) {\n  .card {\n    margin: 5px !important;\n    padding: 15px !important;\n    max-width: 100% !important;\n    box-shadow: none !important; /* optional: flatter design for mobile */\n  }\n\n  .card:before {\n    height: 40px !important;\n    margin: -15px -15px 20px -15px !important;\n    border-radius: 10px 10px 0 0 !important;\n  }\n\n  .form-header,\n  .card h1,\n  .card h2 {\n    font-size: 1.4em !important;\n    margin: 5px 0 5px 0 !important;\n  }\n\n  .card input[type=\"text\"],\n  .card input[type=\"email\"],\n  .card input[type=\"tel\"],\n  .card input[type=\"number\"],\n  .card textarea,\n  .card select {\n    font-size: 15px !important;\n    padding: 10px 12px !important;\n  }\n\n  .card button[type=\"submit\"],\n  .card input[type=\"submit\"] {\n    font-size: 16px !important;\n    padding: 12px 20px !important;\n  }\n\n  .container {\n    padding: 0 5px !important;\n    max-width: 100% !important;\n  }\n\n  .card .form-group {\n    margin-top: 6px !important;\n    margin-bottom: 6px !important;\n  }\n}\n"
        },
        "operation": "completion",
        "completionTitle": "⚠️ Submission Failed",
        "completionMessage": "=Something went wrong while submitting your live demo request.\nPlease try again in a moment.\nIf the issue persists, contact our support team at info@yourcompany.ae or call us at +971 55 5555 55 55 we’ll be happy to assist you."
      },
      "typeVersion": 1
    },
    {
      "id": "926d46af-3943-48c6-b178-4d1dc539b509",
      "name": "¿Nuevo Espacio Disponible?",
      "type": "n8n-nodes-base.if",
      "onError": "continueRegularOutput",
      "position": [
        1024,
        48
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "5be8bde8-b6fb-48cd-a5c7-4f425a9e0923",
              "operator": {
                "type": "object",
                "operation": "notEmpty",
                "singleValue": true
              },
              "leftValue": "={{ $json }}",
              "rightValue": ""
            },
            {
              "id": "4d152d98-636a-4521-a30e-489d1d2ca2b4",
              "operator": {
                "type": "array",
                "operation": "notEmpty",
                "singleValue": true
              },
              "leftValue": "={{ $json.value }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "befe75b8-157e-40b7-a595-2477f5d8543f",
      "name": "Create Zoom meeting",
      "type": "n8n-nodes-base.zoom",
      "onError": "continueErrorOutput",
      "position": [
        2320,
        48
      ],
      "parameters": {
        "topic": "=Live Demo - {{ $json[\"Company trade name\"] }}",
        "authentication": "oAuth2",
        "additionalFields": {
          "duration": 40,
          "timeZone": "Asia/Dubai",
          "startTime": "={{ $json.start }}"
        }
      },
      "credentials": {
        "zoomOAuth2Api": {
          "id": "",
          "name": ""
        }
      },
      "typeVersion": 1
    },
    {
      "id": "389efd9d-165d-4648-a129-c2c741fcd16a",
      "name": "Persist Selected Date&Time",
      "type": "n8n-nodes-base.merge",
      "onError": "continueRegularOutput",
      "position": [
        2096,
        -80
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.2
    },
    {
      "id": "e0552e28-e7dc-4a1d-b2d5-13b62af932d4",
      "name": "Detalles del Cliente",
      "type": "n8n-nodes-base.form",
      "onError": "continueRegularOutput",
      "position": [
        256,
        -96
      ],
      "webhookId": "56d36c5c-f7a4-4b2e-bf24-a33bfcb13bd4",
      "parameters": {
        "options": {
          "customCss": "/* N8N Landing Page CSS – Header-matching Blues */\n\n/* Style the main form card */\n.card {\n  position: relative;\n  max-width: 500px;\n  margin: 20px auto;\n  padding: 20px;\n  background: white !important;\n  border-radius: 12px;\n  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n}\n\n/* Header bar with your header gradient */\n.card:before {\n  content: '';\n  display: block;\n  height: 50px;\n  background: linear-gradient(135deg, #0A3E7B 0%, #1565C0 100%) !important;\n  position: relative;\n  margin: -20px -20px 30px -20px;\n  border-radius: 12px 12px 0 0;\n}\n\n/* Titles in deep blue */\n.form-header,\n.card h1,\n.card h2 {\n  text-align: center !important;\n  color: #0A3E7B !important;\n  font-weight: 500 !important;\n  font-size: 1.6em !important;\n  margin: 20px 0 15px 0 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Description copy in a cool neutral */\n.card p {\n  text-align: center !important;\n  color: #475569 !important;\n  position: relative;\n  z-index: 5;\n}\n\n/* Inputs wrapper keeps above the gradient */\n.inputs-wrapper {\n  position: relative;\n  z-index: 5;\n}\n\n/* Form fields with blue focus */\n.card input[type=\"text\"],\n.card input[type=\"email\"],\n.card input[type=\"tel\"],\n.card input[type=\"number\"],\n.card textarea,\n.card select {\n  width: 100% !important;\n  padding: 12px 16px !important;\n  border: 2px solid #E5E7EB !important;\n  border-radius: 8px !important;\n  font-size: 16px !important;\n  transition: border-color 0.3s ease !important;\n  box-sizing: border-box !important;\n}\n\n.card input:focus,\n.card textarea:focus,\n.card select:focus {\n  outline: none !important;\n  border-color: #0A3E7B !important;\n  box-shadow: 0 0 0 3px rgba(10, 62, 123, 0.1) !important;\n}\n\n/* Submit button in a mid-to-light blue gradient */\n.card button[type=\"submit\"],\n.card input[type=\"submit\"] {\n  background: linear-gradient(135deg, #1565C0 0%, #64B5F6 100%) !important;\n  color: white !important;\n  border: none !important;\n  padding: 15px 40px !important;\n  border-radius: 10px !important;\n  font-size: 18px !important;\n  font-weight: 600 !important;\n  cursor: pointer !important;\n  width: 100% !important;\n  margin-top: 10px !important;\n  transition: all 0.3s ease !important;\n  box-shadow: 0 4px 15px rgba(21, 101, 192, 0.3) !important;\n  position: relative;\n  z-index: 5;\n}\n\n.card button:hover,\n.card input[type=\"submit\"]:hover {\n  transform: translateY(-2px) !important;\n  box-shadow: 0 6px 20px rgba(21, 101, 192, 0.4) !important;\n}\n\n/* Page background to complement the pale side of your header */\nbody.vsc-initialized {\n  background: #EEF6FF !important;\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\n  margin: 0 !important;\n  padding: 20px !important;\n}\n\n/* Center container */\n.container {\n  max-width: 600px !important;\n  margin: 0 auto !important;\n}\n\n.card .form-group {\n  margin-top: 4px !important;\n  margin-bottom: 4px !important;\n}\n\n/* Mobile tweaks */\n@media (max-width: 768px) {\n  .card {\n    margin: 5px !important;\n    padding: 15px !important;\n    max-width: 100% !important;\n    box-shadow: none !important; /* optional: flatter design for mobile */\n  }\n\n  .card:before {\n    height: 40px !important;\n    margin: -15px -15px 20px -15px !important;\n    border-radius: 10px 10px 0 0 !important;\n  }\n\n  .form-header,\n  .card h1,\n  .card h2 {\n    font-size: 1.4em !important;\n    margin: 5px 0 5px 0 !important;\n  }\n\n  .card input[type=\"text\"],\n  .card input[type=\"email\"],\n  .card input[type=\"tel\"],\n  .card input[type=\"number\"],\n  .card textarea,\n  .card select {\n    font-size: 15px !important;\n    padding: 10px 12px !important;\n  }\n\n  .card button[type=\"submit\"],\n  .card input[type=\"submit\"] {\n    font-size: 16px !important;\n    padding: 12px 20px !important;\n  }\n\n  .container {\n    padding: 0 5px !important;\n    max-width: 100% !important;\n  }\n\n  .card .form-group {\n    margin-top: 6px !important;\n    margin-bottom: 6px !important;\n  }\n}\n",
          "formTitle": "Demo Request",
          "buttonLabel": "Submit"
        },
        "formFields": {
          "values": [
            {
              "fieldLabel": "Company trade name",
              "requiredField": true
            },
            {
              "fieldLabel": "Full Contact Name",
              "requiredField": true
            },
            {
              "fieldLabel": "Contact Role",
              "requiredField": true
            },
            {
              "fieldType": "email",
              "fieldLabel": "Contact Email",
              "requiredField": true
            },
            {
              "fieldLabel": "Contact Phone",
              "placeholder": "050 111 2442",
              "requiredField": true
            },
            {
              "fieldType": "date",
              "fieldLabel": "Select the date you would you require a demo",
              "requiredField": true
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "965c381d-5c13-4b06-9fde-468e59325752",
      "name": "¿La Fecha Seleccionada Tiene Espacio Disponible?",
      "type": "n8n-nodes-base.if",
      "onError": "continueRegularOutput",
      "position": [
        496,
        64
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "680bb6fe-eede-40d6-9e8b-995f74a53645",
              "operator": {
                "type": "boolean",
                "operation": "true",
                "singleValue": true
              },
              "leftValue": "={{\n  (new Date($json['Select the date you would you require a demo']).getTime()) >= new Date().getTime()\n}}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "e055f836-1d14-4c59-84ea-608826085bf2",
      "name": "Nota Adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        416,
        32
      ],
      "parameters": {
        "color": 5,
        "width": 800,
        "height": 688,
        "content": "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n## Date Availability\n**When the user selects a date in the form, first we check if there is an available slot with subject name 'Online Meeting Slot' at this date\n**The Calendar must have pre-created event in the outlook calendar with subject name 'Online Meeting Slot'\n**If there are no slots available on the selected date, the Form loops back to ask for a new date until we fetch a date that contains available 'Online Meeting Slot'"
      },
      "typeVersion": 1
    },
    {
      "id": "e5c4d914-9e04-4b37-8b70-e520a2ffb2ee",
      "name": "Nota Adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1248,
        32
      ],
      "parameters": {
        "color": 6,
        "width": 800,
        "height": 688,
        "content": "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n## Time Availability\n***Once a date is fetched, we propose the 3 nearest time slots available from the date of selection and present it in the Form for the user to choose from"
      },
      "typeVersion": 1
    },
    {
      "id": "036184e2-f87c-4237-adc3-768aea38903c",
      "name": "Nota Adhesiva2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2064,
        32
      ],
      "parameters": {
        "color": 4,
        "width": 992,
        "height": 688,
        "content": "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n## Create Zoom Link - Update Event - Send Invitation\n***Once the user has selected both Date & Time, we create the zoom link \n***Update Event with \n- Zoom link URL \n- Client Details\n- Change the Event Subject to 'Booked Live Demo' so that this slot becomes unavailable for the next clients attempts to schedule the slot"
      },
      "typeVersion": 1
    },
    {
      "id": "1a50e67c-d2eb-4929-9433-a3b9649b64d2",
      "name": "Set Event Fields",
      "type": "n8n-nodes-base.set",
      "position": [
        2496,
        48
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "17e17f08-3b06-480e-b363-d4fd704eea12",
              "name": "content",
              "type": "string",
              "value": "=<h2>\n<strong>{{ $('Persist Selected Date&Time').item.json['Company trade name'] }}</strong>\n</h2>\n\n<p>\n<strong>Requested by: </strong>{{ $('Persist Selected Date&Time').item.json['Full Contact Name'] }}</p>\n\n<p><strong>Role: </strong>{{ $('Persist Selected Date&Time').item.json['Contact Role'] }}</p>\n\n<p><strong>Phone: </strong>{{ $('Persist Selected Date&Time').item.json['Contact Phone'] }}</p>\n\n<p><strong>Email: </strong>{{ $('Persist Selected Date&Time').item.json['Contact Email'] }}</p>\n\n<p>Subject: Your Company Live Demo</p>\n\n<p>Kindly join via Zoom: <a href=\\\"{{ $json.join_url }}\\\">{{ $json.join_url }}</a></p>\n\n<p>For more information visit our website <a href=\\\"https://yourwebsite.ae\\\">www.yourwebsite.ae</a></p>"
            },
            {
              "id": "899d0b17-6726-4e7b-9880-6a54d307b2f2",
              "name": "your_email",
              "type": "string",
              "value": "John"
            },
            {
              "id": "3633f129-47b2-4754-9a2e-977090356cdc",
              "name": "your_name",
              "type": "string",
              "value": "Smith"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "8eb535b6-1947-4c30-a65a-817bdf680189",
      "name": "Nota Adhesiva3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -768,
        -208
      ],
      "parameters": {
        "width": 704,
        "height": 944,
        "content": "#### Live Demo Booking with Outlook + Zoom\n\nThis workflow automates **live demo scheduling**:  \n\n1. **Client Form** → Collects company & contact details with preferred demo date.  \n2. **Outlook Calendar Check** → Looks for available events titled *“Online Meeting Slot”*.  \n   - If no slot exists → prompts client to pick a new date.  \n   - If slot exists → shows up to 3 nearest available times.  \n3. **Client Selects Time** → Their choice is merged with the event details.  \n4. **Zoom Meeting Created** → A Zoom link is generated automatically.  \n5. **Update Outlook Event** → The slot is updated with:  \n   - Client details  \n   - Zoom meeting link  \n   - Subject changed to *“Booked Live Demo”* (to block double-booking).  \n6. **Confirmation** → Client receives styled confirmation + calendar invite.  \n\n⚡ **Requirements:**  \n- Microsoft Outlook account with pre-created *“Online Meeting Slot”* events.  \n- Zoom account with OAuth2 credentials.  \n- n8n self-hosted or cloud setup.  \n"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "4f82e490-51b7-40a0-9be0-f52fac0ab533": {
      "main": [
        [
          {
            "node": "389efd9d-165d-4648-a129-c2c741fcd16a",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "e112995a-c635-4a2a-b1e6-790cf828129c": {
      "main": [
        [
          {
            "node": "9317b0c9-f67b-4b5b-8f2c-347f218b4686",
            "type": "main",
            "index": 0
          },
          {
            "node": "4f82e490-51b7-40a0-9be0-f52fac0ab533",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e0552e28-e7dc-4a1d-b2d5-13b62af932d4": {
      "main": [
        [
          {
            "node": "965c381d-5c13-4b06-9fde-468e59325752",
            "type": "main",
            "index": 0
          },
          {
            "node": "389efd9d-165d-4648-a129-c2c741fcd16a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9317b0c9-f67b-4b5b-8f2c-347f218b4686": {
      "main": [
        [
          {
            "node": "7c4f06a8-2e33-4b3c-b4a9-bf7a2d8a1b07",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5ca66c67-4ad4-4204-96ec-e55614d5f317": {
      "main": [
        [
          {
            "node": "965c381d-5c13-4b06-9fde-468e59325752",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7c4f06a8-2e33-4b3c-b4a9-bf7a2d8a1b07": {
      "main": [
        [
          {
            "node": "4f82e490-51b7-40a0-9be0-f52fac0ab533",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "1a50e67c-d2eb-4929-9433-a3b9649b64d2": {
      "main": [
        [
          {
            "node": "4dcf3659-6ee2-45e8-8340-b3261c9ad1df",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4152a07b-0210-4b26-92cb-d9cd6c31a7a8": {
      "main": [
        [
          {
            "node": "e0552e28-e7dc-4a1d-b2d5-13b62af932d4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "befe75b8-157e-40b7-a595-2477f5d8543f": {
      "main": [
        [
          {
            "node": "1a50e67c-d2eb-4929-9433-a3b9649b64d2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "682a04fe-6001-4ebf-b8a7-a6dbb7caa07f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "926d46af-3943-48c6-b178-4d1dc539b509": {
      "main": [
        [
          {
            "node": "e112995a-c635-4a2a-b1e6-790cf828129c",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "5ca66c67-4ad4-4204-96ec-e55614d5f317",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4dcf3659-6ee2-45e8-8340-b3261c9ad1df": {
      "main": [
        [
          {
            "node": "211a666f-c3cc-48fe-9769-0769e866dc61",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "682a04fe-6001-4ebf-b8a7-a6dbb7caa07f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "389efd9d-165d-4648-a129-c2c741fcd16a": {
      "main": [
        [
          {
            "node": "befe75b8-157e-40b7-a595-2477f5d8543f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "965c381d-5c13-4b06-9fde-468e59325752": {
      "main": [
        [
          {
            "node": "e2c3bdf4-e85d-4f22-aac4-3a4791dc583a",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "5ca66c67-4ad4-4204-96ec-e55614d5f317",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e2c3bdf4-e85d-4f22-aac4-3a4791dc583a": {
      "main": [
        [
          {
            "node": "926d46af-3943-48c6-b178-4d1dc539b509",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "682a04fe-6001-4ebf-b8a7-a6dbb7caa07f",
            "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 - Varios, 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 nodos21
Categoría2
Tipos de nodos9
Descripción de la dificultad

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

Autor
AureusR

AureusR

@aureusr

Experienced Operations and Workflow Manager with a Master’s degree in Electronics and Software Development. I specialize in designing and implementing efficient, automated systems that help teams save time, reduce errors, and scale with confidence. My expertise spans across business process optimization, automation platforms, and custom workflow solutions. Looking to streamline your operations? Book a consultation with me to explore tailored automation strategies and n8n-powered workflows.

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34