UNPKG

n8n-nodes-highlevelv2

Version:

n8n community node for HighLevel v2 API integration - comprehensive CRM, marketing automation, and business management platform

1,165 lines 35.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.conversationFields = exports.conversationOperations = void 0; const GenericFunctions_1 = require("../GenericFunctions"); exports.conversationOperations = [ { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['conversation'], }, }, options: [ { name: 'Get Conversation', value: 'getConversation', routing: { request: { method: 'GET', url: '=/conversations/{{$parameter.conversationId}}', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'conversation', }, }, ], }, }, action: 'Get conversation a conversation', }, { name: 'Create Conversation', value: 'createConversation', routing: { request: { method: 'POST', url: '/conversations', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction, GenericFunctions_1.splitTagsPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'conversation', }, }, ], }, }, action: 'Create conversation a conversation', }, { name: 'Update Conversation', value: 'updateConversation', routing: { request: { method: 'PUT', url: '=/conversations/{{$parameter.conversationId}}', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction, GenericFunctions_1.splitTagsPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'conversation', }, }, ], }, }, action: 'Update conversation a conversation', }, { name: 'Delete Conversation', value: 'deleteConversation', routing: { request: { method: 'DELETE', url: '=/conversations/{{$parameter.conversationId}}', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, }, action: 'Delete conversation a conversation', }, { name: 'Search Conversations', value: 'searchConversations', routing: { request: { method: 'GET', url: '/conversations/search', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'conversations', }, }, ], }, }, action: 'Search conversations a conversation', }, { name: 'Get Message', value: 'getMessage', routing: { request: { method: 'GET', url: '=/conversations/messages/{{$parameter.messageId}}', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'message', }, }, ], }, }, action: 'Get message a conversation', }, { name: 'Send Message', value: 'sendMessage', routing: { request: { method: 'POST', url: '/conversations/messages', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'message', }, }, ], }, }, action: 'Send message a conversation', }, { name: 'Get Messages by Conversation', value: 'getMessagesByConversation', routing: { request: { method: 'GET', url: '=/conversations/{{$parameter.conversationId}}/messages', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'messages', }, }, ], }, }, action: 'Get messages by conversation a conversation', }, { name: 'Add Inbound Message', value: 'addInboundMessage', routing: { request: { method: 'POST', url: '/conversations/messages/inbound', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'message', }, }, ], }, }, action: 'Add inbound message a conversation', }, { name: 'Add External Outbound Call', value: 'addExternalOutboundCall', routing: { request: { method: 'POST', url: '/conversations/messages/outbound-call', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'call', }, }, ], }, }, action: 'Add external outbound call a conversation', }, { name: 'Update Message Status', value: 'updateMessageStatus', routing: { request: { method: 'PUT', url: '=/conversations/messages/{{$parameter.messageId}}/status', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'message', }, }, ], }, }, action: 'Update message status a conversation', }, { name: 'Cancel Scheduled Message', value: 'cancelScheduledMessage', routing: { request: { method: 'DELETE', url: '=/conversations/messages/{{$parameter.messageId}}/schedule', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, }, action: 'Cancel scheduled message a conversation', }, { name: 'Get Email', value: 'getEmail', routing: { request: { method: 'GET', url: '=/conversations/emails/{{$parameter.emailId}}', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'email', }, }, ], }, }, action: 'Get email a conversation', }, { name: 'Cancel Scheduled Email', value: 'cancelScheduledEmail', routing: { request: { method: 'DELETE', url: '=/conversations/emails/{{$parameter.emailId}}/schedule', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, }, action: 'Cancel scheduled email a conversation', }, { name: 'Upload File Attachment', value: 'uploadFileAttachment', routing: { request: { method: 'POST', url: '/conversations/attachments/upload', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'attachment', }, }, ], }, }, action: 'Upload file attachment a conversation', }, { name: 'Get Recording', value: 'getRecording', routing: { request: { method: 'GET', url: '=/conversations/messages/{{$parameter.messageId}}/recording', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'recording', }, }, ], }, }, action: 'Get recording a conversation', }, { name: 'Get Transcription', value: 'getTranscription', routing: { request: { method: 'GET', url: '=/conversations/messages/{{$parameter.messageId}}/transcription', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'transcription', }, }, ], }, }, action: 'Get transcription a conversation', }, { name: 'Download Transcription', value: 'downloadTranscription', routing: { request: { method: 'GET', url: '=/conversations/messages/{{$parameter.messageId}}/transcription/download', }, send: { preSend: [GenericFunctions_1.addLocationIdPreSendAction], }, }, action: 'Download transcription a conversation', }, ], default: 'getConversation', }, ]; exports.conversationFields = [ { displayName: 'Conversation ID', name: 'conversationId', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['getConversation', 'updateConversation', 'deleteConversation', 'getMessagesByConversation'], }, }, default: '', description: 'ID of the conversation', }, { displayName: 'Message ID', name: 'messageId', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['getMessage', 'updateMessageStatus', 'cancelScheduledMessage', 'getRecording', 'getTranscription', 'downloadTranscription'], }, }, default: '', description: 'ID of the message', }, { displayName: 'Email ID', name: 'emailId', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['getEmail', 'cancelScheduledEmail'], }, }, default: '', description: 'ID of the email', }, { displayName: 'Contact ID', name: 'contactId', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['createConversation'], }, }, default: '', description: 'Contact ID to create conversation with', }, { displayName: 'Type', name: 'type', type: 'options', options: [ { name: 'SMS', value: 'SMS', }, { name: 'Email', value: 'Email', }, { name: 'WhatsApp', value: 'WhatsApp', }, { name: 'Phone', value: 'Phone', }, { name: 'Voicemail', value: 'Voicemail', }, { name: 'Chat', value: 'Chat', }, { name: 'Review', value: 'Review', }, { name: 'Facebook', value: 'Facebook', }, { name: 'Instagram', value: 'Instagram', }, ], displayOptions: { show: { resource: ['conversation'], operation: ['createConversation', 'sendMessage', 'addInboundMessage'], }, }, default: 'SMS', description: 'Type of conversation or message', }, { displayName: 'Status', name: 'status', type: 'options', options: [ { name: 'Open', value: 'open', }, { name: 'Closed', value: 'closed', }, { name: 'Archived', value: 'archived', }, ], displayOptions: { show: { resource: ['conversation'], operation: ['createConversation', 'updateConversation'], }, }, default: 'open', description: 'Status of the conversation', }, { displayName: 'Assigned To', name: 'assignedTo', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['createConversation', 'updateConversation'], }, }, default: '', description: 'User ID to assign the conversation to', }, { displayName: 'Tags', name: 'tags', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['createConversation', 'updateConversation'], }, }, default: '', description: 'Comma-separated list of tags for the conversation', }, { displayName: 'Search Query', name: 'searchQuery', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['searchConversations'], }, }, default: '', description: 'Search query to find conversations', }, { displayName: 'Contact ID Filter', name: 'contactId', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['searchConversations'], }, }, default: '', description: 'Filter by contact ID', }, { displayName: 'Type Filter', name: 'typeFilter', type: 'options', options: [ { name: 'All', value: 'all', }, { name: 'SMS', value: 'SMS', }, { name: 'Email', value: 'Email', }, { name: 'WhatsApp', value: 'WhatsApp', }, { name: 'Phone', value: 'Phone', }, { name: 'Voicemail', value: 'Voicemail', }, { name: 'Chat', value: 'Chat', }, { name: 'Review', value: 'Review', }, { name: 'Facebook', value: 'Facebook', }, { name: 'Instagram', value: 'Instagram', }, ], displayOptions: { show: { resource: ['conversation'], operation: ['searchConversations'], }, }, default: 'all', description: 'Filter conversations by type', }, { displayName: 'Status Filter', name: 'statusFilter', type: 'options', options: [ { name: 'All', value: 'all', }, { name: 'Open', value: 'open', }, { name: 'Closed', value: 'closed', }, { name: 'Archived', value: 'archived', }, ], displayOptions: { show: { resource: ['conversation'], operation: ['searchConversations'], }, }, default: 'all', description: 'Filter conversations by status', }, { displayName: 'Limit', name: 'limit', type: 'number', typeOptions: { minValue: 1, }, displayOptions: { show: { resource: ['conversation'], operation: ['searchConversations', 'getMessagesByConversation'], }, }, default: 50, description: 'Max number of results to return', }, { displayName: 'Offset', name: 'offset', type: 'number', displayOptions: { show: { resource: ['conversation'], operation: ['searchConversations', 'getMessagesByConversation'], }, }, default: 0, description: 'Number of results to skip', }, { displayName: 'Conversation ID', name: 'conversationId', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['sendMessage'], }, }, default: '', description: 'ID of the conversation to send message to', }, { displayName: 'Contact ID', name: 'contactId', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['sendMessage', 'addInboundMessage', 'addExternalOutboundCall'], }, }, default: '', description: 'Contact ID to send message to', }, { displayName: 'Message Body', name: 'body', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['sendMessage', 'addInboundMessage'], }, }, default: '', description: 'Content of the message', }, { displayName: 'Subject', name: 'subject', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['sendMessage', 'addInboundMessage'], type: ['Email'], }, }, default: '', description: 'Subject line for email messages', }, { displayName: 'From', name: 'from', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['sendMessage', 'addInboundMessage'], }, }, default: '', description: 'Sender information', }, { displayName: 'To', name: 'to', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['sendMessage', 'addInboundMessage', 'addExternalOutboundCall'], }, }, default: '', description: 'Recipient information', }, { displayName: 'Scheduled Date', name: 'scheduledDate', type: 'dateTime', displayOptions: { show: { resource: ['conversation'], operation: ['sendMessage'], }, }, default: '', description: 'Schedule the message for later sending', }, { displayName: 'New Status', name: 'newStatus', type: 'options', options: [ { name: 'Sent', value: 'sent', }, { name: 'Delivered', value: 'delivered', }, { name: 'Read', value: 'read', }, { name: 'Failed', value: 'failed', }, { name: 'Pending', value: 'pending', }, { name: 'Cancelled', value: 'cancelled', }, { name: 'Opened', value: 'opened', }, { name: 'Clicked', value: 'clicked', }, { name: 'Bounced', value: 'bounced', }, ], required: true, displayOptions: { show: { resource: ['conversation'], operation: ['updateMessageStatus'], }, }, default: 'delivered', description: 'New status for the message', }, { displayName: 'Status Reason', name: 'statusReason', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['updateMessageStatus'], }, }, default: '', description: 'Reason for the status change', }, { displayName: 'Error Message', name: 'errorMessage', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['updateMessageStatus'], newStatus: ['failed'], }, }, default: '', description: 'Error message if status is failed', }, { displayName: 'From Phone', name: 'fromPhone', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['addExternalOutboundCall'], }, }, default: '', description: 'Caller phone number', }, { displayName: 'To Phone', name: 'toPhone', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['addExternalOutboundCall'], }, }, default: '', description: 'Called phone number', }, { displayName: 'Call Status', name: 'callStatus', type: 'options', options: [ { name: 'Completed', value: 'completed', }, { name: 'Failed', value: 'failed', }, { name: 'Busy', value: 'busy', }, { name: 'No Answer', value: 'no-answer', }, { name: 'In Progress', value: 'in-progress', }, ], displayOptions: { show: { resource: ['conversation'], operation: ['addExternalOutboundCall'], }, }, default: 'completed', description: 'Status of the call', }, { displayName: 'Duration (Seconds)', name: 'duration', type: 'number', displayOptions: { show: { resource: ['conversation'], operation: ['addExternalOutboundCall'], }, }, default: 0, description: 'Call duration in seconds', }, { displayName: 'Recording URL', name: 'recordingUrl', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['addExternalOutboundCall'], }, }, default: '', description: 'URL to call recording (if available)', }, { displayName: 'Call Cost', name: 'cost', type: 'number', displayOptions: { show: { resource: ['conversation'], operation: ['addExternalOutboundCall'], }, }, default: 0, description: 'Call cost in system currency', }, { displayName: 'Call Notes', name: 'notes', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['addExternalOutboundCall'], }, }, default: '', description: 'Call notes or description', }, { displayName: 'Started At', name: 'startedAt', type: 'dateTime', displayOptions: { show: { resource: ['conversation'], operation: ['addExternalOutboundCall'], }, }, default: '', description: 'When the call started', }, { displayName: 'Ended At', name: 'endedAt', type: 'dateTime', displayOptions: { show: { resource: ['conversation'], operation: ['addExternalOutboundCall'], }, }, default: '', description: 'When the call ended', }, { displayName: 'File', name: 'file', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['uploadFileAttachment'], }, }, default: '', description: 'File to upload (base64 encoded or file path)', }, { displayName: 'Filename', name: 'filename', type: 'string', required: true, displayOptions: { show: { resource: ['conversation'], operation: ['uploadFileAttachment'], }, }, default: '', description: 'Original filename of the file', }, { displayName: 'MIME Type', name: 'mimeType', type: 'string', displayOptions: { show: { resource: ['conversation'], operation: ['uploadFileAttachment'], }, }, default: '', description: 'MIME type of the file', }, { displayName: 'Format', name: 'format', type: 'options', options: [ { name: 'Text', value: 'txt', }, { name: 'JSON', value: 'json', }, { name: 'SRT', value: 'srt', }, { name: 'VTT', value: 'vtt', }, { name: 'Word Document', value: 'docx', }, { name: 'PDF', value: 'pdf', }, ], displayOptions: { show: { resource: ['conversation'], operation: ['downloadTranscription'], }, }, default: 'txt', description: 'Format for transcription download', }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { resource: ['conversation'], operation: ['createConversation', 'updateConversation', 'sendMessage', 'addInboundMessage'], }, }, options: [ { displayName: 'Custom Fields', name: 'customFields', type: 'fixedCollection', description: 'Custom fields for the conversation or message', default: {}, typeOptions: { multipleValues: true, }, options: [ { name: 'values', displayName: 'Custom Field', values: [ { displayName: 'Field Name', name: 'name', type: 'string', default: '', description: 'Name of the custom field', }, { displayName: 'Field Value', name: 'value', type: 'string', default: '', description: 'Value of the custom field', }, ], }, ], }, { displayName: 'Metadata', name: 'metadata', type: 'json', default: '{}', description: 'Additional metadata as JSON object', }, ], }, ]; //# sourceMappingURL=ConversationDescription.js.map