Skip to main content
POST
/
api
/
v1
/
task
/
submit
curl --request POST \
  --url https://api.maxapi.io/api/v1/task/submit \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "model": "seedance-2.0",
  "callBackUrl": "https://example.com/webhook",
  "input": {
    "prompt": "Blow out candles",
    "mediaUrls": ["https://example.com/photo.jpg"],
    "ratio": "16:9",
    "resolution": "1080p",
    "duration": 5,
    "fallback": true
  }
}'
{
  "code": 0,
  "msg": "ok",
  "data": {
    "taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
}
Generate videos from reference materials including images, videos, and audio. The generation mode is automatically selected based on the number and type of materials.
Seedance video generation can take anywhere from 2 minutes to 4 hours, depending on the upstream provider’s queue. You should always configure callBackUrl when using this model so the result can be delivered as soon as it is ready. Continuous polling of the Query Task endpoint is not recommended.
For Seedance-specific moderation behavior, refunds, and violation surcharges, see Moderation and Penalty.

Supported Material Types

TypeFormatsUsageSupported Models
Image.jpg, .jpeg, .png, .webp, .gif, .bmpFirst/last frame or referenceAll models
Video.mp4, .mov, .m4vMultimodal reference (total video duration max 15s)seedance-2.0, seedance-2.0-fast only
Audio.mp3, .wavMultimodal reference (max 15s)seedance-2.0, seedance-2.0-fast only
Video and audio materials are only supported by seedance-2.0 and seedance-2.0-fast. The seedance-1.5-pro model only supports up to 2 images (first/last frame mode).
model
string
required
Model name, e.g. seedance-2.0, seedance-2.0-fast, seedance-1.5-pro.
callBackUrl
string
Webhook callback URL. Strongly recommended for Seedance video tasks because generation latency may range from 2 minutes to 4 hours depending on the upstream queue.
input
object
required
If the request fails validation, the task’s failure_reason will be INVALID_PARAMETERS. For mediaUrls, check these rules first in order: 1 to 12 material URLs, at most 9 images, total uploaded video duration of 15 seconds or less, and total uploaded audio duration of 15 seconds or less.
curl --request POST \
  --url https://api.maxapi.io/api/v1/task/submit \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "model": "seedance-2.0",
  "callBackUrl": "https://example.com/webhook",
  "input": {
    "prompt": "Blow out candles",
    "mediaUrls": ["https://example.com/photo.jpg"],
    "ratio": "16:9",
    "resolution": "1080p",
    "duration": 5,
    "fallback": true
  }
}'
{
  "code": 0,
  "msg": "ok",
  "data": {
    "taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
}

Generation Modes

The generation mode is automatically selected based on the number and type of materials:
ConditionModeDescriptionSupported Models
1 imageFirst FrameImage becomes the first frameAll models
2 imagesFirst & Last FrameTwo images become the start and end framesAll models
3+ imagesMulti-Image ReferenceReference multiple images via @1, @2, @3seedance-2.0, seedance-2.0-fast only
Contains video or audioMultimodal ReferenceMix images, videos, and audio as referencesseedance-2.0, seedance-2.0-fast only

1 Image — First Frame Mode

The image is used as the first frame of the video, and subsequent animation is generated based on the prompt.
{
  "model": "seedance-2.0",
  "input": {
    "prompt": "Blow out candles",
    "mediaUrls": ["https://example.com/dog.webp"]
  }
}

2 Images — First & Last Frame Mode

The first image serves as the video’s first frame, the second image as the last frame, and the AI automatically generates the transition animation in between.
{
  "model": "seedance-2.0",
  "input": {
    "prompt": "Transform",
    "mediaUrls": [
      "https://example.com/3d-cartoon.jpg",
      "https://example.com/dog.webp"
    ]
  }
}

3+ Images — Multi-Image Reference Mode (Seedance only)

Use @1, @2, @3 in the prompt to reference the corresponding materials by position.
{
  "model": "seedance-2.0",
  "input": {
    "prompt": "@1 and @2 are chatting, @3 is watching",
    "mediaUrls": [
      "https://example.com/person-a.jpg",
      "https://example.com/person-b.jpg",
      "https://example.com/person-c.jpg"
    ]
  }
}

Multimodal Reference Mode (Seedance only)

When materials contain videos or audio (or any mix of image + video + audio), the multimodal reference mode is automatically activated. Use @1, @2, etc. to reference each material by position.
Audio files must be 15 seconds or shorter, and the total uploaded video duration must be 15 seconds or less. Longer inputs will be rejected.
Image + Audio — generate a video where the character moves to the rhythm of the music:
{
  "model": "seedance-2.0",
  "input": {
    "prompt": "@1 dances to the rhythm of @2",
    "mediaUrls": [
      "https://example.com/dancer.jpg",
      "https://example.com/music.mp3"
    ],
    "ratio": "16:9",
    "duration": 8
  }
}
Image + Video — use a video as motion reference alongside an image:
{
  "model": "seedance-2.0",
  "input": {
    "prompt": "@1 performs the action shown in @2",
    "mediaUrls": [
      "https://example.com/character.jpg",
      "https://example.com/reference-motion.mp4"
    ]
  }
}
Multiple types mixed — combine images, videos, and audio freely:
{
  "model": "seedance-2.0",
  "input": {
    "prompt": "@1 and @2 dance together to @3",
    "mediaUrls": [
      "https://example.com/person-a.jpg",
      "https://example.com/person-b.jpg",
      "https://example.com/bgm.mp3"
    ],
    "duration": 10
  }
}

Query Result

Retrieve the generation result via the Query Task endpoint or Webhook:
{
  "code": 0,
  "msg": "ok",
  "data": {
    "taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "status": "SUCCESS",
    "input": {
      "model": "seedance-2.0",
      "prompt": "@1 dances to the rhythm of @2",
      "mediaUrls": [
        "https://example.com/dancer.jpg",
        "https://example.com/music.mp3"
      ]
    },
    "result": {
      "type": "video",
      "urls": [
        "https://example.com/output/video-example.mp4"
      ]
    },
    "created_at": "2026-02-10T23:00:00.000000Z",
    "updated_at": "2026-02-10T23:03:25.000000Z"
  }
}