Skip to content
Virus Total Public API v2.0 PHP Wrapper
PHP Makefile
Branch: master
Clone or download
Pull request Compare This branch is even with jayzeng:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Virus Total Public API v2.0 PHP Wrapper

Total Downloads Latest Stable Version Scrutinizer Code Quality Build Status

Project website: (

This is a PHP SDK to interact with Virus Total Public API v2.0, please see for details

I want to show you my appreciation!

If you find the project useful and would love show your appreciation, awesome!

Support via Gittip


Include the following in your composer.json:

  "require": {
    "jayzeng/virustotalapi": "dev-master"
composer update -v -o

Quick start:

require_once 'Vendors/autoload.php';

$apiKey = 'your_api_key';

$file = new VirusTotal\File($apiKey);
$resp = $file->scan('foo.txt');


Sample output:

[jayzeng] ~/Projects/virustotal_apiwrapper/Example] (master)>  php file.php |more
array(8) {
  string(75) "1afc739de16163a80380326ce05e1e69edfc99b7a931329ab127b5099377f076-1370244536"
  string(40) "da9ed61e1bfa981c545acad4136e8a05f0602e45"
  string(64) "1afc739de16163a80380326ce05e1e69edfc99b7a931329ab127b5099377f076"
  string(64) "1afc739de16163a80380326ce05e1e69edfc99b7a931329ab127b5099377f076"
  string(117) ""
  string(32) "b2f301b40a5fb752b19ae0e5c7f679b4"
  string(64) "Scan request successfully queued, come back later for the report"

##Example: Still feeling confusing? See Examples/ (

I also hack up a demo application, source code is available at

##How to run tests?

phpunit --configuration Tests/Conf/phpunit.xml Tests


Vendors/bin/phpunit --configuration Tests/Conf/phpunit.xml Tests

##Issues & Development

  • Source code is hosted on GitHub
  • Report issues, questions, or request features on GitHub Issues

##How to release new version?

  • RELEASE_VERSION - version number
  • RELEASE_MESSAGE - release message
make release RELEASE_VERSION="0.1" RELEASE_MESSAGE="v0.1 is released"

##How to contribute? Awesome! Please follow these steps:

  • Create an issue GitHub Issues to explain what you intended to do
  • Fork the repository into your GitHub account
  • Create a new branch (preferably with a descriptive name that ties to the issue number e.g: feature/issue1_add_urlendpoint)
  • Add/Refactor tests
  • Run tests locally (Please reference How to run tests) and make sure they all pass locally
  • Send in a pull request
  • Pass tests & travis build

##Author: Jay Zeng, e-mail:

You can’t perform that action at this time.