Skip to main content
POST
/
v3
/
async
/
seedance-v1.5-pro-i2v
Seedance 1.5 Pro Image-to-Video
curl --request POST \
  --url https://api.highwayapi.ai/v3/async/seedance-v1.5-pro-i2v \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: <content-type>' \
  --data '
{
  "fps": 123,
  "seed": 123,
  "image": "<string>",
  "ratio": "<string>",
  "prompt": "<string>",
  "duration": 123,
  "watermark": true,
  "last_image": "<string>",
  "resolution": "<string>",
  "camera_fixed": true,
  "service_tier": "<string>",
  "generate_audio": true,
  "execution_expires_after": 123
}
'
{
  "task_id": "<string>"
}
This is an asynchronous API that returns a task_id. Use the task_id with the task result query API to obtain the video generation result. Supports text-to-video, image-to-video (first frame), and image-to-video (first and last frames) generation.
This is an asynchronous API and only returns the task_id of the async task. You should use this task_id to request the Task Result Query API to retrieve the generation result.

Request Headers

Content-Type
string
required
Enum value: application/json
Authorization
string
required
Bearer authentication format: Bearer {{API Key}}.

Request Body

fps
integer
default:24
Frame rate (frames per second). Only 24 fps is supported.Optional value: 24
seed
integer
Seed integer used to control randomness. Range: [-1, 2^32-1]. -1 means using a random seed. The same seed and the same request will produce similar (but not exactly identical) results.Value range: [-1, 4294967295]
image
string
required
The first-frame image for image-to-video generation. It can be an image URL or a Base64-encoded image. The URL must be accessible. Base64 format: data:image/<图像格式>;base64,<Base64 编码>. Supported formats: jpeg, png, webp, bmp, tiff, gif. Aspect ratio: (0.4, 2.5), dimensions: (300, 6000) pixels, size: < 30 MB.
ratio
string
default:"adaptive"
The aspect ratio of the generated video. ‘adaptive’: for text-to-video, the model intelligently selects the best ratio based on the prompt; for image-to-video, it is automatically selected based on the aspect ratio of the uploaded first-frame image.Optional values: 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive
prompt
string
required
A text prompt describing the expected video content. Chinese and English are supported. It is recommended to keep it under 500 characters. If you need to generate audio with dialogue, place the spoken content in double quotation marks for better audio generation results.
duration
integer
default:5
Video duration, in seconds. Specified durations within the range [4, 12] are supported. Note: duration affects billing.Value range: [4, 12]
watermark
boolean
default:false
Whether the generated video contains a watermark. true: with watermark. false: without watermark.
last_image
string
The last-frame image for first-and-last-frame image-to-video generation. It can be an image URL or a Base64-encoded image. The requirements are the same as those for the image field. When the aspect ratios differ, the last frame will be automatically cropped to match the first frame.
resolution
string
default:"720p"
Video resolution. Seedance 1.5 pro supports 480p, 720p, and 1080p.Optional values: 480p, 720p, 1080p
camera_fixed
boolean
default:false
Whether to fix the camera position. true: the platform appends fixed-camera instructions to the prompt (effect not guaranteed). false: the camera is not fixed.
service_tier
string
default:"default"
The service tier for processing the request. ‘default’: online inference mode, with lower RPM and concurrency quotas, suitable for latency-sensitive scenarios. ‘flex’: offline inference mode, with a higher TPD quota and priced at 50% of online mode, suitable for latency-insensitive scenarios.Optional values: default, flex
generate_audio
boolean
default:true
Whether the generated video contains synchronized audio. true: the video includes speech, sound effects, and background music automatically generated based on the prompt and visual content. false: outputs a silent video.
execution_expires_after
integer
default:172800
Task timeout threshold, in seconds, calculated from the created_at timestamp. Default value: 172800 (48 hours). Range: [3600, 259200]. Tasks exceeding this time will be automatically terminated and marked as ‘expired’.Value range: [3600, 259200]

Response Information

task_id
string
required
The task_id of the asynchronous task. You should use this task_id to request the Task Result Query API to obtain the generation result