UNPKG

n8n-nodes-instantly-dev

Version:

n8n community node for Instantly API v2 - DEV TESTING VERSION

43 lines 2.05 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AnalyticsOperations = void 0; const generic_functions_1 = require("../../generic.functions"); const resourceLocatorHelpers_1 = require("../functions/resourceLocatorHelpers"); const dateHelpers_1 = require("../functions/dateHelpers"); /** * Analytics operations handler */ class AnalyticsOperations { /** * Get campaign analytics with date filtering */ static async getCampaignAnalytics(context, itemIndex) { const returnAll = context.getNodeParameter('returnAll', itemIndex, false); // Get date parameters and format them for the API const startDateInput = context.getNodeParameter('startDate', itemIndex, ''); const endDateInput = context.getNodeParameter('endDate', itemIndex, ''); // Build query parameters object const queryParams = {}; // Add date parameters if provided, using the robust date formatter const formattedStartDate = (0, dateHelpers_1.formatDateForApi)(startDateInput); const formattedEndDate = (0, dateHelpers_1.formatDateForApi)(endDateInput); if (formattedStartDate) { queryParams.start_date = formattedStartDate; } if (formattedEndDate) { queryParams.end_date = formattedEndDate; } if (returnAll) { // Get analytics for all campaigns with date filtering return await generic_functions_1.instantlyApiRequest.call(context, 'GET', '/api/v2/campaigns/analytics', {}, queryParams); } else { // Get analytics for specific campaign with date filtering const campaignId = (0, resourceLocatorHelpers_1.getCampaignId)(context, itemIndex); queryParams.id = campaignId; return await generic_functions_1.instantlyApiRequest.call(context, 'GET', '/api/v2/campaigns/analytics', {}, queryParams); } } } exports.AnalyticsOperations = AnalyticsOperations; //# sourceMappingURL=AnalyticsOperations.js.map