curl -X POST https://zx1.deepwl.net/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMax-H3",
"content": [
{
"type": "text",
"text": "A boy playing basketball by the sea"
}
],
"metadata": {
"duration": 5,
"resolution": "2K",
"ratio": "16:9",
"aigc_watermark": false
}
}'
curl -X POST https://zx1.deepwl.net/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMax-H3",
"content": [
{
"type": "text",
"text": "A boy playing basketball by the sea"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/first-frame.jpg"
},
"role": "first_frame"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/last-frame.jpg"
},
"role": "last_frame"
}
],
"metadata": {
"duration": 5,
"resolution": "2K",
"ratio": "adaptive",
"aigc_watermark": false
}
}'
curl -X POST https://zx1.deepwl.net/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMax-H3",
"content": [
{
"type": "text",
"text": "A boy playing basketball by the sea"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/reference.png"
},
"role": "reference_image"
},
{
"type": "video_url",
"video_url": {
"url": "https://example.com/reference.mp4"
},
"role": "reference_video"
},
{
"type": "audio_url",
"audio_url": {
"url": "https://example.com/bgm.wav"
},
"role": "reference_audio"
}
],
"metadata": {
"duration": 5,
"resolution": "2K",
"ratio": "adaptive",
"aigc_watermark": false
}
}'
{
"task_id": "424010985738629"
}
{
"error": {
"code": "InvalidParameter",
"message": "content must contain a non-empty text item (2013)",
"type": "new_api_error"
}
}
{
"error": {
"code": "Unauthorized",
"message": "Invalid API key provided",
"type": "new_api_error"
}
}
{
"error": {
"code": "Forbidden",
"message": "access denied",
"type": "new_api_error"
}
}
{
"error": {
"code": "UnprocessableEntity",
"message": "video description contains sensitive content (1026)",
"type": "new_api_error"
}
}
{
"error": {
"code": "RateLimitExceeded",
"message": "Too many requests, please retry later",
"type": "new_api_error"
}
}
{
"error": {
"code": "InternalError",
"message": "internal server error",
"type": "new_api_error"
}
}
Official Format
Create Video (Official Format)
Submit a MiniMax-H3 multimodal video generation task with POST /v1/video/generations.
POST
https://zx1.deepwl.net
/
v1
/
video
/
generations
curl -X POST https://zx1.deepwl.net/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMax-H3",
"content": [
{
"type": "text",
"text": "A boy playing basketball by the sea"
}
],
"metadata": {
"duration": 5,
"resolution": "2K",
"ratio": "16:9",
"aigc_watermark": false
}
}'
curl -X POST https://zx1.deepwl.net/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMax-H3",
"content": [
{
"type": "text",
"text": "A boy playing basketball by the sea"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/first-frame.jpg"
},
"role": "first_frame"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/last-frame.jpg"
},
"role": "last_frame"
}
],
"metadata": {
"duration": 5,
"resolution": "2K",
"ratio": "adaptive",
"aigc_watermark": false
}
}'
curl -X POST https://zx1.deepwl.net/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMax-H3",
"content": [
{
"type": "text",
"text": "A boy playing basketball by the sea"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/reference.png"
},
"role": "reference_image"
},
{
"type": "video_url",
"video_url": {
"url": "https://example.com/reference.mp4"
},
"role": "reference_video"
},
{
"type": "audio_url",
"audio_url": {
"url": "https://example.com/bgm.wav"
},
"role": "reference_audio"
}
],
"metadata": {
"duration": 5,
"resolution": "2K",
"ratio": "adaptive",
"aigc_watermark": false
}
}'
{
"task_id": "424010985738629"
}
{
"error": {
"code": "InvalidParameter",
"message": "content must contain a non-empty text item (2013)",
"type": "new_api_error"
}
}
{
"error": {
"code": "Unauthorized",
"message": "Invalid API key provided",
"type": "new_api_error"
}
}
{
"error": {
"code": "Forbidden",
"message": "access denied",
"type": "new_api_error"
}
}
{
"error": {
"code": "UnprocessableEntity",
"message": "video description contains sensitive content (1026)",
"type": "new_api_error"
}
}
{
"error": {
"code": "RateLimitExceeded",
"message": "Too many requests, please retry later",
"type": "new_api_error"
}
}
{
"error": {
"code": "InternalError",
"message": "internal server error",
"type": "new_api_error"
}
}
Create Video (Official Format)
Submit a MiniMax-H3 video generation task, supporting text-to-video, first-frame / first-and-last-frame image-to-video, and reference image/video/audio modes.Method and Path
POST /v1/video/generations
Request Example
curl -X POST https://zx1.deepwl.net/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMax-H3",
"content": [
{
"type": "text",
"text": "A boy playing basketball by the sea"
}
],
"metadata": {
"duration": 5,
"resolution": "2K",
"ratio": "16:9",
"aigc_watermark": false
}
}'
curl -X POST https://zx1.deepwl.net/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMax-H3",
"content": [
{
"type": "text",
"text": "A boy playing basketball by the sea"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/first-frame.jpg"
},
"role": "first_frame"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/last-frame.jpg"
},
"role": "last_frame"
}
],
"metadata": {
"duration": 5,
"resolution": "2K",
"ratio": "adaptive",
"aigc_watermark": false
}
}'
curl -X POST https://zx1.deepwl.net/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMax-H3",
"content": [
{
"type": "text",
"text": "A boy playing basketball by the sea"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/reference.png"
},
"role": "reference_image"
},
{
"type": "video_url",
"video_url": {
"url": "https://example.com/reference.mp4"
},
"role": "reference_video"
},
{
"type": "audio_url",
"audio_url": {
"url": "https://example.com/bgm.wav"
},
"role": "reference_audio"
}
],
"metadata": {
"duration": 5,
"resolution": "2K",
"ratio": "adaptive",
"aigc_watermark": false
}
}'
Response Example
{
"task_id": "424010985738629"
}
{
"error": {
"code": "InvalidParameter",
"message": "content must contain a non-empty text item (2013)",
"type": "new_api_error"
}
}
{
"error": {
"code": "Unauthorized",
"message": "Invalid API key provided",
"type": "new_api_error"
}
}
{
"error": {
"code": "Forbidden",
"message": "access denied",
"type": "new_api_error"
}
}
{
"error": {
"code": "UnprocessableEntity",
"message": "video description contains sensitive content (1026)",
"type": "new_api_error"
}
}
{
"error": {
"code": "RateLimitExceeded",
"message": "Too many requests, please retry later",
"type": "new_api_error"
}
}
{
"error": {
"code": "InternalError",
"message": "internal server error",
"type": "new_api_error"
}
}
task_id with Query Task (Official Format) after submission.
Authentication
Authorization: Bearer YOUR_API_KEY
Body
string
required
Model name. Currently only
MiniMax-H3 is supported.array<object>
required
Multimodal input array; order affects role assignment.
string
required
Content type:
text, image_url, video_url, audio_url.string
Required when
type=text. The prompt text.object
Used when
type=image_url; must contain url.string
required
Public image URL. Formats: JPG, JPEG, PNG, WEBP, HEIC, HEIF; max 30 MB per file; dimensions 256–5760 px; aspect ratio 0.4–2.5. First frame ≤ 1 image, last frame ≤ 1 image, reference images ≤ 9.
object
Used when
type=video_url; must contain url.string
required
Reference video public URL. Formats: MP4, MOV; encoding H.264/AVC, H.265/HEVC; max 50 MB per file; count ≤ 3; each clip 2–15 seconds, total ≤ 15 seconds; dimensions 256–5760 px; aspect ratio 0.4–2.5; frame rate 23.976–60.
object
Used when
type=audio_url; must contain url.string
required
Reference audio public URL. Formats: WAV, MP3; max 15 MB per file; count ≤ 3; each clip 2–15 seconds, total ≤ 15 seconds.
string
Media role:
first_frame: first frame (image)last_frame: last frame (image)reference_image: reference imagereference_video: reference videoreference_audio: reference audio
object
Video generation parameters, all optional.
integer
Video duration (seconds). Valid range
[4, 15], default 5.string
Resolution:
768P, 2K, default 2K.string
Aspect ratio:
adaptive, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16. For text-to-video, defaults to 16:9 and cannot be adaptive; for image-to-video, forced to adaptive.boolean
Whether to add an AIGC watermark to the generated video, default
false.content Mixing Rules
Violating the following rules may return400:
reference_image/reference_video/reference_audiocannot appear together withfirst_frame/last_frame- Every request must include a non-empty
textitem (the prompt is required) - The total request body must not exceed 64 MB; use public URLs for large files instead of Base64
Generation Mode Mapping
| Mode | Request example | content essentials |
|---|---|---|
| Text-to-video (t2va) | Text-to-video | text only |
| Image-to-video (i2va) | Image-to-video | text + first_frame + last_frame |
| Multimodal reference-to-video (r2va) | Multimodal reference | text + reference_image + reference_video + reference_audio |
Response
string
Task ID, used for Query Task (Official Format).