Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

jolicode/harvest-php-api

Open more actions menu

Repository files navigation

A PHP Client for Harvest API

example workflow

Harvest is a time tracking and invoicing tool.

This PHP SDK is generated automatically with JanePHP using a Harvest OpenAPI specification generated from the HTML documentation. It means that:

  • all the API endpoints and parameters are supported. See the list of available endpoints;
  • when the documentation changes, it is easy to update the library and keep up-to-date.

The API is tested against the examples provided by the Harvest API documentation.

Installation

This library is built atop of PSR-7 and PSR-18. So you will need to install some implementations for those interfaces.

If no PSR-18 client or PSR-7 message factory is available yet in your project or you don't know or don't care which one to use, just install some default:

composer require symfony/http-client nyholm/psr7

You can now install the Harvest client:

composer require jolicode/harvest-php-api

Usage

First, you need to retrieve an access token. Please checkout Harvest's documentation about the OAuth2 Authorization Flow.

Then, use the factory that is provided to create the client:

// $harvestClient contains all the methods to interact with the API
$harvestClient = JoliCode\Harvest\ClientFactory::create(
  $accessToken,
  $harvestAccountId
);

$clients = $harvestClient->listClients([
  'is_active' => true,
])->getClients();

dump($clients);

Want more example or documentation? See the documentation, which lists all the available methods.

Troubleshoot

Got some problems using this library? Need a missing feature? Do not hesitate to open an issue and share it with us.

Further documentation

You can see the current and past versions using one of the following:

And finally some meta documentation:

License

This library is licensed under the MIT License - see the LICENSE file for details.

About

🌾 A Harvest API PHP Client

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.