Back to Catalog
Sam Yassine

Sam Yassine

Automation Strategist | Intelligent Systems Design for Modern Businesses I help businesses streamline operations and unlock growth through smart automation and AI-powered workflows. From simplifying daily tasks to optimizing complex systems, I design solutions that are practical, scalable, and built to last.

Total Views14,103
Templates6

Templates by Sam Yassine

AI sales agent: WhatsApp, FB, IG, OpenAI, Airtable, Supabase auto-booking

This workflow automates multi-channel AI-driven sales engagement for lead qualification, service information delivery, and consultation booking. It integrates WhatsApp, Facebook Messenger, Instagram DM, and an n8n chat interface with a backend CRM (Airtable), a knowledge base (Supabase), and conversational AI (OpenAI), all orchestrated by n8n. Tools & Services Used Messaging Platforms: WhatsApp, Facebook Messenger, Instagram DM, n8n Built-in Chat AI Core & Processing: OpenAI (GPT-4o for main agent logic, Whisper for audio transcription) CRM & Data Management: Airtable (for initial WhatsApp lead lookup, lead form submissions, and as the backend for the crmAgent sub-workflow operations) Knowledge Base: Supabase (Vector Store for technicalandsales_knowledge tool) Chat Memory: PostgreSQL (for the main AI Agent's conversation history) Orchestration & Automation: n8n (Self-hosted, utilizing Langchain community nodes) Calendar Service: Integrated via the calendarAgent sub-workflow CRM Service: Integrated via the crmAgent sub-workflow (interacting with Airtable) Workflow Overview This automation performs the following steps: Trigger: A new interaction is initiated through one of the following channels: A new message is received via the WhatsApp Trigger. A new message is received via the Facebook Trigger (Webhook). A new message is received via the Instagram Trigger (Webhook). A new message is received via the n8n Chat Trigger. Alternatively, a new lead is submitted via the Airtable Form Submitted Webhook. Channel-Specific Ingestion & Pre-processing: For WhatsApp: The system attempts to find an existing lead in Airtable using the sender's phone number. Incoming messages are routed by the Handle Message Types switch: Text messages are passed to the Edit Fields - chat1 node to prepare input for the AI Agent, including any found lead information. Audio messages are processed: the WhatsApp Business Cloud node gets the media URL, the HTTP Request node downloads the audio, OpenAI transcribes it to text, and Edit Fields - chat2 prepares this transcribed text and lead information for the AI Agent. Unsupported message types trigger the Reply To User1 node to send a notification that the message type cannot be processed. For Facebook Messenger: The system responds to webhook verification (Respond to Webhook - facebook get) and acknowledges new messages (Respond to Webhook - facebook post). The If is not echo - facebook node filters out messages sent by the page. The Sales Agent Demo - typing_on node sends a typing indicator. The Edit Fields - facebook node prepares the message text, sender ID, and Facebook-specific context for the AI Agent. For Instagram DM: The system responds to webhook verification (Respond to Webhook - instagram get) and acknowledges new messages (Respond to Webhook - instagram post). The If is not echo - instagram node filters out messages sent by the business account. The Edit Fields - instagram node prepares the message text, sender ID, and Instagram-specific context for the AI Agent. For n8n Chat: The Edit Fields - chat node prepares the user's input and session information for the AI Agent. Input Aggregation for AI Agent: Processed data from all active messaging channels (WhatsApp text/audio, Facebook, Instagram, n8n Chat) is funneled through the No Operation, do nothing node to the main AI Agent. AI Sales Conversation & Tool Utilization: The AI Agent (using OpenAI Chat Model - GPT-4o, and Postgres Chat Memory) engages the user according to its system prompt, aiming to qualify them for Paint Protection Film (PPF), Ceramic Coating, or Window Tint. The AI Agent uses the technicalandsales_knowledge tool (which queries the Demo Supabase vector store via Embeddings OpenAI and OpenAI Chat Model1) to provide service details and answer questions. The AI Agent uses the crmAgent tool (a sub-workflow) to log contact details (Name, Email, service interest) and update opportunity statuses in Airtable. The AI Agent uses the calendarAgent tool (a sub-workflow) to book consultation appointments once preferred dates/times are provided. This occurs after contact details are logged in the CRM. Response Delivery: The AI Agent's final textual response is passed to the Switch node. The Switch node routes the response to the appropriate node for delivery on the original channel: Reply To User for WhatsApp. Facebook Graph API - Sales Agent Demo for Facebook Messenger. Instagram Graph API - smb.sales.agent.demo for Instagram DM. Output - chat for the n8n Chat interface. Airtable Form Submission Processing (Separate Branch): When the Airtable Form Submitted webhook receives data, the Airtable node fetches the full record. The Create Contact node creates a new contact in the Airtable 'Contacts' table. The Edit Fields - form node prepares data for a notification. The WhatsApp Business Cloud2 node sends a templated WhatsApp message to the lead, confirming their form submission.

Sam YassineBy Sam Yassine
7637

Automate AI phone booking & CRM updates with GPT-4, VAPI.ai, and GHL

Automate AI-driven appointment booking with phone call confirmations, real-time lead validation, CRM updates, and email notifications—powered by n8n, OpenAI, VAPI.ai, and GoHighLevel. Tools & Services Used GoHighLevel (CRM & appointment management) VAPI.ai (AI phone calls) OpenAI (GPT-4 for lead validation and post-call analysis) Email Service (transactional email notifications) n8n (Self-hosted required for Community Nodes) Workflow Overview This automation performs the following steps: Trigger: A new lead arrives via the GHL Webhook. Validation: OpenAI (GPT-4) checks lead quality and relevance. AI Phone Call: VAPI.ai initiates an automated call to confirm appointment details. Post-Call Analysis: OpenAI interprets the call result (booking_made=YES/NO). Conditional Actions: If YES: Updates GoHighLevel CRM and sends confirmation emails to the client and owner. If NO: Alerts the owner via email about the failed booking. Prerequisites Active accounts and API keys for: GoHighLevel (webhook setup) VAPI.ai (phone call API) OpenAI (GPT-4 access) Email service (e.g., SMTP, SendGrid, or Gmail) How to Use This Template Step 1: Import the Template Import the JSON into your self-hosted n8n instance (requires Community Nodes like @n8n/n8n-nodes-langchain). Step 2: Configure Credentials GHL Webhook: Replace YOURWEBHOOKID with your GoHighLevel webhook ID. OpenAI Nodes: Add your OpenAI API key (replace placeholder BxLbA94QZt0ifZsC). VAPI Call Node: Ensure the VAPI.ai endpoint (https://api.vapi.ai/call/phone) has valid API credentials. Email Nodes: Configure SMTP or API credentials for your email service. Step 3: Enable Disabled Nodes Activate the Post-call Analysis node if needed (disabled by default). Finding Your GHL Webhook ID In GoHighLevel, navigate to Automations → Webhooks. Create a new webhook and copy its unique ID into the GHL Webhook node. Initial Test Run Simulate a Lead: Manually trigger the GHL webhook with test lead data. Debugging: Verify OpenAI validates the lead. Check if VAPI.ai initiates a call (use a test phone number). Confirm CRM updates and emails are sent conditionally. Production Prep: Enable error-handling loops for failed calls. Adjust GPT-4 prompts for stricter validation. Use Cases Medical Clinics: Reduce no-shows with automated appointment confirmations. Salons/Spas: Streamline booking updates and client reminders. Consultants: Sync client meetings to CRM in real time. Disclaimer Requires self-hosted n8n (Community Nodes are unsupported on n8n Cloud). Test phone call and email nodes extensively before scaling.

Sam YassineBy Sam Yassine
1529

Create AI news videos with HeyGen avatars and auto-post to social media

Automatically generate short AI avatar videos based on trending news, then post them across social media platforms—fully automated using n8n, HeyGen, ChatGPT, and Blotato. Tools & Services Used: n8n (Self-hosted required due to Community Nodes) HeyGen (for creating AI avatar videos) OpenAI (for script and caption generation) Blotato (for social media distribution) Hacker News (for sourcing trending articles) Workflow Overview: This automation performs the following steps: Fetches trending news from Hacker News Generates a short script using ChatGPT Creates an AI avatar video with HeyGen Generates platform-specific captions Posts the content across social media with Blotato Prerequisites: Make sure you have active accounts and API keys for: HeyGen OpenAI Blotato How to Use This Template Step 1: Import the Template Open your self-hosted n8n instance Go to "Workflows" > "Create Workflow" Click the three dots (…) > "Import from File" Upload the downloaded JSON file Step 2: Configure API Keys Only two nodes need customization: Setup HeyGen: Add your HeyGen API key, avatar ID, and voice ID Prepare for Publish: Add your Blotato API key, account IDs, and page IDs Optional platforms like Pinterest and Bluesky are already disabled by default. Finding Your HeyGen Avatar & Voice IDs To customize the AI avatar video: Log into your HeyGen Dashboard Navigate to "Avatars" → choose or create an avatar → copy the Avatar ID Navigate to "Voices" → select a preferred voice → copy the Voice ID You can upload a custom avatar or voice if you have access to those features in your plan This allows you to align the video style with your brand’s tone and personality. Initial Test Run For your first run: Shorten the AI script in the prompt to 5 seconds Enable only one social media platform Adjust the wait time to 2 minutes to speed up testing Verify that the video is created and successfully posted Once successful, enable more platforms and scale your automation. Workflow Diagram: Use Cases Business owners automating daily content Creators scaling short-form video production Freelancers offering automation as a service Anyone building an AI-driven media workflow Disclaimer This workflow uses Community Nodes, which only function on self-hosted n8n instances. This workflow may not work on n8n Cloud without some modifications.

Sam YassineBy Sam Yassine
1522

AI-powered RAG Q&A chatbot with OpenAI, Google Sheets, Glide & Supabase

Automate AI-Powered RAG System with Contextual Q&A, Google Sheets Integration, and Glide Frontend—Powered by n8n, OpenAI, Supabase, and Google Apps Script. Tools & Services Used Glide (Frontend for user interactions) Google Sheets (Stores questions and answers) Google Apps Script (Forms + media upload handling) OpenAI (Embeddings + GPT-4 to rank and generate answers) Supabase (Optional for image hosting) n8n (Automation logic and backend glue) Workflow Overview This automation performs the following steps: Trigger: Webhook receives a user question from a Glide frontend. Fetch Data: Retrieves Q&A entries (and optionally, image URLs) from a connected Google Sheet. Rank Relevance: OpenAI Embeddings rank the relevance of stored questions to the new input. Top matches are passed to a GPT-4 prompt for answer generation. Generate Answer: GPT-4 creates a contextual answer using the best match. Optional: Includes media URL if attached to the matched answer. Response: Sends the formatted answer back to Glide frontend (text + optional image). Prerequisites Active accounts and API keys for: OpenAI (API key with GPT-4 and embedding access) Google Sheets (linked via Service Account or OAuth2 credentials) Glide App (with a form to submit questions) Supabase (optional, if hosting user-uploaded media) n8n Self-hosted (for community nodes and webhook access) How to Use This Template Step 1: Import the Template Upload the provided JSON into your self-hosted n8n instance. Requires installation of the Community Node: @n8n/n8n-nodes-openai-embeddings Step 2: Configure Credentials Webhook Trigger: Replace the Glide webhook URL with your actual endpoint from your app. Google Sheets Node: Set the spreadsheet ID and worksheet name to fetch your Q&A dataset. OpenAI Nodes: Insert your OpenAI API key. Confirm that both text-embedding-ada-002 (or similar) and gpt-4 are available. Supabase or Apps Script (Optional): Ensure image links are correctly formed in the Sheet. Step 3: Customize Prompts and Thresholds Update the OpenAI ranking prompt or similarity threshold in the Function or Code node. Tailor GPT-4 prompts to return concise or detailed answers based on your use case. Initial Test Run Simulate a Question: Trigger the Glide form with a sample question. Check n8n logs for: Matching score/ranking success Correct retrieval from Sheets GPT-4 answer generation Image URL handling (if enabled) Production Prep Add error-handling nodes for cases when Sheets are empty or GPT-4 fails. Set up logging via Google Sheets, Supabase, or external database. Rate-limit or debounce requests from Glide if needed. Use Cases Customer Support Portals: Offer instant Q&A with your business data. Internal Knowledgebase: Employees can query training manuals and SOPs. AI Concierge: Combine structured answers with friendly tone for guest interactions. Disclaimer Validate Glide form inputs before full deployment. Ensure your OpenAI and Google Sheets usage stays within quota limits.

Sam YassineBy Sam Yassine
1352

Automated SEO keyword & SERP analysis with DataForSEO for high-converting content

Overall Purpose: The workflow automates the process of gathering extensive keyword data for a "Main Keyword." It starts by reading initial parameters from a Google Sheets template, creates a new dedicated Google Sheet for the research, queries multiple DataForSEO API endpoints for different types of keyword information (related, suggestions, ideas, autocomplete, subtopics, SERP, and PAA), and populates the newly created Google Sheet with this data across various tabs. A "Master All KW Variations" sheet is also populated to consolidate various keyword types. Tools & Services Used: Google Sheets: As an input source for the main keyword and initial parameters (from a template). As the output destination for all collected keyword data, organized into multiple sheets within a new spreadsheet file. Google Drive: To create a new folder for each keyword research session. To copy the Google Sheets template into this new folder. DataForSEO API: The primary source for all keyword research data. Specific endpoints utilized: v3/dataforseolabs/google/relatedkeywords/live v3/dataforseolabs/google/keywordsuggestions/live (used for both "suggestions" and "ideas") v3/serp/google/autocomplete/live/advanced v3/contentgeneration/generatesub_topics/live v3/serp/google/organic/live/advanced (for SERP and People Also Ask data) Implementation Steps for Businesses: Define Core Business Keywords: Start with the primary products, services, or solutions the business offers. Regularly Run the Workflow: Schedule the workflow to run for new keywords or to refresh data on existing important keywords. Collaborative Review: Marketing, sales, and even product teams should review the generated Google Sheets. Marketing focuses on content ideas, SEO opportunities, and competitor SERP positions. Sales focuses on understanding customer questions (PAA, Autocomplete) to refine pitches. Integrate into Content Calendar: Use the insights to plan blog posts, articles, FAQs, and social media content. Update Sales Training: Share common customer questions and keyword insights with the sales team. Track & Measure: Monitor rankings for targeted keywords and the performance of content created based on this research to demonstrate ROI. By leveraging this automated workflow, businesses can save significant time on manual keyword research, gain deeper insights into their market and competitors, and ultimately create more effective sales and marketing strategies that drive growth.

Sam YassineBy Sam Yassine
1224

Multi-platform video publishing from Google Sheets to 9 social networks via Blotato API

This workflow automates the process of publishing content from a Google Sheet to multiple social media platforms using the Blotato API. It retrieves content details (caption and Google Drive video URL) from a Google Sheet, uploads the media to Blotato, and then distributes it to Instagram, Facebook, LinkedIn, TikTok, YouTube, Threads, Twitter, Bluesky, and Pinterest. It also includes a separate branch for generating and publishing an AI-created image to Pinterest. Tools & Services Used Content Source: Google Sheets (for captions, status, and Google Drive video URLs) Media Hosting: Google Drive (for source videos) Social Media Publishing API: Blotato API (for media upload and posting to all platforms) AI Image Generation: OpenAI (DALL-E for generating an image for Pinterest) Target Social Platforms: Instagram Facebook (Pages) LinkedIn TikTok YouTube Threads Twitter (X) Bluesky Pinterest Workflow Overview This automation performs the following steps: Trigger & Content Retrieval: The Schedule Trigger node initiates the workflow on a defined schedule (e.g., every interval). The Google Sheets node reads data from a specified sheet (Sheet1 of "Publish to 9 Social Platforms"). It filters for rows where the "Status" column is "Ready to Post" and returns the first match. This provides the caption and the Google Drive URL for the video content. The Get Google Drive ID node (a Set node) extracts the unique Google Drive file ID from the video URL obtained from the sheet. Configuration & Media Preparation for Blotato: The Setup Social Accounts node (a Set node) defines placeholders for the Blotato API key and various social media account IDs required by the Blotato API. These need to be manually filled with your actual credentials and IDs. The Upload to Blotato node (HTTP Request) uploads the video content to Blotato's media endpoint. It constructs the downloadable Google Drive URL using the extracted file ID and sends it to Blotato along with the API key. Blotato then fetches and stores the media, returning a Blotato media URL. Content Distribution to Social Platforms via Blotato (Parallel Branches from "Upload to Blotato"): The Blotato media URL (from the previous step) and the caption (from Google Sheets) are used to make individual POST requests to the Blotato API (/v2/posts) for each target platform. Each request is an HTTP Request node configured for a specific platform: [Instagram] Publish via Blotato (Disabled by default): Posts to the configured Instagram account. Publish to Facebook: Posts to the configured Facebook Page. Publish to LinkedIn: Posts to the configured LinkedIn account. Publish to Tiktok: Posts to the configured TikTok account, with specific privacy and feature settings. Publish to Youtube: Uploads the video as a public YouTube short/video with a title and notifying subscribers. Publish to Threads: Posts to the configured Threads account (caption sliced to 500 chars). Publish to Twitter: Posts to the configured Twitter (X) account (caption sliced to 280 chars). Publish to Bluesky: Posts text-only (no media URL used in the example body) to the configured Bluesky account (caption sliced to 280 chars). AI Image Generation & Pinterest Publishing (Separate Branch from "Upload to Blotato"): This branch demonstrates an alternative content type. The OpenAI node generates an image based on a prompt ("Image of a manatee staring in the mirror at its AI avatar") and returns image URLs. The Upload to Blotato - Image node (HTTP Request) takes one of these generated image URLs and uploads it to Blotato's media endpoint. The [Pinterest] Publish via Blotato node then posts this AI-generated image to the configured Pinterest account and board, along with the caption from the Google Sheet and a link.

Sam YassineBy Sam Yassine
839
All templates loaded