n8n-nodes-virustotal
v0.1.1
Published
Nodo de n8n para la API publica (v3) de VirusTotal: reportes de archivos, URLs, dominios e IPs, escaneos, comentarios y votos.
Maintainers
Readme
n8n-nodes-virustotal
Community node de n8n para la API pública v3 de VirusTotal. Cubre reputación y análisis de archivos, URLs, dominios e IPs, además de comentarios y votos. No incluye endpoints de VT Enterprise, VT Graph, Feeds ni Private Scanning (requieren licencia Premium).
Instalación
Opción A — Community Nodes (interfaz de n8n)
- Ve a Settings → Community Nodes → Install.
- Instala
n8n-nodes-virustotal(si lo publicas en npm) o instala desde un archivo.tgzlocal.
Opción B — n8n self-hosted (npm)
cd ~/.n8n/nodes # o la carpeta de nodos custom que uses
npm install n8n-nodes-virustotalOpción C — Desarrollo local (este paquete)
npm install
npm run build
npm link
# en la carpeta de instalación de n8n:
npm link n8n-nodes-virustotalReinicia n8n tras instalar.
Credenciales
Crea una credencial VirusTotal API con tu API key personal (la encuentras en tu perfil de virustotal.com → "API Key"). Se envía como cabecera x-apikey.
Límites de la Public API: 4 solicitudes/minuto y 500/día. El nodo incluye una opción Rate Limiting (activada por defecto) que espera automáticamente entre solicitudes cuando el nodo procesa varios items, y reintenta con backoff si VirusTotal responde 429.
Recursos y operaciones
| Recurso | Operaciones | |---|---| | File | Get Report, Scan (Upload), Rescan, Get Comments, Add Comment, Add Vote | | URL | Get Report, Scan, Rescan, Get Comments, Add Comment, Add Vote | | Domain | Get Report, Rescan, Get Comments, Add Comment, Add Vote | | IP Address | Get Report, Rescan, Get Comments, Add Comment, Add Vote | | Analysis | Get (consulta el estado/resultado de un análisis por ID, devuelto por Scan/Rescan) |
Notas:
- File → Scan sube el archivo desde una propiedad binaria del item de entrada (por defecto
data). Límite de 32 MB en la Public API. - URL → Report y las operaciones de comentarios/votos de URL calculan automáticamente el ID que exige VirusTotal (base64 url-safe sin padding) a partir del campo "URL" que ingreses.
- Las operaciones Scan y Rescan son asíncronas: la respuesta trae un
data.idde análisis que puedes pasar al recurso Analysis → Get para consultar el resultado (puedes usar un nodo Wait entre medio). - La salida es el JSON completo devuelto por la API, sin transformar, para máxima flexibilidad en flujos posteriores.
Estructura del proyecto
credentials/
VirusTotalApi.credentials.ts
nodes/
VirusTotal/
VirusTotal.node.ts
GenericFunctions.ts
virustotal.svg
descriptions/
FileDescription.ts
UrlDescription.ts
DomainDescription.ts
IpAddressDescription.ts
AnalysisDescription.tsSeguridad
- La API key se lee únicamente desde el sistema de credenciales de n8n (
VirusTotal API), nunca queda hardcodeada, ni se registra en logs ni se envía a ningún destino distinto de la API oficial de VirusTotal (https://www.virustotal.com/api/v3). Se transmite exclusivamente como cabecerax-apikeyen cada solicitud, siguiendo el mecanismo de autenticación estándar de n8n. - El paquete publicado en npm no incluye código fuente ni
devDependencies— solo el contenido dedist/(JS compilado) y no declara dependencias propias en tiempo de ejecución (n8n-workflowespeerDependency, provista por tu instalación de n8n). - Los avisos que puedan aparecer en
npm auditdurante el desarrollo (p. ej.lodash,uuid) provienen de dependencias transitivas den8n-workflow(a través de@n8n/expression-runtime), no de código de este nodo. No se publican ni se ejecutan como parte del paquete instalado; corresponden a la misma cadena de dependencias que ya usa tu instalación de n8n en producción. - Antes de instalar cualquier community node (este incluido), revisa el código fuente — está disponible completo en el repositorio.
Descargo de responsabilidad
Este nodo se distribuye "tal cual", sin garantías de ningún tipo, bajo licencia MIT. El autor no se hace responsable por el uso que se le dé, por daños derivados de su uso o mal uso, por la disponibilidad o exactitud de los datos devueltos por la API de VirusTotal, ni por el cumplimiento de los términos de servicio de VirusTotal por parte de quien lo utilice. El uso de este nodo, de tu API key y de los datos obtenidos es responsabilidad exclusiva del usuario.
Licencia
MIT
