harvest.json•12 kB
{
"nodeType": "n8n-nodes-base.harvest",
"displayName": "Harvest",
"description": "Access data on Harvest",
"version": 1,
"properties": [
{
"name": "returnAll",
"displayName": "Return All",
"type": "boolean",
"default": false,
"description": "Whether to return all results or only up to a given limit",
"displayOptions": {
"show": {
"resource,\n\t\t\t\toperation": [
"getAll"
]
}
}
},
{
"name": "limit",
"displayName": "Limit",
"type": "number",
"default": 100,
"description": "Max number of results to return",
"typeOptions": {
"minValue": 1,
"maxValue": 100
},
"displayOptions": {
"show": {
"resource,\n\t\t\t\toperation": [
"getAll"
],
"returnAll": [
false
]
}
}
},
{
"name": "filters",
"displayName": "Filters",
"type": "collection",
"default": {},
"description": "Whether to only return active clients and false to return inactive clients",
"placeholder": "Add Filter",
"options": [
{
"name": "is_active",
"displayName": "Is Active",
"type": "boolean",
"default": true,
"description": "Whether to only return active clients and false to return inactive clients"
},
{
"name": "updated_since",
"displayName": "Updated Since",
"type": "dateTime",
"default": "",
"description": "Only return clients that have been updated since the given date and time"
}
],
"displayOptions": {
"show": {
"resource,\n\t\t\t\toperation": [
"getAll"
]
}
}
},
{
"name": "id",
"displayName": "Client ID",
"type": "string",
"default": "",
"description": "The ID of the client you are retrieving",
"required": true,
"displayOptions": {
"show": {
"operation": [
"get"
]
}
}
},
{
"name": "name",
"displayName": "Name",
"type": "string",
"default": "",
"description": "The name of the client",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "additionalFields",
"displayName": "Additional Fields",
"type": "collection",
"default": {},
"description": "A textual representation of the client’s physical address. May include new line characters.",
"placeholder": "Add Field",
"options": [
{
"name": "address",
"displayName": "Address",
"type": "string",
"default": "",
"description": "A textual representation of the client’s physical address. May include new line characters."
},
{
"name": "currency",
"displayName": "Currency",
"type": "string",
"default": "",
"description": "The currency used by the estimate. If not provided, the client’s currency will be used. See a list of supported currencies"
},
{
"name": "is_active",
"displayName": "Is Active",
"type": "string",
"default": "",
"description": "Whether the client is active, or archived. Defaults to true."
}
],
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "updateFields",
"displayName": "Update Fields",
"type": "collection",
"default": {},
"description": "A textual representation of the client’s physical address. May include new line characters.",
"placeholder": "Add Field",
"options": [
{
"name": "address",
"displayName": "Address",
"type": "string",
"default": "",
"description": "A textual representation of the client’s physical address. May include new line characters."
},
{
"name": "currency",
"displayName": "Currency",
"type": "string",
"default": "",
"description": "The currency used by the estimate. If not provided, the client’s currency will be used. See a list of supported currencies"
},
{
"name": "is_active",
"displayName": "Is Active",
"type": "boolean",
"default": true,
"description": "Whether the client is active, or archived. Defaults to true."
},
{
"name": "name",
"displayName": "Name",
"type": "string",
"default": "",
"description": "Whether the client is active, or archived. Defaults to true."
}
],
"displayOptions": {
"show": {
"operation": [
"update"
]
}
}
},
{
"name": "operation",
"displayName": "Operation",
"type": "options",
"default": "getAll",
"description": "Create a client",
"options": [
{
"name": "Create",
"value": "create",
"description": "Create a client"
},
{
"name": "Delete",
"value": "delete",
"description": "Delete a client"
},
{
"name": "Get",
"value": "get",
"description": "Get data of a client"
},
{
"name": "Get Many",
"value": "getAll",
"description": "Get data of many clients"
},
{
"name": "Update",
"value": "update",
"description": "Update a client"
}
],
"displayOptions": "{\n\t\t\tshow: {\n\t\t\t\tresource,\n\t\t\t}"
},
{
"name": "firstName",
"displayName": "First Name",
"type": "string",
"default": "",
"description": "The first name of the contact",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "clientId",
"displayName": "Client ID",
"type": "string",
"default": "",
"description": "The ID of the client associated with this contact",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "projectId",
"displayName": "Project ID",
"type": "string",
"default": "",
"description": "The ID of the project associated with this expense",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "expenseCategoryId",
"displayName": "Expense Category ID",
"type": "string",
"default": "",
"description": "The ID of the expense category this expense is being tracked against",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "spentDate",
"displayName": "Spent Date",
"type": "dateTime",
"default": "",
"description": "Date the expense occurred",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "isBillable",
"displayName": "Is Billable",
"type": "boolean",
"default": true,
"description": "Whether the project is billable or not",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "billBy",
"displayName": "Bill By",
"type": "options",
"default": "none",
"description": "The method by which the project is invoiced",
"required": true,
"options": [
{
"name": "None",
"value": "none"
},
{
"name": "People",
"value": "People"
},
{
"name": "Project",
"value": "Project"
},
{
"name": "Tasks",
"value": "Tasks"
}
],
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "budgetBy",
"displayName": "Budget By",
"type": "string",
"default": "none",
"description": "The email of the user or \"none\"",
"placeholder": "",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "taskId",
"displayName": "Task ID",
"type": "string",
"default": "",
"description": "The ID of the task to associate with the time entry",
"required": true,
"displayOptions": {
"show": {
"operation": [
"createByDuration"
]
}
}
},
{
"name": "lastName",
"displayName": "Last Name",
"type": "string",
"default": "",
"description": "The last name of the user",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "email",
"displayName": "Email",
"type": "string",
"default": "",
"description": "The email of the user",
"placeholder": "name@email.com",
"required": true,
"displayOptions": {
"show": {
"operation": [
"create"
]
}
}
},
{
"name": "authentication",
"displayName": "Authentication",
"type": "options",
"default": "accessToken",
"options": [
{
"name": "Access Token",
"value": "accessToken"
},
{
"name": "OAuth2",
"value": "oAuth2"
}
]
},
{
"name": "resource",
"displayName": "Resource",
"type": "options",
"default": "task",
"options": [
{
"name": "Client",
"value": "client"
},
{
"name": "Company",
"value": "company"
},
{
"name": "Contact",
"value": "contact"
},
{
"name": "Estimate",
"value": "estimate"
},
{
"name": "Expense",
"value": "expense"
},
{
"name": "Invoice",
"value": "invoice"
},
{
"name": "Project",
"value": "project"
},
{
"name": "Task",
"value": "task"
},
{
"name": "Time Entry",
"value": "timeEntry"
},
{
"name": "User",
"value": "user"
}
]
},
{
"name": "accountId",
"displayName": "Account Name or ID",
"type": "options",
"default": "",
"description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
"required": true
}
],
"credentialsConfig": [
{
"name": "harvestApi",
"required": true
},
{
"name": "authentication",
"required": false
},
{
"name": "resource",
"required": false
}
],
"io": {
"inputs": [],
"outputs": [],
"outputNames": [],
"hints": {}
},
"wiring": {
"role": "generic",
"requires": [],
"optional": [],
"consumedBy": [],
"consumes": [],
"produces": []
}
}