Cómo usar la API de Grok Imagine Video 1.5 Lite
Tutorial paso a paso de la API de Grok Imagine Video 1.5 Lite con Node.js, Python y cURL: envía una tarea de texto a video, consulta su estado o recibe un webhook y descarga el resultado de video. El ejemplo siguiente cuesta $0,18.
- Endpoints
- 2
- Texto a video · Imagen a video
- Solicitud de ejemplo
- $0,18
- Texto a video
- Lenguajes
- 3
- Node.js · Python · cURL
- Generaciones fallidas
- $0
- reembolso automático
Obtener una clave de API
Crea una cuenta, añade saldo y genera una clave en Panel → Claves de API. Guárdala como CHEAPERGEN_API_KEY en tu servidor. Cada solicitud la envía como token bearer.
Elige un endpoint de Grok Imagine Video 1.5 Lite
Cada tarea tiene su propio endpoint. Todos reciben un cuerpo JSON y devuelven una generación cuyo estado puedes consultar.
| Tarea | Endpoint | Obligatorio | Desde |
|---|---|---|---|
| Texto a video | xai/grok-imagine-video-1.5-lite/text-to-video | prompt | $0,0146 por segundo |
| Imagen a video | xai/grok-imagine-video-1.5-lite/image-to-video | prompt, image_url | $0,0146 por segundo |
Envía un trabajo de texto a video
Este programa envía la tarea, consulta su estado cada 3 segundos hasta que termina e imprime la URL de video. Cambia el prompt y los ajustes por los tuyos.
const API = "https://cheapergen.com/api/v1";
const headers = {
Authorization: `Bearer ${process.env.CHEAPERGEN_API_KEY}`,
"Content-Type": "application/json",
};
// 1. Submit the job
let job = await fetch(`${API}/run/xai/grok-imagine-video-1.5-lite/text-to-video`, {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Un barco de papel avanza por una calle empapada por la lluvia al anochecer; los reflejos de neón ondulan en el agua y se oye una lluvia suave",
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 8
}),
}).then((r) => r.json());
// 2. Poll until it finishes (or pass webhook_url and skip polling)
while (job.status === "queued" || job.status === "running") {
await new Promise((r) => setTimeout(r, 3000));
job = await fetch(`${API}/generations/${job.id}`, { headers }).then((r) => r.json());
}
console.log(job.status === "succeeded" ? job.output.video.url : job.error);Configura los parámetros importantes
Los ajustes de xai/grok-imagine-video-1.5-lite/text-to-video y cómo afecta cada uno al precio.
| Parámetro | Tipo · valor predeterminado | Qué hace | Efecto en el precio |
|---|---|---|---|
| aspect_ratio | string (enum) · 16:9 | Formato del fotograma de salida. 16:9 · 9:16 · 1:1 · 4:3 · 3:4 · 3:2 · 2:3 | Sí |
| resolution | string (enum) · 720p | Resolución de salida. Las resoluciones más altas cuestan más por segundo. 480p · 720p · 1080p | 480p: $0,0146 por segundo 720p: $0,0219 por segundo 1080p: $0,1021 por segundo |
| duration | integer · 8 | Duración del clip generado en segundos (1–15s). Se cobra por segundo. | Se cobra por segundo |
Otros endpoints de Grok Imagine Video 1.5 Lite usan el mismo formato, con sus propias entradas:
POST /api/v1/run/xai/grok-imagine-video-1.5-lite/image-to-video
{
"prompt": "Ella se gira hacia la cámara y sonríe mientras el viento le mueve el pelo; se oye la charla suave de una cafetería",
"image_url": "https://cdn.cheapergen.com/samples/portrait.jpg",
"resolution": "720p",
"duration": 8
}Obtén el resultado
Una tarea pasa de queued a running y luego a succeeded, failed o canceled. Consulta GET /api/v1/generations/{id} o proporciona webhook_url para que te enviemos el resultado mediante una solicitud POST. Descarga y guarda el resultado por tu cuenta.
{
"id": "gen_8c2QmX1nq0k4",
"object": "generation",
"model": "xai/grok-imagine-video-1.5-lite",
"endpoint": "xai/grok-imagine-video-1.5-lite/text-to-video",
"mode": "text-to-video",
"status": "succeeded",
"input": {
"prompt": "Un barco de papel avanza por una calle empapada por la lluvia al anochecer; los reflejos de neón ondulan en el agua y se oye una lluvia suave",
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 8
},
"output": {
"video": {
"url": "https://cdn.cheapergen.com/outputs/gen_8c2Q.mp4",
"content_type": "video/mp4"
}
},
"error": null,
"cost": {
"amount_usd": 0.2255,
"currency": "usd",
"estimated": false,
"official_usd": 0.264,
"list_price_source": "official",
"list_price_label": "Official",
"saved_usd": 0.0385
},
"source": "api",
"created_at": "2026-10-15T09:21:04Z",
"started_at": "2026-10-15T09:21:06Z",
"completed_at": "2026-10-15T09:22:31Z"
}Calcula el precio antes de ejecutar una solicitud
El endpoint de cotización es gratis y no requiere una clave. Devuelve el precio, el precio oficial y tu descuento para los datos exactos que envíes.
curl -X POST https://cheapergen.com/api/v1/quote/xai/grok-imagine-video-1.5-lite/text-to-video \
-H "Content-Type: application/json" \
-d '{"prompt":"Un barco de papel avanza por una calle empapada por la lluvia al anochecer; los reflejos de neón ondulan en el agua y se oye una lluvia suave","aspect_ratio":"16:9","resolution":"720p","duration":8}'| Estado | Código | Significado |
|---|---|---|
| 400 | invalid_request | Falta un parámetro o está fuera de rango; el mensaje indica cuál. |
| 401 | unauthorized | Falta la clave de API, está mal formada o fue revocada. |
| 402 | insufficient_balance | El saldo no alcanza para el precio cotizado; añade créditos o activa la recarga automática. |
| 429 | rate_limited | Hay demasiadas solicitudes o generaciones en curso; espera un poco y vuelve a intentarlo. |
| 502 | upstream_error | El modelo falló; se reembolsa el importe reservado y puedes volver a intentarlo. |
| 503 | model_unavailable | No hay ninguna ruta disponible en este momento; inténtalo más tarde o elige otro modelo. |
Preguntas frecuentes