MiniMax H3 video generation
curl --request POST \
--url https://api.omnimux.ai/v1/video/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "minimax/h3-max-turbo",
"prompt": "The camera moves around the subject"
}
'import requests
url = "https://api.omnimux.ai/v1/video/generations"
payload = {
"model": "minimax/h3-max-turbo",
"prompt": "The camera moves around the subject"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({model: 'minimax/h3-max-turbo', prompt: 'The camera moves around the subject'})
};
fetch('https://api.omnimux.ai/v1/video/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.omnimux.ai/v1/video/generations"
payload := strings.NewReader("{\n \"model\": \"minimax/h3-max-turbo\",\n \"prompt\": \"The camera moves around the subject\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"id": "task_example",
"task_id": "task_example",
"object": "video",
"model": "minimax/h3-max-turbo",
"status": "queued",
"created": 1788926400
}{
"code": "invalid_request",
"message": "720p is retired for H3; explicitly select 768p",
"data": null
}{
"code": "<string>",
"message": "<string>",
"data": "<unknown>"
}{
"code": "<string>",
"message": "<string>",
"data": "<unknown>"
}{
"code": "<string>",
"message": "<string>",
"data": "<unknown>"
}{
"code": "<string>",
"message": "<string>",
"data": "<unknown>"
}MiniMax
MiniMax H3 Max Turbo
MiniMax H3 Max Turbo video API
POST
/
v1
/
video
/
generations
MiniMax H3 video generation
curl --request POST \
--url https://api.omnimux.ai/v1/video/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "minimax/h3-max-turbo",
"prompt": "The camera moves around the subject"
}
'import requests
url = "https://api.omnimux.ai/v1/video/generations"
payload = {
"model": "minimax/h3-max-turbo",
"prompt": "The camera moves around the subject"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({model: 'minimax/h3-max-turbo', prompt: 'The camera moves around the subject'})
};
fetch('https://api.omnimux.ai/v1/video/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.omnimux.ai/v1/video/generations"
payload := strings.NewReader("{\n \"model\": \"minimax/h3-max-turbo\",\n \"prompt\": \"The camera moves around the subject\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"id": "task_example",
"task_id": "task_example",
"object": "video",
"model": "minimax/h3-max-turbo",
"status": "queued",
"created": 1788926400
}{
"code": "invalid_request",
"message": "720p is retired for H3; explicitly select 768p",
"data": null
}{
"code": "<string>",
"message": "<string>",
"data": "<unknown>"
}{
"code": "<string>",
"message": "<string>",
"data": "<unknown>"
}{
"code": "<string>",
"message": "<string>",
"data": "<unknown>"
}{
"code": "<string>",
"message": "<string>",
"data": "<unknown>"
}Use text_to_video without media, or first_frame with exactly one image. Turbo does not support video_multi_ref. Use one field spelling per media kind. Replace legacy 720p with explicit 768P. Completed jobs without usable artifacts remain retryable; failure/cancellation takes precedence over stale artifacts. Status reads do not own billing settlement. Pricing follows the current catalog; no fixed generation latency is guaranteed.
Query Video Task · Pricing
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Available options:
minimax/h3-max-turbo Required string length:
1 - 50000Must agree with media: text uses none; first_frame requires one image only.
Available options:
text_to_video, first_frame HTTP(S) first-frame image; do not combine with image_urls.
Ordered images; one field spelling per media kind.
Maximum array length:
1Case/whitespace normalized. 720p is rejected; select 768P explicitly.
Available options:
480P, 768P, 1080P Available options:
5, 10 Available options:
16:9, 9:16, 1:1 First-frame role form. Do not combine with image_url/image_urls; not accepted by video_multi_ref.
Required array length:
1 elementShow child attributes
Show child attributes