HTTP Request Workflows
59 Ergebnisse — ausschließlich quellenverknüpfte n8n-Referenzen
Create purchase orders from Google Sheets using Groq AI and Gmail
Quick overview This workflow runs every 15 minutes to read approved, new requisitions from Google Sheets, validate supplier and policy rules, call an LLM risk-assessment API via HTTP, then create a purchase order record, update requisition status, write audit logs, and notify the procurement team via Gmail. How it works Runs every 15 minutes on a schedule. Reads requisitions from Google Sheets and keeps only rows where ApprovalStatus is "Approved" and ProcessingStatus is "New". Looks up each requisition’s supplier in a Google Sheets supplier master sheet and merges the supplier details into the requisition. Stops processing for items that don’t meet the duplicate/eligibility criteria, and validates supplier status, contract status, compliance, and max spend limit. For validated requisitions, sends the requisition and supplier details to an LLM risk-assessment endpoint via HTTP and parses the JSON decision, risk score, and reason. Generates a purchase order number, appends the purchase order to a Google Sheets Purchase_Orders sheet, updates the requisition to "Processed", logs the outcome to an Audit_Logs sheet, and emails the procurement team via Gmail. For failed validations, appe
Send a daily AI-ranked news brief with Anthropic Claude and Gmail
Quick Overview This workflow runs every morning to fetch recent articles from 50+ curated RSS/Atom feeds, uses Anthropic Claude to rank and rewrite the most relevant items based on your interests, then sends a category-grouped HTML news brief to you via Gmail. How it works Runs daily on a schedule trigger. Reads your configured categories, interests, and look-back window, then expands them into a list of RSS/Atom feed URLs. Fetches each feed over HTTP and parses, tags, de-duplicates, and filters articles to keep only recent items within the time window. Sends the curated article pool to Anthropic Claude to remove noise, select the top stories across categories, rewrite headlines, and assign importance scores. Formats the ranked picks into an HTML brief grouped by category with links and one-line rationales. Emails the brief to your target address using Gmail. Setup Add an Anthropic API key and set it in the workflow configuration so the HTTP request to Anthropic can authenticate. Connect a Gmail account credential for sending email. Update the configuration values for categories, interests, delivery email address, and limits (hoursBack, perFeed, maxItems, topN). Adjust the schedule
Track competitor pricing changes with Google Sheets, OpenAI, and Gmail
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). Add Google Sheets OAuth credentials and set your spreadsheet
Create human-reviewed personalized PDFs from Stripe payments using OpenAI
Quick overview This workflow receives Stripe payment webhooks, looks up the customer’s order in Google Sheets, generates personalized HTML content with OpenAI, converts it to a PDF using PDFShift, then queues the request for human approval and delivers the final document via Gmail with Slack notifications. How it works Receives a Stripe payment notification via a webhook endpoint. Extracts payment details (event type, payment ID, customer email, amount, currency) and stops the main flow if the email is missing. Pulls order rows from Google Sheets and matches the order to the payer’s email. Sends the combined payment and order data to the OpenAI Chat Completions API to generate structured personalized content, then renders it into an HTML document. Converts the HTML to a PDF with PDFShift and sends the customer an acknowledgement email via Gmail. Appends the request to a Google Sheets “ReviewQueue” and notifies staff in Slack with instructions to approve via a separate webhook. When an approval webhook is received and marked approved, emails the final message to the customer via Gmail and updates the “ReviewQueue” status in Google Sheets. Setup Create and configure two webhook URLs
Analyze compliant documents with PromptLock Guard, Claude, and Google Sheets
Quick overview Screen contracts, intake forms, and reports for HIPAA, GDPR, and PCI data — plus always-on prompt-injection detection — before Claude summarizes them. Clean documents pass through, risky ones get flagged for review or blocked, and every document gets an audit row in a Google Sheet. How it works Receives a POST request to a webhook containing either a PDF upload or a JSON body with a text field. Extracts text from PDFs or uses the provided JSON text as-is. Sends the document text to PromptLock Guard to screen for regulated-data and prompt-injection risk, failing closed on screening errors. If the document is allowed or redacted, sends the cleaned text to Anthropic Claude and returns a structured JSON analysis in the webhook response. If the document is flagged, sends a Gmail notification email for human review instead of sending the content to the AI model. If the document is blocked (or screening is unavailable), returns a JSON webhook response indicating the block/unverified reason. Appends a per-document audit row (timestamp, action taken, risk score, and compliance status) to a DocAuditLog tab in Google Sheets. Setup Install the n8n-nodes-promptlock-guard communit
Recover Shopify abandoned carts and send weekly reports via Gmail and Sheets
Quick overview This template automates Shopify abandoned cart recovery with a 3-email Gmail sequence, tracks recoveries in Google Sheets via Shopify “order paid” webhooks, and sends a weekly HTML performance report every Monday using data aggregated from the same spreadsheet. How it works Receives a Shopify “checkout created” webhook, verifies the checkout includes an email address, and skips customers who already have an active recovery sequence logged in Google Sheets. Logs the abandoned checkout details to Google Sheets and waits one hour before checking Shopify Orders for a paid purchase by the same email. If no paid order exists, sends the first recovery email via Gmail and updates the Google Sheets row to mark Email 1 as sent. After another 23 hours, checks Shopify Orders again and, if still unpaid, sends the second recovery email via Gmail and updates Google Sheets. After another 48 hours, checks Shopify Orders again and, if still unpaid, creates a unique one-time Shopify discount (price rule + discount code) and sends the third email via Gmail, then stores the discount code and Email 3 status in Google Sheets. Receives a Shopify “order paid” webhook, looks up the customer i
Generate and email invoice PDFs from Google Sheets with PDFMunk and Gmail
Quick overview This workflow watches a Google Sheets order sheet for new invoice rows, generates a unique invoice number, appends the normalized record to another sheet, converts an HTML invoice into a PDF via PDFMunk, and emails the PDF to the client using Gmail. How it works Triggers when a new row is added to a specified Google Sheets worksheet. Maps the incoming columns (client details, item, quantity, price, due date, and status) into a standardized structure and generates an invoice number. Appends the invoice data, including the generated invoice number, into a second worksheet in Google Sheets. Builds an HTML invoice template and calculates totals from quantity and unit price. Sends the HTML to the PDFMunk API to generate a PDF link, then downloads the PDF file. Sends the invoice to the client via Gmail with the PDF attached. Setup Connect your Google Sheets OAuth credentials and select the correct spreadsheet and source/target worksheets for the trigger and append actions. Create a PDFMunk API key (or equivalent header auth) and add it as HTTP Header Auth credentials for the PDF generation request. Connect your Gmail OAuth2 credentials and confirm the email subject/body an
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
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
Triage and route support emails with Gemini, Gmail, Sheets and Slack
Quick Overview This workflow monitors unread Gmail support emails, uses Google Gemini to classify and summarize each message and draft a reply, logs the ticket details to Google Sheets, creates a Gmail draft response, and sends a Slack alert when the ticket is marked high priority. How it works Triggers every minute when a new unread email arrives in Gmail. Adds brand context and support guidelines, then builds a prompt that asks Google Gemini to return a JSON classification, priority, summary, and suggested reply. Sends the prompt to the Google Gemini API and parses the returned JSON into structured ticket fields. Appends the ticket details (sender, subject, category, priority, summary, and suggested reply) to a Google Sheets tab. Creates a Gmail draft reply in the original thread using the suggested response text. Sends a Slack message to a chosen channel when the ticket priority is high. Setup Connect credentials for Gmail, Google Gemini (PaLM) API, Google Sheets, and Slack. Update the brand name and support guidelines values used to guide Gemini’s response. Select the target Google Sheets spreadsheet and the “Tickets” sheet (and ensure your header columns match the fields you w
Handle NPS survey responses with OpenAI, Gmail, and Google Sheets
Quick Overview This workflow runs every 6 hours to read new NPS survey responses from Google Sheets, generates a personalized reply with OpenAI, and sends the email via Gmail. It then routes promoters, passives, and detractors for follow-up actions and marks each response as processed. How it works Runs on a schedule every 6 hours. Reads NPS responses from a Google Sheets tab and keeps only rows where Status equals "new". Validates required fields, parses the 0–10 NPS score, and classifies each response as Promoter, Passive, or Detractor. Sends the response context to OpenAI (Chat Completions) to generate a concise, personalized email body and builds a segment-specific subject line. Sends the personalized reply to the respondent using Gmail. For promoters, appends the comment as a quote to a separate Google Sheets testimonials tab and updates the original row’s Status to "Processed". For passives, updates the original Google Sheets row’s Status to "Processed", and for detractors, emails an alert to a support inbox via Gmail and then updates Status to "Processed". Setup Add credentials for Google Sheets, Gmail, and OpenAI in n8n. Replace YOUR_NPS_SHEET_ID with your Google Sheets doc
Handle NPS survey replies and routing with OpenAI, Gmail, and Google Sheets
Quick Overview This workflow runs every 6 hours to read new NPS responses from Google Sheets, uses OpenAI to draft a personalized reply, sends it via Gmail, routes respondents by NPS segment, logs promoter quotes back to Google Sheets, alerts support on detractors, and marks each row as processed. How it works Runs on a schedule every 6 hours and reads NPS response rows from a Google Sheets document. Filters the sheet to keep only rows where Status equals “new” to avoid reprocessing. Validates required fields, parses the 0–10 NPS score, and classifies each response as Promoter, Passive, or Detractor. Calls the OpenAI Chat Completions API to generate a warm, personalized email body based on the score segment and the customer’s comment. Sends the generated reply to the customer via Gmail and then routes the workflow by segment. For promoters, appends the customer comment as a quote to a “promoter-quotes” tab in Google Sheets and marks the original row as Processed; for passives, it marks the row as Processed. For detractors, sends an alert email to your support team via Gmail and then updates the original Google Sheets row status to Processed. Setup Create credentials for Google Shee
Create personalized videos from Google Sheets with iLoveVideoEditor and Gmail
Quick overview This workflow watches Google Sheets for new rows, renders a personalized video with iLoveVideoEditor using the row data, uploads the finished MP4 to Google Drive, writes the Drive link back to the same sheet row, and emails the link to the recipient via Gmail. How it works Triggers on a schedule when a new row is added to a specified Google Sheets worksheet. Skips rows where the Title field is empty. Starts a video render in iLoveVideoEditor from the cinematic-title template using the row’s Title and Subtitle as template variables. Polls iLoveVideoEditor every 60 seconds (up to 20 attempts) until the render status becomes completed, or stops early if the status becomes failed. When completed, downloads the MP4 from the render URL, uploads it to a specified Google Drive folder, and generates a shareable Drive view link. Updates the original Google Sheets row (matched by ID) with the Video URL and sends the Drive link to the row’s Email address via Gmail. If the render fails, times out, or errors, sends a failure alert email via Gmail with the row details. Setup Install the community node n8n-nodes-ilovevideoeditor (required for self-hosted n8n) and add your iLoveVideo
Draft personalized welcome emails for new signups with Twain, Gmail, and Slack
Quick overview This workflow receives new signup events, enriches each contact with Twain (and optionally a LinkedIn lookup), drafts a personalized welcome email in Gmail, and posts review-ready previews to Slack, with optional LinkedIn-step handoff to HeyReach. How it works Receives a new signup via a POST webhook secured with header authentication (with optional disabled schedule-based backfills from Google BigQuery or Google Firestore). Normalizes the signup fields (email, name, UID, timestamps, LinkedIn URL) and de-duplicates signups by UID across workflow executions. If the signup has no LinkedIn URL but does have an email, looks up a LinkedIn profile URL via Findymail (or other disabled provider alternatives) and merges the resolved profile back into the contact. If the contact has a usable work email or LinkedIn URL, calls the Twain Generate Sequence API to research the person and generate a personalized welcome sequence, otherwise posts a “skipped” notice to Slack. Builds a formatted draft payload and previews (email steps vs LinkedIn steps) from the Twain response, including any warning flags and a link back to the lead in Twain. If a work email is available, creates a Gma
Recover abandoned Shopify carts with Gmail, WhatsApp, and Slack alerts
Quick overview This workflow listens for Shopify checkout creations, waits 15 minutes, checks whether the checkout converted into an order, and if not sends a recovery message via Gmail and WhatsApp, while reporting any workflow errors to a Slack channel. How it works Triggers in Shopify when a checkout is created. Waits 15 minutes to give the customer time to complete the purchase. Calls the Shopify Admin Orders API to check whether an order exists for the checkout token. Stops if an order is found, indicating the cart converted. If no order is found, compiles the customer email, phone, cart item summary, discount code, and recovery URL from the Shopify checkout data. Sends a personalized recovery email through Gmail and a recovery message through WhatsApp using the same discount code and checkout link. If the workflow errors at any point, posts the error details to Slack for operational alerting. Setup Connect your Shopify Admin credentials for the Shopify trigger and ensure it can receive the checkouts/create topic. Configure the HTTP request to your store by replacing YOUR_STORE (or ensuring the checkout payload provides domain) and add Shopify Admin API authentication for /adm
Send gold-silver ratio opportunity alerts with GoldAPI and Gmail
Quick overview This workflow fetches live gold (XAU) and silver (XAG) prices from GoldAPI.io, calculates the gold-silver ratio, evaluates it against buy/hold thresholds, and sends a formatted opportunity alert email via Gmail. How it works Starts manually and loads configuration values such as the GoldAPI.io key, currency, alert email, and ratio thresholds. Requests the latest gold and silver prices from GoldAPI.io and extracts the numeric price values. Combines both price results and calculates the gold-silver ratio. Compares the ratio to the configured thresholds to decide whether to signal “buy silver”, “buy gold”, or “hold”. Generates a timestamped alert message with an insight and interpretation for the selected signal. Sends the full report (prices, ratio, signal, and explanation) to the configured recipient using Gmail. Setup Create a GoldAPI.io account, copy your API key, and paste it into the workflow configuration value used by the GoldAPI.io requests. Connect a Gmail OAuth2 credential in n8n and ensure the workflow can send email from your Gmail account. Set the recipient email address, currency code (for example, INR), and your buy-silver and buy-gold ratio thresholds i
Draft personalized pre-demo messages from demo bookings with Twain, Gmail, and Slack
Quick overview This workflow triggers on new demo bookings (webhooks or Google Calendar), uses Twain to research the prospect and generate a personalized pre-demo sequence plus an AE brief, drafts the email in Gmail, optionally queues LinkedIn steps in HeyReach, and posts everything to Slack for review. How it works Triggers when a demo booking is received via a webhook (generic, Chili Piper, or HubSpot) or when a new Google Calendar event is created. Normalizes the incoming booking payload into a consistent format, filters to demo meetings only, and de-duplicates repeat bookings across executions. If no LinkedIn URL is provided but an email exists, looks up a LinkedIn profile URL using Findymail and merges it back into the contact. If a usable work email or LinkedIn URL is available, calls the Twain API to generate contact research, an AE pre-demo brief, and a multi-step outbound sequence; otherwise it posts a “skipped” notice to Slack. Builds an email-ready draft (subject and HTML body) plus previews for email and LinkedIn steps from the Twain output. If a work email exists, creates a Gmail draft and posts the brief and draft preview to Slack (or posts a “no draft created” messag
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
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
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
Explain prescription PDFs for patients with GPT-4o-mini, Gmail and Google Sheets
Quick overview This workflow collects a patient’s prescription PDF via an n8n form, extracts its text, uses OpenAI (gpt-4o-mini) to generate a plain-language medicine-by-medicine explanation in the chosen language, emails the result via Gmail, and logs each processed prescription to Google Sheets. How it works Receives a form submission with the patient’s name, email, preferred language, optional doctor/health notes, and a prescription PDF upload. Extracts selectable text from the uploaded PDF. Validates required fields, checks that the PDF contains readable text, and truncates/cleans the extracted content for the AI prompt. Sends the prescription text and context to OpenAI Chat Completions (gpt-4o-mini) and requests a structured JSON explanation of each medicine in the selected language. Parses and validates the returned JSON, ensuring at least one medicine is found and merging the AI output with the patient context. Appends an audit row (date, patient details, doctor, medicine count, language, status, processed time) to a Google Sheets “Log” worksheet. Builds a formatted HTML email with the medicine explanations and disclaimer, then sends it to the patient using Gmail. Setup Add
Send railway queue predictions with OpenAI GPT-4o-mini, Gmail, and Google Sheets
Quick overview This workflow collects train trip details via an n8n Form, predicts station crowding and queue times with a rule-based algorithm, generates a short advisory with OpenAI, then emails a color-coded HTML alert via Gmail and logs each prediction to Google Sheets. How it works Receives a submission from an n8n Form containing the traveler’s train, station, date/time, class, e-ticket status, passenger count, and email. Calculates a crowd score, alert level, queue-time breakdown (platform, ticket counter, security, walking), and an optimal station arrival time using an in-workflow rules engine. Sends the prediction context to OpenAI Chat Completions (gpt-4o-mini) to generate a plain-text, under-120-word travel advisory. Combines the advisory with the prediction results and assigns alert colors and text based on the computed alert level. Builds a color-coded HTML email summarizing the recommended arrival time and queue breakdown. Appends the prediction details to a Google Sheets tab and sends the HTML alert email to the traveler via Gmail. Setup Add an OpenAI API credential for the HTTP request to https://api.openai.com/v1/chat/completions. Connect Google Sheets OAuth2 and r
Send AI study reports and spaced-repetition reminders via OpenAI, Sheets and Gmail
Quick overview This dual-trigger workflow logs daily study sessions from an n8n Form, analyzes them with OpenAI, stores results in Google Sheets, and emails a full coaching report via Gmail; it also runs daily at 7 AM to email each student revision reminders based on spaced-repetition dates. How it works Receives a study-session submission through an n8n Form. Validates the submitted fields and calculates spaced-repetition revision dates (Day+1, +3, +7, +14). Sends the session details to OpenAI Chat Completions and parses the returned JSON coaching analysis (score, feedback, plan, and quiz). Reads the existing Google Sheets Daily Log to find any prior sessions for the same student that are due for revision on the submitted date. Builds an HTML email combining the AI report, today’s revision-due items, and the new revision schedule, then appends the new session to Google Sheets. Sends the full daily study report to the student via Gmail. Runs every day at 7 AM, reads all Google Sheets logs, finds revision items due today per student, and emails each student a morning revision reminder via Gmail. Setup Add an OpenAI API credential and ensure the Chat Completions request is authorized
Process signed DocuSign contracts with Supabase, Claude, Stripe, Outlook and Gmail
Quick overview This workflow listens for DocuSign Connect envelope-completed events, looks up the related assessment in Supabase, updates contract and client records, sends a welcome email (optionally drafted with Anthropic), creates an onboarding session and invite, and for non-pilot clients creates a Stripe Checkout payment link and emails it. How it works Receives a POST webhook from DocuSign Connect and continues only when the envelope status indicates the contract is completed. Queries Supabase for the assessment record matching the DocuSign envelope ID and normalizes the returned data to a single assessment object. Updates the assessment in Supabase to mark the contract as completed, upserts a client record in Supabase, and calls an internal webhook to fetch the signed contract. Sends either a pilot welcome email or a standard welcome email via Microsoft Outlook, with the standard email body drafted by Anthropic and optionally logged to a separate cost-tracking workflow. Generates a resume token, creates an onboarding session in Supabase, waits 24 hours, then sends the onboarding questionnaire invite via Microsoft Outlook and emails an internal notification via Gmail. For non