Quick Overview This workflow runs daily to compare procurement transactions in Google Sheets against an approved supplier list, flags unapproved (maverick) spend, uses Google Gemini to generate compliant alternatives, alerts reviewers via Slack and Gmail, logs violations back to Google Sheets, and escalates unresolved cases after two hours. How it works Runs every day at 11:00 AM on a schedule. Loads the approved supplier list and the latest transactions from Google Sheets and normalizes supplier names for consistent matching. Compares each transaction’s supplier against the approved list and flags transactions from unapproved suppliers as maverick spend. For approved suppliers, marks the transaction as processed in Google Sheets and ends. For maverick spend, sends the transaction details and the approved supplier list to Google Gemini to generate corrective recommendations and alternative suppliers. Formats the AI output with a timestamp, posts a Slack alert, and sends a detailed violation email through Gmail. Appends the violation details to a Google Sheets log, marks the transaction as processed, waits two hours, and then posts an escalation message to Slack.
Tags
Related workflows
See all AI Automation→Route WhatsApp support requests with Claude, Supabase, HubSpot and Slack
Quick overview This workflow turns incoming WhatsApp messages (text, audio, images, and documents) into actionable support interactions by extracting content, detecting sentiment, and using an AI agent with a Supabase knowledge base to route requests to Google Calendar, HubSpot, Slack, Gmail, and back to WhatsApp. How it works Receives incoming WhatsApp messages via a WhatsApp webhook trigger. Routes the message by type and converts it into text using OpenAI Whisper for audio, OpenAI GPT-4o Vision for images, or a PDF extractor for documents (or passes text messages through). Loads the sender’s session context from Supabase and runs sentiment/language detection on the extracted text. Uses a LangChain AI agent (Claude) with Supabase vector search (with OpenAI embeddings and Cohere reranking) plus tool access (Google Calendar, HubSpot, Slack, and Gmail) to produce a structured intent, response, and metadata. Logs conversation analytics (intent, sentiment, message type, and response length) to an n8n Data Table. Routes by intent to either create a Google Calendar event, create/update a HubSpot contact, email a document via Gmail (and upload it to Google Drive), create a HubSpot ticket
Score LinkedIn job matches with OpenAI, Google Sheets, Slack, and Apify
Quick overview Runs fetch_cat/linkedin-jobs-scraper daily to collect recent LinkedIn jobs, scores each listing against your candidate profile with OpenAI, saves qualified matches to Google Sheets, and sends the five strongest results to Slack without redelivering previously processed job IDs. How it works Runs on a daily schedule (or via manual trigger) and ensures an n8n Data Table exists to track which LinkedIn job IDs have already been delivered. Runs the FetchCat LinkedIn Jobs Scraper (fetch_cat/linkedin-jobs-scraper) through Apify's API using your configured keywords and location, waits for the Actor run to finish, and downloads up to 10 structured job records from its dataset. Normalizes the scraped job records, caps the list to 10 items, and skips any jobs that already exist in the delivery ledger. Sends the remaining jobs to OpenAI in one structured request to score each job against your candidate profile and filters out results below the minimum score. Appends or updates qualified matches in Google Sheets (upserting by LinkedIn job ID) and formats a Slack message containing the five highest-scoring jobs. Posts the digest to your chosen Slack channel and records the deliver
Post TikTok, YouTube Shorts and Instagram Reels with Airtable, OpenAI and Google
Quick Overview This workflow runs on a schedule, pulls the next publish-ready video from Airtable, uses OpenAI, Google Gemini, and CloudConvert to generate a transcript, title, description, tags, and hashtags, then uploads to YouTube Shorts, posts an Instagram Reel via Meta Graph API, and queues TikTok publishing via Google Sheets. How it works Runs on a schedule (or manually) and waits a random number of minutes to stagger posting. Searches Airtable for content marked Publish = true and Status = “In Publish Queue”, then selects a single record to process. Downloads the video, converts it to MP3 with CloudConvert, and transcribes the audio with OpenAI. Uses OpenAI and Google Gemini to extract a main keyword, generate a YouTube-optimized title, and create YouTube tags, hashtags, and a full YouTube description, then derives a shorter content-only caption for Instagram/TikTok. Uploads the video to tmpfiles.org to generate a direct file URL and updates the Airtable record with the generated metadata and set Status = “Published”. Uploads the video to YouTube with the generated title, description, and tags. Creates and publishes an Instagram Reel via the Meta (Facebook) Graph API after a