curl --request POST \
--url https://api.apimart.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false
}'
import requests
url = "https://api.apimart.ai/v1/videos/generations"
payload = {
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": True,
"fast_pretreatment": False,
"watermark": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const url = "https://api.apimart.ai/v1/videos/generations";
const payload = {
model: "MiniMax-Hailuo-2.3",
prompt: "A cute kitten running on the grass",
duration: 6,
resolution: "768p",
prompt_optimizer: true,
fast_pretreatment: false,
watermark: false
};
const headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
url := "https://api.apimart.ai/v1/videos/generations"
payload := map[string]interface{}{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false,
}
jsonData, _ := json.Marshal(payload)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class Main {
public static void main(String[] args) throws Exception {
String url = "https://api.apimart.ai/v1/videos/generations";
String payload = """
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false
}
""";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
<?php
$url = "https://api.apimart.ai/v1/videos/generations";
$payload = [
"model" => "MiniMax-Hailuo-2.3",
"prompt" => "A cute kitten running on the grass",
"duration" => 6,
"resolution" => "768p",
"prompt_optimizer" => true,
"fast_pretreatment" => false,
"watermark" => false
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer <token>",
"Content-Type: application/json"
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
require 'net/http'
require 'json'
require 'uri'
url = URI("https://api.apimart.ai/v1/videos/generations")
payload = {
model: "MiniMax-Hailuo-2.3",
prompt: "A cute kitten running on the grass",
duration: 6,
resolution: "768p",
prompt_optimizer: true,
fast_pretreatment: false,
watermark: false
}
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = "Bearer <token>"
request["Content-Type"] = "application/json"
request.body = payload.to_json
response = http.request(request)
puts response.body
import Foundation
let url = URL(string: "https://api.apimart.ai/v1/videos/generations")!
let payload: [String: Any] = [
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false
]
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("Bearer <token>", forHTTPHeaderField: "Authorization")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpBody = try? JSONSerialization.data(withJSONObject: payload)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if let error = error {
print("Error: \(error)")
return
}
if let data = data, let responseString = String(data: data, encoding: .utf8) {
print(responseString)
}
}
task.resume()
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
var url = "https://api.apimart.ai/v1/videos/generations";
var payload = @"{
""model"": ""MiniMax-Hailuo-2.3"",
""prompt"": ""A cute kitten running on the grass"",
""duration"": 6,
""resolution"": ""768p"",
""prompt_optimizer"": true,
""fast_pretreatment"": false,
""watermark"": false
}";
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer <token>");
var content = new StringContent(payload, Encoding.UTF8, "application/json");
var response = await client.PostAsync(url, content);
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
}
]
}
{
"error": {
"code": 400,
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}
{
"error": {
"code": 401,
"message": "Invalid authentication credentials",
"type": "authentication_error"
}
}
{
"error": {
"code": 402,
"message": "Insufficient balance. Please top up your account",
"type": "payment_required"
}
}
{
"error": {
"code": 429,
"message": "Rate limit exceeded. Please try again later",
"type": "rate_limit_error"
}
}
{
"error": {
"code": 500,
"message": "Internal server error. Please try again later",
"type": "server_error"
}
}
MiniMax-Hailuo-2.3
MiniMax-Hailuo-2.3 Video Generation
- Async processing mode, returns task ID for subsequent queries
- Supports text-to-video, image-to-video (first frame image)
- Supports 6s and 10s duration, 768p/1080p resolution
- Supports 15 camera movement commands, prompt auto-optimization, and watermark control
POST
/
v1
/
videos
/
generations
curl --request POST \
--url https://api.apimart.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false
}'
import requests
url = "https://api.apimart.ai/v1/videos/generations"
payload = {
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": True,
"fast_pretreatment": False,
"watermark": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const url = "https://api.apimart.ai/v1/videos/generations";
const payload = {
model: "MiniMax-Hailuo-2.3",
prompt: "A cute kitten running on the grass",
duration: 6,
resolution: "768p",
prompt_optimizer: true,
fast_pretreatment: false,
watermark: false
};
const headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
url := "https://api.apimart.ai/v1/videos/generations"
payload := map[string]interface{}{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false,
}
jsonData, _ := json.Marshal(payload)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class Main {
public static void main(String[] args) throws Exception {
String url = "https://api.apimart.ai/v1/videos/generations";
String payload = """
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false
}
""";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
<?php
$url = "https://api.apimart.ai/v1/videos/generations";
$payload = [
"model" => "MiniMax-Hailuo-2.3",
"prompt" => "A cute kitten running on the grass",
"duration" => 6,
"resolution" => "768p",
"prompt_optimizer" => true,
"fast_pretreatment" => false,
"watermark" => false
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer <token>",
"Content-Type: application/json"
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
require 'net/http'
require 'json'
require 'uri'
url = URI("https://api.apimart.ai/v1/videos/generations")
payload = {
model: "MiniMax-Hailuo-2.3",
prompt: "A cute kitten running on the grass",
duration: 6,
resolution: "768p",
prompt_optimizer: true,
fast_pretreatment: false,
watermark: false
}
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = "Bearer <token>"
request["Content-Type"] = "application/json"
request.body = payload.to_json
response = http.request(request)
puts response.body
import Foundation
let url = URL(string: "https://api.apimart.ai/v1/videos/generations")!
let payload: [String: Any] = [
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false
]
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("Bearer <token>", forHTTPHeaderField: "Authorization")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpBody = try? JSONSerialization.data(withJSONObject: payload)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if let error = error {
print("Error: \(error)")
return
}
if let data = data, let responseString = String(data: data, encoding: .utf8) {
print(responseString)
}
}
task.resume()
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
var url = "https://api.apimart.ai/v1/videos/generations";
var payload = @"{
""model"": ""MiniMax-Hailuo-2.3"",
""prompt"": ""A cute kitten running on the grass"",
""duration"": 6,
""resolution"": ""768p"",
""prompt_optimizer"": true,
""fast_pretreatment"": false,
""watermark"": false
}";
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer <token>");
var content = new StringContent(payload, Encoding.UTF8, "application/json");
var response = await client.PostAsync(url, content);
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
}
]
}
{
"error": {
"code": 400,
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}
{
"error": {
"code": 401,
"message": "Invalid authentication credentials",
"type": "authentication_error"
}
}
{
"error": {
"code": 402,
"message": "Insufficient balance. Please top up your account",
"type": "payment_required"
}
}
{
"error": {
"code": 429,
"message": "Rate limit exceeded. Please try again later",
"type": "rate_limit_error"
}
}
{
"error": {
"code": 500,
"message": "Internal server error. Please try again later",
"type": "server_error"
}
}
curl --request POST \
--url https://api.apimart.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false
}'
import requests
url = "https://api.apimart.ai/v1/videos/generations"
payload = {
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": True,
"fast_pretreatment": False,
"watermark": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const url = "https://api.apimart.ai/v1/videos/generations";
const payload = {
model: "MiniMax-Hailuo-2.3",
prompt: "A cute kitten running on the grass",
duration: 6,
resolution: "768p",
prompt_optimizer: true,
fast_pretreatment: false,
watermark: false
};
const headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
url := "https://api.apimart.ai/v1/videos/generations"
payload := map[string]interface{}{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false,
}
jsonData, _ := json.Marshal(payload)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class Main {
public static void main(String[] args) throws Exception {
String url = "https://api.apimart.ai/v1/videos/generations";
String payload = """
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false
}
""";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
<?php
$url = "https://api.apimart.ai/v1/videos/generations";
$payload = [
"model" => "MiniMax-Hailuo-2.3",
"prompt" => "A cute kitten running on the grass",
"duration" => 6,
"resolution" => "768p",
"prompt_optimizer" => true,
"fast_pretreatment" => false,
"watermark" => false
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer <token>",
"Content-Type: application/json"
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
require 'net/http'
require 'json'
require 'uri'
url = URI("https://api.apimart.ai/v1/videos/generations")
payload = {
model: "MiniMax-Hailuo-2.3",
prompt: "A cute kitten running on the grass",
duration: 6,
resolution: "768p",
prompt_optimizer: true,
fast_pretreatment: false,
watermark: false
}
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = "Bearer <token>"
request["Content-Type"] = "application/json"
request.body = payload.to_json
response = http.request(request)
puts response.body
import Foundation
let url = URL(string: "https://api.apimart.ai/v1/videos/generations")!
let payload: [String: Any] = [
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass",
"duration": 6,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": false,
"watermark": false
]
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("Bearer <token>", forHTTPHeaderField: "Authorization")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpBody = try? JSONSerialization.data(withJSONObject: payload)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if let error = error {
print("Error: \(error)")
return
}
if let data = data, let responseString = String(data: data, encoding: .utf8) {
print(responseString)
}
}
task.resume()
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
var url = "https://api.apimart.ai/v1/videos/generations";
var payload = @"{
""model"": ""MiniMax-Hailuo-2.3"",
""prompt"": ""A cute kitten running on the grass"",
""duration"": 6,
""resolution"": ""768p"",
""prompt_optimizer"": true,
""fast_pretreatment"": false,
""watermark"": false
}";
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer <token>");
var content = new StringContent(payload, Encoding.UTF8, "application/json");
var response = await client.PostAsync(url, content);
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
}
]
}
{
"error": {
"code": 400,
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}
{
"error": {
"code": 401,
"message": "Invalid authentication credentials",
"type": "authentication_error"
}
}
{
"error": {
"code": 402,
"message": "Insufficient balance. Please top up your account",
"type": "payment_required"
}
}
{
"error": {
"code": 429,
"message": "Rate limit exceeded. Please try again later",
"type": "rate_limit_error"
}
}
{
"error": {
"code": 500,
"message": "Internal server error. Please try again later",
"type": "server_error"
}
}
Authorization
string
required
All API endpoints require Bearer Token authenticationGet your API Key:Visit the API Key Management Page to get your API KeyAdd to the request header:
Authorization: Bearer YOUR_API_KEY
Request Parameters
string
required
Supported models:
MiniMax-Hailuo-2.3- Hailuo 2.3MiniMax-Hailuo-2.3-Fast- Hailuo 2.3 Fast (lower latency)
MiniMax-Hailuo-2.3-Fast:
With this model,
With this model,
first_frame_image is required.boolean
default:"false"
Whether to run content moderation before submitting the video task.
true: useomni-moderation-latestto review prompts and input imagesfalseor omitted: do not send a moderation request, adding no moderation cost or latency (default)
string
required
Video content description (max 2000 characters)Describe scenes, actions, styles in detail for better generation results. Supports camera movement commands (see Camera Movement Commands below).Example:
"A cute kitten running on the grass"integer
default:"6"
Video duration (seconds)Options:
6- 6-second video10- 10-second video
61080p Limitation: When using 1080p resolution, only 6-second duration is supported
string
default:"768p"
Video resolutionOptions:
768p- High definition1080p- Full HD (only supports 6-second duration)
768pstring
First frame image for the videoSupports two formats:
- Public URL:
https://example.com/start.jpg - Base64 encoded:
data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABg...
MiniMax-Hailuo-2.3-Fast:
With this model,
With this model,
first_frame_image is required.boolean
default:"true"
Whether to auto-optimize the promptWhen enabled, the system will automatically optimize your prompt for better generation resultsDefault:
trueboolean
default:"false"
Whether to shorten prompt optimization timeWhen enabled, processing speed is faster but optimization quality may be slightly affectedDefault:
falseboolean
default:"false"
Whether to add watermarkDefault:
falseResolution and Duration Combinations
| Resolution | Supported Duration | Notes |
|---|---|---|
| 768p | 6s, 10s | All supported |
| 1080p | 6s | 10s not supported |
Camera Movement Commands
Use[command] syntax in the prompt to control camera movements. The command labels must be entered exactly as the Chinese labels shown below. 15 commands are supported:
| Category | Commands |
|---|---|
| Pan | [左移] (pan left) [右移] (pan right) |
| Horizontal Rotate | [左摇] (rotate left) [右摇] (rotate right) |
| Push/Pull | [推进] (push in) [拉远] (pull out) |
| Vertical Move | [上升] (rise) [下降] (descend) |
| Vertical Rotate | [上摇] (tilt up) [下摇] (tilt down) |
| Zoom | [变焦推近] (zoom in) [变焦拉远] (zoom out) |
| Other | [晃动] (shake) [跟随] (follow) [固定] (static) |
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "[推进]A cat running in the garden, camera slowly pushing in for a close-up"
}
Response
integer
Response status code, 200 on success
array
Use Cases
Case 1: Quick Text-to-Video
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A cute kitten running on the grass, sunny day"
}
Case 2: High-Quality 1080p Video
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "City nightscape, neon lights flickering, traffic flowing",
"duration": 6,
"resolution": "1080p",
"prompt_optimizer": true,
"watermark": false
}
Case 3: Image-to-Video with First Frame
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "Kitten running towards camera, smiling and blinking",
"first_frame_image": "https://example.com/cat.jpg",
"duration": 6,
"resolution": "1080p"
}
Case 4: Camera Movement Commands
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "[推进]A cat running in the garden, camera slowly pushing in for a close-up",
"duration": 6,
"resolution": "768p"
}
Case 5: Fast Pretreatment Mode
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "Waves crashing on the beach at sunset",
"duration": 10,
"resolution": "768p",
"prompt_optimizer": true,
"fast_pretreatment": true
}
Query Task ResultsVideo generation is an async task that returns a
task_id upon submission. Use the Get Task Status endpoint to query generation progress and results.⌘I