UNPKG

n8n-nodes-dataforseo

Version:

DataForSEO is an SEO and marketing data provider, empowering businesses with invaluable insights via APIs and databases.

163 lines 8.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getDomainRankOverview = getDomainRankOverview; exports.getKeywordSuggestions = getKeywordSuggestions; exports.getRankedKeywords = getRankedKeywords; exports.getKeywordDifficulty = getKeywordDifficulty; exports.getOrganicTrafficStats = getOrganicTrafficStats; exports.getHistorycalTrafficStats = getHistorycalTrafficStats; exports.getKeywordIdeas = getKeywordIdeas; const n8n_workflow_1 = require("n8n-workflow"); const generalFunctions_1 = require("../../../functions/generalFunctions"); const dataForSeoRequest_1 = require("../../../functions/dataForSeoRequest"); async function getDomainRankOverview(ef, i) { const params = { url: '/dataforseo_labs/google/domain_rank_overview/live', body: [{ target: ef.getNodeParameter('target', i), location_name: ef.getNodeParameter('location_name', i) || null, language_name: ef.getNodeParameter('language_name', i) || null, ignore_synonyms: ef.getNodeParameter('ignore_synonyms', i), limit: ef.getNodeParameter('limit', i) || null, offset: ef.getNodeParameter('offset', i) || null, }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } async function getKeywordSuggestions(ef, i) { const orderBy = ef.getNodeParameter('order_by', i); if (orderBy.length > 3) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "You can set no more than three sorting rules"); } const filters = ef.getNodeParameter('filters', i); let parsedFilters = []; try { parsedFilters = (0, generalFunctions_1.parseFilters)(filters); } catch (e) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "Invalid Filters value"); } const params = { url: '/dataforseo_labs/google/keyword_suggestions/live', body: [{ location_name: ef.getNodeParameter('location_name_required', i), language_name: ef.getNodeParameter('language_name_required', i), keyword: ef.getNodeParameter('keyword', i), limit: ef.getNodeParameter('limit', i) || null, offset: ef.getNodeParameter('offset', i) || null, order_by: orderBy.length ? orderBy : null, ignore_synonyms: ef.getNodeParameter('ignore_synonyms', i), filters: parsedFilters.length ? parsedFilters : null, include_serp_info: ef.getNodeParameter('include_serp_info', i), }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } async function getRankedKeywords(ef, i) { const filters = ef.getNodeParameter('filters', i); let parsedFilters = []; try { parsedFilters = (0, generalFunctions_1.parseFilters)(filters); } catch (e) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "Invalid Filters value"); } const itemTypes = ef.getNodeParameter('item_types', i); const orderBy = ef.getNodeParameter('order_by_ranked', i); if (orderBy.length > 3) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "You can set no more than three sorting rules"); } const params = { url: '/dataforseo_labs/google/ranked_keywords/live', body: [{ location_name: ef.getNodeParameter('location_name', i) || null, language_name: ef.getNodeParameter('language_name', i) || null, target: ef.getNodeParameter('target', i), limit: ef.getNodeParameter('limit', i) || null, offset: ef.getNodeParameter('offset', i) || null, item_types: itemTypes.length ? itemTypes : null, order_by: orderBy.length ? orderBy : null, ignore_synonyms: ef.getNodeParameter('ignore_synonyms', i), filters: parsedFilters.length ? parsedFilters : null, }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } async function getKeywordDifficulty(ef, i) { const keywords = ef.getNodeParameter('keywords', i); const parsedKeywords = (0, generalFunctions_1.parseMultiOptionItems)(keywords); const params = { url: '/dataforseo_labs/google/bulk_keyword_difficulty/live', body: [{ keywords: parsedKeywords.length ? parsedKeywords : null, location_name: ef.getNodeParameter('location_name_required', i), language_name: ef.getNodeParameter('language_name_required', i), }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } async function getOrganicTrafficStats(ef, i) { const targets = ef.getNodeParameter('targets', i); const parsedTargets = (0, generalFunctions_1.parseMultiOptionItems)(targets); const itemTypes = ef.getNodeParameter('item_types', i); const params = { url: '/dataforseo_labs/google/bulk_traffic_estimation/live', body: [{ targets: parsedTargets.length ? parsedTargets : null, location_name: ef.getNodeParameter('location_name_required', i), language_name: ef.getNodeParameter('language_name_required', i), item_types: itemTypes.length ? itemTypes : null, }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } async function getHistorycalTrafficStats(ef, i) { const targets = ef.getNodeParameter('targets', i); const parsedTargets = (0, generalFunctions_1.parseMultiOptionItems)(targets); const itemTypes = ef.getNodeParameter('item_types', i); const params = { url: '/dataforseo_labs/google/historical_bulk_traffic_estimation/live', body: [{ targets: parsedTargets.length ? parsedTargets : null, location_name: ef.getNodeParameter('location_name_required', i), language_name: ef.getNodeParameter('language_name_required', i), item_types: itemTypes.length ? itemTypes : null, }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } async function getKeywordIdeas(ef, i) { const keywords = ef.getNodeParameter('keywords_ideas', i); const parsedKeywords = (0, generalFunctions_1.parseMultiOptionItems)(keywords); const filters = ef.getNodeParameter('filters', i); let parsedFilters = []; try { parsedFilters = (0, generalFunctions_1.parseFilters)(filters); } catch (e) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "Invalid Filters value"); } const orderBy = ef.getNodeParameter('order_by_string', i); const parsedOrderBy = (0, generalFunctions_1.parseOrderByString)(orderBy); if (parsedOrderBy.length > 3) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "You can set no more than three sorting rules"); } const params = { url: '/dataforseo_labs/google/keyword_ideas/live', body: [{ keywords: parsedKeywords.length ? parsedKeywords : null, location_name: ef.getNodeParameter('location_name_required', i), language_name: ef.getNodeParameter('language_name_required', i), closely_variants: ef.getNodeParameter('closely_variants', i), ignore_synonyms: ef.getNodeParameter('ignore_synonyms', i), include_serp_info: ef.getNodeParameter('include_serp_info', i), include_clickstream_data: ef.getNodeParameter('include_clickstream_data', i), limit: ef.getNodeParameter('limit', i) || null, offset: ef.getNodeParameter('offset', i) || null, filters: parsedFilters.length ? parsedFilters : null, order_by: parsedOrderBy.length ? parsedOrderBy : null, }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } //# sourceMappingURL=labs.js.map