Quick Overview This workflow runs daily, checks competitor webpages listed in Google Sheets, compares the latest page text to the previous snapshot using OpenAI, stores the updated snapshot in Google Sheets, and emails a consolidated HTML change report via Gmail. How it works Runs every day at 9:00 AM on a schedule. Reads the list of competitor sites (Site ID, Site Name, URL) from a Google Sheets tab. Fetches each competitor URL and extracts the visible page text from the HTML body. Looks up the previous saved snapshot for the same Site ID in a Google Sheets “Snapshots” tab. Uses OpenAI (gpt-4o-mini) to compare previous vs current text and summarize pricing, plan, and campaign changes or return “No changes detected”. Saves the current page text and fetch timestamp back to Google Sheets (append or update by Competitor Site ID) and formats each result into an HTML table row. Aggregates all rows into a single HTML table and sends the daily report email through Gmail. Setup Create a Google Sheets file with a “Monitored Sites” tab (Site ID, Site Name, URL) and a “Snapshots” tab (Competitor Site ID, Last Fetched At, Page Text).
Tags
Related workflows
See all Gmail→Move data between JSON and spreadsheets
This workflow illustrates how to convert data from JSON to binary format and import JSON data or files into Google Sheets or local spreadsheets.
Screen, score and route job applicants with Gemini, Gmail, Sheets and Slack
Quick Overview This workflow runs daily to pull job applicants from Google Sheets, score each candidate against role requirements using the Google Gemini API, log results back to Google Sheets, and notify a Slack channel when an applicant meets or exceeds a minimum score. How it works Runs every day at 08:00 on a schedule. Reads applicant records from an “Applicants” tab in Google Sheets. Combines the job title, requirements, and each applicant’s resume text into a screening prompt. Sends the prompt to the Google Gemini API and requests a JSON response with score, verdict, strengths, gaps, and summary. Parses the returned JSON and normalizes the screening fields (score, verdict, strengths, gaps, and summary). Appends the screening result for every applicant to a “Screening” tab in Google Sheets. Posts a formatted message to a Slack channel when the applicant’s score is greater than or equal to the configured minimum score. Setup Connect credentials for Google Sheets OAuth, Google Gemini (PaLM) API, and Slack OAuth. Select your Google Sheets spreadsheet and ensure it has an “Applicants” sheet with fields like Name, Email, and Resume/ResumeText, plus a “Screening” sheet to store resu
Monitor crypto news risk with CoinDesk RSS, OpenAI, Gmail, and Google Sheets
Quick overview This workflow polls the CoinDesk RSS feed every 10 minutes, filters for crypto-related stories, checks Google Sheets to avoid duplicates, uses OpenAI to score and summarize risk, logs results to Google Sheets, and sends Gmail alerts when the risk priority is HIGH or MEDIUM. How it works Polls the CoinDesk RSS feed every 10 minutes and retrieves the latest articles. Extracts each article’s title, description, link, and publish date, generates an article ID, and filters to only crypto-relevant items using a keyword match. Checks a Google Sheets “Seen Articles” tab to skip any article IDs that have already been processed. Sends the article text to the OpenAI Chat Completions API to return a JSON risk assessment including summary, coins, risk level, score, and recommended action. Parses the OpenAI response, normalizes the risk level into a HIGH/MEDIUM/LOW priority, and appends the article ID to the “Seen Articles” tab and the full analysis to a “Risk Log” tab in Google Sheets. Sends a formatted Gmail alert email for articles marked HIGH or MEDIUM priority. Setup Add an OpenAI API credential (OpenAI API) for the HTTP request to the Chat Completions endpoint. Create a Goog