6 templates found
Category:
Author:
Sort:

Host your own AI deep research agent with n8n, Apify and OpenAI o3

This template attempts to replicate OpenAI's DeepResearch feature which, at time of writing, is only available to their pro subscribers. > An agent that uses reasoning to synthesize large amount of online information and complete multi-step research tasks for you. Source Though the inner workings of DeepResearch have not been made public, it is presumed the feature relies on the ability to deep search the web, scrape web content and invoking reasoning models to generate reports. All of which n8n is really good at! Using this workflow, n8n users can enjoy a variation of the Deep Research experience for themselves and their teams at a fraction of the cost. Better yet, learn and customise this Deep Research template for their businesses and/or organisations. Check out the generated reports here: https://jimleuk.notion.site/19486dd60c0c80da9cb7eb1468ea9afd?v=19486dd60c0c805c8e0c000ce8c87acf How it works A form is used to first capture the user's research query and how deep they'd like the researcher to go. Once submitted, a blank Notion page is created which will later hold the final report and the researcher gets to work. The user's query goes through a recursive series of web serches and web scraping to collect data on the research topic to generate partial learnings. Once complete, all learnings are combined and given to a reasoning LLM to generate the final report. The report is then written to the placeholder Notion page created earlier. How to use Duplicate this Notion database template and make sure all Notion related nodes point to it. Sign-up for APIFY.com API Key for web search and scraping services. Ensure you have access to OpenAI's o3-mini model. Alternatively, switch this out for o1 series. You must publish this workflow and ensure the form url is publically accessible. On depth & breadth configuration For more detailed reports, increase depth and breadth but be warned the workflow will take exponentially longer and cost more to complete. The recommended defaults are usually good enough. Depth=1 & Breadth=2 - will take about 5 - 10mins. Depth=1 & Breadth=3 - will take about 15 - 20mins. Dpeth=3 & Breadth=5 - will take about 2+ hours! Customising this workflow I deliberately chose not to use AI-powered scrapers like Firecrawl as I felt these were quite costly and quotas would be quickly exhausted. However, feel free to switch web search and scraping services which suit your environment. Maybe you don't decide to source the web and instead, data collection comes from internal documents instead. This template gives you freedom to change this. Experiment with different Reasoning/Thinking models such as Deepseek and Google's Gemini 2.0. Finally, the LLM prompts could definitely be improved. Refine them to fit your use-case. Credits This template is largely based off the work by David Zhang (dzhng) and his open source implementation of Deep Research: https://github.com/dzhng/deep-research

JimleukBy Jimleuk
73020

Web scraping & screenshot automation with GPT 4.1 mini and Firecrawl

🔍 Overview This template uses Firecrawl’s /search API to perform AI-powered web scraping and screenshots — no code required. Just type natural language prompts, and an AI Agent will convert them into precise Firecrawl queries. ⚙️ Setup Get your Firecrawl API Key from https://firecrawl.dev Add it to n8n using HTTP Header Auth: Key: Authorization Value: Bearer YOURAPIKEY 🚀 What It Does Turns natural language into smart search queries Scrapes web data and captures full-page screenshots Returns titles, links, content, and images 💡 Example Input: > Find AI automation pages on YouTube (exclude Shorts) Result: json { "query": "intitle:AI automation site:youtube.com -shorts", "limit": 5 }

Luan CorreiaBy Luan Correia
1375

Sync Zendesk tickets with subsequent comments to Asana tasks

This workflow creates an Asana task when a new ticket is created in Zendesk. Subsequent comments on the ticket in Zendesk are added as comments to the task in Asana. Prerequisites Zendesk account and Zendesk credentials. Asana account and Asana credentials. Asana workspace to create tasks in. How it works The workflow listens for new tickets in Zendesk. When a new ticket is created, the workflow creates a new task in Asana. The Asana GID is then saved in one of the ticket's fields (in setup we call this "Asana GID"). The next time a comment is added to the ticket, the workflow retrieves the Asana GID from the ticket's field and adds the comment to the task in Asana. Setup This workflow requires that you set up a webhook in Zendesk. To do so, follow the steps below: In the workflow, open the On new Zendesk ticket node and copy the webhook URL. In Zendesk, navigate to Admin Center > Apps and integrations > Webhooks > Actions > Create Webhook. Add all the required details which can be retrieved from the On new Zendesk ticket node. The webhook URL gets added to the “Endpoint URL” field, and the “Request method” should match what is shown in n8n. Save the webhook. In Zendesk, navigate to Admin Center > Objects and rules > Business rules > Triggers > Add trigger. Give trigger a name such as “New tickets”. Under “Conditions” in “Meet ALL of the following conditions”, add “Status is New”. Under “Actions”, select “Notify active webhook” and select the webhook you created previously. In the JSON body, add the following: { "id": "{{ticket.id}}", "comment": "{{ticket.latestcommenthtml}}" } Save the Zendesk trigger. You will also need to set up a field in Zendesk to store the Asana GID. To do so, follow the steps below: In Zendesk, navigate to Admin Center > Objects and rules > Tickets > Fields > Add field. Use the number field option and give the field a name such as “Asana GID”. Save the field. In n8n, open the Update ticket node and select the field you created in Zendesk.

n8n TeamBy n8n Team
1060

Automated workflow backup with intelligent change detection using GitHub

Advanced n8n Workflow Sync with GitHub A robust workflow to back up and synchronize your n8n workflows to a GitHub repository, with intelligent change detection and support for file renames. 🎯 Who's it for? This workflow is for n8n administrators, developers, and power users who want a reliable, automated way to: Keep a version-controlled history of their workflows. Collaborate on workflows using GitHub's infrastructure. Prevent data loss and have a disaster recovery plan for their n8n instance. ✨ Key Features (What it does) Intelligent Sync: Backs up all your n8n workflows to a designated GitHub repository. Human-Readable Filenames: Saves workflows with filenames based on their actual names in n8n (e.g., My Awesome Workflow.json). Reliable Matching: Uses the unique n8n workflow ID to reliably track files, even if their names change. Rename Detection: If you rename a workflow in n8n, it intelligently deletes the old file and creates a new one in a single logical operation. Efficient Commits: Commits changes to GitHub only when there are actual modifications to a workflow's logic or structure. It performs a deep comparison, ignoring metadata changes. Clear Commit History: Generates clean, informative commit messages: create: workflowName update: workflowName rename: oldName - newName ⚙️ How It Works (Simple Steps) Get n8n Workflows: The workflow starts by fetching all your current workflows from n8n. Get GitHub Files: At the same time, it lists all existing workflow files from your GitHub repository. Compare & Decide: It then compares each n8n workflow with its GitHub counterpart. It checks if anything changed, if it was renamed, or if it's new. Take Action: If a workflow is new, it's created on GitHub. If a workflow is updated, the file content is changed on GitHub. If a workflow was renamed, the old file is deleted, and a new one is created. If nothing changed, the workflow is skipped. Send Report: Finally, it can send a summary report to Telegram about what happened. 🚀 How to Set Up Credentials: GitHub: Go to Credentials > New and add your GitHub credentials. You'll need a token with repo permissions. n8n API: In the same Credentials section, create n8n API credentials. You'll need your n8n instance's Base URL and an API key (you can create one in your n8n user settings). Telegram (Optional): If you want notifications, add your Telegram Bot credentials. Configure the Workflow: Open the Configuration node (the green one at the start). Fill in the following values: repo.owner: Your GitHub username or organization name. repo.name: The name of the repository for backups. repo.path: The folder inside the repository to store workflows (e.g., workflows/). report.tg.chatID (Optional): Your Telegram chat ID for notifications. Set to 0 to disable. report.verbose: Set to true to receive a report even if there were no changes. Connect Credentials: Select your newly created credentials in the following nodes: Get all workflows: Select your n8n API credentials. All GitHub nodes (e.g., List files, Create new file): Select your GitHub credentials. Send a message (Telegram): Select your Telegram credentials. Set the Schedule: In the Schedule Trigger node, configure how often you want the backup to run (e.g., every hour, once a day). Activate the Workflow: Save the workflow and toggle it to "Active". 🔧 How to Customize Change Report Destination: The final part of the workflow sends a report to Telegram. You can easily replace the Send a message node with a node for Slack, Discord, or email to change where notifications go. The message is pre-formatted in the Render summary node. 💡 What's Next? (Future Updates) This workflow is actively maintained! Here's a sneak peek at what's planned for future versions: Automatic Archive Handling: The next major update will introduce logic to automatically detect when a workflow is archived in n8n and move it to a dedicated archived/ folder in your GitHub repository, keeping your main backup directory clean. Performance Optimizations: I'm exploring ways to reduce API traffic by intelligently checking for changes before fetching full workflow data. To get the latest version with these features when it's released, be sure to follow my profile for new workflow publications!

Maksym BrashenkoBy Maksym Brashenko
654

Real-time currency conversion via webhook & Google search parsing

This automated n8n workflow provides real-time currency conversion by capturing GET requests via a webhook, parsing exchange rate data from Google Search, and returning a formatted response. The system handles query parameter validation and error cases to ensure reliable conversions. What is Real-Time Currency Conversion? Real-time currency conversion involves fetching the latest exchange rates from Google Search via HTTP requests, processing the data, and delivering a user-friendly conversion result based on a provided query parameter. Good to Know The workflow requires a valid query parameter (q) for conversion requests Google Search parsing depends on the availability and structure of search results Error handling is included for missing query parameters Responses are formatted for easy integration How It Works Webhook - Captures GET requests with query parameter q Check Query Parameter - Validates that the required query parameter exists Fetch Exchange Rate - Makes HTTP request to Google search for exchange rates Error Response - Handles missing query parameter errors Extract Conversion Data - Processes HTML response to extract conversion data Format Currency Response - Formats the result into a user-friendly response Send Conversion Response - Returns the formatted response How to Use Import the workflow into n8n Configure the webhook to receive GET requests with a query parameter (q) Test the workflow with sample conversion queries (e.g., "1 USD to INR") Monitor for error responses and adjust query handling if needed Requirements Webhook configuration Internet access for Google Search requests Customizing This Workflow Adjust the query parameter validation in the Check Query Parameter node to support additional formats Modify the Format Currency Response node to change the output format based on user needs

Oneclick AI SquadBy Oneclick AI Squad
335

Google Drive workflow with nested folder support

👤 Who’s it for Anyone who needs to recursively fetch all files from a specific Google Drive folder, including files inside all its nested (child) folders. Ideal for automation builders, admins, and integrators who want to process, move, list, or report on all files in a complex folder tree. --- ⚙️ How it works / What it does This workflow will: Accept a Google Drive Folder ID as an input (from another workflow or trigger). Recursively discover all child folders starting from the parent, no matter how many levels deep. Collect all file IDs & names from every folder (parent + all descendants). Return a clean list of all found files (with IDs and names) for further automation, downloading, or processing. Key features: 💡 Works recursively (handles any depth of nested folders). 🏷️ Outputs file ID & file name for each discovered file. 🔄 Can be triggered by other workflows (great for modular automation). --- 🛠️ How to set up Google Drive Credentials Make sure you’ve set up a Google Drive OAuth2 credential in n8n. Connect this credential to all Google Drive nodes in the workflow. Parent Folder ID Input the Google Drive folder ID you want to start from. How to pass it: If running standalone: update the When Executed by Another Workflow node with your folder ID. If called from another workflow: pass the folder ID as an input named id. Check Set Nodes There are two Set nodes (Return parent and Return parent1) and one trigger (When Executed by Another Workflow) where you might want to update the hardcoded folder ID. ⚠️ Change these IDs to match your use case. Run the Workflow Start the workflow (or execute it via another workflow). The result will be a flat list of files in all subfolders. --- ✅ Requirements 🟢 n8n instance 🟢 Google Drive OAuth2 credentials connected in n8n 🟢 A valid Google Drive folder ID to start from --- 🧑‍💻 How to customize Return Extra Data: Add fields in the “Search files” node options to return more Google Drive file metadata (e.g., size, webViewLink). Filter by File Type: Adjust the search query or add a filter node to only include certain file types (e.g., PDFs, Docs). Change Output Format: Edit the “Edit Fields” Set node to structure your output differently. Integrate Further: Add new nodes after the Loop to, for example, download, email, or sync files as needed. --- 🚨 Notes & Tips Performance: This workflow is optimized for up to hundreds of folders. For very large Drive accounts (thousands of folders/files), consider pagination or batching. Credential Security: Always use n8n’s built-in credential manager—never hard-code sensitive data. Static IDs: As noted in the sticky note, make sure to update all hardcoded folder IDs for your production use. --- 🗂️ Node Overview When Executed by Another Workflow: Accepts a folder ID (entry point). Google Drive – Get children folders: Lists subfolders of the given folder. If: Checks if the folder contains any subfolders. Execute Workflow: Handles recursion (calls itself on child folders). Code: Flattens all discovered folder IDs for next step. Loop Over Items: Iterates over all folders to process files. Google Drive – Search files: Finds all files in each folder. Edit Fields (Set): Structures file data for output. Sticky Note: Documentation and reminders inside your workflow. --- 🔄 Example Output json [ { "file_id": "1A2B3C...", "file_name": "MyDoc.pdf" }, { "file_id": "2B3C4D...", "file_name": "Presentation.pptx" } ]

Zain AliBy Zain Ali
198
All templates loaded