Skip to content

Latest commit

 

History

History
45 lines (29 loc) · 1.66 KB

README.md

File metadata and controls

45 lines (29 loc) · 1.66 KB

PHP client library for the Harvest REST API

Build Status codecov

An awesome object oriented wrapper for the Harvest REST API v2, written with and for modern PHP.

Install

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.

Basic Usage

// 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.
}

OAuth

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.

License

The MIT License (MIT). Please see license file for more information.