by Tomohiro Goto
🧠 How it works This workflow automatically transcribes and translates voice messages from Telegram to Slack, enabling seamless communication between Japanese and English speakers. In our real-world use case, our distributed team often sends short voice updates on Telegram — but most discussion happens on Slack. Before this workflow, we constantly asked: “Can someone write a summary of that voice message?” “I can’t understand what was said — is there a transcript?” “Can we translate this audio for our English-speaking teammates?” This workflow fixes that problem without changing anyone’s communication habits. Built with n8n, OpenAI Whisper, and GPT-4o-mini, it automatically: Detects when a voice message is posted on Telegram Downloads and transcribes it via Whisper Translates the text with GPT-4o-mini Posts the result in Slack — with flags 🇯🇵→🇺🇸 and username attribution ⚙️ Features 🎧 Voice-to-text transcription using OpenAI Whisper 🌐 Automatic JA ↔ EN detection and translation via GPT-4o-mini 💬 Clean Slack message formatting with flags, username, and original text 🔧 Easy to customize: adjust target languages, tone, or message style ⚡ Typical end-to-end time: under 10 seconds for short audio clips 💼 Use Cases Global teams** – Send quick voice memos in Telegram and share readable translations in Slack Project coordination** – Record updates while commuting and post bilingual notes automatically Remote check-ins** – Replace daily written reports with spoken updates Cross-language collaboration** – Let English and Japanese teammates stay perfectly synced 💡 Perfect for Bilingual creators and managers** working across Japan and Southeast Asia AI automation enthusiasts** who love connecting voice and chat platforms Teams using Telegram for fast communication** and Slack for structured workspaces 🧩 Notes Requires three credentials: TELEGRAM_BOT_TOKEN OPENAI_API_KEY_HEADER SLACK_BOT_TOKEN_HEADER Slack scopes: chat:write, files:write, channels:history You can change translation direction or add languages in the “Detect Language” → “Translate (OpenAI)” nodes. Keep audio files under 25 MB for Whisper processing. Always export your workflow with credentials OFF before sharing or publishing. ✨ Powered by OpenAI Whisper × GPT-4o-mini × n8n × Telegram Bot API × Slack API A complete multilingual voice-to-text bridge — connecting speech, translation, and collaboration across platforms. 🌍
by JinPark
🧩 Summary Easily digitize and organize your business cards! This workflow allows you to upload a business card image, automatically extract contact information using Google Gemini’s OCR & vision model, and save the structured data into a Notion database — no manual typing required. Perfect for teams or individuals who want to centralize client contact info in Notion after networking events or meetings. ⚙️ How it works Form Submission Upload a business card image (.jpg, .png, or .jpeg) through an n8n form. Optionally select a category (e.g., Partner, Client, Vendor). AI-Powered OCR (Google Gemini) The uploaded image is sent to Google Gemini Vision for intelligent text recognition and entity extraction. Gemini returns structured text data such as: { "Name": "Jung Hyun Park", "Position": "Head of Development", "Phone": "021231234", "Mobile": "0101231234", "Email": "abc@dc.com", "Company": "TOV", "Address": "6F, Donga Building, 212, Yeoksam-ro, Gangnam-gu, Seoul", "Website": "www.tov.com" } JSON Parsing & Cleanup The text response from Gemini is cleaned and parsed into a valid JSON object using a Code node. Save to Notion The parsed data is automatically inserted into your Notion database (Customer Business Cards). Fields such as Name, Email, Phone, Address, and Company are mapped to Notion properties. 🧠 Used Nodes Form Trigger** – Captures uploaded business card and category input Google Gemini (Vision)** – Extracts contact details from the image Code** – Parses Gemini’s output into structured JSON Notion** – Saves extracted contact info to your Notion database 📦 Integrations | Service | Purpose | Node Type | |----------|----------|-----------| | Google Gemini (PaLM) | Image-to-text extraction (OCR + structured entity parsing) | @n8n/n8n-nodes-langchain.googleGemini | | Notion | Contact data storage | n8n-nodes-base.notion | 🧰 Requirements A connected Google Gemini (PaLM) API credential A Notion integration with edit access to your database 🚀 Example Use Cases Digitize stacks of collected business cards after a conference Auto-save new partner contacts to your CRM database in Notion Build a searchable Notion-based contact directory Combine with Notion filters or rollups to manage client relationships 💡 Tips You can easily extend this workflow by adding an email notification node to confirm successful uploads. For multilingual cards, Gemini Vision handles mixed-language text recognition well. Adjust Gemini model (gemini-1.5-flash or gemini-1.5-pro) based on your accuracy vs. speed needs. 🧾 Template Metadata | Field | Value | |-------|--------| | Category | AI + Notion + OCR | | Difficulty | Beginner–Intermediate | | Trigger Type | Form Submission | | Use Case | Automate business card digitization | | Works with | Google Gemini, Notion |
by AI/ML API | D1m7asis
Who’s it for Teams and makers who want a plug-and-play vision bot: users send a photo in Telegram, the bot returns a concise description plus OCR text. No custom servers required—just n8n, a Telegram bot, and an AIMLAPI key. What it does / How it works The workflow listens for new Telegram messages, fetches the highest-resolution photo, converts it to base64, normalizes the MIME type, and calls AIMLAPI (GPT-4o Vision) via the HTTP Request node using the OpenAI-compatible messages format with an image_url data URI. The model returns a short caption and extracted text. The answer is sent back to the same Telegram chat. Requirements n8n instance (self-hosted or cloud) Telegram bot token (from @BotFather) AIMLAPI account and API key (OpenAI-compatible endpoint) How to set up Create a Telegram bot with @BotFather and copy the token. In n8n, add Telegram credentials (no hardcoded tokens in nodes). Add AIMLAPI credentials with your API key (base URL: https://api.aimlapi.com/v1). Import the workflow JSON and connect credentials in the nodes. Execute the trigger and send a photo to your bot to test. How to customize the workflow Modify the vision prompt (e.g., add brand, language, or formatting rules). Switch models within AIMLAPI (any vision-capable model using the same messages schema). Add an IF branch for text-only messages (reply with guidance). Log usage to Google Sheets or a database (user id, file id, response). Add rate limits, user allowlists, or Markdown formatting in Telegram responses. Increase timeouts/retries in the HTTP Request node for long-running images.
by Oussama
This n8n template creates an intelligent Ideation Agent 🤖 that captures your ideas from text and voice notes sent via Telegram. The assistant automatically transcribes your voice memos, analyzes the content with a powerful AI, and organizes it into a structured Google Sheet database. It's the perfect workflow for capturing inspiration whenever it strikes, just by talking or typing 💡. Use Cases: 🗣️ Text-Based Capture: Send any idea as a simple text message to your Telegram bot for instant processing. 🎙️ Voice-to-Idea: Record voice notes on the go. The workflow transcribes them into text and categorizes them automatically. 📂 Automated Organization: The AI agent intelligently structures each idea with a title, description, score, category, and priority level without any manual effort. 📊 Centralized Database: Build a comprehensive and well-organized library of all your ideas in Google Sheets, making it easy to search, review, and act upon them. How it works: Multi-Modal Input: The workflow starts with a Telegram Trigger that listens for incoming text messages and voice notes. Content-Based Routing: A Switch node detects the message type. Text messages are sent directly for processing, while audio files are routed for transcription. Voice Transcription: Voice messages are sent to the ElevenLabs API, which accurately converts the speech into text. Unified Input: Both the original text and the transcribed audio are passed to the AI Agent in a consistent format. AI Analysis & Structuring: An AI Agent, receives the text. It follows a detailed system prompt to analyze the idea and structure it into predefined fields: Idea, Idea Description, Idea Type, Score, Category, Priority, Status, and Complexity. Data Storage: The agent uses the Google Sheets Tool (add_row_tool) to seamlessly add the fully structured idea as a new row in your designated spreadsheet. Instant Confirmation: Once the idea is saved, the workflow sends a confirmation message back to you on Telegram, summarizing the captured idea. Requirements: 🌐 A Telegram Bot API token. 🤖 An AI provider with API access (the template uses Azure OpenAI, but can be adapted). 🗣️ An ElevenLabs API key for voice-to-text transcription. 📝 Google Sheets API credentials to connect to your database. Good to know: ⚠️ Before you start, make sure your Google Sheet has columns that exactly match the fields defined in the Agent's system prompt (e.g., "Idea ", "Idea Description ", "Idea Type", etc.). Note that some have a trailing space in the template. 🎤 The quality of the voice transcription is dependent on the clarity of your recorded audio. ✅ You can completely customize the AI's behavior, including all the categories, types, and scoring logic, by editing the system prompt in the Agent node. Customizing this workflow: ✏️ Modify Categories: To change the available Idea Type, Category/Domain, or Priority Level options, simply edit the list within the Agent node's system prompt. 🔄 Swap LLM: You can easily change the AI model by replacing the Azure OpenAI Chat Model node with another one, such as the standard OpenAI node or a local AI model. 🔗 Change Database: To save ideas to a different platform, just replace the add_row_tool1 (Google Sheets Tool) with a tool for another service like Notion, Airtable, or a database.
by Dhinesh Ravikumar
Who it's for Project managers, AI builders, and teams who want structured, automated meeting summaries with zero manual work. What it does This workflow monitors a Google Drive folder for new meeting notes (PDF/TXT), extracts text, summarizes it via OpenAI GPT-4o, groups tasks by sentiment, builds a styled HTML summary, and sends it via Gmail. How to set it up Connect Google Drive, OpenAI, and Gmail credentials. Point the Drive Trigger to your meeting notes folder. Paste the system prompt into the AI node. Set Gmail Email Type to HTML and Message to {{$json.email_html}}. Drop a test file and execute once. Requirements n8n account Google Drive, OpenAI, and Gmail credentials Non-scanned PDFs or plain text files Customization ideas Add Slack or Notion logging Support additional file types Translate summaries automatically Tags #ai #automation #productivity #gmail #drive #meeting-summary #openai
by Jay Emp0
Ebook to Audiobook Converter ▶️ Watch Full Demo Video What It Does Turn any PDF ebook into a professional audiobook automatically. Upload a PDF, get an MP3 audiobook in your Google Drive. Perfect for listening to books, research papers, or documents on the go. Example: Input PDF → Output Audiobook Key Features Upload PDF via web form → Get MP3 audiobook in Google Drive Natural-sounding AI voices (MiniMax Speech-02-HD) Automatic text extraction, chunking, and audio merging Customizable voice, speed, and emotion settings Processes long books in batches with smart rate limiting Perfect For Students**: Turn textbooks into study audiobooks Professionals**: Listen to reports and documents while commuting Content Creators**: Repurpose written content as audio Accessibility**: Make content accessible to visually impaired users Requirements | Component | Details | |-----------|---------| | n8n | Self-hosted ONLY (cannot run on n8n Cloud) | | FFmpeg | Must be installed in your n8n environment | | Replicate API | For MiniMax TTS (Sign up here) | | Google Drive | OAuth2 credentials + "Audiobook" folder | ⚠️ Important: This workflow does NOT work on n8n Cloud because FFmpeg installation is required. Quick Setup 1. Install FFmpeg Docker users: docker exec -it <n8n-container-name> /bin/bash apt-get update && apt-get install -y ffmpeg Native installation: sudo apt-get install ffmpeg # Linux brew install ffmpeg # macOS 2. Get API Keys Replicate**: Sign up at replicate.com and copy your API token Google Drive**: Set up OAuth2 in n8n and create an "Audiobook" folder in Drive 3. Import & Configure Import n8n.json into your n8n instance Replace the Replicate API token in the "MINIMAX TTS" node Configure Google Drive credentials and select your "Audiobook" folder Activate the workflow Cost Estimate | Component | Cost | |-----------|------| | MiniMax TTS API | $0.15 per 1000 characters ($3-5 for average book) | | Google Drive Storage | Free (up to 15GB) | | Processing Time | ~1-2 minutes per 10 pages | How It Works PDF Upload → Extract Text → Split into Chunks → Convert to Speech (batches of 5) → Merge Audio Files (FFmpeg) → Upload to Google Drive The workflow uses four main modules: Extraction: PDF text extraction and intelligent chunking Conversion: MiniMax TTS processes text in batches Merging: FFmpeg combines all audio files seamlessly Upload: Final audiobook saved to Google Drive Voice Settings (Customizable) { "voice_id": "Friendly_Person", "emotion": "happy", "speed": 1, "pitch": 0 } Available emotions: happy, neutral, sad, angry, excited Limitations ⚠️ Self-hosted n8n ONLY (not compatible with n8n Cloud) PDF files only (not EPUB, MOBI, or scanned images) Large books (500+ pages) take longer to process Requires FFmpeg installation (see setup above) Troubleshooting FFmpeg not found? Docker: Run docker exec -it <container> /bin/bash then apt-get install ffmpeg Native: Run sudo apt-get install ffmpeg (Linux) or brew install ffmpeg (macOS) Rate limit errors? Increase wait time in the "WAITS FOR 5 SECONDS" node to 10-15 seconds Google Drive upload fails? Make sure you created the "Audiobook" folder in your Google Drive Reconfigure OAuth2 credentials in n8n Created by emp0 | More workflows: n8n Gallery
by Ertay Kaya
Zendesk Ticket Summarizer with Pinecone, OpenAI, and Slack This workflow automates the process of summarizing recent Zendesk support tickets and sharing key insights in a Slack channel. It is ideal for support teams who want daily, AI-generated overviews of customer issues without manually reviewing each ticket. How it works Daily Trigger: The workflow runs every day at 10am. Fetch Tickets: It retrieves all Zendesk tickets created in the last 24 hours (optionally filtered by brand). Vector Storage: Tickets are stored in a Pinecone vector database, with relevant fields and metadata. AI Summarization: An AI agent (using OpenAI) analyzes the tickets, identifies main complaints, and counts how many tickets mention each issue. Slack Notification: The summary is posted to a specified Slack channel for your team to review. Setup Instructions Configure your Zendesk, Pinecone, OpenAI, and Slack credentials in the respective nodes. Set your Pinecone index and namespace in both Pinecone nodes. Adjust the Zendesk query if you want to filter by a specific brand. Set the Slack channel ID where you want to receive the summaries. Use case Get daily, actionable insights from your Zendesk tickets, helping your team quickly spot trends and recurring issues.
by Supira Inc.
How it works This workflow automatically collects the latest news articles from both English and Japanese sources using NewsAPI, summarizes them with OpenAI, and appends the results into a Google Sheet. The summaries are concise (about 50 characters) in Japanese, making it easy to review news highlights at a glance. Set up steps Create a Google Sheet with two tabs: 01_Input (columns: Keyword, SearchRequired) 02_Output (columns: Date, Keyword, Summary, URL) Enter your own Google Sheet ID and tab names in the workflow. Add your NewsAPI key in the HTTP Request nodes. Connect your OpenAI account (or deactivate the summarization node if not needed). Run the workflow manually or use the daily schedule trigger at 13:00. This template is ready to use with minimal changes. Sticky notes inside the workflow provide extra guidance.
by Yassin Zehar
Description AI-powered priority re-evaluation every 2 hours. Analyzes new signals, meeting decisions, emails, and blockers, then runs 3 AI passes (Impact, Urgency, Final Ranking) to suggest re-ranking. Only updates when the ranking actually changes. Context Runs every 2 hours during work days (8:00–18:00). Pulls 5 data sources in parallel: open priorities, recent high-impact signals, today’s meeting decisions, urgent emails, and overdue/blocked actions. A Priority Context Matrix links each priority to relevant new information. Three sequential AI passes score Impact, Urgency, and produce a Final Ranking with rationale. CompareDatasets detects changes vs current ranking. Only if the ranking changed, Notion is batch-updated and Slack shows before/after. Who is this for? • PMs managing dynamic priority stacks • Product leaders who need real-time priority alignment • Teams where priorities shift frequently due to customer signals Requirements • Notion account with PM Daily databases • OpenAI API key • Slack Bot token How it works Trigger Runs every 2 hours, Monday–Friday, 8:00–18:00. Context Collection 5 parallel pulls: open priorities, signals, meetings, emails, blocked actions. Priority Matrix Links each priority to relevant signals, emails, and decisions. Deduplicates and normalizes. 3-Pass AI Scoring Pass 1: Impact. Pass 2: Urgency. Pass 3: Final Ranking with rationale. Change Detection Compares new vs current ranking. If changed: batch-updates Notion and posts before/after to Slack. What you get Continuous priority re-evaluation every 2 hours 3-pass AI scoring (Impact, Urgency, Final) Change detection — only updates when needed Before/after ranking comparison on Slack 40+ node workflow with CompareDatasets intelligence About me : I’m Yassin a Product Manager Scaling tech products with data-driven project management. 📬 Feel free to connect with me on Linkedin
by kazunori
Who this template is for This template is for teams that use GitLab merge requests and want a practical AI-assisted review workflow in n8n. It is useful for engineering teams that want faster first-pass reviews, consistent review comments, and a simple way to separate likely bugs, security risks, and maintainability issues before a human reviewer takes over. How it works This workflow starts when a user posts a trigger comment in a GitLab merge request discussion. It loads the merge request changes, splits the diff into one item per changed file, and skips files that are not suitable for inline review. Each file is then reviewed in parallel by three AI reviewers focused on bugs, security, and maintainability. Their findings are merged and sent to a verifier step, which removes weak or duplicate findings and normalizes severity and confidence. Only findings that pass the configured confidence threshold are posted. If a valid GitLab diff position can be resolved, the workflow creates an inline review comment. Otherwise, it falls back to a reply comment in the trigger discussion. A summary reply is also posted to mark the review as completed. Set up Setup usually takes around 10 to 20 minutes. You will need: a GitLab access token with permission to read merge requests and post discussions one or more AI model credentials for the reviewer and verifier steps your GitLab base URL and preferred trigger comment a minimum confidence threshold for posting findings Most detailed setup guidance is included directly in the sticky notes inside the workflow. Requirements GitLab project with merge request discussions enabled n8n credentials for GitLab API access AI chat model credentials for the reviewer and verifier nodes How to customize the workflow You can change the trigger comment, GitLab base URL, and minimum confidence threshold in the configuration section. You can also customize: which findings are posted by adjusting the confidence threshold reviewer prompts for bug, security, and maintainability analysis the final verifier behavior for severity, confidence, and duplicate handling the fallback behavior for findings that cannot be mapped to a valid inline diff position
by RealSimple Solutions
POML → Prompt/Messages (No-Deps) What this does Turns POML markup into either a single Markdown prompt or chat-style messages\[] — using a zero-dependency n8n Code node. It supports variable substitution (via context), basic components (headings, lists, code, images, tables, line breaks), and optional schema-driven validation using componentSpec + attributeSpec. Credits Created by Real Simple Solutions as an n8n template friendly POML compiler (no dependencies) for full POML feature parity. View more of our _templates here_ Who’s it for Teams who author prompts in POML and want a template-safe way to turn them into either a single Markdown prompt or chat-style messages—without installing external modules. Works on n8n Cloud and self-hosted. What it does This workflow converts POML into: prompt** (Markdown) for single-shot models, or messages[]** (system|user|assistant) for chat APIs when speakerMode is true. It supports variable substitution via a context object ({{dot.path}}), lists, headings, code blocks, images (incl. base64 → data: URL), tables from JSON (records/columns), and basic message components. How it works Set (Specs & Context):** Provide componentSpec (allowed attrs per tag), attributeSpec (typing/coercion), and optional context. Code (POML → Prompt/Messages):** A zero-dependency compiler parses the POML and emits prompt or messages[]. > Add a yellow Sticky Note that includes this description and any setup links. Use additional neutral sticky notes to explain each step. How to set up Import the template. Open the first Set node and paste your componentSpec, attributeSpec, and context (examples included). In the Code node, choose: speakerMode: true to get messages[], or false for a single prompt. listStyle: dash | star | plus | decimal | latin. Run → inspect prompt/messages in the output. Requirements No credentials or community nodes. Works without external libraries (template-compliant). How to customize Add message tags (<system-msg>, <user-msg>, <ai-msg>) in your POML when using speakerMode: true. Extend componentSpec/attributeSpec to validate or coerce additional tags/attributes. Preformat arrays in context (e.g., bulleted, csv) for display, or add a small Set node to build them on the fly. Rename nodes and keep all user-editable fields grouped in the first Set node. Security & best practices Never** hardcode API keys in nodes. Remove any personal IDs before publishing. Keep your Sticky Note(s) up to date and instructional.
by Avkash Kakdiya
How it works This workflow automatically processes new GitHub issues and uses AI to classify them by type and priority. It extracts key issue data, sends it to an AI model for structured analysis, and formats the output for task creation. The workflow then creates a task in Linear and adds a comment back to the GitHub issue. This ensures consistent triage and faster issue handling without manual effort. Step-by-step Capture and filter new issues** Github Trigger – Listens for new issues or comments in the repository. If – Filters events to process only newly opened issues. Edit Fields – Extracts and structures title, description, author, and URL. AI classification and formatting** Information Extractor – Sends issue data to AI for classification (type, priority, labels). Code in JavaScript – Cleans, validates, and formats AI output for consistent use. OpenAI Chat Model (sub-node) – Provides the language model powering the AI classification. Merge – Combines original issue data with AI-processed output. Task creation and feedback** Create an issue – Creates a structured task in Linear with priority and description. Create a comment on an issue – Posts a comment back to GitHub with classification results. Why use this? Eliminates manual issue triage and prioritization work Ensures consistent classification using AI-driven logic Speeds up response time for bugs, features, and questions Automatically syncs GitHub issues with Linear tasks Improves team visibility with instant feedback on each issue