virustotal

Nodo de n8n para la API publica (v3) de VirusTotal: reportes de archivos, URLs, dominios e IPs, escaneos, comentarios y votos.

Package Information

Released: 2 mo ago
Downloads: 0 weekly / 0 monthly
Latest Version: 0.1.1

Documentation

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)

  1. Ve a Settings → Community Nodes → Install.
  2. Instala n8n-nodes-virustotal (si lo publicas en npm) o instala desde un archivo .tgz local.

Opción B — n8n self-hosted (npm)

cd ~/.n8n/nodes   # o la carpeta de nodos custom que uses
npm install n8n-nodes-virustotal

Opció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-virustotal

Reinicia 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.id de 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.ts

Seguridad

  • 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 cabecera x-apikey en 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 de dist/ (JS compilado) y no declara dependencias propias en tiempo de ejecución (n8n-workflow es peerDependency, provista por tu instalación de n8n).
  • Los avisos que puedan aparecer en npm audit durante el desarrollo (p. ej. lodash, uuid) provienen de dependencias transitivas de n8n-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

Discussion