Harvest 2.4.7-beta

This is a prerelease version of Harvest.
dotnet add package Harvest --version 2.4.7-beta
                    
NuGet\Install-Package Harvest -Version 2.4.7-beta
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Harvest" Version="2.4.7-beta" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Harvest" Version="2.4.7-beta" />
                    
Directory.Packages.props
<PackageReference Include="Harvest" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Harvest --version 2.4.7-beta
                    
#r "nuget: Harvest, 2.4.7-beta"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Harvest@2.4.7-beta
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Harvest&version=2.4.7-beta&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Harvest&version=2.4.7-beta&prerelease
                    
Install as a Cake Tool

Harvest.Api

A .NET wrapper for the Harvest time tracking API.

NuGet License: MIT

Installation

Install the package via NuGet:

dotnet add package Harvest

Or via the Package Manager Console:

Install-Package Harvest

Getting Started

Authentication

To use the Harvest API, you'll need:

  • An Account ID - Found in Harvest under Settings > Choose Integrations > Authorized OAuth2 API Clients
  • An Access Token - Create a Personal Access Token in the same location

Basic Usage

using Harvest;

// Create a client
var harvestClient = new HarvestClient(
    accountId: 123456,
    accessToken: "your-access-token"
);

// Get current user
var me = await harvestClient.Users.GetMeAsync();
Console.WriteLine($"Hello, {me.FirstName}!");

// List all clients
var clientsContainer = await harvestClient.Clients.ListAllAsync();
foreach (var client in clientsContainer.Clients)
{
    Console.WriteLine($"Client: {client.Name}");
}

// List all projects
var projectsContainer = await harvestClient.Projects.ListAllAsync();
foreach (var project in projectsContainer.Projects)
{
    Console.WriteLine($"Project: {project.Name}");
}

// Create a time entry
var timeEntry = await harvestClient.TimeEntries.CreateAsync(new TimeEntryCreationDto
{
    ProjectId = 12345678,
    TaskId = 87654321,
    SpentDate = "2025-01-15",
    Hours = 2.5m,
    Notes = "Working on feature X"
});

Available APIs

The HarvestClient provides access to the following API endpoints:

Property Description
Clients Manage clients
Companies Access company information
Projects Manage projects
ProjectTaskAssignments Manage task assignments for projects
Tasks Manage tasks
TimeEntries Create, update, and delete time entries
Users Manage users
UserProjectAssignments Manage project assignments for users

Proxy Support

If you need to route requests through a proxy:

var harvestClient = new HarvestClient(
    accountId: 123456,
    accessToken: "your-access-token",
    proxyUrl: "http://proxy.example.com:8080"
);

API Documentation

For full API documentation, refer to the official Harvest API v2 Documentation.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License.

Acknowledgments

This library was forked from projects by:

  • Joel Potter
  • Data Research Group
  • Paul Irwin

Maintained by Panoramic Data Limited.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.4.7-beta 251 12/18/2025
2.3.0 3,015 6/20/2018
2.2.0 1,224 5/23/2018
2.1.0 1,487 3/17/2018