Endpoints
Método Endpoint Descripción POST /api/v1/generateTask/ltx-2-19bCrear tarea de generación GET /api/v1/statusTask/ltx-2-19bConsultar estado de la tarea
Autenticación
Todas las solicitudes requieren una clave API en el header:
Authorization: Bearer YOUR_API_KEY
Cuerpo de la solicitud
{
"request_type" : "async" ,
"callback_url" : "https://..." ,
"provider" : "auto" ,
"input" : {
"mode" : "text-to-video" ,
"prompt" : "..." ,
"resolution" : "1080p" ,
"duration" : 10 ,
"aspect_ratio" : "16:9" ,
"image_urls" : [ "..." ],
"seed" : 12345 ,
"loras" : [
{ "path" : "..." , "scale" : 1.2 }
]
}
}
Parámetros
request_type
string
predeterminado: "async"
async (polling) or callback (webhook)
Callback URL, required when request_type=callback (conditional)
provider
string
predeterminado: "auto"
Routing strategy: auto, value, or official
Model input parameters mode
string
predeterminado: "text-to-video"
requerido
text-to-video, image-to-video, text-to-video-LoRA, or image-to-video-LoRA
Text description, 1-5000 characters
resolution
string
predeterminado: "720p"
requerido
Video resolution: 480p, 720p, or 1080p
duration
integer
predeterminado: "10"
requerido
Video duration in seconds: 5-20
Reference image, 1 only (required for -image-to-video modes) (conditional)
aspect_ratio
string
predeterminado: "16:9"
16:9 or 9:16 (for -text-to-video modes only)
Random seed, 1-2147483647, for reproducibility
LoRA models array (for *-LoRA modes only), max 3
Mode Options:
text-to-video — Generate video from text
image-to-video — Generate video from image
text-to-video-LoRA — Text-to-video with LoRA
image-to-video-LoRA — Image-to-video with LoRA
Example
Text-to-Video
curl -X POST "https://api.apixo.ai/api/v1/generateTask/ltx-2-19b" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"request_type": "async",
"input": {
"mode": "text-to-video",
"prompt": "a futuristic city with flying cars at sunset",
"resolution": "1080p",
"duration": 10,
"aspect_ratio": "16:9",
"seed": 54248617
}
}'
Image-to-Video with LoRA
curl -X POST "https://api.apixo.ai/api/v1/generateTask/ltx-2-19b" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"request_type": "callback",
"callback_url": "https://your-server.com/callback",
"provider": "official",
"input": {
"mode": "image-to-video-LoRA",
"prompt": "make it cinematic with slow pan and dramatic lighting",
"resolution": "720p",
"duration": 8,
"image_urls": ["https://example.com/ref.jpg"],
"loras": [
{
"path": "https://huggingface.co/username/model.safetensors?download=true",
"scale": 1.2
}
]
}
}'
Text-to-Video with Multiple LoRAs
curl -X POST "https://api.apixo.ai/api/v1/generateTask/ltx-2-19b" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"request_type": "async",
"input": {
"mode": "text-to-video-LoRA",
"prompt": "anime style magical girl transformation sequence",
"resolution": "720p",
"duration": 12,
"aspect_ratio": "9:16",
"loras": [
{"path": "https://huggingface.co/user1/anime_style.safetensors?download=true", "scale": 1.5},
{"path": "https://huggingface.co/user2/magic_effects.safetensors?download=true", "scale": 0.8}
]
}
}'
Respuesta
POST /api/v1/generateTask/ltx-2-19b
Devuelve taskId en éxito para consultas de estado posteriores.
Éxito:
{
"code" : 200 ,
"message" : "success" ,
"data" : {
"taskId" : "task_12345678"
}
}
Error:
{
"code" : 400 ,
"message" : "Insufficient credits" ,
"data" : null
}
GET /api/v1/statusTask/ltx-2-19b
Consulta el estado de ejecución y resultados de la tarea vía taskId.
curl -X GET "https://api.apixo.ai/api/v1/statusTask/ltx-2-19b?taskId=task_12345678" \
-H "Authorization: Bearer YOUR_API_KEY"
Éxito:
{
"code" : 200 ,
"message" : "success" ,
"data" : {
"taskId" : "task_12345678" ,
"state" : "success" ,
"resultJson" : "{ \" resultUrls \" :[ \" https://r2.apixo.ai/video.mp4 \" ]}" ,
"createTime" : 1767965610929 ,
"completeTime" : 1767965652317 ,
"costTime" : 41388
}
}
Fallido:
{
"code" : 200 ,
"message" : "success" ,
"data" : {
"taskId" : "task_12345678" ,
"state" : "failed" ,
"failCode" : "CONTENT_VIOLATION" ,
"failMsg" : "Content does not meet safety guidelines"
}
}
Campos de respuesta de estado
Identificador único de la tarea.
Estado actual: pending, processing, success, or failed.
JSON string containing resultUrls array. Only present on success. Parse with JSON.parse().
Human-readable error message. Only present when state is failed.
Task creation timestamp (Unix milliseconds).
Task completion timestamp (Unix milliseconds).
Processing duration in milliseconds.
Códigos de error
Código Descripción 400 Parámetros inválidos o error de solicitud 401 Clave API inválida o faltante 429 Límite de tasa excedido
Fail Code Descripción CONTENT_VIOLATIONContent violates safety guidelines INVALID_IMAGE_URLCannot access provided image URL INVALID_LORA_URLCannot download LoRA model
Límites de tasa
Límite Valor Requests 10000 / minute Concurrent tasks 1000
Superar los límites devuelve error 429. Espera y reintenta.
Consejos
Generation time :
480p: ~40-60 seconds
720p: ~60-90 seconds
1080p: ~90-120 seconds
LoRA mode adds 10-20 seconds for loading
Submit task, wait 60 seconds, then poll every 5 seconds
Callback mode : Video generation takes time, strongly recommend using callback mode.
Video expiration : Result URLs are valid for 15 days. Download promptly.
Content moderation : Prompts must comply with content safety guidelines.
LoRA fine-tuning :
Load custom LoRA models for specific styles or characters
LoRA URL must be publicly downloadable (HuggingFace, Civitai, etc.)
URL should include ?download=true or similar download parameters
Max 3 LoRA models simultaneously
scale parameter controls LoRA influence, recommended: 0.5-2.0
Resolution selection :
480p: Fast generation, for previews
720p: Balanced quality and speed
1080p: Highest quality, for final output
Duration : Supports flexible 5-20 second duration, billed per second.
Seed reproduction : Same seed + prompt + parameters reproduces identical results.
Image formats : image_urls supports JPG, PNG, WebP, max 10MB per image.
LoRA compatibility : Use video-trained LoRAs; image LoRAs may not work well.
Video generation takes longer than images — use callback mode for production workloads. Result URLs expire after 15 days; download important outputs promptly.
Relacionado