Skip to content
FlowHubFluxonLab

Marketplace

3.557 fertige Workflow-Dateien zum Download, plus 10.661 quellenverknüpfte n8n-Referenzen.

Cgmail
free

Generate and email PDFBolt template PDFs via Gmail webhook

Quick overview This workflow receives a POST webhook payload, validates required fields, generates a PDF from a published PDFBolt template using provided template data, emails the PDF as an attachment via Gmail, and returns a JSON success or 400 error response to the caller. How it works Receives a POST webhook request containing templateData and a recipientEmail. Validates the payload, builds a safe PDF filename, and prepares the email subject and message text. Returns a 400 JSON response when required fields are missing. Sends the validated templateData to PDFBolt to render a PDF from the specified published template and returns it as binary data. Emails the generated PDF attachment to the recipient using Gmail. Responds to the original webhook request with a JSON success message including the filename and recipient email. Setup Install the PDFBolt community node and add your PDFBolt API key credentials. Create and publish a template in PDFBolt, then paste the template ID into the PDFBolt node. Connect a Gmail account in n8n with permission to send emails. Activate the workflow, copy the production webhook URL, and configure your source system to POST a JSON body that includes te

von PDFBolt
ACWopenaichatmodel
free

Send daily AI-personalized cold emails with Google Places and OpenAI

Quick overview This workflow runs every morning to find local businesses via Google Places, pulls their website content to extract an email address, uses OpenAI to draft a personalised automation-focused outreach message, then sends it via SMTP while tracking contacts in an n8n Data Table. How it works Runs daily at 9:00 and sets the campaign parameters (rotating niche and city, sender details, daily send cap, and delay between emails). Searches Google Places for businesses matching the selected niche and location, then iterates through each returned place. Keeps only businesses with a website, fetches the website HTML, and extracts a likely contact email address plus a short text snippet. Filters out leads without an email and skips any email address already logged in the n8n Data Table. Limits the run to the configured daily cap and processes leads in batches. Uses OpenAI to generate a structured subject and body for a personalised cold email based on the business snippet and your campaign details. Sends the email via SMTP with your signature and unsubscribe note, logs the contact in the Data Table, and waits the configured delay before sending the next email. Setup Add credentia

von Harvey Kubath
AWopenaichatmodel
free

Create talking avatar TikTok videos with Seedance, OpenAI and Blotato

Quick overview This workflow generates a talking-avatar video from a portrait image using AtlasCloud Seedance 2.0, creates a TikTok-ready title with OpenAI, and publishes the resulting video to TikTok via Blotato. How it works Starts when you manually execute the workflow in n8n. Sends the image URL, script prompt, and video settings to AtlasCloud Seedance 2.0 to generate an image-to-video talking avatar. Waits for a configured interval and polls AtlasCloud for the generation status until it returns completed/succeeded. Extracts the generated video URL from the AtlasCloud response. Uses OpenAI to produce a single TikTok title (under 60 characters) based on the provided script prompt. Uploads the video to TikTok through Blotato using the generated title and the selected privacy level, marking the post as AI-generated. Setup Create an AtlasCloud API key and add it as an HTTP Header Auth credential, then select it in both AtlasCloud HTTP Request steps. Add an OpenAI API credential and ensure the OpenAI chat model is selected for the title-generation step. Add a Blotato API credential, connect your TikTok account in Blotato, and select the correct TikTok account in the publishing step.

von Dr. Firas
AWopenaichatmodeltelegram
free

Create Seedance 2 image-to-video clips for TikTok and YouTube with OpenAI

Quick overview This workflow listens for a Telegram photo message, uploads the image to AtlasCloud to generate a Seedance 2.0 image-to-video clip, uses OpenAI to create a short SEO title, then publishes the video to YouTube and TikTok via Blotato and sends a confirmation back to Telegram. How it works Receives a Telegram message containing an image and uses the caption as the video prompt. Uploads the image to AtlasCloud and starts a ByteDance Seedance 2.0 image-to-video generation job with the configured duration, resolution, aspect ratio, and FPS. Polls AtlasCloud at a set interval until the generation status is completed or succeeded. Sends the prompt to OpenAI to generate a single short, optimized title for the video. Publishes the rendered video URL to YouTube through Blotato using the generated title. Publishes the same video to TikTok through Blotato and sends a Telegram message with the title and video link. Setup Connect a Telegram bot credential and send photos with captions to the bot to trigger the workflow. Create an AtlasCloud API header-auth credential (Authorization: Bearer ) and select it in the AtlasCloud upload, generate, and status HTTP requests. Add an OpenAI A

von Dr. Firas
CWtelegram
free

Repost watermark-free TikTok videos to YouTube via Telegram and Blotato

Quick overview This workflow listens for a TikTok URL sent to a Telegram bot, downloads the source video file without a watermark, uploads it to Blotato, publishes it to YouTube (and optionally TikTok), and then sends a confirmation message back on Telegram. How it works Triggers when a Telegram bot receives a message containing a TikTok video URL. Fetches the TikTok video page over HTTP using a custom User-Agent header. Extracts the raw video playback URL and any required cookies from the page’s embedded JSON data. Downloads the video file directly from TikTok using the extracted URL and cookies. Uploads the downloaded video to Blotato as a media asset. Publishes the uploaded media to YouTube via Blotato with the configured caption, title, and privacy settings (and can also publish to TikTok if enabled). Sends a Telegram message to the original chat confirming the repost is complete. Setup Connect your Telegram bot credentials and start the workflow so the Telegram trigger can receive messages. Install and configure the Blotato community node, then add your Blotato API credentials. In Blotato, connect your YouTube account (and TikTok if you plan to enable it) and select the correc

von Dr. Firas
AChtmlW
free

Summarize Telegram-shared webpages with OpenAI GPT-4o

Quick overview This workflow listens for Telegram messages containing a URL, fetches and cleans the webpage content, summarizes it with an OpenAI chat model, and replies in the same Telegram chat with a formatted summary including key points and action items. How it works Triggers when a new Telegram message is received by your bot. Extracts the first http/https URL from the message text and captures the sender’s chat ID. If no valid URL is found, sends an error message back to the same Telegram chat. If a valid URL is found, fetches the webpage HTML and extracts the title and cleaned body text while removing common boilerplate elements. Truncates the extracted text to a configurable maximum length and sends the title, URL, and text to OpenAI to generate a structured JSON summary. Formats the JSON into Telegram HTML (title, source link, summary, key points, and insights/action items) and sends it back to the original chat. Setup Create a Telegram bot and add a Telegram API credential in n8n, then select it in both the Telegram Trigger and the send-message steps. Add an OpenAI API credential in n8n and select it for the OpenAI chat model used for summarization. Activate the workflow

von Dr. Firas
ACW
free

Triage network read and commit requests with Slack, Anthropic, and pyATS

Quick overview This Slack ChatOps workflow uses AI agents and a pyATS MCP server to handle day-to-day data network housekeeping tasks: from on-demand checks and validations per device, to configuration change proposals that require human approval before commit. Read the docs here: https://cs.co/9004BEMGZm How it works A network engineer mentions the Slack bot in a channel or thread. The workflow acknowledges the request and captures the full message The request is sent to a Planning Agent connected to pyATS through read-only MCP tools. The agent determines whether the user wants operational data or a configuration change, gathers live device evidence if needed, and evaluates whether the request is safe. If the request is operational only, or if the proposed change is unsafe, the workflow replies in the same Slack thread with a clear technical summary, including the relevant device findings or the reason why no change will be made. If the request is a safe configuration change, the workflow creates one approval card per target device. Each card shows the proposed change, the pre-check evidence collected from the device, and the safety rationale so the engineer can review exactly wha

von Poncho Sandoval
ACgroqchatmodelW
free

Send weekly Vercel analytics digest emails with Groq and SMTP

Quick Overview This workflow runs every Monday, pulls the last 7 days of Vercel Web Analytics data, uses Groq (Llama 3.3 70B) to generate an HTML summary, and emails a weekly digest via SMTP, with an automatic raw-stats fallback if the AI step fails. How it works Runs every Monday at 9:00 AM based on your n8n instance timezone. Builds the reporting window and key settings (Vercel project/team IDs, site name, sender, and recipient) and generates millisecond timestamps for the last 7 days. Calls the Vercel Web Analytics Query API to fetch total page views and unique visitors, then fetches the top 5 pages and top 5 referrer hostnames for the same time range. Consolidates the three Vercel responses into a single JSON report with calculated pages-per-visit and defensive handling for missing or empty data. Sends the report to Groq Llama 3.3 70B to produce a structured HTML digest with headline, metrics, top pages, traffic sources, and a single actionable insight. If the Groq request errors, generates a plain HTML “raw numbers” version of the digest instead. Sends the final HTML digest email via SMTP using the configured sender and recipient addresses. Setup Create a Vercel API token and

von Yash Kabra
BCgmailsheets
free

Triage Gmail and draft replies with Ollama, Telegram and Google Sheets

Quick Overview This workflow pulls unread Gmail messages, uses a local Ollama Llama 3.1 model to classify and extract action items, drafts a reply, and sends an approval request to Telegram before creating a threaded Gmail draft and logging the decision to Google Sheets. How it works Runs manually and fetches up to 10 unread emails from Gmail. Normalizes each email into a consistent structure (sender, subject, body, message ID, and thread ID) and classifies it with Ollama into urgent, action_needed, fyi, or spam. Continues only for emails classified as urgent or action_needed and marks all other categories as skipped. For actionable emails, uses Ollama to extract a task title and deadline and to draft a short professional reply as structured JSON. Sends the classification, extracted task/deadline, and draft reply to Telegram and waits for you to approve or decline. If approved, creates a Gmail draft reply in the original thread, adds a Gmail label (STARRED), and logs the approval/rejection plus details to Google Sheets. Setup Connect your Gmail OAuth2 credential and ensure it has permission to read messages, create drafts, and add labels. Install and run Ollama, pull the llama3.1:l

von Vonn
CgmailsheetsW
free

Track positive Instagram comment sentiment with OpenAI, Google Sheets, and Gmail

Quick overview This workflow runs twice daily to fetch recent Instagram post comments via the Instagram Graph API, uses OpenAI to classify sentiment, saves new positive comments to Google Sheets, and emails an HTML digest of the day’s positive comments to your team using Gmail. How it works Runs every day at 9 AM to fetch the most recent Instagram media posts from the Instagram Graph API. Pulls up to a set number of comments per post and enriches each comment with post context like the permalink. Sends each comment to OpenAI Chat Completions to classify it as POSITIVE, NEUTRAL, or NEGATIVE with a score. Filters to keep only non-empty comments classified as POSITIVE. Checks Google Sheets for an existing row with the same Instagram comment ID to prevent duplicates. Appends new positive comments to a Google Sheets tab for later reporting. Runs every day at 8 PM to read the saved rows from Google Sheets, build a formatted HTML summary for today, and send the digest email via Gmail. Setup Create a Facebook app with Instagram Graph API access and provide a long-lived access token plus your Instagram Business Account ID in the workflow’s configuration step. Add an OpenAI API credential fo

von isaWOW
Astructuredoutputparser
free

Triage support tickets with Claude Sonnet, Infini Analytics, and Slack

Quick overview Automatically triage incoming support tickets with an AI agent powered by Claude Sonnet. High-confidence responses are sent instantly, low-confidence cases escalate to a human on Slack, and every step is logged in Infini Analytics for full observability. How it works A webhook receives the incoming support ticket and generates a unique execution_id to correlate every event of this run. Infini Analytics logs a START event for the execution. An AI Agent (Claude Sonnet) reads the ticket, optionally queries a knowledge base data table, and drafts a response with a confidence score. The agent logs structured ticket data via a data table tool (Infini Analytics records this as an EVENT). An IF node checks the confidence: high-confidence tickets get an automatic reply and log an EVENT; low-confidence tickets escalate to a human on Slack and log a WARNING. Infini Analytics logs the final END event, or an ERROR event if any step failed along the way. Setup Import this workflow into your n8n instance and open it in the editor. Create an Anthropic credential with your Claude API key and select it in the AI Agent node Create an Infini Analytics credential with your Bearer Token,

von Raul
CsheetsW
free

Run a Telegram RAG support chatbot with OpenAI, Pinecone, and Google Sheets

Quick overview This workflow turns a Telegram bot into a multi-modal support chatbot that accepts text, voice, images, and PDFs, converts them to text, retrieves relevant knowledge from Pinecone using OpenAI embeddings, generates a grounded answer with OpenAI Chat Completions, and logs each conversation to Google Sheets. How it works Triggers when a new message is received by your Telegram bot. Detects whether the message is text, a voice note, a photo, a PDF document, or an admin-only /ingest command, and extracts the needed user and file identifiers. For voice, image, and PDF inputs, downloads the file from Telegram and converts it into text using OpenAI Whisper, OpenAI Vision, or PDF text extraction. Builds a single query text from the normalized input and creates an embedding with the OpenAI Embeddings API. Queries Pinecone for the top 3 most relevant knowledge base chunks and assembles them into a context block. Sends the query and retrieved context to the OpenAI Chat Completions API to generate an answer constrained to the provided knowledge. Sends the reply back to the user in Telegram and appends a conversation log row (including session ID and chunk count) to Google Sheets

von isaWOW
CgmailsheetsW
free

Track SIP goals with OpenAI ChatGPT, Gmail and Google Sheets

Quick Overview This workflow collects SIP and mutual fund details via an n8n Form, calculates goal and performance metrics, generates a personalized advisory using OpenAI, emails a color-coded HTML report via Gmail, and appends each submission to a Google Sheets log for ongoing tracking. How it works Receives an investor submission through an n8n Form with SIP, fund, and goal details. Calculates months invested, total invested, returns, an approximate CAGR, goal completion percentage, and an estimated monthly top-up needed to reach the goal. Sends the calculated metrics to OpenAI Chat Completions to generate a structured, plain-English advisory (including ELSS 80C context when applicable). Parses the AI response with a fallback advisory if parsing fails, and assigns colors for performance, returns, and goal progress. Builds a color-coded HTML email report with KPI cards, a goal progress bar, and the advisory sections. Appends the submission and calculated metrics to a Google Sheets “SIP Log” tab and emails the report to the investor via Gmail. Setup Add an OpenAI API credential and ensure the OpenAI Chat Completions endpoint is accessible from your n8n instance. Connect Google Shee

von Incrementors
ACopenaichatmodelxero
free

Create Xero AR/AP Markdown snapshots with optional OpenAI GPT summaries

Quick overview This workflow runs on a schedule to pull outstanding customer invoices and supplier bills from Xero, ranks the top 5 by amount due, and generates a Markdown AR/AP snapshot (optionally adding an OpenAI-based narrative summary). How it works Runs on a scheduled trigger (weekly by default). Sets report metadata and Xero invoice filters for receivables (ACCREC) and payables (ACCPAY) with AmountDue > 0. Fetches all matching authorised customer invoices and supplier bills from Xero. Normalizes dates and amounts, calculates days outstanding, sorts by amount due, and keeps the top 5 items for each list. Merges both lists and builds a Markdown snapshot with two tables and reporting notes. Outputs the final snapshot data (and, if enabled, sends the Markdown to OpenAI via an AI Agent to prepend a short AI summary). Setup Add a Xero OAuth2 credential and select the correct Xero tenant/organization ID used by the Xero nodes. Update the tenant/organization value in the snapshot settings (replace YOUR_XERO_TENANT_ID) and adjust the cadence label if needed. Configure the Schedule Trigger interval (weekly/monthly/quarterly/annual) to match your reporting rhythm. Optional: add an Open

von Kristian
CgmailsheetsW
free

Onboard employees and manage Slack access with Google Sheets and Gmail

Quick Overview This workflow automates HR onboarding by capturing new hires via a webhook, saving them to Google Sheets, emailing a Slack invite via Gmail, and notifying managers in Slack, then listening for Slack team_join events to add new hires to department channels and update onboarding status. How it works Receives a POST webhook request from an HR form with new employee details and validates required fields. Appends the employee record to a Google Sheets spreadsheet and assigns a department-based list of Slack channels plus a static Slack invite link. Sends the new hire a welcome email through Gmail containing their start details and the Slack workspace invite link. Sends a Slack direct message to a manager user with the new hire details and the channels they will be added to, then updates the Google Sheets row to “Invite Sent” with a timestamp and responds to the HR form. Receives Slack Events API requests for the workspace and replies to url_verification challenges or immediately acknowledges real team_join events within 3 seconds. Extracts the joining user’s Slack ID and email, looks up the matching employee row in Google Sheets, and resolves the department’s target chann

von Muhammed Umar
sheets
free

Draft LinkedIn posts from RSS feeds with OpenAI, Google Sheets and Slack

Quick overview This workflow runs daily at 7am, reads an RSS feed, uses OpenAI to score articles for niche relevance and draft LinkedIn posts, then appends approved candidates to a Google Sheets review queue and notifies a Slack channel. How it works Runs every day at 7:00 AM on a scheduled trigger. Reads items from the configured RSS feed and keeps only articles published in the last 24 hours. Limits the list to the first five recent articles to reduce processing volume. Uses OpenAI to score each article’s relevance (0–10) and generate an angle and hot take in structured JSON. Filters to only the articles with relevance scores of 7 or higher. Uses OpenAI to write a 120–180 word LinkedIn draft in your specified voice based on the article, angle, and hot take. Appends the draft and metadata to a Google Sheets “Drafts” tab and posts a notification to a Slack channel for review. Setup Add OpenAI credentials for both OpenAI nodes and customize the audience/beat and voice instructions in the prompts. Add a Google Sheets OAuth credential, set the spreadsheet ID, and ensure a “Drafts” sheet exists with matching columns (Date, Angle, Status, Relevance, Draft Post, Source Link, Source Title

von Operstead
free

Send personalized cold emails from Google Sheets with Claude MCP and Gmail

Quick overview This template turns a Google Sheet of leads into an outreach engine controlled by any MCP-compatible AI assistant, including Claude, ChatGPT,and others. Instead of manually drafting emails, you instruct the assistant to draft or send them through rotating Gmail accounts, while every action logs back to the sheet automatically How it works Receives a tool-call request from any MCP-capable assistant (Claude, ChatGPT, or others) via the MCP Server Trigger endpoint Reads all rows from a Google Sheets "Leads" tab so the assistant can find queued leads and avoid contacting anyone twice Creates a Gmail draft in one of several connected Gmail accounts, using the recipient, subject, and plain-text body the assistant provides Optionally sends the email immediately from one of the three Gmail accounts when the assistant provides the final recipient, subject, and body. Updates the matching row in Google Sheets with status, assigned account, sent date, and any error note, keeping the sheet as the single source of truth Setup Connect your Google Sheets OAuth credentials, then set the Spreadsheet document ID and the "Leads" sheet name in both the read and update nodes Connect Gmail

von mohsin amir
Cgmailgooglecalendargoogledocs
free

Triage Japanese freelance gig emails with Gmail, Gemini, Sheets, Drive, and Calendar

Quick overview This workflow monitors Gmail for Japanese side-gig inquiries, flags risky wording, and uses Google Gemini to extract details and score each request. It logs every opportunity to Google Sheets, then drafts an accept/clarify/decline reply and, for accepted work, creates a Drive folder, Docs templates, and a Calendar block. How it works Triggers every minute when a new Gmail message matching the configured Japanese inquiry search query arrives. Cleans and normalizes the email content, detects the likely source platform, and checks the subject/body for Japanese red-flag keywords to produce an initial risk score. Sends the normalized email plus freelancer settings to Google Gemini to extract structured project details, scores, red flags, and Japanese draft replies. Combines Gemini’s scores with keyword-based risk signals to decide accept/hold/decline, calculates a recommended minimum price from your hourly rate and minimum fee, and generates a project ID and safe project title. Appends the opportunity (scores, decision, red flags, and draft text) to a Google Sheets tracking spreadsheet. Routes by decision to create a Gmail draft for clarification questions (hold) or a pol

von uninc000
BWopenaichatmodel
free

Schedule YouTube Shorts to Pinterest with Apify, Gemini, and an OpenAI model

Quick overview This workflow receives YouTube Shorts webhook events, downloads the video via Apify, uses Google Gemini and an OpenAI-compatible chat model to generate Pinterest SEO metadata and choose a board, then schedules a Pinterest video pin through Zernio (Late) for publishing. How it works Receives a webhook request for YouTube PubSubHubBub verification and responds with the provided hub challenge. Receives a POST webhook event for a new YouTube video and extracts the title, video ID, channel ID, and video URL from the feed payload. Uses Apify to fetch and process the YouTube Short and returns a downloadable MP4 URL. Sends the video to the Google Generative Language (Gemini) API to generate an analysis used for Pinterest-focused metadata. Uses a LangChain LLM chain (with structured output validation) to produce a Pinterest-ready title, description, hashtags, and a board selection from a fixed list. Maps the selected board name to a Pinterest board ID and schedules the video post to Pinterest via the Zernio (Late) API. Setup Create the YouTube webhook/PubSubHubbub subscription and configure it to call this workflow’s webhook URL at the manga-monarch-webhook path for both veri

von Ghufran Barcha
Cgmailsheets
free

Extract and validate invoice data with Google Gemini and Google Sheets

Quick overview This workflow accepts an invoice file via an n8n chat trigger, uses Google Gemini to extract structured invoice data, validates it against an existing Google Sheets log, appends valid line items to the sheet, and sends a formatted confirmation or failure alert via Gmail. How it works Receives a chat message with an uploaded invoice document. Uses Google Gemini to extract the vendor, invoice number, date, total amount, and all line items as a clean JSON object. Converts the extracted JSON into per-line-item records, builds an HTML invoice summary for email, and loads existing rows from Google Sheets for comparison. Validates each item by checking for missing critical fields and whether the invoice number already exists in Google Sheets. If validation passes, appends each line item as a new row in Google Sheets and then prepares a summary of the inserted data. Sends a Gmail message with the formatted HTML invoice breakdown when processing succeeds, or sends a Gmail alert email explaining the validation failure. Setup Add Google Gemini (PaLM) API credentials and ensure the chat trigger allows file uploads so the invoice is available as binary input. Connect Google Sheet

von Yogyata Mantri
W
free

Score call audio and alert risky calls with Tyto and Slack

Quick overview This workflow receives a webhook when a call recording is ready, sends the audio URL to a self-hosted ai-coustics Tyto scoring API, and posts a Slack alert for risky calls before returning the scored JSON response. How it works Receives a POST webhook containing an audio_url and call_id for a completed call. Sends the audio URL and call ID to a self-hosted Tyto scoring endpoint via HTTP to retrieve a risk_score, band, and main degradation cause. Checks whether the returned band indicates a risky call (band equals "bad"). Posts a formatted alert to a selected Slack channel with the call ID, risk score, band, cause, and duration when the call is risky. Labels non-risky calls as OK. Returns the resulting JSON payload (including the Tyto scoring fields) as the webhook response for downstream storage or chaining. Setup Deploy and run a Tyto HTTP wrapper on a machine that has the ai-coustics Tyto SDK and a valid ai-coustics license key. Update the api_base_url value to point to your Tyto wrapper (for example, http://localhost:8000) and ensure the wrapper exposes a POST /score endpoint. Add a Slack credential in n8n and select the target channel for the alert message. Copy

von Pawel
sheetsW
free

Enrich LinkedIn leads with Unipile and Google Sheets

Quick overview Automatically search LinkedIn for prospects using Unipile's API, enrich each profile with full details, and sync leads into a Google Sheet CRM — runs daily on a schedule with rate limiting, deduplication, and error logging built in. How it works A daily Schedule Trigger fires at 08:00 and loads your search config — Unipile DSN, LinkedIn account ID, target keywords, and daily safety limits — into all downstream nodes. Unipile's Search API (POST /api/v1/linkedin/search) runs a keyword search across Classic, Sales Navigator, or Recruiter LinkedIn and auto-paginates via cursor up to a configurable page limit. Search results are split into individual profile items, de-duplicated by LinkedIn profile ID to prevent processing the same person twice across pages. A Limit node caps total profiles per run to protect your daily LinkedIn quota — Unipile recommends staying under 100 profile look-ups per account per day. Each profile is enriched with full details via GET /api/v1/users/{id}?linkedin_sections=*, processed in batches of 5 with a 3-second pause between calls to respect rate limits. A Set node maps the Unipile response to 12 clean CRM columns — name, headline, title, com

von Salman Mehboob
CWsupabase
free

Send monthly rent and sales market updates to Slack with Rentcast and Supabase

Quick overview Youtube Video: https://youtu.be/zJlncb1T074 This workflow runs monthly, checks Supabase for up-to-date real estate market records for a configured ZIP code, and either reports existing month-over-month rent and sale trends or fetches fresh market stats from the Rentcast API, upserts them into Supabase, and posts to Slack. How it works Runs on a monthly schedule and sets the target ZIP code to analyze. Queries Supabase for rental and sales market records for that ZIP code that are older than the start of the current month. If prior data exists, calculates the last 3 months of average rent and average sale price changes from Supabase history fields and posts a status summary to Slack (or alerts if comparisons are not possible). If no up-to-date data exists, requests the latest market statistics from the Rentcast markets API for the same ZIP code. Upserts the returned rental and sales metrics (including history) into Supabase tables for market_rentals and market_sales. Computes month-over-month changes from the newly fetched history and posts the formatted market update to Slack (or sends an error alert if insufficient data is returned). Setup Create/connect Supabase cr

von iamvaar
CWsupabase
free

Send monthly real estate market summaries to Slack with Supabase and Rentcast

Quick overview Youtube Video: https://youtu.be/zJlncb1T074?si=fnKE7SPh7I-JGdmx This workflow runs monthly for a configured ZIP code, checks Supabase for recent market rental and sales records, and either reports the existing stats or pulls fresh data from the Rentcast API, upserts it into Supabase, and posts a formatted market update to Slack. How it works Runs on a monthly schedule and sets the target ZIP code to analyze. Queries Supabase tables for rental and sales market records for that ZIP code that are older than the start of the current month. If existing data is found, calculates month-over-month changes from the stored history and posts a Slack update (or an admin error message if the history is insufficient). If no current data exists, fetches the latest rental and sales market statistics from the Rentcast Markets API. Upserts the fetched rental and sales statistics (including history and summary fields) into Supabase using the REST endpoint. Calculates month-over-month changes from the newly fetched history and posts a Slack market summary, or posts an error message if the data is incomplete. Setup Create a Supabase project with market_rentals and market_sales tables and

von iamvaar