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-reference-to-video",
  "prompt": "Use the first-person perspective framing of video 1 throughout, use audio 1 as background music throughout. First-person perspective fruit tea promotional video...",
  "image_urls": [
    "https://example.com/ref1.jpg",
    "https://example.com/ref2.jpg"
  ],
  "video_urls": [
    "https://example.com/reference.mp4"
  ],
  "audio_urls": [
    "https://example.com/bgm.mp3"
  ],
  "duration": 10,
  "quality": "720p",
  "aspect_ratio": "16:9",
  "generate_audio": true,
  "content_filter": true
}
'
{
  "created": 1761313744,
  "id": "task-unified-1774857405-abc123",
  "model": "seedance-2.0-reference-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>
défaut:seedance-2.0-reference-to-video
requis

Nom du modele de generation video

Options disponibles:
seedance-2.0-reference-to-video
Exemple:

"seedance-2.0-reference-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. Longueur maximale du prompt : 10000 tokens

Details :

  • 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
  • Le modele comprend automatiquement la correspondance entre les numeros de ressources et leurs usages
Exemple:

"Use the first-person perspective framing of video 1 throughout, use audio 1 as background music throughout. First-person perspective fruit tea promotional video..."

image_urls
string<uri>[]

Tableau d'URLs d'images de reference, 0 a 9 images

Description des roles :

Type de mediaRoleUtilisation typique
Imagereference_imageReference de style, image produit, 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, ne pas utiliser l'encodage Base64
  • Les URLs d'images 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: 9
Exemple:
[
"https://example.com/ref1.jpg",
"https://example.com/ref2.jpg"
]
video_urls
string<uri>[]

Tableau d'URLs de videos de reference, 0 a 3 videos

Description des roles :

Type de mediaRoleUtilisation typique
Videoreference_videoReference 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, 1080p
  • 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 2 086 876 (ex. 640×640 a 834×1112)
  • Taille maximale par video : 50 Mo
  • Frequence d'images : 24 a 60 FPS
  • Taille totale du corps de requete ne depassant pas 64 Mo, ne pas utiliser l'encodage Base64
  • 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, 0 a 3 segments

Description des roles :

Type de mediaRoleUtilisation typique
Audioreference_audioMusique 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
  • Taille totale du corps de requete ne depassant pas 64 Mo, ne pas utiliser l'encodage Base64
  • 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 video ou image de reference

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

Details :

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

10

quality
enum<string>
défaut:720p

Resolution video, par defaut 720p

Valeurs possibles :

  • 480p : resolution inferieure, prix reduit
  • 720p : resolution standard, valeur par defaut
  • 1080p : resolution Ultra HD
  • 4k : resolution 4K Ultra HD
Options disponibles:
480p,
720p,
1080p,
4k
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 : determine en fonction de l'intention du prompt, priorite : video > image > prompt

Pixels correspondants par resolution :

Rapport d'aspect480p720p1080p4K
16:9864×4961280×7201920×10803840×2160
4:3752×5601112×8341664×12483326×2494
1:1640×640960×9601440×14402880×2880
3:4560×752834×11121248×16642494×3326
9:16496×864720×12801080×19202160×3840
21:9992×4321470×6302206×9464398×1886
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

Valeurs possibles :

  • true : la video inclut un audio synchronise, sans frais supplementaires
  • false : video muette en sortie
Exemple:

true

content_filter
boolean
défaut:true

Filtre de contenu, par defaut true

Valeurs possibles :

  • true : verification standard de securite du contenu, c'est la valeur par defaut
  • false : assouplit les restrictions de contenu, facture avec +10% (1.1x). Les contenus illegaux et interdits sont toujours appliques independamment de ce parametre
Exemple:

true

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
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-reference-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