HomeBlogTranscribePlansAPI Keys

Flujo de Trabajo de Transcripción de YouTube en n8n: RSS a Resumen de IA

Lienzo de flujo de trabajo de n8n conectando un disparador RSS de YouTube a un nodo HTTP Request, un nodo LLM, y Slack

Si quieres un flujo de trabajo de transcripción de YouTube en n8n que se ejecute por sí solo, aquí está: cuatro nodos que vigilan un canal, obtienen la transcripción de cada video nuevo, la resumen con un LLM, y publican el resultado en Slack. Sin proyecto de YouTube Data API, sin pantallas OAuth, sin raspado.

El truco que hace esto limpio es uno que la mayoría de la gente no conoce: cada canal de YouTube ya tiene un feed RSS. n8n tiene un disparador RSS. El resto es una única llamada HTTP.

El flujo de trabajo de un vistazo

  1. Disparador de Feed RSS — se dispara cuando el canal publica un video
  2. HTTP Request — obtiene la transcripción de youtube2text.org
  3. OpenAI (o cualquier nodo LLM) — convierte la transcripción en un resumen
  4. Slack (o Notion, o correo electrónico) — lo entrega

Nodo 1: Disparador de Feed RSS

Agregue el nodo RSS Feed Trigger y déle esta URL de feed:

https://www.youtube.com/feeds/videos.xml?channel_id=CHANNEL_ID

Para encontrar la ID de un canal, abre cualquiera de sus videos, ve la fuente de la página, y busca channel_id — o cógelo de la URL del canal si está en la forma /channel/UC.... El feed devuelve las últimas subidas; el nodo disparador maneja el sondeo y la deduplicación, así que cada video pasa exactamente una vez. Cada elemento incluye un campo link con la URL completa del video, que es exactamente lo que el siguiente nodo necesita.

Nodo 2: HTTP Request

Esta es toda la integración. Agregue un nodo HTTP Request con:

¿Sin clave aún? Obtén la compartida gratuita — no se necesita cuenta:

curl -s https://youtube2text.org/api/demo-key

Eso devuelve {"success": true, "apiKey": "yt_..."}. Se limita a 5 videos por mes por IP, que está bien para probar el flujo de trabajo pero no para seguir un canal activo.

La API acepta cualquier forma de URL de YouTube (watch?v=, youtu.be, incluso un id de video de 11 caracteres desnudo), así que el enlace RSS funciona tal cual. Establezco maxChars a 20000 aquí porque la transcripción va a un LLM a continuación y estás pagando por esos tokens; el predeterminado y máximo es 150000.

La respuesta llega como JSON estructurado:

{"result": {"videoId": "...", "title": "...", "pubDate": "...",
            "content": "transcript text ...", "contentSize": 12345, "truncated": false}}

Nodo 3: Resumir con un LLM

Agregue el nodo LLM de su elección y refiera la transcripción con una expresión como {{ $json.result.content }}. Un prompt que ha funcionado bien para mí:

> Summarize this video transcript in 5 bullet points, then list any tools, links, or numbers mentioned. Title: {{ $json.result.title }}

Mantén el título en el prompt — los subtítulos automáticos ocasionalmente ponen mal los nombres de productos, y el título le da al modelo algo en lo que apoyarse.

Nodo 4: Entregarlo

Agregue un nodo Slack publicando en tu canal, con el título del video, el resumen, y el enlace original. Intercambia con un nodo Notion si prefieres construir un archivo buscable — escribí esa variante en la guía de Notion.

El error que realmente deberías manejar

No todos los videos tienen subtítulos. Las transmisiones en vivo justo después de la emisión, algunos videos musicales, y los canales que desactivan los subtítulos devolverán:

{"error": {"code": "TRANSCRIPT_UNAVAILABLE", "message": "...", "status": 404}}

En el nodo HTTP Request, habilita la opción para continuar en caso de fallo (o atrápalo con una rama de error) para que un video sin subtítulos no detenga el flujo de trabajo. El otro código que vale una rama es RATE_LIMIT_EXCEEDED (429) — la respuesta incluye retryAfterSeconds, así que un nodo Wait más un bucle de reintentos lo maneja si estás procesando un pedido pendiente.

Claves y cuotas

Para algo más que una ejecución de prueba, inicia sesión con Google en youtube2text.org/app/keys y crea tu propia clave — sin número de teléfono, sin tarjeta. El nivel gratuito cubre 5 videos al mes; los planes pagados van desde $5.99 por 50 videos hasta $19.99 por ilimitado, que cómodamente cubre incluso una configuración multicanal.

Si tu equipo vive en Make o Zapier en lugar de n8n, la misma arquitectura se traduce directamente — ver la versión de Make y la versión de Zapier. Pero si estás eligiendo nuevo: el nivel autohospedado gratuito de n8n lo hace la forma más barata de ejecutar este bucle ilimitadamente.