2020-02-10 12:55:28 -08:00
import { INodeProperties } from 'n8n-workflow' ;
export const leadOperations = [
{
displayName : 'Operation' ,
name : 'operation' ,
type : 'options' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
} ,
} ,
options : [
2020-02-12 22:35:56 -08:00
{
name : 'Add Lead To Campaign' ,
value : 'addToCampaign' ,
description : 'Add lead to a campaign' ,
} ,
{
name : 'Add Note' ,
value : 'addNote' ,
description : 'Add note to a lead' ,
} ,
2020-02-10 12:55:28 -08:00
{
name : 'Create' ,
value : 'create' ,
description : 'Create a lead' ,
} ,
{
2020-02-12 22:35:56 -08:00
name : 'Delete' ,
value : 'delete' ,
description : 'Delete a lead' ,
2020-02-10 12:55:28 -08:00
} ,
{
name : 'Get' ,
value : 'get' ,
description : 'Get a lead' ,
} ,
{
name : 'Get All' ,
value : 'getAll' ,
description : 'Get all leads' ,
} ,
{
2020-02-12 22:35:56 -08:00
name : 'Get Summary' ,
value : 'getSummary' ,
description : ` Returns an overview of Lead's metadata. ` ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
name : 'Update' ,
value : 'update' ,
description : 'Update a lead' ,
2020-02-10 12:55:28 -08:00
} ,
] ,
default : 'create' ,
description : 'The operation to perform.' ,
} ,
] as INodeProperties [ ] ;
export const leadFields = [
/* -------------------------------------------------------------------------- */
/* lead:create */
/* -------------------------------------------------------------------------- */
{
displayName : 'Company' ,
name : 'company' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'create' ,
]
} ,
} ,
description : 'Company of the lead. If person account record types have been enabled, and if the value of Company is null, the lead converts to a person account.' ,
} ,
{
displayName : 'Last Name' ,
name : 'lastname' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'create' ,
]
} ,
} ,
description : 'Required. Last name of the lead. Limited to 80 characters.' ,
} ,
{
displayName : 'Additional Fields' ,
name : 'additionalFields' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'create' ,
] ,
} ,
} ,
options : [
2020-02-12 22:35:56 -08:00
{
displayName : 'Annual Revenue' ,
name : 'annualRevenue' ,
type : 'number' ,
typeOptions : {
numberPrecision : 2 ,
numberStepSize : 1 ,
} ,
default : '' ,
description : 'Annual revenue for the company of the lead.' ,
} ,
2020-02-10 12:55:28 -08:00
{
displayName : 'City' ,
name : 'city' ,
type : 'string' ,
default : '' ,
description : 'City for the address of the lead.' ,
} ,
2020-02-12 22:35:56 -08:00
{
displayName : 'Description' ,
name : 'description' ,
type : 'string' ,
typeOptions : {
alwaysOpenEditWindow : true ,
} ,
default : '' ,
description : 'Description of the lead.' ,
} ,
2020-02-10 12:55:28 -08:00
{
displayName : 'Email' ,
name : 'email' ,
type : 'string' ,
default : '' ,
description : 'Email address for the lead.' ,
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Fist Name' ,
name : 'firstname' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'First name of the lead. Limited to 40 characters.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Industry' ,
name : 'industry' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Website for the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Is Unread By Owner' ,
name : 'IsUnreadByOwner' ,
type : 'Boolean' ,
default : false ,
description : 'If true, lead has been assigned, but not yet viewed. See Unread Leads for more information. Label is Unread By Owner.' ,
2020-02-10 12:55:28 -08:00
} ,
{
displayName : 'Jigsaw' ,
name : 'jigsaw' ,
type : 'string' ,
default : '' ,
description : ` references the ID of a contact in Data.com.
If a lead has a value in this field , it means that a contact was imported as a lead from Data . com . ` ,
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Lead Source' ,
name : 'leadSource' ,
2020-02-10 12:55:28 -08:00
type : 'options' ,
typeOptions : {
2020-02-12 22:35:56 -08:00
loadOptionsMethod : 'getLeadSources' ,
2020-02-10 12:55:28 -08:00
} ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Source from which the lead was obtained.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Number Of Employees' ,
name : 'numberOfEmployees' ,
type : 'number' ,
typeOptions : {
numberStepSize : 1 ,
} ,
2020-02-10 12:55:28 -08:00
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Number of employees at the lead’ s company. Label is Employees.' ,
2020-02-10 12:55:28 -08:00
} ,
{
displayName : 'Owner' ,
name : 'owner' ,
type : 'options' ,
typeOptions : {
loadOptionsMethod : 'getUsers' ,
} ,
default : '' ,
description : 'The owner of the lead.' ,
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Phone' ,
name : 'phone' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Phone number for the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Postal Code' ,
name : 'postalCode' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Postal code for the address of the lead. Label is Zip/Postal Code.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Rating' ,
name : 'rating' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Rating of the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
displayName : 'Salutation' ,
name : 'salutation' ,
type : 'string' ,
default : '' ,
description : 'Salutation for the lead.' ,
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'State' ,
name : 'state' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'State for the address of the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Status' ,
name : 'status' ,
type : 'options' ,
2020-02-10 12:55:28 -08:00
typeOptions : {
2020-02-12 22:35:56 -08:00
loadOptionsMethod : 'getLeadStatuses' ,
2020-02-10 12:55:28 -08:00
} ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Status code for this converted lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Street' ,
name : 'street' ,
type : 'string' ,
2020-02-10 12:55:28 -08:00
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Street number and name for the address of the lead' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Title' ,
name : 'title' ,
type : 'string' ,
default : '' ,
description : 'Title for the lead, for example CFO or CEO.' ,
} ,
{
displayName : 'Website' ,
name : 'website' ,
type : 'string' ,
default : '' ,
description : 'Website for the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
]
} ,
/* -------------------------------------------------------------------------- */
/* lead:update */
/* -------------------------------------------------------------------------- */
{
displayName : 'Lead ID' ,
name : 'leadId' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'update' ,
]
} ,
} ,
description : 'Id of Lead that needs to be fetched' ,
} ,
{
displayName : 'Update Fields' ,
name : 'updateFields' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'update' ,
] ,
} ,
} ,
options : [
{
2020-02-12 22:35:56 -08:00
displayName : 'Annual Revenue' ,
name : 'annualRevenue' ,
type : 'number' ,
typeOptions : {
numberPrecision : 2 ,
numberStepSize : 1 ,
} ,
default : '' ,
description : 'Annual revenue for the company of the lead.' ,
} ,
{
displayName : 'City' ,
name : 'city' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'City for the address of the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Company' ,
name : 'company' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Company of the lead. If person account record types have been enabled, and if the value of Company is null, the lead converts to a person account.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Description' ,
name : 'description' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
2020-02-12 22:35:56 -08:00
typeOptions : {
alwaysOpenEditWindow : true ,
} ,
2020-02-10 12:55:28 -08:00
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Description of the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
displayName : 'Email' ,
name : 'email' ,
type : 'string' ,
default : '' ,
description : 'Email address for the lead.' ,
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Fist Name' ,
name : 'firstname' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'First name of the lead. Limited to 40 characters.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Industry' ,
name : 'industry' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Website for the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Is Unread By Owner' ,
name : 'IsUnreadByOwner' ,
type : 'Boolean' ,
default : false ,
description : 'If true, lead has been assigned, but not yet viewed. See Unread Leads for more information. Label is Unread By Owner.' ,
2020-02-10 12:55:28 -08:00
} ,
{
displayName : 'Jigsaw' ,
name : 'jigsaw' ,
type : 'string' ,
default : '' ,
description : ` references the ID of a contact in Data.com.
If a lead has a value in this field , it means that a contact was imported as a lead from Data . com . ` ,
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Last Name' ,
name : 'lastname' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Required. Last name of the lead. Limited to 80 characters.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Lead Source' ,
name : 'leadSource' ,
2020-02-10 12:55:28 -08:00
type : 'options' ,
typeOptions : {
2020-02-12 22:35:56 -08:00
loadOptionsMethod : 'getLeadSources' ,
2020-02-10 12:55:28 -08:00
} ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Source from which the lead was obtained.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Number Of Employees' ,
name : 'numberOfEmployees' ,
type : 'number' ,
typeOptions : {
numberStepSize : 1 ,
} ,
2020-02-10 12:55:28 -08:00
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Number of employees at the lead’ s company. Label is Employees.' ,
2020-02-10 12:55:28 -08:00
} ,
{
displayName : 'Owner' ,
name : 'owner' ,
type : 'options' ,
typeOptions : {
loadOptionsMethod : 'getUsers' ,
} ,
default : '' ,
description : 'The owner of the lead.' ,
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Postal Code' ,
name : 'postalCode' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Postal code for the address of the lead. Label is Zip/Postal Code.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Phone' ,
name : 'phone' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Phone number for the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Rating' ,
name : 'rating' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Rating of the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
displayName : 'Salutation' ,
name : 'salutation' ,
type : 'string' ,
default : '' ,
description : 'Salutation for the lead.' ,
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'State' ,
name : 'state' ,
2020-02-10 12:55:28 -08:00
type : 'string' ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'State for the address of the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Status' ,
name : 'status' ,
type : 'options' ,
2020-02-10 12:55:28 -08:00
typeOptions : {
2020-02-12 22:35:56 -08:00
loadOptionsMethod : 'getLeadStatuses' ,
2020-02-10 12:55:28 -08:00
} ,
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Status code for this converted lead.' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Street' ,
name : 'street' ,
type : 'string' ,
2020-02-10 12:55:28 -08:00
default : '' ,
2020-02-12 22:35:56 -08:00
description : 'Street number and name for the address of the lead' ,
2020-02-10 12:55:28 -08:00
} ,
{
2020-02-12 22:35:56 -08:00
displayName : 'Title' ,
name : 'title' ,
type : 'string' ,
default : '' ,
description : 'Title for the lead, for example CFO or CEO.' ,
} ,
{
displayName : 'Website' ,
name : 'website' ,
type : 'string' ,
default : '' ,
description : 'Website for the lead.' ,
2020-02-10 12:55:28 -08:00
} ,
]
} ,
/* -------------------------------------------------------------------------- */
/* lead:get */
/* -------------------------------------------------------------------------- */
{
displayName : 'Lead ID' ,
name : 'leadId' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'get' ,
]
} ,
} ,
description : 'Id of Lead that needs to be fetched' ,
} ,
/* -------------------------------------------------------------------------- */
/* lead:delete */
/* -------------------------------------------------------------------------- */
{
displayName : 'Lead ID' ,
name : 'leadId' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'delete' ,
]
} ,
} ,
description : 'Id of Lead that needs to be fetched' ,
} ,
/* -------------------------------------------------------------------------- */
/* lead:getAll */
/* -------------------------------------------------------------------------- */
{
displayName : 'Return All' ,
name : 'returnAll' ,
type : 'boolean' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'getAll' ,
] ,
} ,
} ,
default : false ,
description : 'If all results should be returned or only up to a given limit.' ,
} ,
{
displayName : 'Limit' ,
name : 'limit' ,
type : 'number' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'getAll' ,
] ,
returnAll : [
false ,
] ,
} ,
} ,
typeOptions : {
minValue : 1 ,
maxValue : 100 ,
} ,
default : 50 ,
description : 'How many results to return.' ,
} ,
{
displayName : 'Options' ,
name : 'options' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'getAll' ,
] ,
} ,
} ,
options : [
{
displayName : 'Fields' ,
name : 'fields' ,
type : 'string' ,
default : '' ,
description : 'Fields to include separated by ,' ,
} ,
]
} ,
/* -------------------------------------------------------------------------- */
/* contact:addToCampaign */
/* -------------------------------------------------------------------------- */
{
displayName : 'Lead ID' ,
name : 'leadId' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'addToCampaign' ,
]
} ,
} ,
description : 'Id of contact that needs to be fetched' ,
} ,
{
displayName : 'Campaign' ,
name : 'campaignId' ,
type : 'options' ,
typeOptions : {
loadOptionsMethod : 'getCampaigns' ,
} ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'addToCampaign' ,
]
} ,
} ,
description : 'Id of the campaign that needs to be fetched' ,
} ,
{
displayName : 'Options' ,
name : 'options' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'addToCampaign' ,
] ,
} ,
} ,
options : [
{
displayName : 'Status' ,
name : 'status' ,
type : 'string' ,
default : '' ,
description : 'Controls the HasResponded flag on this object' ,
} ,
]
} ,
/* -------------------------------------------------------------------------- */
/* lead:addNote */
/* -------------------------------------------------------------------------- */
{
displayName : 'Lead ID' ,
name : 'leadId' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'addNote' ,
]
} ,
} ,
description : 'Id of lead that needs to be fetched' ,
} ,
{
displayName : 'Title' ,
name : 'title' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'addNote' ,
]
} ,
} ,
description : 'Title of the note.' ,
} ,
{
displayName : 'Options' ,
name : 'options' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [
'lead' ,
] ,
operation : [
'addNote' ,
] ,
} ,
} ,
options : [
{
displayName : 'Body' ,
name : 'body' ,
type : 'string' ,
default : '' ,
typeOptions : {
alwaysOpenEditWindow : true ,
} ,
description : 'Body of the note. Limited to 32 KB.' ,
} ,
2020-02-12 22:35:56 -08:00
{
displayName : 'Is Private' ,
name : 'isPrivate' ,
type : 'boolean' ,
default : false ,
description : 'If true, only the note owner or a user with the “Modify All Data” permission can view the note or query it via the API' ,
} ,
2020-02-10 12:55:28 -08:00
{
displayName : 'Owner' ,
name : 'owner' ,
type : 'options' ,
typeOptions : {
loadOptionsMethod : 'getUsers' ,
} ,
default : '' ,
description : 'ID of the user who owns the note.' ,
} ,
]
} ,
] as INodeProperties [ ] ;