This workflow corresponds to n8n.io template #7098 — we link there as the canonical source.
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 →
{
"id": "kecdSL7mPuYHkt1i",
"name": "10. Generate Text-to-Video & Image-to-Video Content with Seedance 1 Lite AI",
"tags": [],
"nodes": [
{
"id": "c132991d-92b6-4a66-9f31-112f61114b4d",
"name": "On clicking 'execute'",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-512,
-208
],
"parameters": {},
"typeVersion": 1
},
{
"id": "7295895f-dccd-402f-b6fe-e27010a1152f",
"name": "Set API Key",
"type": "n8n-nodes-base.set",
"position": [
-304,
-208
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "64cd57c7-2224-48a6-88df-c37b310f8eb3",
"name": "replicate_api_key",
"type": "string",
"value": "YOUR_REPLICATE_API_KEY"
}
]
}
},
"typeVersion": 3.3
},
{
"id": "969df85b-2ecc-4c82-b2ad-ff6b6baf420e",
"name": "Create Prediction",
"type": "n8n-nodes-base.httpRequest",
"position": [
-48,
-208
],
"parameters": {
"url": "https://api.replicate.com/v1/predictions",
"method": "POST",
"options": {
"timeout": 60000
},
"jsonBody": "{\n \"version\": \"b6519549e375404f45af5ef2e4b01f651d4014f3b57d3270b430e0523bad9835\",\n \"input\": {\n \"prompt\": \"prompt value\",\n \"seed\": 1\n }\n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "={{ 'Bearer ' + $('Set API Key').item.json.replicate_api_key }}"
},
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "b6935279-4f81-4473-bc8c-ea688290220f",
"name": "Extract Prediction ID",
"type": "n8n-nodes-base.code",
"position": [
144,
-208
],
"parameters": {
"mode": "runOnceForEachItem",
"jsCode": "// Extract prediction ID and initial status\\nconst prediction = $input.item.json;\\nconst predictionId = prediction.id;\\nconst initialStatus = prediction.status;\\n\\n// Store the prediction ID for polling\\nreturn {\\n predictionId: predictionId,\\n status: initialStatus,\\n predictionUrl: `https://api.replicate.com/v1/predictions/${predictionId}`\\n};"
},
"typeVersion": 2
},
{
"id": "92b77e16-309e-4728-986f-248123cb9f06",
"name": "Wait",
"type": "n8n-nodes-base.wait",
"position": [
368,
-208
],
"parameters": {
"unit": "seconds",
"amount": 2
},
"typeVersion": 1
},
{
"id": "f35f0e81-4c76-42a0-9fd0-6c71e4058630",
"name": "Check Prediction Status",
"type": "n8n-nodes-base.httpRequest",
"position": [
592,
-208
],
"parameters": {
"url": "={{ $json.predictionUrl }}",
"options": {},
"sendHeaders": true,
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "={{ 'Bearer ' + $('Set API Key').item.json.replicate_api_key }}"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "f5b73bf7-ac53-4126-9087-f5a1b61c45ea",
"name": "Check If Complete",
"type": "n8n-nodes-base.if",
"position": [
816,
-208
],
"parameters": {
"conditions": {
"boolean": [
{
"value1": "={{ $json.status }}",
"value2": "succeeded"
}
]
}
},
"typeVersion": 1
},
{
"id": "c10bf454-3568-4d02-a4b3-373b439ea939",
"name": "Process Result",
"type": "n8n-nodes-base.code",
"position": [
1056,
-320
],
"parameters": {
"mode": "runOnceForEachItem",
"jsCode": "// Process the completed prediction\\nconst result = $input.item.json;\\n\\nreturn {\\n status: result.status,\\n output: result.output,\\n metrics: result.metrics,\\n created_at: result.created_at,\\n completed_at: result.completed_at,\\n model: 'bytedance/seedance-1-lite',\\n video_url: result.output\\n};"
},
"typeVersion": 2
},
{
"id": "585f1276-7244-444d-9b69-5c7897ad1098",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-576,
-512
],
"parameters": {
"color": 5,
"width": 438,
"height": 511,
"content": "## \u26a1 Section 1: Start & Authenticate\n\n* **\u25b6\ufe0f On clicking \u2018execute\u2019** \u2192 Manual trigger to start the workflow.\n* **\ud83d\udd11 Set API Key** \u2192 Stores your Replicate API key so all requests are authorized.\n\n**Benefit:** Keeps your API credentials secure and reusable.\n\n---\n\n"
},
"typeVersion": 1
},
{
"id": "367a6dfc-2008-40c8-9cbe-61208d4215e0",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-128,
-784
],
"parameters": {
"color": 2,
"width": 246,
"height": 783,
"content": "## \ud83d\udee0\ufe0f Section 2: Send Video Generation Request\n\n* **\ud83d\udce1 Create Prediction** \u2192 Makes a POST request to Replicate with:\n\n * `prompt`: your text description of the video\n * `seed`: (optional) controls randomness for reproducibility\n * Model version: `b6519549e375404f45af5ef2e4b01f651d4014f3b57d3270b430e0523bad9835`\n\n**Benefit:** Kickstarts AI video generation from just a simple text prompt.\n\n---\n\n"
},
"typeVersion": 1
},
{
"id": "741290bf-085c-44ba-8319-d07f5840969d",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
128,
-560
],
"parameters": {
"color": 6,
"width": 806,
"height": 559,
"content": "## \ud83d\udd0d Section 3: Track the Prediction\n\n* **\ud83d\udce6 Extract Prediction ID** \u2192 Stores `predictionId`, `status`, and `predictionUrl` for polling.\n* **\u23f3 Wait** \u2192 Pauses 2 seconds between checks.\n* **\ud83d\udd01 Check Prediction Status** \u2192 Calls Replicate to see if the video is ready.\n* **\u2705 Check If Complete** \u2192 Branches:\n\n * If status = `succeeded` \u2192 continue.\n * Else \u2192 loop back to **Wait** until it\u2019s finished.\n\n**Benefit:** Ensures the workflow patiently monitors progress without timing out.\n\n---\n\n"
},
"typeVersion": 1
},
{
"id": "7eae092a-332d-4e61-808b-db52ae845a3b",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
960,
-752
],
"parameters": {
"color": 3,
"width": 310,
"height": 751,
"content": "## \ud83d\udcfd\ufe0f Section 4: Process & Return Results\n\n* **\ud83d\udce6 Process Result** \u2192 Outputs a clean response containing:\n\n * `status`\n * `video_url` (generated video)\n * `metrics`\n * `created_at` & `completed_at`\n * `model: bytedance/seedance-1-lite`\n\n**Benefit:** Gives you structured data and the direct video link, ready to share or store.\n\n---\n\n"
},
"typeVersion": 1
},
{
"id": "b29e5e7a-f7eb-4efa-8811-4318d0ca439d",
"name": "Sticky Note9",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2272,
-496
],
"parameters": {
"color": 4,
"width": 1300,
"height": 320,
"content": "=======================================\n WORKFLOW ASSISTANCE\n=======================================\nFor any questions or support, please contact:\n Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n - YouTube: https://www.youtube.com/@YaronBeen/videos\n - LinkedIn: https://www.linkedin.com/in/yaronbeen/\n=======================================\n"
},
"typeVersion": 1
},
{
"id": "3ade34cd-a0cf-4fe9-84c1-4586a7cfcc60",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2272,
-160
],
"parameters": {
"color": 4,
"width": 1289,
"height": 1822,
"content": "# Generate Text-to-Video & Image-to-Video Content with Seedance 1 Lite AI\n\nBuilt with **n8n + Replicate**\n\nThis workflow takes a **prompt** (and optional seed), sends it to Bytedance\u2019s **seedance-1-lite model**, waits for processing, and returns a generated video.\n\n---\n\n## \u26a1 Section 1: Start & Authenticate\n\n* **\u25b6\ufe0f On clicking \u2018execute\u2019** \u2192 Manual trigger to start the workflow.\n* **\ud83d\udd11 Set API Key** \u2192 Stores your Replicate API key so all requests are authorized.\n\n**Benefit:** Keeps your API credentials secure and reusable.\n\n---\n\n## \ud83d\udee0\ufe0f Section 2: Send Video Generation Request\n\n* **\ud83d\udce1 Create Prediction** \u2192 Makes a POST request to Replicate with:\n\n * `prompt`: your text description of the video\n * `seed`: (optional) controls randomness for reproducibility\n * Model version: `b6519549e375404f45af5ef2e4b01f651d4014f3b57d3270b430e0523bad9835`\n\n**Benefit:** Kickstarts AI video generation from just a simple text prompt.\n\n---\n\n## \ud83d\udd0d Section 3: Track the Prediction\n\n* **\ud83d\udce6 Extract Prediction ID** \u2192 Stores `predictionId`, `status`, and `predictionUrl` for polling.\n* **\u23f3 Wait** \u2192 Pauses 2 seconds between checks.\n* **\ud83d\udd01 Check Prediction Status** \u2192 Calls Replicate to see if the video is ready.\n* **\u2705 Check If Complete** \u2192 Branches:\n\n * If status = `succeeded` \u2192 continue.\n * Else \u2192 loop back to **Wait** until it\u2019s finished.\n\n**Benefit:** Ensures the workflow patiently monitors progress without timing out.\n\n---\n\n## \ud83d\udcfd\ufe0f Section 4: Process & Return Results\n\n* **\ud83d\udce6 Process Result** \u2192 Outputs a clean response containing:\n\n * `status`\n * `video_url` (generated video)\n * `metrics`\n * `created_at` & `completed_at`\n * `model: bytedance/seedance-1-lite`\n\n**Benefit:** Gives you structured data and the direct video link, ready to share or store.\n\n---\n\n## \ud83d\udcca Workflow Overview\n\n| Section | Purpose | Key Nodes | Benefit |\n| ------------------- | --------------------------- | --------------------------------------------- | ------------------------------- |\n| \u26a1 Start & Auth | Initialize & secure API key | Manual Trigger, Set API Key | Keeps credentials safe |\n| \ud83d\udee0\ufe0f Send Request | Start video generation | Create Prediction | Submits prompt to Replicate |\n| \ud83d\udd0d Track Prediction | Poll status until done | Extract Prediction ID, Wait, Check Status, If | Reliable async handling |\n| \ud83d\udcfd\ufe0f Process Result | Format output | Process Result | Easy access to final video link |\n\n---\n\n## \u2705 Final Benefits\n\n* \ud83c\udfac Generate **AI-powered videos** directly from text prompts.\n* \ud83d\udd11 API key stored securely within workflow.\n* \ud83d\udd04 Handles asynchronous processing with automatic polling.\n* \ud83d\udce4 Provides clean, ready-to-use JSON output including video URL.\n* \ud83e\udde9 Flexible \u2014 you can connect results to Slack, Google Drive, or YouTube for instant publishing.\n\n---\n"
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "3eafcaf1-60c1-4e02-8f56-28d1faf4c77b",
"connections": {
"Wait": {
"main": [
[
{
"node": "Check Prediction Status",
"type": "main",
"index": 0
}
]
]
},
"Set API Key": {
"main": [
[
{
"node": "Create Prediction",
"type": "main",
"index": 0
}
]
]
},
"Check If Complete": {
"main": [
[
{
"node": "Process Result",
"type": "main",
"index": 0
}
],
[
{
"node": "Wait",
"type": "main",
"index": 0
}
]
]
},
"Create Prediction": {
"main": [
[
{
"node": "Extract Prediction ID",
"type": "main",
"index": 0
}
]
]
},
"Extract Prediction ID": {
"main": [
[
{
"node": "Wait",
"type": "main",
"index": 0
}
]
]
},
"On clicking 'execute'": {
"main": [
[
{
"node": "Set API Key",
"type": "main",
"index": 0
}
]
]
},
"Check Prediction Status": {
"main": [
[
{
"node": "Check If Complete",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Built with n8n + Replicate
Source: https://n8n.io/workflows/7098/ — 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 allows you to import any workflow from a file or another n8n instance and map the credentials easily. A multi-form setup guides you through the entire process At the beginning you have t
[n8n] Advanced URL Parsing and Shortening Workflow - Switchy.io Integration. Uses splitInBatches, stickyNote, httpRequest, html. Event-driven trigger; 56 nodes.
[](https://youtu.be/c7yCZhmMjtI)
This automation organizes your n8n workflows files into categorizes (Active, Template, Done, Archived) and uploads them directly to a categorized Google Drive folders. It is designed to help users man
Create Animated Stories using GPT-4o-mini, Midjourney, Kling and Creatomate API. Uses httpRequest. Event-driven trigger; 51 nodes.