Ce document présente une méthode d’intégration de l’API Kling Videos Generation, qui permet de générer des vidéos officielles Kling en saisissant des paramètres personnalisés.Documentation Index
Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
Use this file to discover all available pages before exploring further.
Processus de demande
Pour utiliser l’API, vous devez d’abord demander le service correspondant sur la page Kling Videos Generation API. Une fois sur la page, cliquez sur le bouton « Acquire », comme illustré ci-dessous :
Si vous n’êtes pas encore connecté ou inscrit, vous serez automatiquement redirigé vers la page de connexion pour vous inscrire et vous connecter. Après connexion, vous reviendrez automatiquement à cette page.
Lors de la première demande, un quota gratuit est offert, vous permettant d’utiliser l’API gratuitement.
Utilisation de base
Commençons par comprendre la méthode d’utilisation de base : en saisissant un mot-cléprompt, une action action, une image de référence pour la première image start_image_url ainsi qu’un modèle model, vous obtiendrez le résultat traité. Il faut d’abord transmettre un champ action dont la valeur est text2video. Cette action comprend principalement trois comportements : génération de vidéo à partir de texte (text2video), génération de vidéo à partir d’image (image2video), et extension de vidéo (extend). Ensuite, nous devons indiquer le modèle model. Actuellement, les modèles principaux sont kling-v1, kling-v1-6, kling-v2-master, kling-v2-1-master, kling-v2-5-turbo, kling-v2-6, kling-v3, kling-v3-omni, kling-video-o1. Le détail est présenté ci-dessous :

accept: format de réponse souhaité, iciapplication/jsonpour un format JSON.authorization: clé d’API pour appeler l’API, sélectionnable après la demande.
model: modèle de génération vidéo, parmikling-v1,kling-v1-6,kling-v2-master,kling-v2-1-master,kling-v2-5-turbo,kling-v2-6,kling-v3,kling-v3-omni,kling-video-o1.mode: mode de génération vidéo, options possibles : mode standardstd, mode rapideproet mode natif 4K4k. Le mode4kest uniquement supporté parkling-v3etkling-v3-omni, et est incompatible aveccamera_control(contrôle de caméra).action: comportement de la tâche de génération vidéo, comprenanttext2video,image2videoetextend.start_image_url: lien de l’image de référence pour la première image, obligatoire pour l’actionimage2video.end_image_url: optionnel pourimage2video, spécifie l’image finale.duration: durée de la vidéo en secondes. Les modèleskling-v3etkling-v3-omnisupportent une durée flexible de 3 à 15 secondes (entiers), les autres modèles supportent 5 ou 10 secondes.generate_audio: optionnel, booléen indiquant si un audio synchronisé doit être généré. Supporté parkling-v3,kling-v3-omnietkling-v2-6(mode pro uniquement). Par défautfalse.aspect_ratio: ratio largeur/hauteur de la vidéo, options :16:9,9:16,1:1, par défaut16:9.cfg_scale: intensité de la corrélation, plage [0,1], plus élevé signifie plus fidèle au prompt.camera_control: optionnel, paramètres de contrôle du mouvement de la caméra, supporte les presets type/simple ainsi que les configurations horizontal, vertical, pan, tilt, roll, zoom, etc.negative_prompt: optionnel, mots-clés négatifs à éviter, maximum 200 caractères.element_list: liste de références principales, applicable uniquement au modèlekling-video-o1. Pour son usage, consultez la documentation officielle.video_list: vidéos de référence via URL, applicable uniquement au modèlekling-video-o1. Pour son usage, consultez la documentation officielle.prompt: mot-clé.callback_url: URL pour le rappel de résultat.

success: état de la tâche de génération vidéo.task_id: identifiant de la tâche.video_id: identifiant de la vidéo générée.video_url: URL de la vidéo générée.duration: durée de la vidéo générée.state: état de la tâche.
data pour récupérer la vidéo Kling générée.
Pour générer directement le code d’intégration, vous pouvez copier le code généré, par exemple le code CURL suivant :
Matrice des capacités des modèles
Le support des paramètres varie considérablement selon les modèles. Le tableau ci-dessous est extrait de la documentation officielle des modèles vidéo Kling. Avant d’appeler, vérifiez que la combinaison actuellemodel / mode / duration supporte les fonctionnalités requises, sinon des erreurs telles que model/mode/duration(...) is not supported with image_tail seront retournées.
| Modèle | Mode | end_image_url (première et dernière image) | generate_audio (audio) | camera_control (mouvement caméra) | Remarques |
|---|---|---|---|---|---|
kling-v1 | std / pro | ✅ uniquement duration=5 | ❌ | ✅ uniquement duration=5 | extend ne supporte pas negative_prompt et cfg_scale |
kling-v1-6 | std | ❌ | ❌ | ❌ | Multi-image vidéo, extend disponible sur tous les modes |
kling-v1-6 | pro | ✅ | ❌ | ❌ | |
kling-v2-master | — | ❌ | ❌ | ❌ | Mode unique, uniquement duration=5/10 |
kling-v2-1-master | — | ❌ | ❌ | ❌ | Mode unique, uniquement duration=5/10 |
kling-v2-5-turbo | std | ❌ | ❌ | ❌ | |
kling-v2-5-turbo | pro | ✅ | ❌ | ❌ | |
kling-v2-6 | std | ❌ | ❌ | ❌ | |
kling-v2-6 | pro | ✅ | ✅ | ❌ | Seul modèle non v3 supportant l’audio |
kling-v3 | std / pro | ✅ | ✅ | ✅ | duration 3–15 secondes |
kling-v3 | 4k | ✅ | ✅ | ❌ | Mode 4K incompatible avec mouvement caméra |
kling-v3-omni | std / pro / 4k | ✅ | ✅ | ❌ | |
kling-video-o1 | std / pro | ✅ | ❌ | ❌ | Supporte uniquement duration=5/10 |
- Le mode
4kest supporté uniquement parkling-v3etkling-v3-omni; il est incompatible aveccamera_control. end_image_urlne peut être utilisé qu’avecaction=image2videoconjointement avecstart_image_url. Fournir uniquementend_image_urlsansstart_image_urlsera refusé.kling-v3/kling-v3-omniacceptent une durée entière flexible de 3 à 15 secondes ; les autres modèles acceptent uniquement 5 ou 10 secondes.generate_audioest par défautfalse. Seulskling-v3,kling-v3-omnietkling-v2-6(mode pro) le supportent.
Fonctionnalité d’extension vidéo
Pour continuer à générer une vidéo Kling déjà créée, définissez le paramètreaction sur extend et saisissez l’ID de la vidéo à prolonger. L’ID vidéo s’obtient via l’utilisation de base comme illustré ci-dessous :

Notez que le champ video_id correspond à l’ID de la vidéo générée. Si vous ne savez pas comment générer une vidéo, reportez-vous à la section d’utilisation de base ci-dessus.
Ensuite, vous devez fournir un nouveau prompt pour personnaliser la génération de la vidéo étendue, avec les paramètres suivants :
model: modèle de génération vidéo, principalementkling-v1,kling-v1-5etkling-v1-6.mode: mode de génération vidéo, optionsstd,proet4k(ce dernier uniquement pourkling-v3etkling-v3-omni, incompatible avec contrôle caméra).duration: durée de la nouvelle vidéo, généralement 5 ou 10 secondes.start_image_url: obligatoire pourimage2video, image de référence pour la première image.prompt: mot-clé.


Rappel asynchrone (callback)
La génération via Kling Videos Generation API prend environ 1 à 2 minutes. Si l’API ne répond pas rapidement, la requête HTTP reste ouverte, consommant des ressources système supplémentaires. Pour cela, l’API supporte un rappel asynchrone. Le processus est : le client envoie la requête en spécifiant un champcallback_url. L’API répond immédiatement avec un task_id représentant l’ID de la tâche. Une fois la tâche terminée, le résultat de la vidéo générée est envoyé en POST JSON à l’URL callback_url spécifiée, incluant également le task_id pour associer la réponse à la requête.
Examinons un exemple.
Le webhook est un service pouvant recevoir des requêtes HTTP. Le développeur doit remplacer par l’URL de son propre serveur HTTP. Pour la démonstration, nous utilisons le site public https://webhook.site/, qui génère une URL webhook, comme illustré :
Copiez cette URL, par exemple https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3.
Ensuite, définissez le champ callback_url sur cette URL, et remplissez les autres paramètres comme ci-dessous :

https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3 le résultat de la vidéo générée, comme illustré :
Contenu reçu :
task_id qui permet d’associer la réponse à la requête initiale.
Gestion des erreurs
Lors d’un appel API, en cas d’erreur, l’API retourne un code et un message d’erreur, par exemple :400 token_mismatched: requête incorrecte, paramètres manquants ou invalides.400 api_not_implemented: requête incorrecte, paramètres manquants ou invalides.401 invalid_token: non autorisé, token d’autorisation invalide ou manquant.429 too_many_requests: trop de requêtes, limite de fréquence dépassée.500 api_error: erreur serveur interne.

