by ankitkansaldev
📰 Comprehensive Reuters News Intelligence System With Brightdata & Telegram Alerts A powerful n8n automation workflow that scrapes the latest Reuters news articles using Bright Data's web scraping capabilities and delivers intelligent news summaries directly to your Telegram chat. 📋 Overview This workflow provides an automated news intelligence solution that monitors Reuters for breaking news, analyzes content using Claude AI, and delivers personalized news alerts. Perfect for journalists, researchers, traders, and anyone who needs real-time access to Reuters content with AI-powered insights. ✨ Key Features 🎯 Form-Based Input: Easy web form to specify keywords and news type preferences 🤖 AI-Powered Processing: Uses Claude 4 Sonnet for intelligent content analysis 🌐 Professional Scraping: Leverages Bright Data's Reuters dataset for reliable data extraction 📱 Telegram Integration: Instant notifications delivered to your preferred chat ⏰ Smart Waiting: Built-in delays to ensure data processing completion 🔄 Status Monitoring: Automatic scraping status checks with retry logic 📊 Data Formatting: Clean, structured output with essential article fields 🚀 Scalable Design: Handles multiple articles with batch processing 🎯 What This Workflow Does Input Keywords**: Search terms for Reuters articles (e.g., "Election", "Gas shocks", "Technology") News Type**: Sorting preference (newest, oldest, relevance) Form Submission**: Web-based interface for easy interaction Processing Form Trigger: Captures user input via web form interface AI Agent Orchestration: Claude processes requirements and coordinates actions Bright Data Request: Initiates Reuters scraping with specified keywords Status Monitoring: Checks scraping progress with smart retry logic Data Retrieval: Fetches completed article data when ready Content Processing: Extracts and formats essential article information Telegram Delivery: Sends structured news updates to specified chat Output Data Points | Field | Description | Example | |-------|-------------|---------| | article_title | The main headline of the article | "Global Energy Markets Face Uncertainty" | | headline | Reuters display headline | "Oil Prices Surge Amid Supply Concerns" | | description | Article summary/meta description | "Energy markets react to geopolitical tensions..." | | content | Full article body text | "LONDON (Reuters) - Oil prices jumped 3%..." | | article_url | Direct link to Reuters article | "https://reuters.com/business/energy/..." | 🚀 Setup Instructions Prerequisites n8n instance (self-hosted or cloud) Bright Data account with Reuters dataset access Telegram bot and channel setup Claude API access (Anthropic) 15-20 minutes for complete setup Step 1: Import the Workflow Copy the JSON workflow code from the provided file In n8n: Workflows → + Add workflow → Import from JSON Paste JSON content and click Import Save the workflow with a descriptive name Step 2: Configure Bright Data Integration Set up Bright Data credentials: In n8n: Credentials → + Add credential → HTTP Header Auth Name: "Bright Data API" Add header: Authorization: Bearer YOUR_BRIGHT_DATA_API_KEY Test the connection Configure Reuters dataset: Ensure access to dataset ID: gd_lyptx9h74wtlvpnfu Verify Reuters scraping permissions in Bright Data dashboard Check monthly quota and usage limits Step 3: Configure Anthropic Claude Integration Set up Anthropic credentials: In n8n: Credentials → + Add credential → Anthropic API Enter your Anthropic API key Test the connection Update model settings: Open "Anthropic Chat Model" node Verify model is set to: claude-sonnet-4-20250514 Adjust temperature and other parameters if needed Step 4: Configure Telegram Notifications Create Telegram Bot: Message @BotFather on Telegram Use /newbot command and follow instructions Save the bot token provided Get Chat ID: Add your bot to desired channel/group Send a test message Visit: https://api.telegram.org/bot{BOT_TOKEN}/getUpdates Find your chat ID in the response Set up Telegram credentials: In n8n: Credentials → + Add credential → Telegram API Enter bot token from BotFather Test the connection Update Telegram node: Open "Telegram" node Replace DEMO_CHAT_ID with your actual chat ID Customize message format if needed Step 5: Configure Web Form Set up form trigger: Open "On form submission" node Note the webhook URL provided Customize form title and fields if needed Test form functionality: Access the webhook URL in your browser Fill out test form with sample keywords Verify form submission triggers workflow Step 6: Update Node Configurations Update HTTP Request nodes: Replace BRIGHT_DATA_API_KEY with actual credentials reference Verify dataset ID matches your Bright Data setup Check request parameters and headers Configure Data Formatting: Open "Data Formatting" node Review JavaScript code for field extraction Modify output fields if additional data needed Step 7: Test & Activate Run initial test: Submit form with test keywords (e.g., "Technology") Monitor workflow execution in n8n Check for Telegram message delivery Verify data flow: Confirm Bright Data snapshot creation Check status monitoring functionality Validate final data formatting Activate workflow: Toggle workflow to "Active" status Monitor for any execution errors Set up error notifications if needed 📖 Usage Guide Submitting News Requests Access the form: Navigate to your webhook URL Form title: "Reuters News Intelligence" Fill required fields: Keywords: Enter search terms (e.g., "Climate Change", "Tech Earnings") News Type: Select sorting preference: newest: Most recent articles first oldest: Historical articles first relevance: Best matching articles Submit and wait: Click submit to trigger workflow Expect 1-3 minutes for processing Check Telegram for article delivery Understanding the Process The workflow follows this sequence: Form submission triggers Claude AI agent Claude coordinates all scraping and processing steps Bright Data scrapes Reuters with your keywords System waits for scraping completion (60 seconds) Status check confirms data readiness Article data is retrieved and formatted Telegram message delivers final results Reading Telegram Results Each article includes: Clickable URL** to full Reuters article Headline** for quick scanning Description** with article summary Content preview** with key details 🔧 Customization Options Modifying Search Parameters Edit the "HTTP Request" node to adjust: { "keyword": "Your search terms", "sort": "newest|oldest|relevance", "limit_per_input": "2-10 articles" } Customizing Telegram Messages Update the "Telegram" node message format: 🗞️ {{ $json.heading }} 📖 {{ $json.description }} 🔗 Read Full Article 📅 Retrieved: {{ $now.format('YYYY-MM-DD HH:mm') }} Adding Email Notifications Add "Email" node after "Data Formatting" Configure SMTP credentials Create HTML email template with article data Connect to same input as Telegram node Enhancing AI Processing Modify the MCP Agent prompt to: Request specific article sections Add sentiment analysis Include market impact assessment Generate executive summaries Extract key quotes and statistics Adding Data Storage Include database storage by: Adding "Postgres" or "MySQL" node Creating articles table with schema Storing full article data for analysis Building historical news database 🚨 Troubleshooting Common Issues & Solutions 1. "Bright Data snapshot failed" Cause**: Invalid API key or dataset access Solution**: Verify credentials and dataset permissions in Bright Data dashboard 2. "No articles found" Cause**: Keywords too specific or no matching content Solution**: Try broader search terms, check Reuters availability 3. "Telegram message not sent" Cause**: Invalid bot token or chat ID Solution**: Re-verify bot setup with @BotFather, confirm chat ID 4. "Workflow timeout" Cause**: Bright Data scraping taking too long Solution**: Increase timeout in "sleep tool" or add retry logic 5. "Data formatting errors" Cause**: Unexpected response structure from Bright Data Solution**: Check "Data Formatting" node logs, adjust parsing logic 6. "Claude API errors" Cause**: API key issues or rate limiting Solution**: Verify Anthropic credentials, check usage limits Advanced Troubleshooting Monitor execution logs** in n8n for detailed error messages Test individual nodes** by running them separately Verify JSON structures** ensure data flows correctly between nodes Check rate limits** for both Bright Data and Claude API Add error handling** implement try-catch logic for robust operation 📊 Use Cases & Examples 1. Financial News Monitoring Goal: Track market-moving Reuters financial news Keywords: "earnings", "fed rates", "market outlook" Instant alerts for breaking financial news Support trading and investment decisions 2. Competitive Intelligence Goal: Monitor industry-specific news for business insights Keywords: Company names, industry terms Track competitor mentions and market developments Generate competitive analysis reports 3. Crisis Communications Goal: Stay informed during breaking news events Keywords: "breaking", location names, event types Rapid response to developing situations Crisis management team notifications 4. Research & Academia Goal: Gather news data for academic research Keywords: Research topics, geographic regions Build datasets for media analysis Track news coverage patterns over time ⚙ Advanced Configuration Scaling for High Volume To handle larger news monitoring needs: Increase batch processing: Modify limit_per_input parameter Add parallel processing branches Implement queue management Add rate limiting: Insert delays between requests Monitor API usage quotas Implement exponential backoff Database integration: Store articles in PostgreSQL/MySQL Add deduplication logic Create search and filter capabilities Multi-Channel Distribution Expand beyond Telegram: Slack integration: Add Slack webhook node Format messages for team channels Include interactive buttons Email newsletters: Compile daily/weekly summaries HTML formatting with images Subscriber management API endpoints: Create webhook responses Build news API for other systems Real-time data streaming AI Enhancement Options Leverage Claude's capabilities further: Sentiment analysis: Add sentiment scoring to articles Track market sentiment trends Generate mood indicators Summarization: Create executive summaries Extract key points Generate abstracts Classification: Categorize articles by topic Tag with relevant industries Priority scoring system 📈 Performance & Limits Expected Performance Single request**: 60-120 seconds average processing time Articles per request**: 2-10 (configurable) Data accuracy**: 95%+ for standard Reuters articles Success rate**: 90%+ for accessible content Daily capacity**: Limited by Bright Data quotas Resource Usage Memory**: ~200MB per execution API calls**: 1 Bright Data + 1 Claude + 1 Telegram per execution Bandwidth**: ~5-10MB per article scraped Execution time**: 1-3 minutes per request Scaling Considerations Rate limiting**: Respect API quotas and limits Error handling**: Implement comprehensive retry logic Data validation**: Verify article quality and completeness Cost monitoring**: Track API usage across services Performance optimization**: Cache common requests when possible 🤝 Support & Community Getting Help n8n Community**: community.n8n.io Bright Data Support**: Contact through dashboard Anthropic Documentation**: docs.anthropic.com Telegram Bot API**: core.telegram.org/bots Contributing Share workflow improvements with the community Report issues and suggest enhancements Create variations for specific news sources Document best practices and optimizations 📋 Quick Setup Checklist Before You Start ☐ n8n instance running (self-hosted or cloud) ☐ Bright Data account with Reuters dataset access ☐ Anthropic API key for Claude access ☐ Telegram bot created via @BotFather ☐ 20 minutes for complete setup Setup Steps ☐ Import Workflow - Copy JSON and import to n8n ☐ Configure Bright Data - Set up API credentials and test ☐ Configure Claude - Add Anthropic API credentials ☐ Setup Telegram - Create bot and get chat ID ☐ Update Credentials - Replace all demo values with real ones ☐ Test Form - Submit test request and verify flow ☐ Check Telegram - Confirm message delivery ☐ Activate Workflow - Turn on for production use Ready to Use! 🎉 Your workflow form URL: https://your-n8n-instance.com/webhook/your-webhook-id 🎯 Happy News Monitoring! This workflow provides a solid foundation for automated Reuters news intelligence. Customize it to fit your specific monitoring needs and use cases. The combination of Bright Data's reliable scraping, Claude's AI analysis, and Telegram's instant delivery creates a powerful news monitoring solution.
by Agentick AI
This n8n template demonstrates how to automate invoice data extraction from PDF attachments received via Gmail. Using LlamaParse and Gemini LLM, this workflow parses structured fields like PO numbers, line items, tax amounts, and totals — and stores them neatly into a Google Sheet. Perfect for use cases such as: 💼 Finance teams managing vendor invoices 📊 Bookkeeping workflows 🔄 Automating monthly reconciliation Good to Know At the time of writing, LlamaParse and Gemini may involve API usage costs depending on your subscription tier. Check LlamaIndex Pricing and Gemini Pricing for updated info. LlamaParse provides Markdown-formatted parsed output which is then passed to an LLM for structured field extraction. Gemini models may be geo-restricted. If you encounter "model not found" errors, your region might not be supported. How it Works Trigger: Watches your Gmail for new emails with PDF attachments. Email Filter: Ensures we only parse fresh emails not already labeled as "invoice synced". LlamaParse Upload: Uploads the PDF to LlamaParse’s parsing endpoint. Status Polling: Periodically checks whether the parsing is complete. Download Markdown: Once ready, it fetches the parsed invoice in Markdown format. AI Parsing with Gemini: Sends the Markdown to Gemini LLM to extract structured JSON (like PO number, line items, taxes, etc.) using a predefined schema. Google Sheets Upload: Stores extracted data into a predefined spreadsheet. Labeling: Marks the email as “invoice synced” to avoid reprocessing. How to Use The trigger is based on Gmail, but you can replace this with a webhook or manual trigger for testing. Setup Instructions Gmail API Enable Gmail API in Google Cloud Console. Connect your Gmail account in n8n credentials. Allow read + modify access. Google Sheets Create a new Google Sheet with the following headers (row 1): Date | Vendor Name | Invoice Number | PO Number | Line Items | Subtotal | Tax | Total Amount Connect Google Sheets in n8n and paste the Sheet ID in the node. You can customise the google sheet basis your requirement. LlamaParse Get a LlamaIndex API Key from LlamaIndex. Use the LlamaParse upload and polling nodes to process your PDFs. Gemini (via Vertex AI) Set up Gemini access in GCP. Use the Gemini 2.5 Model. Construct a structured prompt to extract required fields. Labeling Create a Gmail label named "Invoice Synced" for tracking processed emails. Requirements Gmail account with API access LlamaParse (LlamaIndex) account with API Key Google Sheets API credentials Access to Gemini 2.5 model via Google Vertex AI Customising This Workflow This template is just the beginning. You can expand it to: Auto-generate invoices back to vendors Run duplicate checks before inserting into Sheets Integrate with accounting tools like Zoho, QuickBooks, or Tally Trigger Slack/Email notifications on specific vendors or high invoice amounts
by James Francis
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. Overview When applying for freelance jobs on Upwork, minutes matter. The first quality application is more often than not the one that's ultimately selected. Subscribers to Upwork's Freelancer Plus receive email job alerts, but filters are very limited. As a result, it takes a lot of time to manually go through each email and determine if each job fits your criteria. This workflow scans your Gmail every few minutes, finds all Upwork job alerts, scores them based on your profile/preferences, and sends a Slack channel message for jobs that are strong potential matches. How it works Scans Gmail for Upwork job alerts every few minutes Extracts all available job data from each email Scores the job based on profile information and criteria you provide Sends a Slack notification for all jobs that meet a given score threshold Disclaimers This workflow polls Gmail for new messages every 10 minutes. A workflow execution will be used each time, regardless of whether the Gmail scan finds anything. You may want to adjust this frequency based on the amount of workflow executions you want to use. The AI matching process is based only on the information included in the email body (job title, description snippet and metadata). It is against Upwork's Terms of Service to scrape a full job posting. Despite this, the quality of the results in our testing is high for most use cases. Required Setup Subscribe to Upwork's Freelancer Plus plan to enable job alerts ($19.99/mo at the time of this posting) Create Gmail and Open Router (or an LLM provider of your choice) credentials and select them in the Gmail / LLM Model nodes Create a Slack app that has at least the chat:write.public and channels:read scopes, install it into your workspace, and use your apps OAuth Token to create a Slack API credential in n8n IMPORTANT: In the "Opportuntity Scorer" node, replace the text in between the <my_profile> tags with your freelancer bio. For best results, include as much detail as possible about your skillset, experience, tool familiarity, and job preferences. Update the filter with your notification threshold preference(s) and update the Slack channel to send notifications to in the last Slack node If you have any questions or feedback about this workflow, or would like me to build custom workflows for your business, email me at n8n@paperjam.agency.
by ibrhdotme
This is a simple workflow that grabs HackerNews front-page headlines from today's date across every year since 2007 and uses a little AI magic (Google Gemini) to sort 'em into themes, sends a neat Markdown summary on Telegram. How it works Runs daily, grabs Hacker News front page for this day across every year since 2007. Pulls headlines & dates. Uses Google Gemini to sort headlines into topics & spot trends. Sends a Markdown summary to Telegram. Set up steps Clone the workflow. Add your Google Gemini API key. Add your Telegram bot token and chat ID. **Built on Day-01 as part of the #100DaysOfAgenticAi Fork it, tweak it, have fun!**
by Marth
How it works This workflow runs on a daily schedule. It starts by scraping real estate-related queries from Google using Apify. The organic search results are parsed and summarized into a single text block. That text is then sent to an AI model (GPT-4o) which extracts the top 3 pain points faced by real estate agents based on current online sentiment. The workflow compares today's insights with yesterday's data stored in Airtable to detect recurring or new pain points. Finally, it sends a summary notification via Telegram and stores the current day's insights into Airtable for trend tracking. How to set up Clone or import the workflow into your n8n instance. Get an Apify API token and insert it into the HTTP Request node. Create an Airtable base with a table containing two fields: "Date" (text) and "Summary" (long text). Copy the Base ID and Table ID into the Airtable nodes. Connect your Telegram bot and replace the chat ID in the Telegram node. Set up OpenAI credentials with GPT-4o or GPT-4o-mini for the LLM node. Run once manually to test, then activate the schedule trigger to run daily. (Optional) Extend the flow to generate cold outreach emails based on pain points, or sync to Notion/CRM.
by Yaron Been
Scrape Indeed Job Listings for Hiring Signals Using Bright Data and LLMs How the flow runs Fill the form with job position you're hunting for. Bright data's scraper will scrape Indeed based on your requirments. Workflow waits for the snapshot. Data returns as JSON. Jobs append to Google Sheets. Each row goes to an LLM to analyze if you're a good fit for the job (based on your prompts). The LLMswrites YES or NO next to each job opportunity, helping you find job posts that are relevant to you. What you need Google Sheets with our template. Bright Data dataset and API key. OpenAI key for GPT‑4o mini (or any other LLM). n8n with required nodes. Form fields To Fill Job Location** – city or region. Keyword** – role or skills. Country** – two‑letter code. Setup steps Copy the sheet template link. Import the JSON workflow. Add your credentials in nodes. Test the form manually. Add a schedule if desired. Bright Data filter example [ { "country": "US", "domain": "indeed.com", "keyword_search": "Growth Marketer", "location": "Miami", "date_posted": "Last 24 hours" } ] Tips -Choose Last 24 hours often. -Increase wait time for big snapshots. -Narrow keywords to save credits. **Need help? **Email me anytime: Yaron@nofluff.online YouTube: @YaronBeen LinkedIn: https://www.linkedin.com/in/yaronbeen/ Bright Data Docs: https://docs.brightdata.com/introduction
by Jimleuk
This n8n workflow demonstrates a simple approach to improve chat UX by staggering an AI Agent's reply for users who send in a sequence of partial messages and in short bursts. How it works Twilio webhook receives user's messages which are recorded in a message stack powered by Redis. The execution is immediately paused for 5 seconds and then another check is done against the message stack for the latest message. The purpose of this check lets use know if the user is sending more messages or if they are waiting for a reply. The execution is aborted if the latest message on the stack differs from the incoming message and continues if they are the same. For the latter, the agent receives the buffered messages up to that point and is able to respond to them in a single reply. Requirements A Twilio account and SMS-enabled phone number to receive messages. Redis instance for the messages stack. OpenAI account for the language model. Customising the workflow This workflow should work for other common messaging platforms such as Whatsapp and Telegram. 5 seconds too long or too short? Adjust the wait threshold to suit your customers.
by Leonardo Grigorio
Youtube Video This n8n workflow is designed to assist YouTube content creators in identifying trending topics within a specific niche. By leveraging YouTube's search and data APIs, it gathers and analyzes video performance metrics from the past two days to provide insights into what content is gaining traction. Here's how the workflow operates: Trigger Setup: The workflow begins when a user sends a query through the chat_message_received node. If no niche is provided, the AI prompts the user to select or input one. AI Agent (Language Model): The central node utilizes a GPT-based AI agent to: Understand the user's niche or content preferences. Generate tailored search terms related to the niche. Process YouTube API responses and summarize trends using insights such as common themes, tags, and audience engagement metrics (views, likes, and comments). YouTube Search: The youtube_search node runs a secondary workflow to query YouTube for relevant videos published within the last two days. It retrieves basic video data such as video IDs, relevance scores, and publication dates. Video Details Retrieval: The workflow fetches additional details for each video: Video Snippet: Metadata like title, description, and tags. Video Statistics: Metrics such as views, likes, and comments. Content Details: Video duration, ensuring only content longer than 3 minutes and 30 seconds is analyzed. Data Processing: Video metadata is cleaned, sanitized, and stored in memory. Tags, titles, and descriptions are analyzed to identify patterns and trends across multiple videos. Output: The workflow compiles insights and presents them to the user, highlighting: The most common themes or patterns within the niche. URLs to trending videos and their respective channels. Engagement statistics, helping the user understand the popularity of the content. Key Notes for Setup: API Keys**: Ensure valid YouTube API credentials are configured in the get_videos, find_video_snippet, find_video_statistics, and find_video_data nodes. Memory Buffer**: The window_buffer_memory node ensures the AI agent retains context during analysis, enhancing the quality of the generated insights. Search Term Customization**: The AI agent dynamically creates search terms based on the user’s niche to improve search precision. Use Case: This workflow is ideal for YouTubers or marketers seeking data-driven inspiration for creating content that aligns with current trends, maximizing the potential to engage their audience. Example Output: For the niche "digital marketing": Trending Topic: Videos about "mental triggers" and "psychological marketing." Tags: "SEO," "Conversion Rates," "Social Proof." Engagement: Videos with over 200K views and high likes/comment ratios are leading trends. Video links: https://www.youtube.com/watch?v=video_id1 https://www.youtube.com/watch?v=video_id2
by Federico De Ponte
🔁 Loop & Optimize Meta Tags with Google Gemini This workflow automates the shortening of meta titles and descriptions for SEO—directly from your Google Sheet, row by row, using Google Gemini. ✅ What it does Reads rows from a Google Sheet (meta_title, meta_description, row_index) Loops through each row and checks if content exists Sends the data to Google Gemini for length-optimized output Cleans and parses the response Updates the original sheet with the shortened results 🛠️ Setup Requirements Google Sheets (OAuth2 credentials connected in n8n) Google Gemini API key (configured in n8n credentials) Sheet must contain: row_index meta_title meta_description Output will be written into: meta_titleFixed meta_descriptionFixed
by David Olusola
🤖 AI-Powered Lead Enrichment with Explorium MCP & Telegram Who it's for Sales reps, agencies, and growth teams who want to turn basic company info into qualified leads with automated research . Perfect for B2B prospecting. What it does This workflow lets you send a company name or domain via Telegram, and instantly returns: ✅ Enriched company profile (industry, size, tech, pain points) ✅ A clean, structured JSON — ready for your CRM or sales tools How it works 💬 Send company info to your Telegram bot 🔎 Workflow pulls data from Explorium MCP + Tavily 🧠 AI analyzes model, tools, pain points & goals 📤 JSON response sent back via Telegram or logged to your database Requirements 🔐 OpenAI API (GPT-4) 🧠 Explorium MCP API 🌐 Tavily Web Search API 🤖 Telegram Bot API 🗃️ PostgreSQL (for memory/logging) How to set up Add API keys in n8n Connect Telegram bot to webhook Set up PostgreSQL for memory persistence Customize prompts (tone, niche, etc.) Test by sending a company name via Telegram Customization Options 🎯 Focus enrichment on specific industries or keywords 💬 Adjust the email sequence structure & style 🧩 Add extra data sources (e.g. Clearbit, Crunchbase) 🧾 Format JSON to match your CRM schema ⚙️ Add approval step before sending emails Highlights ✅ Uses multi-source enrichment ✅ Works 100% from Telegram ✅ Integrates into any sales pipeline
by Matt Chong
Who is this for? This workflow is ideal for: For freelancers, business owners, and finance teams who receive receipts via Gmail Automatically logs expenses for tax, bookkeeping and year-end audits What problem is this workflow solving? When tax season hits, missing receipts create panic. This workflow keeps everything in one place. It uses AI to extract details from Gmail attachments, logs them in a Google Sheet, and stores the PDFs in Google Drive. No digging. No copying. Just everything where it should be. How it works? Apply the label receipt to any incoming Gmail email. Do not mark it as read. On a schedule (e.g. daily at 8:00 AM), the workflow triggers. It searches for unread emails with the label receipt. For each matching email, it downloads the attached receipt file. It extracts text content from the receipt file. It uploads the original receipt file to a specified folder in Google Drive. It merges the extracted text with email metadata. It sends this combined data to OpenAI. OpenAI extracts structured fields: date merchant category description subtotal tax total The extracted data is appended as a new row in the specific Google Sheet. Finally, the email is marked as read to prevent it from being processed again. How to set up? Connect these services in your n8n credentials: Gmail (OAuth2) Google Drive Google Sheets OpenAI Configure the Google Drive upload: In the “Upload File” node, select the target folder where you want receipt PDFs stored. Set your execution schedule: Open the “Schedule Trigger” node and choose when it should run (default is once daily at 8:00 AM). Choose your Google Sheet and tab: In the “Append to Google Sheet” node, select your document and tab Ensure the sheet contains these columns: Date, Merchant, Category, Description, Subtotal, Tax, Total. How to customize this workflow to your needs? Change the Gmail label or search filter** to match your needs. Modify the OpenAI schema** to extract additional fields like currency, project, or notes.
by Davide
This workflow is designed to automate the generation and updating of SEO meta titles and descriptions for WooCommerce products using n8n. It leverages Google Sheets for data input, a FREE language model (Gemini 2.0 Flash Exp. via OpenRouter) for generating SEO-optimized meta tags, and WooCommerce for updating product details. How It Works: Trigger: The workflow can be triggered manually or on a schedule. The manual trigger allows for testing, while the schedule trigger can be set to run at regular intervals (e.g., every few minutes) to process new products. Data Retrieval: The workflow starts by retrieving product IDs from a Google Sheets document. It looks for products that do not yet have meta titles or descriptions. Using the retrieved product ID, the workflow fetches the corresponding product details from WooCommerce, including the product name, description, short description, and categories. Meta Tag Generation: The product details are passed to a language model (Gemini 2.0 Flash Exp) via OpenRouter. The model generates SEO-optimized meta titles and descriptions based on the provided content. The generated meta tags are structured and validated to ensure they meet SEO best practices, such as character limits and keyword inclusion. Update WooCommerce: The generated meta title and description are then updated in the WooCommerce product metadata using the Yoast SEO fields. Update Google Sheets: Finally, the workflow updates the Google Sheets document with the newly generated meta tags, along with the product URL, title, and the timestamp of the update. Set Up Steps: Google Sheets Setup: Create a copy of the provided Google Sheets template and insert WooCommerce product IDs in column "B". Ensure the Google Sheets document has columns for METATITLE, METADESCRIPTION, URL, TITLE POST, and DATA (timestamp). n8n Workflow Configuration: Google Sheets Node: Configure the "Get product ID" node to connect to your Google Sheets document. Use OAuth2 for authentication. WooCommerce Node: Set up the WooCommerce nodes to connect to your WooCommerce store using the WooCommerce API credentials. OpenRouter Node: Configure the "Gemini 2.0 Flash Exp" node with your OpenRouter API credentials to access the language model. Structured Output Parser: Ensure the output parser is set to handle the structured data format for meta titles and descriptions. Workflow Execution: Trigger the workflow manually to test the process or set up a schedule trigger to automate the workflow at regular intervals. Monitor the workflow execution to ensure that meta tags are generated and updated correctly in both WooCommerce and Google Sheets. Validation: After the workflow runs, verify that the meta titles and descriptions in WooCommerce are correctly updated and that the Google Sheets document reflects the changes. This workflow streamlines the process of optimizing WooCommerce product pages for SEO, saving time and ensuring consistency in meta tag generation. Need help customizing? Contact me for consulting and support or add me on Linkedin.