Introduction
Kling 3.0 Image to video prend une image de départ (image_url) et un prompt décrivant ce qui se passe ensuite, et renvoie 3 à 15 secondes en 720p, 1080p ou 4K. Définissez aussi last_image_url pour verrouiller une image de fin, afin que le clip doive arriver quelque part de précis plutôt que de simplement démarrer quelque part. Activez generate_audio pour un dialogue et une ambiance générés avec l’image.
Choisissez un mode Kling 3.0 selon votre matériau de départ
| Ce que vous avez au départ | Mode |
|---|---|
| une scène ou un script écrit | Kling 3.0 Texte vers vidéo |
| une image de départ, et en option une image de fin | Kling 3.0 Image to video (vous êtes ici) |
| une photo de personnage et une vidéo pilote | Kling 3.0 Motion Control |
Fonctionnalités et points forts
Une image de départ et, si vous la définissez, une image de fin
Le clip démarre sur votre image exactement telle quelle. Ajoutez last_image_url et Kling travaille vers cette image plutôt que vers une fin ouverte — dans notre test d’une marche sur une jetée noyée dans le brouillard, la dernière image du clip correspondait presque exactement à l’image de fin, écharpe rouge comprise.
L’image décide du look, le prompt décide du mouvement
Décrivez seulement l’action, la caméra et le son — pas la garde-robe ni le décor, que l’image de départ fixe déjà. Notre exemple de la cour de station-service ne redécrit jamais la femme ni la station-service de son image ; il ajoute seulement l’éclair, sa marche sous la pluie et le tonnerre.
Le format d’image suit l’image de départ
Il n’y a pas de champ aspect_ratio séparé ici : la sortie prend la forme de votre image de départ, d’un paysage large à un cadrage portrait haut.
Paramètres de requête
| Paramètre | Obligatoire | Description |
|---|---|---|
prompt | Oui | Décrivez seulement ce qui se passe après l’image de départ — l’action, la caméra et, avec le son activé, le son. 1 caractères minimum · 2500 caractères maximum |
negative_prompt | Non | Ce qui ne doit pas apparaître dans le clip (objets, rendus ou mouvements indésirables), jusqu’à 2 500 caractères. Facultatif ; sans effet sur le prix. 2500 caractères maximum |
image_url | Oui | Image de départ. Le clip démarre à partir de cette image et en reprend le format d’image. |
last_image_url | Non | Image de fin optionnelle. Sur les clips longs, le milieu peut dériver davantage que les extrémités ne restent fixes. |
resolution | Non | 720p, 1080p ou 4K. Les paliers supérieurs coûtent plus cher à la seconde. |
generate_audio | Non | Ajoute une bande sonore générée au même clip. En 720p et 1080p, cela coûte plus cher à la seconde qu’un rendu silencieux ; en 4K, le prix est le même avec ou sans son. Valeur par défaut: |
duration_seconds | Non | Secondes entières, de 3 à 15. Détermine le prix. |
shot_type | Non | single garde un seul dispositif la plupart du temps mais peut quand même couper de lui-même ; multi laisse Kling enchaîner ses propres coupes multi-plans. |
multi_prompt | Non | La liste de plans pour |
guidance_scale | Non | Degré de fidélité du clip au prompt, de 0 à 1 (0,5 par défaut). Plus haut, il colle davantage au texte ; plus bas, il laisse plus de liberté au modèle. |
Tarification
Facturé à la seconde de sortie. La résolution et l’interrupteur audio changent tous deux le tarif.
| Résolution | Générer l’audio: Non | Générer l’audio: Oui |
|---|---|---|
| $0.0672 / seconde | $0.1008 / seconde |
| $0.0896 / seconde | $0.1344 / seconde |
| $0.336 / seconde | $0.336 / seconde |
Cas d’utilisation
Continuer un personnage exactement comme conçu
Quand une personne doit se ressembler d’un clip à l’autre, générez ou choisissez d’abord une image fixe, puis animez-la ici plutôt que d’écrire un nouveau prompt text-to-video qui laisserait à nouveau la garde-robe et le visage au hasard.
Faire atterrir un clip sur une fin précise
Définissez une image de fin quand le dernier temps du plan compte — une expression maintenue, une main sur une porte, une silhouette qui entre dans le champ — plutôt que de laisser la fin au modèle.
Tester un produit ou une tenue fixe en mouvement
Une photo fixe d’un produit ou d’une tenue, avec un prompt pour un mouvement de caméra simple, suffit pour voir comment une image statique se lit une fois en mouvement et, avec l’audio activé, comment elle sonne.
Guide de prompt et conseils pratiques
Décrivez seulement ce que l’image ne montre pas déjà
Notre exemple de la cour de station-service s’en tient à ce qui se passe après l’image fixe : l’éclair, son pas hors du camion, la marche sous la pluie battante. Il ne répète jamais sa tenue ni le décor, que l’image a déjà fixés.
Verrouillez le plan quand la continuité compte
Sur 15 secondes, un détail d’arrière-plan peut dériver. Si un objet ou un agencement précis doit rester en place, nommez-le directement (« le même camion rouge reste garé derrière elle tout du long ») plutôt que de supposer que l’image de départ le fixe pour tout le clip.
Dites « un seul plan continu, sans coupe » pour une prise ininterrompue
Notre exemple du yacht a coupé vers un second angle et est passé du crépuscule au plein jour lors d’un premier essai ; ajouter cette phrase au début du prompt, avec une description de la lumière restant identique, a tenu le cadrage et la couleur pendant tout le clip lors du nouvel essai.
Démarrage rapide de l’API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "kling/3.0/image-to-video",
"input": {
"duration_seconds": 5,
"generate_audio": false,
"image_url": "https://example.com/reference.png",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "720p",
"shot_type": "single"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
La référence API détaille l’authentification, le schéma complet, le polling et la gestion des erreurs.












