Skip to main content
Server path: /harvest-projects | Type: Application | PCID required: Yes

Tools

ToolDescription
harvest_projects_create_projectCreate a project
harvest_projects_create_taskCreate a task
harvest_projects_create_task_assignmentCreate a task assignment
harvest_projects_create_time_entryCreate a time entry
harvest_projects_create_user_assignmentCreate a user assignment
harvest_projects_delete_projectDelete a project
harvest_projects_delete_taskDelete a task
harvest_projects_delete_task_assignmentDelete a task assignment
harvest_projects_delete_time_entryDelete a time entry
harvest_projects_delete_time_entry_external_referenceDelete a time entry’s external reference
harvest_projects_delete_user_assignmentDelete a user assignment
harvest_projects_list_projectsList all projects
harvest_projects_list_task_assignmentsList all task assignments
harvest_projects_list_task_assignments_for_specific_projectList all task assignments for a specific project
harvest_projects_list_tasksList all tasks
harvest_projects_list_time_entriesList all time entries
harvest_projects_list_user_assignmentsList all user assignments
harvest_projects_list_user_assignments_for_specific_projectList all user assignments for a specific project
harvest_projects_restart_stopped_time_entryRestart a stopped time entry
harvest_projects_retrieve_projectRetrieve a project
harvest_projects_retrieve_taskRetrieve a task
harvest_projects_retrieve_task_assignmentRetrieve a task assignment
harvest_projects_retrieve_time_entryRetrieve a time entry
harvest_projects_retrieve_user_assignmentRetrieve a user assignment
harvest_projects_stop_running_time_entryStop a running time entry
harvest_projects_update_projectUpdate a project
harvest_projects_update_taskUpdate a task
harvest_projects_update_task_assignmentUpdate a task assignment
harvest_projects_update_time_entryUpdate a time entry
harvest_projects_update_user_assignmentUpdate a user assignment

harvest_projects_create_project

Create a project Parameters:
ParameterTypeRequiredDefaultDescription
bill_bystringYesThe method by which the project is invoiced. Options: Project, Tasks, People, or none.
budgetnumberNoThe budget in hours for the project when budgeting by time.
budget_bystringYesThe method by which the project is budgeted. Options: project (Hours Per Project), project_cost (Total Project Fees), task (Hours Per Task), task_fees (Fees Per Task), person (Hours Per Person), none (No Budget).
budget_is_monthlybooleanNoOption to have the budget reset every month. Defaults to false.
client_idintegerYesThe ID of the client to associate this project with.
codestringNoThe code associated with the project.
cost_budgetnumberNoThe monetary budget for the project when budgeting by money.
cost_budget_include_expensesbooleanNoOption for budget of Total Project Fees projects to include tracked expenses. Defaults to false.
ends_onstringNoDate the project will end.
feenumberNoThe amount you plan to invoice for the project. Only used by fixed-fee projects.
hourly_ratenumberNoRate for projects billed by Project Hourly Rate.
is_activebooleanNoWhether the project is active or archived. Defaults to true.
is_billablebooleanYesWhether the project is billable or not.
is_fixed_feebooleanNoWhether the project is a fixed-fee project or not.
namestringYesThe name of the project.
notesstringNoProject notes.
notify_when_over_budgetbooleanNoWhether Project Managers should be notified when the project goes over budget. Defaults to false.
over_budget_notification_percentagenumberNoPercentage value used to trigger over budget email alerts. Example: use 10.0 for 10.0%.
show_budget_to_allbooleanNoOption to show project budget to all employees. Does not apply to Total Project Fee projects. Defaults to false.
starts_onstringNoDate the project was started.

harvest_projects_create_task

Create a task Parameters:
ParameterTypeRequiredDefaultDescription
billable_by_defaultbooleanNoUsed in determining whether default tasks should be marked billable when creating a new project. Defaults to true.
default_hourly_ratenumberNoThe default hourly rate to use for this task when it is added to a project. Defaults to 0.
is_activebooleanNoWhether this task is active or archived. Defaults to true.
is_defaultbooleanNoWhether this task should be automatically added to future projects. Defaults to false.
namestringYesThe name of the task.

harvest_projects_create_task_assignment

Create a task assignment Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
billablebooleanNoWhether the task assignment is billable or not. Defaults to false.
budgetnumberNoBudget used when the project’s budget_by is task or task_fees.
hourly_ratenumberNoRate used when the project’s bill_by is Tasks. Defaults to null when billing by task hourly rate, otherwise 0.
is_activebooleanNoWhether the task assignment is active or archived. Defaults to true.
task_idintegerYesThe ID of the task to associate with the project.

harvest_projects_create_time_entry

Create a time entry Parameters:
ParameterTypeRequiredDefaultDescription
ended_timestringNoThe time the entry ended. If provided, is_running will be set to false. If not provided, is_running will be set to true.
external_referenceobjectNoAn object containing the id, group_id, account_id, and permalink of the external reference.
hoursnumberNoThe current amount of time tracked. If provided, the time entry will be created with the specified hours and is_running will be set to false. If not provided, hours will be set to 0.0 and is_running will be set to true.
notesstringNoAny notes to be associated with the time entry.
project_idintegerYesThe ID of the project to associate with the time entry.
spent_datestringYesThe ISO 8601 formatted date the time entry was spent.
started_timestringNoThe time the entry started. Defaults to the current time. Example: “8:00am”.
task_idintegerYesThe ID of the task to associate with the time entry.
user_idintegerNoThe ID of the user to associate with the time entry. Defaults to the currently authenticated user’s ID.

harvest_projects_create_user_assignment

Create a user assignment Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
budgetnumberNoBudget used when the project’s budget_by is person.
hourly_ratenumberNoCustom rate used when the project’s bill_by is People and use_default_rates is false. Defaults to 0.
is_activebooleanNoWhether the user assignment is active or archived. Defaults to true.
is_project_managerbooleanNoDetermines if the user has Project Manager permissions for the project. Defaults to false for users with Regular User permissions and true for those with Project Managers or Administrator permissions.
use_default_ratesbooleanNoDetermines which billable rate(s) will be used on the project for this user when bill_by is People. When true, the project will use the user’s default billable rates. When false, the project will use the custom rate defined on this user assignment. Defaults to true.
user_idintegerYesThe ID of the user to associate with the project.

harvest_projects_delete_project

Delete a project Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id

harvest_projects_delete_task

Delete a task Parameters:
ParameterTypeRequiredDefaultDescription
taskIdstringYesTask Id

harvest_projects_delete_task_assignment

Delete a task assignment Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
taskAssignmentIdstringYesTask Assignment Id

harvest_projects_delete_time_entry

Delete a time entry Parameters:
ParameterTypeRequiredDefaultDescription
timeEntryIdstringYesTime Entry Id

harvest_projects_delete_time_entry_external_reference

Delete a time entry’s external reference Parameters:
ParameterTypeRequiredDefaultDescription
timeEntryIdstringYesTime Entry Id

harvest_projects_delete_user_assignment

Delete a user assignment Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
userAssignmentIdstringYesUser Assignment Id

harvest_projects_list_projects

List all projects Parameters:
ParameterTypeRequiredDefaultDescription
is_activebooleanNoPass true to only return active projects and false to return inactive projects.
client_idintegerNoOnly return projects belonging to the client with the given ID.
updated_sincestringNoOnly return projects that have been updated since the given date and time.
pageintegerNoDEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)
cursorstringNoPagination cursor
per_pageintegerNoThe number of records to return per page. Can range between 1 and 2000. (Default: 2000)

harvest_projects_list_task_assignments

List all task assignments Parameters:
ParameterTypeRequiredDefaultDescription
is_activebooleanNoPass true to only return active task assignments and false to return inactive task assignments.
updated_sincestringNoOnly return task assignments that have been updated since the given date and time.
pageintegerNoDEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)
cursorstringNoPagination cursor
per_pageintegerNoThe number of records to return per page. Can range between 1 and 2000. (Default: 2000)

harvest_projects_list_task_assignments_for_specific_project

List all task assignments for a specific project Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
is_activebooleanNoPass true to only return active task assignments and false to return inactive task assignments.
updated_sincestringNoOnly return task assignments that have been updated since the given date and time.
pageintegerNoThe page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)
per_pageintegerNoThe number of records to return per page. Can range between 1 and 2000. (Default: 2000)

harvest_projects_list_tasks

List all tasks Parameters:
ParameterTypeRequiredDefaultDescription
is_activebooleanNoPass true to only return active tasks and false to return inactive tasks.
updated_sincestringNoOnly return tasks that have been updated since the given date and time.
pageintegerNoDEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)
cursorstringNoPagination cursor
per_pageintegerNoThe number of records to return per page. Can range between 1 and 2000. (Default: 2000)

harvest_projects_list_time_entries

List all time entries Parameters:
ParameterTypeRequiredDefaultDescription
user_idintegerNoOnly return time entries belonging to the user with the given ID.
client_idintegerNoOnly return time entries belonging to the client with the given ID.
project_idintegerNoOnly return time entries belonging to the project with the given ID.
task_idintegerNoOnly return time entries belonging to the task with the given ID.
external_reference_idstringNoOnly return time entries with the given external_reference ID.
is_billedbooleanNoPass true to only return time entries that have been invoiced and false to return time entries that have not been invoiced.
is_runningbooleanNoPass true to only return running time entries and false to return non-running time entries.
approval_statusstringNoOnly return time entries with the given approval status. Possible values: “unsubmitted”, “submitted”, or “approved”.
updated_sincestringNoOnly return time entries that have been updated since the given date and time. Use the ISO 8601 Format.
fromstringNoOnly return time entries with a spent_date on or after the given date.
tostringNoOnly return time entries with a spent_date on or before the given date.
pageintegerNoThe page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)
per_pageintegerNoThe number of records to return per page. Can range between 1 and 2000. (Default: 2000)

harvest_projects_list_user_assignments

List all user assignments Parameters:
ParameterTypeRequiredDefaultDescription
user_idintegerNoOnly return user assignments belonging to the user with the given ID.
is_activebooleanNoPass true to only return active user assignments and false to return inactive user assignments.
updated_sincestringNoOnly return user assignments that have been updated since the given date and time.
pageintegerNoDEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)
cursorstringNoPagination cursor
per_pageintegerNoThe number of records to return per page. Can range between 1 and 2000. (Default: 2000)

harvest_projects_list_user_assignments_for_specific_project

List all user assignments for a specific project Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
user_idintegerNoOnly return user assignments belonging to the user with the given ID.
is_activebooleanNoPass true to only return active user assignments and false to return inactive user assignments.
updated_sincestringNoOnly return user assignments that have been updated since the given date and time.
pageintegerNoThe page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)
per_pageintegerNoThe number of records to return per page. Can range between 1 and 2000. (Default: 2000)

harvest_projects_restart_stopped_time_entry

Restart a stopped time entry Parameters:
ParameterTypeRequiredDefaultDescription
timeEntryIdstringYesTime Entry Id

harvest_projects_retrieve_project

Retrieve a project Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id

harvest_projects_retrieve_task

Retrieve a task Parameters:
ParameterTypeRequiredDefaultDescription
taskIdstringYesTask Id

harvest_projects_retrieve_task_assignment

Retrieve a task assignment Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
taskAssignmentIdstringYesTask Assignment Id

harvest_projects_retrieve_time_entry

Retrieve a time entry Parameters:
ParameterTypeRequiredDefaultDescription
timeEntryIdstringYesTime Entry Id

harvest_projects_retrieve_user_assignment

Retrieve a user assignment Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
userAssignmentIdstringYesUser Assignment Id

harvest_projects_stop_running_time_entry

Stop a running time entry Parameters:
ParameterTypeRequiredDefaultDescription
timeEntryIdstringYesTime Entry Id

harvest_projects_update_project

Update a project Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
bill_bystringNoThe method by which the project is invoiced. Options: Project, Tasks, People, or none.
budgetnumberNoThe budget in hours for the project when budgeting by time.
budget_bystringNoThe method by which the project is budgeted. Options: project (Hours Per Project), project_cost (Total Project Fees), task (Hours Per Task), task_fees (Fees Per Task), person (Hours Per Person), none (No Budget).
budget_is_monthlybooleanNoOption to have the budget reset every month. Defaults to false.
client_idintegerNoThe ID of the client to associate this project with.
codestringNoThe code associated with the project.
cost_budgetnumberNoThe monetary budget for the project when budgeting by money.
cost_budget_include_expensesbooleanNoOption for budget of Total Project Fees projects to include tracked expenses. Defaults to false.
ends_onstringNoDate the project will end.
feenumberNoThe amount you plan to invoice for the project. Only used by fixed-fee projects.
hourly_ratenumberNoRate for projects billed by Project Hourly Rate.
is_activebooleanNoWhether the project is active or archived. Defaults to true.
is_billablebooleanNoWhether the project is billable or not.
is_fixed_feebooleanNoWhether the project is a fixed-fee project or not.
namestringNoThe name of the project.
notesstringNoProject notes.
notify_when_over_budgetbooleanNoWhether Project Managers should be notified when the project goes over budget. Defaults to false.
over_budget_notification_percentagenumberNoPercentage value used to trigger over budget email alerts. Example: use 10.0 for 10.0%.
show_budget_to_allbooleanNoOption to show project budget to all employees. Does not apply to Total Project Fee projects. Defaults to false.
starts_onstringNoDate the project was started.

harvest_projects_update_task

Update a task Parameters:
ParameterTypeRequiredDefaultDescription
taskIdstringYesTask Id
billable_by_defaultbooleanNoUsed in determining whether default tasks should be marked billable when creating a new project.
default_hourly_ratenumberNoThe default hourly rate to use for this task when it is added to a project.
is_activebooleanNoWhether this task is active or archived.
is_defaultbooleanNoWhether this task should be automatically added to future projects.
namestringNoThe name of the task.

harvest_projects_update_task_assignment

Update a task assignment Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
taskAssignmentIdstringYesTask Assignment Id
billablebooleanNoWhether the task assignment is billable or not.
budgetnumberNoBudget used when the project’s budget_by is task or task_fees.
hourly_ratenumberNoRate used when the project’s bill_by is Tasks.
is_activebooleanNoWhether the task assignment is active or archived.

harvest_projects_update_time_entry

Update a time entry Parameters:
ParameterTypeRequiredDefaultDescription
timeEntryIdstringYesTime Entry Id
ended_timestringNoThe time the entry ended.
external_referenceobjectNoAn object containing the id, group_id, account_id, and permalink of the external reference.
hoursnumberNoThe current amount of time tracked.
notesstringNoAny notes to be associated with the time entry.
project_idintegerNoThe ID of the project to associate with the time entry.
spent_datestringNoThe ISO 8601 formatted date the time entry was spent.
started_timestringNoThe time the entry started. Defaults to the current time. Example: “8:00am”.
task_idintegerNoThe ID of the task to associate with the time entry.

harvest_projects_update_user_assignment

Update a user assignment Parameters:
ParameterTypeRequiredDefaultDescription
projectIdstringYesProject Id
userAssignmentIdstringYesUser Assignment Id
budgetnumberNoBudget used when the project’s budget_by is person.
hourly_ratenumberNoCustom rate used when the project’s bill_by is People and use_default_rates is false.
is_activebooleanNoWhether the user assignment is active or archived.
is_project_managerbooleanNoDetermines if the user has Project Manager permissions for the project.
use_default_ratesbooleanNoDetermines which billable rate(s) will be used on the project for this user when bill_by is People. When true, the project will use the user’s default billable rates. When false, the project will use the custom rate defined on this user assignment.