CheaperGen

Documentazione API di Grok Imagine Video 1.5

Tutto ciò che ti serve per chiamare Grok Imagine Video 1.5 dal tuo codice. URL di base: https://cheapergen.com/api/v1. Provalo prima nel playground.

Usi un agente di programmazione?

Incolla questo testo in Claude Code, Cursor, Codex o qualsiasi agente di programmazione. Aggiunge l’API al tuo progetto, conserva la chiave in CHEAPERGEN_API_KEY ed esegue una prova con un preventivo gratuito prima di spendere.

Add Grok Imagine Video 1.5 (CheaperGen endpoint xai/grok-imagine-video/text-to-video) to this project by following https://cheapergen.com/agents/integrate.md
Cosa legge il tuo agente

Autenticazione

Crea una chiave in Dashboard → Chiavi API, inviala come token bearer e conservala lato server.

export CHEAPERGEN_API_KEY="cg_live_…"

# every request
Authorization: Bearer $CHEAPERGEN_API_KEY

API Grok Imagine Video 1.5 Da testo a video

POST/api/v1/run/xai/grok-imagine-video/text-to-video

Invia un job asincrono e restituisce 202 con l’ID della generazione. Interroga GET /api/v1/generations/{id} o specifica webhook_url. Consulta il ciclo di vita dei job.

Parametri di input

NomeTipoDescrizioneEffetto sul prezzo
promptobbligatoriostringDescrivi l’inquadratura: soggetto, azione, movimento della camera, illuminazione e stile.No
aspect_ratiostring (enum)Formato del fotogramma in output.
Valori: 16:9 · 9:16 · 1:1 · 4:3 · 3:4 · 3:2 · 2:3
Predefinito: 16:9
Sì
resolutionstring (enum)Risoluzione dell’output. Le risoluzioni più alte costano di più al secondo.
Valori: 480p · 720p · 1080p
Predefinito: 720p
Sì
durationintegerDurata della clip generata in secondi (1–15 s). Paghi al secondo.
Intervallo: 1–15s
Predefinito: 8
Sì
webhook_urlstringa (URL)Facoltativo. Inviamo con POST la generazione completata a questo indirizzo, firmandola con il segreto del webhook. WebhookNo

Richiesta

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/text-to-video`, {
  method: "POST",
  headers,
  body: JSON.stringify({
    "prompt": "Un corgi DJ con gli occhiali da sole mette dischi a una festa in spiaggia al tramonto, folla che esulta, musica house ritmata",
    "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);

Risposta

{
  "id": "gen_8c2QmX1nq0k4",
  "object": "generation",
  "model": "xai/grok-imagine-video",
  "endpoint": "xai/grok-imagine-video/text-to-video",
  "mode": "text-to-video",
  "status": "queued",
  "input": {
    "prompt": "Un corgi DJ con gli occhiali da sole mette dischi a una festa in spiaggia al tramonto, folla che esulta, musica house ritmata",
    "aspect_ratio": "16:9",
    "resolution": "720p",
    "duration": 8
  },
  "output": null,
  "error": null,
  "cost": {
    "amount_usd": 0.2255,
    "currency": "usd",
    "estimated": true,
    "official_usd": null,
    "list_price_source": "official",
    "list_price_label": "Official",
    "saved_usd": null
  },
  "source": "api",
  "started_at": null,
  "completed_at": null,
  "urls": {
    "get": "https://cheapergen.com/api/v1/generations/gen_8c2QmX1nq0k4",
    "cancel": "https://cheapergen.com/api/v1/generations/gen_8c2QmX1nq0k4/cancel"
  },
  "created_at": "2026-10-15T09:21:04Z"
}

API Grok Imagine Video 1.5 Da riferimento a video

POST/api/v1/run/xai/grok-imagine-video/reference-to-video

Invia un job asincrono e restituisce 202 con l’ID della generazione. Interroga GET /api/v1/generations/{id} o specifica webhook_url. Consulta il ciclo di vita dei job.

Parametri di input

NomeTipoDescrizioneEffetto sul prezzo
promptobbligatoriostringDescrivi l’inquadratura: soggetto, azione, movimento della camera, illuminazione e stile.No
reference_image_urlsobbligatoriostring[] (URLs)Fino a 7 immagini per definire personaggi, prodotti, stile o scena. Richiamale nel prompt con @Image1, @Image2…
Numero massimo di elementi: 7
No
aspect_ratiostring (enum)Formato del fotogramma in output.
Valori: 16:9 · 9:16 · 1:1 · 4:3 · 3:4 · 3:2 · 2:3
Predefinito: 16:9
Sì
resolutionstring (enum)Risoluzione dell’output. Le risoluzioni più alte costano di più al secondo.
Valori: 480p · 720p · 1080p
Predefinito: 720p
Sì
durationintegerDurata della clip generata in secondi (1–15 s). Paghi al secondo.
Intervallo: 1–15s
Predefinito: 8
Sì
webhook_urlstringa (URL)Facoltativo. Inviamo con POST la generazione completata a questo indirizzo, firmandola con il segreto del webhook. WebhookNo

Richiesta

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/reference-to-video`, {
  method: "POST",
  headers,
  body: JSON.stringify({
    "prompt": "@Image1 va in bicicletta in un campo di girasoli, i capelli mossi dal vento, fischiettio allegro",
    "reference_image_urls": [
      "https://cdn.cheapergen.com/samples/reference-1.jpg"
    ],
    "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);

Risposta

{
  "id": "gen_8c2QmX1nq0k4",
  "object": "generation",
  "model": "xai/grok-imagine-video",
  "endpoint": "xai/grok-imagine-video/reference-to-video",
  "mode": "reference-to-video",
  "status": "queued",
  "input": {
    "prompt": "@Image1 va in bicicletta in un campo di girasoli, i capelli mossi dal vento, fischiettio allegro",
    "reference_image_urls": [
      "https://cdn.cheapergen.com/samples/reference-1.jpg"
    ],
    "aspect_ratio": "16:9",
    "resolution": "720p",
    "duration": 8
  },
  "output": null,
  "error": null,
  "cost": {
    "amount_usd": 0.2255,
    "currency": "usd",
    "estimated": true,
    "official_usd": null,
    "list_price_source": "official",
    "list_price_label": "Official",
    "saved_usd": null
  },
  "source": "api",
  "started_at": null,
  "completed_at": null,
  "urls": {
    "get": "https://cheapergen.com/api/v1/generations/gen_8c2QmX1nq0k4",
    "cancel": "https://cheapergen.com/api/v1/generations/gen_8c2QmX1nq0k4/cancel"
  },
  "created_at": "2026-10-15T09:21:04Z"
}

Ottieni il risultato

Le generazioni sono asincrone. Continua a interrogare finché il campo status non vale succeeded, failed o canceled; oppure specifica webhook_url al momento dell’invio. Le generazioni non riuscite vengono rimborsate automaticamente.

curl https://cheapergen.com/api/v1/generations/gen_8c2QmX1nq0k4 \
  -H "Authorization: Bearer $CHEAPERGEN_API_KEY"

Altro: ciclo di vita dei job · i webhook · errori

prezzi di Grok Imagine Video 1.5

Paga al secondo di video man mano che le usi, senza abbonamento. Le generazioni non riuscite vengono rimborsate automaticamente.

FasciaPrezzo ufficialeCheaperGen
480p
audio incluso
$0,08/s$0,0736/s
720p
audio incluso
$0,14/s$0,0675/s
Con un piano mensile: Pro $0,0633Max $0,059
1080p
audio incluso
$0,25/s$0,23/s

Piani mensili prezzi più bassi sulla maggior parte dei modelli (indicati sotto ogni prezzo); puoi continuare a pagare a consumo. Pro $499/mese · Max $4999/mese.

  • Prezzo ufficiale: Prezzo di listino dell’API xAI per grok-imagine-video-1.5 ($0.08 / s a 480p, $0.14 a 720p, $0.25 a 1080p; $0.01 per immagine di input). Prezzi verificati il 18 ottobre 2026.
  • Ogni immagine di riferimento aggiunge $0.01 (prima del nostro sconto).