{"product_id":"slack-pto-request-emoji-approval-automation-n8n-gemini-google","title":"Slack PTO Request \u0026 Emoji Approval Automation (n8n + Gemini + Google)","description":"\u003ch3\u003eAutomatically turn Slack PTO requests into Google Calendar approvals (with Gemini + emoji reactions)\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow captures employee PTO requests in \u003cstrong\u003eSlack\u003c\/strong\u003e, uses \u003cstrong\u003eGoogle Gemini (Generative Language API)\u003c\/strong\u003e to extract the requested dates and reason, checks \u003cstrong\u003eGoogle Calendar\u003c\/strong\u003e for conflicts, and then blocks the time on approval—triggered by an \u003cstrong\u003e✅ emoji\u003c\/strong\u003e reaction in the HR channel.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eDetects new PTO requests\u003c\/strong\u003e when the workflow is mentioned in Slack (for new PTO requests).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eExtracts date range + reason with Google Gemini\u003c\/strong\u003e from the mention text (start date, end date, and reason).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eChecks Google Calendar availability\u003c\/strong\u003e by looking for busy events during the requested date range and warns the requester in Slack if conflicts exist.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eCreates an approval request for HR\u003c\/strong\u003e by posting the request to an HR Slack channel with instructions to react with \u003cstrong\u003e✅\u003c\/strong\u003e, and logs the pending request in \u003cstrong\u003eGoogle Sheets\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eProcesses HR approvals\u003c\/strong\u003e when a reaction is added: validates the \u003cstrong\u003e✅\u003c\/strong\u003e reaction is in the HR channel and was added by the configured HR admin user.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eApproves in Calendar + updates status\u003c\/strong\u003e: finds the matching request in Google Sheets by the Slack message timestamp, creates an \u003cstrong\u003eall-day PTO event\u003c\/strong\u003e in Google Calendar, updates the request status to \u003cstrong\u003eApproved\u003c\/strong\u003e, and sends a confirmation back to the employee in Slack.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eHR teams that want PTO approvals without manual calendar checks or spreadsheet updates.\u003c\/li\u003e\n  \u003cli\u003eDistributed companies where employees submit PTO requests via Slack and HR approves using a quick emoji reaction.\u003c\/li\u003e\n  \u003cli\u003eSaaS operators running n8n who need an auditable workflow tracked in Google Sheets.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003en8n triggers\u003c\/strong\u003e: Slack app mention + Slack \u003ccode\u003ereaction_added\u003c\/code\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eAI extraction\u003c\/strong\u003e: Google Gemini via \u003cem\u003eGenerative Language API\u003c\/em\u003e (Google PaLM \/ Generative Language API).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eConflict checking\u003c\/strong\u003e: Google Calendar busy-event lookup and all-day PTO event creation.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eData tracking\u003c\/strong\u003e: Google Sheets logging and status updates (Pending → Approved) using Slack timestamps.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eCore nodes mentioned\u003c\/strong\u003e: if, set, slack, sticky note, http request, google sheets.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSetup highlights:\u003c\/strong\u003e connect Slack credentials for app mentions and reactions, configure the HR channel ID and HR admin user ID, and add Google Gemini credentials.\u003c\/p\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":45758759174323,"sku":"N8N-17772","price":49.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/M8cGhTpDDtGafVK4muR_L_7tAkKHsL.png?v=1785834881","url":"https:\/\/buyflowscripts.com\/products\/slack-pto-request-emoji-approval-automation-n8n-gemini-google","provider":"N8N Commerce","version":"1.0","type":"link"}