Harvest
The Harvest modules allow you to monitor, create, edit, or delete clients, contacts, projects, invoices, expenses, tasks, time entries and users in your Harvest account.
Prerequisites
A Harvest account
In order to use Harvest with Make, it is necessary to have a Harvest account. If you do not have one, you can create a Harvest account at www.getharvest.com/signup.
To connect your Harvest account to Make follow the general instructions for Connecting to services.
After you click the Continue button, Make will redirect you to the Harvest website where you will be prompted to grant Make access to your account.
Confirm the dialog by clicking the Authorize App button.
Triggers when a new client is added.
Connection | |
Watch | Select whether you want to watch all changes or newly added clients only. |
Limit | Set the maximum number of clients Make will return during one execution cycle. |
Returns a list of your clients. The clients are returned sorted by creation date, with the most recently created clients appearing first.
Connection | |
Number of Clients to Return | Set the maximum number of clients Make will return during one execution cycle. |
Active or Inactive | Select whether you want to return only active, only inactive, or both clients. |
Updated Since | Returns only clients that have been updated since the entered date and time. The list of supported date and time formats. |
Retrieves details about a desired client.
Connection | |
Client ID | Map or select the Client ID of the client you want to retrieve information about. |
Creates a new client.
Connection | |
Name | Enter the name of the client. |
Address | Enter the client’s physical address. May include new line characters. |
Currency | ISO 4217 currency code. Example: |
Active | Set whether the client is active or archived. |
Updates the specific client by setting the provided values.
Connection | |
Client ID | Select or map the Client ID of the client you want to update. |
Name | Enter the new name of the client. |
Address | Enter the client’s new physical address. May include new line characters. |
Currency | ISO 4217 currency code. Example: |
Active | Set whether the client is active or archived. |
Deletes a selected client.
Connection | |
Client ID | Select or map the Client ID of the client you want to delete. |
Triggers when a new contact is created.
Connection | |
Client ID | Appears when the Filter by Client option is enabled. Allows you to return contacts that belong to the client with the provided Client ID. |
Watch | Select whether you want to watch all changes or newly added contacts only. |
Limit | Set the maximum number of contacts Make will return during one execution cycle. |
Returns a list of your contacts. The contacts are returned sorted by creation date, with the most recently created contacts appearing first.
Connection | |
Number of Contacts to Return | Set the maximum number of contacts Make will return during one execution cycle. |
Client ID | Map or select the client ID to return contacts belonging to that client only. |
Updated Since | Returns only contacts that have been updated since the entered date and time. The list of supported date and time formats. |
Retrieves the details of a specified contact.
Connection | |
Client ID | Map or select the Contact ID of the contact you want to retrieve information about. |
Create a Contact
Creates a new contact.
Connection | |
Client ID | Map or select the ID of the client associated with this contact. |
First Name | Enter the client's first name. |
Last Name | Enter the client's last name. |
Title | Enter the title of the contact. |
Enter the contact’s email address. | |
Office Number | Enter the contact’s office phone number. |
Mobile Number | Enter the contact’s mobile phone number. |
Fax | Enter the contact’s fax number. |
Updates a specified contact.
Connection | |
Contact ID | Select or map the contact you want to update. |
Client ID | Map or select the ID of the client associated with this contact. |
First Name | Enter the client's first name. |
Last Name | Enter the client's last name. |
Title | Enter the title of the contact. |
Enter the contact’s email address. | |
Office Number | Enter the contact’s office phone number. |
Mobile Number | Enter the contact’s mobile phone number. |
Fax | Enter the contact’s fax number. |
Deletes a specified contact.
Connection | |
Contact ID | Map or select the contact you want to delete. |
Triggers when a new project is created.
Connection | |
Watch | Select whether you want to watch all changes or newly added projects only. |
Limit | Set the maximum number of projects Make will return during one execution cycle. |
Returns a list of projects in your Harvest account.
Connection | |
Number of Projects to Return | Set the maximum number of projects Make will return during one execution cycle. |
Active or inactive | Select whether you want to return only active, only inactive, or both project statuses. |
Client ID | Map or select the client ID to return projects belonging to that client only. |
Updated Since | Returns only projects that have been updated since the entered date and time. The list of supported date and time formats. |
Retrieves details about a specified project.
Connection | |
Project ID | Map or select the Project ID of the project you want to retrieve information about. |
Creates a new project.
Connection | |
Client ID | Select or map the ID of the client to associate this project with. |
Name | Enter the name of the project. |
Bill by | Enter the method by which the project is invoiced. |
Budget by | Select the method by which the project is budgeted. |
Notes | Enter notes for the project. You can see notes when creating an invoice for Fixed Fee projects. |
Code | Enter the project code. The Project Code helps identify your project. You can use any combo of numbers or letters. |
Active | Select whether the project is active or archived. |
Connection | |
Project ID | Select or map the ID of the project you want to update. |
New name | Enter the name of the project. |
Bill by | Enter the method by which the project is invoiced. |
Budget by | Select the method by which the project is budgeted. |
Notes | Enter notes for the project. You can see notes when creating an invoice for Fixed Fee projects. |
Client ID | Select or map the ID of the client to associate this project with. |
Code | Enter the project code. The Project Code helps identify your project. You can use any combo of numbers or letters. |
Active | Select whether the project is active or archived. |
Delete a Project
Deletes a project and any time entries or expenses tracked to it.
Note
Invoices associated with the project will not be deleted. If you don’t want the project’s time entries and expenses to be deleted, you should archive the project using the Edit a Project module.
Connection | |
Project ID | Map or select the project you want to delete. |
Returns a list of your task assignments. The task assignments are returned sorted by creation date, with the most recently created task assignments appearing first.
Connection | |
Number of Task Assignments to Return | Set the maximum number of task assignments Make will return during one execution cycle. |
Project ID | Map or select the project ID you want to filter results by. |
Active or inactive | Select whether you want to return only active, only inactive, or both task assignment statuses. |
Updated Since | Returns only task assignments that have been updated since the entered date and time. The list of supported date and time formats. |
Retrieves details about a specified task assignment.
Connection | |
Project ID | Enter or map the ID of the project associated with the task assignment you want to retrieve. |
Task Assignment ID | Enter (map) the ID of the task assignment you want to retrieve information about. |
Returns a list of your project's user assignments, active and archived.
Connection | |
Number of User Assignments to Return | Set the maximum number of user assignments Make will return during one execution cycle. |
Project ID | Map or select the project ID you want to filter results by. |
User ID | Returns only user assignments belonging to the user with the entered ID. |
Active or inactive | Select whether you want to return only active, only inactive, or both user assignment statuses. |
Updated Since | Returns only user assignments that have been updated since the entered date and time. The list of supported date and time formats. |
Triggers when a new invoice is created.
Connection | |
Client ID | Appears when the Filter by Client option is enabled. Allows you to return invoices that belong to the client with the provided Client ID. |
Watch | Select whether you want to watch all changes or newly added invoices only. |
Limit | Set the maximum number of invoices Make will return during one execution cycle. |
Returns a list of your invoices. The invoices are returned sorted by issue date, with the most recently issued invoices appearing first.
Connection | |
Number of Invoices to Return | Set the maximum number of invoices Make will return during one execution cycle. |
Updated Since | Returns only invoices that have been updated since the entered date and time. The list of supported date and time formats. |
Client ID | Returns only user assignments belonging to the client with the entered ID. |
Project ID | Map or select the project ID you want to filter results by. |
From | Enter the date in order to return invoices with an |
To | Enter the date in order to return invoices with an |
State | Select the state of the invoices you want to return. |
Retrieves details about a specified invoice.
Connection | |
Invoice ID | Enter (map) or select the ID of the invoice you want to retrieve information about. |
Creates a new invoice.
Connection | |||||||||||||||
Client ID | Select or map the ID of the client this invoice belongs to. | ||||||||||||||
Number | Enter the invoice number. If no number is entered, the number will be automatically generated. | ||||||||||||||
Purchase Order Number | Enter the purchase order number. | ||||||||||||||
Tax | Enter the tax (percentage). This percentage is applied to the subtotal, including line items and discounts. Example: use | ||||||||||||||
Tax 2 | Apply another tax. This percentage is applied to the subtotal, including line items and discounts. Example: use | ||||||||||||||
Discount | Enter the discount (percentage). This percentage is subtracted from the subtotal. Example: use | ||||||||||||||
Subject | Enter the invoice subject. | ||||||||||||||
Notes | Enter additional notes that will be included on the invoice. | ||||||||||||||
Currency | Enter the currency used by the invoice. If not provided, the client’s currency will be used. See a list of supported currencies. | ||||||||||||||
Issue Date | Enter the date when the invoice was issued. Default date = today's date. The list of supported date and time formats. | ||||||||||||||
Due Date | Enter the invoice's due date. Defaults to the | ||||||||||||||
Payment Term | Select the timeframe in which the invoice should be paid. Defaults to | ||||||||||||||
Line Items | Add desired line items.
| ||||||||||||||
Retainer ID | Enter the retainer ID in order to create a retainer invoice. | ||||||||||||||
Estimate ID | Enter the ID of the estimate associated with this invoice. |
Deletes a specified invoice.
Connection | |
Invoice ID | Enter (map) or select the ID of the invoice you want to delete. |
Returns a list of payments associated with the selected invoice.
Connection | |
Invoice ID | Select or map the ID of the invoice that the payments belongs to. |
Number of Invoices to return | Set the maximum number of invoices Make will return during one execution cycle. |
Updated Since | Enter the date to return invoice payments that have been updated since the date and time. The list of supported date and time formats. |
Creates a new invoice payment.
Connection | |
Invoice ID | Enter the invoice you want to create a payment for. |
Amount | Enter the amount of the payment. |
Payment date | Select whether to set time and date or the date only. |
Date | Enter the payment date (and time). The list of supported date and time formats. |
Returns a list of your expenses.
Connection | |
Number of Expenses to Return | Set the maximum number of expenses Make will return during one execution cycle. |
User ID | Returns only expenses belonging to the client with the entered ID. |
Client ID | Returns only expenses belonging to the client with the entered ID. |
Project ID | Map or select the project ID you want to filter expenses by. |
Updates Since | Returns only expenses that have been updated since the entered date and time. The list of supported date and time formats. |
From | Enter the date in order to return expenses with a |
To | Enter the date in order to return expenses with a |
Invoiced | Select whether to return expenses that were invoiced, not invoiced, or both. |
Retrieves a specified expense.
Connection | |
Expense ID | Enter (map) or select the ID of the expense you want to retrieve information about. |
Creates a new expense.
Connection | |
Spent date | Enter the date the expense occurred. The list of supported date and time formats. |
Project ID | Select the ID of the project associated with this expense. |
Category ID | Enter the ID of the expense category this expense is being tracked against. |
Total Cost | Enter the total amount of the expense. |
Notes | Enter the expense description. |
Billable | Set whether this expense is billable or not. |
Updates an existing expense.
Connection | |
Expense ID | Select or map the ID of the expense ID you want to update. |
Spent date | Enter the date the expense occurred. The list of supported date and time formats. |
Project ID | Select the ID of the project associated with this expense. |
Category ID | Enter the ID of the expense category this expense is being tracked against. |
Units | The quantity of units to use in calculating the |
Total Cost | Enter the total amount of the expense. |
Notes | Enter the expense description. |
Billable | Set whether this expense is billable or not. |
Delete receipt | Define whether an attached expense receipt should be deleted or not. Select |
Delete an Expense
Deletes an expense.
Connection | |
Expense ID | Enter (map) or select the ID of the expense you want to delete. |
Triggers when a new task is created.
Connection | |
Watch | Select whether you want to watch all changes or newly added tasks only. |
Limit | Set the maximum number of tasks Make will return during one execution cycle. |
List Tasks
Returns a list of your tasks.
Connection | |
Number of Tasks to Return | Set the maximum number of tasks Make will return during one execution cycle. |
Active or inactive | Select whether you want to return only active, only inactive, or both task statuses. |
Updated Since | Returns only tasks that have been updated since the entered date and time. The list of supported date and time formats. |
Retrieves information about a specific task.
Connection | |
Task ID | Enter (map) or select the ID of the task you want to retrieve information about. |
Creates a new task.
Connection | |
Name | Enter the name for the task. |
Default hourly rate | The default hourly rate to use for this task when it is added to a project. Defaults to |
Billable by default | Set whether default tasks should be marked billable when creating a new project. |
Default | Set whether this task should be automatically added to future projects. |
Updates an existing task.
Connection | |
Task ID | Select the task you want to update. |
New Name | Enter the new name for the task. |
Default hourly rate | The default hourly rate to use for this task when it is added to a project. Defaults to |
Billable by default | Set whether default tasks should be marked billable when creating a new project. |
Default | Set whether this task should be automatically added to future projects. |
Deletes an existing task.
Connection | |
Task ID | Enter (map) or select the ID of the task you want to delete. |
Triggers when a new time entry is created.
Connection | |
Name | Enter the name for the task. |
Filter By | Select the user, client, or project you want to filter time entries by. |
Watch | Select whether you want to watch all changes or newly added time entries only. |
Limit | Set the maximum number of time entries Make will return during one execution cycle. |
Returns a list of time entries based on the filter settings.
Connection | |
Number of time entries to return | Set the maximum number of time entries Make will return during one execution cycle. |
Invoiced or not invoiced | Select whether you want to return only invoiced, only not invoiced, or both time entry states. |
Running or Non-running | Select whether you want to return only running, only non-running, or both time entry states. |
User ID | Returns only time entries belonging to the user with the entered ID. |
Client ID | Returns only time entries belonging to the client with the entered ID. |
Project ID | Returns only time entries belonging to the project with the entered ID. |
Updated Since | Returns only tasks that have been updated since the entered date and time. The list of supported date and time formats. |
From | Returns only time entries with a |
To | Returns only time entries with a |
Retrieves details about a time entry.
Connection | |
Time entry ID | Enter (map) or select the ID of the time entry you want to retrieve information about. |
Creates a new time entry.
Connection | |
Project ID | Select the ID of the project to associate with the time entry. |
Task ID | Select the ID of the task to associate with the time entry. |
Spent at | Enter the date when the time entry was spent. The list of supported date and time formats. |
Notes | Enter a description of the time entry. |
Hours | The current amount of time tracked. If provided, the time entry will be created with the specified hours and |
Updates an existing time entry.
Connection | |
Time entry ID | Enter (map) the time entry you want to update. |
Project ID | Select the ID of the project to associate with the time entry. |
Notes | Enter a description of the time entry. |
Hours | The current amount of time tracked. If provided, the time entry will be created with the specified hours and |
Spent at | Enter the date when the time entry was spent. The list of supported date and time formats. |
Deletes an existing time entry.
Connection | |
Time Entry ID | Enter (map) or select the ID of the time entry you want to delete. |
Triggers when a new user is created.
Connection | |
Watch | Select whether you want to watch all changes or newly added users only. |
Limit | Set the maximum number of users Make will return during one execution cycle. |
Returns a list of users. The users are returned sorted by creation date, with the most recently created users appearing first.
Connection | |
Number of users to return | Set the maximum number of users Make will return during one execution cycle. |
Active or inactive | Select whether you want to return only active, only inactive, or both time entry states. |
Updated Since | Returns only users that have been updated since the entered date and time. The list of supported date and time formats. |
Retrieves details about a specified user.
Connection | |
User ID | Enter (map) or select the ID of the user you want to retrieve information about. |
Creates a new user.
Connection | |
First name | Enter the new user's first name. Can’t be updated if the user is inactive. |
Last name | Enter the new user's last name. Can’t be updated if the user is inactive. |
Email address | Enter the new user's email address. Can’t be updated if the user is inactive. |
Telephone | Enter the new user's phone number. |
Timezone | The user’s timezone. Defaults to the company’s timezone. See a list of supported time zones. |
Roles | Enter the role names assigned to this person. |
Administrator | Select the Yes option to set the new user as the administrator with admin permissions. |
Updates an existing user.
Connection | |
User ID | Select or map the user ID of the user you want to update. |
First name | Enter the new user's first name. Can’t be updated if the user is inactive. |
Last name | Enter the new user's last name. Can’t be updated if the user is inactive. |
Email address | Enter the new user's email address. Can’t be updated if the user is inactive. |
Telephone | Enter the new user's phone number. |
Timezone | The user’s timezone. Defaults to the company’s timezone. See a list of supported time zones. |
Roles | Enter the role names assigned to this person. |
Administrator | Select the Yes option to set the new user as the administrator with admin permissions. |
Deletes an existing user.
Deleting a user is only possible if they have no time entries or expenses associated with them.
Connection | |
User ID | Enter (map) or select the ID of the user you want to delete. |
Allows you to perform a custom API call.
Connection | |
URL | Enter a path relative to For the list of available endpoints, refer to the Harvest API V2 documentation. |
Method | Select the HTTP method you want to use: GETto retrieve information for an entry. POSTto create a new entry. PUTto update/replace an existing entry. PATCHto make a partial entry update. DELETEto delete an entry. |
Headers | Enter the desired request headers. You don't have to add authorization headers; we already did that for you. |
Query String | Enter the request query string. |
Body | Enter the body content for your API call. |
The following API call returns all users:
Matches of the search can be found in the module's Output under Bundle > Body > users. In our example, 4 users were returned: