{"id":"xQ0xqhNzFeEdBpFK","meta":{"instanceId":"workflow-21a9687b","versionId":"1.0.0","createdAt":"2025-09-29T07:07:50.768456","updatedAt":"2025-09-29T07:07:50.768483","owner":"n8n-user","license":"MIT","category":"automation","status":"active","priority":"high","environment":"production"},"name":"Generate 360° Virtual Try-on Videos for Clothing with Kling API","nodes":[{"id":"978b4ac4-0357-4d2b-8a02-7da04e6f3f1f","name":"When clicking ‘Test workflow’","type":"n8n-nodes-base.manualTrigger","position":[160,140],"parameters":{},"typeVersion":1,"notes":"This manualTrigger node performs automated tasks as part of the workflow."},{"id":"54d1c23f-3a13-4ec0-9b3b-3806e5faae18","name":"Kling Virtual Try-On Task","type":"n8n-nodes-base.httpRequest","position":[620,140],"parameters":{"url":"{{ $env.API_BASE_URL }}","method":"POST","options":{},"jsonBody":"={\n  \"model\": \"kling\",\n  \"task_type\": \"ai_try_on\",\n  \"input\": {\n    \"model_input\": \"{{ $json.model_input }}\",\n    \"dress_input\": \"{{ $json.dress_input }}\",\n    \"upper_input\": \"{{ $json.upper_input }}\",\n    \"lower_input\": \"{{ $json.lower_input }}\",\n    \"batch_size\": 1\n  }\n} ","sendBody":true,"sendHeaders":true,"specifyBody":"json","headerParameters":{"parameters":[{"name":"x-api-key","value":"={{ $json['x-api-key'] }}"}]}},"typeVersion":4.2,"notes":"This httpRequest node performs automated tasks as part of the workflow."},{"id":"5be9d932-c102-4a7e-b995-09c6bf17026c","name":"Switch","type":"n8n-nodes-base.switch","position":[960,200],"parameters":{"rules":{"values":[{"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"5f61ee56-4ebe-411f-95e6-b47d9741e7a2","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.data.status }}","rightValue":"completed"}]}}]},"options":{}},"typeVersion":3.2,"notes":"This switch node performs automated tasks as part of the workflow."},{"id":"cdda4f40-1580-4a5a-a7f4-f1e4fbf7ceb4","name":"Get Kling Video Task","type":"n8n-nodes-base.httpRequest","position":[1180,440],"parameters":{"url":"{{ $env.BASE_URL }}","options":{},"sendHeaders":true,"headerParameters":{"parameters":[{"name":"x-api-key","value":"={{ $('Preset Parameters').item.json['x-api-key'] }}"}]}},"typeVersion":4.2,"notes":"This httpRequest node performs automated tasks as part of the workflow."},{"id":"3e794d14-b55f-4936-90af-8237977d6635","name":"Generate kling video","type":"n8n-nodes-base.httpRequest","position":[1140,200],"parameters":{"url":"{{ $env.API_BASE_URL }}","method":"POST","options":{},"jsonBody":"={\n    \"model\": \"kling\",\n    \"task_type\": \"video_generation\",\n    \"input\": {\n        \"version\": \"1.6\",\n        \"image_url\": \"{{ $json.data.output.works[0].image.resource }}\",\n        \"prompt\": \"{{ $('Preset Parameters').item.json.generate_video_prompt }}\"\n    }\n} ","sendBody":true,"sendHeaders":true,"specifyBody":"json","headerParameters":{"parameters":[{"name":"x-api-key","value":"={{ $('Preset Parameters').item.json['x-api-key'] }}"}]}},"typeVersion":4.2,"notes":"This httpRequest node performs automated tasks as part of the workflow."},{"id":"3ae849b2-4bd4-454f-a759-e44a9736100d","name":"Preset Parameters","type":"n8n-nodes-base.set","position":[380,140],"parameters":{"mode":"raw","options":{},"jsonOutput":"{\n  \"x-api-key\":\"\",\n  \"model_input\": \"\",\n  \"dress_input\": \"\",\n  \"upper_input\":\"\",\n  \"lower_input\":\"\",\n  \"generate_video_prompt\": \"Walk on the catwalk, turn around, and finally stand still and pose\"\n}\n"},"typeVersion":3.4,"notes":"This set node performs automated tasks as part of the workflow."},{"id":"18c606e3-82e2-4c09-a87e-6bbc71363c1c","name":"Get Kling Virtual Try-On Task","type":"n8n-nodes-base.httpRequest","position":[420,460],"parameters":{"url":"{{ $env.BASE_URL }}","options":{},"sendHeaders":true,"headerParameters":{"parameters":[{"name":"x-api-key","value":"={{ $('Preset Parameters').item.json['x-api-key'] }}"}]}},"typeVersion":4.2,"notes":"This httpRequest node performs automated tasks as part of the workflow."},{"id":"becf3d7b-d468-4b4a-b22f-d6d747e52664","name":"Check Data Status","type":"n8n-nodes-base.if","position":[640,460],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"or","conditions":[{"id":"e97a02cc-8d1d-4500-bce5-0a296c792b76","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json.data.status }}","rightValue":"completed"},{"id":"50b63a7a-52b5-4766-a859-96ac1ff949ec","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json.data.status }}","rightValue":"failed"}]}},"typeVersion":2.2,"notes":"This if node performs automated tasks as part of the workflow."},{"id":"d8ec251d-d47c-4341-909d-abdea385c1f9","name":"Wait for Image Generation","type":"n8n-nodes-base.wait","position":[160,460],"webhookId":"af79053d-1291-4dd2-889e-4593dbbb2512","parameters":{},"typeVersion":1.1,"notes":"This wait node performs automated tasks as part of the workflow."},{"id":"88e3067f-0b1f-472a-937b-926c6d208453","name":"Wait for Video Generation","type":"n8n-nodes-base.wait","position":[920,440],"webhookId":"af79053d-1291-4dd2-889e-4593dbbb2512","parameters":{},"typeVersion":1.1,"notes":"This wait node performs automated tasks as part of the workflow."},{"id":"36d75678-918f-42c5-97a7-7a13d1eacbd4","name":"Check Video Data Status","type":"n8n-nodes-base.switch","position":[1560,180],"parameters":{"rules":{"values":[{"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"5f61ee56-4ebe-411f-95e6-b47d9741e7a2","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.data.status }}","rightValue":"completed"}]}}]},"options":{}},"typeVersion":3.2,"notes":"This switch node performs automated tasks as part of the workflow."},{"id":"7356d963-83c0-47a1-a728-9191f66d2f57","name":"Get Video Data Status","type":"n8n-nodes-base.if","position":[1400,440],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"or","conditions":[{"id":"e97a02cc-8d1d-4500-bce5-0a296c792b76","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json.data.status }}","rightValue":"completed"},{"id":"50b63a7a-52b5-4766-a859-96ac1ff949ec","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json.data.status }}","rightValue":"failed"}]}},"typeVersion":2.2,"notes":"This if node performs automated tasks as part of the workflow."},{"id":"9ef52637-ccc9-4817-8c14-5c54fa0af178","name":"Get Final Video URL","type":"n8n-nodes-base.set","position":[1760,180],"parameters":{"mode":"raw","options":{},"jsonOutput":"={\n  \"video_url\": \"{{ $json.data.output.video_url }}\"\n}\n "},"typeVersion":3.4,"notes":"This set node performs automated tasks as part of the workflow."},{"id":"9a0194bd-59a5-45b1-a6e2-db0605eb4d7a","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[140,-120],"parameters":{"width":460,"height":220,"content":"## Generate 360° Virtual Try-on Videos for Clothing with Kling API (unofficial)\nThis tool is designed for e-commerce platforms, fashion brands, content creators, and content influencers. By uploading model and clothing images and linking your PiAPI account, you can swiftly generate a realistic video of the model sporting the outfit with a 360° turn, offering an immersive viewing experience."},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."},{"id":"629697ae-cd49-4e8e-953d-a2f091ed9202","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[120,700],"parameters":{"width":340,"height":200,"content":"## Generate Virtual Try-on Image\nUpload model url, users have two solutions to upload clothing url: \n1. Upload `dress_input`\n2. Upload 'upper_input` and 'lower_input`"},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."},{"id":"710bd0f0-8b5a-469a-8b31-b6f738dc7f79","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[1640,460],"parameters":{"width":340,"content":"## Generate Final Video \nWait for generation and get the output url in the final node."},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."}],"active":false,"settings":{"executionOrder":"v1","saveManualExecutions":true,"callerPolicy":"workflowsFromSameOwner","errorWorkflow":null,"timezone":"UTC","executionTimeout":3600,"maxExecutions":1000,"retryOnFail":true,"retryCount":3,"retryDelay":1000},"versionId":"97ee31dd-b8be-4b37-bbed-363ac35d5268","connections":{"Kling Virtual Try-On Task":{"main":[[],[],[],[],[]]},"Get Kling Video Task":{"main":[[],[],[],[],[]]},"Generate kling video":{"main":[[],[],[],[],[]]},"Get Kling Virtual Try-On Task":{"main":[[],[],[],[],[]]}},"description":"Automated workflow: Generate 360° Virtual Try-on Videos for Clothing with Kling API. This workflow integrates 8 different services: stickyNote, httpRequest, wait, switch, set. It contains 24 nodes and follows best practices for error handling and security.","notes":"Excellent quality workflow: Generate 360° Virtual Try-on Videos for Clothing with Kling API. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}