API vidéo Seedance

Générez des vidéos depuis un texte ou une image avec Seedance 2.0 ou 2.5, suivez la tâche asynchrone et téléchargez le résultat.

La génération vidéo Seedance utilise une Video API asynchrone. Envoyez d’abord une tâche, puis consultez son état avec l’ID renvoyé. Cette API est distincte de Chat Completions.

Avant de commencer

Créez une clé API Modelflare et utilisez https://modelflare.dev/v1 comme Base URL. Les noms publics des modèles sont seedance-2.0 et seedance-2.5.

Les combinaisons de durée et de résolution disponibles peuvent varier selon le modèle. Consultez Modèles et tarifs avant la requête. Lorsqu’elles sont prises en charge, les résolutions sont 480p, 720p, 1080p ou 4k.

Requête texte vers vidéo

curl https://modelflare.dev/v1/videos \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "Un chat blanc court dans une rue éclairée au néon sous la pluie, travelling cinématographique",
    "duration": 4,
    "resolution": "720p"
  }'

Requête image vers vidéo

Ajoutez image avec une URL HTTPS d’image accessible publiquement. Les autres champs sont identiques à la requête texte vers vidéo.

curl https://modelflare.dev/v1/videos \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "Le sujet se tourne lentement vers la caméra tandis qu’elle avance",
    "image": "https://example.com/reference.png",
    "duration": 4,
    "resolution": "720p"
  }'

Réponse de soumission

Une soumission réussie renvoie un ID public. id et task_id désignent la même tâche ; conservez l’un des deux.

{
  "id": "task_example_123",
  "task_id": "task_example_123",
  "object": "video",
  "model": "seedance-2.5",
  "status": "queued"
}

Consulter l’état

Interrogez la tâche toutes les quelques secondes. Les états d’attente peuvent inclure queued, pending, processing ou in_progress. Arrêtez lorsque l’état devient completed ou failed.

curl https://modelflare.dev/v1/videos/task_example_123 \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY"

Exemple de réponse terminée :

{
  "id": "task_example_123",
  "task_id": "task_example_123",
  "object": "video",
  "model": "seedance-2.5",
  "status": "completed",
  "progress": 100,
  "metadata": {
    "url": "https://example.com/generated-video.mp4"
  }
}

Télécharger le résultat

Une fois terminée, téléchargez la vidéo via l’endpoint content :

curl -L https://modelflare.dev/v1/videos/task_example_123/content \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -o seedance.mp4

Principaux champs

  • model : obligatoire ; seedance-2.0 ou seedance-2.5.
  • prompt : obligatoire ; description de la vidéo.
  • duration : obligatoire ; entier en secondes, avec un minimum actuel de 4. seconds est aussi accepté.
  • resolution : obligatoire ; résolution prise en charge par le modèle choisi.
  • image : facultatif ; URL HTTPS publique qui active la génération image vers vidéo.

HTTP 400 indique généralement des paramètres incorrects, 401 une clé invalide, 429 une limite temporaire. Les erreurs 5xx peuvent être retentées avec un délai progressif.