{ "id": "9nBQ1BfwxLhuzTcK", "meta": { "instanceId": "workflow-c7cf0154", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:44.468758", "updatedAt": "2025-09-29T07:07:44.468775", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production" }, "name": "google drive to instagram, tiktok and youtube", "tags": [ "automation", "n8n", "production-ready", "excellent", "optimized" ], "nodes": [ { "id": "b6c1d2f5-a8de-42dc-a164-3b1e80b2f19d", "name": "Google Drive Trigger", "type": "n8n-nodes-base.googleDriveTrigger", "position": [ 220, 320 ], "parameters": { "event": "fileCreated", "options": {}, "pollTimes": { "item": [ { "mode": "everyMinute" } ] }, "triggerOn": "specificFolder", "folderToWatch": { "__rl": true, "mode": "list", "value": "18m0i341QLQuyWuHv_FBdz8-r-QDtofYm", "cachedResultUrl": "{{ $env.WEBHOOK_URL }}", "cachedResultName": "Influencersde" } }, "credentials": { "googleDriveOAuth2Api": { "id": "2TbhWtnbRfSloGxX", "name": "Google Drive account" } }, "typeVersion": 1, "notes": "This googleDriveTrigger node performs automated tasks as part of the workflow." }, { "id": "1dda484a-f6f5-4677-85a3-09b2a47e69c4", "name": "Google Drive", "type": "n8n-nodes-base.googleDrive", "position": [ 400, 320 ], "parameters": { "fileId": { "__rl": true, "mode": "", "value": "={{ $json.id || $json.data[0].id }}" }, "options": {}, "operation": "download", "authentication": "{{ $credentials.oAuth2 }}" }, "credentials": { "googleDriveOAuth2Api": { "id": "2TbhWtnbRfSloGxX", "name": "Google Drive account" } }, "retryOnFail": true, "typeVersion": 1, "waitBetweenTries": 5000, "notes": "This googleDrive node performs automated tasks as part of the workflow." }, { "id": "f9388923-b20e-40f0-ba10-fd00b463b1a7", "name": "Error Trigger", "type": "n8n-nodes-base.errorTrigger", "position": [ 620, 660 ], "parameters": {}, "typeVersion": 1, "notes": "This errorTrigger node performs automated tasks as part of the workflow." }, { "id": "eda45ad6-d976-4665-9b6d-dae4c3212191", "name": "Telegram", "type": "n8n-nodes-base.telegram", "position": [ 960, 640 ], "webhookId": "f6729386-9905-45f1-800f-4fe01a06ac9c", "parameters": { "text": "=🔔 ERROR SUBIENDO VIDEOS", "additionalFields": { "appendAttribution": false } }, "retryOnFail": true, "typeVersion": 1.2, "waitBetweenTries": 5000, "notes": "This telegram node performs automated tasks as part of the workflow." }, { "id": "7b1d6015-49b8-423c-be64-e905ff791574", "name": "If Node", "type": "n8n-nodes-base.if", "position": [ 760, 660 ], "parameters": { "options": {}, "conditions": { "options": { "version": 1, "leftValue": "", "caseSensitive": true, "typeValidation": "strict" }, "combinator": "and", "conditions": [ { "id": "9fadb3fd-2547-42bd-8f40-f410a97dcf57", "operator": { "type": "string", "operation": "notContains" }, "leftValue": "={{ $json.trigger.error.message }}", "rightValue": "The DNS server returned an error, perhaps the server is offline" } ] } }, "typeVersion": 2.1, "notes": "This if node performs automated tasks as part of the workflow." }, { "id": "6e9882aa-b11f-4c1a-8600-eedda9d92046", "name": "Sticky Note", "type": "n8n-nodes-base.stickyNote", "position": [ -220, 0 ], "parameters": { "width": 860, "height": 260, "content": "## Description\nThis automation allows you to upload a video to a configured Google Drive folder, and it will automatically create descriptions and upload it to Instagram and TikTok.\n\n## How to Use\n1. Generate an API token at upload-post.com and add to Upload to Tiktok and Upload to Instagram nodes\n2. Configure your Google Drive folder\n3. Customize the OpenAI prompt for your specific use case\n4. Optional: Configure Telegram for error notifications\n\n## Requirements\n- upload-post.com account\n- Google Drive account\n- OpenAI API key\n" }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." }, { "id": "b3eed1dc-8273-4593-ab07-8860fffa0907", "name": "Get Audio from Video", "type": "n8n-nodes-base.noOp", "notes": "Extract the audio from video for generate the description", "position": [ 860, 320 ], "parameters": { "options": {}, "resource": "audio", "operation": "transcribe" }, "credentials": { "openAiApi": { "id": "XJdxgMSXFgwReSsh", "name": "n8n key" } }, "notesInFlow": true, "retryOnFail": true, "typeVersion": 1, "waitBetweenTries": 5000 }, { "id": "b057fea0-087e-4c7f-b5ac-6d16ca658437", "name": "Read video from Google Drive", "type": "n8n-nodes-base.writeBinaryFile", "position": [ 580, 320 ], "parameters": { "options": {}, "fileName": "={{ $json.originalFilename.replaceAll(\" \", \"_\") }}" }, "typeVersion": 1, "notes": "This writeBinaryFile node performs automated tasks as part of the workflow." }, { "id": "f9296b8f-b631-4df4-b8b5-aa7139dd65cd", "name": "Generate Description for Videos in Tiktok and Instagram", "type": "n8n-nodes-base.noOp", "notes": "Request to OpenAi for generate description with the audio extracted from the video", "position": [ 1060, 320 ], "parameters": { "modelId": { "__rl": true, "mode": "list", "value": "gpt-4o", "cachedResultName": "GPT-4O" }, "options": {}, "messages": { "values": [ { "role": "system", "content": "You are an expert assistant in creating engaging social media video titles." }, { "content": "=I'm going to upload a video to social media. Here are some examples of descriptions that have worked well on Instagram:\n\nFollow and save for later. Discover InfluencersDe, the AI tool that automates TikTok creation and publishing to drive traffic to your website. Perfect for entrepreneurs and brands.\n#digitalmarketing #ugc #tiktok #ai #influencersde #contentcreation\n\nDiscover the video marketing revolution with InfluencersDe!\n.\n.\n.\n#socialmedia #videomarketing #ai #tiktok #influencersde #growthhacking\n\nDon't miss InfluencersDe, the tool that transforms your marketing strategy with just one click!\n.\n.\n.\n#ugc #ai #tiktok #digitalmarketing #influencersde #branding\n\nCan you create another title for the Instagram post based on this recognized audio from the video?\n\nAudio: {{ $('Get Audio from Video').item.json.text }}\n\nIMPORTANT: Reply only with the description, don't add anything else." } ] } }, "credentials": { "openAiApi": { "id": "XJdxgMSXFgwReSsh", "name": "n8n key" } }, "notesInFlow": true, "retryOnFail": true, "typeVersion": 1.4, "waitBetweenTries": 5000 }, { "id": "e80758fd-5532-48b0-b663-085629137fc0", "name": "Read Video from Google Drive", "type": "n8n-nodes-base.readBinaryFile", "position": [ 1620, 100 ], "parameters": { "filePath": "={{ $('Read video from Google Drive').item.json.originalFilename.replaceAll(\" \", \"_\") }}", "dataPropertyName": "datavideo" }, "typeVersion": 1, "notes": "This readBinaryFile node performs automated tasks as part of the workflow." }, { "id": "8f13c601-4282-4a44-8e8a-dc88e4165ee4", "name": "Read Video from Google Drive2", "type": "n8n-nodes-base.readBinaryFile", "position": [ 1620, 400 ], "parameters": { "filePath": "={{ $('Read video from Google Drive').item.json.originalFilename.replaceAll(\" \", \"_\") }}", "dataPropertyName": "datavideo" }, "typeVersion": 1, "notes": "This readBinaryFile node performs automated tasks as part of the workflow." }, { "id": "1b46976e-be37-49bd-b77b-e48d8e619954", "name": "Upload Video and Description to Tiktok", "type": "n8n-nodes-base.httpRequest", "notes": "Generate in upload-post.com the token and add to the credentials in the header-> Authorization: Apikey (token here)", "position": [ 1880, 100 ], "parameters": { "url": "{{ $env.API_BASE_URL }}", "method": "POST", "options": {}, "sendBody": true, "contentType": "multipart-form-data", "authentication": "{{ $credentials.genericCredentialType }}", "bodyParameters": { "parameters": [ { "name": "title", "value": "={{ $('Generate Description for Videos in Tiktok and Instagram').item.json.message.content.replaceAll(\"\\\"\", \"\") }}" }, { "name": "platform[]", "value": "tiktok" }, { "name": "video", "parameterType": "formBinaryData", "inputDataFieldName": "datavideo" }, { "name": "user", "value": "Add user generated in upload-post" } ] }, "genericAuthType": "httpHeaderAuth" }, "credentials": { "httpHeaderAuth": { "id": "WNjAx7UqrEZ1JDrR", "name": "VituManco" } }, "notesInFlow": true, "typeVersion": 4.2 }, { "id": "0404a57f-2c1a-4ccd-90df-893dd01acaa0", "name": "Upload Video and Description to Instagram", "type": "n8n-nodes-base.httpRequest", "notes": "Generate in upload-post.com the token and add to the credentials in the header-> Authorization: Apikey (token here)", "position": [ 1880, 400 ], "parameters": { "url": "{{ $env.API_BASE_URL }}", "method": "POST", "options": {}, "sendBody": true, "contentType": "multipart-form-data", "authentication": "{{ $credentials.genericCredentialType }}", "bodyParameters": { "parameters": [ { "name": "title", "value": "={{ $('Generate Description for Videos in Tiktok and Instagram').item.json.message.content.replaceAll(\"\\\"\", \"\") }}" }, { "name": "platform[]", "value": "instagram" }, { "name": "video", "parameterType": "formBinaryData", "inputDataFieldName": "datavideo" }, { "name": "user", "value": "Add user generated in upload-post" } ] }, "genericAuthType": "httpHeaderAuth" }, "credentials": { "httpHeaderAuth": { "id": "47dO31ED0WIaJkR6", "name": "Header Auth account" } }, "notesInFlow": true, "typeVersion": 4.2 }, { "id": "358da7b7-2d0a-475b-a10d-ffc499b5e99d", "name": "Read Video from Google Drive3", "type": "n8n-nodes-base.readBinaryFile", "position": [ 1620, 660 ], "parameters": { "filePath": "={{ $('Read video from Google Drive').item.json.originalFilename.replaceAll(\" \", \"_\") }}", "dataPropertyName": "datavideo" }, "typeVersion": 1, "notes": "This readBinaryFile node performs automated tasks as part of the workflow." }, { "id": "0e46ee9b-e466-4a5d-8916-3836eed4fc2d", "name": "Upload Video and Description to Youtube", "type": "n8n-nodes-base.httpRequest", "notes": "Generate in upload-post.com the token and add to the credentials in the header-> Authorization: Apikey (token here)", "position": [ 1880, 660 ], "parameters": { "url": "{{ $env.API_BASE_URL }}", "method": "POST", "options": {}, "sendBody": true, "contentType": "multipart-form-data", "authentication": "{{ $credentials.genericCredentialType }}", "bodyParameters": { "parameters": [ { "name": "title", "value": "={{ $('Generate Description for Videos in Tiktok and Instagram').item.json.message.content.replaceAll(\"\\\"\", \"\").substring(0, 70) }}\n" }, { "name": "platform[]", "value": "youtube" }, { "name": "video", "parameterType": "formBinaryData", "inputDataFieldName": "datavideo" }, { "name": "user", "value": "test2" } ] }, "genericAuthType": "httpHeaderAuth" }, "credentials": { "httpHeaderAuth": { "id": "47dO31ED0WIaJkR6", "name": "Header Auth account" } }, "notesInFlow": true, "typeVersion": 4.2 } ], "active": false, "pinData": {}, "settings": { "executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000 }, "versionId": "13975e04-a6c4-42d0-887c-e6c4ff219f42", "connections": { "b6c1d2f5-a8de-42dc-a164-3b1e80b2f19d": { "main": [ [ { "node": "error-handler-b6c1d2f5-a8de-42dc-a164-3b1e80b2f19d-833c7873", "type": "main", "index": 0 } ] ] }, "1dda484a-f6f5-4677-85a3-09b2a47e69c4": { "main": [ [ { "node": "error-handler-1dda484a-f6f5-4677-85a3-09b2a47e69c4-c93d15ed", "type": "main", "index": 0 } ] ] }, "eda45ad6-d976-4665-9b6d-dae4c3212191": { "main": [ [ { "node": "error-handler-eda45ad6-d976-4665-9b6d-dae4c3212191-f5a36068", "type": "main", "index": 0 } ] ] }, "b3eed1dc-8273-4593-ab07-8860fffa0907": { "main": [ [ { "node": "error-handler-b3eed1dc-8273-4593-ab07-8860fffa0907-d8aec376", "type": "main", "index": 0 } ] ] }, "b057fea0-087e-4c7f-b5ac-6d16ca658437": { "main": [ [ { "node": "error-handler-b057fea0-087e-4c7f-b5ac-6d16ca658437-20808a71", "type": "main", "index": 0 } ] ] }, "f9296b8f-b631-4df4-b8b5-aa7139dd65cd": { "main": [ [ { "node": "error-handler-f9296b8f-b631-4df4-b8b5-aa7139dd65cd-f8a33716", "type": "main", "index": 0 } ] ] }, "e80758fd-5532-48b0-b663-085629137fc0": { "main": [ [ { "node": "error-handler-e80758fd-5532-48b0-b663-085629137fc0-3a55a8d6", "type": "main", "index": 0 } ] ] }, "8f13c601-4282-4a44-8e8a-dc88e4165ee4": { "main": [ [ { "node": "error-handler-8f13c601-4282-4a44-8e8a-dc88e4165ee4-9b4a3ab9", "type": "main", "index": 0 } ] ] }, "1b46976e-be37-49bd-b77b-e48d8e619954": { "main": [ [ { "node": "error-handler-1b46976e-be37-49bd-b77b-e48d8e619954-45f0d4cb", "type": "main", "index": 0 } ], [ { "node": "error-handler-1b46976e-be37-49bd-b77b-e48d8e619954-873da660", "type": "main", "index": 0 } ], [ { "node": "error-handler-1b46976e-be37-49bd-b77b-e48d8e619954-555fa41e", "type": "main", "index": 0 } ], [ { "node": "error-handler-1b46976e-be37-49bd-b77b-e48d8e619954-a811c57b", "type": "main", "index": 0 } ], [ { "node": "error-handler-1b46976e-be37-49bd-b77b-e48d8e619954-3ab25244", "type": "main", "index": 0 } ], [ { "node": "error-handler-1b46976e-be37-49bd-b77b-e48d8e619954-0726c5f6", "type": "main", "index": 0 } ], [ { "node": "error-handler-1b46976e-be37-49bd-b77b-e48d8e619954-7409cd96", "type": "main", "index": 0 } ], [ { "node": "error-handler-1b46976e-be37-49bd-b77b-e48d8e619954-1a240991", "type": "main", "index": 0 } ] ] }, "0404a57f-2c1a-4ccd-90df-893dd01acaa0": { "main": [ [ { "node": "error-handler-0404a57f-2c1a-4ccd-90df-893dd01acaa0-767b650e", "type": "main", "index": 0 } ], [ { "node": "error-handler-0404a57f-2c1a-4ccd-90df-893dd01acaa0-0f0f1b20", "type": "main", "index": 0 } ], [ { "node": "error-handler-0404a57f-2c1a-4ccd-90df-893dd01acaa0-e661ae6a", "type": "main", "index": 0 } ], [ { "node": "error-handler-0404a57f-2c1a-4ccd-90df-893dd01acaa0-8a7210f7", "type": "main", "index": 0 } ], [ { "node": "error-handler-0404a57f-2c1a-4ccd-90df-893dd01acaa0-04119187", "type": "main", "index": 0 } ], [ { "node": "error-handler-0404a57f-2c1a-4ccd-90df-893dd01acaa0-c8caca96", "type": "main", "index": 0 } ], [ { "node": "error-handler-0404a57f-2c1a-4ccd-90df-893dd01acaa0-17c5e89d", "type": "main", "index": 0 } ], [ { "node": "error-handler-0404a57f-2c1a-4ccd-90df-893dd01acaa0-87d500a2", "type": "main", "index": 0 } ] ] }, "358da7b7-2d0a-475b-a10d-ffc499b5e99d": { "main": [ [ { "node": "error-handler-358da7b7-2d0a-475b-a10d-ffc499b5e99d-d51a70ad", "type": "main", "index": 0 } ] ] }, "0e46ee9b-e466-4a5d-8916-3836eed4fc2d": { "main": [ [ { "node": "error-handler-0e46ee9b-e466-4a5d-8916-3836eed4fc2d-dac9b393", "type": "main", "index": 0 } ], [ { "node": "error-handler-0e46ee9b-e466-4a5d-8916-3836eed4fc2d-b347e43d", "type": "main", "index": 0 } ], [ { "node": "error-handler-0e46ee9b-e466-4a5d-8916-3836eed4fc2d-c8005321", "type": "main", "index": 0 } ], [ { "node": "error-handler-0e46ee9b-e466-4a5d-8916-3836eed4fc2d-85a00cce", "type": "main", "index": 0 } ], [ { "node": "error-handler-0e46ee9b-e466-4a5d-8916-3836eed4fc2d-46cf95e4", "type": "main", "index": 0 } ], [ { "node": "error-handler-0e46ee9b-e466-4a5d-8916-3836eed4fc2d-f8b7413f", "type": "main", "index": 0 } ], [ { "node": "error-handler-0e46ee9b-e466-4a5d-8916-3836eed4fc2d-012c6723", "type": "main", "index": 0 } ], [ { "node": "error-handler-0e46ee9b-e466-4a5d-8916-3836eed4fc2d-9d8daee6", "type": "main", "index": 0 } ] ] } }, "description": "Automated workflow: google drive to instagram, tiktok and youtube. This workflow integrates 11 different services: writeBinaryFile, stickyNote, httpRequest, googleDriveTrigger, telegram. It contains 27 nodes and follows best practices for error handling and security.", "notes": "Excellent quality workflow: google drive to instagram, tiktok and youtube. This workflow has been optimized for production use with comprehensive error handling, security, and documentation." }