Quick overview This workflow collects candidate applications via an n8n form, extracts text from uploaded PDF CVs, compares each CV to a job description stored in Google Sheets using Google Gemini (via OpenRouter), logs screening results back to Google Sheets, and creates a Gmail draft email for HR review. How it works Candidate submits the n8n-hosted form with their details and a PDF CV. Two operations run in parallel: CV text is extracted from the uploaded PDF, and the matching Job Description is fetched from Google Sheets using the role the candidate entered. Gemini Flash evaluates the CV against the JD and returns a structured recommendation: Strong Interview, Interview, Borderline, or Do Not Proceed, along with a score, matched skills, gaps, and a plain-text summary. The full screening record is logged to a Screening Results tab in Google Sheets. A Gmail draft is created for HR to review and send: a shortlist notification for Interview and above, a rejection for Borderline and below. Setup Open the Config node and fill in spreadsheet_id, jd_sheet_gid, results_sheet_gid, and company_name.
Tags
Related workflows
See all AI Automation→Answer customer questions on WhatsApp with OpenAI, Gmail, and Google Sheets
Quick overview This workflow answers incoming WhatsApp customer questions using an OpenAI-powered agent that reads your live website via HTTP requests, escalates unclear or sensitive cases to your support team via Gmail, and logs each conversation to Google Sheets. How it works Triggers when a new WhatsApp message is received. Loads configuration values (company name, website root URL, AI model, language rules, escalation email, and WhatsApp phone number ID) and extracts the customer phone number and message text. Ignores non-text WhatsApp updates (such as images, audio, and status messages). Uses OpenAI with conversation memory to navigate your website by listing links and fetching relevant pages, then generates a structured result containing an answer, escalation flag, sentiment, topic, and source URLs. If the agent marks the request as needing a human, sends an escalation email via Gmail to your support address with the customer details and the drafted reply. Sends the final plain-text reply back to the customer on WhatsApp. Appends the conversation details to a Google Sheets log. Setup Connect credentials for WhatsApp Trigger/WhatsApp Cloud API, OpenAI, Gmail, and Google Sheets
Triage Gmail and draft replies with GPT-5 Mini and Google Sheets
Quick overview This workflow watches your Gmail inbox for new unread emails, uses OpenAI (GPT-5 Mini) to classify each message by priority and category, logs the triage results to Google Sheets, and creates a Gmail draft reply only when the email needs a personal response. How it works Triggers every minute when a new unread email arrives in Gmail. Applies your configured preferences (name, role, categories, and drafting style) to guide the triage. Sends the email content to OpenAI (GPT-5 Mini) to return a structured priority, category, one-line summary, whether a reply is needed, and an optional draft reply. Appends or updates a row in Google Sheets with the email details and triage results. If the email needs a reply, creates a draft reply in Gmail in the same thread addressed to the original sender. Setup Connect your Gmail account (Gmail Trigger and Gmail Draft) and ensure the trigger is set to monitor unread mail as desired. Add an OpenAI credential and select the GPT-5 Mini chat model in the OpenAI node. Connect Google Sheets OAuth credentials, then set the target spreadsheet document ID and sheet name for the triage dashboard. Create a Google Sheet with columns for Date, Fro
Verify Japanese invoice registration numbers from Gmail using Gemini, NTA API, Sheets and Slack
Quick Overview This workflow monitors Gmail for unread invoice emails with PDF attachments, extracts invoice details with Google Gemini, verifies Japanese qualified invoice registration numbers against the National Tax Agency (NTA) Invoice Web-API, logs results to Google Sheets, and sends Slack alerts for invalid, missing, or inconclusive checks. How it works Polls Gmail hourly for unread emails matching “has:attachment invoice” and downloads the first attachment. Extracts text from the attached invoice PDF. Uses Google Gemini to parse the invoice text into structured fields such as the T-registration number, issuer name, invoice date, and amounts. Normalizes and validates the registration number to ensure it matches the required “T + 13 digits” format. If the format is valid, calls the NTA Invoice Web-API to verify the registration number and interprets the response as valid, invalid, or not found. Appends the invoice details and verification status to a Google Sheets worksheet. Routes the outcome by sending the appropriate Slack alert for invalid/not found/inconclusive results or marking the invoice email as read when the number is valid. Setup Connect your Gmail OAuth2 credentia