Submit a request
Create an async generation task and poll the task endpoint for terminal status updates.
Doubao Seedance 2.0 Fast is a fast video generation version, making it suitable for efficiency-first video tasks.
Submit a task to MindVideo with your platform model slug. The response includes a request ID, task ID, normalized status, and estimated cost.
For production retries, send a unique Idempotency-Key per business request. Reusing the same key with the same payload returns the original task without charging again; reusing it with different input returns 409.
curl -X POST https://api.mindvideo.ai/api/v1/tasks \
-H "Authorization: Bearer mv_live_xxx" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: task_$(date +%s)" \
-d '{
"model": "doubao-seedance-2-0-fast",
"input": {
"prompt": "A cinematic tracking shot of a futuristic city street after rain",
"size": "16:9",
"resolution": "720p",
"duration": 5,
"generate_audio": true
}
}'Every server-side request must include an API key in the Authorization header. Keys can be created, disabled, and deleted from the dashboard.
The platform maps runtime states into queued, processing, succeeded, failed, or cancelled so clients do not depend on model-specific fields.
Create an async generation task and poll the task endpoint for terminal status updates.
curl https://api.mindvideo.ai/api/v1/tasks/task_demo_model \
-H "Authorization: Bearer mv_live_xxx"curl https://api.mindvideo.ai/api/v1/tasks/task_demo_model/events \
-H "Authorization: Bearer mv_live_xxx"{
"request_id": "req_demo_model",
"task_id": "task_demo_model",
"status": "succeeded",
"cost_estimate": 0.0657,
"cost_actual": 0.0657,
"output": {
"videos": [
{
"url": "https://example.com/output/demo.mp4"
}
]
}
}Inputs can reference hosted files or compact data URIs depending on model constraints. Production apps should prefer stable hosted URLs.
{
"type": "object",
"required": [
"prompt"
],
"properties": {
"seed": {
"type": "integer",
"title": "Seed",
"maximum": 2147483647,
"minimum": 0
},
"size": {
"enum": [
"16:9",
"9:16",
"1:1",
"4:3",
"3:4",
"21:9",
"adaptive"
],
"type": "string",
"title": "Aspect ratio",
"default": "16:9"
},
"tools": {
"type": "array",
"items": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"enum": [
"web_search"
],
"type": "string"
}
},
"additionalProperties": false
},
"title": "Tools",
"x-playground": {
"advanced": true
}
},
"prompt": {
"type": "string",
"title": "Prompt",
"maxLength": 4000,
"minLength": 1,
"description": "Video content description.",
"x-playground": {
"rows": 6,
"widget": "textarea"
}
},
"duration": {
"type": "integer",
"title": "Duration",
"default": 5,
"maximum": 15,
"minimum": 4
},
"watermark": {
"type": "boolean",
"title": "Watermark",
"default": false
},
"audio_urls": {
"type": "array",
"items": {
"type": "string"
},
"title": "Reference audio",
"maxItems": 3,
"description": "Reference audio URLs or approved asset URLs. Must be used with reference images or reference videos.",
"x-playground": {
"accept": "audio/*",
"widget": "file-upload",
"advanced": true,
"multiple": true,
"uploadKind": "audio"
}
},
"image_urls": {
"type": "array",
"items": {
"type": "string"
},
"title": "Reference images",
"maxItems": 9,
"description": "Reference image URLs or approved asset URLs. Cannot be used together with image_with_roles.",
"x-playground": {
"accept": "image/*",
"widget": "file-upload",
"advanced": true,
"multiple": true,
"uploadKind": "image"
}
},
"resolution": {
"enum": [
"480p",
"720p"
],
"type": "string",
"title": "Resolution",
"default": "480p"
},
"video_urls": {
"type": "array",
"items": {
"type": "string"
},
"title": "Reference videos",
"maxItems": 3,
"description": "Reference video URLs or approved asset URLs.",
"x-playground": {
"accept": "video/*",
"widget": "file-upload",
"advanced": true,
"multiple": true,
"uploadKind": "video"
}
},
"camera_fixed": {
"type": "boolean",
"title": "Fixed camera",
"default": false
},
"generate_audio": {
"type": "boolean",
"title": "Generate audio",
"default": false
},
"image_with_roles": {
"type": "array",
"items": {
"type": "object",
"required": [
"url",
"role"
],
"properties": {
"url": {
"type": "string"
},
"role": {
"enum": [
"first_frame",
"last_frame",
"reference_image"
],
"type": "string"
}
},
"additionalProperties": false
},
"title": "Images with roles",
"maxItems": 9,
"description": "Images with explicit roles. First-frame or last-frame images cannot be used with video_urls or audio_urls.",
"x-playground": {
"advanced": true
}
},
"return_last_frame": {
"type": "boolean",
"title": "Return last frame",
"default": false
}
},
"additionalProperties": false
}{
"request_id": "req_demo_model",
"task_id": "task_demo_model",
"status": "succeeded",
"cost_estimate": 0.0657,
"cost_actual": 0.0657,
"output": {
"videos": [
{
"url": "https://example.com/output/demo.mp4"
}
]
}
}