Share via


Harvest

Harvest is a simple tool to help track the time spent by your team on each project and task.

This connector is available in the following products and regions:

Service Class Regions
Logic Apps Standard All Logic Apps regions except the following:
     -   Azure Government regions
     -   Azure China regions
     -   US Department of Defense (DoD)
Power Automate Premium All Power Automate regions except the following:
     -   US Government (GCC)
     -   US Government (GCC High)
     -   China Cloud operated by 21Vianet
     -   US Department of Defense (DoD)
Power Apps Premium All Power Apps regions except the following:
     -   US Government (GCC)
     -   US Government (GCC High)
     -   China Cloud operated by 21Vianet
     -   US Department of Defense (DoD)
Connector Metadata
Publisher Microsoft
Website https://www.getharvest.com/
Privacy policy https://www.getharvest.com/privacy-policy

Throttling Limits

Name Calls Renewal Period
API calls per connection 100 60 seconds
Frequency of trigger polls 1 60 seconds

Actions

Add new client

Create a new client.

Add new contact

Create a new contact.

Add new user

Create a new user.

Add user to a project

Add an existing user to a project.

Create time entry

Create a new time entry.

Delete time entry

Delete an existing time entry.

Get time entry by id

Get an existing time entry by id.

Get user info

Retrieve a user's details by user id or email.

List all clients

Retrieves a list of all clients for the authenticated account.

List all contacts

Retrieves a list of all contacts for the authenticated user.

List projects

Lists all projects for the current user.

List tasks

Retrieves a list of all tasks.

Update time entry

Update an existing time entry.

Add new client

Create a new client.

Parameters

Name Key Required Type Description
Name
name True string

Client's name

Currency
currency string

The currency you'd like to use for the client.

Currency symbol
currency_symbol string

Symbol that correlates to the selected currency.

Details
details string

Additional details, normally used for address information.

Add new contact

Create a new contact.

Parameters

Name Key Required Type Description
Client id
client_id True integer

Unique identifier of the client.

First name
first_name True string

Contact's first name.

Last name
last_name True string

Contact's last name.

Email
email string

Contact's email.

Office phone
phone_office string

Contact's office phone.

Mobile phone
phone_mobile string

Contact's mobile phone.

Fax
fax string

Contact's fax.

Title
title string

Contact's title.

Add new user

Create a new user.

Parameters

Name Key Required Type Description
Email
email True string
Is admin
is_admin boolean
First name
first_name True string
Last name
last_name True string
Is contractor
is_contractor boolean
Phone
telephone string
Hourly rate
default_hourly_rate float

Default hourly rate.

Department
department string
Cost rate
cost_rate float

Add user to a project

Add an existing user to a project.

Parameters

Name Key Required Type Description
Project Id
project_id True string

Project Id

User Id
id True integer

User

Create time entry

Create a new time entry.

Parameters

Name Key Required Type Description
notes
notes string
hours
hours integer
Project Id
project_id True string

Project

Task Id
task_id True string

Task

Date
spent_at string

Spent at

Returns

Delete time entry

Delete an existing time entry.

Parameters

Name Key Required Type Description
Time Entry Id
DAY_ENTRY_ID True string

The id of the time entry

Get time entry by id

Get an existing time entry by id.

Parameters

Name Key Required Type Description
Time Entry Id
DAY_ENTRY_ID True string

The id of the time entry

Returns

Get user info

Retrieve a user's details by user id or email.

Parameters

Name Key Required Type Description
User id or email
USERID True string

User id or email

Returns

List all clients

Retrieves a list of all clients for the authenticated account.

Returns

List all contacts

Retrieves a list of all contacts for the authenticated user.

Returns

List projects

Lists all projects for the current user.

Returns

List tasks

Retrieves a list of all tasks.

Returns

Update time entry

Update an existing time entry.

Parameters

Name Key Required Type Description
Time Entry Id
DAY_ENTRY_ID True string

The id of the time entry

Project Id
project_id True string

Project

Task Id
task_id True string

Task

Notes
notes string
Started date-time
started_at string

YYYY-MM-DDThh:mm:ssZ (UTC format).

Ended date-time
ended_at string

YYYY-MM-DDThh:mm:ssZ (UTC format).

Date
spent_at string

YYYY-MM-DDThh:mm:ssZ (UTC format).

Returns

Triggers

When a client is added

Triggers when a new client is added.

When a contact is added

Triggers when a new contact is added.

When a project is created

Triggers when a new project is created.

When a time entry is created for date

Triggers when a new time entry is created for a specific date.

When a time entry is created for the current day

Triggers when a new time entry is created for the current day.

When a user is added

Triggers when a new user is added.

When a client is added

Triggers when a new client is added.

Returns

Name Path Type Description
Client id
client.id integer

Unique identifier of the client.

Name
client.name string

Client's name.

Currency
client.currency string

Currency to use for client billing.

Updated date-time
client.updated_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Created date-time
client.created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Address
client.address string

Client's address.

Currency symbol
client.currency_symbol string

Symbol that correlates to the selected currency.

Details
client.details string

Additional details, normally used for address information.

When a contact is added

Triggers when a new contact is added.

Returns

Name Path Type Description
Contact id
contact.id integer

Unique identifier of the contact.

Client id
contact.client_id integer

Unique identifier of the client.

First name
contact.first_name string

Contact's first name.

Last name
contact.last_name string

Contact's last name.

Email
contact.email string

Contact's email.

Office phone
contact.phone_office string

Contact's office phone.

Mobile phone
contact.phone_mobile string

Contact's mobile phone.

Fax
contact.fax string

Contact's fax.

Title
contact.title string

Contact's title.

Created date-time
contact.created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Updated date-time
contact.updated_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

When a project is created

Triggers when a new project is created.

Returns

Name Path Type Description
Project id
project.id integer

Unique identifier of the project.

Client id
project.client_id integer

Id of client for the project.

Name
project.name string

Project name.

Code
project.code string

Project code.

Is active
project.active boolean

True if the project is currently active.

Is billable
project.billable boolean

True if the project is billable.

Bill by
project.bill_by string

Method by which the project is invoiced.

Hourly rate
project.hourly_rate float

Billing rate by the hour.

Budget
project.budget float

Budget value for the project.

Budget by
project.budget_by string

Budgeting method for the project.

Created date-time
project.created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Updated date-time
project.updated_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Start date
project.starts_on string

YYYY-MM-DD

End date
project.ends_on string

YYYY-MM-DD

Estimate
project.estimate float

Project estimate.

Estimated by
project.estimate_by string

Method of estimation for project.

Earliest record date
project.hint_earliest_record_at string

YYYY-MM-DD

Latest record date
project.hint_latest_record_at string

YYYY-MM-DD

Notes
project.notes string

Project notes.

Cost budget
project.cost_budget float

Budget value for Total Project Fees projects.

Cost budget includes expenses
project.cost_budget_include_expenses boolean

Option for budget of Total Project Fees projects to include tracked expenses.

When a time entry is created for date

Triggers when a new time entry is created for a specific date.

Parameters

Name Key Required Type Description
Date
date True string

YYYY-MM-DD or ISO format datetime

Other User ID
of_user string

The id of the user to check time entries for.

Returns

When a time entry is created for the current day

Triggers when a new time entry is created for the current day.

Parameters

Name Key Required Type Description
Other User ID
of_user string

The id of the user to check time entries for. Defaults to your id.

Returns

When a user is added

Triggers when a new user is added.

Returns

Definitions

ListAllContacts_Response

Name Path Type Description
Contact id
contact.id integer

Unique identifier of the contact.

Client id
contact.client_id integer

Unique identifier of the client.

First name
contact.first_name string

Contact's first name.

Last name
contact.last_name string

Contact's last name.

Email
contact.email string

Contact's email.

Office phone
contact.phone_office string

Contact's office phone.

Mobile phone
contact.phone_mobile string

Contact's mobile phone.

Fax
contact.fax string

Contact's fax.

Title
contact.title string

Contact's title.

Created date-time
contact.created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Updated date-time
contact.updated_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

ListAllClients_Response

Name Path Type Description
Client id
client.id integer

Unique identifier of the client.

Name
client.name string

Client's name.

Currency
client.currency string

Currency to use for client billing.

Updated date-time
client.updated_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Created date-time
client.created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Address
client.address string

Client's address.

Currency symbol
client.currency_symbol string

Symbol that correlates to the selected currency.

Details
client.details string

Additional details, normally used for address information.

UpdateTimeEntry_Response

Name Path Type Description
Time entry id
id integer

Unique identifier of the time entry.

User id
user_id integer

Unique identifier of the user who created the time entry.

Date
spent_at string

Date of time entry.

Created date-time
created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Updated date-time
updated_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Project id
project_id string

Id of the project time entry is associated with.

Task id
task_id string

Id of the task time entry is associated with.

Project
project string

Name of project the time entry is associated with.

Task
task string

Name of task the time entry is associated with.

Client
client string

Name of client the time entry is associated with.

Notes
notes string

Time entry notes.

Hours without timer
hours_without_timer float

Current amount of time tracked, if timer is not running.

Hours
hours float

Number of (decimal time) hours tracked in this time entry.

ListProjects_Response

Name Path Type Description
Project id
project.id integer

Unique identifier of the project.

Client id
project.client_id integer

Id of client for the project.

Name
project.name string

Project name.

Code
project.code string

Project code.

Is active
project.active boolean

True if the project is currently active.

Is billable
project.billable boolean

True if the project is billable.

Bill by
project.bill_by string

Method by which the project is invoiced.

Hourly rate
project.hourly_rate float

Billing rate by the hour.

Budget
project.budget float

Budget value for the project.

Budget by
project.budget_by string

Budgeting method for the project.

Created date-time
project.created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Updated date-time
project.updated_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Start date
project.starts_on string

YYYY-MM-DD

End date
project.ends_on string

YYYY-MM-DD

Estimate
project.estimate float

Project estimate.

Estimated by
project.estimate_by string

Method of estimation for project.

Earliest record date
project.hint_earliest_record_at string

YYYY-MM-DD

Latest record date
project.hint_latest_record_at string

YYYY-MM-DD

Notes
project.notes string

Project notes.

Cost budget
project.cost_budget float

Budget value for Total Project Fees projects.

Cost budget includes expenses
project.cost_budget_include_expenses boolean

Option for budget of Total Project Fees projects to include tracked expenses.

ListTasks_Response

Name Path Type Description
Task id
task.id integer

Unique identifier of the task.

Name
task.name string

Task name.

internal
task.billable_by_default boolean
Created date-time
task.created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC).

Updated date-time
task.updated_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC).

Default hourly rate
task.default_hourly_rate float

Default rate for the task.

GetUserByID_Response

Name Path Type Description
User id
user.id integer

Unique identifier of the user.

Email
user.email string

User's email.

Created date-time
user.created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Is admin
user.is_admin boolean

True if the user is an admin.

First name
user.first_name string

User's first name.

Last name
user.last_name string

User's last name.

Is contractor
user.is_contractor boolean

True if the user is a contractor.

Phone
user.telephone string

User's phone.

Is active
user.is_active boolean

True if the user is currently active.

Hourly rate
user.default_hourly_rate float

User's hourly rate

Department
user.department string

Department name the user works in.

Newsletter subscription
user.wants_newsletter boolean

True if the user wants to subscribe to the newsletter.

Cost rate
user.cost_rate float

User's cost rate.

Weekly capacity
user.weekly_capacity integer

User's weekly capacity.

GetTimeEntriesForDay_Response

Name Path Type Description
day_entries
day_entries array of object

day_entries

Project id
day_entries.project_id string

Unique identifier of the porject.

Project name
day_entries.project string

Name of the project.

User id
day_entries.user_id integer

Unique identifier of the user.

Date
day_entries.spent_at string

YYYY-MM-DD

Task id
day_entries.task_id string

Id of task the time entry is associated with.

Task
day_entries.task string

Name of task the time entry is associated with.

Client
day_entries.client string

Name of client the time entry is associated with.

Time entry id
day_entries.id integer

Unique identifier of the time entry.

Notes
day_entries.notes string

Time entry notes.

Started date-time
day_entries.started_at string

YYYY-MM-DDThh:mm:ssZ (UTC format).

Ended date-time
day_entries.ended_at string

YYYY-MM-DDThh:mm:ssZ (UTC format).

Created date-time
day_entries.created_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Updated date-time
day_entries.updated_at date-time

YYYY-MM-DDThh:mm:ssZ (UTC format).

Hours without timer
day_entries.hours_without_timer float

Current amount of time tracked, if timer is not running.

Hours
day_entries.hours float

Number of (decimal time) hours tracked in this time entry.