Crear un directorio de educadores de YouTube con búsqueda y coincidencia inteligente de palabras clave

Intermedio

Este es unInternal Wikiflujo de automatización del dominio deautomatización que contiene 13 nodos.Utiliza principalmente nodos como Set, Code, Webhook, DataTable, ManualTrigger. Crear un directorio searchable de educadores de YouTube con coincidencia inteligente de palabras clave

Requisitos previos
  • Punto final de HTTP Webhook (n8n generará automáticamente)

Categoría

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": "2000c64071c20843606b95c63795bb0797c41036047055a6586498e855b96efc"
  },
  "nodes": [
    {
      "id": "a547a1f6-8c4d-41dc-8fb0-61f94b882533",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        576,
        416
      ],
      "webhookId": "1799531d-7245-422a-b069-c76ca29bdda2",
      "parameters": {
        "path": "1799531d-7245-422a-b069-c76ca29bdda2",
        "options": {},
        "httpMethod": "POST",
        "responseMode": "lastNode"
      },
      "typeVersion": 2.1
    },
    {
      "id": "562d6892-cdfa-4670-9f61-333f090587ef",
      "name": "Obtener fila(s)",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        1024,
        416
      ],
      "parameters": {
        "filters": {
          "conditions": [
            {
              "keyName": "Description",
              "keyValue": "={{ $json[\"topic\"] }}",
              "condition": "like"
            }
          ]
        },
        "matchType": "allConditions",
        "operation": "get",
        "dataTableId": {
          "__rl": true,
          "mode": "list",
          "value": "SsbDaSjBiIsUNxQA",
          "cachedResultUrl": "/projects/NkfS7q6flnrTbJ9e/datatables/SsbDaSjBiIsUNxQA",
          "cachedResultName": "n8n_Educator_Videos"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "e0078b00-477e-4df5-99f2-b24428903309",
      "name": "Responder a Webhook",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        1392,
        416
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.4
    },
    {
      "id": "7ff4e2fc-78ea-414b-a957-910590055016",
      "name": "Establecer mensaje",
      "type": "n8n-nodes-base.set",
      "position": [
        1232,
        416
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "f9cd1364-e892-4289-949f-ecb0893eade4",
              "name": "Message",
              "type": "string",
              "value": "={{  $json[\"data\"]   .map(v =>      `🎥 *${v[\"Video Title\"]}*   👤 ${v[\"Educator\"]}   🧩 Difficulty: ${v[\"Difficulty\"]}   🔗 ${v[\"YouTube Link\"]}   📝 ${v[\"Description\"]}`   )   .join(\"\\n\\n\") }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "b5289988-ae88-4875-a8cb-cc6608a969b2",
      "name": "Al hacer clic en 'Ejecutar flujo de trabajo'",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        576,
        720
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "6b95ed0f-35f7-486a-a6ed-9087b3e5dc50",
      "name": "Iterar sobre elementos",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        1008,
        720
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "def3f50d-5702-4dbb-89be-1b09f0893748",
      "name": "Vista general principal",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        32,
        240
      ],
      "parameters": {
        "color": 4,
        "width": 400,
        "height": 700,
        "content": "## 🎓 n8n Learning Hub - YouTube Educator Search\n\nSearch a curated database of n8n tutorial videos by topic using Data Tables and webhooks.\n\n## How it works\n\n**Search API** (top branch): Webhook receives search queries → normalizes keywords → queries Data Table → formats results → returns matching videos\n\n**Database Setup** (bottom branch): Manual trigger → loads 10 video records → loops through each → inserts into Data Table\n\n## Setup steps\n\n1. Create a Data Table named \"n8n_Educator_Videos\" with columns: Educator, video_title, Difficulty, YouTubeLink, Description\n2. Run the bottom branch first by clicking \"Execute workflow\" on the manual trigger node\n3. Verify 10 videos inserted into your Data Table\n4. Activate the workflow and copy the webhook Production URL\n5. Test with POST request: `{\"topic\": \"voice\"}` or `{\"topic\": \"scraping\"}`\n\nConnect your own frontend or use tools like Postman to query the API."
      },
      "typeVersion": 1
    },
    {
      "id": "214bad22-5d24-41b9-8667-343fa9276289",
      "name": "Insertar fila",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        1264,
        736
      ],
      "parameters": {
        "columns": {
          "value": {
            "Educator": "={{ $json.Educator }}",
            "Difficulty": "={{ $json.Difficulty }}",
            "Description": "={{ $json.Description }}",
            "YouTubeLink": "={{ $json['YouTube Link'] }}",
            "video_title": "={{ $json['Video Title'] }}"
          },
          "schema": [
            {
              "id": "Educator",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Educator",
              "defaultMatch": false
            },
            {
              "id": "video_title",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "video_title",
              "defaultMatch": false
            },
            {
              "id": "Difficulty",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Difficulty",
              "defaultMatch": false
            },
            {
              "id": "YouTubeLink",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "YouTubeLink",
              "defaultMatch": false
            },
            {
              "id": "Description",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Description",
              "defaultMatch": false
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "dataTableId": {
          "__rl": true,
          "mode": "list",
          "value": "SsbDaSjBiIsUNxQA",
          "cachedResultUrl": "/projects/NkfS7q6flnrTbJ9e/datatables/SsbDaSjBiIsUNxQA",
          "cachedResultName": "n8n_Educator_Videos"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "a37f689d-27e9-4692-bd9e-7482b5d44704",
      "name": "Sección 1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        544,
        256
      ],
      "parameters": {
        "width": 256,
        "height": 144,
        "content": "## Search API\n\nReceives POST requests with search topic, normalizes keywords, queries the Data Table, and returns formatted results."
      },
      "typeVersion": 1
    },
    {
      "id": "c97717c5-fadd-4293-b8dd-d61473f320d7",
      "name": "Sección 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1120,
        272
      ],
      "parameters": {
        "width": 256,
        "height": 128,
        "content": "## Format Response\n\nTransforms query results into user-friendly format with emojis and returns via webhook."
      },
      "typeVersion": 1
    },
    {
      "id": "8275cf1a-fa9d-4f2f-9920-2fdb7df994eb",
      "name": "Sección 3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1408,
        736
      ],
      "parameters": {
        "width": 256,
        "height": 176,
        "content": "## Database Initialization\n\nOne-time setup to populate the Data Table with video records. Run this before using the search API."
      },
      "typeVersion": 1
    },
    {
      "id": "236def7b-93a6-41ed-9150-86f516860706",
      "name": "Cargar base de datos de videos",
      "type": "n8n-nodes-base.code",
      "position": [
        800,
        720
      ],
      "parameters": {
        "jsCode": "// Define your YouTube videos data here\nconst videos = [\n  {\n    Educator: \"Nate Herk\",\n    \"Video Title\": \"Eleven Labs Voice Agent\",\n    Difficulty: \"Intermediate\",\n    \"YouTube Link\": \"https://www.youtube.com/watch?v=Je4EAscnKK0\",\n    Description: \"Build a voice-powered AI agent in n8n using ElevenLabs.\"\n  },\n  {\n    Educator: \"Jack Roberts\",\n    \"Video Title\": \"The Most Profitable AI Skill in 2026 (RAG Masterclass)\",\n    Difficulty: \"Advanced\",\n    \"YouTube Link\": \"https://www.youtube.com/watch?v=dxeCH2duhMo\",\n    Description: \"Learn how to build advanced RAG workflows inside n8n.\"\n  },\n  {\n    Educator: \"Nate Herk\",\n    \"Video Title\": \"Run ALL Your AI Locally in Minutes (LLMs, RAG, and more)\",\n    Difficulty: \"Advanced\",\n    \"YouTube Link\": \"https://www.youtube.com/watch?v=V_0dNE-H2gw\",\n    Description: \"Tutorial on local AI setup with n8n, covering LLMs and RAG.\"\n  },\n  {\n    Educator: \"Cole Medin\",\n    \"Video Title\": \"n8n + Crawl4AI - Scrape ANY Website in Minutes with NO Code\",\n    Difficulty: \"Intermediate\",\n    \"YouTube Link\": \"https://www.youtube.com/watch?v=c5dw_jsGNBk\",\n    Description: \"Use Crawl4AI with n8n to scrape any website easily.\"\n  },\n  {\n    Educator: \"Nick Saraev\",\n    \"Video Title\": \"The 9 Best Ways to Scrape Any Website in N8N\",\n    Difficulty: \"Intermediate\",\n    \"YouTube Link\": \"https://www.youtube.com/watch?v=y-eEbmNeFZo\",\n    Description: \"Discover top scraping strategies for n8n workflows.\"\n  },\n  {\n    Educator: \"Nick Saraev\",\n    \"Video Title\": \"Every N8N JavaScript Function Explained (106 + 7 Extras)\",\n    Difficulty: \"Advanced\",\n    \"YouTube Link\": \"https://www.youtube.com/watch?v=Ksr_H30Oris\",\n    Description: \"Full breakdown of n8n's JavaScript function capabilities.\"\n  },\n  {\n    Educator: \"Sabrina Romanov\",\n    \"Video Title\": \"This n8n AI Agent Avatar will AUTOMATE your Social Media\",\n    Difficulty: \"Beginner\",\n    \"YouTube Link\": \"https://www.youtube.com/watch?v=8sPYxqU1SoQ\",\n    Description: \"Create an AI avatar automation system for social media with n8n.\"\n  },\n  {\n    Educator: \"Sabrina Romanov\",\n    \"Video Title\": \"n8n AI Avatar System for TikTok, Reels, and Shorts\",\n    Difficulty: \"Intermediate\",\n    \"YouTube Link\": \"https://www.youtube.com/watch?v=0T3FjaxDISI\",\n    Description: \"Build a full video automation workflow for TikTok and Reels using n8n.\"\n  },\n  {\n    Educator: \"n8n Team (Max Tkacz)\",\n    \"Video Title\": \"Making n8n AI Agents Reliable (Human-in-the-Loop Demo)\",\n    Difficulty: \"Advanced\",\n    \"YouTube Link\": \"https://www.youtube.com/watch?v=NG9bFFNNmQg\",\n    Description: \"Demonstration of human-in-the-loop reliability features for n8n AI agents.\"\n  },\n  {\n    Educator: \"David Olusola\",\n    \"Video Title\": \"Automate Lead Import from Google Sheets to Instantly Using N8N Data Table\",\n    Difficulty: \"Intermediate\",\n    \"YouTube Link\": \"https://youtu.be/c8iv1u_jxDY\",\n    Description: \"Learn how to automate lead generation workflows using n8n Data Tables, Google Sheets, and Instantly for email outreach.\"\n  }\n];\n\n// Convert each video to an individual item so n8n loops them automatically\nreturn videos.map(v => ({ json: v }));"
      },
      "typeVersion": 2
    },
    {
      "id": "080ca0fd-af0a-4770-b692-6b31bef7fe86",
      "name": "Procesar término de búsqueda",
      "type": "n8n-nodes-base.code",
      "position": [
        800,
        416
      ],
      "parameters": {
        "jsCode": "let topic = $json.topic || \"\";\ntopic = topic.trim().toLowerCase();\n\n// Optional simple keyword logic\nif (topic.includes(\"talk\") || topic.includes(\"audio\") || topic.includes(\"voice\")) {\n  topic = \"voice\";\n} else if (topic.includes(\"lead\")) {\n  topic = \"lead gen\";\n} else if (topic.includes(\"scrape\") || topic.includes(\"data\")) {\n  topic = \"scraping\";\n}\n\nreturn [{ topic }];\n"
      },
      "typeVersion": 2
    }
  ],
  "pinData": {},
  "connections": {
    "a547a1f6-8c4d-41dc-8fb0-61f94b882533": {
      "main": [
        [
          {
            "node": "080ca0fd-af0a-4770-b692-6b31bef7fe86",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "562d6892-cdfa-4670-9f61-333f090587ef": {
      "main": [
        [
          {
            "node": "7ff4e2fc-78ea-414b-a957-910590055016",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "214bad22-5d24-41b9-8667-343fa9276289": {
      "main": [
        [
          {
            "node": "236def7b-93a6-41ed-9150-86f516860706",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7ff4e2fc-78ea-414b-a957-910590055016": {
      "main": [
        [
          {
            "node": "e0078b00-477e-4df5-99f2-b24428903309",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6b95ed0f-35f7-486a-a6ed-9087b3e5dc50": {
      "main": [
        [],
        [
          {
            "node": "214bad22-5d24-41b9-8667-343fa9276289",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "236def7b-93a6-41ed-9150-86f516860706": {
      "main": [
        [
          {
            "node": "6b95ed0f-35f7-486a-a6ed-9087b3e5dc50",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "080ca0fd-af0a-4770-b692-6b31bef7fe86": {
      "main": [
        [
          {
            "node": "562d6892-cdfa-4670-9f61-333f090587ef",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b5289988-ae88-4875-a8cb-cc6608a969b2": {
      "main": [
        [
          {
            "node": "236def7b-93a6-41ed-9150-86f516860706",
            "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 - Wiki interno

¿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
Intermedio
Número de nodos13
Categoría1
Tipos de nodos8
Descripción de la dificultad

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

Autor
David Olusola

David Olusola

@dae221

I design enterprise-grade automation systems that eliminate bottlenecks, cut manual work by 70%+, and unlock millions in lost revenue opportunities. My clients — typically achieve 5–10x ROI within the first 90 days. Currently partnering with select high-growth companies ready to scale faster with AI automation. david@daexai.com

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34