Workflow Templates
Discover and use pre-built workflows to automate your tasks
436 templates found
Discover and use pre-built workflows to automate your tasks
436 templates found
by Jonathan | NEX
Supercharge Your Security Operations for Free Stop wasting time manually investigating suspicious IP addresses. This workflow template is your launchpad to automating real-time IP cybersecurity analysis using the NixGuard platform, which you can use for free. This is the first of a two-part system designed to integrate seamlessly into your existing security stack, especially with Wazuh. It calls our main workflow, Automate IP Reputation Checks and Get AI Risk Summaries from NixGuard, to do the heavy lifting. What This Workflow Unlocks for You Free AI-Powered Risk Summaries:** Don't just get data; get answers. NixGuard provides a clear, human-readable summary of why an IP is considered risky. Automated IP Reputation Checks:** Programmatically check any IP against a vast array of threat intelligence sources. A Foundation for Your SOC Automation:** Use the results to trigger your incident response process. The template includes a pre-built example of how to send a detailed alert to Slack, which you can easily adapt for Jira, TheHive, or any other tool. How the Two-Workflow System Works This "Dispatcher" workflow is designed for flexibility. It holds your API key and input, then calls the main analysis workflow. This allows you to easily create multiple triggers (e.g., one for Slack bots, one for webhooks) without duplicating the core logic. Critical Setup Instructions Get the Main Workflow: First, add the main analysis engine to your n8n instance from the community page: NixGuard Analysis Workflow. Add Your Free API Key: In this workflow, click the blue Set API Key & Initial Prompt node. Paste your free NixGuard API key into the apiKey value field. Connect The Workflows: Click the purple Execute NixGuard & Wazuh Workflow node. In the parameters, use the dropdown to select the main analysis workflow you added in Step 1. Ready to automate your threat intelligence? Get your free API key and learn more at; 🔗 Learn more about NixGuard: [thenex.world](thenex.world )🔗 Get started with a free security subscription: thenex.world/security/subscribe Tags: Free, IP Analysis, NixGuard, Wazuh, Security, Automation, AI, Cybersecurity, Threat Intelligence, SOC, Incident Response, IP Reputation, DevSecOps, API
by Thomas Chan
This workflow template demonstrates how to create an AI-powered agent that provides users with current weather information and Wikipedia summaries. By integrating n8n with Ollama's local Large Language Models (LLMs), this template offers a seamless and privacy-conscious solution for real-time data retrieval and summarization. Who is this for? Developers and Enthusiasts: Individuals interested in building AI-driven workflows without relying on external APIs. Privacy-Conscious Users: Those who prefer processing data locally to maintain control over their information. Educators and Students: Learners seeking hands-on experience with AI integrations and workflow automation. What problem does this workflow solve? Accessing up-to-date weather information and concise Wikipedia summaries typically requires multiple API calls to external services, which can raise privacy concerns and incur costs. This workflow addresses these issues by utilizing Ollama's self-hosted LLMs within n8n, enabling users to retrieve and process information locally. What this workflow does: User Input Capture: Begins with a chat interface where users can input queries. AI Processing: The input is sent to an AI Agent node configured with Ollama's LLMs, which interprets the query and determines the required actions. Weather Retrieval: For weather-related queries, the workflow fetches current weather data from a specified source. Wikipedia Summarization: For queries seeking information, it retrieves relevant Wikipedia content and generates concise summaries. Setup: Install Required Tools: Ollama: Install and run Ollama to manage local LLMs. Configure n8n Workflow: Import the provided workflow template into your n8n instance. Set up the AI Agent node to connect with Ollama's API. Ensure nodes responsible for fetching weather data and Wikipedia content are correctly configured. Run the Workflow: Start the workflow and interact with the chat interface to test various queries. How to customize this workflow to your needs: Automate Triggers: Set up scheduled triggers to provide users with regular updates, such as daily weather forecasts or featured Wikipedia articles.
by Halfbit 🚀
Daily YouTrack In-Progress Tasks Summary to Discord by Assignee Keep your team in sync with a daily summary of tasks currently In Progress in YouTrack — automatically posted to your Discord channel. This workflow queries issues, filters them by status, groups them by assignee and priority, and sends a formatted message to Discord. It's perfect for teams that need a lightweight, automated stand-up report. > 📝 This workflow uses Discord as an example. You can easily replace the messaging integration with Slack, Mattermost, MS Teams, or any other platform that supports incoming webhooks. Use Case Remote development teams using YouTrack + Discord Replacing daily stand-up meetings with async updates Project managers needing quick visibility into active tasks Features Scheduled** daily execution (default: weekdays at 09:00) Status filter**: only issues marked as In Progress Grouping** by assignee and priority Custom mapping** for user mentions (YouTrack → Discord) Clean Markdown output** for Discord, with direct task links Setup Instructions YouTrack Configuration Get a permanent token: Go to your YouTrack profile → Account Security → Authentication Create a new permanent token with "Read Issue" permissions Copy the token value Set the base API URL: Format: https://yourdomain.youtrack.cloud/api/issues Replace yourdomain with your actual YouTrack instance Identify custom field IDs: Method 1: Go to YouTrack → Administration → Custom Fields → find your "Status" field and note its ID Method 2: Use API call GET /api/admin/customFieldSettings/customFields to list all field IDs Method 3: Inspect a task's API response and look for field IDs in the customFields array Example Status field ID: 105-0 or 142-1 Discord Configuration Create a webhook URL in your Discord server: Server Settings → Integrations → Webhooks → New Webhook Choose target channel and copy the webhook URL Extract webhook ID from URL (numbers after /webhooks/) Environment Variables & Placeholders | Placeholder | Description | |-------------|-------------| | {{API_URL}} | Your YouTrack API base URL | | {{TOKEN}} | YouTrack permanent token | | {{FIELD_ID}} | ID of the "Status" custom field | | {{QUERY_FIELDS}} | Fields to fetch (e.g., summary, id) | | {{PROJECT_LINK}} | Link to your YouTrack project | | {{USER_X}} | YouTrack usernames | | {{DISCORD_ID_X}} | Discord mentions or usernames | | {{NAME_X}} | Display names | | {{WEBHOOK_ID}} | Discord webhook ID | | {{DISCORD_CHANNEL}} | Discord channel name | | {{CREDENTIAL_ID}} | Your credential ID in n8n | Testing the Workflow Test YouTrack connection: Execute the "HTTP Request YT" node individually Verify that issues are returned from your YouTrack instance Check if the Status field ID is correctly filtering tasks Verify filtering: Run the "Filter fields" node Confirm only "In Progress" tasks pass through Check message formatting: Execute the "Discord message" node Review the generated message content and formatting Test Discord delivery: Run the complete workflow manually Verify the message appears in your Discord channel Schedule verification: Enable the workflow Test weekend skip functionality by temporarily changing dates Customization Tips Language**: All labels/messages are in English — customize if needed User mapping**: Adjust assignee → Discord mention logic in the message builder Priorities**: Update the priorityMap to reflect your own naming structure Schedule**: Modify the trigger time in the Schedule Trigger node Alternative platforms**: Swap out the Discord webhook for another messaging service if preferred
by Wyeth
Encode JSON to Base64 String in n8n This example workflow demonstrates how to convert a JSON object into a base64-encoded string using n8n’s built-in file processing capabilities. This is a common requirement when working with APIs, webhooks, or SaaS integrations that expect payloads to be base64-encoded. > Tip: The three green-highlighted nodes (Stringify → Convert to File → Extract from File) can be wrapped in a Subworkflow to create a reusable Base64 encoder in your own projects. 🔧 Requirements Any running n8n instance (local or cloud) No credentials or external services required What This Workflow Does Generates example JSON data Converts the JSON to a string Saves the string as a binary file Extracts the file’s contents as a base64 string Outputs the base64 string on the final node Step-by-Step Setup Manual Trigger Start the workflow using the Manual Execution node. This is useful for testing and development. Create JSON Data The Create Json Data node uses raw mode to construct a sample object with all major JSON types: strings, numbers, booleans, nulls, arrays, nested objects, etc. Convert to String The Convert to String node uses the expression ={{ JSON.stringify($json) }} to flatten the object into a single string field named json_text. Convert to File The Convert to File node takes the json_text value and saves it to a UTF-8 encoded binary file in the property encoded_text. Extract from File This node takes the binary file and extracts its contents as a base64-encoded string. The result is saved in the base64_text field. Customization Tips Replace the sample JSON in the Create Json Data node with your own payload structure. To make this reusable, extract the three core nodes into a Subworkflow or wrap them in a custom Function. Use the base64_text output field to post to APIs, store in databases, or include in webhook responses.
by Oneclick AI Squad
This n8n workflow automates personalized travel assistance via WhatsApp through a friendly virtual agent named Alex. It helps users plan trips, explore destinations, get visa/weather/hotel information, and book packages—all through a conversational interface. The system ensures quick, human-like support 24/7, improving customer experience and reducing manual handling by travel agents. Key Features The Travel Assistant agent provides contextual responses based on conversation history stored in memory. Alex maintains a friendly, professional tone throughout all interactions to enhance user experience. The workflow includes intelligent waiting mechanisms to ensure proper response processing. Memory functionality allows for seamless continuation of conversations across multiple interactions. Workflow Process The Get WhatsApp Message node captures incoming messages from users on WhatsApp, initiating the travel assistance process. The Travel Assistant node processes user queries using AI to understand travel needs and generate appropriate responses for trip planning, destination information, visa requirements, weather updates, and booking assistance. The Travel Plan Creator agent works in conjunction with the main assistant to generate detailed itineraries and travel recommendations based on user preferences. The Memory node stores conversation context and user preferences, enabling personalized responses and seamless conversation flow across multiple interactions. The Wait For Response node introduces intelligent delays to ensure proper message processing and natural conversation pacing. The Send Reply On WhatsApp node delivers the AI-generated travel assistance back to the user through WhatsApp messaging. Setup Instructions Import the workflow into n8n and configure WhatsApp Business API credentials for message handling. Set up the AI service for the Travel Assistant and Travel Plan Creator agents with your preferred language model. Configure the Memory node with appropriate storage settings for conversation persistence. Test the workflow by sending various travel-related queries through WhatsApp to ensure proper responses. Monitor conversation quality and adjust AI parameters as needed for optimal user experience. Prerequisites WhatsApp Business API access or WhatsApp integration service AI/LLM service for travel assistance (OpenAI, Anthropic, or similar) Database or storage service for conversation memory Access to travel data APIs for real-time information (weather, visa requirements, hotel availability) Modification Options Modify the Travel Assistant node to include specific travel databases, local recommendations, or branded responses. Adjust the conversation memory settings to control how much context is retained across interactions. Customize the Travel Plan Creator to include preferred booking platforms, hotel chains, or travel partners. Add additional specialized agents for specific travel services like flight booking, car rentals, or activity reservations. Configure response timing in the Wait For Response node to match your desired conversation flow.
by Rodrigue Gbadou
What this workflow does This n8n workflow collects client feedback through a form (Tally, Typeform, or Google Forms) and uses AI to analyze it. It automatically generates a summary of the positive points, highlights areas for improvement, and drafts a short social media post based on the feedback. Ideal for: Freelancers Customer support teams Online service providers Coaches and educators Setup steps Connect your form tool to the Webhook node (POST method) and make sure it sends a feedback field. Add your DeepSeek (or other GPT-compatible) API key to the AI request node. Configure the email node with your SMTP credentials and desired recipient address. Replace the Telegram node with Slack, Buffer, or another integration if you prefer. (Optional) Customize the prompt in the function node for different tone/language. 🕐 Estimated setup time: ~15 minutes 💬 Sticky notes are included and clearly positioned to guide you. Technologies used n8n Webhook node n8n Function node DeepSeek Chat or compatible AI API Email node (SMTP) Telegram node (or other integration) Sticky Notes for setup guidance Use cases Analyze feedback from onboarding or satisfaction surveys Create ready-to-publish social media content from real customer praise Help support or marketing teams act on feedback immediately
by Jordan Lee
This n8n template demonstrates how to use AI as a comprehensive personal assistant with multiple specialized agents. Use cases include email management, scheduling, web search, calculations, and more - all automated through AI coordination. Good to know This template integrates multiple AI services through OpenRouter Each agent specializes in different tasks (Gmail, Calendar, Search, etc.) Memory persistence maintains context across interactions How it works The workflow is triggered by Telegram messages (can be replaced with other triggers) A router node directs requests to the appropriate specialized agent Agents include: Gmail for email management Calculator for math operations Google Search for information retrieval Calendar for scheduling Contacts for CRM functions The OpenRouter Chat Model coordinates responses Final responses are sent back through Telegram How to use Connect your Telegram bot credentials Configure each service with appropriate API keys The system will automatically route requests to the right agent Requirements OpenRouter account for AI services Telegram bot token Google API credentials for relevant services Customising this workflow Add more specialized agents as needed Replace Telegram with other communication channels Adjust routing logic for different use cases
by Yaron Been
🚀 Automated Investor Intelligence: CrunchBase to Google Sheets Data Harvester! Workflow Overview This cutting-edge n8n automation is a sophisticated investor intelligence tool designed to transform market research into actionable insights. By intelligently connecting CrunchBase, data processing, and Google Sheets, this workflow: Discovers Investor Insights: Automatically retrieves latest investor data Tracks key investment organizations Eliminates manual market research efforts Intelligent Data Processing: Filters investor-specific organizations Extracts critical investment metrics Ensures comprehensive market intelligence Seamless Data Logging: Automatically updates Google Sheets Creates real-time investor database Enables rapid market trend analysis Scheduled Intelligence Gathering: Daily automated tracking Consistent investor insight updates Zero manual intervention required Key Benefits 🤖 Full Automation: Zero-touch investor research 💡 Smart Filtering: Targeted investment insights 📊 Comprehensive Tracking: Detailed investor intelligence 🌐 Multi-Source Synchronization: Seamless data flow Workflow Architecture 🔹 Stage 1: Investor Discovery Scheduled Trigger**: Daily market scanning CrunchBase API Integration** Intelligent Filtering**: Investor-specific organizations Key investment metrics Most recent data 🔹 Stage 2: Data Extraction Comprehensive Metadata Parsing** Key Information Retrieval** Structured Data Preparation** 🔹 Stage 3: Data Logging Google Sheets Integration** Automatic Row Appending** Real-Time Database Updates** Potential Use Cases Venture Capitalists**: Investment ecosystem mapping Startup Scouts**: Investor trend analysis Market Researchers**: Comprehensive investment insights Business Development**: Strategic partnership identification Investment Analysts**: Market intelligence gathering Setup Requirements CrunchBase API API credentials Configured access permissions Investor organization tracking setup Google Sheets Connected Google account Prepared tracking spreadsheet Appropriate sharing settings n8n Installation Cloud or self-hosted instance Workflow configuration API credential management Future Enhancement Suggestions 🤖 Advanced investment trend analysis 📊 Multi-source investor aggregation 🔔 Customizable alert mechanisms 🌐 Expanded investment stage tracking 🧠 Machine learning insights generation Technical Considerations Implement robust error handling Use secure API authentication Maintain flexible data processing Ensure compliance with API usage guidelines Ethical Guidelines Respect business privacy Use data for legitimate research Maintain transparent information gathering Provide proper attribution Hashtag Performance Boost 🚀 #InvestorIntelligence #VentureCapital #MarketResearch #AIWorkflow #DataAutomation #StartupEcosystem #InvestmentTracking #BusinessIntelligence #TechInnovation #StartupFunding Workflow Visualization [Daily Trigger] ⬇️ [Fetch Investor Data] ⬇️ [Extract Investor Fields] ⬇️ [Log to Google Sheets] Connect With Me Ready to revolutionize your investor research? 📧 Email: Yaron@nofluff.online 🎥 YouTube: @YaronBeen 💼 LinkedIn: Yaron Been Transform your market intelligence with intelligent, automated workflows!
by Aitor | 1Node
Who is this for? This template is designed for anyone who wants to integrate MCP with their AI Agents using Airtable. Whether you're a developer, a data analyst, or an automation enthusiast, if you're looking to leverage the power of MCP and Airtable in your n8n workflows, this template is for you. What problem is this workflow solving? This template caters to MCP beginners seeking a hands-on example and developers looking to integrate Airtable MCP service. When integrating MCP with Airtable, manually updating AI Agents after changes to Airtable data on the MCP Server is time-consuming and error-prone. This template automates the process, enabling the AI Agent to instantly recognize changes made to Airtable on the MCP Server. In data management, for example, it ensures that record updates or additions in Airtable are automatically detected by the AI Agent. With detailed steps, it simplifies the integration process for all users. What this workflow does This workflow focuses on integrating MCP with Airtable within n8n. Specifically, it allows you to build an MCP Server and Client using Airtable nodes in n8n. Any changes made to the Airtable Base/Table on the MCP Server are automatically recognized by the MCP Client in the workflow. This means that you can make changes to your Airtable (such as adding, deleting, or modifying records) on the MCP Server, and the MCP Client in the n8n workflow will immediately detect these changes without any manual intervention. Setup Requirements An active n8n account. Access to Airtable API. A sample base and rows in Airtable that you can use to test. An API key from your preferred LLM to power the AI agent. Step-by-step guide Create a new workflow in n8n: Log in to your n8n account and create a new workflow. Add Airtable nodes: Search for and add the Airtable nodes to your workflow that you wish the MCP client to have access to. Set up the MCP Server and Client: Use the appropriate nodes in n8n to set up the MCP Server and Client. Connect the Airtable nodes to the MCP nodes as required. Activate and test the workflow: Talk to the chat trigger once all credentials have been updated and table data synced and try adding some rows, deleting or finding and updating cells. How to customize this workflow to your needs If you want to customize this workflow, you can: Modify the triggers:** You can change the conditions under which the MCP Client detects changes. For example, you can set it to detect changes only in specific fields or based on certain record values in Airtable. Integrate with other services:** You can add more nodes to the workflow to integrate with other services, such as sending notifications to Slack or triggering further actions based on the detected Airtable changes. Need help? Feel free to contact us at 1 Node. Get instant access to a library of free resources we created.
by AlQaisi
Example: @SubAlertMe_Bot Summary: The automated image analysis and response workflow using n8n is a sophisticated solution designed to streamline the process of analyzing images sent via Telegram and delivering insightful responses based on the analysis outcomes. This cutting-edge workflow employs a series of meticulously orchestrated nodes to ensure seamless automation and efficiency in image processing tasks. Use Cases: This advanced workflow caters to a myriad of scenarios where real-time image analysis and response mechanisms are paramount. The use cases include: Providing immediate feedback on images shared within Telegram groups. Enabling automated content moderation based on the analysis of image content. Facilitating rapid categorization and tagging of images based on the results of the analysis. Detailed Workflow Setup: To effectively implement this workflow, users must adhere to a meticulous setup process, which includes: Access to the versatile n8n platform, ensuring seamless workflow orchestration. Integration of a Telegram account to facilitate image reception and communication. Utilization of an OpenAI account for sophisticated image analysis capabilities. Configuration of Telegram and OpenAI credentials within the n8n environment for seamless integration. Proficiency in creating and interconnecting nodes within the n8n workflow for optimal functionality. Detailed Node Description: Get the Image (Telegram Trigger): Actively triggers upon receipt of an image via Telegram, ensuring prompt processing. Extracts essential information from the received image message to initiate further actions. Merge all fields To get data from trigger: Seamlessly amalgamates all relevant data fields extracted from the trigger node for comprehensive data consolidation. Analyze Image (OpenAI): Harnesses the powerful capabilities of OpenAI services to conduct in-depth analysis of the received image. Processes the image data in base64 format to derive meaningful insights from the visual content. Aggregate all fields: Compiles and consolidates all data items for subsequent processing and analysis, ensuring comprehensive data aggregation. Send Content for the Analyzed Image (Telegram): Transmits the analyzed content back to the Telegram chat interface for seamless communication. Delivers the analyzed information in textual format, enhancing user understanding and interaction. Switch Node: The Switch node is pivotal for decision-making based on predefined conditions within the workflow. It evaluates incoming data to determine the existence or absence of specific elements, such as images in this context. Utilizes a set of rules to assess the presence of image data in the message payload and distinguishes between cases where images are detected and when they are not. This crucial node plays a pivotal role in directing the flow of the workflow based on the outcomes of its evaluations. Conclusion: The automation of image analysis processes through this sophisticated workflow not only enhances operational efficiency but also revolutionizes communication dynamics within Telegram interactions. By incorporating this advanced workflow solution, users can optimize their image analysis workflows, bolster communication efficacy, and unlock new levels of automation in image processing tasks.
by Yaron Been
🚀 Automated Funding Intelligence: CrunchBase to Google Sheets Tracking Workflow! Workflow Overview This cutting-edge n8n automation is a sophisticated startup funding intelligence tool designed to transform market research into actionable insights. By intelligently connecting CrunchBase, data processing, and Google Sheets, this workflow: Discovers Funding Opportunities: Automatically retrieves latest funding rounds Tracks industry-specific investments Eliminates manual market research efforts Intelligent Data Processing: Filters funding data by location and industry Extracts key investment metrics Ensures comprehensive market intelligence Seamless Data Logging: Automatically updates Google Sheets Creates real-time investment database Enables rapid market trend analysis Scheduled Intelligence Gathering: Daily automated tracking Consistent market insight updates Zero manual intervention required Key Benefits 🤖 Full Automation: Zero-touch funding research 💡 Smart Filtering: Targeted investment insights 📊 Comprehensive Tracking: Detailed funding intelligence 🌐 Multi-Source Synchronization: Seamless data flow Workflow Architecture 🔹 Stage 1: Funding Discovery Scheduled Trigger**: Daily market scanning CrunchBase API Integration** Intelligent Filtering**: Location-based selection Industry-specific focus Most recent funding rounds 🔹 Stage 2: Data Extraction Comprehensive Metadata Parsing** Key Information Retrieval** Structured Data Preparation** 🔹 Stage 3: Data Logging Google Sheets Integration** Automatic Row Appending** Real-Time Database Updates** Potential Use Cases Venture Capitalists**: Investment opportunity tracking Startup Scouts**: Market trend analysis Market Researchers**: Comprehensive funding insights Investors**: Strategic decision support Business Strategists**: Competitive landscape monitoring Setup Requirements CrunchBase API API credentials Configured access permissions Funding round tracking setup Google Sheets Connected Google account Prepared tracking spreadsheet Appropriate sharing settings n8n Installation Cloud or self-hosted instance Workflow configuration API credential management Future Enhancement Suggestions 🤖 Advanced investment trend analysis 📊 Multi-source funding aggregation 🔔 Customizable alert mechanisms 🌐 Expanded industry coverage 🧠 Machine learning insights generation Technical Considerations Implement robust error handling Use secure API authentication Maintain flexible data processing Ensure compliance with API usage guidelines Ethical Guidelines Respect business privacy Use data for legitimate research Maintain transparent information gathering Provide proper attribution Hashtag Performance Boost 🚀 #StartupFunding #InvestmentIntelligence #MarketResearch #AIWorkflow #DataAutomation #VentureCapital #TechInnovation #InvestmentTracking #BusinessIntelligence #StartupEcosystem Workflow Visualization [Daily Trigger] ⬇️ [Fetch Funding Rounds] ⬇️ [Extract & Format Data] ⬇️ [Log to Google Sheets] Connect With Me Ready to revolutionize your funding intelligence? 📧 Email: Yaron@nofluff.online 🎥 YouTube: @YaronBeen 💼 LinkedIn: Yaron Been Transform your market research with intelligent, automated workflows!
by Airtop
Automating Company Data Enrichment and ICP Calculation Use Case This automation identifies a company's LinkedIn profile, extracts key business data, and calculates an ICP (Ideal Customer Profile) score to qualify and enrich company records. It is perfect for sales teams, data enrichment pipelines, and CRM integrations. What This Automation Does Input Parameters Company domain**: The company's website domain (e.g., example.com). Airtop Profile (connected to LinkedIn)**: Your Airtop Profile authenticated for LinkedIn. Company LinkedIn* *(optional): If already known, skips search. Output Includes Verified LinkedIn company URL (if not provided) Company profile (name, tagline, website, location, about) Scale metrics (employee count and bracket) Classification (automation agency status, AI focus, technical level) ICP score with justifications Structured JSON object with all values merged How It Works LinkedIn Detection: If not provided, attempts to locate the LinkedIn URL using website scraping or search. Data Extraction: Uses Airtop to gather structured data from the company’s LinkedIn profile. ICP Scoring: Applies a scoring rubric based on AI/tech orientation, scale, agency status, and geography. Merge Results: All data components are merged into a unified output. Setup Requirements Airtop API Key Airtop Profile with LinkedIn authentication Next Steps Combine with Person Enrichment**: Pair with workflows that enrich individuals tied to the company. Sync to CRM**: Connect the output to your CRM for record enrichment or scoring fields. Adjust ICP Scoring Logic**: Modify the rubric for your organization's ICP model. Read more about company data enrichment and ICP scoring