API Scripts and client libraries
VirusTotal's API lets you upload and scan files or URLs, access finished scan reports and make automatic comments without the need of using the website interface. In other words, it allows you to build simple scripts to access the information generated by VirusTotal. You may learn more about it in our Developer Hub.
VirusTotal Community members have written a number of scripts in different programming languages to interact with our API. Those scripts are listed here. VirusTotal itself is not responsible for these scripts, which are contributions by the Community. Use them at your own risk and make sure you follow ourΒ Terms of Service.
If you would like to see your own implementation listed in this section, just get in touch with us.
API V3Β Β official client libraries
API V3 third party scripts and client libraries
API V2 third party scripts and client libraries
API V3Β official client libraries
You can also use our VirusTotal Command Line Interface
API V3 third party scripts and client libraries
AutoIt
VirusTotal public API 3.0 implementation in AutoItΒ byΒ @Danyfirex.
Bash
vt-scan: VirusTotal Scan Script by sevsec.
Python
Virus Total Hunting is a tiny tool based on the VT api version 3 to run daily, weekly or monthly report about malware hunting.
virustotal3 provides an easy way to use VirusTotal version 3 REST endpoints, including those exclusive to VirusTotal Enterprise such as Live Hunt, Retro Hunt and Zip Files that were not available in version 2.
The Hugin munit script retrieves and displays information to all samples returned in a retrohunt.
VTISearchΒ is a small utility for running a VirusTotal Intelligence search query.
vt-ip-url-analysis Automating VirusTotal's API(v3) for IP address and URL analysis with HTML Reporting
Ruby
virustotalx is aΒ VirusTotal API (version 3) wrapper for Ruby.
Ruby Gem for VirusTotal API version 3.0Β byΒ pwelch.
Maltego Transforms
VTSubmitter-Maltego accepts a hash and extracts basic, useful information about its VirusTotal submitters.
API V2 third party scripts and client libraries
Our API V2 will be soon deprecated, it will remain available but we encourage every new user to adopt API v3 instead, where we will include our new functionalities.
AutoIt
VirusTotal public API 2.0 implementation in AutoItΒ byΒ @Danyfirex.
C/C++
VirusTotal public and private API 2.0 implementation in pure CΒ by VirusTotal team.
Elixir
VirusTotal API 2.0 implementation in Elixir LangΒ byΒ Doug.
Erlang
VirusTotal public API implementation in ErlangΒ byΒ dtykocki.
Go
VirusTotal public API 2.0 implementation in GoΒ byΒ Willi Ballenthin.
VirusTotal public API 2.0 implementation in Go by dutchcoders.
VirusTotal public API 2.0 implementation in GoΒ byΒ Vighneswar Rao Bojja.
Lua
VirusTotal public API 2.0 implementation in Lua by ner0x652.
Java
VirusTotal public API 2.0 implementation in JavaΒ byΒ Mauricio Correa.
VirusTotal public API 2.0 implementation in JavaΒ byΒ Kanishka Dilshan.
VirusTotal public API 2.0 implementation in JavaΒ byΒ Vighneswar Rao Bojja.
Maltego Transforms
Set of local Maltego transforms for VirusTotal's public APIΒ by Michael Yip.
VirusTotal local Maltego transformsΒ byΒ Lookingglass.
.NET
VirusTotal public API version 2.0 implementation in C#.NETΒ by Ian Qvist.
VirusTotal public API version 2.0 implementation in VB.NETΒ byΒ omegatechware.
Implementation and Integration of VirusTotal's API in ASP.NET + PythonΒ byΒ Nilay Sangani.
Node.js
An implementation of the Virustotal API for Node.js byΒ Nate Watson.
Perl
VirusTotal public API version 2.0 implementation in perlΒ by Michelle Sullivan from SORBS.
Perl script to submit files and retrieve their resultsΒ by Christopher Frenz (@cfrenz).
PHP
VirusTotal public API version 2.0, with internal PHP curl, and no other dependencies.Β byΒ @IzzyOnDroid.
VirusTotal public API version 2.0 implementation in PHPΒ byΒ @jayzeng.
PHP script for accessing VirusTotal public API Version 2.0Β by Andreas Breitschopp (@abtools).
PHP script for scanning files with VirusTotal public API Version 2.0 byΒ @adrianTNT.
Postman
VirusTotal-Postman-Collection byΒ tines.io.
Powershell
VirusTotal public API version 2.0 implementation in PowershellΒ byΒ @DBHeise.
Hash lookups using API version 2.0 in Powershell by @cbshearer.
Python
VirusTotal public API version 2.0 implementation in Python 2.xΒ by Chris Clark and Adam Meyers.
VirusTotal public API version 2.0 implementation in Python 2.xΒ byΒ Gawen Arab.
VirusTotal public API version 2.0 implementation in Python 2.xΒ byΒ @techno_vikiing.
Single and bulk lookups with VirusTotal public API version 2.0Β byΒ Claudio Guarnieri.
VirusTotal public API version 2.0 implementation in Python 2.xΒ byΒ @Erethon.
Full VirusTotal public and private API version 2.0 implementation in Python 2.xΒ byΒ Andriy Brukhovetskyy.
VirusTotal public API version 2.0 implementation in Python 3.xΒ byΒ Xiaokui Shu.
VirusTotal public API version 2.0 implementation in Python 2.xΒ byΒ Phillip Martin.
VirusTotal public and private API version 2.0 implementation in Python 2.xΒ byΒ Blacktop.
VirusTotal domain scannerΒ byΒ Matthew Clairmont.
VirusTotal public API version 2.0 implementation in PythonΒ byΒ Tal Melamed.
VirusTotal public API version 2.0 implementation in Python 2.xΒ by Harry Chauhan.
VirusTotalAPI wrapper version 2.0 implementation in Python 3.x byΒ Β JosΓ© Lopes.
VirusTotal public API version 2.0 implementation in Python 3.xΒ byΒ Dextroz.
URLs and hash lookupsΒ CLI using API version 2.0 in Python 3.x byΒ Β TheresAFewConors
R
R client for the Virustotal Public API by Gaurav Sood
Ruby
Rubygems command-line tool to interact with VirusTotal public API version 2.0Β byΒ hammackj.
Rust
Rust library for VirusTotal API byΒ Chihiro Hasegawa
XProc
XProc script to interact with VirusTotal public API version 2.0Β byΒ Martin Kraetke.
Updated 2 days ago