01
Créer une API key
Ouvrez Dashboard > API Keys et préparez une clé serveur. Les clients navigateur doivent appeler votre backend, sans exposer la clé.
Documentation preview
Ce guide développeur présente le flux prévu de Veo 4 API : créer une tâche vidéo, suivre son statut, recevoir des webhooks et estimer les crédits avant le lancement public.
Flux d'intégration
Utilisez ce flux pour préparer l'intégration backend. Gardez la clé côté serveur, soumettez les jobs en asynchrone, puis stockez les URLs de résultat.
01
Ouvrez Dashboard > API Keys et préparez une clé serveur. Les clients navigateur doivent appeler votre backend, sans exposer la clé.
02
Envoyez une requête text-to-video ou image-to-video avec prompt, mode, format, qualité et webhook URL optionnelle.
03
Interrogez le task endpoint avec task_id jusqu'à succeeded ou failed. Les webhooks réduisent le polling en production.
04
Quand la tâche réussit, stockez video_url et thumbnail_url dans votre CMS, éditeur, pipeline ou fiche projet utilisateur.
Contrat preview
Les exemples sont concrets pour aider les équipes à concevoir les clients dès maintenant. Considérez-les comme un draft avant l'annonce de lancement.
Appelez en HTTPS depuis votre serveur. Le lancement peut introduire un domaine versionné ou des endpoints régionaux.
https://veo4api.net/api/video/veo4Chaque requête utilise un Bearer token. Gardez les API keys dans les secrets serveur, jamais dans les bundles frontend publics.
Authorization: Bearer YOUR_API_KEYhttps://veo4api.net/api/video/veo4/generatePeut changerCrée une nouvelle tâche vidéo Veo 4 asynchrone. La réponse retourne task_id immédiatement pendant que le rendu continue en arrière-plan.
| Champ | Type | Requis | Description |
|---|---|---|---|
prompt | string | Oui | Instruction naturelle pour le clip : sujet, mouvement caméra, style et contraintes. |
image_urls | string[] | Non | Images source accessibles publiquement pour les jobs image-to-video. Le proxy actuel accepte image_urls et les alias compatibles d'URL d'image. |
aspect_ratio | string | Non | Valeurs prévues : 16:9, 9:16 et 1:1. |
extend_task_id | string | Non | task_id optionnel d'une vidéo déjà terminée pour demander un workflow d'extension. |
seeds | number | Non | Seed numérique optionnel pour des sorties plus reproductibles. La plage actuelle est 10000 à 99999. |
watermark | string | Non | Libellé de watermark optionnel transmis au backend de génération vidéo. |
enableTranslation | boolean | Non | Booléen optionnel qui contrôle la traduction du prompt avant génération. Par défaut true. |
public | boolean | Non | Booléen optionnel indiquant si le résultat peut apparaître dans des surfaces publiques de showcase. |
curl -X POST "https://veo4api.net/api/video/veo4/generate" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A cinematic dolly shot of a glass greenhouse during sunrise",
"aspect_ratio": "16:9",
"watermark": "veo4api",
"enableTranslation": true
}'const response = await fetch("https://veo4api.net/api/video/veo4/generate", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
prompt: "Animate this product photo into a smooth studio orbit shot",
image_urls: ["https://cdn.example.com/input/product.png"],
aspect_ratio: "1:1",
seeds: 12345,
public: false
})
});
const data = await response.json();
console.log(data.task_id);{
"task_id": "veo4_task_01j9example",
"status": "queued",
"model": "veo-4",
"credits_estimated": 180,
"created_at": "2026-05-17T08:00:00Z"
}{
"task_id": "veo4_task_01j9example",
"status": "succeeded",
"progress": 100,
"video_url": "https://cdn.veo4api.net/results/veo4_task_01j9example.mp4",
"thumbnail_url": "https://cdn.veo4api.net/results/veo4_task_01j9example.jpg",
"completed_at": "2026-05-17T08:03:42Z"
}
// Poll the task with:
// GET https://veo4api.net/api/video/veo4/status?task_id={task_id}Livraison asynchrone
La livraison webhook est prévue pour le contrat d'API public. Tant qu'elle n'est pas activée, interrogez le status endpoint et préparez votre backend pour un futur champ webhook_url.
Les détails de signature webhook ne sont pas finalisés. Prévoyez de vérifier un futur header de signature, stockez task_id et ignorez les doublons.
{
"event": "video.succeeded",
"task_id": "veo4_task_01j9example",
"status": "succeeded",
"model": "veo-4",
"video_url": "https://cdn.veo4api.net/results/veo4_task_01j9example.mp4",
"credits_charged": 180,
"created_at": "2026-05-17T08:00:00Z",
"completed_at": "2026-05-17T08:03:42Z"
}Fiabilité
Concevez les clients autour d'états explicites et d'échecs retryable. La génération est asynchrone : une réponse 200 signifie seulement que la tâche est acceptée.
| État | Signification |
|---|---|
queued | La requête est acceptée et attend de la capacité. |
processing | Le modèle rend ou post-traite la vidéo. |
succeeded | La vidéo est prête et les URLs de résultat sont disponibles. |
failed | La génération a échoué. Affichez l'erreur et proposez de modifier le prompt ou de réessayer. |
canceled | La tâche a été annulée avant la fin. |
| Code | Gestion recommandée |
|---|---|
400 | Validez prompt length, image_urls, aspect_ratio, seeds et public visibility avant de réessayer. |
401 | API key manquante, expirée ou invalide. Demandez une nouvelle clé. |
402 | Crédits insuffisants. Envoyez vers billing ou réduisez la qualité. |
409 | Requête de tâche en conflit. Récupérez la tâche existante quand la plateforme retourne un conflit. |
429 | Rate limit. Appliquez un exponential backoff et évitez le polling agressif. |
500 | Erreur temporaire plateforme ou modèle. Réessayez plus tard et gardez l'enregistrement de tâche. |
Planification crédits
Les libellés de prix actuels utilisent ces valeurs de planification pour la capacité Veo 4. Ce ne sont pas des engagements de facturation finaux avant le lancement.
Job vidéo standard
180
Crédits estimés par génération vidéo Veo 4 standard.
Job vidéo HD
240
Crédits estimés par génération vidéo Veo 4 HD.
À utiliser uniquement pour planifier la capacité. Les limites API, niveaux de qualité et règles de facturation peuvent évoluer.