{"nodes":[{"name":"Simplify Result","type":"n8n-nodes-base.set","position":[680,100],"parameters":{"values":{"string":[{"name":"Content","value":"={{$json[\"full_text\"].replace(/(?:https?|ftp):\\/\\/[\\n\\S]+/g, '')}}"},{"name":"Author","value":"={{$json[\"user\"][\"name\"]}} (@{{$json[\"user\"][\"screen_name\"]}})"},{"name":"Created","value":"={{new Date($json[\"created_at\"]).toISOString()}}"},{"name":"URL","value":"=https://twitter.com/{{$json[\"user\"][\"screen_name\"]}}/status/{{$json[\"id_str\"]}}"}]},"options":{},"keepOnlySet":true},"typeVersion":1,"id":"node-c821bf53"},{"name":"Store in Strapi","type":"n8n-nodes-base.strapi","position":[1780,100],"parameters":{"columns":"Content,Author,Created,URL","operation":"create","contentType":"posts"},"credentials":{"strapiApi":{"id":"{{ $credentials.strapiApi.id }}","name":"Strapi Demo"}},"typeVersion":1,"id":"node-11962f0d"},{"name":"Every 30 Minutes","type":"n8n-nodes-base.interval","position":[240,100],"parameters":{"unit":"minutes","interval":30},"typeVersion":1,"id":"node-a7672ade"},{"name":"Is Retweet or Old?","type":"n8n-nodes-base.if","position":[900,100],"parameters":{"conditions":{"string":[{"value1":"={{$json[\"Content\"]}}","value2":"RT @","operation":"startsWith"}],"dateTime":[{"value1":"={{$json[\"Created\"]}}","value2":"={{new Date(new Date().getTime() - 30 * 60 * 1000)}}","operation":"before"}]},"combineOperation":"any"},"typeVersion":1,"id":"node-ca4d8a5e"},{"name":"Search Tweets","type":"n8n-nodes-base.twitter","position":[460,100],"parameters":{"operation":"search","searchText":"(strapi OR n8n.io) AND lang:en","additionalFields":{"tweetMode":"extended","resultType":"recent"}},"credentials":{"twitterOAuth1Api":{"id":"{{ $credentials.twitterOAuth1Api.id }}","name":"@MutedJam"}},"typeVersion":1,"id":"node-1851292e"},{"name":"Webhook","type":"n8n-nodes-base.webhook","position":[240,-120],"webhookId":"6f833370-9068-44ef-8e56-4ceb563a851e","parameters":{"path":"6f833370-9068-44ef-8e56-4ceb563a851e","options":{},"httpMethod":"POST"},"typeVersion":1,"id":"node-6f2ac3de"},{"name":"Simplify Webhook Result","type":"n8n-nodes-base.set","position":[460,-120],"parameters":{"values":{"string":[{"name":"Content","value":"={{$json[\"body\"][\"data\"][\"fields\"][1][\"value\"]}}"},{"name":"Author","value":"={{$json[\"body\"][\"data\"][\"fields\"][0][\"value\"]}}"},{"name":"Created","value":"={{new Date().toISOString()}}"},{"name":"URL"}]},"options":{},"keepOnlySet":true},"typeVersion":1,"id":"node-b186dfcc"},{"name":"Analyze Form Submission","type":"n8n-nodes-base.googleCloudNaturalLanguage","position":[680,-220],"parameters":{"content":"={{$json[\"Content\"]}}","options":{}},"credentials":{"googleCloudNaturalLanguageOAuth2Api":{"id":"{{ $credentials.googleCloudNaturalLanguageOAuth2Api.id }}","name":"Google Cloud Natural Language account"}},"typeVersion":1,"id":"node-d42215b1"},{"name":"Analyze Tweet","type":"n8n-nodes-base.googleCloudNaturalLanguage","position":[1120,200],"parameters":{"content":"={{$json[\"Content\"]}}","options":{}},"credentials":{"googleCloudNaturalLanguageOAuth2Api":{"id":"{{ $credentials.googleCloudNaturalLanguageOAuth2Api.id }}","name":"Google Cloud Natural Language account"}},"typeVersion":1,"id":"node-0ff22440"},{"name":"Merge Form Sentiment with Source","type":"n8n-nodes-base.merge","position":[900,-120],"parameters":{"mode":"mergeByIndex"},"typeVersion":1,"id":"node-03cccf19"},{"name":"Merge Tweet Sentiment with Source","type":"n8n-nodes-base.merge","position":[1340,100],"parameters":{"mode":"mergeByIndex"},"typeVersion":1,"id":"node-3957a7ca"},{"name":"Positive Form Sentiment?","type":"n8n-nodes-base.if","position":[1120,-120],"parameters":{"conditions":{"number":[{"value1":"={{$json[\"documentSentiment\"][\"score\"]}}","value2":0.4,"operation":"larger"}]}},"typeVersion":1,"id":"node-62f1faa5"},{"name":"Store Form Submission in Strapi","type":"n8n-nodes-base.strapi","position":[1340,-120],"parameters":{"columns":"Content,Author,Created,URL","operation":"create","contentType":"posts"},"credentials":{"strapiApi":{"id":"{{ $credentials.strapiApi.id }}","name":"Strapi Demo"}},"typeVersion":1,"id":"node-ecaf5134"},{"name":"Positive Tweet Sentiment?","type":"n8n-nodes-base.if","position":[1560,100],"parameters":{"conditions":{"number":[{"value1":"={{$json[\"documentSentiment\"][\"score\"]}}","value2":0.3,"operation":"larger"}]}},"typeVersion":1,"id":"node-5654475d"},{"id":"error-c6aa8ef2","name":"Error Handler","type":"n8n-nodes-base.stopAndError","typeVersion":1,"position":[1000,400],"parameters":{"message":"Workflow execution error","options":{}}}],"connections":{},"name":"Production Workflow","settings":{"executionOrder":"v1","saveManualExecutions":true,"callerPolicy":"workflowsFromSameOwner","errorWorkflow":null,"timezone":"UTC","executionTimeout":3600,"maxExecutions":1000,"retryOnFail":true,"retryCount":3},"meta":{"instanceId":"workflow-26968745","versionId":"1.0.0","createdAt":"2025-09-29T07:07:55.896573","updatedAt":"2025-09-29T07:07:55.896585","owner":"n8n-user","license":"MIT","category":"automation","status":"active","priority":"high","environment":"production"},"description":"Production-ready workflow: Production Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}