UNPKG

n8n-nodes-apolloio

Version:

n8n node for Apollo.io - Search, Enrich, and Prospect People & Organizations via API

62 lines 2.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.searchSequences = searchSequences; exports.addContactsToSequence = addContactsToSequence; const n8n_workflow_1 = require("n8n-workflow"); const transport_1 = require("../transport"); async function searchSequences() { const sequenceName = this.getNodeParameter('sequenceName', 0); const page = this.getNodeParameter('page', 0); const perPage = this.getNodeParameter('perPage', 0); const body = {}; if (sequenceName) { body.q_campaign_name = sequenceName; } const response = await transport_1.apiRequest.call(this, 'POST', '/emailer_campaigns/search', body, { page, per_page: perPage, }); return this.helpers.returnJsonArray(response.emailer_campaigns); } async function addContactsToSequence() { const items = this.getInputData(); const returnData = []; for (let i = 0; i < items.length; i++) { try { const sequenceId = this.getNodeParameter('sequenceId', i); const contactIdsStr = this.getNodeParameter('contactIds', i); let contactIds; try { const parsed = JSON.parse(contactIdsStr); if (Array.isArray(parsed)) { contactIds = parsed.map((id) => String(id).trim()); } else { throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Not an array', { itemIndex: i }); } } catch { contactIds = contactIdsStr .split(',') .map((id) => id.trim()) .filter((id) => id); } if (!contactIds.length) { throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'No valid contact IDs provided', { itemIndex: i, }); } const response = await transport_1.apiRequest.call(this, 'POST', `/emailer_campaigns/${sequenceId}/add_contact_ids`, { contact_ids: contactIds }); returnData.push({ json: response }); } catch (error) { if (this.continueOnFail()) { returnData.push({ json: { error: error.message } }); continue; } throw error; } } return returnData; } //# sourceMappingURL=Sequence.js.map