Quick overview This workflow accepts proposal requests via webhook or an hourly schedule, normalizes and validates the client data, uses OpenAI to generate a tailored proposal with pricing, then sends it via SendGrid, logs the request to Google Sheets, notifies a Slack channel, and returns a webhook response. How it works Receives a proposal request from a webhook POST (or runs hourly on a schedule) and maps incoming fields into a consistent client schema. Validates required fields, converts the budget to a number, and assigns a budget tier for pricing. If required data is missing, sends a SendGrid email to the requester listing the validation errors. Routes valid requests by client type (startup, enterprise, agency, nonprofit, or default) and applies conditional pricing and discounts to build line items and totals. Uses OpenAI (GPT-4o-mini) to generate a seven-section, personalized proposal based on the client details, project scope, template context, and pricing. Formats the generated proposal into a branded HTML email with an investment breakdown table.
Tags
Related workflows
See all AI Automation→Analyze YouTube comments with OpenAI, Google Sheets, and Gmail
Quick overview This workflow monitors a Google Sheets list of YouTube video IDs, fetches video details and top comments from the YouTube Data API, analyzes the comments with OpenAI into structured sentiment and themes, emails an HTML report via Gmail, and writes the results back to Google Sheets. How it works Triggers every minute when a row in Google Sheets is added or updated. Reads the video ID and status from the row and continues only if the status is set to “Pending”. Calls the YouTube Data API to fetch the video’s metadata and the top comment threads for that video. Flattens the comment threads, calculates basic stats (comment count and average likes), and compiles a limited comment text block for analysis. If comments exist, sends the compiled comments and video title to OpenAI to generate a structured analysis (sentiment score, sentiment breakdown, themes, questions, feedback, insights, and summary). Builds an HTML email report from the structured results, sends it to the configured recipient with Gmail, and updates the Google Sheet row with the analysis fields; if no comments exist, marks the row as “No comments”. Setup Create or duplicate a Google Sheet with at least “Vi
AI: Summarize podcast episode and enhance using Wikipedia
The workflow automates the process of creating a summarized and enriched podcast digest, which is then sent via email. Note that to use this template, you need to be on n8n version 1.19.4 or later.
Handle WhatsApp sales inquiries with OpenAI, Pinecone, Google Calendar, and Slack
Quick overview This workflow handles inbound WhatsApp Business messages with an OpenAI-powered sales agent that uses Pinecone RAG for product answers and Google Calendar tools for scheduling, then either replies on WhatsApp or hands the conversation to Slack, with Slack-based error alerts. How it works Triggers on every inbound WhatsApp Business message and checks whether the payload contains a text body. Drops non-text messages (such as images or voice notes) and continues only with text conversations. Uses an OpenAI chat model with per-customer session memory to generate a concise sales reply and decide whether a human handoff is needed. Lets the agent query a Pinecone-backed product catalog via OpenAI embeddings to answer pricing, specs, and availability questions. Lets the agent check availability and book appointments in Google Calendar when the customer requests scheduling. Parses the agent’s HANDOFF flag and either posts the customer message plus draft reply to a Slack channel or sends the reply back to the customer on WhatsApp. Sends a Slack alert to an ops channel if any step in the workflow fails. Setup Connect WhatsApp Business Cloud credentials and set the WhatsApp Phon