Passer au contenu principal
POST
/
v1
/
videos
/
generations
curl --request POST \
  --url https://api.evolink.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "seedance-2.0-text-to-video",
  "prompt": "一只猫在钢琴上弹奏月光奏鸣曲,电影感光影,特写镜头",
  "duration": 8,
  "quality": "720p",
  "aspect_ratio": "16:9",
  "generate_audio": true
}
'
{
  "created": 1761313744,
  "id": "task-unified-1774857405-abc123",
  "model": "seedance-2.0-text-to-video",
  "object": "video.generation.task",
  "progress": 0,
  "status": "pending",
  "task_info": {
    "can_cancel": true,
    "estimated_time": 165,
    "video_duration": 8
  },
  "type": "video",
  "usage": {
    "billing_rule": "per_second",
    "credits_reserved": 50,
    "user_group": "default"
  }
}

Autorisations

Authorization
string
header
requis

Toutes les interfaces necessitent une authentification par Bearer Token

Obtenir une cle API :

Visitez la Page de gestion des cles API pour obtenir votre cle API

Ajoutez dans l'en-tete de la requete :

Authorization: Bearer YOUR_API_KEY

Corps

application/json
model
enum<string>
requis

Nom du modele de generation video

ID du modeleModeVitesse
seedance-2.0-text-to-videoText-to-VideoStandard
seedance-2.0-image-to-videoImage-to-VideoStandard
seedance-2.0-reference-to-videoReference multimodaleStandard
seedance-2.0-fast-text-to-videoText-to-VideoRapide
seedance-2.0-fast-image-to-videoImage-to-VideoRapide
seedance-2.0-fast-reference-to-videoReference multimodaleRapide
Options disponibles:
seedance-2.0-text-to-video,
seedance-2.0-image-to-video,
seedance-2.0-reference-to-video,
seedance-2.0-fast-text-to-video,
seedance-2.0-fast-image-to-video,
seedance-2.0-fast-reference-to-video
Exemple:

"seedance-2.0-text-to-video"

prompt
string
requis

Prompt textuel decrivant la video souhaitee. Prend en charge le chinois et l'anglais, il est recommande de ne pas depasser 500 caracteres en chinois et 1000 mots en anglais

Utilisation du prompt selon le modele :

  • Text-to-Video : description textuelle pure, ne prend pas en charge l'utilisation de image_urls, video_urls, audio_urls dans le prompt
  • Image-to-Video : description textuelle pure, ne prend pas en charge l'utilisation de video_urls, audio_urls dans le prompt
  • Reference-to-Video : vous pouvez specifier l'utilisation de chaque ressource en langage naturel, par exemple premiere image = image 1, utiliser le mouvement de camera de la video 1 tout au long, audio 1 comme musique de fond
Exemple:

"一只猫在钢琴上弹奏月光奏鸣曲,电影感光影,特写镜头"

image_urls
string<uri>[]

Tableau d'URLs d'images

Modeles applicables et limites de quantite :

  • Text-to-Video : non pris en charge
  • Image-to-Video : obligatoire, 1 a 2 images
  • Reference-to-Video : optionnel, 0 a 9 images

Comportement des images pour Image-to-Video :

Nombre d'imagesComportementRole
1 imageVideo a partir de la premiere imageDefinie automatiquement comme first_frame
2 imagesVideo a partir de la premiere et derniere image1ere image -> first_frame, 2eme image -> last_frame

Roles des images pour Reference-to-Video :

  • Reference de style, image produit, apparence du personnage, premiere/derniere image (specifiee via le prompt)

Exigences pour les images :

  • Formats pris en charge : .jpeg, .png, .webp
  • Rapport d'aspect (largeur/hauteur) : 0.4 a 2.5
  • Dimensions en pixels : 300 a 6000 px
  • Taille maximale par image : 30 Mo
  • Taille totale du corps de requete ne depassant pas 64 Mo
  • Lors de la transmission de la premiere et derniere image, les deux images peuvent etre identiques. En cas de rapport d'aspect different, la premiere image est prioritaire et la derniere image est automatiquement recadree
  • Les URLs d'images doivent etre directement accessibles par le serveur
Maximum array length: 9
Exemple:
["https://example.com/image1.jpg"]
video_urls
string<uri>[]

Tableau d'URLs de videos de reference

Applicable uniquement au modele Reference-to-Video, les autres modeles ne prennent pas en charge ce parametre

Limite de quantite : 0 a 3 videos

Description des roles :

  • Reference de mouvement de camera, reference d'action, video originale a editer/etendre

Exigences pour les videos :

  • Formats pris en charge : .mp4, .mov
  • Resolution : 480p, 720p
  • Duree par video : 2 a 15 secondes, maximum 3 videos, duree totale de toutes les videos <= 15 secondes
  • Rapport d'aspect (largeur/hauteur) : 0.4 a 2.5
  • Dimensions en pixels : 300 a 6000 px
  • Pixels d'image (largeur x hauteur) : 409 600 a 927 408 (ex. 640x640 a 834x1112)
  • Taille maximale par video : 50 Mo
  • Frequence d'images : 24 a 60 FPS
  • L'utilisation de references video entraine des frais supplementaires (la duree de la video d'entree est comptabilisee dans la facturation)
  • Les URLs de videos doivent etre directement accessibles par le serveur

Remarque : Il n'est pas possible de fournir uniquement audio_urls, vous devez inclure au moins 1 image (image_urls) ou 1 video (video_urls)

Maximum array length: 3
Exemple:
["https://example.com/reference.mp4"]
audio_urls
string<uri>[]

Tableau d'URLs d'audios de reference

Applicable uniquement au modele Reference-to-Video, les autres modeles ne prennent pas en charge ce parametre

Limite de quantite : 0 a 3 segments

Description des roles :

  • Musique de fond, effets sonores, reference vocale/dialogue

Exigences pour les audios :

  • Formats pris en charge : .wav, .mp3
  • Duree par segment audio : 2 a 15 secondes, maximum 3 segments, duree totale de tous les audios <= 15 secondes
  • Taille maximale par segment : 15 Mo
  • Les URLs d'audios doivent etre directement accessibles par le serveur

Remarque : L'audio ne peut pas etre fourni seul, il doit inclure au moins 1 image ou 1 video

Maximum array length: 3
Exemple:
["https://example.com/bgm.mp3"]
duration
integer
défaut:5

Duree de la video de sortie (secondes), par defaut 5 secondes

  • Prend en charge toute valeur entiere entre 4 et 15 secondes
  • La duree est directement liee a la facturation
  • Applicable aux 6 modeles
Plage requise: 4 <= x <= 15
Exemple:

8

quality
enum<string>
défaut:720p

Resolution video, par defaut 720p

Valeurs possibles :

  • 480p : resolution inferieure, prix reduit
  • 720p : resolution standard, valeur par defaut

Applicable aux 6 modeles

Options disponibles:
480p,
720p
Exemple:

"720p"

aspect_ratio
enum<string>
défaut:16:9

Rapport d'aspect de la video, par defaut 16:9

Valeurs possibles :

  • 16:9 (paysage), 9:16 (portrait), 1:1 (carre), 4:3, 3:4, 21:9 (ultra-large)
  • adaptive : selection automatique du meilleur rapport

Comportement de adaptive selon le modele :

  • Text-to-Video : selection automatique en fonction du contenu du prompt
  • Image-to-Video : adaptation automatique en fonction du rapport d'aspect de la premiere image
  • Reference-to-Video : priorite : rapport de la video > rapport de l'image > deduction du prompt

Pixels correspondants par resolution :

Rapport d'aspect480p720p
16:9864x4961280x720
4:3752x5601112x834
1:1640x640960x960
3:4560x752834x1112
9:16496x864720x1280
21:9992x4321470x630
Options disponibles:
16:9,
9:16,
1:1,
4:3,
3:4,
21:9,
adaptive
Exemple:

"16:9"

generate_audio
boolean
défaut:true

Generer ou non un audio synchronise, par defaut true

  • true : la video inclut un audio synchronise (voix, effets sonores, musique de fond), sans frais supplementaires
  • false : video muette en sortie

Applicable aux 6 modeles

Exemple:

true

model_params
object

Parametres etendus du modele

Applicable uniquement aux modeles Text-to-Video (version standard et rapide)

callback_url
string<uri>

URL de rappel HTTPS apres l'achevement de la tache

Declenchement du rappel :

  • Declenche lorsque la tache est terminee (completed), echouee (failed) ou annulee (cancelled)
  • Envoye apres la confirmation de la facturation

Restrictions de securite :

  • Seul le protocole HTTPS est pris en charge
  • Les rappels vers les adresses IP privees sont interdits (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)
  • La longueur de l'URL ne doit pas depasser 2048 caracteres

Mecanisme de rappel :

  • Delai d'expiration : 10 secondes
  • Jusqu'a 3 tentatives apres un echec (respectivement 1/2/4 secondes apres l'echec)
  • Le format du corps de reponse du rappel est identique a celui de l'interface de consultation de tache
  • Un code de statut 2xx est considere comme un succes, les autres codes declenchent une nouvelle tentative

Applicable aux 6 modeles

Exemple:

"https://your-domain.com/webhooks/video-task-completed"

Réponse

Tache de generation video creee avec succes

created
integer

Horodatage de creation de la tache

Exemple:

1761313744

id
string

ID de la tache

Exemple:

"task-unified-1774857405-abc123"

model
string

Nom du modele effectivement utilise

Exemple:

"seedance-2.0-text-to-video"

object
enum<string>

Type specifique de la tache

Options disponibles:
video.generation.task
progress
integer

Pourcentage de progression de la tache (0-100)

Plage requise: 0 <= x <= 100
Exemple:

0

status
enum<string>

Statut de la tache

Options disponibles:
pending,
processing,
completed,
failed
Exemple:

"pending"

task_info
object

Informations detaillees de la tache video

type
enum<string>

Type de sortie de la tache

Options disponibles:
text,
image,
audio,
video
Exemple:

"video"

usage
object

Informations d'utilisation et de facturation