by Joachim Brindeau
What it does The workflow is a simple yet efficient way to automate the process of indexing your website on Google using the Google Indexing API. How it works It works by extracting information from your sitemap, converting it into a JSON file, and looping through each URL to submit it for indexing. Here's a brief rundown of the workflow: The workflow can be triggered manually via the "Execute Workflow" button or scheduled to run at a specific time using the "Schedule Trigger" node. The sitemap of your website is fetched using the "sitemap_set" node with a HTTP Request to the sitemap URL. This XML sitemap is then converted into a JSON file using the "sitemap_convert" node. The "sitemap_parse" node splits the JSON file into individual URLs. The "url_set" node then prepares each URL to be sent to the Google Indexing API. A loop is created using the "loop" node to process each URL individually and make a POST request to Google Indexing API indicating that the URL has been updated. If the POST request is successful and the URL has been updated, the workflow waits for 2 seconds before moving to the next URL. In case the daily limit for the Google Indexing API is reached (200/day by default), an error message is triggered using the "Stop and Error" node. Before you use the workflow Activate the indexing API Create an account with Google Cloud Platform > Console and then create a new project Search for the Indexing API in the Library Activate the API Create a Service Account and get credentials Open the Service accounts page. If prompted, select a project. Click add Create Service Account, enter a name and description for the service account. You can use the default service account ID, or choose a different, unique one. When done click Create. On the Grant users access to this service account screen, scroll down to the Create key section. Click add Create key. In the side panel that appears, select the JSON format Click Create. Your new public/private key pair is generated and downloaded to your machine. Open the file and copy the private key. Add the credentials in the url_index node Add the user as owner of the site Beware, for each site you need to add the user as a owner like this: Set your sitemap Open the sitemap_set node and add the url to your sitemap. Now you should be able to ensure that Google is always up-to-date with the latest content on your website, improving your website's visibility and SEO rankings, have fun!
by David Olusola
๐จ AI Image Editor with Form Upload + Telegram Delivery ๐ Whoโs it for? ๐ฅ This workflow is built for content creators, social media managers, designers, and agencies who need fast, AI-powered image editing without the hassle. Whether you're batch-editing for clients or spicing up personal projects, this tool gets it done โ effortlessly. What it does ๐ ๏ธ A seamless pipeline that: ๐ฅ Accepts uploads + prompts via a clean form โ๏ธ Saves images to Google Drive automatically ๐ง Edits images with OpenAIโs image API ๐ Converts results to downloadable PNGs ๐ฌ Delivers the final image instantly via Telegram Perfect for AI-enhanced workflows that need speed, structure, and simplicity. How it works โ๏ธ User Uploads: Fill a form with an image + editing prompt Cloud Save: Auto-upload to your Google Drive folder AI Editing: OpenAI processes the image with your prompt Convert & Format: Image saved as PNG Telegram Delivery: Final result sent straight to your chat ๐ฌ Youโll need โ ๐ OpenAI API key ๐ Google Drive OAuth2 setup ๐ค Telegram bot token & chat ID โ๏ธ n8n instance (self-hosted or cloud) Setup in 4 Easy Steps ๐ ๏ธ 1. Connect APIs Add OpenAI, Google Drive, and Telegram credentials to n8n Store keys securely (avoid hardcoding!) 2. Configure Settings Set Google Drive folder ID Add Telegram chat ID Tweak image size (default: 1024ร1024) 3. Deploy the Form Add a Webhook Trigger node Test with a sample image Share the form link with users ๐ฏ Fine-Tune Variables In the Set node, customize: ๐ Image size ๐ Folder path ๐ฒ Delivery options โฑ๏ธ Timeout duration Want to customize more? ๐๏ธ ๐ผ๏ธ Image Settings Change size (e.g. 512x512 or 2048x2048) Update the model (when new versions drop) ๐ Storage Auto-organize files by date/category Add dynamic file names using n8n expressions ๐ค Delivery Swap Telegram with Slack, email, Discord Add multiple delivery channels Include image prompt or metadata in messages ๐ Form Upgrades Add fields for advanced editing Validate file types (e.g. PNG/JPEG only) Show a progress bar for long edits โก Advanced Features Add error handling or retry flows Support batch editing Include approvals or watermarking before delivery โ ๏ธ Notes & Best Practices โ Check OpenAI credit balance ๐ผ๏ธ Test with different image sizes/types โฑ๏ธ Adjust timeout settings for larger files ๐ Always secure your API keys
by Bazhard
TOTP Validation with Function Node This template allows you to verify if a 6-digit TOTP code is valid using the corresponding TOTP secret. It can be used in an authentication system. The inputs need to be: a base32 totp secret (String) a 6 digits code (String) ++Important:++ The 6-digit code must be in text format. If the code starts with zeros and is treated as a number, it could cause validation issues. The function node will generate a 6-digit code from the TOTP secret, then compare it with the provided code. If they match, it will return 1 otherwise, it will return 0. Example usage: You retrieve the user's TOTP secret from a database, then you want to verify if the 2FA code provided by the user is valid. Setup Guidelines You only need the ==TOTP VALIDATION== node. You will need to modify lines 39 and 40== of the node with the correct values for your specific context. Testing the Template You can define a sample secret and code in the EXAMPLE FIELDS node of the template, then click "Test Workflow". If the code is valid for the provided secret, the flow will proceed to the true branch of the IF CODE IS VALID node. Otherwise, it will go to the false branch.
by David Roberts
The built-in Gmail node doesn't yet support embedding images within the body of the email, but you can pull this off using the HTTP node, and this template shows you how. Requirements A Gmail account How it works The workflow downloads an image, converts it into the format that the Gmail API expects (base64), packages it into a multipart MIME email and uses the HTTP node to send it.
by Jay Hartley
What this workflow does This workflow allows you to monitor multiple Github repos simultaneously without polling due to use of Webhooks. It programmatically allows for adding and deleting of repos to your watchlist to make management convenient. Description Can monitor multiple repos simultaneously. Programmatically register or unregister repos from a list. No need for manual work. Webhook notification means no constant polling necessary. Setup 1. Creating Credentials on Github Generate a personal access token on github by following these esteps; Right hand side of page -> Settings -> scroll to bottom -> Developer Settings > Personal Access Token > Tokens (classic) > Generate New Token Give scopes: admin:repo_hook repo (if you want to use it for your own private repo) if you need more help, see here: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens 2. Setting Credentials in n8n In Register Github Webhook Authenticaion > Generic Credential Type Generic Auth Type > Header Auth Header Auth > Create New Credential with Name set to 'Authorization' and Value set to 'Bearer '. (You can reuse this for Delete Github Webhook and Get Existing Webhooks). Now in Register Github Webhook, scroll down to Send Body > JSON and inside the JSON, change the value of "url" to the webhook address given as Production URL in the node Webhook Trigger. 3. Notification settings In the third row, link up the Webhook Trigger to any API of your choice. Slack and Telegram are given as examples. You can also format the notification message as you wish. Setup time: roughly 10 minutes. Instructions Video: https://vimeo.com/1013473758 Test 1. Register Webhooks In Repos to Monitor, add any repo you want to monitor changes for. Disable Webhook Trigger, Click Test Workflow and if your Github credentials were set correctly, it will automatically register the webhooks. - You can test this by running the single node Get Existing Webhook and confirming it outputs the repo addresses. 2. Handle Github Events Now that you have registered the webhooks, re-enable Webhook Trigger and activate the workflow. Make a commit to any of the registered repos. Confirm that the notification went through. That's it!
by Ferenc Erb
Use Case Automate chat interactions in Bitrix24 with a customizable bot that can handle various events and respond to user messages. What This Workflow Does Processes incoming webhook requests from Bitrix24 Handles authentication and token validation Routes different event types (messages, joins, installations) Provides automated responses and bot registration Manages secure communication between Bitrix24 and external services Setup Instructions Configure Bitrix24 webhook endpoints Set up authentication credentials Customize bot responses and behavior Deploy and test the workflow
by Nick Saraev
Smart Invoice Collection System with OpenAI, Gmail & Google Sheets Categories: Financial Automation, AI Business Tools, Cash Flow Management This workflow creates an intelligent invoice collection system that automatically follows up on overdue invoices using AI-powered personalization. The system monitors your invoice database, analyzes email history to prevent inappropriate follow-ups, and sends increasingly urgent but professional reminders at precise intervals. Built to solve one of the biggest cash flow killers for small businesses, this automation can easily generate an additional $10-15K per year in recovered payments. Benefits Automated Cash Flow Recovery** - Generate $10-15K annually in previously forgotten invoice payments Intelligent Timing** - AI analyzes email history to prevent sending follow-ups at inappropriate times Escalating Urgency** - Four template levels from gentle reminders to firm collection notices Professional Communication** - Maintains business relationships while ensuring payment Zero Manual Work** - Complete automation from overdue detection to email delivery High-Value Service** - Easily sold to clients for $1,500-3,000 per implementation How It Works Invoice Monitoring System: Connects to Google Sheets containing your invoice database with sent dates and client information Automatically calculates days overdue using date difference calculations Filters invoices to process only those at specific intervals (7, 14, 21, 28 days overdue) Runs on schedule (daily recommended) to catch invoices as they become overdue Email History Intelligence: Retrieves recent email conversations with each client using Gmail integration Analyzes communication patterns to identify recent discussions about invoices Prevents sending follow-ups within 72 hours of relevant email conversations Aggregates email threads with timestamps for comprehensive context analysis AI-Powered Follow-up Generation: Uses OpenAI to analyze conversation history and determine follow-up appropriateness Selects appropriate template based on days overdue and escalation schedule Generates personalized emails that reference specific client names and invoice details Adapts tone from friendly reminders to more urgent payment requests over time Professional Email Delivery: Creates properly formatted emails with personalized subject lines and content Maintains professional tone while applying appropriate urgency levels Includes clear next steps and payment instructions for clients Optionally creates drafts for review or sends automatically based on your preference Smart Template Escalation: 7 Days:** Gentle reminder with helpful tone ("Hope you're well, just checking on that invoice") 14 Days:** Professional follow-up with assistance offer ("Here to help if anything's unclear") 21 Days:** More direct approach with specific timeline expectations 28 Days:** Firm but professional final notice before escalation Required Google Sheets Setup Create a Google Sheet with these exact column headers: Invoice Tracking Sheet: Client Name - Full name of client/company for personalization Email - Client's email address for follow-up communications Date Sent - Date invoice was originally sent (format: YYYY-MM-DD) Invoice ID - Unique identifier for tracking and reference Amount - Invoice amount (optional, for internal tracking) Status - Payment status (Pending, Paid, Overdue - optional) Setup Instructions: Create Google Sheet with exact column headers listed above Populate with your outstanding invoice data Connect Google Sheets OAuth credentials in n8n Update the Google Sheets document ID in the "Google Sheets" node Configure Gmail OAuth for email access and sending Set schedule trigger for daily execution (recommended 9 AM business hours) Template Customization: The system includes 4 pre-written templates that you can customize: Modify sender name and signature in the AI prompt Adjust urgency levels and escalation timing Customize company-specific language and policies Add payment links or specific instructions Business Use Cases Service-Based Businesses** - Agencies, consultants, and freelancers with NET30/60 payment terms B2B Companies** - Businesses with recurring invoice cycles and multiple clients Accounting Firms** - Offer automated collections as a premium service to clients Small Business Owners** - Eliminate manual follow-up work while improving cash flow Automation Agencies** - High-value service offering with clear ROI demonstration Professional Services** - Lawyers, architects, and consultants with project-based billing Revenue Potential This system transforms invoice collection economics: $10-15K annual recovery** for average small business with forgotten invoices $1,500-3,000 implementation fee** when sold as a service to clients 40-60% reduction** in accounts receivable aging Zero ongoing labor costs** - replaces hours of manual follow-up work Improved client relationships** - consistent, professional communication Scalable business offering** - one-time setup serves clients indefinitely Difficulty Level: Intermediate Estimated Build Time: 1-2 hours Monthly Operating Cost: ~$15 (OpenAI + Google Workspace APIs) Watch My Complete Build Process Want to see exactly how I built this invoice collection system from scratch? I walk through the entire development process live, including the AI prompting strategies, email history analysis, and the exact business logic that generates thousands in recovered payments. ๐ฅ Watch My Live Build: "THIS Smart Invoice System Will Make You an Additional $750/Month" This comprehensive tutorial shows the real development process - including advanced filtering logic, AI prompt engineering, and the proven templates that maintain professional relationships while ensuring payment. Set Up Steps Google Sheets Integration: Create invoice tracking spreadsheet with required column structure Set up Google Sheets OAuth credentials and permissions Configure document ID and sheet name in the workflow Test data retrieval with sample invoice entries Gmail Configuration: Set up Gmail OAuth for both reading and sending emails Configure email search parameters for conversation history Test email retrieval and draft creation functionality Set appropriate sender name and signature AI Follow-up Engine: Configure OpenAI API credentials with appropriate rate limits Customize the 4 escalation templates for your business tone Test AI decision-making with sample conversation histories Optimize prompts for your specific industry and client types Schedule and Automation: Set up daily schedule trigger (recommended 9 AM business hours) Configure error handling for API failures and network issues Test complete workflow with small batch of overdue invoices Monitor initial runs and optimize timing/templates based on results Quality Control: Start with draft mode to review AI-generated emails before sending Monitor client responses and adjust templates for better results Track payment recovery rates to demonstrate system effectiveness Scale to full automation once confident in output quality Advanced Optimizations Enhance the system with additional capabilities: Multi-Currency Support** - Handle international invoices with proper formatting Payment Link Integration** - Include Stripe/PayPal links for immediate payment CRM Integration** - Sync with Salesforce, HubSpot, or other business systems Escalation Rules** - Automatically transfer to collections after final notice Performance Analytics** - Track recovery rates and optimize messaging Multi-Language Templates** - Support international clients with localized messaging Important Considerations Email Frequency** - Built-in 72-hour delays prevent overwhelming clients with follow-ups Professional Tone** - Templates maintain business relationships while ensuring payment Legal Compliance** - Follow local collection laws and regulations for your jurisdiction Client Communication** - System preserves conversation history for context and disputes Privacy Protection** - All email analysis happens securely within your n8n instance Why This System Works The key to successful automated invoice collection lies in intelligent timing and personalization: Context awareness** prevents follow-ups during ongoing payment discussions Graduated escalation** maintains professionalism while applying appropriate pressure Personalized messaging** makes automated emails feel human-written Consistent execution** ensures no invoices fall through the cracks Relationship preservation** maintains client trust while securing payments Check Out My Channel For more revenue-generating automation systems and proven business-building strategies, explore my YouTube channel where I share the exact systems used to scale automation agencies to $72K+ monthly revenue.
by InfoGrab
This is a response chatbot in public channels through slash commands. I explain more in detail through the YouTube video, but it's only available in Korean. How it works? When you request the created slash command in Slack, the request comes to the webhook. Then, the Switch Node branches appropriately according to each slash command request. Here, a slash command called /ask is connected to the chatbot, and the chatbot generates answers to the questions asked. The final node responds to the channel. Set up steps Create a Slack app. Add chat:write permission in Slack OAuth&Permissions>Scopes. Create a Command in Slack Slash Commands menu and enter the n8n Webhook node's URL. Complete creating the Slash Commands. Enter the created command in the Switch node. ์ฌ๋์ ์ปค๋งจ๋๋ฅผ ํตํ ๊ณต๊ฐ ์ฑ๋์์์ ์๋ต ์ฑ๋ด ์ ๋๋ค. ์ ํ๋ธ ์์์ ๋ ์์ธํ๊ฒ ์ค๋ช ๋๋ฆฝ๋๋ค. ์ค๋ช ์ฌ๋์ ์์ฑํ ์ฌ๋์ ์ปค๋งจ๋๋ฅผ ์ฌ๋์์ ์์ฒญํ๋ฉด ์นํ ์ ์์ฒญ์ด ๋ค์ด์ต๋๋ค. ์ดํ Switch Node์์ ๊ฐ ์ฌ๋์ ์ปค๋งจ๋์ ์์ฒญ์ ๋ฐ๋ผ ์๋ง๊ฒ ๋ถ๊ธฐํฉ๋๋ค. ์ฌ๊ธฐ์์๋ /askโ๋ผ๋ ์ฌ๋์ ์ปค๋งจ๋๊ฐ ์ฑ๋ด์ผ๋ก ์ฐ๊ฒฐ๋์ด ์๊ณ , ์ฑ๋ด์์ ์ง๋ฌธํ ๋ด์ฉ์ ๋ต๋ณ์ ์์ฑํฉ๋๋ค. ๋ง์ง๋ง ๋ ธ๋์์ ์ฑ๋๋ก ์๋ต์ ํฉ๋๋ค. ์ค์ ๋ฐฉ๋ฒ Slack ์ฑ์ ๋ง๋์ธ์. Slack OAuth&Permissions>Scopes ์์ chat:write ๊ถํ์ ์ถ๊ฐํ์ธ์. Slack Slash Commands ๋ฉ๋ด์์ Command๋ฅผ ์์ฑํ๊ณ , n8n Webhook ๋ ธ๋์ url์ ์ ๋ ฅํ์ธ์. Slash Slash Commands ์์ฑ์ ์๋ฃํ์ธ์. Switch ๋ ธ๋์ ์์ฑํ ์ปค๋งจ๋๋ฅผ ์ ๋ ฅํ์ธ์.
by Stathis Askaridis
Integrate Xero with FileMaker using Webhooks Workflow Description This n8n workflow automates the integration between Xero and FileMaker, allowing for seamless data transfer between the two platforms. By listening for webhooks from Xero (e.g., new invoices, payments, or contacts), this workflow ensures that data is automatically sent and recorded in a FileMaker database. Who is This For? This workflow template is ideal for: Accountants** who need a streamlined process to sync financial data between Xero and FileMaker. Business Owners** looking to automate data entry and improve accuracy across their systems. Developers** building solutions for clients that require integration between accounting software and databases. Operations Teams** focused on minimizing manual work and improving efficiency. Key Steps Xero Webhook Trigger: The workflow starts by capturing events from Xero via a webhook. Data Processing: Transforms and maps the incoming data to match FileMakerโs required format. FileMaker Node: Utilizes the FileMaker node to create or update records directly in the FileMaker database. Logging & Error Handling: Tracks successful entries and manages any errors with automated alerts. Setup Instructions Set Up the Xero Webhook: Create a webhook in Xero and point it to your n8n webhook node URL. Configure the types of events to trigger the workflow (e.g., new invoices or payments). Xero will then send some test calls to test you are doing proper hash control. Connect the FileMaker Node: Set up your FileMaker node with the appropriate credentials and database configuration. Map the fields between the incoming Xero data and your FileMaker database structure. Customize Data Processing: Adjust data transformations as needed to ensure compatibility with your FileMaker schema. Test and Deploy: Run the workflow with sample data to ensure everything is functioning correctly. Monitor the execution log to verify data transfer and make any adjustments as needed. Error Handling Configuration: Configure error-handling nodes or alerts to notify you of any issues during data processing. Benefits This setup facilitates real-time data synchronization between Xero and FileMaker, reducing the need for manual data entry and improving overall operational efficiency.
by Angel Menendez
Enhance Security Operations with the Qualys Slack Shortcut Bot! Our Qualys Slack Shortcut Bot is strategically designed to facilitate immediate security operations directly from Slack. This powerful tool allows users to initiate vulnerability scans and generate detailed reports through simple Slack interactions, streamlining the process of managing security assessments. Workflow Highlights: Interactive Modals**: Utilizes Slack modals to gather user inputs for scan configurations and report generation, providing a user-friendly interface for complex operations. Dynamic Workflow Execution**: Integrates seamlessly with Qualys to execute vulnerability scans and create reports based on user-specified parameters. Real-Time Feedback**: Offers instant feedback within Slack, updating users about the status of their requests and delivering reports directly through Slack channels. Operational Flow: Parse Webhook Data**: Captures and parses incoming data from Slack to understand user commands accurately. Execute Actions**: Depending on the user's selection, the workflow triggers other sub-workflows like 'Qualys Start Vulnerability Scan' or 'Qualys Create Report' for detailed processing. Respond to Slack**: Ensures that every interaction is acknowledged, maintaining a smooth user experience by managing modal popups and sending appropriate responses. Setup Instructions: Verify that Slack and Qualys API integrations are correctly configured for seamless interaction. Customize the modal interfaces to align with your organization's operational protocols and security policies. Test the workflow to ensure that it responds accurately to Slack commands and that the integration with Qualys is functioning as expected. Need Assistance? Explore our Documentation or get help from the n8n Community for more detailed guidance on setup and customization. Deploy this bot within your Slack environment to significantly enhance the efficiency and responsiveness of your security operations, enabling proactive management of vulnerabilities and streamlined reporting. To handle the actual processing of requests, you will also need to deploy these two subworkflows: Qualys Start Vulnerability Scan Qualys Create Report To simplify deployment, use this Slack App manifest to quickly create an app with the correct permissions: { "display_information": { "name": "Qualys n8n Bot", "description": "n8n Integration for Qualys", "background_color": "#2a2b2e" }, "features": { "bot_user": { "display_name": "Qualys n8n Bot", "always_online": false }, "shortcuts": [ { "name": "Scan Report Generator", "type": "global", "callback_id": "qualys-scan-report", "description": "Generate a report from the latest scan to review vulnerabilities and compliance." }, { "name": "Launch Qualsys VM Scan", "type": "global", "callback_id": "trigger-qualys-vmscan", "description": "Start a Qualys Vulnerability scan from the comfort of your Slack Workspace" } ] }, "oauth_config": { "scopes": { "bot": [ "commands", "channels:join", "channels:history", "channels:read", "chat:write", "chat:write.customize", "files:read", "files:write" ] } }, "settings": { "interactivity": { "is_enabled": true, "request_url": "Replace everything inside the double quotes with your workflow webhook url, for example: https://n8n.domain.com/webhook/99db3e73-57d8-4107-ab02-5b7e713894ad"", "message_menu_options_url": "Replace everything inside the double quotes with your workflow message options webhook url, for example: https://n8n.domain.com/webhook/99db3e73-57d8-4107-ab02-5b7e713894ad"" }, "org_deploy_enabled": false, "socket_mode_enabled": false, "token_rotation_enabled": false } }
by Mark Shcherbakov
Video Guide I prepared a detailed guide that showed the whole process of building a call analyzer. .png) Who is this for? This workflow is ideal for sales teams, customer support managers, and online education services that conduct follow-up calls with clients. Itโs designed for those who want to leverage AI to gain deeper insights into client needs and upsell opportunities from recorded calls. What problem does this workflow solve? Many follow-up sales calls lack structured analysis, making it challenging to identify client needs, gauge interest levels, or uncover upsell opportunities. This workflow enables automated call transcription and AI-driven analysis to generate actionable insights, helping teams improve sales performance, refine client communication, and streamline upselling strategies. What this workflow does This workflow transcribes and analyzes sales calls using AssemblyAI, OpenAI, and Supabase to store structured data. The workflow processes recorded calls as follows: Transcribe Call with AssemblyAI: Converts audio into text with speaker labels for clarity. Analyze Transcription with OpenAI: Using a predefined JSON schema, OpenAI analyzes the transcription to extract metrics like client intent, interest score, upsell opportunities, and more. Store and Access Results in Supabase: Stores both transcription and analysis data in a Supabase database for further use and display in interfaces. Setup Preparation Create Accounts: Set up accounts for N8N, Supabase, AssemblyAI, and OpenAI. Get Call Link: Upload audio files to public Supabase storage or Dropbox to generate a direct link for transcription. Prepare Artifacts for OpenAI: Define Metrics: Identify business metrics you want to track from call analysis, such as client needs, interest score, and upsell potential. Generate JSON Schema: Use GPT to design a JSON schema for structuring OpenAIโs responses, enabling efficient storage, analysis, and display. Create Analysis Prompt: Write a detailed prompt for GPT to analyze calls based on your metrics and JSON schema. Scenario 1: Transcribe Call with AssemblyAI Set Up Request: Header Authentication: Set Authorization with AssemblyAI API key. URL: POST to https://api.assemblyai.com/v2/transcript/. Parameters: audio_url: Direct URL of the audio file. webhook_url: URL for an N8N webhook to receive the transcription result. Additional Settings: speaker_labels (true/false): Enables speaker diarization. speakers_expected: Specify expected number of speakers. language_code: Set language (default: en_us). Scenario 2: Process Transcription with OpenAI Webhook Configuration: Set up a POST webhook to receive AssemblyAIโs transcription data. Get Transcription: Header Authentication: Set Authorization with AssemblyAI API key. URL: GET https://api.assemblyai.com/v2/transcript/<transcript_id>. Send to OpenAI: URL: POST to https://api.openai.com/v1/chat/completions. Header Authentication: Set Authorization with OpenAI API key. Body Parameters: Model: Use gpt-4o-2024-08-06 for JSON Schema support, or gpt-4o-mini for a less costly option. Messages: system: Contains the main analysis prompt. user: Combined speakersโ utterances to analyze in text format. Response Format: type: json_schema. json_schema: JSON schema for structured responses. Save Results in Supabase: Operation: Create a new record. Table Name: demo_calls. Fields: Input: Transcription text, audio URL, and transcription ID. Output: Parsed JSON response from OpenAIโs analysis.
by Tom Sekula
Who is this workflow for? This workflow is the baseline workflow for anyone who needs to automate the process of posting 1-4 images to Bluesky using the Bluesky API. It is ideal for anyone looking to streamline their social media posting process, saving time and ensuring consistent content delivery. Use Case / Problem Solved Manually posting images and captions on Instagram can be time-consuming, especially for businesses and content creators managing multiple accounts. This workflow automates the process from image preparation to publishing, reducing manual effort and increasing efficiency. What this workflow does Trigger Initialization: The workflow starts with a manual trigger that can be adapted to other triggers (e.g., HTTP webhook or schedule). Set Parameters: The workflow includes a node that sets essential parameters, such as the Bluesky account ID, image URLs, and caption. Prepare Bluesky Session: A node creates the authenticated session data used by the upload and post operations later in the workflow. Publish Media: Nodes retrieve image files from the specified URLS and uploads them as blobs to Bluesky, a necessary pre-requisite for a Bluesky post to have images attached. Post text caption + images: A node does the final call to the Bluesky API, including the text caption and relevant image references. Setup Sign-in to Bluesky and create an App Password Add your username and App Password to the Define Credentials node. Set the caption (text content) of your post in the Set Caption node. Set 1-4 image URLs in the Set Images node Adapt the initial trigger as needed to fit your workflow's requirements (e.g., schedule, webhook). Adapt the caption and images nodes to accept dynamic parameters. Limitations This workflow assumes a minimum of 1 image URL to function. If you want a text-only post, remove the whole embed section from the JSON in last Post to Bluesky node, as well as relevant image attachment nodes. The 300-character limit in Bluesky includes the caption + hashtags + image alt text. Going over 300 will return a Record/description must not be longer than 300 graphemes error.