Skip to main content
POST
/
api
/
v3
/
doubao
/
seedance-1-5-pro-251215
/
image-to-video
seedance-1-5-pro-251215 (Image to Video)
curl --request POST \
  --url https://api.example.com/api/v3/doubao/seedance-1-5-pro-251215/image-to-video

API Key Authentication

GPTProto API uses Bearer token authentication. All API requests must include your API key (sk-xxxxx) in the Authorization header.

Getting Your API Key

  1. Sign up for a GPTProto account at https://gptproto.com
  2. Navigate to the API Keys section in your dashboard
  3. Generate a new API key
  4. Copy and securely store your API key For authentication details, please refer to the Authentication section.

Initiate Request

curl --request POST 'https://gptproto.com/api/v3/doubao/seedance-1-5-pro-251215/image-to-video' \
--header 'Authorization: GPTPROTO_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "image": "https://example.com/input-image.jpg",
    "prompt": "A beautiful sunset scene with waves crashing on the beach"
}'

Response Example

{
    "data": {
        "id": "cgt-20251225201409-abc",
        "model": "seedance-1-5-pro-251215",
        "outputs": [],
        "urls": {
            "get": "https://gptproto.com/api/v3/predictions/cgt-20251225201409-abc/result"
        },
        "hasNsfwContents": [],
        "status": "created",
        "createdAt": "2025-12-25 20:14:09",
        "executionTime": 0,
        "timings": {
            "inference": 0
        }
    },
    "message": "success",
    "code": 200
}

Query Result

If the request that generated your content includes the parameter enable_sync_mode set to true (some models do not support this parameter, but you still need to query the result by id), you must call the Query Result endpoint to retrieve the final output.

How to obtain the id

After submitting your prediction request, the response will contain the id you need.
You can find it in either:
  • data.id – the unique identifier of the prediction
  • data.urls[0].get – a ready-to-use GET URL that already embeds the id
Use this id (or the complete URL) to poll the endpoint shown above and retrieve the final result.
curl -X GET "https://gptproto.com/api/v3/predictions/{id}/result" \
  -H "Authorization: GPTPROTO_API_KEY" \
  -H "Content-Type: application/json"

Parameters

Core Parameters

Note: Different models may support different parameter options. For more details, please refer to the Model Field Compatibility table.
ParameterTypeRequiredDefaultDescription
promptstring✅ Yes-Video generation prompt describing the desired video content
imagestring❌ No-First frame image URL or Base64 encoded for Image-to-Video scenario
last_imagestring❌ No-Last frame image URL or Base64 encoded for First & Last Frame video generation
durationint❌ No5Video duration in seconds, range [2, 12]
camera_fixedboolean❌ NofalseWhether to fix the camera position
aspect_ratiostring❌ No-Video aspect ratio, supports 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive
resolutionstring❌ No720pVideo resolution, supports 480p, 720p, 1080p
seedint❌ No-1Random seed for controlling generation randomness, range [-1, 2^32-1]
generate_audioboolean❌ No-Whether to include synchronized sound with the video. Only supported by Seedance 1.5 pro.

Model Field Compatibility


resolution: Video resolution
Seedance 1.5 pro, Seedance 1.0 lite default value: 720p Seedance 1.0 pro&pro-fast default value: 1080p
Enumeration values:
  • 480p
  • 720p
  • 1080p: Not supported in reference image scenario; temporarily not supported by Seedance 1.5 pro

aspect_ratio: Aspect ratio of the generated video. See Aspect Ratio & Resolution for pixel values corresponding to different aspect ratios.
Default for Text-to-Video is generally 16:9 Default for Image-to-Video is generally adaptive. Note: Default for Reference Image Video Generation is 16:9 Seedance 1.5 pro default is adaptive
Enumeration values:
  • 16:9
  • 4:3
  • 1:1
  • 3:4
  • 9:16
  • 21:9
  • adaptive: Automatically selects the most appropriate aspect ratio based on the ratio of the uploaded first frame image.

Video Generation Scenarios

Note: Seedance 1.0 pro-fast only supports First-Frame mode; First & Last Frame is not supported.
{
    "prompt": "Multiple shots. A detective enters a dimly lit room. He examines the clues on the table and picks up an item. The camera shifts to him deep in thought. --ratio 16:9"
}

Aspect Ratio & Resolution

ResolutionAspect RatioWidth x Height (Seedance 1.0)Width x Height (Seedance 1.5 pro)
480p16:9864×480864×496
480p4:3736×544752×560
480p1:1640×640640×640
480p3:4544×736560×752
480p9:16480×864496×864
480p21:9960×416992×432
720p16:91248×7041280×720
720p4:31120×8321112×834
720p1:1960×960960×960
720p3:4832×1120834×1112
720p9:16704×1248720×1280
720p21:91504×6401470×630
1080p16:91920×1088-
1080p4:31664×1248-
1080p1:11440×1440-
1080p3:41248×1664-
1080p9:161088×1920-
1080p21:92176×928-

Error Codes

Common Error Codes

Error CodeError NameDescription
401UnauthorizedAPI key is missing or invalid
403ForbiddenYour API key doesn’t have permission to access this resource, or insufficient balance for the requested operation
429Too Many RequestsYou’ve exceeded your rate limit
500Internal server errorAn internal server error occurred
503Content policy violationContent blocked due to safety concerns (actual status code is 400)