# Bytedance | Seedream | v4.5 | Edit ByteDance Seedream v4.5 Edit performs precise, text-guided image edits — background swaps, object removal, style transfer, typography changes using up to 14 reference images and delivering native 4K output at 2048×2048 resolution. Its multi-image subject identification and designer-level text rendering make it the professional standard for e-commerce, branding, and editorial production. ## API Information - **Model Slug:** bytedance-seedream-v4-5-edit - **Branded URL:** https://www.eachlabs.ai/bytedance/seedream-v4-5/bytedance-seedream-v4-5-edit - **Provider:** ByteDance - **Category:** Image to Image - **Output Type:** array - **Status:** active - **Version:** 0.0.1 - **Base Cost:** $0.04 per generated image - **Estimated Processing Time:** 35 seconds - **Last Updated:** 2026-06-01 - **Interactive Demo:** https://www.eachlabs.ai/ai-models/bytedance-seedream-v4-5-edit ## Pricing - **Charge Type:** dynamic - **Estimated Price (default example):** $0.0400 - **Pricing Details:** $0.04 per generated image ### Pricing Rules | Condition | Pricing | | --- | --- | | Rule 1 | $0.04 per generated image | ## Input Schema | Parameter | Type | Required | Default | Constraints | Description | |-----------|------|----------|---------|-------------|-------------| | prompt | string | Yes | - | - | The text prompt used to edit the image | | image_urls | array | Yes | - | 1–10 | List of URLs of input images for editing. Presently, up to 10 image inputs are allowed. | | image_size | string | No | square_hd | square_hd,square,portrait_4_3,portrait_16_9,landscape_4_3,landscape_16_9,auto_2K,auto_4K | - | | num_images | integer | No | 1 | 1–6 | Number of separate model generations to be run with the prompt. | | max_images | integer | No | 1 | 1–6 | If set to a number greater than one, enables multi-image generation. The model will potentially return up to max_images images every generation, and in total, num_images generations will be carried out. In total, the number of images generated will be between num_images and max_images*num_images. The total number of images (image inputs + image outputs) must not exceed 15 | | seed | integer | No | - | - | Random seed to control the stochasticity of image generation. | | enable_safety_checker | boolean | No | true | - | - | ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "bytedance-seedream-v4-5-edit", "input": { "prompt": "Visual try on", "image_urls": [ "https://storage.googleapis.com/magicpoint/inputs/bytedance-seedream-v4-5-edit-input-1.png", "https://storage.googleapis.com/magicpoint/inputs/bytedance-seedream-v4-5-edit-input-2.png" ] } }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "array", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "X-API-Key: YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `X-API-Key` | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **bytedance-seedream-v4.5-edit — Image-to-Image AI Model** Developed by Bytedance as part of the **seedream-v4.5** family, **bytedance-seedream-v4.5-edit** is an advanced **image-to-image AI model** that merges text-to-image synthesis and precise image editing into a unified architecture, enabling targeted modifications like background swaps, style refinements, and layout adjustments without altering the core subject. This ByteDance innovation excels in professional visual creatives, supporting up to 14 reference images for consistent multi-image editing and delivering native high-resolution outputs ideal for developers seeking a robust **Bytedance image-to-image** solution. With its multimodal design, **bytedance-seedream-v4.5-edit** handles complex prompts and image inputs seamlessly, making it perfect for **AI image editor API** integrations that demand speed and fidelity in editing workflows. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `X-API-Key: YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.