This workflow follows the Discord → HTTP Request recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "runout",
"nodes": [
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "08d87ee5-a950-4b17-a81a-083fcab10f39",
"name": "jobTitle",
"value": "= {{ $json.query.jobTitle }}",
"type": "string"
},
{
"id": "f844e3eb-eac1-4d70-8402-53f6bf79e947",
"name": "us_salary_info",
"value": "={{ $json.query.us_salary }}",
"type": "string"
},
{
"id": "c2052a74-c1b5-4c78-a89d-4374f981cec0",
"name": "th_salary_info",
"value": "={{ $json.query.th_salary }}",
"type": "string"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
208,
0
],
"id": "4b0a5c1e-ba79-4d7f-a74b-bcbab63fe055",
"name": "getJob",
"notesInFlow": true,
"notes": "get job from webhook every 10hr"
},
{
"parameters": {
"url": "https://api.pexels.com/v1/videos/search",
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "query",
"value": "= {{ $json.jobTitle }} working"
},
{
"name": "per_page",
"value": "3"
}
]
},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "1Ofwf01FL051TMbxtAdhDiC8oViqfwJVq0qgZHKtpi2BB9AsXlptzOWs"
}
]
},
"options": {
"response": {
"response": {
"responseFormat": "json"
}
}
}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.3,
"position": [
416,
0
],
"id": "2375f1f6-5455-42af-a737-4a11c86eed39",
"name": "getVideo",
"notesInFlow": false
},
{
"parameters": {
"modelId": {
"__rl": true,
"value": "models/gemini-2.5-flash",
"mode": "list",
"cachedResultName": "models/gemini-2.5-flash"
},
"messages": {
"values": [
{
"content": "=\u0e04\u0e38\u0e13\u0e04\u0e37\u0e2d Content Creator \u0e2a\u0e32\u0e22 TikTok \u0e17\u0e35\u0e48\u0e17\u0e33\u0e04\u0e25\u0e34\u0e1b\u0e43\u0e2b\u0e49\u0e04\u0e19\u0e44\u0e17\u0e22\u0e14\u0e39\n\u0e40\u0e1b\u0e49\u0e32\u0e2b\u0e21\u0e32\u0e22: \u0e40\u0e02\u0e35\u0e22\u0e19\u0e2a\u0e04\u0e23\u0e34\u0e1b\u0e15\u0e4c TikTok (\u0e44\u0e21\u0e48\u0e40\u0e01\u0e34\u0e19 45 \u0e27\u0e34) \u0e40\u0e1b\u0e23\u0e35\u0e22\u0e1a\u0e40\u0e17\u0e35\u0e22\u0e1a\u0e23\u0e32\u0e22\u0e44\u0e14\u0e49\u0e2d\u0e32\u0e0a\u0e35\u0e1e '{{ $('getJob').item.json.jobTitle }}' \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07 US \u0e01\u0e31\u0e1a \u0e44\u0e17\u0e22 \u0e43\u0e2b\u0e49\u0e04\u0e19\u0e44\u0e17\u0e22 \"\u0e27\u0e49\u0e32\u0e27\" \u0e17\u0e35\u0e48\u0e2a\u0e38\u0e14\n\n\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e14\u0e34\u0e1a US (\u0e17\u0e35\u0e48\u0e04\u0e38\u0e13\u0e1b\u0e49\u0e2d\u0e19\u0e21\u0e32):\n- {{ $('getJob').item.json.us_salary_info }}\n\n\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e14\u0e34\u0e1a TH (\u0e17\u0e35\u0e48\u0e04\u0e38\u0e13\u0e1b\u0e49\u0e2d\u0e19\u0e21\u0e32):\n- {{ $('getJob').item.json.th_salary_info }}\n\n---\n\n**\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07 (\u0e2a\u0e33\u0e04\u0e31\u0e0d\u0e17\u0e35\u0e48\u0e2a\u0e38\u0e14!):**\n1. \u0e2d\u0e48\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e14\u0e34\u0e1a \u0e41\u0e25\u0e49\u0e27\u0e14\u0e36\u0e07 \"\u0e15\u0e31\u0e27\u0e40\u0e25\u0e02\" \u0e40\u0e07\u0e34\u0e19\u0e40\u0e14\u0e37\u0e2d\u0e19 US \u0e41\u0e25\u0e30 TH \u0e17\u0e35\u0e48\u0e0a\u0e31\u0e14\u0e40\u0e08\u0e19\u0e17\u0e35\u0e48\u0e2a\u0e38\u0e14\n3. \u0e40\u0e02\u0e35\u0e22\u0e19\u0e2a\u0e04\u0e23\u0e34\u0e1b\u0e15\u0e4c\u0e17\u0e35\u0e48\u0e40\u0e1b\u0e23\u0e35\u0e22\u0e1a\u0e40\u0e17\u0e35\u0e22\u0e1a\u0e43\u0e2b\u0e49\u0e40\u0e2b\u0e47\u0e19\u0e04\u0e27\u0e32\u0e21\u0e15\u0e48\u0e32\u0e07\u0e0a\u0e31\u0e14\u0e40\u0e08\u0e19 \u0e43\u0e0a\u0e49\u0e20\u0e32\u0e29\u0e32\u0e15\u0e37\u0e48\u0e19\u0e40\u0e15\u0e49\u0e19 \u0e01\u0e23\u0e30\u0e41\u0e17\u0e01\u0e43\u0e08\n\n**4. (\u0e01\u0e0f\u0e40\u0e2b\u0e25\u0e47\u0e01) \u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e17\u0e35\u0e48\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23:**\n - \u0e15\u0e49\u0e2d\u0e07\u0e40\u0e1b\u0e47\u0e19 **\"\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21\u0e18\u0e23\u0e23\u0e21\u0e14\u0e32\" (Plain Text)** \u0e22\u0e48\u0e2d\u0e2b\u0e19\u0e49\u0e32\u0e40\u0e14\u0e35\u0e22\u0e27\u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19\n - **\u0e2b\u0e49\u0e32\u0e21** \u0e43\u0e2a\u0e48 JSON (\u0e40\u0e0a\u0e48\u0e19 `{\"script\": ...}`)\n - **\u0e2b\u0e49\u0e32\u0e21** \u0e43\u0e2a\u0e48\u0e15\u0e31\u0e27\u0e2d\u0e31\u0e01\u0e29\u0e23\u0e1e\u0e34\u0e40\u0e28\u0e29 (\u0e40\u0e0a\u0e48\u0e19 `\\n` \u0e2b\u0e23\u0e37\u0e2d `[` \u0e2b\u0e23\u0e37\u0e2d `]`)\n - **\u0e2b\u0e49\u0e32\u0e21** \u0e43\u0e2a\u0e48\u0e04\u0e33\u0e19\u0e33\u0e2b\u0e19\u0e49\u0e32 (\u0e40\u0e0a\u0e48\u0e19 `(Hook)`, `(Body)`, `(CTA)`)\n---\n\n**\u0e15\u0e31\u0e27\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e17\u0e35\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07 (\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21\u0e14\u0e34\u0e1a\u0e46 \u0e17\u0e35\u0e48\u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e1e\u0e32\u0e01\u0e22\u0e4c\u0e40\u0e2a\u0e35\u0e22\u0e07):**\n\u0e0a\u0e47\u0e2d\u0e01! \u0e23\u0e32\u0e22\u0e44\u0e14\u0e49\u0e0a\u0e48\u0e32\u0e07\u0e1b\u0e23\u0e30\u0e1b\u0e32\u0e17\u0e35\u0e48\u0e2d\u0e40\u0e21\u0e23\u0e34\u0e01\u0e32... \u0e40\u0e04\u0e49\u0e32\u0e44\u0e14\u0e49\u0e01\u0e31\u0e19\u0e40\u0e14\u0e37\u0e2d\u0e19\u0e25\u0e30 $5,000 (\u0e1b\u0e23\u0e30\u0e21\u0e32\u0e13 180,000 \u0e1a\u0e32\u0e17!!) \u0e41\u0e21\u0e48\u0e40\u0e08\u0e49\u0e32!! \u0e41\u0e25\u0e49\u0e27\u0e14\u0e39\u0e17\u0e35\u0e48\u0e44\u0e17\u0e22... \u0e0a\u0e48\u0e32\u0e07\u0e1b\u0e23\u0e30\u0e1b\u0e32\u0e17\u0e31\u0e48\u0e27\u0e44\u0e1b\u0e44\u0e14\u0e49\u0e1b\u0e23\u0e30\u0e21\u0e32\u0e13 18,000 \u0e1a\u0e32\u0e17!! \u0e15\u0e48\u0e32\u0e07\u0e01\u0e31\u0e19 10 \u0e40\u0e17\u0e48\u0e32!! \u0e43\u0e04\u0e23\u0e2d\u0e22\u0e32\u0e01\u0e22\u0e49\u0e32\u0e22\u0e1b\u0e23\u0e30\u0e40\u0e17\u0e28\u0e1a\u0e49\u0e32\u0e07? \u0e04\u0e2d\u0e21\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e21\u0e32\u0e14\u0e48\u0e27\u0e19!!"
}
]
},
"jsonOutput": true,
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"typeVersion": 1,
"position": [
624,
0
],
"id": "ee1f6b57-ff58-425f-a661-6bbfde18148e",
"name": "getScript",
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"authentication": "webhook",
"content": "=\u2728 TikTok Idea \u0e43\u0e2b\u0e21\u0e48\u0e21\u0e32\u0e41\u0e25\u0e49\u0e27! \u2728\n\u0e2d\u0e32\u0e0a\u0e35\u0e1e: {{ $('getJob').item.json.jobTitle }}\n\n--- \u0e2a\u0e04\u0e23\u0e34\u0e1b\u0e15\u0e4c\u0e08\u0e32\u0e01 AI ---\n{{ $json.content.parts[0].text }}\n\n--- \u0e08\u0e1a\u0e2a\u0e04\u0e23\u0e34\u0e1b\u0e15\u0e4c ---\n\n\ud83d\udcf9 Video Stock (\u0e40\u0e2d\u0e32\u0e44\u0e1b\u0e43\u0e0a\u0e49\u0e44\u0e14\u0e49):\n{{ $('getVideo').item.json.videos[0].url }}\n\n",
"options": {}
},
"type": "n8n-nodes-base.discord",
"typeVersion": 2,
"position": [
1200,
16
],
"id": "17cae700-6db7-41fe-aab7-2459c0444d02",
"name": "sendDiscord",
"credentials": {
"discordWebhookApi": {
"name": "<your credential>"
}
},
"disabled": true
},
{
"parameters": {
"url": "https://api.elevenlabs.io/v1/models",
"sendHeaders": true,
"specifyHeaders": "json",
"jsonHeaders": "{\n \"xi-api-key\": \"77247960b4dfb69d4c8376cb5102c9ed555aacef3f37e594198d5d090c57b55d\",\n \"Content-Type\": \"application/json\"\n}",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.3,
"position": [
1632,
144
],
"id": "1fb77602-b2df-45e6-bac4-6cb30b8e0452",
"name": "HTTP Request1"
},
{
"parameters": {
"method": "POST",
"url": "https://api.elevenlabs.io/v1/text-to-speech/TX3LPaxmHKxFdv7VOQHJ",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "xi-api-key",
"value": "77247960b4dfb69d4c8376cb5102c9ed555aacef3f37e594198d5d090c57b55d"
},
{
"name": "Content-Type",
"value": "application/json"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"text\": {{ $json.content.parts[0].text }},\n \"model_id\": \"eleven_v3\",\n \"voice_settings\": {\n \"stability\": 1,\n \"similarity_boost\": 1\n }\n}",
"options": {
"response": {
"response": {
"responseFormat": "file",
"outputPropertyName": "tiktok_audio"
}
}
}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.3,
"position": [
976,
0
],
"id": "e2012f3a-233e-41e1-bb97-d7ce85ff591a",
"name": "generateAudio",
"alwaysOutputData": false
},
{
"parameters": {
"operation": "binaryToPropery",
"binaryPropertyName": "tiktok_audio",
"destinationKey": "myAudioFile",
"options": {
"keepSource": "json"
}
},
"type": "n8n-nodes-base.extractFromFile",
"typeVersion": 1,
"position": [
1632,
-32
],
"id": "694608aa-2d28-4ba5-b6e6-26f90d366da8",
"name": "extractAudio1"
},
{
"parameters": {
"method": "POST",
"url": "https://discord.com/api/webhooks/1438011379742281729/DGcD9TOP4PcRN0Ixpj_g0VRAd8iv_NMXV0L6qLGE6N7q5jF9ZqoaNmWTUH4pf4ZYlL3n",
"sendBody": true,
"contentType": "multipart-form-data",
"bodyParameters": {
"parameters": [
{
"parameterType": "formBinaryData",
"name": "file",
"inputDataFieldName": "tiktok_audio"
},
{
"name": "payload_json",
"value": "={{ JSON.stringify({\n content: `**\ud83e\udde0 genIdea:**\\n**job:** ${$('getJob').item.json.jobTitle}\\n\\n**\ud83d\udcdd genScript:**\\n${$json.content.parts[0].text}\\n\\n**\ud83d\udcf9 genVid:**\\n\ud83d\udd17 ${$('getVideo').item.json.videos[0].url}`\n}) }}"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.3,
"position": [
1200,
-144
],
"id": "977244b7-9af6-4262-9296-fb3274ccbfb9",
"name": "HTTP Request"
},
{
"parameters": {
"path": "abb72672-0f2e-417b-8682-e7311d0266ef",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
16,
0
],
"id": "7ddc154a-8cef-4038-9d40-c1f5a34b2f7a",
"name": "Webhook"
},
{
"parameters": {
"modelId": {
"__rl": true,
"value": "models/gemini-2.0-flash",
"mode": "list",
"cachedResultName": "models/gemini-2.0-flash"
},
"messages": {
"values": [
{
"content": "=\u0e04\u0e38\u0e13\u0e04\u0e37\u0e2d Content Creator \u0e2a\u0e32\u0e22 TikTok \u0e17\u0e35\u0e48\u0e17\u0e33\u0e04\u0e25\u0e34\u0e1b\u0e43\u0e2b\u0e49\u0e04\u0e19\u0e44\u0e17\u0e22\u0e14\u0e39\n\u0e40\u0e1b\u0e49\u0e32\u0e2b\u0e21\u0e32\u0e22: \u0e40\u0e02\u0e35\u0e22\u0e19\u0e2a\u0e04\u0e23\u0e34\u0e1b\u0e15\u0e4c TikTok (\u0e44\u0e21\u0e48\u0e40\u0e01\u0e34\u0e19 45 \u0e27\u0e34) \u0e40\u0e1b\u0e23\u0e35\u0e22\u0e1a\u0e40\u0e17\u0e35\u0e22\u0e1a\u0e23\u0e32\u0e22\u0e44\u0e14\u0e49\u0e2d\u0e32\u0e0a\u0e35\u0e1e '{{ $('getJob').item.json.jobTitle }}' \u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07 US \u0e01\u0e31\u0e1a \u0e44\u0e17\u0e22 \u0e43\u0e2b\u0e49\u0e04\u0e19\u0e44\u0e17\u0e22 \"\u0e27\u0e49\u0e32\u0e27\" \u0e17\u0e35\u0e48\u0e2a\u0e38\u0e14\n\n\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e14\u0e34\u0e1a US (\u0e17\u0e35\u0e48\u0e04\u0e38\u0e13\u0e1b\u0e49\u0e2d\u0e19\u0e21\u0e32):\n- {{ $('getJob').item.json.us_salary_info }}\n\n\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e14\u0e34\u0e1a TH (\u0e17\u0e35\u0e48\u0e04\u0e38\u0e13\u0e1b\u0e49\u0e2d\u0e19\u0e21\u0e32):\n- {{ $('getJob').item.json.th_salary_info }}\n\n\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07:\n1. \u0e2d\u0e48\u0e32\u0e19\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e14\u0e34\u0e1a \u0e41\u0e25\u0e49\u0e27\u0e14\u0e36\u0e07 \"\u0e15\u0e31\u0e27\u0e40\u0e25\u0e02\" \u0e40\u0e07\u0e34\u0e19\u0e40\u0e14\u0e37\u0e2d\u0e19 US \u0e41\u0e25\u0e30 TH \u0e17\u0e35\u0e48\u0e0a\u0e31\u0e14\u0e40\u0e08\u0e19\u0e17\u0e35\u0e48\u0e2a\u0e38\u0e14\n2. \u0e41\u0e1b\u0e25\u0e07 US \u0e40\u0e1b\u0e47\u0e19\u0e1a\u0e32\u0e17 (\u0e43\u0e0a\u0e49 1 USD = 36 THB) \u0e41\u0e25\u0e30\u0e40\u0e19\u0e49\u0e19\u0e15\u0e31\u0e27\u0e40\u0e25\u0e02\u0e17\u0e35\u0e48\u0e41\u0e1b\u0e25\u0e07\u0e41\u0e25\u0e49\u0e27\n3. \u0e40\u0e02\u0e35\u0e22\u0e19\u0e2a\u0e04\u0e23\u0e34\u0e1b\u0e15\u0e4c\u0e17\u0e35\u0e48\u0e40\u0e1b\u0e23\u0e35\u0e22\u0e1a\u0e40\u0e17\u0e35\u0e22\u0e1a\u0e43\u0e2b\u0e49\u0e40\u0e2b\u0e47\u0e19\u0e04\u0e27\u0e32\u0e21\u0e15\u0e48\u0e32\u0e07\u0e0a\u0e31\u0e14\u0e40\u0e08\u0e19 \u0e43\u0e0a\u0e49\u0e20\u0e32\u0e29\u0e32\u0e15\u0e37\u0e48\u0e19\u0e40\u0e15\u0e49\u0e19 \u0e01\u0e23\u0e30\u0e41\u0e17\u0e01\u0e43\u0e08\n4. \u0e15\u0e49\u0e2d\u0e07\u0e21\u0e35 Hook (\u0e1b\u0e23\u0e30\u0e42\u0e22\u0e04\u0e40\u0e1b\u0e34\u0e14) \u0e17\u0e35\u0e48\u0e2b\u0e22\u0e38\u0e14\u0e19\u0e34\u0e48\u0e07\n5. \u0e15\u0e49\u0e2d\u0e07\u0e21\u0e35 Call to Action (\u0e0a\u0e27\u0e19\u0e04\u0e2d\u0e21\u0e40\u0e21\u0e19\u0e15\u0e4c)\n6. \u0e15\u0e2d\u0e1a\u0e01\u0e25\u0e31\u0e1a\u0e40\u0e1b\u0e47\u0e19 \"\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21\u0e18\u0e23\u0e23\u0e21\u0e14\u0e32\" \u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19 (\u0e44\u0e21\u0e48\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e2a\u0e48 JSON \u0e2b\u0e23\u0e37\u0e2d Markdown)\n\n\n\u0e15\u0e31\u0e27\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e2a\u0e04\u0e23\u0e34\u0e1b\u0e15\u0e4c:\n(Hook) \u0e15\u0e30\u0e25\u0e36\u0e07! \u0e40\u0e07\u0e34\u0e19\u0e40\u0e14\u0e37\u0e2d\u0e19\u0e1e\u0e22\u0e32\u0e1a\u0e32\u0e25\u0e17\u0e35\u0e48\u0e40\u0e21\u0e01\u0e32...\n(Body) \u0e40\u0e04\u0e49\u0e32\u0e44\u0e14\u0e49\u0e01\u0e31\u0e19\u0e40\u0e14\u0e37\u0e2d\u0e19\u0e25\u0e30 $... (\u0e04\u0e34\u0e14\u0e40\u0e1b\u0e47\u0e19\u0e40\u0e07\u0e34\u0e19\u0e44\u0e17\u0e22 ... \u0e1a\u0e32\u0e17!!) ...\n(Compare) \u0e40\u0e17\u0e35\u0e22\u0e1a\u0e01\u0e31\u0e1a\u0e17\u0e35\u0e48\u0e44\u0e17\u0e22...\n(CTA) \u0e04\u0e38\u0e13\u0e27\u0e48\u0e32\u0e04\u0e38\u0e49\u0e21\u0e21\u0e31\u0e49\u0e22? \u0e04\u0e2d\u0e21\u0e40\u0e21\u0e19\u0e15\u0e4c\u0e21\u0e32!"
}
]
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"typeVersion": 1,
"position": [
1616,
320
],
"id": "c4b230f9-9674-4fd8-b5a5-45db72c52005",
"name": "getScript1",
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
}
}
],
"connections": {
"getJob": {
"main": [
[
{
"node": "getVideo",
"type": "main",
"index": 0
}
]
]
},
"getVideo": {
"main": [
[
{
"node": "getScript",
"type": "main",
"index": 0
}
]
]
},
"getScript": {
"main": [
[
{
"node": "generateAudio",
"type": "main",
"index": 0
}
]
]
},
"generateAudio": {
"main": [
[
{
"node": "sendDiscord",
"type": "main",
"index": 0
},
{
"node": "HTTP Request",
"type": "main",
"index": 0
}
]
]
},
"Webhook": {
"main": [
[
{
"node": "getJob",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1",
"callerPolicy": "workflowsFromSameOwner",
"availableInMCP": false
},
"versionId": "51355713-71d1-4878-84be-93880d845b96",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "9KGJrnrk6Pm215Bu",
"tags": [
{
"updatedAt": "2025-11-12T10:11:12.881Z",
"createdAt": "2025-11-12T10:11:12.881Z",
"id": "fN1AIJngPXypopxp",
"name": "part2"
}
]
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
discordWebhookApigooglePalmApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
runout. Uses httpRequest, googleGemini, discord. Webhook trigger; 10 nodes.
Source: https://github.com/d234mkikodo/n8n-workflow/blob/8c8de5d4c7fc7939d82b46d7cc67bcdc2d72f948/my-tts-workflow.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This workflow helps you repurpose your YouTube videos across multiple social media platforms with zero manual effort. It’s designed for creators, businesses, and marketers who want to maximize reach w
This workflow automates the process of generating stylized product photos for e-commerce by combining real product shots with creative templates. It enables the creation of a complete set of images fo
How it works Runs on schedule (Monday-Friday at 9 AM) to automate lead generation Searches for companies on Google Maps by location and category Extracts owner information from company websites and im
RSS Summary. Uses github, discord, openAi, httpRequest. Scheduled trigger; 26 nodes.
This workflow is designed for creators, designers, and automation builders who need to generate visually consistent images at scale. It is ideal for teams producing branded visuals, social media asset