## Basic tool info Model name: ByteDance/seedream-v4-5 Model description: Access the Seedream 4.5 API for fast high resolution image generation and editing. Simple integration, clear pricing, and support for text to image, multi image input, and advanced creative workflows. Model cover: https://cdn.wiro.ai/uploads/models/bytedance-seedream-v4-5-cover.webp Model categories: - tool - partner - ByteDance - image-to-image - text-to-image - quick-showcase - price-list Model tags: - ByteDance Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/bytedance/seedream-v4-5 Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Model Inputs: - name: inputImage label: input image help: Optional list of input image URL(s) and/or file(s) for creating, editing or combining images type: combinefileinput default: bytedance-seedream-v4-5-input-2-1.jpg,bytedance-seedream-v4-5-input-2-2.jpg - name: prompt label: Prompt help: Please provide how many images you want to generate in the prompt. Edit max images according to it. type: textarea default: Replace the clothing in image 1 with the outfit from image 2. - name: width label: Width help: The model accepts images with a total pixel count between 3.68 million and 16.77 million (e.g., 2560×1440 to 4096×4096), constrained by an aspect ratio range of 1/16 to 16. type: number default: 2048 - name: height label: Height help: The model accepts images with a total pixel count between 3.68 million and 16.77 million (e.g., 2560×1440 to 4096×4096), constrained by an aspect ratio range of 1/16 to 16. type: number default: 2048 - name: maxImages label: Maximum number of output images help: This is the limiter for number of outputs. Number of input reference images + Number of generated must be smaller then or equal to 15. type: number default: 1 - name: watermark label: Watermark help: Whether the generated image(s) contains a watermark. type: select default: false options: - value: "false" label: false - value: "true" label: true ## Model Parameter Inspires: - prompt: Using this LOGO as a reference, create a visual design system for an AI API provider named WIRO, including packaging bags, hats, cards, lanyards, etc. Main visual tone is green, with a fun, simple, and modern style. - inputImage: https://cdn.wiro.ai/uploads/sampleinputs/bytedance-seedream-v4-5-input-1.jpg - maxImages: 4 - prompt: Replace the clothing in image 1 with the outfit from image 2. - inputImage: https://cdn.wiro.ai/uploads/sampleinputs/bytedance-seedream-v4-5-input-2-1.jpg,https://cdn.wiro.ai/uploads/sampleinputs/bytedance-seedream-v4-5-input-2-2.jpg - maxImages: 1 - prompt: Generate a set of 4 images featuring the same young female astronaut character in a futuristic white spacesuit.\\n1- Portrait of her holding her helmet, smiling in a brightly lit space station corridor.\\n2- Her floating in zero-gravity inside the cockpit, looking out the window at a blue nebula.\\n3- Her walking on the surface of a dusty red planet, wind blowing dust around her boots.\\n4- Close-up of her face illuminated by the glow of a holographic map she is examining. - inputImage: - maxImages: 4 - prompt: A surreal portrait of a lion made entirely of swirling liquid mercury. The lion is roaring, and droplets of silver liquid are flying off its mane, suspended in mid-air. The background is a solid matte black to contrast with the high reflection of the metal. Studio lighting, ray-traced reflections, fluid simulation aesthetics, high detail. - inputImage: - maxImages: 1 - prompt: A futuristic eco-brutalist residential tower covered in vertical hanging gardens, located in a rainy cyberpunk Tokyo street at night. Neon signs reflect off the wet pavement. The building features raw concrete mixed with bioluminescent plants. Shot from a low angle to emphasize scale, volumetric fog, moody atmosphere, photorealistic, architectural digest style. - inputImage: - maxImages: 1 - prompt: Professional commercial product photography of a luxury perfume bottle made of translucent amber glass, sitting on a textured dark slate surface. Soft, golden hour sunlight beams through the bottle, creating caustic light patterns on the stone. Surrounded by scattered dried jasmine flowers and vanilla beans. macro shot, shallow depth of field, 8k resolution, cinematic lighting, sharp focus on the brand label. - inputImage: - maxImages: 1 ## 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/seedream-v4-5" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "inputImage": [ "bytedance-seedream-v4-5-input-2-1.jpg", "bytedance-seedream-v4-5-input-2-2.jpg" ], "prompt": "Replace the clothing in image 1 with the outfit from image 2.", "width": 2048, "height": 2048, "maxImages": 1, "watermark": "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 with Task ID ```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 '{ "taskid": "2221" }'; ``` ## Get Task Detail - Make HTTP Post Request with Socket Access Token ```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 } ``` ## Kill Task - Make HTTP Post Request with Task ID ```bash curl -X POST "https://api.wiro.ai/v1/Task/Kill" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "taskid": "534574" }'; ``` ## Kill Task - Make HTTP Post Request with Socket Access Token ```bash curl -X POST "https://api.wiro.ai/v1/Task/Kill" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "socketaccesstoken": "ZpYote30on42O4jjHXNiKmrWAZqbRE" }'; ``` ## Kill Task - Response ```json { "errors": [], "tasklist": [ { "id": "534574", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "name": "", "socketaccesstoken": "ZpYote30on42O4jjHXNiKmrWAZqbRE", "parameters": { "inputImage": "https://api.wiro.ai/v1/File/mCmUXgZLG1FNjjjwmbtPFr2LVJA112/inputImage-6060136.png" }, "debugoutput": "", "debugerror": "", "starttime": "1734513809", "endtime": "1734513813", "elapsedseconds": "6.0000", "status": "task_cancel", "cps": "0.000585000000", "totalcost": "0.003510000000", "guestid": null, "projectid": "699", "modelid": "598", "description": "", "basemodelid": "0", "runtype": "model", "modelfolderid": "", "modelfileid": "", "callbackurl": "", "marketplaceid": null, "createtime": "1734513807", "canceltime": "0", "assigntime": "1734513807", "accepttime": "1734513807", "preprocessstarttime": "1734513807", "preprocessendtime": "1734513807", "postprocessstarttime": "1734513813", "postprocessendtime": "1734513814", "pexit": "0", "categories": "["tool","image-to-image","quick-showcase","compare-landscape"]", "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", "foldercount": "0", "filecount": "0", "ispublic": 0, "expiretime": null, "url": "https://cdn1.wiro.ai/6a6af820-c5050aee-40bd7b83-a2e186c6-7f61f7da-3894e49c-fc0eeb66-9b500fe2/0.png" } ], "size": "202472" } ], "result": true } ``` ## Cancel Task - Make HTTP Post Request (For tasks on queue) ```bash curl -X POST "https://api.wiro.ai/v1/Task/Cancel" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "taskid": "634574" }'; ``` ## Cancel Task - Response ```json { "errors": [], "tasklist": [ { "id": "634574", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "name": "", "socketaccesstoken": "ZpYote30on42O4jjHXNiKmrWAZqbRE", "parameters": { "inputImage": "https://api.wiro.ai/v1/File/mCmUXgZLG1FNjjjwmbtPFr2LVJA112/inputImage-6060136.png" }, "debugoutput": "", "debugerror": "", "starttime": "1734513809", "endtime": "1734513813", "elapsedseconds": "6.0000", "status": "task_cancel", "cps": "0.000585000000", "totalcost": "0.003510000000", "guestid": null, "projectid": "699", "modelid": "598", "description": "", "basemodelid": "0", "runtype": "model", "modelfolderid": "", "modelfileid": "", "callbackurl": "", "marketplaceid": null, "createtime": "1734513807", "canceltime": "0", "assigntime": "1734513807", "accepttime": "1734513807", "preprocessstarttime": "1734513807", "preprocessendtime": "1734513807", "postprocessstarttime": "1734513813", "postprocessendtime": "1734513814", "pexit": "0", "categories": "["tool","image-to-image","quick-showcase","compare-landscape"]", "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", "foldercount": "0", "filecount": "0", "ispublic": 0, "expiretime": null, "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.