## Basic tool info Tool name: ByteDance/image-to-video-seedance-v1 Tool description: An image-to-video generation model that offers 5s or 10s videos, at 480p and 720p resolution Tool cover: https://cdn.wiro.ai/uploads/models/ByteDance-image-to-video-seedance-v1-cover.mp4 Tool categories: - tool - text-to-video - partner - ByteDance - use-agent Tool tags: - video generator - ByteDance Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/ByteDance/image-to-video-seedance-v1 Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Tool Inputs: - name: inputImageUrl label: Image URL help: First frame of the video type: text default: - name: prompt label: Prompt help: The prompt to generate the video. type: textarea default: A skier glides over fresh snow, joyously smiling while kicking up large clouds of snow as he turns. Accelerating gradually down the slope, the camera moves smoothly alongside. - name: resolution label: Resolution help: Video resolution type: select default: 480p options: - value: "480p" label: 480p - value: "720p" label: 720p - name: ratio label: Ratio help: Generate video aspect ratio. type: select default: 16:9 options: - value: "16:9" label: 16:9 - value: "4:3" label: 4:3 - value: "1:1" label: 1:1 - value: "3:4" label: 3:4 - value: "9:16" label: 9:16 - value: "21:9" label: 21:9 - value: "9:21" label: 9:21 - name: duration label: Duration help: Generated video duration in seconds. type: select default: 5 options: - value: "5" label: 5 - value: "10" label: 10 - name: fps label: Fps help: Frame rate, the number of video frames in one second. type: select default: 24 options: - value: "24" label: 24 - value: "16" label: 16 - name: watermark label: Watermark help: Generate whether the video contains a watermark. type: select default: false options: - value: "false" label: false - value: "true" label: true - name: seed label: Seed help: Seed integer to control the randomness of generated content. Set -1 to random. type: number default: false - name: camerafixed label: Fix camera help: Whether to fix the camera position. type: select default: false options: - value: "false" label: false - value: "true" label: true ## Tool Parameter Inspires: - prompt: This is a rough black‐and‐white pencil scribble of a tree silhouette on a blank background. Animate it by having the trunk grow upward from the bottom, branches extend outward, and leaves gradually sprout in green. Finally, let a gentle breeze sway the branches and leaves. - prompt: This is a segmented rendering containing distinct color regions: a blue sky, green hill, and a red barn. Create a video where first the sky fades in with drifting clouds, then the green hillside rolls into view from the bottom, and finally the red barn structure rises up block by block, with gentle camera zoom‐out at the end. - prompt: This is a photograph of a classic Ford Mustang parked on an open road with mountains in the background. Turn it into a short driving clip: the Mustang’s engine revs, the wheels start spinning, and the camera tracks alongside as it accelerates down the highway at sunset, with dust kicking up behind. - prompt: This is an outpainted panoramic cityscape showing a central modern skyscraper and extending architecture on both sides. Animate it by beginning zoomed in on the skyscraper’s glass facade, then smoothly panning outward to reveal the full skyline, with clouds drifting overhead and distant traffic lights flickering to life. - prompt: This is a staged photo of a single person standing in front of a textured wall with dramatic lighting. Create a subtle looped animation: have the lighting shift as if a soft spotlight moves across, the person’s hair and clothing gently sway in an imagined breeze, and the camera slowly zooms in for a 3D parallax effect. - prompt: This is a portrait of a smiling couple standing in a park under a tree. Animate it by introducing slow-moving falling leaves in the background, a slight golden‐hour glow shifting across their faces, and have them turn to walk hand‐in‐hand down a path that emerges from the frame. ## Integration Header Prepare ```bash # Sign up Wiro dashboard and create project export YOUR_API_KEY="{{useSelectedProjectAPIKey}}"; export YOUR_API_SECRET="XXXXXXXXX"; # unix time or any random integer value export NONCE=$(date +%s); # hmac-SHA256 (YOUR_API_SECRET+Nonce) with YOUR_API_KEY export SIGNATURE="$(echo -n "${YOUR_API_SECRET}${NONCE}" | openssl dgst -sha256 -hmac "${YOUR_API_KEY}")"; ``` ## Run Command - Make HTTP Post Request ```bash curl -X POST "https://api.wiro.ai/v1/Run/ByteDance/image-to-video-seedance-v1" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "inputImageUrl": "image-to-video-seedance-v1-input.jpg", "prompt": "A skier glides over fresh snow, joyously smiling while kicking up large clouds of snow as he turns. Accelerating gradually down the slope, the camera moves smoothly alongside.", "resolution": "480p", "ratio": "16:9", "duration": "5", "fps": "24", "watermark": "false", "seed": null, "camerafixed": "false", "callbackUrl": "You can provide a callback URL; Wiro will send a POST request to it when the task is completed." }'; ``` ## Run Command - Response ```json { "errors": [], "taskid": "2221", "socketaccesstoken": "eDcCm5yyUfIvMFspTwww49OUfgXkQt", "result": true } ``` ## Get Task Detail - Make HTTP Post Request ```bash curl -X POST "https://api.wiro.ai/v1/Task/Detail" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "tasktoken": 'eDcCm5yyUfIvMFspTwww49OUfgXkQt', }'; ``` ## Get Task Detail - Response ```json { "total": "1", "errors": [], "tasklist": [ { "id": "2221", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "socketaccesstoken": "eDcCm5yyUfIvMFspTwww49OUfgXkQt", "parameters": {}, "debugoutput": "", "debugerror": "", "starttime": "1734513809", "endtime": "1734513813", "elapsedseconds": "6.0000", "status": "task_postprocess_end", "createtime": "1734513807", "canceltime": "0", "assigntime": "1734513807", "accepttime": "1734513807", "preprocessstarttime": "1734513807", "preprocessendtime": "1734513807", "postprocessstarttime": "1734513813", "postprocessendtime": "1734513814", "outputs": [ { "id": "6bc392c93856dfce3a7d1b4261e15af3", "name": "0.png", "contenttype": "image/png", "parentid": "6c1833f39da71e6175bf292b18779baf", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "size": "202472", "addedtime": "1734513812", "modifiedtime": "1734513812", "accesskey": "dFKlMApaSgMeHKsJyaDeKrefcHahUK", "url": "https://cdn1.wiro.ai/6a6af820-c5050aee-40bd7b83-a2e186c6-7f61f7da-3894e49c-fc0eeb66-9b500fe2/0.png" } ], "size": "202472" } ], "result": true } ``` ## Task Status Information This section defines the possible task status values returned by the API when polling for task completion. ### Completed Task Statuses (Polling can stop) These indicate that the task has reached a terminal state — either success or failure. Once any of these is received, polling should stop. - task_postprocess_end : Task completed successfully and post-processing is done. - task_cancel : Task was cancelled by the user or system. ### Running Task Statuses (Continue polling) These statuses indicate that the task is still in progress. Polling should continue if one of these is returned. - task_queue : Task is waiting in the queue. - task_accept : Task has been accepted for processing. - task_assign : Task is being assigned to a worker. - task_preprocess_start : Preprocessing is starting. - task_preprocess_end : Preprocessing is complete. - task_start : Task execution has started. - task_output : Output is being generated.