Skip to content
FlowHubFluxonLab

Code workflows

1,006 results — all source-linked n8n references

Cgmailgoogledocssheets
free

Score job listings and generate tailored cover letters with Apify, OpenAI and Google Sheets

Quick overview This workflow runs on a schedule to scrape job listings via Apify (Google Jobs and Career Site API), scores each role against your base resume using OpenAI, generates tailored cover letter and optionally a tailored resume in Google Docs, and logs the results to Google Sheets with Gmail error alerts. How it works Runs on a schedule (with an optional manual test trigger) and loads your search query and Google IDs from the configured variables. Uses Apify actors to scrape jobs from Google Jobs and the Career Site API, then normalizes and merges both result sets into a single list. Processes jobs in batches and skips listings that already exist in Google Sheets (matched by Apply URL), have no apply link, have short descriptions, or don’t meet the seniority criteria. Fetches your base resume from Google Docs and sends the resume plus job details to OpenAI to score relevance from 1–10 with a one-sentence rationale. For jobs scoring 7+, uses OpenAI to generate a personalized cover letter from the job description and your resume. For jobs scoring 8+, uses OpenAI to tailor your resume, saves it as a new Google Doc in your Drive folder, and makes the document publicly readable

by theworkflowdev
CW
free

Draft and review SEO WordPress articles with multi-agent LLMs and Slack

Quick overview This workflow accepts an article brief via webhook, routes it through a three-stage LLM pipeline to research, draft, and review HTML content, optionally generates a featured image with Google Imagen, then creates a WordPress draft post with tags and Rank Math SEO metadata and sends an optional Slack notification. How it works Receives a POST webhook request with a required prompt (and optional category, tone, and style overrides) and optionally validates a Bearer token. A researcher agent calls the LLM sub-workflow to produce a structured JSON outline, including title, H2 sections, tags, focus keyword, and image subject. Optionally starts the generation of a 16:9 featured image in parallel using Imagen 4 and the outline's image subject. The default option for whether this is enabled (set in CONFIG), can be overridden per run in the request prompt. Optionally fetches recent published WordPress posts and selects up to five relevant URLs to use as internal links. A writer agent drafts the full HTML article body based on the outline (and internal links), tone guide, and style guide from CONFIG. A reviewer agent edits the draft for voice, accuracy, and structure, then ret

by Triple 8 Labs
CW
free

Proxy OpenAI-style chat completions to Gemini with async webhooks

Quick overview This workflow exposes an OpenAI-compatible /v1/chat/completions endpoint in n8n that forwards requests (including optional file attachments) to a configurable LLM HTTP provider, supporting both synchronous replies and asynchronous processing via a callback URL. How it works Receives a POST request on /v1/chat/completions via a webhook, accepting JSON or multipart form-data with optional binary file uploads. Converts any uploaded files into OpenAI-style message content (images as image_url data URLs and other files as text entries) and merges them into the last user message. Prepares a job ID, extracts optional callback and provider override settings (URL and headers), and keeps the original request body for later use. If a callback URL is provided, immediately returns HTTP 202 with the job ID, then sends the request (without callback/provider fields) to the configured LLM provider endpoint. Formats the provider response (or error) into a completion payload with a status code and posts the result to the callback URL with job metadata. If no callback URL is provided, sends the request to the LLM provider synchronously and returns the provider response (or error) to the

by Ops Department
ACgmailgoogledrive
free

Send GitHub release audio newsletters with OpenAI, Google Drive, Gmail and Sheets

Quick overview This workflow triggers on a published GitHub Release, uses OpenAI to turn the release notes into a short spoken script and MP3, stores the audio on Google Drive, pulls subscribers from Google Sheets, and sends an HTML “listen” newsletter to them via Gmail. How it works Triggers when a GitHub Release is published for the configured repository. Parses and cleans the release changelog, extracting key items into features, fixes, improvements, and other notes. Uses an OpenAI chat model to rewrite the release details into a 60–90 second spoken script. Calls the OpenAI text-to-speech API to generate an MP3 audio file from the script. Uploads the MP3 to Google Drive and sets the file permissions to “anyone with the link can view.” Loads subscriber email addresses from Google Sheets, builds an HTML newsletter with the public audio link and release highlights, and sends it via Gmail using BCC. Setup Connect a GitHub credential with access to the target repo and replace YOUR_GITHUB_USERNAME and YOUR_REPO_NAME in the GitHub trigger. Add an OpenAI API credential for both the chat model step and the OpenAI TTS HTTP request. Connect Google Drive OAuth2 and replace YOUR_AUDIO_FOLDER

by isaWOW
ACgroqchatmodelW
free

Discover and score engineering candidates with Groq, GitHub, LinkedIn, Stack Overflow, HN and Supabase

Quick Overview This workflow exposes a POST webhook that turns a job description into a structured hiring brief using Groq, searches candidates across GitHub, LinkedIn (via Apify), Stack Overflow, and Hacker News, scores and summarizes the shortlist, optionally saves results to Supabase, and returns a JSON response. How it works Receives a candidate search request via a POST webhook and normalizes the payload into a consistent schema. Validates that the request includes a job description or structured criteria, and returns a 400 JSON error if it is invalid. Uses Groq (via LangChain) to extract structured job requirements, then builds a search brief with queries and limits for each source. Searches GitHub, LinkedIn via Apify, Stack Overflow, and Hacker News in parallel and normalizes each source’s results into a common candidate format. Merges all candidates, sanitizes and deduplicates the pool, and returns an empty 200 response if no candidates remain. Scores candidates with a deterministic evidence formula, filters by the configured score threshold, and builds a recruiter-facing JSON report. Uses Groq (via LangChain) to generate an AI shortlist summary, attaches it to the report,

by Prakash Software
CgmailW
free

Process Jellyfin media requests with Google Sheets, Radarr, Sonarr, and Gmail

Quick overview This workflow monitors a Google Sheets-based media request form and automatically routes requests to Radarr (movies) or Sonarr (TV shows) via their APIs, then emails the requester through Gmail once the matching title is added for download. How it works Triggers every 5 minutes when a new row is added to a specified Google Sheets worksheet. Checks the “Request Type” field and routes the request to either the movie (Radarr) path or the TV show (Sonarr) path. Searches Radarr or Sonarr for the requested “Title of Media” using the lookup API endpoint. Filters the lookup results in JavaScript to pick the best matching title, prioritizing English originals and (for TV) allowing exact-title matches to support dubbed/anime requests. Submits the selected movie or series to Radarr or Sonarr with a defined quality profile, root folder path, and an automatic search for downloads. Sends a Gmail notification to the email address from the Google Form submission confirming the request is being downloaded. Setup Connect Google Sheets credentials and set the Spreadsheet (documentId) and worksheet (sheetName) used by your Google Form responses. Add HTTP Header Auth credentials for Rada

by Aaron Mack
Cgmail
free

Send a daily RSS news digest email with Gmail

Quick overview Automatically combine any number of RSS feeds into one daily HTML email digest with deduplication and a configurable time window. How it works Runs daily on a cron schedule (default 8:00 AM). Generates a list of RSS feed URLs and digest settings (recipient email, lookback window, and max article count). Fetches the latest items from each RSS feed URL. De-duplicates articles, keeps only items published within the configured lookback window, sorts by publish date, and limits the list to the maximum article count. Stops if no articles remain after filtering to avoid sending an empty email. Builds an HTML email with the selected articles and sends it to the configured recipient using Gmail. Setup Add a Gmail OAuth2 credential and select it in the Gmail email-sending step. Update the recipient email address and RSS feed URLs in the configuration code, and optionally adjust HOURS_BACK and MAX_ARTICLES. Confirm or change the schedule cron expression to match your preferred send time, then activate the workflow. Requirements n8n Cloud or self-hosted n8n instance Gmail account with OAuth2 credentials configured in n8n Customization Add or remove RSS feed URLs in the Configure

by Precision Tech
ACtelegram
free

Generate dividend income reports via Telegram with Google Gemini

Quick overview This workflow listens for Telegram messages, validates the sender, parses an investment amount and risk strategy, builds a predefined dividend ETF/stock allocation, calculates estimated yield and income, and uses Google Gemini to format a concise portfolio report that it sends back in Telegram. How it works Triggers when a new Telegram message is received. Checks the Telegram chat ID against an allowlist to ensure only an approved user can run the workflow. Parses the message text into investment capital and a strategy (conservative, moderate, or aggressive) and sends a Telegram “typing” action while processing. Builds a strategy-based portfolio from predefined tickers and allocations, enriches each holding with preset dividend yield and risk values, and calculates invested amount plus monthly and annual income per holding. Aggregates the holdings into a single portfolio summary with total income and overall portfolio yield. Uses Google Gemini via an AI Agent prompt to generate a Telegram-ready report based strictly on the calculated portfolio data. Sends the formatted DividendIQ report back to the configured Telegram chat. Setup Create a Telegram bot with @BotFather

by Blukaze Automations
CWtelegram
free

Send a weekly Plausible analytics digest to Telegram chat

Quick Overview This workflow runs every Monday (or manually) to query Plausible Analytics for top pages, new referrers, and potential content decay, then formats a weekly digest and sends it to a Telegram chat. How it works Runs every Monday at 8:00 AM or starts on demand via a manual trigger. Sets the Plausible site ID, Plausible base URL, and the target Telegram chat ID. Queries the Plausible API for the last 7 days’ top pages and prepares a top-5 list by visitors. Queries Plausible for referrers for the last 7 days and the previous week, then identifies referrers that appear this week but not last week. Queries Plausible for per-page visitors for the last 7 days and for a week 4 weeks ago, then flags pages with significant traffic drops. Combines the insights into a Markdown message and sends the digest to Telegram. Setup Add a Plausible API key as an HTTP Bearer Auth credential and ensure the workflow points to your Plausible instance URL. Update the workflow variables with your Plausible site_id, plausible_url, and the destination telegram_chat_id. Add Telegram credentials and ensure the bot can post to the target chat (start a chat with the bot or add it to the group). Adjust

by Arminas B
BCsheets
free

Track expenses from phone notifications with Google Gemini and Google Sheets

Quick overview This workflow receives phone push notification through FlowTrigger mobile app, extracts the transaction amount and date, uses Google Gemini to categorize the expense and adds it to a Google Sheets transactions log. How it works Receives a POST webhook request containing a captured notification payload from FlowTrigger mobile app. Parses the notification data and skips the flow if no amount is detected in the notification payload. Sends the notification title and body to Google Gemini and parses a structured response with cleaned merchant name, expense category, reasoning, and ISO currency code. Appends the date, amount, category, currency, and merchant to a selected Google Sheets tab. Returns a success response with the saved fields, or an error response if the AI categorization or Google Sheets write fails. Setup Create and connect a Google Gemini API key credential for the Google Gemini Chat Model. Create and connect a Google Sheets OAuth2 credential, then set the Google Sheets Document ID and Sheet Tab Name in the Google Sheets append step. Activate the workflow, copy the Webhook production URL from the Webhook trigger, and paste it into FlowTrigger’s Notification

by FlowTrigger
ACsheets
free

Qualify Product Hunt leads with Google Gemini, Apify, and Google Sheets

Quick overview Youtube Video: https://youtu.be/h47YeiivZvs?si=V-S1X-ME5V24Tuch This workflow runs daily to pull the latest Product Hunt posts, qualifies them with Google Gemini, scrapes ICP-matching product websites with Apify to find emails, then writes the lead data to Google Sheets and creates contacts in GoHighLevel. How it works Runs every day on a schedule trigger. Queries the Product Hunt GraphQL API for the latest posts and iterates through each result. Resolves each product’s website redirect target, extracts a clean domain, and filters out blocked domains like app stores, social networks, and link aggregators. Sends the product name, tagline, and description to a Google Gemini–powered agent to score ICP fit and keeps only matches. Uses Apify to crawl each matched website and extract email addresses from the site content. Groups scraped results by domain, keeps only products with at least one email, and appends or updates a matching row in Google Sheets. Creates a GoHighLevel contact using the first email and stores any additional emails in a custom field. Setup Add Product Hunt OAuth2 credentials and ensure the GraphQL query in the Product Hunt request returns the fields

by iamvaar
ACgmailsheets
free

Extract meeting insights from transcripts with OpenAI, Google Sheets and ClickUp

Quick Overview This workflow collects a meeting transcript via an n8n Form, uses OpenAI (ChatGPT) to extract structured meeting intelligence, logs the results to Google Sheets, creates one ClickUp task per action item, and emails an HTML meeting brief via Gmail. How it works Receives a form submission containing the meeting title, date, participants, duration, and full transcript. Validates the input (including a minimum transcript length), calculates counts, and generates a unique meeting ID. Sends the meeting context and transcript to an OpenAI ChatGPT model to extract a strict JSON payload with summary, topics, decisions, action items, risks, follow-up date, and sentiment. Parses and normalizes the AI JSON output, then formats readable strings and metrics for reporting. Appends the full meeting record to a Google Sheets “Meetings” tab. Splits the extracted action items and creates a ClickUp task for each valid item, including owner, priority, and due date when provided. Sends a formatted HTML meeting brief to the configured team email address using Gmail. Setup Add an OpenAI credential in the OpenAI Chat Model node and select the model to use. Connect Google Sheets OAuth2, repla

by isaWOW
C
free

Solve image CAPTCHAs via webhook using CaptchaSonic

Quick overview This workflow exposes a POST webhook that accepts base64 CAPTCHA images and uses the CaptchaSonic community node to solve multiple CAPTCHA types (OCR, reCAPTCHA v2, AWS WAF, TikTok, Binance, and more), returning a standardized JSON response. How it works Receives a POST request on the captchasonic-solve webhook containing a JSON body with a type and required fields like image (base64) and sometimes question. Validates the request payload, checks required fields for the requested CAPTCHA type, and routes the request to the matching solver. Sends the image challenge to CaptchaSonic using the appropriate recognition operation for the selected type. Normalizes the CaptchaSonic result into a consistent JSON structure with success, type, solution, and a solvedAt timestamp. Returns the formatted solution to the original webhook caller, or responds with HTTP 400 and an error message if validation fails. Setup Self-host n8n and install the n8n-nodes-captchasonic community node. Create and select a CaptchaSonic API credential (API key from https://my.captchasonic.com) for the CaptchaSonic nodes. Activate the workflow, copy the production webhook URL for captchasonic-solve, and

by captchasonic
Cgmailsheets
free

Send daily product newsletters via Gmail and track events in Google Sheets

Quick overview This workflow sends a daily product newsletter from Google Sheets via Gmail and tracks opens, clicks, and unsubscribes through an n8n webhook, logging all events back to Google Sheets. How it works Runs every day at 08:00 (configured in the Schedule Trigger). Reads products from Google Sheets and keeps only rows whose send_date matches today. If there are products to send, builds an HTML newsletter with a per-campaign newsletter ID, tracked click URLs, a tracking pixel, and an unsubscribe link, and logs the newsletter contents to Google Sheets. Reads recipients and the unsubscribe list from Google Sheets, removes unsubscribed addresses, and personalizes the newsletter HTML for each recipient by inserting their email and the campaign ID into tracking links. Sends each personalized email via Gmail and appends a “sent” event to the Google Sheets tracking log. Receives open, click, and unsubscribe requests on a webhook endpoint, routes by event type, and logs the event to Google Sheets. For clicks and unsubscribes, filters likely bot/duplicate requests (user-agent checks and recent-event deduping), then redirects to the product URL or returns an unsubscribe confirmation

by Robin
Cgmailgoogledrivesheets
free

Detect duplicate Google Drive files and log results to Google Sheets

Quick overview This workflow manually scans a specified Google Drive folder for duplicate and near-duplicate filenames, appends the results to a Google Sheets log, and optionally sends a single Gmail notification when duplicates are found. How it works Runs when you click “Execute workflow” in n8n. Reads the target Google Drive folder ID from the configuration values and retrieves all files in that folder with key metadata (name, size, timestamps, link, and MIME type). Analyzes the file list to detect exact duplicates (same filename) and near-duplicates (common copy/version naming patterns) and assigns a recommended action such as KEEP, DELETE, or REVIEW. If duplicates are found, appends one row per flagged file to a Google Sheets tab and sends a single Gmail notification that the scan needs review. If no duplicates are found, appends a single “NONE FOUND” scan record to Google Sheets to maintain an audit trail. Setup Connect your Google Drive OAuth2 credentials so the workflow can list files in the target folder. Connect your Google Sheets OAuth2 credentials and set the spreadsheet ID in the configuration values, and ensure the target tab (for example, “Sheet1”) has matching colum

by Christine
ACsheets
free

Track Slack EOD updates and post executive summaries with Google Sheets and Gemini

Quick overview Youtube Video: https://youtu.be/AbkX2splTTg?si=LTHqLFIWQD4hAYsO This workflow collects end-of-day updates from team members in Slack, stores them in Google Sheets, and posts a concise executive summary back to Slack using Google Gemini. How it works Runs daily at 3pm, reads the team roster from Google Sheets, filters out people marked as on leave, and sends each active member an EOD update form in Slack. Receives Slack button/form submissions via a webhook, parses the interactive payload, and replaces the original message with a confirmation. Checks whether the submitted EOD date matches today’s date, and sends a private Slack alert to the owner if someone submits late. For on-time submissions, reads today’s entries from the EOD submissions Google Sheet, deduplicates by user and date, and appends the new submission to Google Sheets. Runs daily at 5pm, reads today’s submissions and yesterday’s “tomorrow plan” entries from Google Sheets and merges them per user. Aggregates the merged data, calculates attendance and expected submission counts from the team roster, and sends the dataset to Google Gemini to generate an executive summary. Posts the generated Slack-formatte

by iamvaar
Csheets
free

Find and log high-quality domain contacts with Tomba and Google Sheets

Quick overview This workflow runs on a schedule, pulls “Pending” company domains from Google Sheets, uses Tomba to find email addresses for each domain, filters for high-scoring personal contacts, logs the results to an enrichment sheet, and marks each processed domain as Done. How it works Runs on a schedule to check a Google Sheets “Company domains” tab for rows where the status is set to “Pending”. Processes the pending rows one domain at a time to avoid handling the whole list in a single run. For each domain, queries the Tomba API to retrieve up to 50 email addresses associated with the company domain. Filters the returned results to keep only personal emails with a quality score of 90 or higher and extracts key contact fields (name, email, position, company, domain). Appends the filtered contacts to a Google Sheets “Enrichment” tab. Updates the original domain row in Google Sheets to set the status to “Done” and continues with the next pending domain. Setup Connect Google Sheets credentials and update the spreadsheet and sheet references for both the source “Company domains” tab and the destination “Enrichment” tab. Add your Tomba credentials and ensure the domain input maps

by Zain Khan
ACWopenaichatmodel
free

Generate and send personalized client proposals with OpenAI, SendGrid, Slack, and Google Sheets

Quick overview This workflow accepts proposal requests via webhook or an hourly schedule, normalizes and validates the client data, uses OpenAI to generate a tailored proposal with pricing, then sends it via SendGrid, logs the request to Google Sheets, notifies a Slack channel, and returns a webhook response. How it works Receives a proposal request from a webhook POST (or runs hourly on a schedule) and maps incoming fields into a consistent client schema. Validates required fields, converts the budget to a number, and assigns a budget tier for pricing. If required data is missing, sends a SendGrid email to the requester listing the validation errors. Routes valid requests by client type (startup, enterprise, agency, nonprofit, or default) and applies conditional pricing and discounts to build line items and totals. Uses OpenAI (GPT-4o-mini) to generate a seven-section, personalized proposal based on the client details, project scope, template context, and pricing. Formats the generated proposal into a branded HTML email with an investment breakdown table. Sends the proposal via SendGrid, appends a tracking row to Google Sheets, posts a Slack notification, and returns a JSON succes

by Oneclick AI Squad
Ctelegram
free

Report daily workflow SLA metrics with the n8n API, data tables and Telegram

Quick overview This workflow runs daily, queries the n8n API for workflows and recent executions, calculates per-workflow success rate, error count and p95 runtime over a rolling window, detects stalled schedules, stores a snapshot in an n8n Data Table, and sends a change-aware fleet health report to a Telegram chat. How it works Runs once per day on a Schedule Trigger. Fetches all workflows and a capped set of recent executions from the n8n API. Calculates fleet and per-workflow metrics over a rolling window, including success rate, error count, p95 runtime, and last run time. Detects active scheduled workflows that appear overdue based on their Schedule Trigger interval and a configurable buffer. Loads the previous metrics snapshot from an n8n Data Table and compares it to the current snapshot to flag slowdowns, success-rate drops, newly stalled workflows, and recoveries. Saves the current snapshot back to the Data Table and sends a formatted report message to Telegram. Setup Create an n8n API key with scopes workflow:list and execution:list, save it as an n8n API credential, and select it in the two n8n API request nodes. Create an n8n Data Table named observability_history with

by Serhii Bondarenko
ACW
free

Book, reschedule and confirm WhatsApp appointments with Claude and Sheets

Quick overview This workflow receives WhatsApp messages via a Meta webhook, uses Anthropic Claude to detect booking intents and extract appointment details, writes updates to Google Sheets, and sends a confirmation or error reply back to the customer on WhatsApp. How it works Receives incoming WhatsApp messages through a Meta webhook endpoint and normalizes key fields like sender phone number, display name, message text, and timestamps. Filters out empty messages and sends the text to Anthropic Claude to classify the intent (book, reschedule, confirm, or unknown) and extract structured appointment details. Validates the request based on intent, including required fields and simple rules like weekday-only appointments and business hours. Appends a new row to the Google Sheets Appointments tab for valid bookings, or updates the appointment status/date/time in Google Sheets for reschedules and confirmations. Builds a personalized WhatsApp reply message describing the result (success, required missing details, or supported actions). Sends the reply back to the customer via the WhatsApp Cloud API and appends the interaction details to the Google Sheets ActivityLog tab. Setup Create a Me

by Oneclick AI Squad
Cgmailsheets
free

Manage inventory reorders with Google Sheets, Slack, and Gmail

Quick overview Youtube Video: https://www.youtube.com/watch?v=y0uCepHhwSA This workflow monitors inventory from Google Sheets on a schedule, calculates reorder quantities using vendor lead times, logs pending reorders back to Google Sheets, and posts grouped reorder requests to Slack, then sends vendor reorder emails via Gmail when an authorized Slack user approves. How it works Runs on a schedule and reads product inventory and vendor catalog data from Google Sheets. Calculates stock runway and a reorder quantity per product using recent sales and vendor average delivery time. Filters to only items that need reordering and aggregates reorder lines into a vendor-level request. Checks the existing reorder log in Google Sheets to avoid reordering items that are pending/sent or were completed within the last 14 days, then groups remaining items by vendor. Writes each vendor reorder request to a Google Sheets reorder log with status set to pending and posts a formatted restock notification to a Slack channel. Triggers on a Slack reaction event, verifies the reacting user matches the configured approver, extracts the Reorder ID from the Slack thread, and looks up the matching row in Goo

by iamvaar
CgmailW
free

Publish weekly SMB blog posts with Perplexity, Claude, Gemini, Supabase, and Gmail

Quick overview This workflow runs weekly to generate, research, write, illustrate, and publish a new blog post by combining Supabase (content + storage), Perplexity (topic + research), Anthropic Claude (writing), Google Gemini (cover image), and Gmail (notification). How it works Runs every Friday at 10:00 (cron: 0 0 10 * * 5). Fetches titles of already published posts from Supabase and builds a rotating topic focus that avoids repeating prior angles. Uses Perplexity to propose one fresh, SEO-relevant blog topic and then research it with trends, examples, and SMB-focused insights. Sends the topic and research notes to Anthropic Claude to write a complete post with title, excerpt, meta description, category, read time, and HTML body. Parses the generated text into structured fields, generates a slug, and prepares a published blog post record. Uses Google Gemini to generate a 16:9 cover image, uploads it to Supabase Storage, and attaches the public cover image URL to the post. Inserts the finished post into the Supabase blog_posts table with status set to published and emails the team via Gmail with the publication details. Setup Create a Supabase project with a blog_posts table and

by Pedro Olavarria
CsheetsW
free

Monitor negative customer reviews with an HTTP API, Google Sheets and Slack

Quick Overview This workflow polls your review API every 6 hours, filters for reviews rated 3 stars or lower, and posts an alert to a Slack channel for each negative review. How it works Runs every 6 hours on a schedule. Fetches the latest reviews from a configured HTTP endpoint. Filters the returned items to keep only reviews with a rating of 3 or below. Checks whether any negative reviews were found and stops if none exist. Posts each negative review to a selected Slack channel with the rating, author, and review text. Setup Provide a reviews API endpoint (and any required authentication) in the HTTP Request node. Connect Slack using an OAuth2 credential. Select the target Slack channel and adjust the rating threshold in the filter logic if you want a stricter or looser definition of “negative”.

by Redowan Ahmed Farhan
Cgmailsheets
free

Send appointment reminders from Google Sheets via Gmail and Slack

Quick Overview This workflow runs daily at 9:00, reads appointments from Google Sheets, emails next-day patients reminders via Gmail, and posts a reminder count to a Slack channel. How it works Runs every day at 9:00 using a schedule trigger. Reads all appointment rows from a specified Google Sheets worksheet. Filters the rows to keep only appointments whose Date matches tomorrow’s ISO date (YYYY-MM-DD). Sends a personalized reminder email for each remaining appointment using Gmail. Counts how many reminders are sent and generates a summary payload for tomorrow’s date. Posts the reminder count summary to a selected Slack channel. Setup Connect Google Sheets OAuth and set the target spreadsheet and sheet, ensuring columns like Patient, Email, Date, and Time exist. Ensure the Date values in Google Sheets are stored in a format compatible with the filter logic (ISO-style YYYY-MM-DD at the start of the field). Connect Gmail OAuth and update the sender account, subject, and message text as needed. Connect Slack OAuth and select the channel where the front desk summary should be posted.

by Redowan Ahmed Farhan