POST /flux/videos pour effectuer la génération de vidéos, la génération vidéo à partir d’images clés, la continuation vidéo et l’amélioration de brouillons. action=generate (par défaut), mode sélectionne le mode de génération ; utilisez l’existant POST /flux/tasks pour interroger les résultats de manière uniforme.
Actuellement en bêta. La génération vidéo à partir de texte, la génération vidéo à partir d’images, la continuation vidéo et l’amélioration de brouillons sont ouvertes. HTTP 200 et l’ID de tâche indiquent uniquement que la tâche a été acceptée ; vous devez continuer à interroger le résultat final.
1. Obtenir un jeton API
- Inscrivez-vous ou connectez-vous dans la console Ace Data Cloud, créez une application et obtenez un jeton API. Un jeton API universel peut appeler les services de la plateforme ; veuillez confirmer que l’application dispose de l’autorisation d’appel au service Flux et d’un solde disponible.
- Consultez les forfaits et les prix de chaque opération sur la page du service Flux. Lorsque le solde est insuffisant, rechargez sur la page de solde de la console.
- Les requêtes utilisent
Authorization: Bearer <votre Token>. Le Token doit être conservé dans les variables d’environnement côté serveur, ne l’écrivez pas dans les pages front-end, les dépôts publics, les captures d’écran ou les URL de rappel.
Le code de cet article lit uniformément les variables d’environnement :
Pour les champs complets et le débogage en ligne, consultez Flux Videos API, et pour l’interrogation des tâches, consultez Flux Tasks API.
2. Choisir l’opération et l’entrée
Le modèle de génération est
flux-3, action est generate (par défaut). Choisissez la génération vidéo à partir de texte, la génération vidéo à partir d’images, la continuation vidéo ou l’amélioration de brouillons via mode.
Paramètres de génération communs
Les URL des ressources doivent pouvoir être lues par le service. Si vous utilisez des URL signées temporaires, prévoyez une durée de validité suffisante pour le téléchargement et le traitement. N’utilisez pas une adresse web comme adresse de fichier image ou vidéo.
3. Génération vidéo à partir de texte : requête complète testée et résultat
La requête suivante a été exécutée avec succès sur l’interface de production avant l’ajustement tarifaire du 2026-10-02. L’omission deaction a validé le comportement de génération par défaut ; async=true évite une longue attente de la connexion HTTP.
task_id de votre propre réponse et continuez à interroger ; n’utilisez pas l’ID de tâche de l’exemple de documentation pour interroger les résultats d’autres comptes.
response renvoyé par l’interrogation de tâche contient le résultat métier final. Voici le response réussi de ce test, les métadonnées externes de la tâche sont omises. L’URL vidéo dans la documentation a été remplacée par une copie du même fichier sur un CDN d’exemple à long terme (SHA-256 identique) ; les appels réels renverront l’URL de résultat propre à cette tâche :
Il s’agit d’un test historique avant l’ajustement des prix :
list_amount=2.9871876975 Credits, le compte bénéficiait alors d’une remise de consommation de 10 %, et le montant réel amount=2.68846892775 Credits. Les nouveaux prix du 2026-10-02 ont été réduits d’environ 6.33 % ; le même brouillon de 5.041667 secondes coûte 2.798125185 Credits au prix actuel (avant remise de consommation), ou 2.5183126665 Credits s’il bénéficie toujours d’une remise de consommation de 10 %. Les factures des tâches historiques ne sont pas recalculées. Les forfaits et remises des autres comptes peuvent différer ; il ne s’agit pas d’un prix fixe en dollars américains pour tous les utilisateurs.
4. Image-vers-vidéo : normal et avec images clés temporelles
Voici des exemples de paramètres ; les URL des ressources doivent être remplacées, et cela ne signifie pas que cet exemple a déjà été exécuté avec succès. Une fois la génération terminée, interrogez selon le processus ci-dessus ; la structure du résultat est identique. Une ou deux images utilisent un tableau normal :[secondes, URL de l'image] :
duration doit être spécifiée explicitement ; auto ne peut pas être utilisé.
Sortie de test réel image-vers-vidéo
L’entrée correspondante de ce test réel est la suivante (seul le texte explicatif remplace le base64 complet, les autres champs sont la requête réelle) :
Après avoir téléchargé cette image clé PNG, vous pouvez utiliser base64.b64encode(image_bytes).decode("ascii") de Python pour obtenir la chaîne brute et la placer dans le tableau keyframes. N’utilisez pas le texte explicatif du document comme entrée d’image.
Voici la response finale réelle d’une tâche de production du 2026-10-01 (ce n’est pas une réponse simulée) ; seule l’URL de la vidéo a été remplacée par une copie d’exemple à long terme avec le même hash. L’entrée de test réel utilise la chaîne base64 brute d’un PNG 1280×720 comme image clé unique ; l’entrée URL ci-dessus est un exemple de paramètre indépendant.
5. Prolongation vidéo
Transmettez l’adresse d’un fichier vidéo existant dansstart_video, avec mode=v2v, pour une durée maximale de 15 secondes.
Sortie mesurée de la prolongation vidéo
L’entrée complète mesurée cette fois est la suivante ; lors de la reproduction de l’amélioration du brouillon, vous devez la remplacer par votre propre ID de brouillon. L’URL du média utilise une copie d’exemple à long terme du même fichier :start_video de l’entrée mesurée est une vidéo de brouillon terminée, les autres paramètres étant duration=5、resolution=hd、generate_audio=false。
6. D’abord le brouillon, puis l’amélioration
- Générez un brouillon avec
draft=true、resolution=hdet attendez la réussite. - Récupérez l’ID de brouillon de la plateforme depuis le
data[0].draft_task_idfinal. - Soumettez une requête d’amélioration avec les identifiants de l’application du même propriétaire :
prompt、duration、aspect_ratio、version、generate_audio、draft、keyframes、start_video pour remplacer le contenu d’origine. Le cache du brouillon est une ressource temporaire, veuillez l’améliorer rapidement ; sa conservation permanente ou un nombre fixe de jours de conservation ne sont pas garantis. Les brouillons qui ne vous appartiennent pas/ne proviennent pas de l’application actuelle, les brouillons non terminés et les caches expirés ne peuvent pas être réutilisés. Le brouillon et l’amélioration sont deux tâches distinctes, facturées séparément après réussite.
Sortie mesurée de l’amélioration du brouillon
L’entrée complète mesurée cette fois est la suivante ; lors de la reproduction de l’amélioration du brouillon, vous devez la remplacer par votre propre ID de brouillon. L’URL du média utilise une copie d’exemple à long terme du même fichier :7. Appel Python de bout en bout
Installezrequests, définissez votre propre Token, puis exécutez le script ci-dessous pour effectuer « une soumission → interrogation → sortie de l’URL vidéo ». L’interrogation et les nouvelles tentatives réseau doivent toutes utiliser le task_id d’origine, afin d’éviter de soumettre à nouveau des tâches payantes.
task_id, continuez à interroger cette tâche ; enregistrez task_id et trace_id pour faciliter le diagnostic. L’interface d’interrogation elle-même ne facture pas de frais de génération.
8. Utilisation des rappels
Ajoutezcallback_url lors de la soumission ; une fois la tâche terminée, le résultat JSON final sera envoyé par POST à cette adresse. La structure en cas de succès est identique à la réponse précédente ; en cas d’échec, elle contient error.
task_id, et renvoyez rapidement un code 2xx ; le traitement métier peut être mis en file d’attente. Ce document ne déclare pas que le rappel dispose d’une authentification par signature : avant d’effectuer des opérations sensibles telles que l’attribution d’avantages métier, utilisez votre propre Token pour interroger la même tâche et vérifier le résultat. Si le rappel n’est pas reçu, vous pouvez également continuer l’interrogation ; ne régénérez pas.
9. Facturation actuelle et grille tarifaire
Mis à jour le 2026-10-02 : les prix unitaires de chaque niveau de cette interface vidéo ont été réduits d’environ 6,33 %, tandis que le mode de mesure, les forfaits et les règles de remises sur la consommation restent inchangés. Lecost dans les response des tests historiques mentionnés précédemment correspond à la facture au moment de la fin de la tâche et ne représente pas le tarif actuel.
La génération vidéo est facturée selon les secondes réellement produites. Voici les prix unitaires actuels en Credits, avant l’application des remises de consommation du compte, conformément aux règles de la page de tarification Flux.
Conversion en dollars américains :
coût réel (USD) = cost.amount (Credits) × price du forfait / amount du forfait. Les niveaux de recharge et les remises sur la consommation influencent le prix réel ; les Credits ne peuvent pas être directement considérés comme des USD. Les tâches échouées ne facturent pas de frais de génération ; le montant final est déterminé par le résultat de fin et les enregistrements d’appels dans la console.
10. Questions fréquentes et diagnostic
Lors de vos retours, fournissez
task_id, trace_id, l’heure de la requête et les paramètres anonymisés ; n’envoyez pas votre API Token. Pour davantage de méthodes, consultez le guide d’intégration Flux MCP.
