by Dat Proto
Introduction This workflow will backup all of your existed workflows to a single Github repository. The Backup folders' name are based on the current backup date and have default format: "yyyy/MM/dd" (setup at "Create sub path" node). Throughout the backup process, the N8N will inform user via discord with clear message about Start, Success and Failure backups. The workflow will be Tech Stack The following nodes / services / libraries are used in this workflow: Nodes: Discord: To send message to configured setup channel. N8N: To get all workflows' information. Github: To store backup data. Code: To run data comparison (Existed vs Latest workflow data). Wait: To avoid discord message rate limit. External libraries: Underscore.js: JavaScript library that provides lots of common Javascript functions, to help user save time when using code node. Guideline Open "Config" node and setup the following information: repo_owner: Your Github username. repo_name: The repository that you want to store workflows backup data. Open "Create sub path" node and change the naming and path format of backup folder(s). Setup custom messages in 3 discord nodes: Starting Message: N8N inform user at the time workflow start. Inform Success Flows: After each success backup, N8N will notify user. Inform Failed Flows: After each failure backup, N8N will notify user to have appropriate action. Completed Notifications: Then at the final, the workflow will give user a summary. Setup "Schedule Trigger" node to change default automated backup time. Screenshots Discord output
by Angel Menendez
Who is this for? This workflow is designed for IT teams, service desk personnel, and incident management professionals who need a streamlined way to monitor and report on recent ServiceNow incidents directly within Slack. What problem is this workflow solving? / Use Case Manually monitoring incidents in ServiceNow can be time-consuming, and keeping teams updated about new or specific incidents often involves additional manual effort. This workflow automates the process of querying recent incidents from ServiceNow based on user-defined parameters and delivering formatted results directly to Slack. It ensures faster response times and improved incident visibility. What this workflow does This workflow integrates Slack and ServiceNow to provide an automated system for retrieving and presenting incident details. Slack User Interaction: Users initiate the workflow via a Slack modal form, selecting incident parameters like priority and state. ServiceNow Query: The workflow queries ServiceNow for incidents matching the selected criteria. Results Delivery: Incident results are sent back to Slack as a message formatted using Block Kit. If no results are found, the workflow notifies the user with a detailed message, either in a Slack channel or via direct message. Error Handling: If no channel is selected or any issues arise, the workflow ensures graceful fallback with appropriate notifications. Setup Instructions Slack Setup: Integrate Slack with n8n using a Slack app. Configure the modal form to accept parameters like priority and state. Check out this video for setting up a modal slack app on YouTube. ServiceNow Integration: Use ServiceNow credentials to connect with n8n. Ensure appropriate permissions for querying incidents. n8n Workflow Configuration: Import this workflow into n8n. Verify all node configurations, particularly those for ServiceNow API queries and Slack outputs. Set up webhook URLs for Slack event handling. Testing: Trigger the workflow from Slack to test modal inputs and incident queries. Confirm the output is correctly formatted and delivered to the intended Slack channel or user. How to Customize this Workflow to Your Needs Modify the ServiceNow query logic to include additional filters or fields. Adjust the Slack Block Kit formatting to match your organization’s preferred notification style. Use conditional logic to add more advanced handling for specific priorities or states. Expand the workflow to include escalation steps, such as notifying a specific team or creating follow-up tasks. Workflow Highlights Slack Modal Form**: Allows users to specify search criteria for incidents interactively. Dynamic Results Delivery**: Automatically sends results to a Slack channel or direct message based on user input. Error Handling**: Provides fallback notifications when no incidents are found or user inputs are incomplete. Customizable Integration**: Easily adaptable to fit different organizational needs, including advanced filtering and formatting options.
by Boriwat Chanruang
Who is this for? This workflow is designed for: Content creators**, artists, or hobbyists looking to experiment with AI-generated art. Small business owners* or *marketers** using LEGO-style designs for branding or promotions. Developers* or *AI enthusiasts** wanting to automate image transformations through messaging platforms like LINE. What problem is this workflow solving? Simplifies the process of creating custom AI-generated LEGO-style images. Automates the manual effort of transforming user-uploaded images into AI-generated artwork. Bridges the gap between messaging platforms (LINE) and advanced AI tools (DALL·E). Provides a seamless system for users to upload an image and receive an AI-transformed output without technical expertise. What this workflow does Image Upload via LINE: Users send an image to the LINE chatbot. AI-Powered Prompt Creation: GPT generates a prompt to describe the uploaded image for LEGO-style conversion. AI Image Generation: DALL·E 3 processes the prompt and creates a LEGO-style isometric image. Image Delivery: The generated image is returned to the user in LINE. Setup Prerequisites LINE Developer Account** with API credentials. Access to OpenAI API with DALL·E and GPT-4 capabilities. A configured n8n instance to run this workflow. Steps Environment Setup: Add your LINE API Token and OpenAI credentials as environment variables (LINE_API_TOKEN, OPENAI_API_KEY) in n8n. Configure LINE Webhook: Point the LINE webhook to your n8n instance. Connect OpenAI: Set up OpenAI API credentials in the workflow nodes for GPT-4 and DALL·E. Test Workflow: Upload a sample image in LINE and ensure it returns the LEGO-style AI image. How to customize this workflow to your needs Localization**: Modify response messages in LINE to fit your audience's language and tone. Integration**: Add nodes to send notifications through other platforms like Slack or email. Image Style**: Replace the LEGO-style image prompt with other artistic styles or themes. Advanced Use Cases Art Contests: Users upload images and receive AI-enhanced outputs for community voting or branding. Marketing Campaigns: Quickly generate creative visual content for ads and promotions using customer-submitted photos. Education: Use the workflow to teach students about AI-generated art and automation through a hands-on approach. Tips for Optimization Error Handling**: Add fallback nodes to handle invalid images or API errors gracefully. Logging**: Implement a logging mechanism to track requests and outputs for debugging and analytics. Scalability**: Use queue-based systems or cloud scaling to handle large volumes of image requests. Enhancements Add sticky notes in n8n to provide inline instructions for configuring each node. Create a tutorial video or documentation for first-time users to set up and customize the workflow. Include advanced filters to allow users to select from multiple styles beyond LEGO (e.g., pixel art, watercolor). This workflow enables seamless interaction between messaging platforms and advanced AI capabilities, making it highly versatile for various creative and business applications.
by Mario
Purpose This solution enables you to manage all your Notion and Todoist tasks from different workspaces as well as your calendar events in a single place. All tasks can be managed in Todoist and additionally Fantastical can be used to manage scheduled tasks & events all together. Demo & Explanation How it works The realtime sync consists of two workflows, both triggered by a registered webhook from either Notion or Todoist To avoid overwrites by lately arriving webhook calls, every time the current task is retrieved from both sides. Redis is used to prevent from endless loops, since an update in one system triggers another webhook call again. Using the ID of the task, the trigger is being locked down for 15 seconds. Depending on the detected changes, the other side is updated accordingly. Generally Notion is treaded as the main source. Using an "Obsolete" Status, it is guaranteed, that tasks never get deleted entirely by accident. The Todoist ID is stored in the Notion task, so they stay linked together An additional full sync workflow daily fixes inconsistencies, if any of them occurred, since webhooks cannot be trusted entirely. Since Todoist requires a more complex setup, a tiny workflow helps with activating the webhook. Another tiny workflow helps generating a global config, which is used by all workflows for mapping purposes. Mapping (Notion >> Todoist) Name: Task Name Priority: Priority (1: do first, 2: urgent, 3: important, 4: unset) Due: Date Status: Section (Done: completed, Obsolete: deleted) <page_link>: Description (read-only) Todoist ID: <task_id> Current limitations Changes on the same task cannot be made simultaneously in both systems within a 15-20 second time frame Subtasks are not linked automatically to their parent yet Recurring tasks are not supported yet Tasks names do not support URL’s yet Prerequisites Notion A database must already exist (get a basic template here) with the following properties (case matters!): Text: "Name" Status: "Status", containing at least the options "Backlog", "In progress", "Done", "Obsolete" Select: "Priority", containing the options "do first", "urgent", "important" Date: "Due" Checkbox: "Focus" Text: "Todoist ID" Todoist A project must already exist with the same sections like defined as Status in Notion (except Done and Obsolete) Redis Create a Free Redis Cloud instance or self-host Setup The setup involves quite a lot of steps, yet many of them can be automated for business internal purposes. Just follow the video or do the following steps: Setup credentials for Notion (access token), Todoist (access token) and Redis - you can also create empty credentials and populate these later during further setup Clone this workflow by clicking the "Use workflow" button and then choosing your n8n instance - otherwise you need to map the credentials of many nodes. Follow the instructions described within the bundle of sticky notes on the top left of the workflow How to use You can apply changes (create, update, delete) to tasks both in Notion and Todoist which then get synced over within a couple of seconds (this is handled by the differential realtime sync) The daily running full sync, resolves possible discrepancies in Todoist and sends a summary via email, if anything needed to be updated. In case that contains an unintended change, you can jump to the Task from the email directly to fix it manually.
by Ludwig
How it works This workflow enables companies to provide instant HR support by automating responses to employee queries about policies and benefits: Retrieves company policies, benefits, and HR documents from BambooHR. Uses AI to analyze and answer employee questions based on company records. Identifies the most relevant contact person for escalations. Seamlessly integrates with company systems to provide real-time HR assistance. Set up steps: Estimated time: ~20 minutes Connect your BambooHR account to allow policy retrieval. Configure AI parameters and access control settings. (Optional) Set up the employee lookup tool for personalized responses. Test the chatbot to ensure accurate responses and seamless integration. Benefits This workflow is perfect for HR teams looking to enhance employee support while reducing manual inquiries. Outperform BambooHR's "Ask BambooHR" Chatbot #1. Superior specificity of replies to general inquiries #2. More appropriate escalations when responding to sensitive employee concerns
by Sarfaraz Muhammad Sajib
This automation workflow captures incoming chat messages from your Tawk.to live chat widget and sends alert emails via Gmail to notify your support team instantly. It is designed to help you respond promptly to visitors and improve your customer support experience. Prerequisites Tawk.to account:** You must have an active Tawk.to account with a configured live chat widget on your website. Gmail account:** A Gmail account with API access enabled and configured in n8n for sending emails. n8n instance:** Access to an n8n workflow automation instance where you will import and configure this workflow. Step-by-Step Setup Instructions 1. Configure Tawk.to Webhook Log in to your Tawk.to dashboard. Navigate to Administration > Webhooks. Click Add Webhook and enter the following: URL: Your n8n webhook URL from the Receive Tawk.to Request node (e.g., https://your-n8n-instance.com/webhook/a4bf95cd-a30a-4ae0-bd2a-6d96e6cca3b4) Method: POST Events: Select the chat message event (e.g., Visitor Message or Chat Message Received) Save the webhook configuration. 2. Configure Gmail Credentials in n8n In your n8n instance, go to Credentials. Add a new Gmail OAuth2 credential: Follow Google's instructions to create a project, enable Gmail API, and obtain client ID and secret. Authenticate and authorize n8n to send emails via your Gmail account. 3. Import and Activate Workflow Import the provided workflow JSON into n8n. Verify the Receive Tawk.to Request webhook node path matches the webhook URL configured in Tawk.to. Enter the email address you want the alerts sent to in the Send alert email node’s sendTo parameter. Activate the workflow. Workflow Explanation Receive Tawk.to Request: This webhook node listens for POST requests from Tawk.to containing chat message data. Format the message: Extracts relevant data from the incoming payload such as chat ID, visitor name, country, and message text, and assigns them to new fields for easy use downstream. Send alert email: Uses Gmail node to send a notification email to your support team with all relevant chat details formatted in a clear, concise text email. Customization Guidance Email Recipient:** Update the sendTo field in the Send alert email node to specify your support team’s email address. Email Content:** Modify the message template in the Send alert email node’s message parameter to suit your tone or include additional details like timestamps or chat URLs. Additional Processing:** You can extend the workflow by adding nodes for logging chats, triggering Slack notifications, or storing messages in a database. By following these instructions, your support team will receive immediate email alerts whenever a new chat message arrives on your website, improving response times and customer satisfaction.
by Daniel Nolde
What it is: An automation to plan→draft→finalize and publish your textual blog post ideas to your wordpress blog Works in stages and hand back control to you in between those You can use a Google Spreadsheet for planning topics and configuring LLM models and prompts What it does: plans→drafts→finalizes blog post topics you specify in a Google Spreadsheet using an LLM with prompts that also ar configured in that spreadsheet (even which model to use) savs the results in the corresponding columns of the "Schedule" sheet in the spreadsheet hands control back to the user for inspecting or changing the results and for setting the next "Action" for th workflow Finally publishes the blog post to your Wordpress instance Limitations Probably slightly over-engineered ;-) No media generation yet some LLM models don't work because of their output format How it works: The Workflow is triggered manually or scheduled every hour It ingests a Google Spreadsheet to get Config for prompts/context tc Blog-Topics and their status and next action Depending on each blog topics "Status" and "Action" it then either uses an LLM for th next action ("plan"→"draft"→"final" actions) or publishes the written content to your Wordpress instance ("publish" actions) Set up steps: Import the workflow Make your own copy of the Google Spreadsheet Update the credentials using your individual credentials for: Google Spreadsheets OpenRouter Edit the "Settings" node and enter your individual values for Your spreadsheet copy URL Your wordpress blog URL Your wordpress blog username Your wordpress blog app password (a 4x4 alphanumeric sequence), that you probably have to create first, for which your wordpress user has to have 2-factor-authentication enabled. In your own copy of the spreadsheet: individualize the "Config" sheet's "Value" column for the prompts/context/etc Populate the "Schedule" sheet with at least one line in which you specify a "Topic" a "Schedulded" date (YYYY-MM-DD HH:mm:ss) a "Status" of "idea" an "Action" of "plan" (to kick off that action)
by Shannon Atkinson
Template Description WDF Top Keywords: This workflow is designed to streamline keyword research by automating the process of generating, filtering, and analyzing Google and YouTube keyword data. Ensure compliance with local regulations and API terms of service when using this workflow. 📌 Purpose The WDF Top Keywords workflow automates collecting, processing, and managing keyword data for both Google and YouTube platforms. Leveraging multiple data sources and APIs ensures an efficient and scalable approach to identifying high-impact keywords for SEO, content creation, and marketing campaigns. Key Features Automates the generation of keyword suggestions using autocomplete APIs. Integrates with NocoDB to store and manage keyword data. Filters keywords based on monthly search volume and cost-per-click (CPC). Supports bulk import of keyword data into structured databases. Outputs both Google and YouTube keyword insights, enabling informed decision-making. 🎯 Target Audience This workflow is ideal for: Digital marketers aiming to optimize ad campaigns with data-driven insights. SEO specialists looking to identify high-potential keywords efficiently. Content creators seeking trending and relevant topics for their platforms. Agencies managing keyword research for multiple clients. ⚙️ How It Works Trigger: The workflow runs on-demand or at scheduled intervals. Keyword Generation: Retrieves base keywords from NocoDB. Generates autocomplete suggestions for Google and YouTube. Data Processing: Filters and formats keyword data based on specific criteria (e.g., search volume, CPC). Consolidates results for efficient storage and analysis. Storage and Output: Saves data into structured NocoDB tables for tracking and reuse. Bulk imports monthly search volume statistics for detailed analysis. 🛠️ Key APIs and Tools Used NocoDB**: Stores and organizes base and processed keyword data. DataForSEO API**: Provides search volume and keyword performance metrics. Google Autocomplete API**: Suggests relevant Google search terms. YouTube Autocomplete API**: Suggests trending YouTube keywords. Social Flood Docker Instance**: Serves as the local integration hub. Setup Instructions Required Tools: NocoDB n8n DataForSEO Account Social Flood Docker Instance Create the following NocoDB tables: Base Keyword Search Second Order Google Keywords Second Order YouTube Keywords Search Volume This template empowers users to handle complex keyword research tasks effortlessly, saving time and providing actionable insights. Share this template to enhance your workflow efficiency!
by Adnan Tariq
🛡 CyberScan – AI-Powered Vulnerability Scanner with Nessus, OpenAI, and Google Sheets 👤 Who’s it for Security teams, DevOps engineers, vulnerability analysts, and automation builders who want to eliminate repetitive Nessus scan parsing, AI-based risk triage, and manual reporting. Designed for orgs following NIST CSF or CISA KEV compliance guidelines. ⚙️ How it works / What it does Runs scheduled or manual scans via the Nessus API. Processes scan results and extracts asset + vulnerability data. Uses a custom AI-based risk metric (LEV) to triage findings into: 🚨 Expert review ✅ Self-healing 🕵️ Monitoring Automatically sends email alerts for critical CVEs. Exports daily summaries to Google Sheets (or your own BI system). Maps to NIST CSF (Identify, Protect, Detect, Respond, Recover). 🧰 How to set up Nessus: Add your Nessus API credentials and instance URL. Google Sheets: Authenticate your Google account. OpenAI / LLM: Use your API key if adding LLM triage or rewrite prompts. Email: Update SMTP credentials and alert recipient address. Set your targets: Adjust asset ranges or scan UUIDs as needed. ⚠️ All setup steps are explained in sticky notes inside the workflow. 📋 Requirements Nessus Essentials (Free) or Nessus Pro with API access. SMTP service (e.g. Gmail, Mailgun, SendGrid). Google Sheets OAuth2 credentials. Optional: OpenAI or other LLM provider for LEV scoring and CVE insights. 🛠 How to customize the workflow Swap Google Sheets with Airtable, Supabase, or PostgreSQL. Change scan logic or asset list to fit your internal network scope. Adjust AI scoring logic to match internal CVSS thresholds or KEV tags. Expand alerting logic to include Slack, Discord, or webhook triggers. 🔒 No sensitive data included. All credentials and sheet links are placeholders.
by Lucas Peyrin
How it works This template is a hands-on tutorial for one of the most advanced and powerful patterns in n8n: asynchronous parallel processing, also known as the Fan-Out/Fan-In model. When should you use this? Use this pattern when speed is your top priority and you have multiple independent, long-running tasks. Instead of running them one after another (which is slow), this workflow runs them all at the same time and waits for them all to finish. We use a Construction Project analogy to explain the architecture: The Main Workflow (Top):* This is the *Project Manager**. It defines the project, assigns all the tasks to specialist teams, and then pauses, waiting for a final report. The Sub-Workflow (Bottom):* This represents the *Specialist Teams**. It's a single, reusable workflow that can perform any task it's assigned. Static Data (The Brains):* A hidden *Project Dashboard** is used to track the status of every task in real-time. The process follows three key phases: Fan-Out: The Project Manager starts multiple sub-workflows at once without waiting for them to finish. Asynchronous Execution: Each Specialist Team works on its task independently and in parallel. When a team finishes, it updates its status on the Project Dashboard. Fan-In: The Project Manager, which has been paused by a Wait node, is only resumed when the Project Dashboard confirms that all tasks are complete. It then receives the aggregated results from all the parallel tasks. Set up steps Setup time: < 1 minute This workflow is a self-contained tutorial. The only setup required is to configure the AI model. Configure Credentials: Go to the The AI Specialist node in the sub-workflow (bottom flow). Select your desired AI credential (Gemini in that case). Execute the Workflow: Click the "Execute Workflow" button on the Start Project node. Explore and Learn: Follow the execution path to see how the main workflow fans out, and how the sub-workflow is called multiple times. Click on each node and read the detailed sticky notes to understand its specific role in this advanced pattern.
by Mark Shcherbakov
Video Guide I prepared a detailed guide that illustrates the entire process of building an AI agent using Supabase and Google Drive within N8N workflows. Youtube Link Who is this for? This workflow is designed for developers, data scientists, and business users who wish to automate document management and enable AI-powered interactions over their stored files. It's especially beneficial for scenarios where users need to process, analyze, and retrieve information from uploaded documents rapidly. What problem does this workflow solve? Managing files across multiple platforms often involves tedious manual processes. This workflow facilitates automated file handling, making it easier for users to upload, parse, and interact with documents through an AI agent. It reduces redundancy and enhances the efficiency of data retrieval and management tasks. What this workflow does This workflow integrates Supabase storage with Google Drive and employs an AI agent to manage files effectively. The agent can: Upload files to Supabase storage and activate processes based on file changes in Google Drive. Retrieve and parse documents, converting them into a structured format for easy querying. Utilize an AI agent to answer user queries based on saved document data. Data Collection: The workflow initially gathers files from Supabase storage, ensuring no duplicates are processed in the 'files' table. File Handling: It processes files to be parsed based on their type, leveraging LlamaParse for effective data transformation. Google Drive Integration: The workflow monitors a designated Google Drive folder to upload files automatically and refresh document records in the database with new data. AI Interaction: A webhook is established to enable the AI agent to converse with users, facilitating queries and leveraging stored document knowledge. Setup Supabase Storage Setup: Create a private bucket in Supabase storage, modifying the default name in the URL. Upload your files using the provided upload options. Database Configuration: Establish the 'file' and 'document' tables in Supabase with the necessary fields. Execute any required SQL queries for enabling vector matching features. N8N Workflow Logic: Start with a manual trigger for the initial workflow segment or consider alternative triggers like webhooks. Replace all relevant credentials across nodes with your own to ensure seamless operation. File Processing and Google Drive Monitoring: Set up file processing to take care of downloading and parsing files based on their types. Create triggers to monitor the designated Google Drive folder for file uploads and updates. Integrate AI Agent: Configure the webhook for the AI agent to accept chat inputs while maintaining session context for enhanced user interactions. Utilize PostgreSQL to store user interactions and manage conversation states effectively. Testing and Adjustments: Once everything is set up, run tests with the AI agent to validate its responses based on the documents in your database. Fine-tune the workflow and AI model as needed to achieve desired performance.
by AppStoneLab Technologies LLP
🎉 Festival Social Media Automation with Gemini AI for X/Twitter & Facebook Transform your festival marketing with this comprehensive automation workflow that creates and posts culturally authentic social media content across multiple platforms daily. ⚙️ What this workflow does This workflow automatically: Fetches festival data** from Google Sheets based on today's date Generates AI-powered prompts** for both image creation and social media content Creates stunning festival images** using Google Gemini 2.0 Flash Preview Produces platform-specific content** optimized for X (Twitter) and Facebook Posts automatically** with proper image attachments and error handling ✨ Key Features 🎯 Intelligent Content Generation AI-powered prompt generation tailored to each festival's cultural context Platform-specific content optimization (character limits, hashtag strategies) Culturally sensitive and authentic messaging 🎨 Visual Content Creation Automated image generation using Google Gemini 2.0 Flash Preview Festival-themed graphics with vibrant, culturally appropriate designs Optimized for social media engagement 📲 Multi-Platform Publishing Simultaneous posting to X (Twitter) and Facebook Platform-specific formatting and optimization Built-in error handling and backup posting methods ⏰ Fully Automated Daily execution at 8:00 AM Date-based festival data retrieval Zero manual intervention required 📱 Apps and Integrations Google Sheets** - Festival calendar and data storage Google Gemini 2.0 Flash Preview** - AI content and image generation X (Twitter)** - Social media posting Facebook Graph API** - Facebook page posting Schedule Trigger** - Daily automation 🛠️🕊️ Setup Instructions 1. 📊 Google Sheets Configuration Create a Google Sheets document with columns: Date, Name of the Festival, Description Format dates as DD/MM/YYYY Connect your Google Sheets credential in n8n 2. 🤖 Google Gemini API Setup Obtain a Google AI Studio API key from Google AI Studio Configure the Google Gemini credential in n8n Ensure you have access to Gemini 2.0 Flash Preview 3. 🕊️X (Twitter) Credentials Setup Important: Due to X API limitations, you'll need TWO separate OAuth2 credentials: X API For Image Upload (Generic OAuth2): Create a new OAuth2 credential with these settings: Grant Type: PKCE Authorization URL: https://x.com/i/oauth2/authorize Access Token URL: https://api.x.com/2/oauth2/token Scope: media.write offline.access tweet.read users.read Note: Cannot combine media.write with tweet.write in the same credential For Tweet Posting (X OAuth2): Use the predefined X OAuth2 credential Configure with scopes: tweet.write offline.access tweet.read users.read 4. 📘Facebook Graph API Setup Create a Facebook App and get your access token from Meta for Developers Configure the Facebook Graph API credential Update the node with your Facebook page ID 🎬 How to Use Populate your Google Sheets with festival data for upcoming dates Activate the workflow - it will run automatically daily at 8:00 AM Monitor the execution - check logs for successful posts or any errors Customize content by modifying the prompt generation logic if needed 🔄 Workflow Components 🔗 Data Flow Daily Trigger → Get Today's Date → Fetch Festival Data Generate AI Prompts → Create Image & Content Process Media → Merge Data → Post to Platforms 🛡️ Error Handling Backup HTTP posting method for X if primary method fails Continue execution even if individual platform posting fails Comprehensive error logging for troubleshooting 🎨 Customization Options ✍️ Content Personalization Modify the prompt generation logic for different content styles Adjust platform-specific character limits and hashtag strategies Customize image generation prompts for different visual styles 🌐 Platform Extension Add Instagram, LinkedIn, or other social media platforms Implement additional content formats (Stories, Reels, etc.) Create platform-specific posting schedules 📊 Data Sources Connect to different data sources (Airtable, Notion, CMS) Add support for multiple festival categories Implement content approval workflows 💡 Best Practices 📝 Content Quality Regularly review and update your festival database Monitor AI-generated content for cultural sensitivity Test different prompt styles for optimal engagement 🔑 API Management Monitor API usage limits for all connected services Implement rate limiting for high-volume posting Set up alerts for credential expiration ⏰ Scheduling Consider time zones for optimal posting times Implement staggered posting across platforms Add weekend/holiday scheduling logic 🔧 Troubleshooting ⚠️ Common Issues Image upload fails**: Check OAuth2 credentials and API limits Content generation errors**: Verify Gemini API key and model availability Date matching issues**: Ensure date format consistency in Google Sheets ⚡️ Performance Tips Optimize image generation prompts for faster processing Use structured output parsing for consistent results Implement content caching for repeated festivals 🎯 Use Cases Cultural Organizations** - Automate festival announcements and celebrations Event Management Companies** - Scale social media presence across multiple events Tourism Boards** - Promote local festivals and cultural events Marketing Agencies** - Manage multiple client festival campaigns Community Organizations** - Engage audiences with regular cultural content ⭐️ Benefits Time Savings** - Eliminate manual social media posting Consistency** - Maintain regular posting schedule Cultural Authenticity** - AI-generated content respects cultural context Multi-Platform Reach** - Simultaneous posting increases visibility Scalability** - Handle unlimited festivals with zero additional effort This workflow transforms festival marketing from a time-consuming manual process into a fully automated, culturally intelligent system that engages audiences across multiple platforms while maintaining authenticity and relevance.