An awesome object oriented wrapper for the Harvest REST API v2, written with and for modern PHP.
Via Composer:
composer require wearerequired/harvest-api-php-client php-http/guzzle6-adapter "^2.0"
Why php-http/guzzle6-adapter
? The library is decoupled from any HTTP messaging client with the help by HTTPlug.
// Include Composer's autoloader.
require_once __DIR__ . '/vendor/autoload.php';
// Set up the client.
$client = new \Required\Harvest\Client();
$client->authenticate( 'account-id', 'token' );
// Do your API calls.
$currentUser = $client->currentUser()->show();
// Example request with auto paging.
$projects = $client->projects()->allWithAutoPagingIterator();
foreach ( $projects as $project ) {
// Do something with $project. The iterator will automatically
// fetch new entries if the end of a page is reached.
}
This library does not include an OAuth 2.0 Client. We suggest to use the PHP League's OAuth 2.0 Client with our OAuth provider for Harvest.
The MIT License (MIT). Please see license file for more information.