Skip to content
FlowHubFluxonLab

Code workflow'ları

1.006 sonuç — tümü kaynağa bağlı n8n referansı

ACDembeddingsgooglegemini
free

Answer support FAQs with Google Gemini, Supabase, Google Sheets and WhatsApp

Quick overview This workflow ingests FAQs from Google Sheets into a Supabase vector table using Google Gemini embeddings, then serves a webhook-based support chatbot that answers only from that FAQ knowledge base and escalates unanswered questions to a human via UltraMsg WhatsApp. How it works Runs manually to pull FAQ rows (Question/Answer) from a Google Sheets spreadsheet. Formats each row into a single text document (for example, Q: … A: …), generates embeddings with Google Gemini, and inserts the documents into a Supabase vector store table. Receives incoming chat messages via a POST webhook that includes message and sessionId. Uses a Google Gemini chat model with session-based memory to query the Supabase vector store for the most relevant FAQ matches and generates a reply strictly from the retrieved content. If the agent output indicates escalation to a human, sends the full message content to UltraMsg via an HTTP request to alert a WhatsApp number. Returns a JSON response to the webhook caller with either the FAQ-based answer or a confirmation that a human agent has been notified. Setup Add credentials for Google Gemini (PaLM) API, Supabase, and Google Sheets OAuth2. In Supa

Ayaan Sheikh tarafından
CW
free

Search and preview GIFs with forms and GIPHY

Quick overview This workflow publishes an n8n Form where users enter a search term, queries the GIPHY Search API for the top 9 G-rated GIFs, and renders the results as a clickable HTML gallery on the form completion page with copy-to-clipboard links. How it works Receives a submission from an n8n Form at the gif-finder path with a required query field. Calls the GIPHY Search API with the submitted query, limiting results to 9 GIFs and filtering to G-rated content. Transforms the GIPHY response into responsive HTML that shows a grid of GIF thumbnails and a fallback message when no results are returned. Displays the generated HTML on the form completion page so users can click any GIF to copy its direct URL to the clipboard. Setup Create a GIPHY developer app and generate an API key. Add an HTTP Query Auth credential and set the api_key value to your GIPHY API key, then select it in the HTTP Request that calls GIPHY. Activate the workflow and share the n8n Form URL for the gif-finder form with your users.

Roshan Ramani tarafından
CW
free

Generate llms.txt from a website sitemap using forms and HTTP requests

Quick overview This workflow uses an n8n Form and HTTP requests to read a website sitemap, fetch each listed page, extract the page title and meta description, and generate an llms.txt file that you can preview, copy, or download. How it works Receives a form submission with the site name, site description, sitemap URL, and a maximum page limit. Fetches the sitemap XML and, if it is a sitemap index, extracts the child sitemap URLs. Fetches each leaf sitemap and extracts, deduplicates, and caps page URLs while grouping them into sections based on the first URL path segment. Requests each page’s HTML content and continues even if some pages fail to load. Extracts the HTML title and meta description (or falls back to a title derived from the URL), then compiles the results into a sectioned llms.txt markdown file. Renders a completion page that displays the generated llms.txt content and provides Copy and Download actions. Setup Copy the n8n Form URL from the Form Trigger node and open it in your browser (or use the test form in the editor). Submit your site name, sitemap URL, and optionally a site description and max pages value. Upload the downloaded or copied llms.txt file to your w

isaWOW tarafından
C
free

Calculate profit margin and markup with interactive web forms

Quick Overview This workflow exposes an n8n Form that calculates a product’s selling price from cost, tax, and marketplace fees using either a target profit margin or a target markup, then displays the resulting price, profit, margin, and markup (or a validation error) and lets users return to the form. How it works Receives an n8n Form submission with product cost, tax percentage, fee percentage, a desired value, and a chosen calculation method (Profit Margin or Markup). Validates that product cost is greater than 0 and that tax and fee percentages are 0 or higher, otherwise shows an error result page. Routes the request based on the selected method (Profit Margin vs Markup). For Profit Margin, verifies that tax + fee + desired margin is less than 100%, calculates selling price and profit, and shows the results page. For Markup, verifies that the markup is 0% or higher, calculates selling price, profit, and the resulting profit margin, and shows the results page. After any results or error page, redirects the user back to the initial form using the configured form URL. Setup Activate the workflow and open the Form Trigger node to copy its Production URL. Paste that Production URL

EximiaAI tarafından
BCsheetsW
free

Monitor new template releases with OpenAI and log insights to Telegram and Google Sheets

Quick overview This workflow runs daily to check the public n8n Templates API for newly published templates in a chosen category, generates improvement suggestions with OpenAI, logs each new template to Google Sheets, and sends a Telegram digest (with an optional all-clear message when nothing new is found). How it works Runs every day at 9 AM on a schedule. Fetches the latest templates for the configured category from the n8n Templates API. Extracts key metadata for each template and compares template IDs against a stored “seen” list to detect newly published items. For each new template, sends its details to an OpenAI chat model to generate 4–6 business-focused improvement tips. Appends one row per new template (including the AI tips and metadata) to a Google Sheets spreadsheet. Builds a combined digest of all new templates and posts it to a Telegram chat, or sends an optional all-clear message when no new templates are found. Setup Add an OpenAI API credential and select the model to use for the analysis. Add a Google Sheets OAuth credential, then choose the target spreadsheet and sheet tab and ensure the header columns match the fields being appended. Add a Telegram bot credent

Dr. Firas tarafından
airtableCmondaycom
free

Sync Monday.com board groups and tasks to Airtable using a sub-workflow

Quick Overview This workflow manually fetches all Monday.com boards, retrieves each board’s groups and tasks, and syncs the task details into Airtable using a delegated sub-workflow pattern. How it works Starts manually to initiate the sync. Fetches all boards from Monday.com and iterates through them in batches. For each board, pulls all board groups from Monday.com and enriches each group with board context (ID, name, state, owners, and metadata). Sends the group list to an execute-workflow trigger as a sub-workflow and waits for it to finish processing. In the sub-workflow, flattens the incoming groups into individual group records and iterates through them. For each group, fetches all Monday.com items in that group, formats key fields (owner, status, type, and story points), and upserts them into an Airtable table using “Monday Task ID” as the unique key. Returns a success message to the parent workflow and aggregates per-board sub-workflow results into a combined output. Setup Add Monday.com API credentials with permission to read boards, groups, and items. Add an Airtable Personal Access Token and select the target base and table for upserts. Ensure your Airtable table has fi

Prakash Software tarafından
Csheets
free

Extract invoice data into Google Sheets with LDX hub AnalyzeDoc Gemini

Quick overview This workflow collects an invoice PDF or image through an n8n form, uses LDX hub AnalyzeDoc (Gemini) to extract key invoice fields as JSON, and appends the results as a new row in Google Sheets. How it works Receives an invoice file upload (PDF/JPG/PNG) through an n8n form submission. Sends the uploaded document to LDX hub AnalyzeDoc (google/gemini-3.5-flash) with a prompt that extracts invoice metadata, parties, dates, and amounts into a JSON schema. Parses the extracted JSON into structured fields for downstream use. Appends the extracted invoice fields as a new row in the selected Google Sheets spreadsheet and worksheet. Setup Install the community node package n8n-nodes-ldxhub and create an LDXhub API credential (API key) for the AnalyzeDoc node. Add a Google Sheets OAuth2 credential and select the target spreadsheet and sheet in the Google Sheets append step. Create a header row in your Google Sheet that matches the extracted fields (invoice_number, issue_date, due_date, vendor_name, vendor_address, vendor_tax_id, bill_to, subtotal, tax, total, currency, payment_terms) so auto-mapping writes to the correct columns.

Hideki Mori tarafından
AairtableCD
free

Handle LinkedIn inbox RAG replies with Unipile, Claude, Pinecone, and Airtable

Quick overview Automatically ingest your knowledge base, monitor your LinkedIn company page inbox, and reply to leads and customers with AI-drafted, source-grounded answers. Classifies every message, checks for spam, drafts replies using Claude and Pinecone RAG, and lets you auto-send or review each reply in Airtable. How it works A Google Drive trigger watches a folder for new or updated documents, downloading each file automatically as it's added. Each document is split into chunks, embedded, and upserted into a Pinecone vector index, building a searchable company knowledge base. A webhook receives every new LinkedIn message sent to your company page via Unipile, filtering out messages you sent yourself. The last few messages in the conversation are fetched and formatted into a chronological transcript for context. An AI agent classifies the message's intent (lead, support, partnership, recruiting, spam, or other) using shared conversation memory. A second AI agent drafts a reply, searching the Pinecone knowledge base for relevant facts before answering, and saves the draft to Airtable. Depending on a configurable auto-send toggle, the reply is sent immediately via Unipile, or he

Salman Mehboob tarafından
CW
free

Generate branded social captions and images with OpenAI and PostFast

Quick Overview This workflow runs three times a week to generate a branded social caption and AI image with OpenAI, then uploads the image via PostFast pre-signed URLs and schedules the post across selected connected social accounts. How it works Runs on a schedule every Monday, Wednesday, and Friday at 7am. Loads the brand name, image style, topic list, and a platform filter used for the current run. Fetches connected social media accounts from PostFast and keeps only accounts that match the selected platforms. Uses OpenAI (gpt-4o-mini) to generate a JSON response containing a caption and a matching image prompt. Requests pre-signed PostFast upload URLs (one per target account) and uses OpenAI (gpt-image-1) to render a 1024×1024 PNG image. Uploads the image to the provided S3 URLs and schedules a PostFast post per account with the caption and the corresponding uploaded media key for one hour later. Setup Install and enable the verified PostFast community node (n8n-nodes-postfast) and add your PostFast API key credentials. Add your OpenAI credentials for both the text generation (gpt-4o-mini) and image generation (gpt-image-1) steps. Update the brand name, image style, topic list,

Petar Georgiev tarafından
C
free

Generate daily LinkedIn B2B leads with DataForB2B and LinkUp

Quick overview Automate B2B lead generation on autopilot: every weekday morning, DataForB2B finds fresh leads matching your ICP (800M+ profiles, 50+ filters), skips anyone already contacted, and sends up to 10 personalized LinkedIn connection requests per day via LinkUp API - with safe, human-like limits. How it works Runs every weekday at 9:00 AM using a schedule trigger. Searches for people matching your ICP in DataForB2B (for example, “Head of Sales” in the United States) and returns up to 25 results. Normalizes the lead data into consistent fields such as LinkedIn profile URL, name, title, company, and location. Skips leads whose LinkedIn URLs were already processed in previous executions to avoid re-contacting the same profiles. Limits the list to a daily cap of 10 leads. Sends a personalized connection request for each remaining lead using the LinkUp API, continuing even if individual invites fail. Setup Create a DataForB2B API key at app.dataforb2b.ai and adjust the people filters to match your ICP. Get your LinkUp API key at app.linkupapi.com and connect your account in the LinkUp dashboard. Update the schedule (cron expression) if you want a different time or cadence. Cust

Linkup API tarafından
Cnotion
free

Transcribe and summarize Notion meeting recordings with Gladia

Quick overview This workflow triggers on new meeting entries in a Notion database, sends the recording URL to Gladia for transcription with diarization and summarization, polls until the job completes, and then writes the summary and full transcript back to the same Notion page. How it works Triggers when a new page is added to the selected Notion meetings database. Reads the page’s “Recording URL” and starts an asynchronous transcription job in Gladia with speaker diarization and summarization enabled. Waits for a configured interval and repeatedly checks Gladia for the transcription result until it returns done or the maximum poll attempts is reached. When processing completes, updates the Notion page Status to “Transcribed” and writes the returned summary to the “Summary” property. Splits the full transcript into Notion-safe text chunks and appends them to the meeting page as blocks. If Gladia returns an error or the polling times out, updates the Notion page Status to “Failed” and writes a failure message to the “Summary” property. Setup Use a self-hosted n8n instance and install the n8n-nodes-gladia community node (Settings → Community Nodes). Add credentials for the Notion AP

Kevin Yu tarafından
CgoogledrivesheetsW
free

Build a sound effect library with Google Sheets, ElevenLabs, Google Drive and Slack

Quick overview This workflow runs manually or every 15 minutes to read queued sound-effect prompts from Google Sheets, generate MP3s via the ElevenLabs sound-generation API, upload them to Google Drive, update each row with status and a file link, and post a run recap to Slack. How it works Runs manually or on a 15-minute schedule. Reads all rows from a Google Sheets tab and selects a capped batch where Status is blank or Queued and Description is present, clamping DurationSeconds and PromptInfluence to valid ranges. Sends each selected Description to the ElevenLabs sound-generation API to generate an MP3 file. Uploads the returned MP3 to a specified Google Drive folder using a deterministic filename based on the sheet row. Updates the matching Google Sheets row to Done with the Google Drive link and timestamp, or to Failed with error notes and timestamp if generation or upload fails. Counts how many rows succeeded or failed in the run and posts a one-line recap message to a selected Slack channel. Setup Add an ElevenLabs HTTP Header Auth credential (xi-api-key) and select it in the ElevenLabs request step. Connect Google Sheets OAuth2 credentials and set the spreadsheet and sheet

Kevin Yu tarafından
CgoogledrivesheetsW
free

Transcribe Google Drive audio to markdown with Gladia and Google Sheets

Quick overview This workflow watches a Google Drive folder for new audio files, sends them to Gladia for asynchronous transcription, saves the resulting Markdown transcript back to Google Drive, and appends a success or failure record (with a link and details) to a Google Sheets log. How it works Triggers every minute when a new file is created in a specific Google Drive folder. Downloads the new file from Google Drive and uploads the binary audio to Gladia. Starts a Gladia pre-recorded transcription job and waits a configurable interval before checking status. Polls Gladia for the job result until the status is "done", an error is returned, or the maximum attempt limit is reached. When completed, formats the transcript into a Markdown file (including metadata and speaker utterances when available) and uploads it to a target Google Drive folder. Appends a row to Google Sheets with the timestamp, source file name, duration, status, transcript link, and a short preview, or logs a failure row with the error or timeout reason. Setup Add Google Drive OAuth2 credentials and set the source folder ID to watch and the destination folder ID where transcripts are saved. Create a Gladia HTTP H

Kevin Yu tarafından
CgoogledriveW
free

Generate sound effect variation packs with ElevenLabs and Google Drive

Quick overview This workflow collects a single sound-effect brief via an n8n form, generates multiple variation takes with the ElevenLabs sound-generation API, and uploads each MP3 into a timestamped Google Drive folder, then returns a results page with links and per-take status. How it works Receives a sound-effect brief (plus optional take count, duration, and prompt influence) from an n8n form submission. Validates and clamps the inputs, plans the requested number of takes with slightly varied prompt influence values, and generates a timestamped subfolder name. Creates a new subfolder in Google Drive under the configured parent output folder for this run. Builds one ElevenLabs sound-generation API request per take and calls ElevenLabs to generate an MP3 for each variation. Uploads each generated MP3 to the run’s Google Drive subfolder and records whether each take succeeded or failed. Displays an HTML completion page that links to the Google Drive folder and lists each take with a file link or error message. Setup Create an ElevenLabs HTTP Header Auth credential that sends your API key as the xi-api-key header and select it in the ElevenLabs request step. Add a Google Drive OAut

Kevin Yu tarafından
ACWopenaichatmodel
free

Create AI music videos from a prompt with OpenAI, Kie.ai and BeatAPI

Quick overview This workflow collects a music video theme via an n8n form, uses OpenAI to generate music, image, and video prompts, then calls Kie to create an instrumental track and a Nano Banana image, and finally uses BeatAPI to render a publish-ready AI music video. How it works Receives a submission from an n8n Form Trigger with inputs like theme, genre, mood, duration, aspect ratio, and quality. Uses OpenAI (via an AI Agent with a structured output schema) to generate a Suno-style music prompt, an image prompt, a BeatAPI music-video prompt, and YouTube metadata. Sends the generated music prompt and settings to Kie to start audio generation, then polls Kie until the track is ready and validates the duration is within 10–180 seconds. Sends the generated image prompt to Kie (Nano Banana model) to create key art, then polls Kie until an image URL is returned. Creates a BeatAPI AI music video task using the generated audio URL, one or two image URLs (generated image plus optional cover image), and the BeatAPI prompt, then polls BeatAPI until the render succeeds. Returns the final video URL along with YouTube-ready title, description, tags, and provider task IDs in a single publish

Eric tarafından
CWsupabase
free

Match product manager jobs with Supabase, Anthropic Claude, Adzuna, and Resend

Quick overview This workflow ingests job postings from Greenhouse/Lever/Ashby job boards, Adzuna, and RemoteOK into a Supabase jobs pool, then daily uses Anthropic Claude to score a short list against a single candidate profile and emails the best matches via Resend. How it works Runs every 3 hours to fetch job listings from curated Greenhouse, Lever, and Ashby ATS boards, Adzuna searches, and the RemoteOK API. Parses each source into a common job format (title, company, location, URL, description, and posted date). Deduplicates jobs, drops postings older than 90 days, marks “fresh” jobs, and upserts the results into a Supabase jobs table. Runs daily at 08:00, loads the single role profile and pulls up to 15 fresh jobs from Supabase that roughly match the role keyword. Removes jobs already matched for that role using the Supabase user_job_matches table, then batches the remaining jobs and sends them to Anthropic Claude for fit scoring. Keeps jobs at or above the configured minimum score, saves the new matches back to Supabase, and sends an HTML email digest to the role’s email address via Resend. If any execution fails, an error workflow formats the failure details and sends an ale

Nocode Expert tarafından
Ccryptodiscordsheets
free

Send LemonSqueezy subscription alerts to Slack, Discord, Telegram and log them in Google Sheets

Quick overview Get an alert in Slack, Discord or Telegram within seconds every time a LemonSqueezy subscription is created, cancelled, expires or a payment fails, plus a running log of every event in Google Sheets. How it works Receives a POST webhook from LemonSqueezy with the raw request body. Computes an HMAC signature for the raw body and compares it to LemonSqueezy’s x-signature header, stopping if they don’t match. Parses the webhook JSON and extracts the event name from the headers or payload metadata. Normalizes subscription and payment payloads into flat fields like customer email, product, plan, status, amount, and currency. Appends the normalized event to Google Sheets as an event log. If the event is not subscription_updated, sends an alert message to Slack, Discord, and/or Telegram with the key event details. Setup In LemonSqueezy, create a webhook pointing to this workflow’s Production webhook URL and set a signing secret. Configure the Crypto credential/secret used for the HMAC calculation so it matches your LemonSqueezy webhook signing secret exactly. Set up at least one alert destination: connect Slack OAuth and choose a channel, or provide a Discord webhook URL, o

Mark Kato tarafından
Cgmailsheets
free

Protect Gmail AI email workflows from prompt injection with Gemini and Sheets

Quick overview This workflow monitors Gmail for new support-style emails, scans them for prompt-injection signals, and only then sends safe messages to Google Gemini for structured triage. It logs outcomes to Google Sheets and creates Gmail drafts either for a safe reply or for manual human review. How it works Triggers every 5 minutes when a new Gmail message matches the configured query filter. Normalizes the email metadata and cleans the body text to create a consistent input for safety checks. Scores the email for prompt-injection risk using keyword and pattern matching and labels it as safe, review, or high risk. If the email is high risk, it skips Google Gemini, logs the event to Google Sheets, and creates a Gmail draft to request manual review. If the email is safe or review-level, it sends the email (wrapped as untrusted content) to Google Gemini to return a strict JSON triage including summary, intent, requested action, and a safe reply draft. Logs the Gemini results and final safety status to Google Sheets, then creates either a Gmail reply draft to the sender or a Gmail draft for the reviewer when human review is required. Setup Add credentials for Gmail, Google Gemini,

uninc000 tarafından
BCgmailsheets
free

Track asset warranty deadlines with Google Sheets, Gmail, Todoist, Slack, and OpenAI

Quick overview This workflow runs daily to read an asset register from Google Sheets, calculate warranty expiry dates, and escalate upcoming deadlines via Gmail, Slack, and Todoist, while using OpenAI to draft vendor negotiation emails for high-value assets and updating expired items back in the sheet. How it works Runs every day at 08:30. Reads all assets from a Google Sheets register and calculates each item’s warranty expiry date and days remaining from the purchase date and warranty months. For already-expired assets, updates the Google Sheets register to set the status to “warranty expired.” For assets expiring within 7 days, posts an urgent Slack message and creates a Todoist task due on the warranty expiry date. For assets expiring within 30 days, emails the asset owner via Gmail asking them to choose whether to extend, replace, or let the warranty lapse. For 30-day warnings where the asset value is at least 2000, uses OpenAI to draft a vendor warranty-extension negotiation email and saves it as a Gmail draft for review. Setup Create a Google Sheets asset register with columns for asset, owner_email, purchase_date, warranty_months, vendor, value, and status. Add credentials

kenta tarafından
CsheetsW
free

Score draft content citability with GPT-4o-mini and Google Sheets

Quick overview This workflow manually scores draft content for AI citability using OpenAI GPT-4o-mini and logs detailed, evidence-backed results to Google Sheets, either from pasted draft text or by fetching and cleaning a provided page URL. How it works Starts when you run the workflow manually. The workflow reads drafts from the content tab of your Google Sheet (content_id, title, brand, target_query, draft_text). A Code node validates each row, computes word count, and builds the full judge payload. The complete anchored rubric lives in this node, so the entire scoring methodology is readable in one place. One HTTP call per draft sends the rubric and draft to gpt-4o-mini (temperature 0, JSON mode, retries with backoff). The rubric anchors describe what a 90, 70, 50, and 30 look like on each dimension, so the judge grades against fixed criteria. A second Code node parses the judge output, clamps each score to 0-100, computes the weighted composite (Answer Structure 40%, Entity Clarity 30%, Factual Density 30%), and assigns the verdict band: 80+ publish, 60-79 revise, below 60 rework. Results append to the scores tab with the run date, per-dimension scores, the top 3 fixes, the ju

Sara Soleymani tarafından
Csheets
free

Enrich Google Maps business leads with Scrapeer and Google Sheets

Quick Overview This workflow runs a saved Scrapeer Google Maps Leads flow on a daily schedule (or manually), enriches each business with detail-page data, and appends the normalized lead fields to a Google Sheets tab. How it works Runs either manually or every day at 08:00 using the schedule trigger. Sets the Google Maps search parameters (search query, location, max results) and the target spreadsheet name for the run. Calls Scrapeer to run a selected Google Maps Leads flow with those input variables and waits for the results. Attaches the original search context to the Scrapeer output for traceability. Parses and deduplicates the returned leads, normalizes fields like rating and review count, and formats phone numbers as sheet-safe text. Appends one row per lead to Google Sheets with columns such as name, category, rating, reviews, address, phone, website, and Google Maps URL. Setup Create (or choose) a Google Sheets spreadsheet with a “Leads” tab and columns: Scraped At, Search Query, Location, Name, Category, Rating, Reviews, Address, Phone, Website, and Google Maps URL. Add a Google Sheets Service Account credential in n8n and select the target spreadsheet and sheet tab in the

Scrapeer tarafından
Csheets
free

Extract business card contacts with LDX hub Gemini AnalyzeDoc and Google Sheets

Quick overview This workflow collects a business card photo/scan through an n8n form, uses LDX hub AnalyzeDoc (Gemini) to extract contact details as structured JSON, and appends the resulting fields as a new row in Google Sheets. How it works Receives a business card file upload (PDF/JPG/PNG) through an n8n form submission. Sends the uploaded file to LDX hub AnalyzeDoc using the Gemini model and a fixed schema prompt to extract contact fields as JSON. Parses the extracted JSON into individual fields like name, company, email, phone numbers, and address. Appends the extracted fields as a single new row in the selected Google Sheets worksheet. Setup Install the community node n8n-nodes-ldxhub and add an LDXhub API credential with your API key. Add a Google Sheets OAuth2 credential and select the target spreadsheet and worksheet in the append step. Create (or match) a header row in your sheet for full_name, job_title, company, department, email, phone, mobile, address, website, notes so the auto-mapping writes to the correct columns.

Hideki Mori tarafından
Cgmail
free

Generate and email PDFBolt template PDFs via Gmail webhook

Quick overview This workflow receives a POST webhook payload, validates required fields, generates a PDF from a published PDFBolt template using provided template data, emails the PDF as an attachment via Gmail, and returns a JSON success or 400 error response to the caller. How it works Receives a POST webhook request containing templateData and a recipientEmail. Validates the payload, builds a safe PDF filename, and prepares the email subject and message text. Returns a 400 JSON response when required fields are missing. Sends the validated templateData to PDFBolt to render a PDF from the specified published template and returns it as binary data. Emails the generated PDF attachment to the recipient using Gmail. Responds to the original webhook request with a JSON success message including the filename and recipient email. Setup Install the PDFBolt community node and add your PDFBolt API key credentials. Create and publish a template in PDFBolt, then paste the template ID into the PDFBolt node. Connect a Gmail account in n8n with permission to send emails. Activate the workflow, copy the production webhook URL, and configure your source system to POST a JSON body that includes te

PDFBolt tarafından
ACWopenaichatmodel
free

Send daily AI-personalized cold emails with Google Places and OpenAI

Quick overview This workflow runs every morning to find local businesses via Google Places, pulls their website content to extract an email address, uses OpenAI to draft a personalised automation-focused outreach message, then sends it via SMTP while tracking contacts in an n8n Data Table. How it works Runs daily at 9:00 and sets the campaign parameters (rotating niche and city, sender details, daily send cap, and delay between emails). Searches Google Places for businesses matching the selected niche and location, then iterates through each returned place. Keeps only businesses with a website, fetches the website HTML, and extracts a likely contact email address plus a short text snippet. Filters out leads without an email and skips any email address already logged in the n8n Data Table. Limits the run to the configured daily cap and processes leads in batches. Uses OpenAI to generate a structured subject and body for a personalised cold email based on the business snippet and your campaign details. Sends the email via SMTP with your signature and unsubscribe note, logs the contact in the Data Table, and waits the configured delay before sending the next email. Setup Add credentia

Harvey Kubath tarafından