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 companies', }, { 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 Owner', 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.<br/> By default, the results will only include company ID and will not include the values for any properties for your companys.<br/> Including this parameter will include the data for the specified property in the results.<br/> 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,<br/> 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.<br/> 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.<br/> By default, the results will only include company ID and will not include the values for any properties for your companys.<br/> Including this parameter will include the data for the specified property in the results.<br/> You can include this parameter multiple times to request multiple properties separed by ,.`, }, ] }, ] as INodeProperties[];