# Doubao Seedance 1.5 Pro 251215 Video Generation

> Video Generation

Submit an asynchronous video generation task for
`doubao-seedance-1-5-pro-251215`.

## Endpoint

`POST https://api.modelverse.cn/v1/tasks/submit`

## Request Body

## Responses

- **200** — Task submitted successfully.
- **400** — Invalid request parameters.
- **default** — Error response.

## OpenAPI Definition

```json
{
  "openapi": "3.1.0",
  "x-language": "en-US",
  "info": {
    "title": "ModelVerse Doubao Seedance 1.5 Pro 251215 Video Task API",
    "version": "1.0.0",
    "description": "Self-contained OpenAPI 3.1 schema for the ModelVerse\n`doubao-seedance-1-5-pro-251215` text/image-to-video asynchronous task API,\n"
  },
  "servers": [
    {
      "url": "https://api.modelverse.cn",
      "description": "ModelVerse API endpoint documented for this model."
    }
  ],
  "tags": [
    {
      "name": "Doubao Seedance 1.5 Pro 251215",
      "description": "Text/image-to-video asynchronous task operations."
    }
  ],
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "paths": {
    "/v1/tasks/submit": {
      "post": {
        "tags": [
          "Doubao Seedance 1.5 Pro 251215"
        ],
        "operationId": "submitDoubaoSeedance15Pro251215Task",
        "summary": "Doubao Seedance 1.5 Pro 251215 Video Generation",
        "description": "Submit an asynchronous video generation task for\n`doubao-seedance-1-5-pro-251215`.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DoubaoSeedance15Pro251215SubmitRequest"
              },
              "examples": {
                "textAndFirstLastFrames": {
                  "summary": "Submit a text and first/last-frame video task",
                  "value": {
                    "model": "doubao-seedance-1-5-pro-251215",
                    "input": {
                      "content": [
                        {
                          "type": "text",
                          "text": "Make the character run."
                        },
                        {
                          "type": "image_url",
                          "image_url": {
                            "url": "https://umodelverse-inference.cn-wlcb.ufileos.com/ucloud-maxcot.jpg"
                          },
                          "role": "first_frame"
                        },
                        {
                          "type": "image_url",
                          "image_url": {
                            "url": "https://umodelverse-inference.cn-wlcb.ufileos.com/ucloud-maxcot.jpg"
                          },
                          "role": "last_frame"
                        }
                      ]
                    },
                    "parameters": {
                      "generate_audio": true,
                      "duration": 5,
                      "execution_expires_after": 3600,
                      "resolution": "720p",
                      "ratio": "adaptive",
                      "camera_fixed": false,
                      "watermark": false,
                      "draft": false,
                      "service_tier": "default"
                    }
                  }
                },
                "draftTask": {
                  "summary": "Submit a task from a draft task",
                  "value": {
                    "model": "doubao-seedance-1-5-pro-251215",
                    "input": {
                      "content": [
                        {
                          "type": "draft_task",
                          "draft_task": {
                            "id": "task_id"
                          }
                        }
                      ]
                    },
                    "parameters": {
                      "resolution": "480p",
                      "duration": 5,
                      "draft": false
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Task submitted successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DoubaoSeedance15Pro251215SubmitResponse"
                },
                "examples": {
                  "submitted": {
                    "summary": "Submitted task",
                    "value": {
                      "output": {
                        "task_id": "task_id"
                      },
                      "request_id": "request_id"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request parameters.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DoubaoSeedance15Pro251215ErrorResponse"
                },
                "examples": {
                  "paramError": {
                    "$ref": "#/components/examples/DoubaoSeedance15Pro251215ParamError"
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DoubaoSeedance15Pro251215ErrorResponse"
                },
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/DoubaoSeedance15Pro251215ParamError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/status": {
      "get": {
        "tags": [
          "Doubao Seedance 1.5 Pro 251215"
        ],
        "operationId": "getDoubaoSeedance15Pro251215TaskStatus",
        "summary": "Doubao Seedance 1.5 Pro 251215 Task Status",
        "description": "Query the status and result URLs for an asynchronous video task.",
        "parameters": [
          {
            "name": "task_id",
            "in": "query",
            "required": true,
            "description": "Asynchronous task identifier returned by `/v1/tasks/submit`.",
            "schema": {
              "type": "string"
            },
            "examples": {
              "placeholder": {
                "summary": "Source documentation placeholder",
                "value": "task_id"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Task status response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DoubaoSeedance15Pro251215StatusResponse"
                },
                "examples": {
                  "success": {
                    "summary": "Successful task",
                    "value": {
                      "output": {
                        "task_id": "xxxxxxx",
                        "task_status": "Success",
                        "urls": [
                          "http://xxxxxxxx/xx.mp4"
                        ],
                        "submit_time": 1768460826,
                        "finish_time": 1768460932
                      },
                      "usage": {
                        "completion_tokens": 108900,
                        "total_tokens": 108900,
                        "duration": 5
                      },
                      "request_id": ""
                    }
                  },
                  "failure": {
                    "summary": "Failed task",
                    "value": {
                      "output": {
                        "task_id": "xxxxxxx",
                        "task_status": "Failure",
                        "submit_time": 1756959000,
                        "finish_time": 1756959019,
                        "error_message": "error_message"
                      },
                      "usage": {
                        "completion_tokens": 0,
                        "total_tokens": 0,
                        "duration": 5
                      },
                      "request_id": ""
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request parameters.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DoubaoSeedance15Pro251215ErrorResponse"
                },
                "examples": {
                  "paramError": {
                    "$ref": "#/components/examples/DoubaoSeedance15Pro251215ParamError"
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DoubaoSeedance15Pro251215ErrorResponse"
                },
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/DoubaoSeedance15Pro251215ParamError"
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "API key",
        "description": "ModelVerse API key sent in the `Authorization: Bearer <API_KEY>` header."
      }
    },
    "schemas": {
      "DoubaoSeedance15Pro251215SubmitRequest": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "model",
          "input"
        ],
        "properties": {
          "model": {
            "type": "string",
            "const": "doubao-seedance-1-5-pro-251215",
            "description": "Model name. This schema is pinned to `doubao-seedance-1-5-pro-251215`."
          },
          "input": {
            "$ref": "#/components/schemas/DoubaoSeedance15Pro251215Input"
          },
          "parameters": {
            "$ref": "#/components/schemas/DoubaoSeedance15Pro251215Parameters"
          }
        }
      },
      "DoubaoSeedance15Pro251215Input": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "content"
        ],
        "properties": {
          "content": {
            "description": "Content objects sent to the model. Draft task content cannot be\nmixed with text or image content.\n",
            "oneOf": [
              {
                "$ref": "#/components/schemas/DoubaoSeedance15Pro251215TextImageContent"
              },
              {
                "$ref": "#/components/schemas/DoubaoSeedance15Pro251215DraftTaskContent"
              }
            ]
          }
        }
      },
      "DoubaoSeedance15Pro251215TextImageContent": {
        "type": "array",
        "minItems": 1,
        "description": "Text and/or image content objects.",
        "items": {
          "oneOf": [
            {
              "$ref": "#/components/schemas/DoubaoSeedance15Pro251215TextContent"
            },
            {
              "$ref": "#/components/schemas/DoubaoSeedance15Pro251215ImageUrlContent"
            }
          ]
        }
      },
      "DoubaoSeedance15Pro251215DraftTaskContent": {
        "type": "array",
        "minItems": 1,
        "maxItems": 1,
        "description": "Draft task content object. It cannot be mixed with text or image content.",
        "items": {
          "$ref": "#/components/schemas/DoubaoSeedance15Pro251215DraftTaskContentItem"
        }
      },
      "DoubaoSeedance15Pro251215TextContent": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "type",
          "text"
        ],
        "properties": {
          "type": {
            "type": "string",
            "const": "text",
            "description": "Input content type."
          },
          "text": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500,
            "description": "Text prompt describing the expected video. Chinese and English are supported."
          }
        }
      },
      "DoubaoSeedance15Pro251215ImageUrlContent": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "type",
          "image_url"
        ],
        "properties": {
          "type": {
            "type": "string",
            "const": "image_url",
            "description": "Input content type for an image URL or base64 data URL."
          },
          "image_url": {
            "$ref": "#/components/schemas/DoubaoSeedance15Pro251215ImageUrl"
          },
          "role": {
            "type": "string",
            "enum": [
              "first_frame",
              "last_frame"
            ],
            "description": "Image position or purpose. For one image object, this field can be\nomitted or set to `first_frame`. For two image objects, this field is\nrequired: use `first_frame` for the first frame and `last_frame` for\nthe last frame.\n"
          }
        }
      },
      "DoubaoSeedance15Pro251215ImageUrl": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "url"
        ],
        "properties": {
          "url": {
            "type": "string",
            "minLength": 1,
            "description": "Image URL or base64-encoded data URL. URL inputs must be accessible.\nBase64 inputs must use the form\n`data:image/<image-format>;base64,<base64-data>` with a lowercase\nimage format.\n"
          }
        }
      },
      "DoubaoSeedance15Pro251215DraftTaskContentItem": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "type",
          "draft_task"
        ],
        "properties": {
          "type": {
            "type": "string",
            "const": "draft_task",
            "description": "Input content type for a draft task."
          },
          "draft_task": {
            "$ref": "#/components/schemas/DoubaoSeedance15Pro251215DraftTask"
          }
        }
      },
      "DoubaoSeedance15Pro251215DraftTask": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "Draft task ID."
          }
        }
      },
      "DoubaoSeedance15Pro251215Parameters": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "execution_expires_after": {
            "type": "integer",
            "minimum": 3600,
            "maximum": 259200,
            "default": 172800,
            "description": "Task expiration threshold in seconds after submission."
          },
          "generate_audio": {
            "type": "boolean",
            "default": false,
            "description": "Whether the generated video includes synchronized audio."
          },
          "draft": {
            "type": "boolean",
            "default": false,
            "description": "Whether to enable draft mode. Draft mode generates a preview video\nfor faster validation of scene structure, camera scheduling, subject\nmotion, and prompt intent. Draft mode only supports `480p`.\n"
          },
          "resolution": {
            "type": "string",
            "enum": [
              "480p",
              "720p",
              "1080p"
            ],
            "default": "720p",
            "description": "Generated video resolution. Draft mode only supports `480p`."
          },
          "ratio": {
            "type": "string",
            "enum": [
              "16:9",
              "4:3",
              "1:1",
              "3:4",
              "9:16",
              "21:9",
              "adaptive"
            ],
            "default": "adaptive",
            "description": "Generated video aspect ratio."
          },
          "duration": {
            "type": "integer",
            "minimum": 4,
            "maximum": 12,
            "default": 5,
            "description": "Generated video duration in seconds."
          },
          "seed": {
            "type": "integer",
            "minimum": 0,
            "maximum": 2147483647,
            "description": "Random seed."
          },
          "camera_fixed": {
            "type": "boolean",
            "default": false,
            "description": "Whether to fix the camera."
          },
          "watermark": {
            "type": "boolean",
            "default": false,
            "description": "Whether the generated video includes a watermark."
          },
          "service_tier": {
            "type": "string",
            "enum": [
              "default",
              "flex"
            ],
            "default": "default",
            "description": "Processing service tier. `default` is online inference for lower\nlatency; `flex` is offline inference for latency-tolerant workloads.\n"
          }
        }
      },
      "DoubaoSeedance15Pro251215SubmitResponse": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "output",
          "request_id"
        ],
        "properties": {
          "output": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "task_id"
            ],
            "properties": {
              "task_id": {
                "type": "string",
                "description": "Unique identifier of the asynchronous task."
              }
            }
          },
          "request_id": {
            "type": "string",
            "description": "Unique request identifier."
          }
        }
      },
      "DoubaoSeedance15Pro251215StatusResponse": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "output",
          "request_id"
        ],
        "properties": {
          "output": {
            "$ref": "#/components/schemas/DoubaoSeedance15Pro251215StatusOutput"
          },
          "usage": {
            "$ref": "#/components/schemas/DoubaoSeedance15Pro251215Usage"
          },
          "request_id": {
            "type": "string",
            "description": "Unique request identifier."
          }
        }
      },
      "DoubaoSeedance15Pro251215StatusOutput": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "task_id",
          "task_status"
        ],
        "properties": {
          "task_id": {
            "type": "string",
            "description": "Unique identifier of the asynchronous task."
          },
          "task_status": {
            "$ref": "#/components/schemas/DoubaoSeedance15Pro251215TaskStatus"
          },
          "urls": {
            "type": "array",
            "description": "Video result URL list.",
            "items": {
              "type": "string",
              "format": "uri"
            }
          },
          "submit_time": {
            "type": "integer",
            "format": "int64",
            "description": "Task submission timestamp."
          },
          "finish_time": {
            "type": "integer",
            "format": "int64",
            "description": "Task completion timestamp."
          },
          "error_message": {
            "type": "string",
            "description": "Error message returned when the task fails."
          }
        }
      },
      "DoubaoSeedance15Pro251215TaskStatus": {
        "type": "string",
        "description": "Task status.",
        "enum": [
          "Pending",
          "Running",
          "Success",
          "Failure",
          "Expired"
        ]
      },
      "DoubaoSeedance15Pro251215Usage": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "duration": {
            "type": "integer",
            "description": "Video duration in seconds."
          },
          "completion_tokens": {
            "type": "integer",
            "description": "Token count charged for generated video output."
          },
          "total_tokens": {
            "type": "integer",
            "description": "Total token count for this request. Video generation does not count\ninput tokens, so `total_tokens` equals `completion_tokens`.\n"
          }
        }
      },
      "DoubaoSeedance15Pro251215ErrorResponse": {
        "type": "object",
        "additionalProperties": true,
        "required": [
          "error"
        ],
        "properties": {
          "error": {
            "$ref": "#/components/schemas/DoubaoSeedance15Pro251215ErrorObject"
          }
        }
      },
      "DoubaoSeedance15Pro251215ErrorObject": {
        "type": "object",
        "additionalProperties": true,
        "required": [
          "message",
          "type"
        ],
        "properties": {
          "message": {
            "type": "string",
            "description": "Error message."
          },
          "type": {
            "type": "string",
            "description": "Error type.",
            "examples": [
              "invalid_request_error"
            ]
          },
          "code": {
            "type": [
              "string",
              "null"
            ],
            "description": "Error code.",
            "examples": [
              "param_error"
            ]
          },
          "param": {
            "type": [
              "string",
              "null"
            ],
            "description": "Related request parameter, if any."
          }
        }
      }
    },
    "examples": {
      "DoubaoSeedance15Pro251215ParamError": {
        "summary": "Invalid parameter error",
        "value": {
          "error": {
            "message": "Invalid param",
            "type": "invalid_request_error",
            "code": "param_error",
            "param": "parameters.duration"
          }
        }
      }
    }
  }
}
```
