Saltar al contenido

Estadísticas de Workflows n8n

Recopila y organiza estadísticas detalladas de los workflows de n8n, incluyendo nodos, etiquetas y webhooks, para generar un resumen JSON completo y un dashboard HTML interactivo.

33 nodos 15 tipos conectado
Cargando workflow...

Nodos

ManualTrigger Code Set StickyNote ExecuteWorkflowTrigger Xml Html MoveBinaryData RespondToWebhook Sort Aggregate N8n ExecuteWorkflow Webhook Merge

Herramientas

n8n API Code Webhook XML HTML

Detalles

ID
2269
Nodos
33
Conex.
Tipos
15

Pertenece a:

¿Qué hace este workflow?

Este potente workflow está diseñado para usuarios avanzados de n8n que necesitan una visión profunda del uso y rendimiento de sus automatizaciones. Se conecta directamente a la API de n8n para recopilar exhaustivamente datos sobre todos tus workflows, nodos, etiquetas y webhooks. Procesa esta información para generar dos salidas clave: un archivo JSON detallado con todas las estadísticas agregadas y un completo dashboard HTML interactivo que permite explorar visualmente el estado y la configuración de tu plataforma n8n. Es ideal para administradores o equipos DevOps que buscan optimizar sus recursos, identificar patrones de uso, gestionar la complejidad de sus proyectos y asegurar la eficiencia operativa, proporcionando una herramienta esencial para la toma de decisiones informadas sobre la gestión de tus automatizaciones. Este análisis te permite ahorrar tiempo en auditorías manuales y mejora la gobernanza de tu infraestructura n8n.

¿Cómo funciona?

Este workflow usa 33 nodos conectados con 15 tipos diferentes: ManualTrigger, Code, Set, StickyNote, ExecuteWorkflowTrigger y 10 más. La estructura está totalmente conectada — listo para importar.

¿Para quién es?

Diseñado para equipos de IT & DevOps. Nivel avanzado — recomendado para usuarios experimentados. Alto valor de negocio: automatiza una tarea recurrente con impacto directo.

¿Lo quieres en tu empresa?

Lo implementamos por ti end-to-end: integración, deploy, mantenimiento y soporte. Consultoría B2B con Genai Sapiens.

Hablemos de tu proyecto

¿Quieres aprender a hacerlo?

Sprints de 30 días con companion IA + comunidad. Aprende n8n, automatización y agentes IA desde cero o nivel avanzado.

Ver formación Momentum

Workflows similares

\n \n \n \n
\n
\n{{ $json.sidebar }}\n\n
\n\n\n{{ $json.overview }}\n\n{{ $json.workflows }}\n\n{{ $json.nodes }}\n\n{{ $json.tags }}\n\n{{ $json.webhooks }}\n\n{{ $json.about }}\n\n
\n
\n
\n \n \n \n"}]}},"typeVersion":3.3},{"id":"173493c0-1f96-4416-a545-6d8c6034ac76","name":"Template elements","type":"n8n-nodes-base.set","position":[1300,2120],"parameters":{"options":{},"assignments":{"assignments":[{"id":"afbcca70-2977-46a3-89c3-27a96f791d13","name":"sidebar","type":"string","value":"= \n"},{"id":"d6dc34a7-3c79-44ef-957c-63aec4b2d75a","name":"overview","type":"string","value":"=
\n

n8n Workflow Dashboard

\n
\n\n
\n

Overview

\n
\n
\n
\n
\n
Total Workflows
\n

📊

\n
\n
\n
\n
\n
\n
\n
Active Workflows
\n

\n
\n
\n
\n
\n
\n
\n
Triggers Count
\n

\n
\n
\n
\n
\n
"},{"id":"19ed123c-404b-4a68-a298-8f24c285f71c","name":"workflows","type":"string","value":"=
\n

Workflows

\n \n
\n
\n
\n
\n \n \n \n \n \n checked\n \n \n \n
\n
\n
\n \n \n \n \n \n \n
\n
\n \n Updated At: \n \n \n Created At: \n \n \n Nodes (Tot | Uniq | Trig): | | \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
"},{"id":"9869134d-ee39-49a2-a978-eb3adaac482d","name":"nodes","type":"string","value":"=
\n

Nodes

\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
\n
\n"},{"id":"f09bc0d1-017e-44f5-bc39-6bdfeffe22ec","name":"tags","type":"string","value":"=
\n

Tags

\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
\n
\n
\n
\n
\n"},{"id":"2e1f449c-a59b-4eb7-a3b7-48bedff01812","name":"webhooks","type":"string","value":"=
\n

Webhooks

\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
\n
\n"},{"id":"2af68003-c9b9-4e60-8836-195da026ad2f","name":"about","type":"string","value":"=
\n
\n

About This Dashboard & Related Templates

\n
\n\n \n
\n \"Eduard\"\n

Eduard

\n

More templates

\n

LinkedIn

\n
\n\n \n
\n
\n
\n \"How\n
\n
\n \n
Read the article to find out more!
\n

This dashboard was created using XML template language (XSLT) in n8n.

\n Read Article\n
\n
\n
\n\n \n
\n
\n
\n
📚 Auto-generate documentation for n8n workflows with GPT and Docsify
\n

Creates a dynamic Docsify site with GPT-powered descriptions and Mermaid diagrams.

\n \n

Features live editing, tag filtering, and automated documentation updates for your n8n instance.

\n View Template\n
\n
\n
\n\n \n
\n
\n
\n
🔍 Visualize Your n8n Workflows with Mermaid.js!
\n

Generates interactive workflow flowcharts using Mermaid.js and Bootstrap.

\n \n

Instantly visualize structures with custom shapes and direct links to workflows, perfect for documentation.

\n View Template\n
\n
\n
\n\n
\n
\n"}]}},"typeVersion":3.3},{"id":"3555218e-8df2-4ae8-9482-2c8ec99798c0","name":"Sort-workflows","type":"n8n-nodes-base.sort","position":[2080,640],"parameters":{"options":{},"sortFieldsUi":{"sortField":[{"order":"descending","fieldName":"wf_stats.wf_updated"},{"fieldName":"wf_stats.wf_name"}]}},"typeVersion":1},{"id":"2d893970-825e-4842-811f-7e7a24dd3bac","name":"Sort-nodes","type":"n8n-nodes-base.sort","position":[2080,800],"parameters":{"options":{},"sortFieldsUi":{"sortField":[{"order":"descending","fieldName":"count"},{"fieldName":"node"}]}},"typeVersion":1},{"id":"c197f00e-d147-45af-b121-a70d28912a7f","name":"Sort-tags","type":"n8n-nodes-base.sort","position":[2080,960],"parameters":{"options":{},"sortFieldsUi":{"sortField":[{"order":"descending","fieldName":"count"},{"fieldName":"tag"}]}},"typeVersion":1},{"id":"4f28a9f6-b67e-42d8-8843-480803932c27","name":"Aggregate-workflows","type":"n8n-nodes-base.aggregate","position":[2260,640],"parameters":{"options":{},"fieldsToAggregate":{"fieldToAggregate":[{"fieldToAggregate":"wf_stats"}]}},"typeVersion":1},{"id":"f4521a5c-8cc3-4831-90e2-1a1fda06fdac","name":"Aggregate-nodes","type":"n8n-nodes-base.aggregate","position":[2260,800],"parameters":{"options":{},"aggregate":"aggregateAllItemData","destinationFieldName":"nodes-section"},"typeVersion":1},{"id":"ae5040f7-4ae3-41e7-9afc-ebb625d303e7","name":"Aggregate-tags","type":"n8n-nodes-base.aggregate","position":[2260,960],"parameters":{"options":{},"aggregate":"aggregateAllItemData","destinationFieldName":"tags-section"},"typeVersion":1},{"id":"69a22d56-3b4e-4d5d-b351-3c787f23e9c9","name":"n8n-get-workflows","type":"n8n-nodes-base.n8n","position":[1260,640],"parameters":{"filters":{},"requestOptions":{}},"credentials":{"n8nApi":{"id":"45","name":"n8n account 4"}},"typeVersion":1},{"id":"35564537-0053-4cdb-a05d-153ad4825393","name":"Prepare JSON object","type":"n8n-nodes-base.executeWorkflow","position":[1260,1600],"parameters":{"options":{},"workflowId":"={{ $workflow.id }}"},"typeVersion":1},{"id":"9fd045f1-7126-4611-b26d-c45139429c6b","name":"get-nodes-via-jmespath","type":"n8n-nodes-base.set","position":[1460,640],"parameters":{"options":{},"assignments":{"assignments":[{"id":"51f83719-066f-4231-a418-ba64a3b5b831","name":"nodes_array","type":"array","value":"={{$jmespath($json,'nodes[*].type').map(item => (item.split('.').pop().toUpperCase() ))}}"},{"id":"bbc40849-66a7-4583-8c2c-ac590be59e38","name":"tags_array","type":"array","value":"={{$jmespath($json,'tags[*].name')}}"},{"id":"08064cc3-f34e-4f05-9975-726378fe63ae","name":"instance_url","type":"string","value":"={{$env[\"N8N_PROTOCOL\"]}}://{{$env[\"N8N_HOST\"]}}"},{"id":"1fdb9640-b628-4e13-9e4c-fef19cae7611","name":"webhook_paths_array","type":"array","value":"={{ $jmespath($json, `nodes[?type=='n8n-nodes-base.webhook'].parameters.path | [?@]`) }}"}]},"includeOtherFields":true},"typeVersion":3.3},{"id":"45723a66-03be-4be7-ae4a-978adb5b7e7b","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[960,1280],"parameters":{"color":6,"width":1301.92628220859,"height":1000.0640426993867,"content":"## Additional section to create a standalone dashboard via XLM templates\n### This section is not required if you only need a JSON\n\n### *IMPORTANT!*\n### This webhook is not protected. Everyone who knows the URL endpoint can get access to the Dashboard. Please consider adding authentication.\n\n1. `Request HTML dashboard` node runs that main section of the workflow\n2. It converts the JSON into an XML structure\n3. A final HTML page is created with the link to an XML stylesheet (this stylesheet controls the look of the dashboard)\n4. The resulting page is returned via `Respond to Webhook` node"},"typeVersion":1},{"id":"b17fbec5-03e2-4836-8704-6b31cdf92a5b","name":"Request HTML dashboard","type":"n8n-nodes-base.webhook","position":[1060,1600],"webhookId":"fb550a01-12f2-4709-ba2d-f71197b68340","parameters":{"path":"fb550a01-12f2-4709-ba2d-f71197b68340","options":{},"responseMode":"responseNode"},"typeVersion":2},{"id":"70fd1bbb-24e2-4fde-b054-6319120a7ac4","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[960,940],"parameters":{"color":3,"width":663.915516288839,"height":251.8866653838499,"content":"## IMPORTANT NOTE FOR CLOUD USERS\n### Since the cloud version doesn't support environmental variables, please make the following changes:\n\n1. **get-nodes-via-jmespath** node. Update the `instance_url` variable: enter your n8n URL instead of `{{$env[\"N8N_PROTOCOL\"]}}://{{$env[\"N8N_HOST\"]}}`\n2. **Create HTML** node. Please provide the n8n instance URL instead of `{{ $env.WEBHOOK_URL }}`"},"typeVersion":1},{"id":"36288776-5f67-40fd-872f-0eeac0dd03b0","name":"Request xsl template","type":"n8n-nodes-base.webhook","position":[1100,2120],"webhookId":"73a91e4d-143d-4168-9efb-6c56f2258aec","parameters":{"path":"73a91e4d-143d-4168-9efb-6c56f2258aec/dashboard.xsl","options":{},"responseMode":"responseNode"},"typeVersion":2},{"id":"cda6fce6-0b0a-4fdf-b50c-b5bd874e43a0","name":"Final-json","type":"n8n-nodes-base.merge","position":[2560,540],"parameters":{"mode":"combine","options":{},"combineBy":"combineByPosition","numberInputs":5},"typeVersion":3.1},{"id":"1a7acbda-0eb4-4d1a-b458-02457ee82a9b","name":"webhook-section","type":"n8n-nodes-base.code","position":[1900,1140],"parameters":{"jsCode":"// Initialize an empty object to hold the mapping between webhook paths and workflows\nconst webhookMap = {};\n\n// Iterate over each workflow item passed from the previous node\n$input.all().forEach(item => {\n // --- Extract Data ---\n // Ensure wf_stats exists in the item's JSON payload\n if (!item.json || !item.json.wf_stats) {\n console.warn(\"Skipping item due to missing json or wf_stats:\", JSON.stringify(item));\n return; // Skip this item if wf_stats is missing\n }\n\n const { wf_stats } = item.json;\n // Destructure the necessary fields from wf_stats\n // Use default values for safety\n const { wf_whooks, wf_name = 'Unknown Workflow', wf_url = '', wf_id = 'unknown-' + Date.now() } = wf_stats;\n\n // --- Process Webhooks ---\n // Check if wf_whooks exists and is an array with items\n if (Array.isArray(wf_whooks) && wf_whooks.length > 0) {\n const workflowInfo = { wf_name, wf_url, wf_id }; // Prepare workflow details object\n\n // For each webhook path associated with this workflow\n wf_whooks.forEach(hookpath => {\n // Ensure hookpath is a non-empty string before processing\n if (typeof hookpath === 'string' && hookpath.trim() !== '') {\n const cleanHookpath = hookpath.trim(); // Use trimmed path\n\n // If this webhook path hasn't been seen before, initialize it in the map\n if (!webhookMap[cleanHookpath]) {\n webhookMap[cleanHookpath] = [workflowInfo];\n } else {\n // If the path exists, add this workflow's info to its list\n // (Avoid adding duplicates if the same workflow info is already there for this path)\n if (!webhookMap[cleanHookpath].some(wf => wf.wf_id === wf_id)) {\n webhookMap[cleanHookpath].push(workflowInfo);\n }\n }\n } else {\n // Optional: Log if a non-string or empty path was found in the array\n console.warn(`Invalid hookpath found in wf_whooks for workflow ${wf_id}:`, hookpath);\n }\n });\n }\n // Workflows without any webhooks (empty wf_whooks array) will be skipped naturally\n});\n\n// --- Format Output ---\n// Convert the map ( { path: [workflows] } ) into an array of items for n8n output\nconst result = Object.keys(webhookMap).map(hookpath => ({\n json: {\n hookpath: hookpath, // The webhook path\n count: webhookMap[hookpath].length, // How many workflows use this path\n workflows: webhookMap[hookpath] // The list of { wf_name, wf_url, wf_id } objects\n }\n}));\n\n// Return the final array\nreturn result;\n"},"typeVersion":2},{"id":"0cfcd940-f000-47ce-8e46-36dab4068acb","name":"Sort-whooks","type":"n8n-nodes-base.sort","position":[2080,1140],"parameters":{"options":{},"sortFieldsUi":{"sortField":[{"order":"descending","fieldName":"count"},{"fieldName":"hookpath"}]}},"typeVersion":1},{"id":"099ecc9b-ca8d-4ccb-aa64-30a563f27aeb","name":"Aggregate-whooks","type":"n8n-nodes-base.aggregate","position":[2260,1140],"parameters":{"options":{},"aggregate":"aggregateAllItemData","destinationFieldName":"whooks-section"},"typeVersion":1},{"id":"a01a78e6-0957-4602-a558-430b17000452","name":"Sticky Note4","type":"n8n-nodes-base.stickyNote","position":[600,1580],"parameters":{"width":620,"content":"## ​\n# USE THIS WEBHOOK -->"},"typeVersion":1}],"active":true,"pinData":{},"settings":{"callerPolicy":"workflowsFromSameOwner","executionOrder":"v1","saveManualExecutions":true,"saveDataSuccessExecution":"all"},"versionId":"3fc1a529-eb6e-4f8a-9d7f-cb8e21e782a1","connections":{"Sort-tags":{"main":[[{"node":"Aggregate-tags","type":"main","index":0}]]},"Sort-nodes":{"main":[[{"node":"Aggregate-nodes","type":"main","index":0}]]},"Create HTML":{"main":[[{"node":"Move Binary Data","type":"main","index":0}]]},"Sort-whooks":{"main":[[{"node":"Aggregate-whooks","type":"main","index":0}]]},"tags-section":{"main":[[{"node":"Sort-tags","type":"main","index":0}]]},"nodes-section":{"main":[[{"node":"Sort-nodes","type":"main","index":0}]]},"Aggregate-tags":{"main":[[{"node":"Final-json","type":"main","index":3}]]},"Convert to XML":{"main":[[{"node":"Create HTML","type":"main","index":0}]]},"Final template":{"main":[[{"node":"Respond to Webhook2","type":"main","index":0}]]},"Sort-workflows":{"main":[[{"node":"Aggregate-workflows","type":"main","index":0}]]},"Aggregate-nodes":{"main":[[{"node":"Final-json","type":"main","index":2}]]},"globals-section":{"main":[[{"node":"Final-json","type":"main","index":0}]]},"webhook-section":{"main":[[{"node":"Sort-whooks","type":"main","index":0}]]},"Aggregate-whooks":{"main":[[{"node":"Final-json","type":"main","index":4}]]},"Move Binary Data":{"main":[[{"node":"Respond to Webhook","type":"main","index":0}]]},"Template elements":{"main":[[{"node":"Final template","type":"main","index":0}]]},"n8n-get-workflows":{"main":[[{"node":"get-nodes-via-jmespath","type":"main","index":0}]]},"workflows-section":{"main":[[{"node":"nodes-section","type":"main","index":0},{"node":"tags-section","type":"main","index":0},{"node":"globals-section","type":"main","index":0},{"node":"Sort-workflows","type":"main","index":0},{"node":"webhook-section","type":"main","index":0}]]},"Aggregate-workflows":{"main":[[{"node":"Final-json","type":"main","index":1}]]},"Prepare JSON object":{"main":[[{"node":"Convert to XML","type":"main","index":0}]]},"Request xsl template":{"main":[[{"node":"Template elements","type":"main","index":0}]]},"Request HTML dashboard":{"main":[[{"node":"Prepare JSON object","type":"main","index":0}]]},"get-nodes-via-jmespath":{"main":[[{"node":"workflows-section","type":"main","index":0}]]},"Execute Workflow Trigger":{"main":[[{"node":"n8n-get-workflows","type":"main","index":0}]]},"When clicking \"Test workflow\"":{"main":[[{"node":"n8n-get-workflows","type":"main","index":0}]]}}}