import {
INodeProperties,
} from 'n8n-workflow';
export const companyOperations = [
{
displayName: 'Operation',
name: 'operation',
type: 'options',
displayOptions: {
show: {
resource: [
'company',
],
},
},
options: [
{
name: 'Create',
value: 'create',
description: 'Create a company',
},
{
name: 'Delete',
value: 'delete',
description: 'Delete a company',
},
{
name: 'Get',
value: 'get',
description: 'Get a company',
},
{
name: 'Get All',
value: 'getAll',
description: 'Get all company',
},
{
name: 'Get Recently Created',
value: 'getRecentlyCreated',
description: 'Get recently created companies',
},
{
name: 'Get Recently Modified',
value: 'getRecentlyModified',
description: 'Get recently modified companies',
},
{
name: 'Search By Domain',
value: 'searchByDomain',
description: 'Search companies by domain',
},
{
name: 'Update',
value: 'update',
description: 'Update a company',
},
],
default: 'create',
description: 'The operation to perform.',
},
] as INodeProperties[];
export const companyFields = [
/* -------------------------------------------------------------------------- */
/* company:create */
/* -------------------------------------------------------------------------- */
{
displayName: 'Name',
name: 'name',
type: 'string',
required: true,
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'create',
],
},
},
default: '',
},
{
displayName: 'Additional Fields',
name: 'additionalFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'create',
],
},
},
options: [
{
displayName: 'About Us',
name: 'aboutUs',
type: 'string',
typeOptions: {
alwaysOpenEditWindow: true,
},
default: '',
},
{
displayName: 'Annual Revenue',
name: 'annualRevenue',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'The actual or estimated annual revenue of the company',
},
{
displayName: 'City',
name: 'city',
type: 'string',
default: '',
description: 'The city where the company is located.',
},
{
displayName: 'Close Date',
name: 'closeDate',
type: 'dateTime',
default: '',
description: 'The date the company or organization was closed as a customer',
},
{
displayName: 'Company Domain Name',
name: 'companyDomainName',
type: 'string',
default: '',
description: 'The domain name of the company or organization'
},
{
displayName: 'Company Owmer',
name: 'companyOwner',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getOwners',
},
default: '',
description: 'The owner of the company',
},
{
displayName: 'Country/Region',
name: 'countryRegion',
type: 'string',
default: '',
description: 'The country/region in which the company or organization is located.'
},
{
displayName: 'Description',
name: 'description',
type: 'string',
default: '',
description: `A short statement about the company's mission and goals.`,
},
{
displayName: 'Facebook Fans',
name: 'facebookFans',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'Number of facebook fans',
},
{
displayName: 'Google Plus Page',
name: 'googlePlusPage',
type: 'string',
default: '',
description: 'The URL of the Google Plus page for the company or organization',
},
{
displayName: 'Industry',
name: 'industry',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyIndustries'
},
default: '',
description: 'The type of business the company performs.',
},
{
displayName: 'Is Public',
name: 'isPublic',
type: 'boolean',
default: false,
description: 'Indicates that the company is publicly traded.',
},
{
displayName: 'Lead Status',
name: 'leadStatus',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyleadStatuses',
},
default: '',
description: `The company's sales, prospecting or outreach status`,
},
{
displayName: 'Lifecycle Stage',
name: 'lifecycleStatus',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanylifecycleStages',
},
default: '',
description: 'The most advanced lifecycle stage across all contacts associated with this company or organization',
},
{
displayName: 'LinkedIn Bio',
name: 'linkedinBio',
type: 'string',
default: '',
description: 'The LinkedIn bio for the company or organization',
},
{
displayName: 'LinkedIn Company Page',
name: 'linkedInCompanyPage',
type: 'string',
default: '',
description: 'The URL of the LinkedIn company page for the company or organization',
},
{
displayName: 'Number Of Employees',
name: 'numberOfEmployees',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'The total number of employees who work for the company or organization',
},
{
displayName: 'Original Source Type',
name: 'originalSourceType',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanySourceTypes',
},
default: '',
description: 'Original source for the contact with the earliest activity for this company or organization',
},
{
displayName: 'Phone Number',
name: 'phoneNumber',
type: 'string',
default: '',
description: `A company's primary phone number. Powered by HubSpot Insights.`,
},
{
displayName: 'Postal Code',
name: 'postalCode',
type: 'string',
default: '',
description: 'The postal or zip code of the company or organization. Powered by HubSpot Insights.',
},
{
displayName: 'State/Region',
name: 'stateRegion',
type: 'string',
default: '',
description: 'The state or region in which the company or organization is located. Powered by HubSpot Insights.',
},
{
displayName: 'Street Address',
name: 'streetAddress',
type: 'string',
default: '',
description: 'The street address of the company or organization, including unit number. Powered by HubSpot Insights.',
},
{
displayName: 'Street Address 2',
name: 'streetAddress2',
type: 'string',
default: '',
description: 'The additional address of the company or organization. Powered by HubSpot Insights.',
},
{
displayName: 'Target Account',
name: 'targetAccount',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyTargetAccounts',
},
default: '',
description: 'The Target Account property is a means to flag high priority companies if you are following an account based strategy',
},
{
displayName: 'Timezone',
name: 'timezone',
type: 'string',
default: '',
description: 'The time zone where the company or organization is located. Powered by HubSpot Insights.',
},
{
displayName: 'Total Money Raised',
name: 'totalMoneyRaised',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'The total amount of money raised by the company. Powered by HubSpot Insights.',
},
{
displayName: 'Twitter Bio',
name: 'twitterBio',
type: 'string',
typeOptions: {
alwaysOpenEditWindow: true,
},
default: '',
description: 'The Twitter bio of the company or organization',
},
{
displayName: 'Twitter Followers',
name: 'twitterFollowers',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'The number of Twitter followers of the company or organization',
},
{
displayName: 'Twitter Handle',
name: 'twitterHandle',
type: 'string',
default: '',
description: 'The main twitter account of the company or organization',
},
{
displayName: 'Type',
name: 'type',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyTypes',
},
default: '',
description: 'The optional classification of this company record - prospect, partner, etc.',
},
{
displayName: 'Web Technologies',
name: 'webTechnologies',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyWebTechnologies'
},
default: '',
description: 'The web technologies used by the company or organization. Powered by HubSpot Insights.',
},
{
displayName: 'Website URL',
name: 'websiteUrl',
type: 'string',
default: '',
description: 'The main website of the company or organization. This property is used to identify unique companies. Powered by HubSpot Insights.',
},
{
displayName: 'Year Founded',
name: 'yearFounded',
type: 'string',
default: '',
description: 'The year the company was created. Powered by HubSpot Insights.',
},
]
},
/* -------------------------------------------------------------------------- */
/* company:update */
/* -------------------------------------------------------------------------- */
{
displayName: 'Company ID',
name: 'companyId',
type: 'string',
required: true,
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'update',
],
},
},
default: '',
description: 'Unique identifier for a particular company',
},
{
displayName: 'Update Fields',
name: 'updateFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'update',
],
},
},
options: [
{
displayName: 'About Us',
name: 'aboutUs',
type: 'string',
typeOptions: {
alwaysOpenEditWindow: true,
},
default: '',
},
{
displayName: 'Annual Revenue',
name: 'annualRevenue',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'The actual or estimated annual revenue of the company',
},
{
displayName: 'City',
name: 'city',
type: 'string',
default: '',
description: 'The city where the company is located.',
},
{
displayName: 'Close Date',
name: 'closeDate',
type: 'dateTime',
default: '',
description: 'The date the company or organization was closed as a customer',
},
{
displayName: 'Company Domain Name',
name: 'companyDomainName',
type: 'string',
default: '',
description: 'The domain name of the company or organization'
},
{
displayName: 'Company Owmer',
name: 'companyOwner',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getOwners',
},
default: '',
description: 'The owner of the company',
},
{
displayName: 'Country/Region',
name: 'countryRegion',
type: 'string',
default: '',
description: 'The country/region in which the company or organization is located.'
},
{
displayName: 'Description',
name: 'description',
type: 'string',
default: '',
description: `A short statement about the company's mission and goals.`,
},
{
displayName: 'Facebook Fans',
name: 'facebookFans',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'Number of facebook fans',
},
{
displayName: 'Google Plus Page',
name: 'googlePlusPage',
type: 'string',
default: '',
description: 'The URL of the Google Plus page for the company or organization',
},
{
displayName: 'Industry',
name: 'industry',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyIndustries'
},
default: '',
description: 'The type of business the company performs.',
},
{
displayName: 'Is Public',
name: 'isPublic',
type: 'boolean',
default: false,
description: 'Indicates that the company is publicly traded.',
},
{
displayName: 'Lead Status',
name: 'leadStatus',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyleadStatuses',
},
default: '',
description: `The company's sales, prospecting or outreach status`,
},
{
displayName: 'Lifecycle Stage',
name: 'lifecycleStatus',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanylifecycleStages',
},
default: '',
description: 'The most advanced lifecycle stage across all contacts associated with this company or organization',
},
{
displayName: 'Linkedin Bio',
name: 'linkedinBio',
type: 'string',
default: '',
description: 'The LinkedIn bio for the company or organization',
},
{
displayName: 'LinkedIn Company Page',
name: 'linkedInCompanyPage',
type: 'string',
default: '',
description: 'The URL of the LinkedIn company page for the company or organization',
},
{
displayName: 'Name',
name: 'name',
type: 'string',
default: '',
},
{
displayName: 'Number Of Employees',
name: 'numberOfEmployees',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'The total number of employees who work for the company or organization',
},
{
displayName: 'Original Source Type',
name: 'originalSourceType',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanySourceTypes',
},
default: '',
description: 'Original source for the contact with the earliest activity for this company or organization',
},
{
displayName: 'Phone Number',
name: 'phoneNumber',
type: 'string',
default: '',
description: `A company's primary phone number. Powered by HubSpot Insights.`,
},
{
displayName: 'Postal Code',
name: 'postalCode',
type: 'string',
default: '',
description: 'The postal or zip code of the company or organization. Powered by HubSpot Insights.',
},
{
displayName: 'State/Region',
name: 'stateRegion',
type: 'string',
default: '',
description: 'The state or region in which the company or organization is located. Powered by HubSpot Insights.',
},
{
displayName: 'Street Address',
name: 'streetAddress',
type: 'string',
default: '',
description: 'The street address of the company or organization, including unit number. Powered by HubSpot Insights.',
},
{
displayName: 'Street Address 2',
name: 'streetAddress2',
type: 'string',
default: '',
description: 'The additional address of the company or organization. Powered by HubSpot Insights.',
},
{
displayName: 'Target Account',
name: 'targetAccount',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyTargetAccounts',
},
default: '',
description: 'The Target Account property is a means to flag high priority companies if you are following an account based strategy',
},
{
displayName: 'Timezone',
name: 'timezone',
type: 'string',
default: '',
description: 'The time zone where the company or organization is located. Powered by HubSpot Insights.',
},
{
displayName: 'Total Money Raised',
name: 'totalMoneyRaised',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'The total amount of money raised by the company. Powered by HubSpot Insights.',
},
{
displayName: 'Twitter Bio',
name: 'twitterBio',
type: 'string',
typeOptions: {
alwaysOpenEditWindow: true,
},
default: '',
description: 'The Twitter bio of the company or organization',
},
{
displayName: 'Twitter Followers',
name: 'twitterFollowers',
type: 'number',
typeOptions: {
minValue: 0,
},
default: 0,
description: 'The number of Twitter followers of the company or organization',
},
{
displayName: 'Twitter Handle',
name: 'twitterHandle',
type: 'string',
default: '',
description: 'The main twitter account of the company or organization',
},
{
displayName: 'Type',
name: 'type',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyTypes',
},
default: '',
description: 'The optional classification of this company record - prospect, partner, etc.',
},
{
displayName: 'Web Technologies',
name: 'webTechnologies',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getCompanyWebTechnologies'
},
default: '',
description: 'The web technologies used by the company or organization. Powered by HubSpot Insights.',
},
{
displayName: 'Website URL',
name: 'websiteUrl',
type: 'string',
default: '',
description: 'The main website of the company or organization. This property is used to identify unique companies. Powered by HubSpot Insights.',
},
{
displayName: 'Year Founded',
name: 'yearFounded',
type: 'string',
default: '',
description: 'The year the company was created. Powered by HubSpot Insights.',
},
]
},
/* -------------------------------------------------------------------------- */
/* company:get */
/* -------------------------------------------------------------------------- */
{
displayName: 'Company ID',
name: 'companyId',
type: 'string',
required: true,
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'get',
],
},
},
default: '',
description: 'Unique identifier for a particular company',
},
{
displayName: 'Additional Fields',
name: 'additionalFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'get',
],
},
},
options: [
{
displayName: 'Include Merge Audits',
name: 'includeMergeAudits',
type: 'boolean',
default: false,
description: `Returns any merge history if the company has been previously merged with another company record. Defaults to false.`,
},
]
},
/* -------------------------------------------------------------------------- */
/* company:getAll */
/* -------------------------------------------------------------------------- */
{
displayName: 'Return All',
name: 'returnAll',
type: 'boolean',
displayOptions: {
show: {
resource: [
'company',
],
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: [
'company',
],
operation: [
'getAll',
],
returnAll: [
false,
],
},
},
typeOptions: {
minValue: 1,
maxValue: 250,
},
default: 100,
description: 'How many results to return.',
},
{
displayName: 'Options',
name: 'options',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'getAll',
],
},
},
options: [
{
displayName: 'Include Merge Audits',
name: 'includeMergeAudits',
type: 'boolean',
default: false,
description: `Returns any merge history if a company has been previously merged with another company record. Defaults to false.`,
},
{
displayName: 'Properties',
name: 'properties',
type: 'multiOptions',
typeOptions: {
loadOptionsMethod: 'getCompanyProperties',
},
default: '',
description: `Used to include specific company properties in the results.
By default, the results will only include company ID and will not include the values for any properties for your companys.
Including this parameter will include the data for the specified property in the results.
You can include this parameter multiple times to request multiple properties separed by ,.`,
},
{
displayName: 'Properties With History',
name: 'propertiesWithHistory',
type: 'string',
default: '',
description: `Works similarly to properties=, but this parameter will include the history for the specified property,
instead of just including the current value. Use this parameter when you need the full history of changes to a property's value.`,
},
]
},
/* -------------------------------------------------------------------------- */
/* company:delete */
/* -------------------------------------------------------------------------- */
{
displayName: 'Company ID',
name: 'companyId',
type: 'string',
required: true,
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'delete',
],
},
},
default: '',
description: 'Unique identifier for a particular company',
},
/* -------------------------------------------------------------------------- */
/* company:getRecentlyCreated company:getRecentlyModifie */
/* -------------------------------------------------------------------------- */
{
displayName: 'Return All',
name: 'returnAll',
type: 'boolean',
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'getRecentlyCreated',
'getRecentlyModified',
],
},
},
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: [
'company',
],
operation: [
'getRecentlyCreated',
'getRecentlyModified',
],
returnAll: [
false,
],
},
},
typeOptions: {
minValue: 1,
maxValue: 250,
},
default: 100,
description: 'How many results to return.',
},
{
displayName: 'Filters',
name: 'filters',
type: 'collection',
placeholder: 'Add Filter',
default: {},
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'getRecentlyModified',
],
},
},
options: [
{
displayName: 'Since',
name: 'since',
type: 'dateTime',
default: '',
description: `Only return companys created after timestamp x`,
},
{
displayName: 'Include Property Versions',
name: 'includePropertyVersions',
type: 'boolean',
default: false,
description: `By default, you will only get data for the most recent version of a property in the "versions" data.
If you include this parameter, you will get data for all previous versions.`,
},
]
},
/* -------------------------------------------------------------------------- */
/* company:searchByDomain */
/* -------------------------------------------------------------------------- */
{
displayName: 'Domain',
name: 'domain',
type: 'string',
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'searchByDomain',
],
},
},
required: true,
default: '',
},
{
displayName: 'Return All',
name: 'returnAll',
type: 'boolean',
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'searchByDomain',
],
},
},
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: [
'company',
],
operation: [
'searchByDomain',
],
returnAll: [
false,
],
},
},
typeOptions: {
minValue: 1,
maxValue: 250,
},
default: 100,
description: 'How many results to return.',
},
{
displayName: 'Options',
name: 'options',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'company',
],
operation: [
'searchByDomain',
],
},
},
options: [
{
displayName: 'Properties',
name: 'properties',
type: 'multiOptions',
typeOptions: {
loadOptionsMethod: 'getCompanyProperties',
},
default: '',
description: `Used to include specific company properties in the results.
By default, the results will only include company ID and will not include the values for any properties for your companys.
Including this parameter will include the data for the specified property in the results.
You can include this parameter multiple times to request multiple properties separed by ,.`,
},
]
},
] as INodeProperties[];