Back to Catalog
Max

Max

Playing around. Contact me at: https://t.me/demploy https://x.com/MaxDziura

Total Views1,080
Templates1

Templates by Max

N8N automated Twitter reply bot workflow

N8N Automated Twitter Reply Bot Workflow ============================================ For latest version, check: dziura.online/automation Latest documentation can be find here You must have Apify community node installed before pasting the JSON to your workflow.  Overview ------------ This n8n workflow creates an intelligent Twitter/X reply bot that automatically scrapes tweets based on keywords or communities, analyzes them using AI, generates contextually appropriate replies, and posts them while avoiding duplicates. The bot operates on a schedule with intelligent timing and retry mechanisms. Key Features ---------------- Automated tweet scraping from Twitter/X using Apify actors AI-powered reply generation using LLM (Large Language Model) Duplicate prevention via MongoDB storage Smart scheduling with timezone awareness and natural posting patterns Retry mechanism with failure tracking Telegram notifications for status updates Manual trigger option via Telegram command Required Credentials & Setup -------------------------------- 1\. Telegram Bot Create a bot via @BotFather on Telegram Get your Telegram chat ID to receive status messages Credential needed: Telegram account (Bot token) 2\. MongoDB Database Set up a MongoDB database to store replied tweets and prevent duplicates Create a collection (default name: collection\_name) Credential needed: MongoDB account (Connection string) Tutorial: MongoDB Connection Guide 3\. Apify Account Sign up at Apify.com Primary actors used: Search Actor: api-ninja/x-twitter-advanced-search - For keyword-based tweet scraping (ID: 0oVSlMlAX47R2EyoP) Community Actor: api-ninja/x-twitter-community-search-post-scraper - For community-based tweet scraping (ID: upbwCMnBATzmzcaNu) Credential needed: Apify account (API token) 4\. OpenRouter (LLM Provider) Sign up at OpenRouter.ai Used for AI-powered tweet analysis and reply generation Model used: x-ai/grok-3 (configurable) Credential needed: OpenRouter account (API key) 5\. Twitter/X API Set up developer account at developer.x.com Note: Free tier limited to ~17 posts per day Credential needed: X account (OAuth2 credentials) Workflow Components ----------------------- Trigger Nodes 1\. Schedule Trigger Purpose: Runs automatically every 20 minutes Smart timing: Only active between 7 AM - 11:59 PM (configurable timezone) Randomization: Built-in probability control (~28% execution chance) to mimic natural posting patterns 2\. Manual Trigger Purpose: Manual execution for testing 3\. Telegram Trigger Purpose: Manual execution via /reply command in Telegram Usage: Send /reply to your bot to trigger the workflow manually Data Processing Flow 1\. MongoDB Query (Find documents) Purpose: Retrieves previously replied tweet IDs to avoid duplicates Collection: collection\_name (configure to match your setup) Projection: Only fetches tweet\_id field for efficiency 2\. Data Aggregation (Aggregate1) Purpose: Consolidates tweet IDs into a single array for filtering 3\. Keyword/Community Selection (Keyword/Community List) Purpose: Defines search terms and communities Configuration: Edit the JSON to include your keywords and Twitter community IDs Format:{   "keyword\community\list": \[     "SaaS",     "Entrepreneur",      "1488663855127535616"  // Community ID (19-digit number)   \],   "failure": 0 } 4\. Random Selection (Randomized community, keyword) Purpose: Randomly selects one item from the list to ensure variety 5\. Routing Logic (If4) Purpose: Determines whether to use Community search or Keyword search Logic: Uses regex to detect 19-digit community IDs vs keywords Tweet Scraping (Apify Actors) Community Search Actor Actor: api-ninja/x-twitter-community-search-post-scraper Purpose: Scrapes tweets from specific Twitter communities Configuration:{   "communityIds": \["COMMUNITY\_ID"\],   "numberOfTweets": 40 } Search Actor Actor: api-ninja/x-twitter-advanced-search Purpose: Scrapes tweets based on keywords Configuration:{   "contentLanguage": "en",   "engagementMinLikes": 10,   "engagementMinReplies": 5,   "numberOfTweets": 20,   "query": "KEYWORD",   "timeWithinTime": "2d",   "tweetTypes": \["original"\],   "usersBlueVerifiedOnly": true } Filtering System (Community filter) The workflow applies multiple filters to ensure high-quality replies: Text length: >60 characters (substantial content) Follower count: >100 followers (audience reach) Engagement: >10 likes, >3 replies (proven engagement) Language: English only Views: >100 views (visibility) Duplicate check: Not previously replied to Recency: Within 2 days (configurable in actor settings) AI-Powered Reply Generation LLM Chain (Basic LLM Chain) Purpose: Analyzes filtered tweets and generates contextually appropriate replies Model: Grok-3 via OpenRouter (configurable) Features: Engagement potential scoring User authority analysis Timing optimization Multiple reply styles (witty, informative, supportive, etc.) <100 character limit for optimal engagement Output Parser (Structured Output Parser) Purpose: Ensures consistent JSON output format Schema:{   "selected\tweet\id": "tweet\id\here",   "screen\name": "author\screen\_name",    "reply": "generated\reply\here" } Posting & Notification System Twitter Posting (Create Tweet) Purpose: Posts the generated reply as a Twitter response Error handling: Catches API limitations and rate limits Status Notifications Success: Notifies via Telegram with tweet link and reply text Failure: Notifies about API limitations or errors Format: HTML-formatted messages with clickable links Database Storage (Insert documents) Purpose: Saves successful replies to prevent future duplicates Fields stored: tweet\id, screen\name, reply, tweet\_url, timestamp Retry Mechanism The workflow includes intelligent retry logic: Failure Counter (If5, Increment Failure Counter1) Logic: If no suitable tweets found, increment failure counter Retry limit: Maximum 3 retries with different random keywords Wait time: 3-second delay between retries Final Failure Notification Trigger: After 4 failed attempts Action: Sends Telegram notification about unsuccessful search Recovery: Manual retry available via /reply command Configuration Guide ----------------------- Essential Settings to Modify MongoDB Collection Name: Update collection\_name in MongoDB nodes Telegram Chat ID: Replace 11111111111 with your actual chat ID Keywords/Communities: Edit the list in Keyword/Community List node Timezone: Update timezone in Code node (currently set to Europe/Kyiv) Actor Selection: Enable only one actor (Community OR Search) based on your needs Filter Customization Adjust filters in Community filter node based on your requirements: Minimum engagement thresholds Text length requirements Time windows Language preferences LLM Customization Modify the AI prompt in Basic LLM Chain to: Change reply style and tone Adjust engagement criteria Modify scoring algorithms Set different character limits Usage Tips -------------- Start small: Begin with a few high-quality keywords/communities Monitor performance: Use Telegram notifications to track success rates Adjust filters: Fine-tune based on the quality of generated replies Respect limits: Twitter's free tier allows ~17 posts/day Test manually: Use /reply command for testing before scheduling Troubleshooting ------------------- Common Issues No tweets found: Adjust filter criteria or check keywords API rate limits: Reduce posting frequency or upgrade Twitter API plan MongoDB connection: Verify connection string and collection name Apify quota: Monitor Apify usage limits LLM failures: Check OpenRouter credits and model availability Best Practices Monitor your bot's replies for quality and appropriateness Regularly update keywords to stay relevant Keep an eye on engagement metrics Adjust timing based on your audience's activity patterns Maintain a balanced posting frequency to avoid appearing spammy Documentation Links ----------------------- Full Documentation: Google Doc Guide Latest Version: dziura.online/automation MongoDB Setup Tutorial: YouTube Guide This workflow provides a comprehensive solution for automated, intelligent Twitter engagement while maintaining quality and avoiding spam-like behavior.

MaxBy Max
1080
All templates loaded