curl --request POST \
--url https://api.evolink.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "minimax-h3-max-text-to-video",
"prompt": "Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.",
"duration": 5,
"quality": "768p",
"aspect_ratio": "16:9"
}
'import requests
url = "https://api.evolink.ai/v1/videos/generations"
payload = {
"model": "minimax-h3-max-text-to-video",
"prompt": "Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.",
"duration": 5,
"quality": "768p",
"aspect_ratio": "16:9"
}
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-text-to-video',
prompt: 'Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.',
duration: 5,
quality: '768p',
aspect_ratio: '16:9'
})
};
fetch('https://api.evolink.ai/v1/videos/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.evolink.ai/v1/videos/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => 'minimax-h3-max-text-to-video',
'prompt' => 'Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.',
'duration' => 5,
'quality' => '768p',
'aspect_ratio' => '16:9'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.evolink.ai/v1/videos/generations"
payload := strings.NewReader("{\n \"model\": \"minimax-h3-max-text-to-video\",\n \"prompt\": \"Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.\",\n \"duration\": 5,\n \"quality\": \"768p\",\n \"aspect_ratio\": \"16:9\"\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))
}HttpResponse<String> response = Unirest.post("https://api.evolink.ai/v1/videos/generations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"minimax-h3-max-text-to-video\",\n \"prompt\": \"Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.\",\n \"duration\": 5,\n \"quality\": \"768p\",\n \"aspect_ratio\": \"16:9\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.evolink.ai/v1/videos/generations")
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 = "{\n \"model\": \"minimax-h3-max-text-to-video\",\n \"prompt\": \"Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.\",\n \"duration\": 5,\n \"quality\": \"768p\",\n \"aspect_ratio\": \"16:9\"\n}"
response = http.request(request)
puts response.read_body{
"created": 1761313744,
"id": "task-unified-1774857405-abc123",
"model": "minimax-h3-max-text-to-video",
"object": "video.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 165,
"video_duration": 5
},
"type": "video",
"usage": {
"billing_rule": "per_second",
"credits_reserved": 44.2,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: minimax-h3-max-text-to-video",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Minimax H3 Max Text-to-Video
- Genera vídeo desde un prompt de texto no vacío
- Duración de salida:
5–15segundos; resolución480po768p(predeterminada) - No admite entradas de imagen, vídeo ni audio
- Procesamiento asíncrono; consulta la tarea con su ID
- Las URL generadas son válidas durante 24 horas
curl --request POST \
--url https://api.evolink.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "minimax-h3-max-text-to-video",
"prompt": "Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.",
"duration": 5,
"quality": "768p",
"aspect_ratio": "16:9"
}
'import requests
url = "https://api.evolink.ai/v1/videos/generations"
payload = {
"model": "minimax-h3-max-text-to-video",
"prompt": "Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.",
"duration": 5,
"quality": "768p",
"aspect_ratio": "16:9"
}
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-text-to-video',
prompt: 'Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.',
duration: 5,
quality: '768p',
aspect_ratio: '16:9'
})
};
fetch('https://api.evolink.ai/v1/videos/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.evolink.ai/v1/videos/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => 'minimax-h3-max-text-to-video',
'prompt' => 'Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.',
'duration' => 5,
'quality' => '768p',
'aspect_ratio' => '16:9'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.evolink.ai/v1/videos/generations"
payload := strings.NewReader("{\n \"model\": \"minimax-h3-max-text-to-video\",\n \"prompt\": \"Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.\",\n \"duration\": 5,\n \"quality\": \"768p\",\n \"aspect_ratio\": \"16:9\"\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))
}HttpResponse<String> response = Unirest.post("https://api.evolink.ai/v1/videos/generations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"minimax-h3-max-text-to-video\",\n \"prompt\": \"Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.\",\n \"duration\": 5,\n \"quality\": \"768p\",\n \"aspect_ratio\": \"16:9\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.evolink.ai/v1/videos/generations")
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 = "{\n \"model\": \"minimax-h3-max-text-to-video\",\n \"prompt\": \"Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida.\",\n \"duration\": 5,\n \"quality\": \"768p\",\n \"aspect_ratio\": \"16:9\"\n}"
response = http.request(request)
puts response.read_body{
"created": 1761313744,
"id": "task-unified-1774857405-abc123",
"model": "minimax-h3-max-text-to-video",
"object": "video.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 165,
"video_duration": 5
},
"type": "video",
"usage": {
"billing_rule": "per_second",
"credits_reserved": 44.2,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: minimax-h3-max-text-to-video",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Autorizaciones
##Todas las interfaces requieren autenticacion mediante Bearer Token##
Obtener API Key:
Visite la Pagina de gestion de API Key para obtener su API Key
Agregue en el encabezado de la solicitud al usar:
Authorization: Bearer YOUR_API_KEY
Cuerpo
Nombre del modelo de generacion de video
minimax-h3-max-text-to-video "minimax-h3-max-text-to-video"
Describe el vídeo que quieres generar.
Requisitos del prompt:
- Es obligatorio y no puede estar vacío
- Se admiten chino e inglés
- Longitud máxima:
7000caracteres (tanto el chino como el inglés se cuentan por caracteres) - Un prompt demasiado largo puede hacer que el modelo omita algunos detalles
Restricciones de entrada:
- Este modelo genera vídeo únicamente a partir de texto
- No admite
image_start,image_end,image_urls,video_urlsniaudio_urls - Enviar cualquiera de estos campos multimedia devuelve un error de parámetro
1 - 7000"Tráiler cinematográfico de ópera espacial épica: una capitana permanece sola ante una enorme ventana de observación mientras la última flota se reúne en el exterior. La flota salta entre un destello cegador y el puente tiembla; cuando la luz se desvanece, ella queda sola en el silencio del espacio profundo. Iluminación cinematográfica, lento avance de cámara, atmósfera grandiosa pero contenida."
Duración del vídeo de salida en segundos. El valor predeterminado es 5 segundos.
Restricciones de valor:
- Solo se admiten enteros de
5a15, ambos inclusive - No se admiten decimales, cadenas numéricas,
autoni-1 - La duración de salida afecta directamente a la facturación
5 <= x <= 155
Resolución del vídeo de salida. El valor predeterminado es 768p.
Valores disponibles:
480p768p: valor predeterminado
Notas:
- Si se omite el parámetro, la salida es
768p - La plataforma determina la tasa de bits, la frecuencia de fotogramas y los códecs de vídeo y audio; no se pueden configurar
480p, 768p "768p"
Relación de aspecto del vídeo de salida. El valor predeterminado es 16:9.
Valores disponibles:
16:9: horizontal21:9: ultraancha4:3: horizontal estándar1:1: cuadrada3:4: vertical estándar9:16: vertical
16:9, 21:9, 4:3, 1:1, 3:4, 9:16 "16:9"
Direccion de callback HTTPS despues de completar la tarea
Momento del callback:
- Se activa cuando la tarea se completa (completed) o falla (failed)
- Se envia despues de confirmar la facturacion
Restricciones de seguridad:
- Solo admite protocolo HTTPS
- Prohibido el callback a direcciones IP de red interna (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)
- La longitud de la URL no debe exceder
2048caracteres
Mecanismo de callback:
- Tiempo de espera:
10segundos - Maximo
3reintentos despues del fallo (reintentos a los1/2/4segundos despues del fallo) - El formato del cuerpo de respuesta del callback es consistente con el formato de retorno de la interfaz de consulta de tareas
- Un codigo de estado 2xx se considera exitoso, otros codigos de estado activan reintentos
^https://"https://your-domain.com/webhooks/video-task-completed"
Respuesta
Tarea de generacion de video creada exitosamente
Marca de tiempo de creacion de la tarea
1761313744
ID de la tarea
"task-unified-1774857405-abc123"
Nombre del modelo utilizado
"minimax-h3-max-text-to-video"
Tipo especifico de la tarea
video.generation.task Porcentaje de progreso de la tarea (0-100)
0 <= x <= 1000
Estado de la tarea
pending, processing, completed, failed "pending"
Informacion detallada de la tarea de video
Show child attributes
Show child attributes
Tipo de salida de la tarea
text, image, audio, video "video"
Informacion de uso y facturacion
Show child attributes
Show child attributes