Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

ExaVault PHP API Library - v2 API


Welcome to ExaVault's PHP code library for our v2 API. Our v2 API will allow you to interact with all aspects of the service the same way our web portal would. The library is generated from our API's public swagger YAML file.


To use this library, you'll need PHP 5.5 (or greater) installed as well as composer.

You will also need an ExaVault account, as well as an API key and access token.

Installing the Code Library

Option 1 - Using Composer

You can use composer to add this library to your project by running this command in your project folder:

% composer require exavault/evapi-php 

Option 2 - Manual Installation

Alternatively, you can clone the github repo and then run composer install in the evapi-php directory to install dependencies.

Sample Code

For a gentle introduction to using PHP code with ExaVault's API, check out our code samples. Follow the instructions in that repository's README to run the sample scripts, which will demonstrate how to use several of the generated PHP classes to interact with your ExaVault account.

Writing Your Own Code

When you're ready to write your own code using this library, you'll need to:

  1. Install our code library in your project, either with composer require exavault/evapi-php or by downloading this repository and running composer install
  2. Include the generated vendor/autoload.php to the top of your script
  3. Provide your API key and access token with every function method on the Api classes, which are in the ExaVault\Api namespace.
  4. Whenever you instantiate an Api object (ResourcesApi, UsersApi, etc.), override the configuration to point the code at the correct API URL:
$account_url = "";
$accountApi = new ExaVault\Api\AccountApi(
    new GuzzleHttp\Client(),
    (new ExaVault\Configuration())->setHost($account_url)
$resourcesApi = new ExaVault\Api\ResourcesApi(
    new GuzzleHttp\Client(),
    (new ExaVault\Configuration())->setHost($account_url)
$usersApi = new ExaVault\Api\UsersApi(
    new GuzzleHttp\Client(),
    (new ExaVault\Configuration())->setHost($account_url)

If you'd like to see this done in sample code, please take a look at our code samples.