/** * HubSpot Node - Version 1 * Discriminator: resource=contact, operation=upsert */ interface Credentials { hubspotApi: CredentialReference; hubspotAppToken: CredentialReference; hubspotOAuth2Api: CredentialReference; } /** Create a new contact, or update the current one if it already exists (upsert) */ export type HubspotV1ContactUpsertParams = { resource: 'contact'; operation: 'upsert'; authentication?: 'apiKey' | 'appToken' | 'oAuth2' | Expression; /** * Email */ email?: string | Expression | PlaceholderValue; /** * By default the response only includes the ID. If this option gets activated, it will resolve the data automatically. * @default true */ resolveData?: boolean | Expression; /** * Additional Fields * @default {} */ additionalFields?: { /** Annual Revenue * @default 0 */ annualRevenue?: number | Expression; /** Companies associated with the ticket. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ associatedCompanyId?: string | Expression; /** City */ city?: string | Expression | PlaceholderValue; /** Clicked Facebook Ad */ clickedFacebookAd?: string | Expression | PlaceholderValue; /** Close Date */ closeDate?: string | Expression; /** Company Name */ companyName?: string | Expression | PlaceholderValue; /** Company Size */ companySize?: string | Expression | PlaceholderValue; /** Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a> */ contactOwner?: string | Expression; /** Country/Region */ country?: string | Expression | PlaceholderValue; /** Custom Properties * @default {} */ customPropertiesUi?: { /** Custom Property */ customPropertiesValues?: Array<{ /** Name of the property. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ property?: string | Expression; /** Value of the property */ value?: string | Expression | PlaceholderValue; }>; }; /** Date of Birth */ dateOfBirth?: string | Expression; /** Degree */ degree?: string | Expression | PlaceholderValue; /** Facebook Click ID */ facebookClickId?: string | Expression | PlaceholderValue; /** Fax Number */ faxNumber?: string | Expression | PlaceholderValue; /** A contact's field of study. This property is required for the Facebook Ads Integration. This property will be automatically synced via the Lead Ads tool */ fieldOfStudy?: string | Expression | PlaceholderValue; /** A contact's first name */ firstName?: string | Expression | PlaceholderValue; /** Gender */ gender?: string | Expression | PlaceholderValue; /** Google Ad Click ID */ googleAdClickId?: string | Expression | PlaceholderValue; /** A contact's graduation date. This property is required for the Facebook Ads Integration. This property will be automatically synced via the Lead Ads tool */ graduationDate?: string | Expression; /** The industry a contact is in */ industry?: string | Expression | PlaceholderValue; /** A contact's job function. This property is required for the Facebook Ads Integration. This property will be automatically synced via the Lead Ads tool */ jobFunction?: string | Expression | PlaceholderValue; /** A contact's job title */ jobTitle?: string | Expression | PlaceholderValue; /** A contact's last name */ lastName?: string | Expression | PlaceholderValue; /** The contact's sales, prospecting or outreach status. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ leadStatus?: string | Expression; /** Legal basis for processing contact's data; 'Not applicable' will exempt the contact from GDPR protections. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ processingContactData?: string | Expression; /** The qualification of contacts to sales readiness. It can be set through imports, forms, workflows, and manually on a per contact basis. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ lifeCycleStage?: string | Expression; /** A contact's marital status. This property is required for the Facebook Ads Integration. This property will be automatically synced via the Lead Ads tool */ maritalStatus?: string | Expression | PlaceholderValue; /** The notes relating to the contact's content membership */ membershipNote?: string | Expression | PlaceholderValue; /** A default property to be used for any message or comments a contact may want to leave on a form */ message?: string | Expression | PlaceholderValue; /** A contact's mobile phone number */ mobilePhoneNumber?: string | Expression | PlaceholderValue; /** The number of company employees. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ numberOfEmployees?: string | Expression; /** The first known source through which a contact found your website. Source is automatically set by HubSpot, but may be updated manually. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ originalSource?: string | Expression; /** A contact's primary phone number */ phoneNumber?: string | Expression | PlaceholderValue; /** <p>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 company.</p><p>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 separated by a comma: <code>,</code>.</p>. Choose from the list, or specify IDs using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. * @displayOptions.show { /resolveData: [true] } * @default [] */ properties?: string[]; /** The contact's zip code. This might be set via import, form, or integration. */ postalCode?: string | Expression | PlaceholderValue; /** Set your contact's preferred language for communications. This property can be changed from an import, form, or integration. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ prefferedLanguage?: string | Expression; /** A contact's relationship status. This property is required for the Facebook Ads Integration. This property will be automatically synced via the Lead Ads tool */ relationshipStatus?: string | Expression | PlaceholderValue; /** The title used to address a contact */ salutation?: string | Expression | PlaceholderValue; /** A contact's school. This property is required for the Facebook Ads Integration. This property will be automatically synced via the Lead Ads tool */ school?: string | Expression | PlaceholderValue; /** A contact's seniority. This property is required for the Facebook Ads Integration. This property will be automatically synced via the Lead Ads tool */ seniority?: string | Expression | PlaceholderValue; /** A contact's start date. This property is required for the Facebook Ads Integration. This property will be automatically synced via the Lead Ads tool */ startDate?: string | Expression; /** The contact's state of residence. This might be set via import, form, or integration. */ stateRegion?: string | Expression | PlaceholderValue; /** The status of the contact's content membership. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ status?: string | Expression; /** A contact's street address, including apartment or unit # */ streetAddress?: string | Expression | PlaceholderValue; /** The contact's Twitter handle. This is set by HubSpot using the contact's email address. */ twitterUsername?: string | Expression | PlaceholderValue; /** The contact's company website */ websiteUrl?: string | Expression | PlaceholderValue; /** A contact's work email. This property is required for the Facebook Ads Integration. This property will be automatically synced via the Lead Ads tool */ workEmail?: string | Expression | PlaceholderValue; }; }; export type HubspotV1ContactUpsertNode = { type: 'n8n-nodes-base.hubspot'; version: 1; credentials?: Credentials; config: NodeConfig; };