/** * Xero Node - Version 1 * Discriminator: resource=contact, operation=create */ interface Credentials { xeroOAuth2Api: CredentialReference; } /** Create a contact */ export type XeroV1ContactCreateParams = { resource: 'contact'; operation: 'create'; /** * Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a> */ organizationId?: string | Expression; /** * Full name of contact/organisation */ name?: string | Expression | PlaceholderValue; /** * Additional Fields * @default {} */ additionalFields?: { /** A user defined account number */ accountNumber?: string | Expression | PlaceholderValue; /** Addresses * @default {} */ addressesUi?: { /** Address */ addressesValues?: Array<{ /** Type */ type?: 'POBOX' | 'STREET' | Expression; /** Line 1 */ line1?: string | Expression | PlaceholderValue; /** Line 2 */ line2?: string | Expression | PlaceholderValue; /** City */ city?: string | Expression | PlaceholderValue; /** Region */ region?: string | Expression | PlaceholderValue; /** Postal Code */ postalCode?: string | Expression | PlaceholderValue; /** Country */ country?: string | Expression | PlaceholderValue; /** Attention To */ attentionTo?: string | Expression | PlaceholderValue; }>; }; /** Bank account number of contact */ bankAccountDetails?: string | Expression | PlaceholderValue; /** This field is read only on the Xero contact screen, used to identify contacts in external systems */ contactNumber?: string | Expression | PlaceholderValue; /** Current status of a contact - see contact status types */ contactStatus?: 'ACTIVE' | 'ARCHIVED' | 'GDPRREQUEST' | Expression; /** Default currency for raising invoices against contact */ defaultCurrency?: string | Expression | PlaceholderValue; /** Email address of contact person (umlauts not supported) (max length = 255) */ emailAddress?: string | Expression | PlaceholderValue; /** First name of contact person (max length = 255) */ firstName?: string | Expression | PlaceholderValue; /** Last name of contact person (max length = 255) */ lastName?: string | Expression | PlaceholderValue; /** Phones * @default {} */ phonesUi?: { /** Phones */ phonesValues?: Array<{ /** Type */ phoneType?: 'DEFAULT' | 'DDI' | 'MOBILE' | 'FAX' | Expression; /** Number */ phoneNumber?: string | Expression | PlaceholderValue; /** Area Code */ phoneAreaCode?: string | Expression | PlaceholderValue; /** Country Code */ phoneCountryCode?: string | Expression | PlaceholderValue; }>; }; /** The default purchases account code for contacts. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ purchasesDefaultAccountCode?: string | Expression; /** The default sales account code for contacts. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>. */ salesDefaultAccountCode?: string | Expression; /** Skype user name of contact */ skypeUserName?: string | Expression | PlaceholderValue; /** Tax number of contact */ taxNumber?: string | Expression | PlaceholderValue; /** Store XeroNetworkKey for contacts */ xeroNetworkKey?: string | Expression | PlaceholderValue; }; }; export type XeroV1ContactCreateOutput = { Addresses?: Array<{ AddressType?: string; City?: string; Country?: string; PostalCode?: string; Region?: string; }>; BankAccountDetails?: string; ContactID?: string; ContactStatus?: string; EmailAddress?: string; HasValidationErrors?: boolean; IsCustomer?: boolean; IsSupplier?: boolean; Name?: string; Phones?: Array<{ PhoneAreaCode?: string; PhoneCountryCode?: string; PhoneNumber?: string; PhoneType?: string; }>; UpdatedDateUTC?: string; }; export type XeroV1ContactCreateNode = { type: 'n8n-nodes-base.xero'; version: 1; credentials?: Credentials; config: NodeConfig; output?: Items; };