Passer au contenu principal
POST
/
v1
/
videos
/
generations
curl --request POST \
  --url https://api.apimart.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "kling-3.0-turbo",
    "prompt": "Un corgi court au bord de la mer, ambiance cinématographique, lumière du crépuscule",
    "aspect_ratio": "16:9",
    "resolution": "1080p",
    "duration": 5
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_xxxxxxxxxx"
    }
  ]
}
curl --request POST \
  --url https://api.apimart.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "kling-3.0-turbo",
    "prompt": "Un corgi court au bord de la mer, ambiance cinématographique, lumière du crépuscule",
    "aspect_ratio": "16:9",
    "resolution": "1080p",
    "duration": 5
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_xxxxxxxxxx"
    }
  ]
}

Authentification

Authorization
string
requis
Toutes les interfaces nécessitent une authentification via Bearer TokenObtenir une clé API :Rendez-vous sur la page de gestion des clés API pour obtenir votre clé APILors de l’utilisation, ajoutez dans l’en-tête de la requête :
Authorization: Bearer YOUR_API_KEY

Paramètres de requête

model
string
requis
Nom du modèle de génération de vidéoModèles pris en charge :
  • kling-3.0-turbo - Kling 3.0 Turbo
prompt
string
requis
Prompt textuelLa limite en amont est de 3072 caractères, il est recommandé de ne pas dépasser 2500 caractères.Exemple : "Un corgi court au bord de la mer, ambiance cinématographique, lumière du crépuscule"
first_frame_image
string
Prend en charge une URL d’image ou une chaîne Base64.
Limites en amont pour la première image :
  • Format : .jpg / .jpeg / .png
  • Taille : ≤ 50MB
  • Largeur/hauteur : ≥ 300px
  • Rapport largeur/hauteur : 1:2.5 ~ 2.5:1
aspect_ratio
string
défaut:"16:9"
Rapport largeur/hauteur de la vidéoValeurs possibles :
  • 16:9 - Format horizontal
  • 9:16 - Format vertical
  • 1:1 - Format carré
Valeur par défaut : 16:9
Effectif uniquement pour la conversion texte-vidéo. Ce champ est inopérant pour la conversion image-vidéo, le rapport de la vidéo étant déterminé par la première image.
resolution
string
défaut:"720p"
Définition de la vidéoValeurs possibles :
  • 720p
  • 1080p
Valeur par défaut : 720p
duration
integer
défaut:"5"
Durée de la vidéo (secondes)Plage de valeurs : 3-15 (minimum 3 secondes, maximum 15 secondes)Valeur par défaut : 5⚠️ Attention : vous devez saisir un nombre pur (par exemple 6), sans guillemets, sinon une erreur se produira
watermark
boolean
Ajouter ou non un filigraneN’est transmis en amont que s’il est explicitement fourni ; s’il n’est pas transmis, aucun filigrane n’est ajouté.

Texte-vidéo vs Image-vidéo

Le système détermine automatiquement le mode de génération selon que first_frame_image est fourni ou non : avec une première image, il s’agit de la conversion image-vidéo ; sans première image, il s’agit de la conversion texte-vidéo. L’utilisateur n’a pas besoin de le déclarer explicitement.
ParamètreTexte-vidéoImage-vidéo
prompt✅ Obligatoire✅ Optionnel (vide : génération uniquement à partir de la première image)
first_frame_image❌ Ne pas transmettre✅ Obligatoire
aspect_ratio✅ Optionnel❌ Inopérant (rapport déterminé par la première image)
resolution✅ Optionnel✅ Optionnel
duration✅ Optionnel (3-15)✅ Optionnel (3-15)
watermark✅ Optionnel✅ Optionnel

Réponse

code
integer
Code de statut de la réponse, 200 en cas de succès
data
array
Tableau de données retourné

Cas d’usage

Cas 1 : Texte-vidéo (1080P)

{
  "model": "kling-3.0-turbo",
  "prompt": "Un corgi court au bord de la mer, ambiance cinématographique, lumière du crépuscule",
  "aspect_ratio": "16:9",
  "resolution": "1080p",
  "duration": 5
}

Cas 2 : Texte-vidéo (format vertical 720P)

{
  "model": "kling-3.0-turbo",
  "prompt": "Le carrefour de Shibuya à Tokyo, les néons d'une nuit pluvieuse se reflètent sur le sol mouillé, des passants traversent sous leurs parapluies",
  "aspect_ratio": "9:16",
  "resolution": "720p",
  "duration": 10
}

Cas 3 : Image-vidéo (première image)

{
  "model": "kling-3.0-turbo",
  "prompt": "La caméra avance lentement, le personnage sourit",
  "first_frame_image": "https://cdn.example.com/first.jpg",
  "resolution": "720p",
  "duration": 5
}

Cas 4 : Image-vidéo pure à partir de la première image (sans prompt)

{
  "model": "kling-3.0-turbo",
  "first_frame_image": "https://cdn.example.com/first.jpg",
  "resolution": "1080p",
  "duration": 5
}

Cas 5 : Découpage multi-plans (texte-vidéo)

{
  "model": "kling-3.0-turbo",
  "prompt": "Plan 1,2,un corgi court au bord de la mer ; Plan 2,3,la caméra avance vers le personnage qui sourit ;",
  "aspect_ratio": "16:9",
  "resolution": "1080p",
  "duration": 5
}
Interroger le résultat de la tâcheLa génération de vidéo est une tâche asynchrone ; après la soumission, un task_id est retourné. Utilisez l’interface Obtenir le statut de la tâche pour interroger la progression et le résultat de la génération.